Skip to main content

Multi-agent workspace orchestrator for shell and tmux runtimes

Project description

CC Branch

Restore your multi-agent CLI workbench in one command

English | 中文

CI Python Status License

CC Branch restores the working environment around a project: agents, terminals, editors, local folders, SSH machines, and reusable sessions.

Why Developers Use It

1. Restore the full project workbench

  • A project may need Codex, Claude Code, dev servers, logs, editors, and multiple tmux windows.
  • CC Branch lets you configure that workbench once, then bring it back with one command.

2. Continue from existing sessions

  • Agent and tmux sessions may already be running from the last time you worked on the project.
  • CC Branch attaches back to those sessions, so returning to a project feels like continuing work instead of starting over.

3. Work across local and SSH machines

  • A project may span a local repo, SSH machine, GPU box, remote tmux session, and local editor.
  • CC Branch keeps local and remote work in one workspace, so returning to the project means continuing instead of rebuilding.

Install

Desktop app

Download the desktop app from the latest GitHub Release.

Use this when you want the native desktop experience.

CLI and Web UI with pip

Install the CLI/backend and packaged browser Web UI:

pip install cc-branch

The pip package does not install the desktop app. Use GitHub Releases for the native desktop build.

From source

Use the source install when you want to develop or inspect the repo locally:

git clone https://github.com/GeminiLight/cc-branch.git
cd cc-branch
pip install .

Source checkouts do not build the Web UI automatically. Run python scripts/build-webui.py before cc-branch serve when developing the browser UI.

cc-branch is also available as ccb.

Quick Use

Start the browser Web UI:

cc-branch service start

It runs at http://127.0.0.1:8080 by default.

Create and restore a workspace from a project:

cd /path/to/project
cc-branch init
cc-branch plan
cc-branch start

Daily Commands

Command What it is for
cc-branch service start Start the local Web UI service in the background
cc-branch serve Run the Web UI server in the foreground
cc-branch init Create a starter .cc-branch/config.yaml
cc-branch plan Show the agents, commands, panes, openers, and SSH targets before launch
cc-branch start Start missing targets or reconnect reusable tmux-backed sessions
cc-branch attach [tab[:pane]] Jump into a running tab, pane, or tmux target
cc-branch open --opener <tool> Open the project with VS Code, Cursor, Warp, terminal, Web UI, or desktop
cc-branch status Show runtime status
cc-branch sync Apply config changes to running tmux targets
cc-branch doctor --fix Diagnose and repair low-risk environment, config, or state issues
cc-branch session list List known agent session metadata

Example Config

version: 2
project: my-app
root: .
openWith: cursor
layoutBackend: tmux

tabs:
  - name: agents
    panes:
      - name: planner
        agent: codex
      - name: review
        agent: claude
  - name: remote-lab
    ssh:
      host: gpu-dev
      cwd: /srv/my-app
    panes:
      - name: qa
        command: npm run qa

Built-in agent profiles are available automatically. Add an agents section only when you need to override a built-in profile or define a custom local tool.

Documentation

License

MIT License. See LICENSE for details.

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

cc_branch-1.0.0.tar.gz (540.2 kB view details)

Uploaded Source

Built Distribution

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

cc_branch-1.0.0-py3-none-any.whl (446.5 kB view details)

Uploaded Python 3

File details

Details for the file cc_branch-1.0.0.tar.gz.

File metadata

  • Download URL: cc_branch-1.0.0.tar.gz
  • Upload date:
  • Size: 540.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cc_branch-1.0.0.tar.gz
Algorithm Hash digest
SHA256 9915e9a16e06d7a915d0d4730977854d5148258d13fe4af7b8005b4b8f06b6a7
MD5 da7b4f20cd75bda41d3be9e2f0411988
BLAKE2b-256 d13a1e265f8227f65fbba1a6d367c81e599fa644c0c9e287cd49248da29f6046

See more details on using hashes here.

Provenance

The following attestation bundles were made for cc_branch-1.0.0.tar.gz:

Publisher: publish-python.yml on GeminiLight/cc-branch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cc_branch-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: cc_branch-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 446.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cc_branch-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b174e3482a23d57aadc3216d79a5f1911daadcf8e9ba8e7855e3ed7d9c3d74a6
MD5 6354b1bdfa320822d314b89f294ec883
BLAKE2b-256 9f4c9fde1bb9ad30a540f7e4e0a45bf121a08fb922dec39395cb85314158dd5a

See more details on using hashes here.

Provenance

The following attestation bundles were made for cc_branch-1.0.0-py3-none-any.whl:

Publisher: publish-python.yml on GeminiLight/cc-branch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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