Skill 安装
多 Agent 安装npx skills add https://github.com/browserbase/skills --skill cookie-sync
使用 npx skills 快速安装,支持将 Skill 添加到多个兼容的 AI Agent。
Skill 调研报告
browserbase/skills#cookie-sync
Skill 更新日志
版本列表
无版本号
[STG-2254] chore: 使合并的技能符合 agent-skills 标准 (#135)
* chore: 使合并的技能符合 agent-skills 标准
- 为 browser-to-api、company-research、event-prospecting 添加 MIT LICENSE.txt
- 将 autobrowse 的 LICENSE 年份规范化为 2026,并将 license frontmatter 规范化为 MIT
- 在缺失处添加 license/compatibility/allowed-tools frontmatter
(agent-experience、cookie-sync、fetch、functions、safe-browser、search)
- README:删除过时的 site-debugger/bb-usage 行,添加 agent-experience、
autobrowse、browser-to-api、company-research、event-prospecting 行
- 从 autobrowse 中移除被禁止的 .env.example(更新 README 设置片段)
Co-Authored-By: Claude Fable 5
* fix: 从 autobrowse 设置行中移除 BROWSERBASE_PROJECT_ID
回应 shrey150 的审查反馈
---------
Co-authored-by: Claude Fable 5
无版本号
更新技能以使用经过验证的 Browserbase 会话 (#106)
无版本号
docs: 将 bb/browse-cli 引用重命名为统一的 browse CLI (#111)
* docs: 将 bb/browse-cli 引用重命名为统一的 browse CLI
`@browserbasehq/cli` (bb) 和 `@browserbasehq/browse-cli` 包
已合并为单个 `browse` 包(`npm install -g browse`)。
更新所有技能文档、脚本和示例以使用新的命令
接口:
- `bb fetch|search|sessions|projects|contexts|extensions` → `browse cloud ...`
- `bb functions ...` → `browse functions ...`
- `bb templates ...` → `browse templates ...`
- `bb skills install` → `browse skills install`
- `bb browse ` → 顶层 `browse `(open、get、click、……)
- `pnpm bb dev|publish` → `browse functions dev|publish`
- `# bb call N/TOTAL` 强制注释 → `# browse call N/TOTAL`
- extract_page.mjs 中的 `bbFetch`/`bbBrowseMarkdown` 辅助函数已重命名并
重写为调用新的 `browse cloud fetch` / `browse get markdown`
接口。
- bb-capture.mjs / bb-finalize.mjs 通过 shell 调用 `browse cloud sessions ...`
SDK 变量名(`const bb = new Browserbase()`)和
`x-bb-api-key` HTTP 头保持不变。
Co-Authored-By: Claude Opus 4.7 (1M context)
* fix: 使 browse 命令示例与 0.6 对齐
* docs: 注明已弃用的 context 上传刷新
* docs: 阐明 trace 示例中 cdp 标志的用法
* docs: 在 trace 示例中依赖 cdp 守护进程持久性
* docs(browser-trace): 在后续命令中删除冗余的 target 标志
browse 守护进程在第一条命令后缓存 target,因此
在 `browse open --cdp 9222`(或 `--remote --session "$SID"`)之后的命令
无需重复 target 标志。回应 PR #111 审查意见
中关于 EXAMPLES.md 中 `--cdp` 重复的问题。
Co-Authored-By: Claude Opus 4.7 (1M context)
* docs: 阐明 cdp 守护进程行为
* fix(extract_page): 在 `browse get` 上删除冗余的 --local --headless
browse 守护进程在 `browse open --local --headless` 后缓存 target,
因此后续的 `browse get markdown` 调用不应重复模式标志。
与 skills/browser/SKILL.md 的约定一致(“将 --local、--remote、
--auto-connect 或 --cdp 放在第一条浏览器命令上”),也与 Shrey
在 5468e0e 中对 browser-trace 应用的相同修复一致。
回应 PR #111 上的 Cursor Bugbot 发现。
Co-Authored-By: Claude Opus 4.7 (1M context)
* docs: 对齐 browse 生命周期示例
* docs: 删除过时的 fill 标志引用
* docs: 收紧 browse 技能迁移措辞
* docs: 阐明 browse stop 模式切换
* docs: 验证 browse 命令注意事项
---------
Co-authored-by: Claude Opus 4.7 (1M context)
Co-authored-by: Shrey Pandya
无版本号
添加 cookie-sync 技能 [实验性] (#49)
* 添加 cookie-sync 技能,用于将本地 Chrome cookie 同步到 Browserbase
从本地 Chrome 浏览器(通过 CDP)导出 cookie,并将其注入到
新的 Browserbase 云会话中,从而实现带完整会话
重放和可观测性的已认证浏览。与 Browserbase Contexts 集成,以在会话之间持久复用
cookie。
Co-Authored-By: Claude Opus 4.6 (1M context)
* 支持 CDP_URL 环境变量以进行直接 WebSocket 连接
当 Chrome 以 --remote-debugging-port 启动时(这需要
--user-data-dir 且不会创建 DevToolsActivePort 文件),用户
现在可以设置 CDP_URL=ws://127.0.0.1:9222,而不是伪造一个假的
DevToolsActivePort 文件。在 chrome://flags/#allow-remote-debugging 落地之前,这是 Chrome 稳定版上唯一可行的路径。
Co-Authored-By: Claude Opus 4.6 (1M context)
* 阐明 chrome://flags 标志尚未在 Chrome 稳定版中提供
截至 2026 年 3 月,allow-remote-debugging 标志仅在 Chrome Beta/Dev/Canary
中可用。更新了 SKILL.md 描述和先决条件,以便
agent 清楚地向用户传达这一限制。
Co-Authored-By: Claude Opus 4.6 (1M context)
* 添加域名过滤、stealth/代理支持以及安全 cookie 修复
- --domains 标志用于选择性同步特定站点的 cookie
- --stealth 标志用于 Browserbase 高级 stealth 模式
- --proxy "City,ST,US" 用于带地理定位的住宅代理
- --persist / --context CLI 标志(取代仅环境变量配置)
- addUrlsToCookies() 修复:安全 cookie(例如 Google 认证)
在没有 URL 字段的情况下被 Network.setCookies 静默丢弃
- Chrome 146+ 版本检查,并提供可操作的错误消息
Co-Authored-By: Claude Opus 4.6 (1M context)
* 修复 cookie-sync 脚本中的 bugbot 问题
- 在 getLocalWsUrl() 中读取 CDP_URL 环境变量,以支持 Chrome < 146 回退
- 在 resolve/reject 时清除 CDP send() 中悬空的超时
- 在轮询循环中检测终端会话状态(ERROR/TIMED_OUT/FAILED)
- 当设置了 CDP_URL 或 CDP_PORT_FILE 时跳过 Chrome 版本检查
- 读取 BROWSERBASE_CONTEXT_ID 环境变量作为 --context 标志的回退
- 移除未使用的 getDebugUrl 函数
Co-Authored-By: Claude Opus 4.6 (1M context)
* 重写 cookie-sync 以使用 Stagehand 和 Browserbase SDK
用 @browserbasehq/stagehand 进行浏览器连接(本地 + 云)
以及 @browserbasehq/sdk 进行 context 创建,替换手写的 CDP 客户端和原始 fetch API 调用。这践行了我们
自己的 SDK,并移除了约 200 行样板代码。
Co-Authored-By: Claude Opus 4.6 (1M context)
* 修复 cookie-sync 的 Stagehand v3 模型配置
将 model 作为 { modelName, apiKey } 对象传递,以匹配 Stagehand v3 API。
Cookie 同步仅使用浏览器连接,不使用 AI 功能,因此一个虚拟
API key 就足够了。
Co-Authored-By: Claude Opus 4.6 (1M context)
* 修复大写 WebSocket URL 的 ws→http 方案替换
WSS://host 被转换为 httpS://host 而不是 https://host,
因为正则表达式以不区分大小写的方式匹配,但没有处理
wss 中末尾的 's'。现在匹配完整的 wss/ws 前缀并正确映射到
https/http。
Co-Authored-By: Claude Opus 4.6 (1M context)
* 从 Stagehand 实例中移除不必要的虚拟模型配置
当未传递 model 时,Stagehand 默认使用 openai/gpt-4.1-mini,
但 LLM 客户端是延迟创建的,并且对于仅 cookie 的
操作(context.cookies / context.addCookies)从未被调用。apiKey: 'unused'
的 hack 是不必要的——通过追踪构造函数验证:AI SDK
模型对象仅在 act/extract/observe 被使用时才会被调用。
Co-Authored-By: Claude Opus 4.6 (1M context)
* 在 Stagehand BROWSERBASE 初始化中使用 disableAPI 而不是虚拟模型 key
Stagehand API 客户端(api.ts:213)在
BROWSERBASE 初始化期间需要 modelApiKey,但这仅用于我们不需要的服务器端 AI 功能。
设置 disableAPI: true 会完全跳过 API 客户端
(v3.ts:928),同时仍然创建 BB 会话和 CDP 连接。
在 OPENAI_API_KEY 和 ANTHROPIC_API_KEY 均未设置的情况下进行了端到端测试——
从本地 Chrome 导出 cookie 并注入到云会话中。
Co-Authored-By: Claude Opus 4.6 (1M context)
* 修复 DevToolsActivePort 中的 Windows 行尾并添加 Linux Chrome 版本检查
- 对 DevToolsActivePort 使用 /\r?\n/ 分割以处理 Windows CRLF
- 将 Linux Chrome 二进制名称添加到版本检查中(google-chrome、chromium 等)
- 移除 existsSync 门控,以便通过 execSync 找到 PATH 解析的二进制文件
Co-Authored-By: Claude Opus 4.6 (1M context)
* 验证 --proxy 标志需要城市和州
Co-Authored-By: Claude Opus 4.6 (1M context)
* 移除 BROWSERBASE_PROJECT_ID——从 API key 推断
API key 限定于某个项目,因此项目 ID 是多余的。
已从脚本、SKILL.md、REFERENCE.md 和 EXAMPLES.md 中移除。
Co-Authored-By: Claude Opus 4.6 (1M context)
* 使用持久 context 而不是 keepAlive 会话
Cookie-sync 现在始终创建一个持久 context,并在注入 cookie 后关闭
临时会话。这让用户可以使用 `browse open --context-id --persist`
浏览已认证的站点,而不是使用原始的 `node -e` WebSocket hack。
- 移除 --persist 标志(始终创建 context)
- 移除 keepAlive: true(会话在注入后关闭)
- 用 browse CLI 工作流替换 node -e 导航文档
- 添加针对 stealth/代理的故障排除提示
Co-Authored-By: Claude Opus 4.6 (1M context)
---------
Co-authored-by: Claude Opus 4.6 (1M context)
Co-authored-by: shubh24
暂无评论...