Files
makelore/.opencode/skills/agent-browser/SKILL.md
brother7 e97a7ce9df feat: 增加共享 Agent Browser 调试能力
需求:在 AI 编程会话中让用户与 Agent 共享同一浏览器页面,并查看控制台与网络信息。

实现:新增沙箱浏览器内核、Host API/渲染器面板、OpenCode 工具接入及安全边界测试。
2026-07-31 14:53:36 +08:00

2.1 KiB
Raw Blame History

name, description
name description
agent-browser 当需要打开、查看或调试当前 Makelore 项目的本地或公网网页,读取 Console、Network、DOM、样式、性能信息执行页面脚本或刷新验证修改时使用。

Makelore 开发浏览器

开发浏览器是用户和智能体共享的项目调试界面。它只用于开发过程,不代表作品已经发布。

基本流程

  1. 确认项目的开发服务已经启动,并取得本地网页地址。
  2. 调用 browser_contextopen 打开该地址。
  3. 调用 browser_cdpread_events 读取 Console 与 Network 事件。
  4. 需要主动检查页面时,使用 browser_cdpsend 调用标准 CDP 方法。
  5. 修改代码后调用 browser_navigatereload,再读取新事件验证结果。

工具选择

  • browser_context:打开、查看状态、关闭浏览器或清空当前项目的浏览器数据。
  • browser_navigate:跳转、后退、前进或刷新共享页面。
  • browser_cdp
    • send 原样执行当前项目页面的 CDP 命令;
    • read_events 按游标读取原始事件,不会消费其他读取者的数据;
    • read_payload 分块读取响应体、截图等大型结果。

约束

  • 不要传递或猜测 projectIdtabIdtargetIdwebContentsId;项目身份由当前会话目录自动绑定。
  • 不要通过远程调试端口、curl 或另一个浏览器绕过这些工具。
  • 页面刷新或调试器重连后,旧的 DOM node、RemoteObject 和子 Target 引用可能失效,应重新获取。
  • 开发浏览器面板收起或被模态框遮挡时,智能体调试会暂停;等待用户重新显示页面后再继续。
  • CDP_TIMEOUT 表示结果未知,客户端会关闭该浏览器以清理悬挂命令;不要盲目重复可能产生副作用的命令,先重新打开页面并核对状态。
  • 原生 DevTools 与智能体调试冲突时,请用户关闭该页面的原生 DevTools 后再继续。
  • Console、请求头、响应体、Cookie 和页面内容可能包含敏感信息,只在完成当前调试所必需时读取和展示。