我的 AI 编码代理无法读取 Bitbucket PR, 所以我修复了它
Source: Dev.to
概览
这里有件让我很沮丧的事。
我在使用 Claude Code(Anthropic 的终端式编码助手),它真的很有帮助。它可以运行命令、读取文件,并帮助我解决问题。当我在一个 GitHub 项目上时,它甚至可以使用 gh pr view 等命令检查 PR 状态并协助审查。
后来我切换到 Bitbucket 项目,结果我的 AI 助手瞬间失明了。“抱歉,我无法访问那个”一次又一次。没有 CLI 工具就意味着没有办法获取 PR 差异、检查状态,或者做任何让 AI 辅助开发顺畅进行的 Git 平台操作。
于是我自己写了一个。
它是什么
一个面向 Bitbucket Cloud 的 gh 风格 CLI。没有花哨的功能,只是补齐了缺失的那部分:
# authenticate once
bb auth login
# now your terminal (and any AI agent) can interact with Bitbucket
bb pr list
bb pr view 42
bb pr diff 42
bb repo list
现在当我让 Claude Code “检查一下打开的 PR 并做个总结”时,它真的能做到。它会运行 bb pr list --json,解析输出,然后给我需要的信息。同样地,针对 “审查 PR #15 的差异”——它会运行 bb pr diff 15,我们就可以继续工作了。
关键特性
上下文检测
如果你在一个带有 Bitbucket 远程的 git 仓库中,它会自动识别 workspace 和仓库:
cd my-bitbucket-project
bb pr list # 直接生效,无需额外参数
全局 JSON 输出
对脚本和 AI 代理都至关重要:
bb pr list --json | jq '.[] | select(.state == "OPEN")'
标准 npm 安装
npm install -g @pilatos/bitbucket-cli
功能覆盖
- 身份验证
- 仓库:克隆、创建、列出、查看、删除
- 拉取请求:创建、列出、查看、编辑、差异、合并、批准、拒绝、检出
尚未实现的功能:pipelines、问题追踪集成、代码搜索。它已经覆盖了约 80% 的使用场景,基本够用了。
为什么分享
如果你在 Bitbucket 项目上使用 AI 编码工具时遇到和我相同的障碍,这个工具现在已经可以使用。
如果你想贡献——它是开源的、使用 TypeScript、结构清晰。添加新命令相当直接。如果有人想实现 pipelines 支持,那将是个很棒的补充。
- GitHub:
- Docs:
不隶属于 Atlassian。仅是一名希望自己的 AI 工具真正可用的开发者。