使用说明
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 <ID> View PR details
bbcli pr approve <ID> Approve a PR
bbcli pr decline <ID> Decline a PR
bbcli pr merge <ID> Merge a PR
bbcli pipeline list List recent pipelines
bbcli pipeline status <N> Show pipeline steps
bbcli pipeline watch [N] Watch until completion
bbcli branch delete <name> Delete a remote branch
bbcli auth login Store credentials
bbcli auth status Show auth chain
bbcli config set <k> <v> Set config value
bbcli config get <k> Get config value
bbcli config list Show all config
bbcli api <path> 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
许可证
麻省理工学院