browser-to-api

3周前发布 6 0 0 0

browserbase/skills#browser-to-api

Skill 安装

多 Agent 安装
npx skills add https://github.com/browserbase/skills --skill browser-to-api

使用 npx skills 快速安装,支持将 Skill 添加到多个兼容的 AI Agent。

Skill 调研报告

browserbase/skills#browser-to-api

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
无版本号
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
无版本号
添加 browser-reverse 技能 — 从 browser-trace 捕获生成 OpenAPI 3.1 (#88) * 添加 browser-reverse 技能 — 从 browser-trace 捕获中发现 OpenAPI 3.1 消费一次 browser-trace 运行(.o11y//),配对 CDP 请求/响应 事件,将路径模板化,从样本推断 JSON schema,并输出一份 OpenAPI 3.1 文档,附带覆盖率报告和置信度元数据。 流水线:load → filter → normalize → infer → emit。每个阶段都是一个 独立脚本,写入 intermediate/ 以便调试。可选的 --bodies 标志通过 CDP requestId 连接 `browse network on` 捕获, 使响应体输入到 schema 推断中。 已针对 Hacker News、jsonplaceholder、derekmeegan.com、 browserbase.com、browser-use.com、reddit.com 进行 E2E 测试。 Co-Authored-By: Claude Opus 4.7 (1M context) * 回应 PR #88 审查:重命名为 browser-to-api,删除 lift 文档,修复 bug 重命名和文档清理(依据 shrey150): - 将技能从 `browser-reverse` 重命名为 `browser-to-api`。更新 SKILL.md frontmatter + 标题、package.json、REFERENCE.md 标题、OpenAPI 文档的 `info.description` 以及 report.md 标题。 - 修复 SKILL.md 组合图中过时的 `discover-api-spec` 引用 (早期重命名遗留)。 - 从 PR 中删除 `BODY-CAPTURE-LIFT.md`;它是一个单独的提案。 - 删除 SKILL.md 中的 `exec.sendFile()` 引用(browserbase 内部, 不是通用技能原语)。 - REFERENCE.md 重构为以脚本/CLI/文件格式参考开头, 而不是架构介绍。删除流水线图。 Bug 修复(依据 Cursor Bugbot): - `filter.mjs`:重做优先级,使 `--include` 真正挽救会被 默认排除命中的 URL,与文档化契约一致。用户 `--exclude` 仍然优先。添加了单元式测试路径。 - `infer.mjs`:跳过 CDP 状态为 null 的响应体样本。此前 它们被键为 `"0"`,但 `emit.mjs` 只遍历 `ep.statusCodes` (排除 null),从而静默丢弃响应体。 - `load.mjs`:修复 `urlQuery()` 中的注释 — 代码是首个值优先,而不是 最后值优先。 Co-Authored-By: Claude Opus 4.7 (1M context) * 为 browser-to-api 添加 Swagger UI 预览 * 噪声分类、GraphQL 分解和客户端 SDK 生成 normalize.mjs: - 自动将端点分类为 api/noise/page 并丢弃非 API 流量 (跟踪、分析、机器人防御、会话管道、HTML 页面渲染) - 检测多路复用端点(GraphQL operationName、JSON-RPC method、 查询参数分发)并分解为独立的逻辑操作 - 通常将捕获流量的 60-80% 作为噪声丢弃 emit.mjs: - 生成 client.mjs — 零依赖 ES 模块,将每个发现的 操作包装为带 JSDoc 参数类型的异步函数 - 对于 GraphQL/APQ 端点,嵌入持久化查询哈希并接好 完整请求结构,使调用者只需传递变量 - 从 trace 中提取必需头(CSRF 令牌、自定义头)并 将其包含在客户端默认值中 - 面向任务的 report.md,包含快速开始导入、curl 示例、 变量表以及每个操作的响应样本 在 OpenTable trace 上:27 个原始端点 → 9 个命名操作,零噪声。 生成的客户端包含 autocomplete()、restaurantsAvailability() 等。 Co-Authored-By: Claude Opus 4.6 (1M context) * 添加自包含 HTML 报告以替代 Swagger UI 生成 index.html,包含: - 摘要统计(操作、端点、协议、样本数) - 每个操作的可展开卡片,包含变量表、客户端用法、 请求体和响应示例 - 完整生成的 client.mjs 嵌入在底部 Swagger UI 并不合适 — 对于单个 GraphQL 端点, 有 10 个相同的绿色 POST 条,且带有甚至不是 有效 OpenAPI 的括号语法路径。HTML 报告展示了真正重要的内容。 Co-Authored-By: Claude Opus 4.6 (1M context) * 用自包含 HTML 报告替换 Swagger UI emit.mjs 已生成 index.html 作为主要视觉输出 — 更新 SKILL.md 以匹配,并删除无用的 open-swagger-ui.mjs 脚本。 Co-Authored-By: Claude Opus 4.6 (1M context) --------- Co-authored-by: Claude Opus 4.7 (1M context) Co-authored-by: Shrey Pandya

暂无评论

none
暂无评论...