MCPcopy Index your code
hub / github.com/craftamap/bb

github.com/craftamap/bb @v0.6.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.6.0 ↗ · + Follow
169 symbols 622 edges 53 files 4 documented · 2%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

bb

github versions GitHub Workflow Status Go Report Card

bb logo


bb is an inoffical bitbucket.org command line tool deeply inspired by the official GitHub CLI. It brings pull requests, downloads, and other bitbucket concepts to your terminal.

screenshot showing

Installation

General

Check out the Releases page where you can find the latest releases built for every environment. This includes builds for macOS, Windows, Debian, and many more!

macOS

brew tap craftamap/tap && brew install bb

Arch / AUR

yay bbcli-git

Using go get

Make sure you have a working Go environment. Follow the Go install instructions.

go get github.com/craftamap/bb

Building from source

Make sure you have a working Go environment. Follow the Go install instructions.

git clone https://github.com/craftamap/bb.git
go build

Set-Up

You need to authenticate with your credentials first. You should generate a app password for that. Make sure to grant read and write access to the features you want to use. (Recommended:Repositories: Read/Write, Pull Requests: Read/Write, Pipelines: Read/Write, Account: Email/Read, Workspace membership: Read/Write)

Run the following command to enter your username and password:

bb auth login

Your credentials will be stored to ~/.config/bb/configuration.toml.

Usage

To see all available commands, use bb without any subcommand. Many commands support the --web-flag to execute the action in the browser, or open the browser after performing an specific action.

Pull Requests

You can use bb pr create to create new pull requests.

Create prs within seconds

Also, you can use bb pr to list (bb pr list), view (bb pr view) or merge existing pull requests (bb pr merge) and see how their pipelines ran (bb pr statuses). Use bb pr comments to see the discussion of a pull request. Use bb pr checkout to checkout the branch of a pull request.

Manage prs like a ruler

Downloads

Manage downloads by listing (bb downloads list), downloading (bb downloads <file name>) or uploading (br downloads upload) them.

up and down

Pipelines

Check the latest pipeline executions by running bb pipelines list. Find out more about them by running bb pipelines view <pipeline id>, or view their logs by running bb pipelines logs <pipeline id>.

never gonna give you up

Repositories

View basic repository information by running bb repo view, or open the repository in the browser by using bb repo view --web.

A repo in all its beauty

Issues

If you have the native bitbucket issues enabled in your project, you can list all open issues by typing bb issue list. You can also create new ones using bb issue create, update existing ones using bb issue update <id>, delete and view existing ones with bb issue delete <id> and bb issue view <id> and comment them using bb issue comment <id>.

Development

Used Libraries

We use the following bitbucket libary:

  • https://github.com/ktrysmt/go-bitbucket (Apache-2.0 License)

Thanks a lot for the work!

Extension points exported contracts — how you extend this code

Runnable (Interface)
Runnable is typically an exec.Cmd or its stub in tests. [1 implementers]
internal/run/run.go

Core symbols most depended-on inside this repo

Error
called by 130
util/logging/logging.go
Warning
called by 25
util/logging/logging.go
Success
called by 16
util/logging/logging.go
GetPrIDBySourceBranch
called by 9
client/pr.go
Note
called by 8
util/logging/logging.go
RepositoryGet
called by 6
client/repository.go
PrView
called by 4
client/pr.go
Run
called by 4
internal/run/run.go

Shape

Function 72
Struct 50
Method 46
Interface 1

Languages

Go100%

Modules by API surface

client/pr.go26 symbols
client/issues.go18 symbols
client/pipelines.go11 symbols
internal/run/run.go10 symbols
client/repository.go8 symbols
util/logging/logging.go7 symbols
cmd/commands/pr/create/create.go7 symbols
cmd/commands/issue/shared/shared.go7 symbols
client/workspaces.go6 symbols
git/git.go5 symbols
cmd/commands/pr/diff/diff.go4 symbols
client/downloads.go4 symbols

For agents

$ claude mcp add bb \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact