@seemseam/ccb 7.4.2 → 7.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. package/README.md +210 -135
  2. package/README_zh.md +206 -128
  3. package/VERSION +1 -1
  4. package/package.json +3 -3
package/README.md CHANGED
@@ -1,121 +1,70 @@
1
1
  <div align="center">
2
2
 
3
- # CCB - Visible, Controllable Multi-Agent CLI Workspace
3
+ # CCB
4
+
5
+ **Designed around agent parity**
6
+ **Visible, controllable multi-agent cooperative TUI workspace**
4
7
 
5
8
  <p>
6
- <img src="https://img.shields.io/badge/v7-multi--agent--workspace-0B7285?style=for-the-badge" alt="v7 multi-agent workspace">
7
- <img src="https://img.shields.io/badge/terminal-tmux-2F9E44?style=for-the-badge" alt="tmux">
8
- <img src="https://img.shields.io/badge/providers-Codex%20%7C%20Claude%20%7C%20Gemini%20%7C%20OpenCode%20%7C%20Antigravity-CF1322?style=for-the-badge" alt="providers">
9
+ <img src="https://img.shields.io/badge/version-7.5.0-orange.svg" alt="version">
10
+ <img src="https://img.shields.io/badge/platform-Linux%20%7C%20macOS%20%7C%20WSL-lightgrey.svg" alt="platform">
11
+ <img src="https://img.shields.io/badge/providers-7%20CLI%20families-0B7285.svg" alt="providers">
9
12
  </p>
10
13
 
