cc-workspace 4.0.1 → 4.0.3
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.
- package/README.md +190 -189
- package/bin/cli.js +80 -83
- package/global-skills/agents/team-lead.md +91 -91
- package/global-skills/agents/workspace-init.md +148 -148
- package/global-skills/bootstrap-repo/SKILL.md +1 -1
- package/global-skills/cross-service-check/SKILL.md +2 -2
- package/global-skills/cycle-retrospective/SKILL.md +2 -2
- package/global-skills/dispatch-feature/SKILL.md +8 -9
- package/global-skills/dispatch-feature/references/anti-patterns.md +2 -3
- package/global-skills/dispatch-feature/references/frontend-ux-standards.md +47 -47
- package/global-skills/dispatch-feature/references/spawn-templates.md +11 -24
- package/global-skills/incident-debug/SKILL.md +2 -2
- package/global-skills/merge-prep/SKILL.md +2 -2
- package/global-skills/qa-ruthless/SKILL.md +6 -7
- package/global-skills/refresh-profiles/SKILL.md +1 -1
- package/global-skills/templates/claude-md.template.md +21 -21
- package/global-skills/templates/constitution.template.md +33 -9
- package/global-skills/templates/workspace.template.md +1 -1
- package/package.json +2 -2
- package/global-skills/constitution.md +0 -58
- package/global-skills/rules/constitution-en.md +0 -67
package/README.md
CHANGED
|
@@ -1,102 +1,103 @@
|
|
|
1
1
|
# Claude Code Multi-Workspace Orchestrator v4.0
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
A system to pilot multi-service projects from Claude Code.
|
|
4
|
+
The orchestrator (Opus) never codes in repos. It clarifies, plans,
|
|
5
|
+
delegates to teammates who work in parallel in each repo.
|
|
6
6
|
|
|
7
|
-
> Claude Code v2.1.47+ / Opus 4.6 / Sonnet 4.6 (
|
|
7
|
+
> Claude Code v2.1.47+ / Opus 4.6 / Sonnet 4.6 (February 2026).
|
|
8
8
|
> 9 skills, 11 hooks, 3 agents, 3 rules.
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
## Installation
|
|
13
13
|
|
|
14
|
-
###
|
|
14
|
+
### Prerequisites
|
|
15
15
|
|
|
16
16
|
- **Claude Code** v2.1.47+
|
|
17
17
|
- **Node.js** 18+
|
|
18
|
-
- **jq** (`brew install jq`
|
|
18
|
+
- **jq** (`brew install jq` on macOS, `apt install jq` on Linux)
|
|
19
19
|
|
|
20
|
-
### 1.
|
|
20
|
+
### 1. Workspace setup
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
|
-
cd ~/
|
|
24
|
-
npx
|
|
23
|
+
cd ~/projects/my-workspace
|
|
24
|
+
npx cc-workspace init . "My Project"
|
|
25
25
|
```
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
-
|
|
29
|
-
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
32
|
-
- workspace.md
|
|
27
|
+
The CLI:
|
|
28
|
+
- Installs skills/rules/agents in `~/.claude/` (if newer version)
|
|
29
|
+
- Creates `orchestrator/` with plans/, templates/, hooks
|
|
30
|
+
- Scans sibling repos (directories with `.git/`)
|
|
31
|
+
- Generates `service-profiles.md`
|
|
32
|
+
- workspace.md and constitution.md in `[UNCONFIGURED]` mode
|
|
33
33
|
|
|
34
|
-
### 2.
|
|
34
|
+
### 2. Initialization (one time only)
|
|
35
35
|
|
|
36
36
|
```bash
|
|
37
37
|
cd orchestrator/
|
|
38
38
|
claude --agent workspace-init
|
|
39
|
+
# type "go" to start the diagnostic
|
|
39
40
|
```
|
|
40
41
|
|
|
41
|
-
|
|
42
|
-
1.
|
|
43
|
-
2.
|
|
44
|
-
3.
|
|
45
|
-
4.
|
|
46
|
-
5.
|
|
47
|
-
6.
|
|
42
|
+
The `workspace-init` agent:
|
|
43
|
+
1. Diagnoses the structure (hooks, settings, templates)
|
|
44
|
+
2. Scans sibling repos, detects project types, checks Claude Code readiness
|
|
45
|
+
3. Offers to generate missing CLAUDE.md files (optional)
|
|
46
|
+
4. Interactive configuration of workspace.md (section by section)
|
|
47
|
+
5. Interactive configuration of constitution.md (project rules)
|
|
48
|
+
6. Final report with each check's status
|
|
48
49
|
|
|
49
|
-
### 3.
|
|
50
|
+
### 3. Work sessions
|
|
50
51
|
|
|
51
52
|
```bash
|
|
52
53
|
cd orchestrator/
|
|
53
54
|
claude --agent team-lead
|
|
54
55
|
|
|
55
|
-
#
|
|
56
|
-
# A --
|
|
57
|
-
# B --
|
|
58
|
-
# C -- Go direct (dispatch
|
|
59
|
-
# D -- Single-service (1 repo,
|
|
56
|
+
# The team-lead offers 4 modes:
|
|
57
|
+
# A -- Full (clarify -> plan -> validate -> dispatch -> QA)
|
|
58
|
+
# B -- Quick plan (specs -> plan -> dispatch)
|
|
59
|
+
# C -- Go direct (immediate dispatch)
|
|
60
|
+
# D -- Single-service (1 repo, no waves)
|
|
60
61
|
```
|
|
61
62
|
|
|
62
|
-
###
|
|
63
|
+
### Update
|
|
63
64
|
|
|
64
65
|
```bash
|
|
65
|
-
npx
|
|
66
|
+
npx cc-workspace update
|
|
66
67
|
```
|
|
67
68
|
|
|
68
|
-
|
|
69
|
-
|
|
69
|
+
Updates global components (~/.claude/) if the package version is newer.
|
|
70
|
+
Workspace files (workspace.md, constitution.md, plans/) are never overwritten.
|
|
70
71
|
|
|
71
72
|
### Diagnostic
|
|
72
73
|
|
|
73
74
|
```bash
|
|
74
|
-
npx
|
|
75
|
+
npx cc-workspace doctor
|
|
75
76
|
```
|
|
76
77
|
|
|
77
|
-
|
|
78
|
+
Checks: installed version, skills, rules, agents, hooks, jq, orchestrator/ structure.
|
|
78
79
|
|
|
79
80
|
---
|
|
80
81
|
|
|
81
|
-
##
|
|
82
|
+
## Resulting structure
|
|
82
83
|
|
|
83
84
|
```
|
|
84
|
-
|
|
85
|
-
├── orchestrator/ <-
|
|
85
|
+
my-workspace/
|
|
86
|
+
├── orchestrator/ <- you cd here
|
|
86
87
|
│ ├── .claude/
|
|
87
|
-
│ │ ├── settings.json <- env vars
|
|
88
|
+
│ │ ├── settings.json <- env vars + hooks
|
|
88
89
|
│ │ └── hooks/
|
|
89
90
|
│ │ ├── block-orchestrator-writes.sh
|
|
90
91
|
│ │ ├── session-start-context.sh
|
|
91
92
|
│ │ ├── validate-spawn-prompt.sh
|
|
92
93
|
│ │ └── ... <- 11 scripts
|
|
93
|
-
│ ├── CLAUDE.md <-
|
|
94
|
-
│ ├── workspace.md <-
|
|
95
|
-
│ ├── constitution.md <-
|
|
94
|
+
│ ├── CLAUDE.md <- orchestrator profile
|
|
95
|
+
│ ├── workspace.md <- filled by workspace-init
|
|
96
|
+
│ ├── constitution.md <- filled by workspace-init
|
|
96
97
|
│ ├── templates/
|
|
97
98
|
│ │ ├── workspace.template.md
|
|
98
99
|
│ │ ├── constitution.template.md
|
|
99
|
-
│ │ └── claude-md.template.md <- template
|
|
100
|
+
│ │ └── claude-md.template.md <- template for repo CLAUDE.md files
|
|
100
101
|
│ └── plans/
|
|
101
102
|
│ ├── _TEMPLATE.md
|
|
102
103
|
│ └── service-profiles.md
|
|
@@ -108,169 +109,169 @@ mon-workspace/
|
|
|
108
109
|
|
|
109
110
|
---
|
|
110
111
|
|
|
111
|
-
##
|
|
112
|
+
## How it works
|
|
112
113
|
|
|
113
|
-
###
|
|
114
|
+
### The problem
|
|
114
115
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
116
|
+
You have a project with 3-5 repos (API, frontend, infra, etc.). When you
|
|
117
|
+
ask Claude Code for a feature, it tries to do everything itself:
|
|
118
|
+
it loses context, can't work in multiple repos at once, and guesses
|
|
119
|
+
instead of asking.
|
|
119
120
|
|
|
120
|
-
###
|
|
121
|
+
### The solution
|
|
121
122
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
123
|
+
The orchestrator (Opus) never touches repo code. It clarifies the need,
|
|
124
|
+
writes a plan in markdown, then sends teammates (Sonnet) to work in
|
|
125
|
+
parallel in each repo via Agent Teams.
|
|
125
126
|
|
|
126
|
-
###
|
|
127
|
+
### Who does what
|
|
127
128
|
|
|
128
|
-
| Role |
|
|
129
|
-
|
|
130
|
-
| **
|
|
131
|
-
| **Init** | Sonnet 4.6 | Diagnostic +
|
|
132
|
-
| **Teammates** | Sonnet 4.6 |
|
|
133
|
-
| **
|
|
134
|
-
| **QA** | Sonnet 4.6 |
|
|
129
|
+
| Role | Model | What it does |
|
|
130
|
+
|------|-------|-------------|
|
|
131
|
+
| **Orchestrator** | Opus 4.6 | Clarifies, plans, delegates, verifies. Writes in orchestrator/ only. |
|
|
132
|
+
| **Init** | Sonnet 4.6 | Diagnostic + interactive workspace configuration. Run once. |
|
|
133
|
+
| **Teammates** | Sonnet 4.6 | Implement in an isolated worktree, test, commit. |
|
|
134
|
+
| **Explorers** | Haiku | Read-only. Scan, verify consistency. |
|
|
135
|
+
| **QA** | Sonnet 4.6 | Hostile mode. Min 3 problems found per service. |
|
|
135
136
|
|
|
136
|
-
###
|
|
137
|
+
### The 4 session modes
|
|
137
138
|
|
|
138
|
-
| Mode |
|
|
139
|
-
|
|
140
|
-
| **A --
|
|
141
|
-
| **B --
|
|
142
|
-
| **C -- Go direct** | Hotfix,
|
|
143
|
-
| **D -- Single-service** | Bug
|
|
139
|
+
| Mode | When to use |
|
|
140
|
+
|------|-------------|
|
|
141
|
+
| **A -- Full** | Complex feature, multi-service, needs clarification |
|
|
142
|
+
| **B -- Quick plan** | Clear specs, no questions |
|
|
143
|
+
| **C -- Go direct** | Hotfix, quick fix, obvious specs |
|
|
144
|
+
| **D -- Single-service** | Bug or isolated feature in a single repo |
|
|
144
145
|
|
|
145
|
-
###
|
|
146
|
+
### The dispatch-feature workflow (Mode A)
|
|
146
147
|
|
|
147
148
|
```
|
|
148
|
-
CLARIFY ->
|
|
149
|
-
PLAN ->
|
|
150
|
-
SPAWN -> Wave 1
|
|
151
|
-
Wave 2
|
|
152
|
-
Wave 3
|
|
153
|
-
COLLECT ->
|
|
149
|
+
CLARIFY -> ask max 5 questions if ambiguity
|
|
150
|
+
PLAN -> write the plan in ./plans/, wait for approval
|
|
151
|
+
SPAWN -> Wave 1: API/data in parallel
|
|
152
|
+
Wave 2: frontend with validated API contract
|
|
153
|
+
Wave 3: infra/config if applicable
|
|
154
|
+
COLLECT -> update the plan with results
|
|
154
155
|
VERIFY -> cross-service-check + qa-ruthless
|
|
155
|
-
REPORT ->
|
|
156
|
+
REPORT -> final summary
|
|
156
157
|
```
|
|
157
158
|
|
|
158
|
-
###
|
|
159
|
+
### Security — path-aware writes
|
|
159
160
|
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
161
|
+
The orchestrator can write in `orchestrator/` (plans, workspace.md, constitution.md)
|
|
162
|
+
but never in sibling repos. The `block-orchestrator-writes.sh` hook dynamically
|
|
163
|
+
detects if the target path is in a repo (presence of `.git/`).
|
|
163
164
|
|
|
164
|
-
|
|
165
|
-
1. `disallowedTools: Bash`
|
|
166
|
-
2. `allowed-tools` whitelist
|
|
167
|
-
3.
|
|
168
|
-
4.
|
|
165
|
+
Protection layers:
|
|
166
|
+
1. `disallowedTools: Bash` in agent frontmatter
|
|
167
|
+
2. `allowed-tools` whitelist in agent frontmatter
|
|
168
|
+
3. `PreToolUse` path-aware hook in agent frontmatter
|
|
169
|
+
4. `block-orchestrator-writes.sh` hook in .claude/hooks/
|
|
169
170
|
|
|
170
171
|
---
|
|
171
172
|
|
|
172
|
-
##
|
|
173
|
+
## The 9 skills
|
|
173
174
|
|
|
174
|
-
| Skill | Role |
|
|
175
|
-
|
|
176
|
-
| **dispatch-feature** | 4 modes
|
|
177
|
-
| **qa-ruthless** | QA
|
|
178
|
-
| **cross-service-check** |
|
|
179
|
-
| **incident-debug** |
|
|
180
|
-
| **plan-review** |
|
|
181
|
-
| **merge-prep** |
|
|
182
|
-
| **cycle-retrospective** |
|
|
183
|
-
| **refresh-profiles** | Re-
|
|
184
|
-
| **bootstrap-repo** |
|
|
175
|
+
| Skill | Role | Trigger |
|
|
176
|
+
|-------|------|---------|
|
|
177
|
+
| **dispatch-feature** | 4 modes: Clarify -> Plan -> Delegate -> Track | "Implement X", "new feature" |
|
|
178
|
+
| **qa-ruthless** | Hostile QA + UX audit | "QA", "review", "test" |
|
|
179
|
+
| **cross-service-check** | Inter-repo consistency | "cross-service", "pre-merge" |
|
|
180
|
+
| **incident-debug** | Multi-layer diagnostic | "Bug", "500", "not working" |
|
|
181
|
+
| **plan-review** | Plan sanity check (Haiku) | "Review plan" |
|
|
182
|
+
| **merge-prep** | Conflicts, PRs, merge order | "Merge", "PR" |
|
|
183
|
+
| **cycle-retrospective** | Post-cycle learning (Haiku) | "Retro", "retrospective" |
|
|
184
|
+
| **refresh-profiles** | Re-scan repo CLAUDE.md files (Haiku) | "Refresh profiles" |
|
|
185
|
+
| **bootstrap-repo** | Generate a CLAUDE.md (Haiku) | "Bootstrap", "init CLAUDE.md" |
|
|
185
186
|
|
|
186
|
-
|
|
187
|
-
|
|
187
|
+
All use `context: fork` — a skill's result is not in context when the
|
|
188
|
+
next one starts. The plan on disk is the source of truth.
|
|
188
189
|
|
|
189
190
|
---
|
|
190
191
|
|
|
191
|
-
##
|
|
192
|
+
## The 3 agents
|
|
192
193
|
|
|
193
|
-
| Agent |
|
|
194
|
-
|
|
195
|
-
| **team-lead** | Opus 4.6 | `claude --agent team-lead` —
|
|
196
|
-
| **workspace-init** | Sonnet 4.6 | `claude --agent workspace-init` — diagnostic + config
|
|
197
|
-
| **implementer** | Sonnet 4.6 |
|
|
194
|
+
| Agent | Model | Usage |
|
|
195
|
+
|-------|-------|-------|
|
|
196
|
+
| **team-lead** | Opus 4.6 | `claude --agent team-lead` — multi-service orchestration |
|
|
197
|
+
| **workspace-init** | Sonnet 4.6 | `claude --agent workspace-init` — diagnostic + initial config |
|
|
198
|
+
| **implementer** | Sonnet 4.6 | Task subagent with `isolation: worktree` — isolated implementation |
|
|
198
199
|
|
|
199
200
|
---
|
|
200
201
|
|
|
201
|
-
##
|
|
202
|
+
## The 11 hooks
|
|
202
203
|
|
|
203
|
-
|
|
204
|
+
All hooks are **non-blocking** (exit 0 + warning). No hook blocks the session.
|
|
204
205
|
|
|
205
|
-
| Hook | Event |
|
|
206
|
-
|
|
207
|
-
| **block-orchestrator-writes** | `PreToolUse` Write\|Edit\|MultiEdit |
|
|
208
|
-
| **validate-spawn-prompt** | `PreToolUse` Teammate | Warning
|
|
209
|
-
| **session-start-context** | `SessionStart` |
|
|
210
|
-
| **user-prompt-guard** | `UserPromptSubmit` | Warning
|
|
211
|
-
| **subagent-start-context** | `SubagentStart` |
|
|
206
|
+
| Hook | Event | Effect |
|
|
207
|
+
|------|-------|--------|
|
|
208
|
+
| **block-orchestrator-writes** | `PreToolUse` Write\|Edit\|MultiEdit | Blocks writes in repos, allows orchestrator/ |
|
|
209
|
+
| **validate-spawn-prompt** | `PreToolUse` Teammate | Warning if missing context (rules, UX, tasks) |
|
|
210
|
+
| **session-start-context** | `SessionStart` | Injects active plans + first session detection |
|
|
211
|
+
| **user-prompt-guard** | `UserPromptSubmit` | Warning if code requested in a repo |
|
|
212
|
+
| **subagent-start-context** | `SubagentStart` | Injects active plan + constitution |
|
|
212
213
|
| **permission-auto-approve** | `PermissionRequest` | Auto-approve Read/Glob/Grep |
|
|
213
|
-
| **track-file-modifications** | `PostToolUse` (async) | Log
|
|
214
|
-
| **teammate-idle-check** | `TeammateIdle` | Warning
|
|
215
|
-
| **task-completed-check** | `TaskCompleted` | Warning
|
|
216
|
-
| **worktree-create-context** | `WorktreeCreate` |
|
|
217
|
-
| **notify-user** | `Notification` |
|
|
214
|
+
| **track-file-modifications** | `PostToolUse` (async) | Log of modified files |
|
|
215
|
+
| **teammate-idle-check** | `TeammateIdle` | Warning if remaining tasks |
|
|
216
|
+
| **task-completed-check** | `TaskCompleted` | Warning if tests failed |
|
|
217
|
+
| **worktree-create-context** | `WorktreeCreate` | Reminder to read repo CLAUDE.md |
|
|
218
|
+
| **notify-user** | `Notification` | Desktop notification |
|
|
218
219
|
|
|
219
220
|
---
|
|
220
221
|
|
|
221
|
-
##
|
|
222
|
+
## The 3 templates
|
|
222
223
|
|
|
223
224
|
| Template | Usage |
|
|
224
225
|
|----------|-------|
|
|
225
|
-
| `workspace.template.md` | Structure
|
|
226
|
-
| `constitution.template.md` | Structure
|
|
227
|
-
| `claude-md.template.md` |
|
|
226
|
+
| `workspace.template.md` | Structure for workspace.md (project, service map, relationships, rules, onboarding) |
|
|
227
|
+
| `constitution.template.md` | Structure for constitution.md (project rules 13+) |
|
|
228
|
+
| `claude-md.template.md` | Standardized structure for repo CLAUDE.md files (stack, arch, rules, tests, anti-patterns) |
|
|
228
229
|
|
|
229
230
|
---
|
|
230
231
|
|
|
231
|
-
## Auto-
|
|
232
|
+
## Auto-discovery of repos
|
|
232
233
|
|
|
233
|
-
|
|
234
|
-
-
|
|
235
|
-
-
|
|
236
|
-
-
|
|
237
|
-
- `/refresh-profiles`
|
|
234
|
+
The orchestrator automatically scans `../` to find sibling repos:
|
|
235
|
+
- Any directory with `.git/` is an available repo
|
|
236
|
+
- The orchestrator excludes itself
|
|
237
|
+
- New repos are flagged at startup
|
|
238
|
+
- `/refresh-profiles` re-reads all repo CLAUDE.md files
|
|
238
239
|
|
|
239
240
|
---
|
|
240
241
|
|
|
241
|
-
##
|
|
242
|
+
## Portability
|
|
242
243
|
|
|
243
|
-
|
|
244
|
-
1.
|
|
244
|
+
The `orchestrator/` directory is portable:
|
|
245
|
+
1. Copy it into any workspace
|
|
245
246
|
2. `cd orchestrator && claude --agent workspace-init`
|
|
246
|
-
3.
|
|
247
|
-
4.
|
|
247
|
+
3. If `workspace.md` contains `[UNCONFIGURED]`, the config flow restarts
|
|
248
|
+
4. Sibling repos are re-discovered automatically
|
|
248
249
|
|
|
249
250
|
---
|
|
250
251
|
|
|
251
|
-
##
|
|
252
|
+
## The constitution
|
|
252
253
|
|
|
253
|
-
###
|
|
254
|
+
### Global (scoped to workspace)
|
|
254
255
|
|
|
255
|
-
12
|
|
256
|
-
|
|
257
|
-
**v4.0
|
|
258
|
-
|
|
256
|
+
12 universal principles in `~/.claude/rules/constitution-en.md`.
|
|
257
|
+
Scoped to orchestrator files (`workspace.md`, `plans/**`, etc.).
|
|
258
|
+
**v4.0**: teammates no longer receive it automatically.
|
|
259
|
+
The orchestrator includes it in every spawn prompt.
|
|
259
260
|
|
|
260
|
-
###
|
|
261
|
+
### Project (to customize)
|
|
261
262
|
|
|
262
|
-
`constitution.md`
|
|
263
|
-
|
|
263
|
+
`constitution.md` in orchestrator/. Contains **only** project-specific
|
|
264
|
+
rules (numbered 13+).
|
|
264
265
|
|
|
265
266
|
---
|
|
266
267
|
|
|
267
|
-
## Recovery
|
|
268
|
+
## Recovery after crash
|
|
268
269
|
|
|
269
|
-
- `claude --resume`
|
|
270
|
-
-
|
|
271
|
-
-
|
|
270
|
+
- `claude --resume` resumes the session with the team-lead agent
|
|
271
|
+
- The SessionStart hook automatically injects active plans
|
|
272
|
+
- The markdown plan on disk is the source of truth
|
|
272
273
|
|
|
273
|
-
| Emoji |
|
|
274
|
+
| Emoji | Status |
|
|
274
275
|
|-------|--------|
|
|
275
276
|
| ⏳ | TODO |
|
|
276
277
|
| 🔄 | IN PROGRESS |
|
|
@@ -279,34 +280,34 @@ specifiques au projet (numerotees 13+).
|
|
|
279
280
|
|
|
280
281
|
---
|
|
281
282
|
|
|
282
|
-
## Versioning
|
|
283
|
+
## Versioning and updates
|
|
283
284
|
|
|
284
|
-
|
|
285
|
+
The package uses semver. The installed version is tracked in `~/.claude/.orchestrator-version`.
|
|
285
286
|
|
|
286
287
|
```bash
|
|
287
|
-
npx
|
|
288
|
-
npx
|
|
289
|
-
npx
|
|
288
|
+
npx cc-workspace version # shows package and installed versions
|
|
289
|
+
npx cc-workspace update # updates if newer version
|
|
290
|
+
npx cc-workspace doctor # full diagnostic
|
|
290
291
|
```
|
|
291
292
|
|
|
292
|
-
|
|
293
|
-
- **
|
|
294
|
-
- **
|
|
295
|
-
- **
|
|
293
|
+
On each `init` or `update`, the CLI compares versions:
|
|
294
|
+
- **Newer version** → overrides skills, rules, agents, hooks
|
|
295
|
+
- **Same version** → skip (unless `--force`)
|
|
296
|
+
- **Workspace files** (workspace.md, constitution.md, plans/) → never overwritten
|
|
296
297
|
|
|
297
298
|
---
|
|
298
299
|
|
|
299
|
-
##
|
|
300
|
+
## Package contents
|
|
300
301
|
|
|
301
302
|
```
|
|
302
|
-
|
|
303
|
-
├── package.json <- npm package, version
|
|
304
|
-
├── bin/cli.js <- CLI (npx
|
|
303
|
+
cc-workspace/
|
|
304
|
+
├── package.json <- npm package, semver version
|
|
305
|
+
├── bin/cli.js <- CLI (npx cc-workspace)
|
|
305
306
|
├── README.md
|
|
306
307
|
├── LICENSE
|
|
307
308
|
│
|
|
308
|
-
└── global-skills/ <-
|
|
309
|
-
├── constitution.md <- 12
|
|
309
|
+
└── global-skills/ <- components installed in ~/.claude/
|
|
310
|
+
├── constitution.md <- 12 principles (EN)
|
|
310
311
|
├── templates/
|
|
311
312
|
│ ├── workspace.template.md
|
|
312
313
|
│ ├── constitution.template.md
|
|
@@ -334,12 +335,12 @@ claude-orchestrator/
|
|
|
334
335
|
|
|
335
336
|
## Idempotence
|
|
336
337
|
|
|
337
|
-
|
|
338
|
-
-
|
|
339
|
-
-
|
|
340
|
-
-
|
|
341
|
-
-
|
|
342
|
-
-
|
|
338
|
+
The setup is safe to re-run:
|
|
339
|
+
- Does not overwrite `workspace.md` or `constitution.md` if already present
|
|
340
|
+
- Always regenerates `service-profiles.md` (fresh scan)
|
|
341
|
+
- Always regenerates `settings.json` and `block-orchestrator-writes.sh` (security)
|
|
342
|
+
- Templates are always copied
|
|
343
|
+
- Global components are only updated if the version is newer
|
|
343
344
|
|
|
344
345
|
---
|
|
345
346
|
|
|
@@ -347,18 +348,18 @@ Le setup est safe a relancer :
|
|
|
347
348
|
|
|
348
349
|
| # | Feature | Detail |
|
|
349
350
|
|---|---------|--------|
|
|
350
|
-
| 1 | **
|
|
351
|
-
| 2 | **
|
|
352
|
-
| 3 | **
|
|
353
|
-
| 4 | **
|
|
354
|
-
| 5 | **Auto
|
|
355
|
-
| 6 | **4 modes
|
|
356
|
-
| 7 | **
|
|
357
|
-
| 8 | **verify-cycle-complete
|
|
358
|
-
| 9 | **
|
|
359
|
-
| 10 | **
|
|
360
|
-
| 11 | **
|
|
361
|
-
| 12 | **
|
|
351
|
+
| 1 | **NPX package** | `npx cc-workspace init/update/doctor`. Semver versioning. |
|
|
352
|
+
| 2 | **Portable orchestrator** | Always in an `orchestrator/` subdirectory. No more child/sibling mode. |
|
|
353
|
+
| 3 | **workspace-init agent** | Diagnostic + interactive config. Replaces [UNCONFIGURED] detection in team-lead. |
|
|
354
|
+
| 4 | **CLAUDE.md template** | `claude-md.template.md` — standardized structure for repos. |
|
|
355
|
+
| 5 | **Auto repo discovery** | Scans `../` for `.git/`. No hardcoded list. |
|
|
356
|
+
| 6 | **4 session modes** | Full, Quick plan, Go direct, Single-service. |
|
|
357
|
+
| 7 | **Warning-only hooks** | No more blocking hooks (exit 2 -> exit 0). |
|
|
358
|
+
| 8 | **verify-cycle-complete removed** | No more exit blocking. |
|
|
359
|
+
| 9 | **Orchestrator can write** | In orchestrator/ only. Dynamic path-aware hook. |
|
|
360
|
+
| 10 | **Scoped constitution** | `globs: ["*"]` -> orchestrator files only. |
|
|
361
|
+
| 11 | **30-line limit removed** | The orchestrator adapts verbosity to context. |
|
|
362
|
+
| 12 | **Structured templates** | workspace.template.md + constitution.template.md + claude-md.template.md. |
|
|
362
363
|
|
|
363
364
|
---
|
|
364
365
|
|
|
@@ -368,15 +369,15 @@ Le setup est safe a relancer :
|
|
|
368
369
|
| # | Fix/Feature | Detail |
|
|
369
370
|
|---|-------------|--------|
|
|
370
371
|
| 1 | Dual-mode setup | `--mode child\|sibling`. Auto-detection. |
|
|
371
|
-
| 2 | Fix frontmatter `invocation:` |
|
|
372
|
-
| 3 | `argument-hint`
|
|
373
|
-
| 4 | Hook `SubagentStart` |
|
|
374
|
-
| 5 | Hook `SubagentStop` (prompt
|
|
372
|
+
| 2 | Fix frontmatter `invocation:` | Replaced by `disable-model-invocation`. |
|
|
373
|
+
| 3 | `argument-hint` on all skills | Improved autocompletion. |
|
|
374
|
+
| 4 | Hook `SubagentStart` | Injects active plan + constitution. |
|
|
375
|
+
| 5 | Hook `SubagentStop` (Haiku prompt) | Evaluates completeness. |
|
|
375
376
|
| 6 | Hook `PermissionRequest` | Auto-approve Read/Glob/Grep. |
|
|
376
|
-
| 7 | Hook `PostToolUse` async |
|
|
377
|
-
| 8 | `hookSpecificOutput` JSON |
|
|
378
|
-
| 9 | `$CLAUDE_PROJECT_DIR` |
|
|
379
|
-
| 10 | `CLAUDE_ENV_FILE`
|
|
377
|
+
| 7 | Hook `PostToolUse` async | Modified files tracking. |
|
|
378
|
+
| 8 | `hookSpecificOutput` JSON | Pattern migration. |
|
|
379
|
+
| 9 | `$CLAUDE_PROJECT_DIR` | Replaces `jq .cwd`. |
|
|
380
|
+
| 10 | `CLAUDE_ENV_FILE` in SessionStart | Exports active plan. |
|
|
380
381
|
| 11 | 14 hooks / 12 events | +4 hooks vs v3.4.2. |
|
|
381
382
|
|
|
382
383
|
</details>
|