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
cc-branch session hook Let agent-native hooks write session IDs and transcript paths back to local state

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

🙏 Acknowledgements

This project has been published on the LINUX DO community, and we deeply appreciate the community's support and feedback.

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.1.3.tar.gz (545.1 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.1.3-py3-none-any.whl (449.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cc_branch-1.1.3.tar.gz
  • Upload date:
  • Size: 545.1 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.1.3.tar.gz
Algorithm Hash digest
SHA256 b77e0107b3d84c388f5e92e2e19db4e865266537cde2f0a63b92d95fc955e7b0
MD5 20ec1efad327d85015a2a07920fddcfd
BLAKE2b-256 c5872ba6eb0c271d215dbcf6b1c2a4e00b4263b9ecf371c03640fffe58e86978

See more details on using hashes here.

Provenance

The following attestation bundles were made for cc_branch-1.1.3.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.1.3-py3-none-any.whl.

File metadata

  • Download URL: cc_branch-1.1.3-py3-none-any.whl
  • Upload date:
  • Size: 449.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.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9f98a7a229caea3c2f17fb36898ca2c466c245b64436c58eb42793999f0c4e58
MD5 b71be86baf4ae4fc56eea246db7ba60b
BLAKE2b-256 1a8210dcce137e902064866827f62438a45df2130a4030496e17b1970801ae59

See more details on using hashes here.

Provenance

The following attestation bundles were made for cc_branch-1.1.3-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