bbcli
缺失的Bitbucket Cloud工具包——为您和您的AI助手准备。
bbcli 从一个Go代码库中提供两个工具:
bbcli--具有结构化JSON输出、语义退出代码和零交互提示的CLIbbmcp--提供Claude Code、Cursor和Windsurf原生Bitbucket工具的MCP服务器
两者共享一个身份验证设置、一个配置和相同的行为。什么 gh 是GitHub,bbcli是Bitbucket——为人工智能辅助开发时代而构建。
第一个Bitbucket MCP服务器。 不存在Bitbucket MCP服务器。bbmcp填补了这一空白。
安装
# Requires Go 1.21+
go install github.com/ashrocket/bbcli/cmd/bbcli@latest
go install github.com/ashrocket/bbcli/cmd/bbmcp@latest确保 ~/go/bin 在您的路径中:
echo 'export PATH="$HOME/go/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc快速开始
# Authenticate (one time, works for both CLI and MCP)
bbcli auth login
# Set your default workspace
bbcli config set defaults.workspace myworkspace
# List PRs
bbcli pr list -r my-repo
# Create a PR
bbcli pr create --title "Fix auth bug" --dest dev -r my-repo
# Check pipelines
bbcli pipeline list -r my-repo
bbcli pipeline status 42 -r my-repo
# Watch a pipeline until it finishes
bbcli pipeline watch -r my-repo
# Hit any Bitbucket API endpoint directly
bbcli api /user命令
bbcli pr list List pull requests
bbcli pr create Create a pull request
bbcli pr view View PR details
bbcli pr approve Approve a PR
bbcli pr decline Decline a PR
bbcli pr merge Merge a PR
bbcli pipeline list List recent pipelines
bbcli pipeline status Show pipeline steps
bbcli pipeline watch [N] Watch until completion
bbcli branch delete Delete a remote branch
bbcli auth login Store credentials
bbcli auth status Show auth chain
bbcli config set Set config value
bbcli config get Get config value
bbcli config list Show all config
bbcli api
Authenticated API request每个命令都支持 --json, --output minimal,以及 --output table (默认)。
认证
bbcli从以下位置解析身份验证(按优先级顺序):
BBCLI_TOKEN环境变量--token旗帜~/.config/bbcli/credentials(存储于bbcli auth login)- 遗产
~/.bb-cli-token-*文件
# Option A: Environment variable (recommended for CI/agents)
export BBCLI_TOKEN="your-bitbucket-token"
# Option B: Persistent login
bbcli auth login --token your-bitbucket-token
# Option C: Interactive login (prompts for token)
bbcli auth login支持Bearer令牌(工作区/仓库访问令牌)和基本身份验证(电子邮件:app_password格式)。
用于AI代理(CLI)
# Set once in agent environment
export BBCLI_TOKEN="your-api-token"
export BBCLI_OUTPUT="json"
# Create a PR (idempotent — safe to retry)
PR_ID=$(bbcli pr create --title "Fix auth" --dest dev --output minimal)
# Check CI
bbcli pipeline watch --timeout 600
# Merge
bbcli pr merge "$PR_ID"每个错误都包含一个机器可读代码和 retryable 标志:
{
"error": {
"code": "RATE_LIMITED",
"message": "API rate limit exceeded. Retry after 30 seconds.",
"suggestion": "Wait and retry, or reduce request frequency",
"retryable": true
}
}人工智能代理(MCP)
为您的AI编码助手提供原生Bitbucket工具:
# Claude Code — one command setup
claude mcp add bitbucket -- bbmcp或添加到 .mcp.json:
{
"mcpServers": {
"bitbucket": {
"command": "bbmcp",
"env": { "BBCLI_TOKEN": "your-api-token" }
}
}
}22种可用工具: bitbucket_pr_create, bitbucket_pr_list, bitbucket_pipeline_status, bitbucket_source_view, bitbucket_api以及更多。
退出代码
| 代码 | 名称 | 代理操作 |
|---|---|---|
| 0 | 成功 | 继续 |
| 1 | 一般错误 | 记录并上报 |
| 2 | 使用错误 | 修复调用 |
| 3 | 身份验证错误 | 刷新凭据 |
| 4 | 未找到 | 检查资源ID |
| 5 | 状态错误 | 检查当前状态 |
| 6 | 速率受限 | 后退并重试 |
| 7 | 网络/API错误 | 重试或升级 |
自动检测
bbcli自动从当前目录中的git远程检测您的工作区和仓库。无需通过 -w 和 -r 在Bitbucket仓库内工作时标记。
cd ~/code/my-bitbucket-repo
bbcli pr list # just works — workspace and repo detected from git remote用标志覆盖: bbcli pr list -w other-workspace -r other-repo
许可证
麻省理工学院
