Sep 25, 2026

terminal-browser:让编程 agent 驱动终端里的真实浏览器

安装这个 3k 星的终端浏览器及其 Claude Code 插件,agent 就能在你代码旁边的分栏里打开并操作真实网页。

#tutorial#developer-tools#agent-tools

你的编程 agent 能改仓库里的每一个文件,却看不见这些文件渲染出的页面。你们只能来回贴截图、用文字描述哪里不对。terminal-browser——一个 3k 星、MIT 协议的工具——补上了这个缺口:它在终端里跑一个真正的 Chromium 浏览器,而终端正是 agent 已经在的地方。

为什么这个 Skill 重要

无头浏览器工具给 agent 的是 DOM 快照,你和 agent 看的仍然是两样东西。terminal-browser 用 kitty graphics protocol 在终端窗口里渲染真实像素,于是你和 agent 看的是同一个页面——同一个标签页,就在编辑器旁边。README 的用例都由此展开:编程 agent 和网站共用一个终端标签页、agent 能操作已打开的浏览器实例、agent 写完 HTML 方案就自动在分栏里打开、以及通过 SSH 预览远程服务器。

它是原生应用而不是技能文件夹——agent 侧通过 CLI 和一个可选的 Claude Code 插件接入。

安装

macOS 或 Linux 上,用 curl 或 Homebrew 安装:

curl -fsSL https://terminal-browser.sh/install | bash
brew install terminal-browser

Claude Code 插件路线会多出 /browser 命令。插件 README 自称实验性、存在已知局限,而且除最新版 Claude Code 外还有一个前置条件:在 ~/.claude/settings.json 里启用 UI 插件:

{
  "env": { "CLAUDE_CODE_ENABLE_FUNCTION_HOOKS": "1" }
}

然后安装插件:

claude plugin marketplace add zenbu-labs/terminal-browser
claude plugin install terminal-browser@terminal-browser

在 Claude Code 里运行 /browser,浏览器就在终端里打开。

实战:让 agent 亲自验证自己改的前端

让 agent 修一个布局 bug,然后让它打开结果,而不是口头描述。装了插件就用 /browser 打开;没装插件,在 shell 里也能做到:

terminal-browser --split right
terminal-browser open http://localhost:3000

浏览器在 agent 代码右侧的分栏里打开,terminal-browser open <url> 负责指向你的站点。agent 通过 terminal-browser action 驱动已打开的浏览器——README 对它的描述是:一个与 agent-browser 兼容、用于操作已打开 terminal-browser 的 CLI。想亲手把某个元素指给 agent 看,按 ctrl+g:快捷键表把它列为「开始元素选择(发送给 agent)」。

有一个终端前提决定这一切能否工作:你的终端必须支持 kitty graphics protocol。README 点名 ghostty、kitty、cmux、vscode 都在支持之列。

技巧

  • 长会话开了好几个浏览器实例时,用 terminal-browser ls 列出所有已打开的实例。
  • 走 SSH 时优先用 terminal-browser open --ssh <user@host> <url>:渲染留在本机,只有网络请求经远程服务器代理,远程机器上的 localhost 站点也能以本地速度加载。
  • 滚动和触控板事件之所以可用,是因为一个后台辅助程序在监听终端传不上来的输入——README 说明这是一个读取操作系统级事件的后台 Swift 应用。
  • 两部分分开更新:应用用 terminal-browser upgrade,插件用 claude plugin update terminal-browser@terminal-browser。

何时不用这个 Skill

如果你的终端不支持 kitty graphics protocol,核心渲染方案就不工作——README 没有记录任何回退方案。如果你需要 Chrome 扩展,那是路线图条目,不是已发布功能。而如果你只是想让 agent 抓取页面内容、不需要共享视觉上下文,普通无头浏览器仍是更轻的选择;这个工具的价值恰恰在你们该看同一块屏幕的时候。


查看 排行榜 了解更多 skill。