Browser Use
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
作者提供的说明(英文原文)
Self-hosted MCP server: sandboxed browser, desktop, vision, code-edit packs for any agent.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
HELMDECK_URL, HELMDECK_TOKEN标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"helmdeck": {
"command": "npx",
"args": [
"-y",
"@helmdeck/mcp-bridge"
],
"env": {
"HELMDECK_URL": "your-value",
"HELMDECK_TOKEN": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add helmdeck --env HELMDECK_URL=your-value --env HELMDECK_TOKEN=your-value -- npx -y @helmdeck/mcp-bridge运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"helmdeck": {
"command": "npx",
"args": [
"-y",
"@helmdeck/mcp-bridge"
],
"env": {
"HELMDECK_URL": "your-value",
"HELMDECK_TOKEN": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"helmdeck": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@helmdeck/mcp-bridge"
],
"env": {
"HELMDECK_URL": "your-value",
"HELMDECK_TOKEN": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过 GitHub 账户 tosin2013 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:HELMDECK_URL, HELMDECK_TOKEN
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.29.10)于5个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js, Docker。
同一分类中有:Browser Use, Chrome DevTools MCP, MCP Server Browser
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
MCP server for Chrome DevTools
MCP server for browser use access
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Today's helmdeck install ran a full 6-step code-edit loop (clone, read, patch,
test, commit, push) on
gpt-oss-120bfor $0.07. The same loop on Cursor
or Claude Code direct via Sonnet would have cost $0.30+. Same outcome,
~5× cheaper — and the "expensive" stack isn't even the most expensive option.
| Workflow | Frontier-model approach | Helmdeck (gpt-oss-120b) |
|---|---|---|
| Browser scrape + GitHub comment | $0.25 (Anthropic Computer Use) | $0.005 |
| Code edit loop (6 steps) | $0.35 (Cursor / Aider) | $0.07 |
| Multi-step browser test | $0.20 (Browser-use NL) | $0.03 |
| PDF → structured Markdown | $1.00 (naive Sonnet vision) | $0.003 |
Most browser agents require GPT-4o or Claude Sonnet to work reliably.
Helmdeck is built for the other 99% of deployments — **local 7B models,
air-gapped environments, and teams that can't send credentials to a
cloud API.** It wraps every browser, desktop, git, and code action
into a single typed JSON call that even a small model can fill in correctly.
The numbers above are the consequence: when packs absorb the work the
LLM would otherwise burn tokens rediscovering, cheap or local models do
agentic work that frontier-model APIs charge 10× more for.
A self-hosted, containerized platform for AI agents, exposed as Capability Packs — schema-validated, one-shot JSON tools — and native MCP. The defining metric is ≥90% pack success on 7B–30B-class open-weight models, something no frontier-targeting competitor is optimizing for.
📊 Full per-task comparison with reproduction recipe at https://helmdeck.dev/explanation/why-helmdeck. These are one maintainer's findings; we welcome community reproductions.
Smart models thrive on bash and a README. Weak models stall on open-ended interfaces. Helmdeck closes that gap by hiding browser sessions, desktop actions, credentials, and multi-step workflows behind single typed REST / MCP calls.
Three audiences specifically:
v0.22.0 shipped — *agents that work on free models, with memory.* The release closes ADRs 047–050:
helmdeck.route meta-pack recommends the best pack/pipeline for an intent (with structured gap warnings when nothing fits), backed by per-caller learned defaults surfaced through the helmdeck://routing-guide and helmdeck://my-defaults MCP resources and a Routing Memory management UI.helmdeck.memory_store persists durable user facts (read back via helmdeck://my-memory), an optional embedding sidecar powers OpenClaw's memory_search, and a QMD corpus bridge exposes helmdeck memory to OpenClaw.helmdeck.plan turns a multi-action prompt into an ordered, pipeline-aware step plan plus a rewritten_prompt.internal/llmcontext compacts catalog-heavy prompts to fit small-model context budgets (tiered per-model budgets, cascading select + lexical rank, optional two-pass filter), surfaced through helmdeck://context-budgets and helmdeck://my-plans.57 capability packs ship in the control-plane binary (47 without an AI gateway configured), alongside 21 built-in pipelines, a community pack marketplace (helmdeck pack install ), and operator-supplied cmd.* subprocess packs. Earlier headline features remain: end-to-end content chaining (image.generate auto-feeds podcast/slides/blog covers), the helmdeck://image-models MCP resource, image-mode install (./scripts/install.sh --image-mode), and the Pack Test Runner UI. Helmdeck is published to the official MCP Registry as io.github.tosin2013/helmdeck for one-line install in registry-aware clients. Phases 1–6.5 are complete; the current milestone is v1.0 — Kubernetes & GA (Phase 7), with backlog materialised as GitHub issues tagged good first issue and help wanted.
docs/adrs/ — every architectural decision with PRD back-referencesdocs/TASKS.md — ~85 tasks across 8 phases with critical pathdocs/MILESTONES.md — drop-in issue checklists with current ship statedocs/PACKS.md — every shipped pack's input/output contractgit clone https://github.com/tosin2013/helmdeck
cd helmdeck ./scripts/install.sh
That's it. The script runs preflight checks (docker, node ≥20, go ≥1.26, make, openssl, curl) with platform-aware install hints, generates fresh secrets into deploy/compose/.env.local (chmod 600), builds the Management UI bundle, the Go binaries, and the browser sidecar image, brings the Compose stack up, and prints the URL plus a freshly generated admin password.
✓ helmdeck is up
URL: http://localhost:3000 Username: admin Password:
Useful flags:
./scripts/install.sh --reset — tear down, regenerate secrets, reinstall (new admin password)./scripts/install.sh --no-build — skip build steps, just bring the stack up./scripts/install.sh --help — full flag referenceOr via make: make install.
A running stack is just the platform — the value is packs called by an agent. Wire one of the supported MCP clients to your fresh install:
| Client | Status | Setup guide |
|---|---|---|
| OpenClaw | ✅ validated end-to-end | docs/integrations/openclaw.md |
| Claude Code | 🟡 documented | docs/integrations/claude-code.md |
| Claude Desktop | 🟡 documented | docs/integrations/claude-desktop.md |
| Gemini CLI | 🟡 documented | docs/integrations/gemini-cli.md |
| Hermes Agent | 🟡 documented | docs/integrations/hermes-agent.md |
Once a client is connected, work through the pack-demo-playbook.md — 20+ copy-pasteable prompts that exercise every pack. The per-pack reference covers each pack's contract, error codes, and chained workflows.
If you'd rather drive each step yourself instead of running the install script:
# 1. Build the Management UI bundle (needs Node 20+)
make web-deps && make web-build
make build
HELMDECK_JWT_SECRET=$(openssl rand -hex 32) \ HELMDECK_VAULT_KEY=$(openssl rand -hex 32) \ HELMDECK_ADMIN_PASSWORD=changeme \ ./bin/control-plane
Or use the Compose stack directly (control plane + Garage object store + bundled init):
cp deploy/compose/.env.example deploy/compose/.env.local
docker compose -f deploy/compose/compose.yaml --env-file deploy/compose/.env.local up -d
The login endpoint accepts a static admin password set via the HELMDECK_ADMIN_PASSWORD env var on the control plane process. Suitable for the dev / single-node Compose tier; OIDC SSO for production deployments lands in a later phase.
| Setting | Default | Override |
|---|---|---|
| Username | admin | HELMDECK_ADMIN_USERNAME env var |
| Password | *(none — UI login disabled)* | HELMDECK_ADMIN_PASSWORD env var (required) |
| Session length | 12 hours | Hardcoded in internal/api/auth_login.go |
To change the password: stop the control plane, set HELMDECK_ADMIN_PASSWORD to the new value, and restart. There is no in-UI "change password" flow today — the password is managed out-of-band by whichever orchestrator runs the control plane (Compose, systemd, Kubernetes Secret, etc.).
If `HELMDECK_ADMIN_PASSWORD` is unset, the login endpoint returns 503 login_disabled. The control plane still runs and the API still works — operators can mint a JWT directly via the CLI:
./bin/control-plane -mint-token=alice -mint-token-scopes=admin -mint-token-ttl=12h
The minted token can be pasted into any tool that speaks Authorization: Bearer .
Production note: the static-password path uses constant-time comparison so it's safe against timing attacks, but it's still a shared secret that has to be rotated by hand. For production deployments with multiple operators, OIDC SSO via your existing identity provider is the right answer — see the Phase 6 follow-up roadmap.
helmdeck-mcp bridge binary (ADRs 025, 030)57 packs ship in the box (47 without an AI gateway configured). Each one hides a multi-step workflow behind a single typed JSON-Schema call so weak open-weight models can drive it as reliably as frontier models. The full input/output contract for every pack lives in docs/PACKS.md. The highlights:
| Pack | What it hides |
|---|---|
| Browser & web | |
browser.screenshot_url | Session lifecycle, navigation, render wait, cleanup |
browser.interact | Deterministic multi-step CDP (navigate, click, type, scroll, screenshot, assert_text) — no LLM needed |
web.scrape / web.scrape_spa | Firecrawl-backed markdown scrape OR schema-driven SPA extraction |
web.test | Natural-language browser tests via Playwright MCP + LLM loop |
research.deep | Multi-source Firecrawl search + per-source scrape + LLM synthesis with inline citations |
content.ground | Parses a markdown file for claims, finds authoritative sources, inserts real [link](url) citations in place |
| Document & vision | |
slides.render | Marp + Chromium + format flags |
slides.narrate | Narrated MP4 video (ElevenLabs TTS per slide) + YouTube engagement metadata + sidecar SRT captions + structured validation field (default-on post-step) |
| av.validate | Structured AV-artifact validation (faststart, codec pin, packet contiguity, RMS swee
只显示了开头部分;其余内容请在仓库中阅读