用途:在 Codex 会话中驱动应用内置浏览器(in-app browser),完成打开页面、导航、点击、输入、截图和读取页面状态等操作,工具为 mcp__node_repl__js。
主要能力与用法:开始前应先读官方技能文档,官方技能为权威来源,路径为 ~/.codex/plugins/cache/openai-bundled/browser/<version>/skills/control-in-app-browser/SKILL.md,需找到最新的 <version> 目录。每个会话需先做一次引导:通过 mcp__node_repl__js 发送单行代码,若 globalThis.agent?.browsers == null,则从 "<plugin root>/scripts/browser-client.mjs" 导入 setupBrowserRuntime 并调用赋值给 globalThis.agent,其中 <plugin root> 需替换为浏览器插件路径。随后绑定应用内浏览器并读取其文档:globalThis.iab = await agent.browsers.get("iab"); nodeRepl.write(await iab.documentation());。与页面交互前应先读完文档输出。
限制与规则:代码须以单行发送,或使用 @file:<path> 并带结尾换行;运行时在换行时触发,不带结尾换行的输入会静默无效。后续轮次复用已有的 agent 与 iab 绑定,不要重新初始化。open_in_codex 仅打开标签页,不能点击、输入或读取。不得自行启动 node_repl 进程,也不得编写旁路驱动。若工具缺失,应停止并报告 mcp__node_repl__js 不在工具列表中,不要构造替代方案。
跨客户端与回退:该技能设计为可在 GitHub Copilot、Claude Code 和 Codex 间使用;Codex 可将文件夹安装或同步到 $CODEX_HOME/skills/codex-in-app-browser,重大改动后重启 Codex。首选 MCP 服务为 Codex in-app browser runtime;当当前宿主未暴露该运行时,可使用已批准的浏览器连接器或手动浏览器交接。不得在没有直接浏览器证据时声称页面状态、点击、输入或截图结果,也不得在宿主未暴露 MCP 时声称使用了 MCP 操作。验证协议要求检查请求是否匹配激活边界、依赖与安全检查是否解决、是否使用最窄相关流程且未虚构工具或结果、输出是否经本地测试或渲染证据核对,并在首选集成不可用时验证回退仍安全可执行。相关技能包括 verification-before-completion 与 documentation-verification。