Skip to main content

A Forgejo CLI — works with Codeberg and any Forgejo instance

Project description

cb — A Codeberg CLI

PyPI - Python Version PyPI PyPI - License

cb is a CLI for Codeberg (a Forgejo instance) — think gh for Codeberg. It also works with any Forgejo instance. Built with Xclif.

# One-time setup
cb auth login

# Work with repos, issues, PRs, releases
cb repo list
cb issue create --title "Fix the thing"
cb pr create --base main --head fix
cb release create v0.2.0

Install

pip install codeberg-cli  # or: uv tool install codeberg-cli

Or from source:

git clone https://codeberg.org/ThatXliner/codeberg-cli.git
cd cb
uv tool install .

Quickstart

# Authenticate (tokens at https://codeberg.org/user/settings/applications)
cb auth login

# Who am I?
cb auth whoami

# List your repos
cb repo list

# Clone one
cb repo clone ThatXliner/cb

# Open an issue
cb issue create --title "suggestion" --body "what about..."

# See everything you can do
cb --help

Config

Token stored in $XDG_CONFIG_HOME/codeberg-cli/config.toml (managed by cb auth login / cb auth logout).

View or change config:

cb config path  # Show config file location
cb config get   # Print all config values
cb config set base_url "https://codeberg.org/api/v1"     # Codeberg (default)
cb config set base_url "https://git.example.com/api/v1"  # Self-hosted Forgejo

Comparison

Here's how cb stacks up against other Forgejo CLI tools. Last updated: June 2026.

TL;DR: cb is the most feature-complete Forgejo CLI — by a wide margin.

cb (this) fj (forgejo-cli) berg (codeberg-cli) tea (gitea/tea) gcli
Language Python Rust Rust Go C
Install pip install codeberg-cli prebuilt binaries/Cargo cargo install codeberg-cli brew install tea brew install gcli
Multi-instance cb config set base_url -H <instance> BERG_BASE_URL tea login add -t forgejo

Issues

cb fj berg tea gcli
Create
List
View
Close
Reopen
Comment
Edit
Delete
Pin/Unpin
Search
Attachments
Labels (manage on issue)
Reactions
Subscriptions
Tracked times
Dependencies
Deadline
Templates

Pull Requests

cb fj berg tea gcli
Create
List
View
Merge
Close
Reopen
Comment
Edit
Checkout
Commits
Files/changed
Reviews
Diff/Patch
Update branch
AGit (no-fork)
CI status
Templates
Auto-merge

Releases

cb fj berg tea gcli
Create
List
View
Upload assets
Delete
Edit
Latest
By tag

Repositories

cb fj berg tea gcli
Create
List
View
Clone
Fork
Delete
Star
Unstar
Watch/Unwatch
Edit
Migrate/Mirror
Branches
Topics
Languages
Hooks
Archive
Commits
Contents
Collaborators
Transfer
Wikis
Push mirrors
Search

Labels

cb fj berg tea gcli
Create
List
Delete
Edit

Milestones

cb fj berg tea gcli
Create
List
View
Delete
Edit

Notifications

cb fj berg tea gcli
List
Mark read
Thread details
Per-repo

Extra

cb fj berg tea gcli
Raw API
User profiles
SSH keys
GPG keys
Org/team mgmt
Forgejo Actions
Shell completions ✅ (auto via xclif)
JSON output ✅ (via --json)
Non-interactive auto (no prompts)
Config management
Web browser flag on view commands

Built in Python with Xclif for a clean, hackable codebase. If something's missing, open an issue!

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

codeberg_cli-0.5.0.tar.gz (50.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

codeberg_cli-0.5.0-py3-none-any.whl (107.3 kB view details)

Uploaded Python 3

File details

Details for the file codeberg_cli-0.5.0.tar.gz.

File metadata

  • Download URL: codeberg_cli-0.5.0.tar.gz
  • Upload date:
  • Size: 50.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for codeberg_cli-0.5.0.tar.gz
Algorithm Hash digest
SHA256 e4f2e5f5e28d2ba02b875d683e6da8878b622a9cf988d5fe78241e9300a3ae92
MD5 325a029bcc78d7d9f86bf33dd9f98f83
BLAKE2b-256 b3e01c4897e710d4dbabe096e797b21f7d1e4abb8b43b065a9cfa86f3beb79d4

See more details on using hashes here.

File details

Details for the file codeberg_cli-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: codeberg_cli-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 107.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for codeberg_cli-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7ecf32b7480003532ad12da0957aa139e82dbc389cd825ab22cb2cdcd64ab968
MD5 c2c30ba31f50c2687a87d12ef9e612a7
BLAKE2b-256 1ce4d428e0c7f1a6458948e3e710f425e6e9b9bfc141993308db8ee3b5e63399

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page