Multi-agent workspace orchestrator for shell and tmux runtimes
Project description
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
- Getting Started
- User Guide
- Feature Reference
- SSH Remote Workspaces
- Install Troubleshooting
- Publishing Runbook
License
MIT License. See LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9915e9a16e06d7a915d0d4730977854d5148258d13fe4af7b8005b4b8f06b6a7
|
|
| MD5 |
da7b4f20cd75bda41d3be9e2f0411988
|
|
| BLAKE2b-256 |
d13a1e265f8227f65fbba1a6d367c81e599fa644c0c9e287cd49248da29f6046
|
Provenance
The following attestation bundles were made for cc_branch-1.0.0.tar.gz:
Publisher:
publish-python.yml on GeminiLight/cc-branch
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cc_branch-1.0.0.tar.gz -
Subject digest:
9915e9a16e06d7a915d0d4730977854d5148258d13fe4af7b8005b4b8f06b6a7 - Sigstore transparency entry: 1685405297
- Sigstore integration time:
-
Permalink:
GeminiLight/cc-branch@0fcb7b46b9aef315e86d9bd89224de96eeae6b57 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/GeminiLight
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-python.yml@0fcb7b46b9aef315e86d9bd89224de96eeae6b57 -
Trigger Event:
release
-
Statement type:
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b174e3482a23d57aadc3216d79a5f1911daadcf8e9ba8e7855e3ed7d9c3d74a6
|
|
| MD5 |
6354b1bdfa320822d314b89f294ec883
|
|
| BLAKE2b-256 |
9f4c9fde1bb9ad30a540f7e4e0a45bf121a08fb922dec39395cb85314158dd5a
|
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
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cc_branch-1.0.0-py3-none-any.whl -
Subject digest:
b174e3482a23d57aadc3216d79a5f1911daadcf8e9ba8e7855e3ed7d9c3d74a6 - Sigstore transparency entry: 1685405517
- Sigstore integration time:
-
Permalink:
GeminiLight/cc-branch@0fcb7b46b9aef315e86d9bd89224de96eeae6b57 -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/GeminiLight
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-python.yml@0fcb7b46b9aef315e86d9bd89224de96eeae6b57 -
Trigger Event:
release
-
Statement type: