AI tool comparison
Browser Harness vs qmd
Which one should you ship with? Here is the side-by-side panel verdict, pricing read, reviewer split, and community vote comparison.
Developer Tools
Browser Harness
Self-healing browser automation that writes its own missing functions mid-run
75%
Panel ship
—
Community
Free
Entry
Browser Harness is the browser-use team's second major release — a radically minimal browser automation framework for LLM agents (~592 lines of core code) that solves the most painful problem in agent browser automation: when an agent hits a UI pattern it doesn't know how to handle, it writes the missing helper function itself and continues. Under the hood it speaks raw Chrome DevTools Protocol with no abstraction layers, giving agents direct control over network interception, JavaScript execution, and DOM manipulation. The "self-healing" mechanism works by having the LLM detect a failure mode, generate a new action primitive (a small Python function), inject it into the runtime, and retry — all within the same session. Successful new primitives are persisted to a local library that improves future runs. This is a meaningful architectural departure from Playwright-based agent frameworks. By staying thin and close to the metal, Browser Harness avoids the selector fragility and timing issues that plague higher-level automation wrappers. The cloud remote browser tier (3 concurrent sessions free) means you can run it without managing Chrome infrastructure. For teams building LLM-powered browser agents that need to handle the messy real web, this is a notable step forward.
Developer Tools
qmd
Local doc search engine with BM25 + vectors + LLM re-ranking — by Shopify's CEO
50%
Panel ship
—
Community
Free
Entry
qmd is a lightweight local search engine built by Tobi Luetke, CEO of Shopify, for indexing and querying personal knowledge bases, documentation, and meeting notes — entirely offline. It combines three retrieval approaches in a single pipeline: BM25 full-text search for exact keyword matches, vector semantic search via ONNX-based embeddings, and LLM re-ranking using GGUF models through node-llama-cpp. All three stages run locally with no cloud dependency. The tool ships in multiple deployment modes: a CLI for ad-hoc queries, a Node.js library for programmatic use, an HTTP service for local API access, and — most useful for AI workflows — a native MCP server that lets Claude Code, Cursor, and similar editors query your local knowledge base directly during coding sessions. The hybrid retrieval approach means it handles both "find the exact error message from last week's standup notes" and "what was our decision about the auth architecture" equally well. What makes this notable beyond its technical approach is provenance: Luetke shipped it as a personal tool he actually uses, not a startup product. The GitHub history shows active iteration and he's been talking about it on X. It's a credible signal of where pragmatic AI-augmented knowledge management is heading for technical users who prefer local-first tools.
Reviewer scorecard
“592 lines to replace Playwright for LLM agents is a compelling trade. The self-healing primitive generation is genuinely clever — I tested it on three legacy enterprise portals and it handled two that my previous Playwright-based agent couldn't navigate. Direct CDP access means I can intercept and modify network responses too, which opens up a lot of testing use cases.”
“Hybrid BM25 + vector + LLM re-rank is the right architecture for personal knowledge search — each layer catches what the others miss. The MCP server mode is genuinely useful: being able to ask Claude Code 'what did we decide about X last month' against my own notes changes the workflow. MIT licensed and from someone who ships real products.”
“Writing code mid-execution and injecting it into a running agent is a liability in any production environment. One hallucinated helper function could corrupt form submissions, delete data, or exfiltrate session tokens. The security model here is essentially 'trust the LLM' — which is not a model I'd deploy against anything sensitive.”
“This is a well-executed weekend project, not a production tool. It requires GGUF models and manual embedding setup — a meaningful friction barrier for non-technical users. The 'built by a CEO' narrative drives GitHub stars more than the technical differentiation. Obsidian with a local AI plugin gets you here with better UX.”
“Browser Harness is early evidence of the 'tool-writing agent' pattern maturing — agents that improve their own capabilities at runtime, not just at training time. The primitive library that accumulates across sessions is a proto-memory system. This is what agentic browser control looks like before it gets commoditized.”
“The pattern here — local hybrid retrieval as an MCP server feeding into AI coding agents — will be ubiquitous in two years. Today it's a technical power-user tool; tomorrow it's how everyone's AI assistant knows the institutional context behind the code. qmd is an early, clean implementation of that pattern.”
“I use browser automation for scraping design inspiration and pulling competitive pricing, and the fragility of existing tools has always been a headache. The idea that the agent just figures out how to handle a weird modal or cookie banner on its own — without me having to write a special case — is exactly what I've been wanting.”
“I manage a lot of notes, references, and creative briefs, but the setup friction here — GGUF models, CLI configuration — makes this inaccessible for most creators. The concept is great; the UX needs a front-end before it reaches beyond developers.”
Weekly AI Tool Verdicts
Get the next comparison in your inbox
New AI tools ship daily. We compare them before you waste an afternoon.