11
- [![Platform](https://img.shields.io/badge/platform-Linux%20%7C%20macOS%20%7C%20WSL-lightgrey.svg)]()
12
- [![Python](https://img.shields.io/badge/python-3.10%2B-blue.svg)]()
13
- [![Version](https://img.shields.io/badge/version-7.4.2-orange.svg)]()
14
- [![Release](https://img.shields.io/badge/install-release--first-orange.svg)]()
15
-
16
14
  **English** | [中文](README_zh.md)
17
15
 
18
- [Why Multi Agents](#why-multi-agents) · [Comparison](#which-multi-agent-approach-should-you-use) · [v7 UI](#v7-ui-tour) · [Quick Start](#quick-start) · [tmux Basics](#tmux-basics) · [Configure Agents](#configure-your-agent-team) · [Install](#install-and-update)
16
+ [Quick Start](#quick-start) · [v7 UI](#v7-ui-tour) · [Configure Agents](#configure-your-agent-team) · [User Guide](docs/manuals/user-guide/) · [Developer Guide](docs/manuals/developer-guide/)
17
+
18
+ <p align="center">
19
+ <img src="assets/readme_v7/ccb-hero-en.png" alt="CCB v7 visible multi-agent CLI workspace" width="960">
20
+ </p>
19
21
 
20
22
  </div>
21
23
 
22
24
  ---
23
25
 
24
- ## Why Multi Agents
25
-
26
- A single agent is enough for small tasks. Once work needs planning, parallel edits, review, testing, and handoff, multi agents help separate roles, context, models, and execution. CCB focuses on putting multiple real CLI agents into one visible terminal workspace.
27
-
28
- | Value | Plain meaning |
29
- | :--- | :--- |
30
- | Role separation | `main` plans, `worker` implements, `reviewer` checks risk. |
31
- | Parallel progress | One agent can edit while another reads docs, validates, or reviews. |
32
- | Model and context layering | Different agents can use different providers, models, APIs, worktrees, and memory. |
33
-
34
- <details>
35
- <summary><b>Why one agent starts to struggle</b></summary>
36
-
37
- - Mixed roles reduce context focus: one conversation tries to architect, edit, test, and review itself.
38
- - Complex task execution has a ceiling: long work needs split points, handoffs, checks, and rollback boundaries.
39
- - Cost pressure is higher: if every step needs the strongest model, even simple sub-tasks become expensive.
40
- - Tool and skill management becomes harder: a "does everything" agent also accumulates too much authority and instruction load.
41
- - Serial waiting is inefficient: when one agent is reading logs or running tests, other independent work cannot naturally continue.
42
-
43
- </details>
44
-
45
- ## Which Multi-Agent Approach Should You Use?
46
-
47
- Multi-agent systems are not one fixed shape. Use the short table first; expand the details only if you are comparing tradeoffs.
26
+ ## Why CCB?
48
27
 
49
- | Approach | One-line summary | Best fit |
28
+ | See the work | Mix providers | Keep control |
50
29
  | :--- | :--- | :--- |
51
- | [Claude Code native subagents](https://code.claude.com/docs/en/sub-agents) / [agent teams](https://code.claude.com/docs/en/agent-teams) | Native delegation inside Claude Code. | You mostly stay in Claude Code and want more coordination handled by a Claude lead. |
52
- | [Hive / OpenHive](https://github.com/aden-hive/hive) | Production-oriented multi-agent workflow harness. | You need state, recovery, observability, cost controls, and graph workflows. |
53
- | CCB | Visible, controllable local CLI-agent workspace with mixed providers. | You want Codex, Claude, Gemini, OpenCode, Antigravity, and other real CLIs in one project terminal. |
54
-
55
- <details>
56
- <summary><b>Details: model choice, control, context, and complex workflows</b></summary>
57
-
58
- | Question | Claude Code native | Hive / OpenHive | CCB |
59
- | :--- | :--- | :--- | :--- |
60
- | Different model vendors? | Can choose Claude models for teammates/subagents; overall path is still Claude Code. | LiteLLM route covers many hosted and local providers. | Choose Codex, Claude, Gemini, OpenCode, Droid, Antigravity, and per-agent model/key/url. |
61
- | Is the process visible? | In-process or split panes depending on mode. | Runtime observability and dashboard-style control. | Real tmux panes by default; users can click, type, copy, and inspect each CLI. |
62
- | Is topology controllable? | Natural-language teammate setup, with much coordination handled by the lead. | Goal-generated graph-like topology, harness oriented. | Config explicitly defines agents, windows, panes, worktrees, and sidebar behavior. |
63
- | Is context manageable? | Subagents/teammates have separate contexts; teams have task and message state. | Role memory, durable state, and recovery are core design points. | Each CLI keeps its provider session; shared project memory and per-agent memory are optional. |
64
- | Best landing zone | Fast delegation inside Claude Code. | Business automation, long-running workflows, production reliability. | Local development with visible cross-provider CLI agents. |
65
-
66
- CCB also supports complex workflows, but it is not an automatic DAG generator. You design complexity explicitly through `.ccb/ccb.config`, windows, role memory, worktrees, model/API settings, and ask/callback routes.
30
+ | Every agent is a real terminal with layout control. | Run multiple CLIs concurrently from one command. | Stable background communication for multi-line task orchestration. |
67
31
 
68
- </details>
69
-
70
- ## What Is CCB?
71
-
72
- CCB is a project-level agent CLI workspace. It uses tmux to manage multiple real CLI agents and unifies startup, restore, communication, configuration, windows, and runtime state for one project.
32
+ ## Supported CLIs
73
33
 
74
- - **Real CLI sessions, not fake panels**: every agent pane runs the actual provider CLI.
75
- - **Visible collaboration**: the sidebar shows windows, agents, status, and communication; users can switch panes by mouse.
76
- - **Mixed providers**: one project can run Codex, Claude, Gemini, OpenCode, Droid, and Antigravity (`agy`) together.
77
- - **Project config**: `.ccb/ccb.config` defines the team, layout, windows, worktrees, model, key, and url.
78
- - **Roles**: a new role packaging model that lets specialized agents carrying
79
- "heavy weapons" such as independent skills, memory, and tool dependencies
80
- instantly land in a target project as hot-loadable, removable agents, while
81
- leaving the main environment, user global config, and project runtime state
82
- unchanged.
83
- - **Recoverable runtime**: CCB supervises agent panes and supports attach, restore, and project-scoped cleanup.
84
- - **Explicit collaboration channel**: agents can delegate through `/ask`, `$ask`, callback, and silence routes.
85
-
86
- ## v7 UI Tour
87
-
88
- This screenshot is a real dark terminal session from the `ccb_test2` project. The labels explain the regions; you do not need to memorize every shortcut first.
89
-
90
- <p align="center">
91
- <img src="assets/readme_v7/ccb-test2-terminal-annotated-en.png" alt="CCB v7 terminal workspace region guide" width="960">
34
+ <p>
35
+ <img src="https://img.shields.io/badge/Codex-111111?style=flat-square&logo=openai&logoColor=white" alt="Codex">
36
+ <img src="https://img.shields.io/badge/Claude-D97757?style=flat-square&logo=anthropic&logoColor=white" alt="Claude">
37
+ <img src="https://img.shields.io/badge/Gemini-4285F4?style=flat-square&logo=googlegemini&logoColor=white" alt="Gemini">
38
+ <img src="https://img.shields.io/badge/OpenCode-111111?style=flat-square" alt="OpenCode">
39
+ <img src="https://img.shields.io/badge/Antigravity-6D5EF6?style=flat-square&logo=google&logoColor=white" alt="Antigravity">
40
+ <img src="https://img.shields.io/badge/Droid-3DDC84?style=flat-square&logo=android&logoColor=white" alt="Droid">
41
+ <img src="https://img.shields.io/badge/Kimi-111111?style=flat-square&logo=moonshotai&logoColor=white" alt="Kimi">
92
42
  </p>
93
43
 
94
- | Region | Purpose |
95
- | :--- | :--- |
96
- | Sidebar | Shows the current window, agent list, provider labels, selected agent, and status hints. |
97
- | Comms | Shows ask/callback communication and collaboration status. |
98
- | Agent pane | Each pane is a real CLI session, such as Codex or Claude. |
99
- | Current input target | The status bar and pane border show where your input goes. |
100
- | Status bar | Shows project name, current agent, CCB version, date, and mouse/keyboard hints. |
101
- | Window grouping | v7 `[windows]` can group agents into main, work, review, research, or other workflow windows. |
44
+ Mix CLIs per agent in `.ccb/ccb.config`. Common provider ids include `codex`, `claude`, `gemini`, `kimi`, `opencode`, `agy`, and `droid`; actual availability depends on the local CLI installation and account access.
102
45
 
103
- The sidebar implementation uses ideas from [tmux-agent-sidebar](https://github.com/hiroppy/tmux-agent-sidebar). Thanks to that project.
46
+ **New role specification**: package skills, memory, and tool dependencies into self-contained Role Packs, then create hot-loadable and removable specialist agents.
104
47
 
105
48
  ## Quick Start
106
49
 
107
50
  ### 1. Install or update
108
51
 
109
- New users can install CCB from npm:
52
+ New installs should use the npm package:
110
53
 
111
54
  ```bash
112
55
  npm install -g @seemseam/ccb
113
56
  ```
114
57
 
115
- The npm package downloads and verifies the matching GitHub Release package for
116
- your platform, then exposes `ccb`, `ask`, `autonew`, and `ctx-transfer`.
58
+ After CCB is installed, use CCB's updater:
117
59
 
118
- You can also install from a release package directly. Download the matching package from [Releases](https://github.com/SeemSeam/claude_codex_bridge/releases), then install it:
60
+ ```bash
61
+ ccb update
62
+ ```
63
+
64
+ <details>
65
+ <summary><b>GitHub release package and source install fallbacks</b></summary>
66
+
67
+ If npm is not available in your environment, download the matching package from [Releases](https://github.com/SeemSeam/claude_codex_bridge/releases):
119
68
 
120
69
  ```bash
121
70
  tar -xzf ccb-*.tar.gz
@@ -123,14 +72,7 @@ cd ccb-*
123
72
  ./install.sh install
124
73
  ```
125
74
 
126
- If CCB is already installed:
127
-
128
- ```bash
129
- ccb update
130
- ```
131
-
132
- <details>
133
- <summary><b>Source install is for development or fallback use</b></summary>
75
+ Source install is for development or temporary fallback use:
134
76
 
135
77
  ```bash
136
78
  git clone https://github.com/SeemSeam/claude_codex_bridge.git
@@ -138,10 +80,16 @@ cd claude_codex_bridge
138
80
  ./install.sh install
139
81
  ```
140
82
 
141
- Source installs link global `ccb` / `ask` back to the checkout. Regular users should prefer a stable release install or update.
83
+ Source installs link global `ccb` / `ask` back to the checkout. Regular users should prefer the npm package.
142
84
 
143
85
  </details>
144
86
 
87
+ Out of the box, run `ccb` from your project directory. If startup reports that `.ccb` cannot be created automatically or that the project anchor is missing, create `.ccb` manually:
88
+
89
+ ```bash
90
+ mkdir -p .ccb
91
+ ```
92
+
145
93
  ### 2. Create project config
146
94
 
147
95
  Create `.ccb/ccb.config` in your project root. For v7, it is better to understand config from multi-window topology first: `[windows]` defines tmux windows and agent groups, `agent:provider` defines which CLI each agent uses, and `(worktree)` gives an agent its own git worktree.
@@ -167,7 +115,7 @@ tips_height = "35%"
167
115
  comms_limit = 3
168
116
  ```
169
117
 
170
- If you are not sure how to group windows, how many workers you need, which agents should use worktrees, or which agents need separate models or API routes, ask `ccb_self` to design the config with its built-in `ccb-config` skill. Blank projects include `ccb_self`; existing custom configs can add it with `ccb roles add agentroles.ccb_self:codex`.
118
+ If you are not sure how to group windows, how many workers you need, which agents should use worktrees, or which agents need separate models or API routes, ask `ccb_self`. It is CCB's built-in self-agent: it understands CCB commands, config authority, roles, windows, reload behavior, and common recovery paths, and can design the config with its private `ccb-config` skill. Blank projects include `ccb_self`; existing custom configs can add it with `ccb roles add agentroles.ccb_self:codex`.
171
119
 
172
120
  Validate the config:
173
121
 
@@ -189,7 +137,92 @@ Type directly in an agent pane, or route work between agents:
189
137
  /ask reviewer review the latest parser changes and list blocking issues.
190
138
  ```
191
139
 
192
- ## Daily Operation
140
+ Agents can also call `/ask` from workflow orchestration to delegate and hand off work automatically.
141
+
142
+ ### v7 UI Tour
143
+
144
+ | Region | Purpose |
145
+ | :--- | :--- |
146
+ | Sidebar | Shows refresh/close CCB controls, windows and agents, internal communication state, and tips that can be edited in config and hot-reloaded. |
147
+ | Mouse control | Click to switch windows, agents, and panes; refresh, kill, or delete communication entries from the communication area. |
148
+ | Workspace | Every pane is a real CLI. Switch by mouse or tmux shortcuts. |
149
+ | Useful shortcuts | `Ctrl-b h/j/k/l` switches adjacent panes; `Ctrl-b z` zooms or restores the current CLI pane. |
150
+
151
+ ### Contact
152
+
153
+ - Email: `bfly123@126.com`
154
+ - WeChat: `seemseam-com`
155
+
156
+ ---
157
+
158
+ ## More Reading
159
+
160
+ Start with Quick Start for first use; the sections below cover CCB's design boundaries, comparisons, daily operations, and configuration model.
161
+
162
+ ### What Is CCB?
163
+
164
+ CCB is a project-level agent CLI workspace. It uses tmux to manage multiple real CLI agents and unifies startup, restore, communication, configuration, windows, and runtime state for one project.
165
+
166
+ - **Real CLI sessions, not fake panels**: every agent pane runs the actual provider CLI.
167
+ - **Visible collaboration**: the sidebar shows windows, agents, status, and communication; users can switch panes by mouse.
168
+ - **Mixed providers**: one project can run Codex, Claude, Gemini, OpenCode, Droid, Antigravity (`agy`), and Kimi (`kimi`) together.
169
+ - **Project config**: `.ccb/ccb.config` defines the team, layout, windows, worktrees, model, key, and url.
170
+ - **Built-in CCB expert**: blank projects include `ccb_self`, a self-maintenance agent with deep CCB knowledge for usage guidance, config design, diagnostics, recovery, and workflow repair.
171
+ - **Roles**: a new role packaging model that lets specialized agents carrying
172
+ "heavy weapons" such as independent skills, memory, and tool dependencies
173
+ instantly land in a target project as hot-loadable, removable agents, while
174
+ leaving the main environment, user global config, and project runtime state
175
+ unchanged.
176
+ - **Recoverable runtime**: CCB supervises agent panes and supports attach, restore, and project-scoped cleanup.
177
+ - **Explicit collaboration channel**: agents can delegate through `/ask`, `$ask`, callback, and silence routes.
178
+
179
+ ### Why Multi Agents
180
+
181
+ A single agent is enough for small tasks. Once work needs planning, parallel edits, review, testing, and handoff, multi agents help separate roles, context, models, and execution. CCB focuses on putting multiple real CLI agents into one visible terminal workspace.
182
+
183
+ | Value | Plain meaning |
184
+ | :--- | :--- |
185
+ | Role separation | `main` plans, `worker` implements, `reviewer` checks risk. |
186
+ | Parallel progress | One agent can edit while another reads docs, validates, or reviews. |
187
+ | Model and context layering | Different agents can use different providers, models, APIs, worktrees, and memory. |
188
+
189
+ <details>
190
+ <summary><b>Why one agent starts to struggle</b></summary>
191
+
192
+ - Mixed roles reduce context focus: one conversation tries to architect, edit, test, and review itself.
193
+ - Complex task execution has a ceiling: long work needs split points, handoffs, checks, and rollback boundaries.
194
+ - Cost pressure is higher: if every step needs the strongest model, even simple sub-tasks become expensive.
195
+ - Tool and skill management becomes harder: a "does everything" agent also accumulates too much authority and instruction load.
196
+ - Serial waiting is inefficient: when one agent is reading logs or running tests, other independent work cannot naturally continue.
197
+
198
+ </details>
199
+
200
+ ### Which Multi-Agent Approach Should You Use?
201
+
202
+ Multi-agent systems are not one fixed shape. Use the short table first; expand the details only if you are comparing tradeoffs.
203
+
204
+ | Approach | One-line summary | Best fit |
205
+ | :--- | :--- | :--- |
206
+ | [Claude Code native subagents](https://code.claude.com/docs/en/sub-agents) / [agent teams](https://code.claude.com/docs/en/agent-teams) | Native delegation inside Claude Code. | You mostly stay in Claude Code and want more coordination handled by a Claude lead. |
207
+ | [Hive / OpenHive](https://github.com/aden-hive/hive) | Production-oriented multi-agent workflow harness. | You need state, recovery, observability, cost controls, and graph workflows. |
208
+ | CCB | Visible, controllable local CLI-agent workspace with mixed providers. | You want Codex, Claude, Gemini, Kimi, OpenCode, Antigravity, and other real CLIs in one project terminal. |
209
+
210
+ <details>
211
+ <summary><b>Details: model choice, control, context, and complex workflows</b></summary>
212
+
213
+ | Question | Claude Code native | Hive / OpenHive | CCB |
214
+ | :--- | :--- | :--- | :--- |
215
+ | Different model vendors? | Can choose Claude models for teammates/subagents; overall path is still Claude Code. | LiteLLM route covers many hosted and local providers. | Choose Codex, Claude, Gemini, Kimi, OpenCode, Droid, Antigravity, and per-agent model/key/url. |
216
+ | Is the process visible? | In-process or split panes depending on mode. | Runtime observability and dashboard-style control. | Real tmux panes by default; users can click, type, copy, and inspect each CLI. |
217
+ | Is topology controllable? | Natural-language teammate setup, with much coordination handled by the lead. | Goal-generated graph-like topology, harness oriented. | Config explicitly defines agents, windows, panes, worktrees, and sidebar behavior. |
218
+ | Is context manageable? | Subagents/teammates have separate contexts; teams have task and message state. | Role memory, durable state, and recovery are core design points. | Each CLI keeps its provider session; shared project memory and per-agent memory are optional. |
219
+ | Best landing zone | Fast delegation inside Claude Code. | Business automation, long-running workflows, production reliability. | Local development with visible cross-provider CLI agents. |
220
+
221
+ CCB also supports complex workflows, but it is not an automatic DAG generator. You design complexity explicitly through `.ccb/ccb.config`, windows, role memory, worktrees, model/API settings, and ask/callback routes.
222
+
223
+ </details>
224
+
225
+ ### Daily Operation
193
226
 
194
227
  | Goal | Command |
195
228
  | :--- | :--- |
@@ -203,7 +236,7 @@ Type directly in an agent pane, or route work between agents:
203
236
  | Preview a config reload plan without changing tmux | `ccb reload --dry-run` |
204
237
  | Apply supported config changes without restarting other agents | `ccb reload` |
205
238
 
206
- ## tmux Basics
239
+ ### tmux Basics
207
240
 
208
241
  CCB can be used mostly with the mouse, but learning a few tmux shortcuts makes daily work much faster. This section lists only common tmux keyboard operations.
209
242
 
@@ -248,7 +281,7 @@ New users should avoid pane/window killing shortcuts at first. To stop a CCB pro
248
281
 
249
282
  </details>
250
283
 
251
- ## Configure Your Agent Team
284
+ ### Configure Your Agent Team
252
285
 
253
286
  CCB resolves config in three layers, from lowest to highest priority:
254
287
 
@@ -276,7 +309,7 @@ After editing `.ccb/ccb.config` in a mounted project, run `ccb reload --dry-run`
276
309
 
277
310
  If you want to discuss the configuration before writing it by hand, ask `ccb_self` to describe the target team. Blank projects include this route by default; projects with a user or project config should add `agentroles.ccb_self` if they have overridden the built-in default. Its built-in `ccb-config` skill proposes a complete config first, then writes `.ccb/ccb.config` only after confirmation.
278
311
 
279
- ### Role Packs
312
+ #### Role Packs
280
313
 
281
314
  Role Packs define reusable agent roles. A role can carry a stable identity,
282
315
  responsibilities, memory, provider-specific skills, tool hooks, and dependency
@@ -301,12 +334,13 @@ bound role locks against the current installed roles; interactive starts ask
301
334
  whether to refresh stale project locks in place, and non-interactive starts
302
335
  print a warning only.
303
336
 
304
- `ccb_self` is strongly recommended for CCB projects because it owns CCB config
305
- maintenance, runtime diagnostics, guarded recovery, and single-agent restart
306
- assistance without taking over product work. Blank projects include it in the
307
- built-in default. Existing projects, and projects with user or project config
308
- that replace the built-in default, should add it explicitly where they want
309
- that maintenance agent:
337
+ `ccb_self` is strongly recommended for CCB projects because it is the built-in
338
+ CCB expert agent. It carries CCB-specific knowledge about project config,
339
+ command usage, role binding, reload boundaries, runtime diagnostics, guarded
340
+ recovery, workflow repair, and single-agent restart assistance without taking
341
+ over product work. Blank projects include it in the built-in default. Existing
342
+ projects, and projects with user or project config that replace the built-in
343
+ default, should add it explicitly where they want that maintenance agent:
310
344
 
311
345
  ```bash
312
346
  ccb roles add agentroles.ccb_self:codex
@@ -327,7 +361,7 @@ into that agent's managed provider home.
327
361
  <details>
328
362
  <summary><b>Config format examples: single window, multi-window, per-agent model/API</b></summary>
329
363
 
330
- ### Single-window compact config
364
+ #### Single-window compact config
331
365
 
332
366
  ```text
333
367
  cmd; main:codex, worker1:codex(worktree); reviewer:claude
@@ -341,7 +375,7 @@ Meaning:
341
375
  - `;` splits left-to-right; `,` stacks top-to-bottom.
342
376
  - `(worktree)` means that agent uses an isolated git worktree.
343
377
 
344
- ### Multi-window topology
378
+ #### Multi-window topology
345
379
 
346
380
  When you want planning, implementation, review, and research in different tmux windows, use `version = 2` and `[windows]`:
347
381
 
@@ -368,7 +402,7 @@ comms_limit = 3
368
402
 
369
403
  Note: `cmd` belongs to compact/hybrid single-window layouts. Do not put `cmd` inside `[windows]`.
370
404
 
371
- ### Managed Neovim tool window
405
+ #### Managed Neovim tool window
372
406
 
373
407
  Tool windows are tmux windows managed by CCB, but they are not agents. They do not appear in `ccb ask` targets and do not create provider runtime records.
374
408
 
@@ -389,7 +423,7 @@ If `nvim` is not already on `PATH`, provisioning attempts to download the offici
389
423
  The managed profile defaults to ASCII icons so terminals without Nerd Font support do not show unreadable boxes. To opt back into LazyVim glyph icons, launch with `CCB_LAZYVIM_ICON_STYLE=glyph ccb-nvim`.
390
424
  Use `ccb tools doctor neovim` to verify the managed profile. A working LazyVim setup reports `neovim_status: ok` and `lazyvim_health_status: ok`; damaged or partially downloaded plugin trees report `degraded` and can be repaired by rerunning `ccb tools install neovim`.
391
425
 
392
- ### Per-agent model, API key, or base URL
426
+ #### Per-agent model, API key, or base URL
393
427
 
394
428
  Use compact format when layout is enough. If some agents need separate models or API routes, keep the compact header and add TOML overlays:
395
429
 
@@ -412,10 +446,12 @@ Do not commit real API keys to a public repository. `key` / `url` are agent-loca
412
446
 
413
447
  </details>
414
448
 
415
- ## Use ccb_self For CCB Config
449
+ ### Use ccb_self For CCB Config
416
450
 
417
451
  The full `ccb-config` skill belongs to the `agentroles.ccb_self` role. It is not a globally inherited skill for every agent. CCB installs or refreshes this Role Pack by default, and blank projects include `ccb_self` in the built-in default config. Existing projects, or projects with a user/project config that replaces the built-in default, should bind it where they want the maintenance assistant.
418
452
 
453
+ `ccb_self` is more than a config helper: it is designed as CCB's self-understanding agent. Use it when you need help using CCB, explaining the active layout, choosing an agent topology, migrating `.ccb/ccb.config`, diagnosing project runtime state, or repairing a CCB workflow.
454
+
419
455
  If you do not want to hand-write `.ccb/ccb.config`, ask `ccb_self` and describe your project goal, parallelism, window grouping, worktree isolation, provider/model/API preferences. `ccb_self` uses its built-in `ccb-config` skill to discuss the shape with you and propose a complete config.
420
456
 
421
457
  Example:
@@ -440,7 +476,7 @@ By default, `ccb-config` does not edit `.ccb/ccb_memory.md` or `.ccb/agents/<age
440
476
 
441
477
  </details>
442
478
 
443
- ## Agent Collaboration
479
+ ### Agent Collaboration
444
480
 
445
481
  Normal `ask` is submit-and-return: after handing work to the target agent, the current agent should not poll and wait.
446
482
 
@@ -475,7 +511,7 @@ If agent A is handling a user-originated CCB task and needs agent B's result to
475
511
 
476
512
  </details>
477
513
 
478
- ## Editor Workflow
514
+ ### Editor Workflow
479
515
 
480
516
  <p align="center">
481
517
  <img src="assets/nvim.png" alt="Neovim integration with multi-model code review" width="860">
@@ -483,39 +519,35 @@ If agent A is handling a user-originated CCB task and needs agent B's result to
483
519
 
484
520
  CCB does not require leaving your editor. A common setup is: editor for code, CCB terminal for multi-agent planning, implementation, review, testing, and handoff.
485
521
 
486
- ## Install And Update
522
+ ### Install And Update
487
523
 
488
- ### Requirements
524
+ #### Requirements
489
525
 
526
+ - Node.js and npm for the recommended npm install path
490
527
  - Python 3.10+
491
528
  - `tmux`
492
- - At least one agent CLI you plan to use, such as Codex, Claude, Gemini, OpenCode, Droid, or Antigravity
529
+ - At least one agent CLI you plan to use, such as Codex, Claude, Gemini, Kimi, OpenCode, Droid, or Antigravity
493
530
  - Linux, macOS, or WSL
494
- - Node.js 18+ when installing through npm
495
531
 
496
532
  Current v7 / newer versions do not claim native Windows support. Native Windows support only applies to the v5 line. If you are on Windows and want current versions, use WSL and keep both `ccb` and agent CLIs inside WSL.
497
533
 
498
- ### npm first
534
+ #### npm first
535
+
536
+ For first install, prefer npm:
499
537
 
500
538
  ```bash
501
539
  npm install -g @seemseam/ccb
502
540
  ```
503
541
 
504
- The npm package is a lightweight installer wrapper around the official GitHub
505
- Release artifacts. It verifies `SHA256SUMS` before extracting the platform
506
- package.
507
-
508
- ### Release package fallback
509
-
510
- For first install, prefer a package from [GitHub Releases](https://github.com/SeemSeam/claude_codex_bridge/releases). For existing installs:
542
+ For later updates:
511
543
 
512
544
  ```bash
513
545
  ccb update
514
546
  ```
515
547
 
516
- Source checkout install is for development, fix validation, or temporary fallback when a release package is not available.
548
+ [GitHub Releases](https://github.com/SeemSeam/claude_codex_bridge/releases) remain available for environments where npm is unavailable. Source checkout install is for development, fix validation, or temporary fallback.
517
549
 
518
- ### Uninstall
550
+ #### Uninstall
519
551
 
520
552
  ```bash
521
553
  ccb uninstall
@@ -525,7 +557,7 @@ ccb reinstall
525
557
  ./install.sh uninstall
526
558
  ```
527
559
 
528
- ## FAQ
560
+ ### FAQ
529
561
 
530
562
  <details>
531
563
  <summary><b>The expected agents did not appear</b></summary>
@@ -555,11 +587,7 @@ Prefer a release package because it carries or handles the sidebar helper. Sourc
555
587
 
556
588
  </details>
557
589
 
558
- ## Community And Credits
559
-
560
- Email: `bfly123@126.com`
561
-
562
- WeChat: `seemseam-com`
590
+ ### Community And Credits
563
591
 
564
592
  Thanks to the [Linux.do community](https://linux.do) for testing, feedback, and discussion.
565
593
 
@@ -569,7 +597,7 @@ Thanks to [tmux-agent-sidebar](https://github.com/hiroppy/tmux-agent-sidebar) fo
569
597
  <img src="assets/weixin.jpg" alt="WeChat group" width="300">
570
598
  </div>
571
599
 
572
- ## Release Notes
600
+ ### Release Notes
573
601
 
574
602
  v7 highlights:
575
603
 
@@ -581,6 +609,53 @@ v7 highlights:
581
609
  - Hardened tmux, Ghostty, release helper, Codex trust, and provider session restore paths.
582
610
 
583
611
  <details open>
612
+ <summary><b>v7.5.0</b> - Native CLI Providers And Homepage Sync</summary>
613
+
614
+ - Adds managed native CLI provider support for Kimi plus broader native CLI
615
+ runtime groundwork, including runtime specs, session bindings, command
616
+ overrides, and cleanup coverage.
617
+ - Moves Kimi and Antigravity completion detection toward provider-owned
618
+ session or transcript evidence instead of requiring model-printed `CCB_DONE`.
619
+ - Uses Kimi's current `--auto-approve` flag for CCB auto-permission while
620
+ recognizing legacy/alias flags such as `--auto`, `--yes`, `-y`, and `--yolo`.
621
+ - Synchronizes the English and Chinese README homepages with refreshed hero
622
+ assets and the seven public CLI-family positioning.
623
+
624
+ </details>
625
+
626
+ <details>
627
+ <summary><b>v7.4.4</b> - Claude End-Turn And npm Release Surface</summary>
628
+
629
+ - Completes Claude pane-backed asks promptly when a primary assistant response
630
+ emits `stop_reason=end_turn` with an observed request anchor and non-empty
631
+ reply, avoiding the previous 900-second timeout path.
632
+ - Treats empty session-boundary terminal events with no prior assistant reply
633
+ as `incomplete/task_complete_empty_reply` with empty-provider diagnostics.
634
+ - Restores the `@seemseam/ccb` npm release surface with package metadata, CLI
635
+ runner wrappers, and tag-triggered Trusted Publishing after GitHub release
636
+ assets are available.
637
+ - Refreshes the v7 README homepage around canonical hero assets, npm-first
638
+ install, and clearer `ccb_self` guidance.
639
+
640
+ </details>
641
+
642
+ <details>
643
+ <summary><b>v7.4.3</b> - PR #225 Reliability Follow-Up</summary>
644
+
645
+ - Restores the Claude launcher contract: inline `--settings` now reflects the
646
+ materialized settings overlay without injecting provider env into settings
647
+ JSON.
648
+ - Fixes Claude WSL Windows-executable environment forwarding so path variables
649
+ use `/p` translation while `ANTHROPIC_*` API values pass through as raw env
650
+ names.
651
+ - Hardens Antigravity resume lookup for SQLite `bytes`, `str`, and
652
+ `memoryview` metadata and falls back to `--continue` if lookup fails.
653
+ - Adds regression tests for the Claude settings contract, WSL API env
654
+ forwarding, and AGY resume fallback behavior.
655
+
656
+ </details>
657
+
658
+ <details>
584
659
  <summary><b>v7.4.2</b> - Self-Supervision And Empty Reply Guards</summary>
585
660
 
586
661
  - Hardens CCB self-supervision with bounded provider-runtime snapshots,
package/README_zh.md CHANGED
@@ -1,133 +1,78 @@
1
1
  <div align="center">
2
2
 
3
- # CCB - 可见、可控的多 Agent CLI 工作台
3
+ # CCB
4
+
5
+ **基于agent平权思想设计**
6
+ **可见、可控的多 Agent 合作TUI工作台**
4
7
 
5
8
  <p>
6
- <img src="https://img.shields.io/badge/v7-multi--agent--workspace-0B7285?style=for-the-badge" alt="v7 multi-agent workspace">
7
- <img src="https://img.shields.io/badge/terminal-tmux-2F9E44?style=for-the-badge" alt="tmux">
8
- <img src="https://img.shields.io/badge/providers-Codex%20%7C%20Claude%20%7C%20Gemini%20%7C%20OpenCode%20%7C%20Antigravity-CF1322?style=for-the-badge" alt="providers">
9
+ <img src="https://img.shields.io/badge/version-7.5.0-orange.svg" alt="version">
10
+ <img src="https://img.shields.io/badge/platform-Linux%20%7C%20macOS%20%7C%20WSL-lightgrey.svg" alt="platform">
11
+ <img src="https://img.shields.io/badge/providers-7%20CLI%20families-0B7285.svg" alt="providers">
9
12
  </p>
10
13
 
11
- [![Platform](https://img.shields.io/badge/platform-Linux%20%7C%20macOS%20%7C%20WSL-lightgrey.svg)]()
12
- [![Python](https://img.shields.io/badge/python-3.10%2B-blue.svg)]()
13
- [![Version](https://img.shields.io/badge/version-7.4.2-orange.svg)]()
14
- [![Release](https://img.shields.io/badge/install-release--first-orange.svg)]()
15
-
16
14
  **中文** | [English](README.md)
17
15
 
18
- [为什么需要多 agents](#为什么需要多-agents) · [方案对比](#多-agents-方案怎么选) · [v7 界面](#v7-界面速览) · [快速开始](#快速开始) · [tmux 常规操作](#tmux-常规操作) · [配置团队](#配置-agent-团队) · [安装更新](#安装和更新)
16
+ [快速开始](#快速开始) · [v7 界面](#v7-界面速览) · [配置团队](#配置-agent-团队) · [使用文档](docs/manuals/user-guide/) · [开发文档](docs/manuals/developer-guide/)
17
+
18
+ <p align="center">
19
+ <img src="assets/readme_v7/ccb-hero-zh.png" alt="CCB v7 可见多 Agent CLI 工作台" width="960">
20
+ </p>
19
21
 
20
22
  </div>
21
23
 
22
24
  ---
23
25
 
24
- ## 为什么需要多 agents
26
+ ## 为什么用 CCB?
25
27
 
26
- 小任务用单 agent 就够了;一旦任务需要规划、并行实现、审查、测试和交接,多 agents 的价值就变成:把角色、上下文、模型和执行过程拆开管理。CCB 的重点是把多个真实 CLI agent 放进同一个可见终端工作台。
27
-
28
- | 价值 | 直观理解 |
29
- | :--- | :--- |
30
- | 角色分离 | `main` 负责任务拆分,`worker` 负责实现,`reviewer` 负责审查。 |
31
- | 并行推进 | 一个 agent 写代码时,另一个 agent 可以读文档、跑验证或审查风险。 |
32
- | 模型和上下文分层 | 不同 agent 可以用不同 provider、model、API、worktree 和记忆。 |
33
-
34
- <details>
35
- <summary><b>展开:单 agent 为什么会吃力?</b></summary>
36
-
37
- - 角色混杂会影响上下文集中度:同一个会话既要做架构,又要写代码,还要自我审查,容易在长任务里丢掉重点。
38
- - 可执行复杂度有上限:任务越长,越需要拆分、交接、核对和回滚点。
39
- - 成本压力更高:如果所有步骤都依赖一个最强模型,简单任务也会变贵。
40
- - 工具和 skill 集中会变难管理:什么都给一个 agent,等于把权限、说明和工具复杂度全部堆在一起。
41
- - 串行等待效率低:一个 agent 在跑测试、读日志或长时间思考时,其他可并行工作无法自然展开。
42
-
43
- </details>
44
-
45
- ## 多 agents 方案怎么选
46
-
47
- 多 agents 不是一种固定形态。先用下面这张表判断大方向,细节可以展开看。
48
-
49
- | 方案 | 一句话 | 更适合你如果 |
28
+ | 看得见 | 混合 provider | 项目级控制 |
50
29
  | :--- | :--- | :--- |
51
- | [Claude Code 原生 subagents](https://code.claude.com/docs/en/sub-agents) / [agent teams](https://code.claude.com/docs/en/agent-teams) | Claude Code 内部的原生分工。 | 你主要留在 Claude Code,并接受更多协调由 Claude lead 处理。 |
52
- | [Hive / OpenHive](https://github.com/aden-hive/hive) | 面向生产工作流的多 agent harness。 | 你要状态、恢复、观测、成本控制和图式工作流。 |
53
- | CCB | 可见、可控、混合 provider 的本地 CLI agent 工作台。 | 你要把 Codex、Claude、Gemini、OpenCode、Antigravity 等真实 CLI 放到一个项目终端里操作。 |
54
-
55
- <details>
56
- <summary><b>展开:模型、可控性、上下文和复杂工作流怎么区别?</b></summary>
57
-
58
- | 关键问题 | Claude Code 原生 | Hive / OpenHive | CCB |
59
- | :--- | :--- | :--- | :--- |
60
- | 能否使用不同家的模型 | 可给 teammate / subagent 指定 Claude 模型;整体仍在 Claude Code 体系内。 | 通过 LiteLLM 路线支持大量 hosted / local provider。 | 按 agent 选择 Codex、Claude、Gemini、OpenCode、Droid、Antigravity 等,并可设置独立 model / key / url。 |
61
- | 过程是否可见 | in-process 或 split panes,取决于模式和终端。 | 强调 runtime observability 和控制台视角。 | 默认就是 tmux 可见 pane,用户能直接点击、输入、复制、观察每个 CLI。 |
62
- | 拓扑是否可控 | 可自然语言指定队友,但运行时协调较多交给 lead。 | 由目标生成图式拓扑,偏 harness。 | 配置文件显式定义 agent、窗口、pane、worktree 和 sidebar。 |
63
- | 上下文是否可管理 | subagent / teammate 有独立上下文;team 有任务和消息状态。 | 角色记忆、状态持久化、恢复能力是核心卖点。 | 每个 CLI 保留自己的 provider 会话;项目共享记忆和 per-agent 记忆可选。 |
64
- | 最适合的落点 | Claude Code 内部的快速委派和团队模式。 | 业务流程自动化、长期运行和生产可靠性。 | 本地开发、代码协作、跨 provider CLI agent 可视化工作台。 |
30
+ | 每个 agent 都是真实终端,支持界面排布设计。 | 一个命令同时并发运行多 CLI。 | 稳定后台通信,支持多线并发任务编排。 |
65
31
 
66
- CCB 也支持复杂工作流,但它不是自动生成 DAG 的 harness;复杂度主要通过 `.ccb/ccb.config`、多 window、角色记忆、worktree、model/API 配置和 ask/callback 路由显式设计。
32
+ ## 支持的 CLI
67
33
 
68
- </details>
69
-
70
- ## CCB 是什么
71
-
72
- CCB 是一个项目级 agent CLI 工作台。它用 tmux 管理多个真实 CLI agent,把启动、恢复、通信、配置、窗口和运行态聚合在一个项目里。
73
-
74
- - **真实 CLI,不是模拟面板**:每个 agent pane 都运行对应 provider 的真实 CLI。
75
- - **可见协作**:sidebar 展示窗口、agent 状态和通信区;用户可以用鼠标直接切 pane。
76
- - **混合 provider**:一个项目里可以同时跑 Codex、Claude、Gemini、OpenCode、Droid 和 Antigravity(`agy`)。
77
- - **项目级配置**:`.ccb/ccb.config` 决定团队、布局、窗口、worktree、model、key、url。
78
- - **Roles**:全新的角色封装概念;它让携带“重武器”(独立 skills、记忆和
79
- 工具依赖等)的专业角色瞬间“降临”到目标项目中,成为一个可以快速热加载和
80
- 卸载的独立 agent,同时保持主环境、用户全局配置和项目运行状态不发生改变。
81
- - **可恢复运行态**:CCB 后台守护 agent pane,支持 attach、恢复和项目级清理。
82
- - **显式协作通道**:agent 可以通过 `/ask`、`$ask`、callback 和 silence 进行委派与交接。
83
-
84
- ## v7 界面速览
85
-
86
- 下面截图来自 `ccb_test2` 项目的真实深色终端会话。图片上的标注只解释区域,不代表必须记住所有快捷键。
87
-
88
- <p align="center">
89
- <img src="assets/readme_v7/ccb-test2-terminal-annotated.png" alt="CCB v7 终端工作台区域说明" width="960">
34
+ <p>
35
+ <img src="https://img.shields.io/badge/Codex-111111?style=flat-square&logo=openai&logoColor=white" alt="Codex">
36
+ <img src="https://img.shields.io/badge/Claude-D97757?style=flat-square&logo=anthropic&logoColor=white" alt="Claude">
37
+ <img src="https://img.shields.io/badge/Gemini-4285F4?style=flat-square&logo=googlegemini&logoColor=white" alt="Gemini">
38
+ <img src="https://img.shields.io/badge/OpenCode-111111?style=flat-square" alt="OpenCode">
39
+ <img src="https://img.shields.io/badge/Antigravity-6D5EF6?style=flat-square&logo=google&logoColor=white" alt="Antigravity">
40
+ <img src="https://img.shields.io/badge/Droid-3DDC84?style=flat-square&logo=android&logoColor=white" alt="Droid">
41
+ <img src="https://img.shields.io/badge/Kimi-111111?style=flat-square&logo=moonshotai&logoColor=white" alt="Kimi">
90
42
  </p>
91
43
 
92
- | 区域 | 作用 |
93
- | :--- | :--- |
94
- | Sidebar | 显示当前 window、agent 列表、provider 标签、当前选中 agent 和状态提示。 |
95
- | Comms | 显示 ask/callback 等协作消息和通信状态。 |
96
- | Agent pane | 每个 pane 是一个真实 CLI 会话,例如 Codex 或 Claude。 |
97
- | 当前输入目标 | 状态栏和 pane 边框会提示当前输入会发给哪个 agent。 |
98
- | 状态栏 | 显示项目名、当前 agent、CCB 版本、日期和常用鼠标/键盘提示。 |
99
- | Window 分组 | v7 可用 `[windows]` 把 agent 按 main、work、review、research 等窗口分组。 |
44
+ 可在 `.ccb/ccb.config` 中按 agent 混用不同 CLI。常用 provider id 包括 `codex`、`claude`、`gemini`、`kimi`、`opencode`、`agy`、`droid`;实际可用性取决于本机 CLI 安装和账号权限。
100
45
 
101
- Sidebar 相关实现使用并借鉴了 [tmux-agent-sidebar](https://github.com/hiroppy/tmux-agent-sidebar) 的思路,在此表示感谢。
46
+ **全新角色规范**:可把 skills、记忆和工具依赖封装进自封闭 Role Pack,快速生成可热加载、可卸载的专业 agent
102
47
 
103
48
  ## 快速开始
104
49
 
105
50
  ### 1. 安装或更新
106
51
 
107
- 新用户可以先用 npm 安装:
52
+ 新安装推荐使用 npm 包:
108
53
 
109
54
  ```bash
110
55
  npm install -g @seemseam/ccb
111
56
  ```
112
57
 
113
- npm 包会下载并校验与你的平台匹配的 GitHub Release 包,然后提供 `ccb`、`ask`、`autonew` 和 `ctx-transfer`。
114
-
115
- 也可以直接使用 release 包。到 [Releases](https://github.com/SeemSeam/claude_codex_bridge/releases) 下载与你的平台匹配的包,解压后安装:
58
+ 安装完成后,后续更新直接使用 CCB 自带 updater:
116
59
 
117
60
  ```bash
118
- tar -xzf ccb-*.tar.gz
119
- cd ccb-*
120
- ./install.sh install
61
+ ccb update
121
62
  ```
122
63
 
123
- 如果你已经装过 CCB:
64
+ <details>
65
+ <summary><b>GitHub release 包和源码安装兜底</b></summary>
66
+
67
+ 如果当前环境不方便使用 npm,可以到 [Releases](https://github.com/SeemSeam/claude_codex_bridge/releases) 下载与你的平台匹配的包,解压后安装:
124
68
 
125
69
  ```bash
126
- ccb update
70
+ tar -xzf ccb-*.tar.gz
71
+ cd ccb-*
72
+ ./install.sh install
127
73
  ```
128
74
 
129
- <details>
130
- <summary><b>源码安装只建议开发或临时兜底使用</b></summary>
75
+ 源码安装只建议开发或临时兜底使用:
131
76
 
132
77
  ```bash
133
78
  git clone https://github.com/SeemSeam/claude_codex_bridge.git
@@ -135,10 +80,17 @@ cd claude_codex_bridge
135
80
  ./install.sh install
136
81
  ```
137
82
 
138
- 源码安装会让全局 `ccb` / `ask` 链接回当前 checkout。普通用户更建议安装或更新到稳定 release。
83
+ 源码安装会让全局 `ccb` / `ask` 链接回当前 checkout。普通用户更建议使用 npm 包。
139
84
 
140
85
  </details>
141
86
 
87
+ 开箱即用:在项目目录执行 `ccb` 即可使用。
88
+ 如果启动时提示无法自动创建 `.ccb` 或找不到项目锚点,需要手动创建 `.ccb` 作为项目锚点:
89
+
90
+ ```bash
91
+ mkdir -p .ccb
92
+ ```
93
+
142
94
  ### 2. 创建项目配置
143
95
 
144
96
  在项目根目录创建 `.ccb/ccb.config`。v7 推荐直接从多 window 拓扑理解配置:`[windows]` 定义窗口和 agent 分组,`agent:provider` 定义每个 agent 使用哪家 CLI,`(worktree)` 表示该 agent 使用独立 git worktree。
@@ -164,7 +116,7 @@ tips_height = "35%"
164
116
  comms_limit = 3
165
117
  ```
166
118
 
167
- 如果你不确定应该如何分组、要几个 worker、哪些 agent 用 worktree、哪些 agent 需要独立模型或 API,可以让 `ccb_self` 使用它内置的 `ccb-config` 和你讨论并生成配置方案。空白项目默认包含 `ccb_self`;已有自定义配置可用 `ccb roles add agentroles.ccb_self:codex` 添加。
119
+ 如果你不确定应该如何分组、要几个 worker、哪些 agent 用 worktree、哪些 agent 需要独立模型或 API,可以直接问当前工作台里的 `ccb_self`。它是 CCB 内置的 self-agent,理解 CCB 命令、配置权威层、roles、windows、reload 边界和常见恢复路径,并能用私有 `ccb-config` skill 和你讨论后生成配置方案。空白项目默认包含 `ccb_self`。
168
120
 
169
121
  验证配置:
170
122
 
@@ -186,7 +138,90 @@ ccb
186
138
  /ask reviewer review the latest parser changes and list blocking issues.
187
139
  ```
188
140
 
189
- ## 日常操作
141
+ 也可以在工作编排中让 agent 自动调用 `/ask` 完成委派和交接。
142
+
143
+ ### v7 界面速览
144
+
145
+ | 区域 | 说明 |
146
+ | :--- | :--- |
147
+ | Sidebar | 显示刷新/关闭 CCB 控件、window 和 agent 列表、内部通信状态,以及可在配置文件中修改并热加载的 tips。 |
148
+ | 鼠标操作 | 支持点击切换 window、agent 和 pane,也可在通信区刷新、kill 或删除条目。 |
149
+ | 工作区 | 每个 pane 都是真实 CLI;可以鼠标点击切换,也可以用 tmux 快捷键切换。 |
150
+ | 常用技巧 | `Ctrl-b h/j/k/l` 切换相邻 pane,`Ctrl-b z` 放大或还原当前 CLI pane。 |
151
+
152
+ ### 联系方式
153
+
154
+ - Email: `bfly123@126.com`
155
+ - 微信: `seemseam-com`
156
+
157
+ ---
158
+
159
+ ## 更多阅读
160
+
161
+ 初次使用可以先从快速开始进入;下面内容补充 CCB 的设计边界、方案对比、日常操作和配置方式。
162
+
163
+ ### CCB 是什么
164
+
165
+ CCB 是一个项目级 agent CLI 工作台。它用 tmux 管理多个真实 CLI agent,把启动、恢复、通信、配置、窗口和运行态聚合在一个项目里。
166
+
167
+ - **真实 CLI,不是模拟面板**:每个 agent pane 都运行对应 provider 的真实 CLI。
168
+ - **可见协作**:sidebar 展示窗口、agent 状态和通信区;用户可以用鼠标直接切 pane。
169
+ - **混合 provider**:一个项目里可以同时跑 Codex、Claude、Gemini、OpenCode、Droid、Antigravity(`agy`)和 Kimi(`kimi`)。
170
+ - **项目级配置**:`.ccb/ccb.config` 决定团队、布局、窗口、worktree、model、key、url。
171
+ - **内置 CCB 专家**:空白项目默认包含 `ccb_self`,它是具备 CCB 自理解能力的自维护 agent,可帮助使用 CCB、设计配置、诊断运行态、恢复工作流。
172
+ - **Roles**:全新的角色封装概念;它让携带“重武器”(独立 skills、记忆和
173
+ 工具依赖等)的专业角色瞬间“降临”到目标项目中,成为一个可以快速热加载和
174
+ 卸载的独立 agent,同时保持主环境、用户全局配置和项目运行状态不发生改变。
175
+ - **可恢复运行态**:CCB 后台守护 agent pane,支持 attach、恢复和项目级清理。
176
+ - **显式协作通道**:agent 可以通过 `/ask`、`$ask`、callback 和 silence 进行委派与交接。
177
+
178
+ ### 为什么需要多 agents
179
+
180
+ 小任务用单 agent 就够了;一旦任务需要规划、并行实现、审查、测试和交接,多 agents 的价值就变成:把角色、上下文、模型和执行过程拆开管理。CCB 的重点是把多个真实 CLI agent 放进同一个可见终端工作台。
181
+
182
+ | 价值 | 直观理解 |
183
+ | :--- | :--- |
184
+ | 角色分离 | `main` 负责任务拆分,`worker` 负责实现,`reviewer` 负责审查。 |
185
+ | 并行推进 | 一个 agent 写代码时,另一个 agent 可以读文档、跑验证或审查风险。 |
186
+ | 模型和上下文分层 | 不同 agent 可以用不同 provider、model、API、worktree 和记忆。 |
187
+
188
+ <details>
189
+ <summary><b>展开:单 agent 为什么会吃力?</b></summary>
190
+
191
+ - 角色混杂会影响上下文集中度:同一个会话既要做架构,又要写代码,还要自我审查,容易在长任务里丢掉重点。
192
+ - 可执行复杂度有上限:任务越长,越需要拆分、交接、核对和回滚点。
193
+ - 成本压力更高:如果所有步骤都依赖一个最强模型,简单任务也会变贵。
194
+ - 工具和 skill 集中会变难管理:什么都给一个 agent,等于把权限、说明和工具复杂度全部堆在一起。
195
+ - 串行等待效率低:一个 agent 在跑测试、读日志或长时间思考时,其他可并行工作无法自然展开。
196
+
197
+ </details>
198
+
199
+ ### 多 agents 方案怎么选
200
+
201
+ 多 agents 不是一种固定形态。先用下面这张表判断大方向,细节可以展开看。
202
+
203
+ | 方案 | 一句话 | 更适合你如果 |
204
+ | :--- | :--- | :--- |
205
+ | [Claude Code 原生 subagents](https://code.claude.com/docs/en/sub-agents) / [agent teams](https://code.claude.com/docs/en/agent-teams) | Claude Code 内部的原生分工。 | 你主要留在 Claude Code,并接受更多协调由 Claude lead 处理。 |
206
+ | [Hive / OpenHive](https://github.com/aden-hive/hive) | 面向生产工作流的多 agent harness。 | 你要状态、恢复、观测、成本控制和图式工作流。 |
207
+ | CCB | 可见、可控、混合 provider 的本地 CLI agent 工作台。 | 你要把 Codex、Claude、Gemini、Kimi、OpenCode、Antigravity 等真实 CLI 放到一个项目终端里操作。 |
208
+
209
+ <details>
210
+ <summary><b>展开:模型、可控性、上下文和复杂工作流怎么区别?</b></summary>
211
+
212
+ | 关键问题 | Claude Code 原生 | Hive / OpenHive | CCB |
213
+ | :--- | :--- | :--- | :--- |
214
+ | 能否使用不同家的模型 | 可给 teammate / subagent 指定 Claude 模型;整体仍在 Claude Code 体系内。 | 通过 LiteLLM 路线支持大量 hosted / local provider。 | 按 agent 选择 Codex、Claude、Gemini、Kimi、OpenCode、Droid、Antigravity 等,并可设置独立 model / key / url。 |
215
+ | 过程是否可见 | in-process 或 split panes,取决于模式和终端。 | 强调 runtime observability 和控制台视角。 | 默认就是 tmux 可见 pane,用户能直接点击、输入、复制、观察每个 CLI。 |
216
+ | 拓扑是否可控 | 可自然语言指定队友,但运行时协调较多交给 lead。 | 由目标生成图式拓扑,偏 harness。 | 配置文件显式定义 agent、窗口、pane、worktree 和 sidebar。 |
217
+ | 上下文是否可管理 | subagent / teammate 有独立上下文;team 有任务和消息状态。 | 角色记忆、状态持久化、恢复能力是核心卖点。 | 每个 CLI 保留自己的 provider 会话;项目共享记忆和 per-agent 记忆可选。 |
218
+ | 最适合的落点 | Claude Code 内部的快速委派和团队模式。 | 业务流程自动化、长期运行和生产可靠性。 | 本地开发、代码协作、跨 provider CLI agent 可视化工作台。 |
219
+
220
+ CCB 也支持复杂工作流,但它不是自动生成 DAG 的 harness;复杂度主要通过 `.ccb/ccb.config`、多 window、角色记忆、worktree、model/API 配置和 ask/callback 路由显式设计。
221
+
222
+ </details>
223
+
224
+ ### 日常操作
190
225
 
191
226
  | 目标 | 命令 |
192
227
  | :--- | :--- |
@@ -200,7 +235,7 @@ ccb
200
235
  | 预览配置热加载计划,不修改 tmux | `ccb reload --dry-run` |
201
236
  | 应用支持的配置变更,不重启其他 agent | `ccb reload` |
202
237
 
203
- ## tmux 常规操作
238
+ ### tmux 常规操作
204
239
 
205
240
  CCB 虽然基本全部可以使用鼠标操作,但是学会 tmux 命令可以显著增加便利性。下面列举了部分常用的键盘操作快捷键。
206
241
 
@@ -242,7 +277,7 @@ CCB 虽然基本全部可以使用鼠标操作,但是学会 tmux 命令可以
242
277
 
243
278
  </details>
244
279
 
245
- ## 配置 agent 团队
280
+ ### 配置 agent 团队
246
281
 
247
282
  CCB 配置有三层,优先级从低到高:
248
283
 
@@ -270,7 +305,7 @@ CCB 配置有三层,优先级从低到高:
270
305
 
271
306
  如果你想先讨论配置而不是手写,可以直接让 `ccb_self` 描述目标团队。空白项目默认已经有这个路由;使用用户配置或项目配置覆盖内置默认的项目,如果还没有 `ccb_self`,需要先添加 `agentroles.ccb_self`。它的内置 `ccb-config` skill 会先提出完整方案,确认后再修改 `.ccb/ccb.config`。
272
307
 
273
- ### Role Packs
308
+ #### Role Packs
274
309
 
275
310
  Role Pack 用来定义可复用的 agent 角色。一个 role 可以包含稳定身份、职责、
276
311
  记忆、provider-specific skills、工具 hooks 和依赖准备逻辑。这样项目配置会更短,
@@ -292,10 +327,11 @@ ccb roles update agentroles.archi
292
327
  role;如果锁已经落后,交互式启动会询问是否就地刷新项目锁,非交互启动只打印
293
328
  提醒。
294
329
 
295
- 强烈建议 CCB 项目保留 `ccb_self`,因为它负责 CCB 配置维护、运行诊断、受保护
296
- 恢复、工作链修复和单 agent 重启辅助,同时不接管业务任务。空白项目的内置默认配置
297
- 已经包含它;已有项目,或使用用户配置/项目配置替换内置默认的项目,需要该维护
298
- agent 时应显式把它作为 window leaf 加进去:
330
+ 强烈建议 CCB 项目保留 `ccb_self`,因为它是 CCB 内置专家 agent,携带 CCB
331
+ 项目配置、命令使用、role 绑定、reload 边界、运行诊断、受保护恢复、工作链修复和
332
+ 单 agent 重启辅助等专用知识,同时不接管业务任务。空白项目的内置默认配置已经
333
+ 包含它;已有项目,或使用用户配置/项目配置替换内置默认的项目,需要该维护 agent
334
+ 时应显式把它作为 window leaf 加进去:
299
335
 
300
336
  ```bash
301
337
  ccb roles add agentroles.ccb_self:codex
@@ -316,7 +352,7 @@ provider home。
316
352
  <details>
317
353
  <summary><b>配置格式示例:单窗口、多 window、per-agent 模型/API</b></summary>
318
354
 
319
- ### 单窗口紧凑配置
355
+ #### 单窗口紧凑配置
320
356
 
321
357
  ```text
322
358
  cmd; main:codex, worker1:codex(worktree); reviewer:claude
@@ -330,7 +366,7 @@ cmd; main:codex, worker1:codex(worktree); reviewer:claude
330
366
  - `;` 表示左右分栏,`,` 表示上下堆叠。
331
367
  - `(worktree)` 表示该 agent 使用独立 git worktree。
332
368
 
333
- ### 多 window 拓扑
369
+ #### 多 window 拓扑
334
370
 
335
371
  当你想把规划、实现、审查、研究分到不同 tmux window 时,使用 `version = 2` 和 `[windows]`:
336
372
 
@@ -357,7 +393,7 @@ comms_limit = 3
357
393
 
358
394
  注意:`cmd` 只属于紧凑/混合单窗口布局;`[windows]` 拓扑里不要写 `cmd`。
359
395
 
360
- ### 托管 Neovim 工具 window
396
+ #### 托管 Neovim 工具 window
361
397
 
362
398
  工具 window 是 CCB 管理的 tmux window,但不是 agent。它不会出现在 `ccb ask` 目标中,也不会创建 provider runtime 记录。
363
399
 
@@ -378,7 +414,7 @@ label = "neovim"
378
414
  托管 profile 默认使用 ASCII 图标,避免没有 Nerd Font 的终端出现方块/乱码。确认终端字体支持 Nerd Font 时,可用 `CCB_LAZYVIM_ICON_STYLE=glyph ccb-nvim` 恢复 LazyVim 图标。
379
415
  用 `ccb tools doctor neovim` 验证托管 profile。LazyVim 真正可用时会显示 `neovim_status: ok` 和 `lazyvim_health_status: ok`;插件目录损坏或半下载会显示 `degraded`,重新运行 `ccb tools install neovim` 会尝试修复。
380
416
 
381
- ### 给 agent 单独配置模型、API key 或 base URL
417
+ #### 给 agent 单独配置模型、API key 或 base URL
382
418
 
383
419
  如果只需要布局,用紧凑格式即可;如果某些 agent 需要单独模型或 API 路由,在紧凑头后追加 TOML overlay:
384
420
 
@@ -401,10 +437,12 @@ model = "sonnet"
401
437
 
402
438
  </details>
403
439
 
404
- ## 使用 ccb_self 配置 CCB
440
+ ### 使用 ccb_self 配置 CCB
405
441
 
406
442
  完整的 `ccb-config` skill 属于 `agentroles.ccb_self` 角色,不再作为所有 agent 都继承的公共 skill。CCB 默认会安装或刷新这个 Role Pack,空白项目的内置默认配置也会包含 `ccb_self`。已有项目,或使用用户配置/项目配置替换内置默认的项目,需要维护助手时应显式绑定它。
407
443
 
444
+ `ccb_self` 不只是配置助手,它被设计成 CCB 的自理解 agent。使用 CCB 时遇到布局解释、团队拓扑选择、`.ccb/ccb.config` 迁移、运行态诊断、恢复路径或工作流修复问题,都可以先问它。
445
+
408
446
  如果你不想手写 `.ccb/ccb.config`,可以直接询问 `ccb_self`,再用自然语言描述项目目标、并行程度、窗口分组、worktree 隔离、provider/model/API 偏好。`ccb_self` 会使用它内置的 `ccb-config` 和你讨论后提出完整配置方案。
409
447
 
410
448
  示例:
@@ -429,7 +467,7 @@ ccb ask ccb_self "为一个 Python library 设计团队:main 负责任务拆
429
467
 
430
468
  </details>
431
469
 
432
- ## Agent 之间如何协作
470
+ ### Agent 之间如何协作
433
471
 
434
472
  普通 `ask` 是提交即返回:把任务交给目标 agent 后,当前 agent 不应该轮询等待。
435
473
 
@@ -462,7 +500,7 @@ spill 只是兜底,所以只要精确输入或完整输出重要,就应该
462
500
 
463
501
  </details>
464
502
 
465
- ## 编辑器工作流
503
+ ### 编辑器工作流
466
504
 
467
505
  <p align="center">
468
506
  <img src="assets/nvim.png" alt="Neovim 集成多模型代码审查" width="860">
@@ -470,37 +508,35 @@ spill 只是兜底,所以只要精确输入或完整输出重要,就应该
470
508
 
471
509
  CCB 不要求你离开编辑器。常见方式是:编辑器负责写代码,CCB 终端负责多 agent 规划、实现、审查、测试和交接。
472
510
 
473
- ## 安装和更新
511
+ ### 安装和更新
474
512
 
475
- ### 环境要求
513
+ #### 环境要求
476
514
 
515
+ - 推荐 npm 安装路径需要 Node.js 和 npm
477
516
  - Python 3.10+
478
517
  - `tmux`
479
- - 至少一个你要使用的 agent CLI,例如 Codex、Claude、Gemini、OpenCode、Droid 或 Antigravity
518
+ - 至少一个你要使用的 agent CLI,例如 Codex、Claude、Gemini、Kimi、OpenCode、Droid 或 Antigravity
480
519
  - Linux、macOS 或 WSL
481
- - 通过 npm 安装时需要 Node.js 18+
482
520
 
483
521
  当前 v7 / 新版本不声明原生 Windows 支持。原生 Windows 只支持到 v5 线;如果你在 Windows 上使用新版本,推荐使用 WSL,并让 `ccb` 与 agent CLI 都运行在 WSL 内。
484
522
 
485
- ### npm 优先
523
+ #### npm 优先
524
+
525
+ 首次安装推荐使用 npm:
486
526
 
487
527
  ```bash
488
528
  npm install -g @seemseam/ccb
489
529
  ```
490
530
 
491
- npm 包是官方 GitHub Release artifacts 的轻量安装 wrapper,会先校验 `SHA256SUMS`,再解压平台包。
492
-
493
- ### Release 包兜底
494
-
495
- 首次安装推荐使用 [GitHub Releases](https://github.com/SeemSeam/claude_codex_bridge/releases) 的 release 包;已安装用户推荐:
531
+ 后续更新直接使用:
496
532
 
497
533
  ```bash
498
534
  ccb update
499
535
  ```
500
536
 
501
- 源码 checkout 安装只适合开发、验证修复或 release 包暂不可用时临时使用。
537
+ [GitHub Releases](https://github.com/SeemSeam/claude_codex_bridge/releases) 仍作为不方便使用 npm 时的备选路径。源码 checkout 安装只适合开发、验证修复或临时兜底。
502
538
 
503
- ### 卸载
539
+ #### 卸载
504
540
 
505
541
  ```bash
506
542
  ccb uninstall
@@ -510,7 +546,7 @@ ccb reinstall
510
546
  ./install.sh uninstall
511
547
  ```
512
548
 
513
- ## 常见问题
549
+ ### 常见问题
514
550
 
515
551
  <details>
516
552
  <summary><b>启动后没有看到预期 agent</b></summary>
@@ -540,11 +576,7 @@ ccb reinstall
540
576
 
541
577
  </details>
542
578
 
543
- ## 社区和致谢
544
-
545
- 📧 Email: `bfly123@126.com`
546
-
547
- 💬 微信: `seemseam-com`
579
+ ### 社区和致谢
548
580
 
549
581
  感谢 [Linux.do 社区](https://linux.do) 在测试、反馈和讨论中的支持。
550
582
 
@@ -554,7 +586,7 @@ ccb reinstall
554
586
  <img src="assets/weixin.jpg" alt="微信群" width="300">
555
587
  </div>
556
588
 
557
- ## 新版本记录
589
+ ### 新版本记录
558
590
 
559
591
  v7 线重点:
560
592
 
@@ -566,6 +598,52 @@ v7 线重点:
566
598
  - 加固 tmux、Ghostty、release helper、Codex trust 和 provider 会话恢复路径。
567
599
 
568
600
  <details open>
601
+ <summary><b>v7.5.0</b> - 原生 CLI Provider 与首页同步</summary>
602
+
603
+ - 新增 Kimi managed native CLI provider 支持,并补齐更通用的 native CLI
604
+ runtime 基础能力,覆盖 runtime spec、session binding、启动命令覆盖和清理路径。
605
+ - Kimi 和 Antigravity 的完成判定改为读取 provider 自有 session 或
606
+ transcript 证据,不再要求模型打印 `CCB_DONE`。
607
+ - CCB auto-permission 对 Kimi 默认注入当前版本支持的 `--auto-approve`,
608
+ 同时识别 `--auto`、`--yes`、`-y`、`--yolo` 等旧版或别名标识,避免重复注入。
609
+ - 同步英文和中文 README 首页,刷新 hero assets,并统一为 7 个公开 CLI
610
+ family 的定位。
611
+
612
+ </details>
613
+
614
+ <details>
615
+ <summary><b>v7.4.4</b> - Claude end_turn 与 npm 发布面修复</summary>
616
+
617
+ - Claude pane-backed ask 在 primary assistant response 带
618
+ `stop_reason=end_turn`、已看到请求 anchor 且回复非空时,会立即产生
619
+ `TURN_BOUNDARY(reason=assistant_end_turn)` 并正常完成,不再等到 900 秒
620
+ reliability timeout。
621
+ - 空的 session-boundary terminal event 如果之前没有 assistant 回复证据,会
622
+ 终止为 `incomplete/task_complete_empty_reply`,并带
623
+ `empty_provider_reply` 诊断。
624
+ - 恢复 `@seemseam/ccb` npm 发布面:补回 package metadata、CLI runner
625
+ wrappers,以及等待 GitHub release assets 后再发布 npm 包的 Trusted
626
+ Publishing workflow。
627
+ - 刷新 v7 README 首页:使用 canonical hero assets,默认 npm-first 安装,并
628
+ 更明确说明 `ccb_self` 是 CCB 内置的使用、配置、诊断和恢复专家。
629
+
630
+ </details>
631
+
632
+ <details>
633
+ <summary><b>v7.4.3</b> - PR #225 可靠性跟进修复</summary>
634
+
635
+ - 恢复 Claude launcher contract:inline `--settings` 只反映 materialized
636
+ settings overlay,不再把 provider env 注入 settings JSON。
637
+ - 修复 Claude 在 WSL 调 Windows executable 时的环境透传:路径变量使用 `/p`
638
+ 转换,`ANTHROPIC_*` API 值作为 raw env 名透传。
639
+ - 加固 Antigravity resume lookup,兼容 SQLite 返回的 `bytes`、`str` 和
640
+ `memoryview` metadata,并在查找失败时降级为 `--continue`。
641
+ - 新增 Claude settings contract、WSL API env forwarding 和 AGY resume
642
+ fallback 的回归测试。
643
+
644
+ </details>
645
+
646
+ <details>
569
647
  <summary><b>v7.4.2</b> - Self-supervision 与空回复防护</summary>
570
648
 
571
649
  - 通过有界 provider-runtime snapshot、project-view 活动证据、suspicion
package/VERSION CHANGED
@@ -1 +1 @@
1
- 7.4.2
1
+ 7.5.0
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@seemseam/ccb",
3
- "version": "7.4.2",
4
- "description": "Visible, controllable multi-agent CLI workspace for Codex, Claude, Gemini, OpenCode, and Antigravity.",
5
- "license": "MIT",
3
+ "version": "7.5.0",
4
+ "description": "Visible, controllable multi-agent CLI workspace for Codex, Claude, Gemini, Kimi, OpenCode, Antigravity, and Droid.",
5
+ "license": "AGPL-3.0-only",
6
6
  "homepage": "https://github.com/SeemSeam/claude_codex_bridge#readme",
7
7
  "repository": {
8
8
  "type": "git",