Browser Harness: Giving LLMs raw CDP access to self-correct browser tasks

Browser Harness is a self-healing harness that gives LLMs complete freedom to complete browser tasks by connecting directly to Chrome via a CDP websocket (~592 lines of Python). Instead of wrapping Chrome in predefined functions (like Playwright MCP or agent-browser), it provides a thin daemon that holds the websocket, basic helpers, and a SKILL.md file — and lets the agent write its own tools when needed.
How it works
The core concepts are:
- A daemon that keeps the CDP websocket alive
- Extremely basic tools in
helpers.py(~195 lines) - A
SKILL.mdthat explains usage
When the LLM needs a function that doesn't exist, it edits helpers.py and adds it. The authors report a case where the agent wanted to upload a file, found no upload_file() function, wrote it itself using DOM.setFileInputFiles, and continued — visible only in a git diff.
vs. other approaches
Other tools (Playwright MCP, browser-use CLI, agent-browser, Chrome DevTools MCP) wrap Chrome in predefined functions. Their worst failure mode is silent: click() returns success but nothing happened. Browser Harness aims to give the LLM perfect context and freedom to self-correct.
Setup and installation
Install with Claude Code or Codex by pasting:
Set up https://github.com/browser-use/browser-harness for me.
The agent reads install.md for bootstrap, then SKILL.md for normal usage, and always checks helpers.py for available functions.
Real examples
- Plays Stockfish chess engine
- Sets a world record in Tetris
- Draws a heart with JavaScript
Contributing
Contributions welcome: add domain skills under domain-skills/ for sites like LinkedIn, Amazon, etc. Skills are generated by the harness, not hand-authored. Bug fixes, docs, and helper improvements also accepted.
License: MIT.
📖 Read the full source: HN LLM Tools
👀 See Also

OutClaw: GUI Installer and Manager for OpenClaw in Docker
OutClaw is a free, open-source application that installs and manages OpenClaw instances inside Docker containers. It provides a step-by-step GUI for setup, configuration, and connection to AI providers and chat channels without using the command line.

Claude Code Skill Refactors React Components Using 'Don't Make Me Think' Principles
A new Claude Code skill automatically refactors React components for usability based on Steve Krug's principles — cuts happy talk, surfaces primary CTAs, fixes empty/error states, and tightens labels.

Galadriel: Open-Source Warm-Cache Harness for Persistent Claude Agents
Galadriel is a 3-tier stacked caching harness for Claude that reduces costs by 87% and latency to under 3s for 100K token prompts. Integrates MemPalace for persistent vector memory.

Murmur: An Open-Source Cron Daemon for Automating Claude Code Sessions
Murmur is a cron daemon that schedules and automates Claude code sessions using a HEARTBEAT.md file for configuration.