@adamancyzhang/claude-orchestrator 0.3.1 → 0.3.2
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 +68 -59
- package/dist/cli/commands.d.ts +2 -2
- package/dist/cli/commands.js +51 -24
- package/dist/cli/commands.js.map +1 -1
- package/dist/config.d.ts +8 -2
- package/dist/config.js +6 -2
- package/dist/config.js.map +1 -1
- package/dist/executor/runner.d.ts +19 -0
- package/dist/executor/runner.js +59 -0
- package/dist/executor/runner.js.map +1 -0
- package/dist/executor/template.d.ts +12 -0
- package/dist/executor/template.js +42 -0
- package/dist/executor/template.js.map +1 -0
- package/dist/hooks/engine.d.ts +22 -0
- package/dist/hooks/engine.js +50 -0
- package/dist/hooks/engine.js.map +1 -0
- package/dist/index.js +16 -15
- package/dist/index.js.map +1 -1
- package/dist/leader/chain-router.d.ts +22 -0
- package/dist/leader/chain-router.js +163 -0
- package/dist/leader/chain-router.js.map +1 -0
- package/dist/leader/event-bus.d.ts +1 -1
- package/dist/leader/event-bus.js +1 -1
- package/dist/leader/event-bus.js.map +1 -1
- package/dist/leader/index.d.ts +1 -2
- package/dist/leader/index.js +30 -18
- package/dist/leader/index.js.map +1 -1
- package/dist/leader/state.js +9 -0
- package/dist/leader/state.js.map +1 -1
- package/dist/leader/tui.d.ts +8 -0
- package/dist/leader/tui.js +66 -4
- package/dist/leader/tui.js.map +1 -1
- package/dist/leader/watcher.d.ts +4 -5
- package/dist/leader/watcher.js +8 -25
- package/dist/leader/watcher.js.map +1 -1
- package/dist/models/schemas.d.ts +256 -0
- package/dist/models/schemas.js +25 -0
- package/dist/models/schemas.js.map +1 -1
- package/dist/skills/claude-orchestrator/SKILL.md +124 -60
- package/dist/templates/{leader-decompose.md → worker-decompose.md} +6 -8
- package/dist/templates/worker-evaluate.md +41 -0
- package/dist/utils/exec.js +2 -0
- package/dist/utils/exec.js.map +1 -1
- package/dist/utils/logger.d.ts +10 -0
- package/dist/utils/logger.js +22 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/worker/evaluator.d.ts +13 -0
- package/dist/worker/evaluator.js +112 -0
- package/dist/worker/evaluator.js.map +1 -0
- package/dist/worker/watcher.d.ts +11 -5
- package/dist/worker/watcher.js +98 -84
- package/dist/worker/watcher.js.map +1 -1
- package/package.json +1 -1
- package/dist/leader/decision-engine.d.ts +0 -35
- package/dist/leader/decision-engine.js +0 -102
- package/dist/leader/decision-engine.js.map +0 -1
- package/dist/leader/task-generator.d.ts +0 -34
- package/dist/leader/task-generator.js +0 -93
- package/dist/leader/task-generator.js.map +0 -1
- package/dist/templates/leader-decide.md +0 -59
package/README.md
CHANGED
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
|
|
23
23
|
Behind the scenes, ZooKeeper acts as the coordination backbone: ephemeral nodes for instance heartbeat, sequential nodes for FIFO task ordering, and watches for real-time change notification.
|
|
24
24
|
|
|
25
|
-
v0.3.
|
|
25
|
+
v0.3.1 delivers a **Leader-Worker CLI-native architecture**: no MCP server, no HTTP. The Leader runs a read-only TUI and acts as a pure message/task router — it never calls `claude -p`. Workers connect directly to ZooKeeper, process messages via `claude -p`, self-evaluate their output, and send structured decisions back to the Leader. All AI intelligence lives in Workers; the Leader only handles mechanical forwarding, task distribution, and recovery. Built-in Claude Code skills (task-planning, task-execution, task-verification, task-review, task-acceptance, task-traceability) enforce a standardized responsibility chain for every task.
|
|
26
26
|
|
|
27
27
|
```
|
|
28
28
|
┌─────────────────────────────────────────────────┐
|
|
@@ -66,10 +66,10 @@ docker-compose up -d
|
|
|
66
66
|
claude-orchestrator setup --leader --name Tom
|
|
67
67
|
|
|
68
68
|
# For each Worker (the doers):
|
|
69
|
-
claude-orchestrator setup --name Jerry --role
|
|
69
|
+
claude-orchestrator setup --name Jerry --role builder
|
|
70
70
|
```
|
|
71
71
|
|
|
72
|
-
This creates `.claude-orchestrator/agents/` with message templates and writes project + global config.
|
|
72
|
+
This creates `.claude-orchestrator/agents/` with message templates, `.claude/skills/` with responsibility-chain skills, and writes project + global config.
|
|
73
73
|
|
|
74
74
|
### 4. Start the Leader
|
|
75
75
|
|
|
@@ -83,11 +83,10 @@ The Leader TUI is read-only — it shows who's online, what tasks are pending/in
|
|
|
83
83
|
### 5. Register a Worker
|
|
84
84
|
|
|
85
85
|
```bash
|
|
86
|
-
#
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
#
|
|
90
|
-
claude-orchestrator register --name Jerry --role developer
|
|
86
|
+
# Reads name/role from .claude-orchestrator/config.json (set during setup).
|
|
87
|
+
# Starts Worker Watcher — listens for messages and auto-processes via claude -p:
|
|
88
|
+
claude-orchestrator register
|
|
89
|
+
# Press Ctrl+C to stop and unregister
|
|
91
90
|
```
|
|
92
91
|
|
|
93
92
|
### 6. Go
|
|
@@ -97,7 +96,7 @@ Now the Leader TUI shows Jerry online. You can push tasks, send messages, and ma
|
|
|
97
96
|
```bash
|
|
98
97
|
claude-orchestrator push-task --title "Implement login endpoint" --priority 0
|
|
99
98
|
claude-orchestrator send-message --to-name Jerry --content "Starting on the auth module?"
|
|
100
|
-
claude-orchestrator
|
|
99
|
+
claude-orchestrator poll-task
|
|
101
100
|
```
|
|
102
101
|
|
|
103
102
|
---
|
|
@@ -108,45 +107,34 @@ claude-orchestrator list-tasks --status pending
|
|
|
108
107
|
|
|
109
108
|
| Component | What it does | ZK magic |
|
|
110
109
|
|-----------|-------------|----------|
|
|
111
|
-
| **Leader** | Read-only TUI,
|
|
112
|
-
| **Worker** | Persistent ZK connection, auto-processes messages via `claude -p
|
|
110
|
+
| **Leader** | Read-only TUI, mechanical message/task router, recovers orphaned tasks. No AI calls. | `/leader` EPHEMERAL — only one Leader at a time |
|
|
111
|
+
| **Worker** | Persistent ZK connection, auto-processes messages via `claude -p`, self-evaluates output | Ephemeral nodes → auto-cleanup on disconnect |
|
|
113
112
|
| **Task Queue** | Push → Claim → In Progress → Complete (or Block/Fail/Retry) | Sequential nodes for FIFO, ephemeral claims for atomic locks |
|
|
114
113
|
| **Message Router** | P2P messages, broadcast, help requests, templates | Persistent-sequential nodes, ZK watches for push |
|
|
115
114
|
| **Context Store** | Shared key-value storage, watch for changes | Persistent nodes, cross-instance visibility |
|
|
116
115
|
|
|
117
116
|
### CLI-Native — No MCP Server
|
|
118
117
|
|
|
119
|
-
v0.3.
|
|
118
|
+
v0.3.x removes the centralized MCP Server entirely. Leader and Workers each connect directly to ZooKeeper. The Leader is a pure router: it forwards requirements to Planner Workers, creates tasks from structured definitions, and mechanically executes EvalDecision JSON from Workers. AI intelligence (task decomposition, self-evaluation) runs exclusively on Workers via `claude -p`. This eliminates 3 layers of indirection (MCP protocol, SSE, HTTP) and makes every node self-contained.
|
|
120
119
|
|
|
121
|
-
### CLI Commands (
|
|
120
|
+
### CLI Commands (15)
|
|
122
121
|
|
|
123
122
|
| Command | What it does |
|
|
124
123
|
|---------|-------------|
|
|
125
124
|
| `leader` | Start Leader node with read-only TUI |
|
|
126
|
-
| `setup` | Initialize environment: templates,
|
|
125
|
+
| `setup` | Initialize environment: templates, skills, config |
|
|
127
126
|
| `register` | Join the swarm. With `--work-dir`: persistent message watcher |
|
|
128
|
-
| `
|
|
129
|
-
| `status` | Health check (ZK connection) |
|
|
130
|
-
| `list-instances` | See who's online |
|
|
127
|
+
| `unregister` | Explicitly unregister an instance |
|
|
131
128
|
| `push-task` | Create a task (optionally assign to someone) |
|
|
132
129
|
| `claim-task` | Grab the next task — atomic, no two instances can claim the same one |
|
|
133
130
|
| `complete-task` | Mark a task done with results |
|
|
131
|
+
| `poll-task` | Check your claimed tasks |
|
|
134
132
|
| `task-block` | Mark a claimed task as blocked (with reason) |
|
|
135
133
|
| `task-fail` | Mark a claimed task as failed (with reason) |
|
|
136
134
|
| `task-retry` | Re-queue a failed task for retry (retry_count + 1, max 3) |
|
|
137
|
-
| `
|
|
138
|
-
| `
|
|
139
|
-
| `
|
|
140
|
-
| `wait-for-message` | Long-poll — block until a message arrives |
|
|
141
|
-
| `dismiss-message` | Delete a message from your inbox |
|
|
142
|
-
| `request-help` | Broadcast a question to the whole team |
|
|
143
|
-
| `set-context` | Write a shared key-value entry |
|
|
144
|
-
| `get-context` | Read a shared key-value entry |
|
|
145
|
-
| `delete-context` | Remove a shared context key |
|
|
146
|
-
| `list-context-keys` | List all context keys |
|
|
147
|
-
| `watch-context` | Watch a context key for changes (blocks until change) |
|
|
148
|
-
| `watch-tasks` | Watch for new tasks (blocks until new task) |
|
|
149
|
-
| `unregister` | Explicitly unregister an instance |
|
|
135
|
+
| `send-message` | DM another instance by name |
|
|
136
|
+
| `poll-message` | Check your inbox |
|
|
137
|
+
| `delete-message` | Delete a message from your inbox |
|
|
150
138
|
| `config` | Show current configuration |
|
|
151
139
|
|
|
152
140
|
All CLI commands return JSON. Every command supports `--zookeeper` / `-z` (or `ZK_HOSTS` env var) for pointing at a remote ZooKeeper.
|
|
@@ -165,12 +153,12 @@ claude-orchestrator leader --name Tom
|
|
|
165
153
|
|
|
166
154
|
**Jerry registers as a Worker:**
|
|
167
155
|
```bash
|
|
168
|
-
claude-orchestrator register
|
|
156
|
+
claude-orchestrator register
|
|
169
157
|
```
|
|
170
158
|
```
|
|
171
159
|
TUI updates:
|
|
172
|
-
[TEAM] Jerry joined (
|
|
173
|
-
[EVENT] 9:15:03 PM Jerry joined (
|
|
160
|
+
[TEAM] Jerry joined (builder)
|
|
161
|
+
[EVENT] 9:15:03 PM Jerry joined (builder)
|
|
174
162
|
```
|
|
175
163
|
|
|
176
164
|
**Tom assigns work (from another terminal):**
|
|
@@ -286,7 +274,7 @@ npm run build
|
|
|
286
274
|
claude-orchestrator leader
|
|
287
275
|
|
|
288
276
|
# Or use the CLI directly
|
|
289
|
-
claude-orchestrator
|
|
277
|
+
claude-orchestrator config
|
|
290
278
|
```
|
|
291
279
|
|
|
292
280
|
### Run Tests
|
|
@@ -299,17 +287,18 @@ npm test
|
|
|
299
287
|
|
|
300
288
|
## Skills for Claude Code
|
|
301
289
|
|
|
302
|
-
The repo includes Claude Code skills that
|
|
290
|
+
The repo includes Claude Code skills that enforce a standardized **responsibility chain**: Plan → Build → Verify → Review → Accept. Each link has a dedicated skill, grounded on the `task-traceability` foundation layer. The `setup` command installs all skills into `.claude/skills/`.
|
|
303
291
|
|
|
304
|
-
| Skill | What it does |
|
|
305
|
-
|
|
306
|
-
| `
|
|
307
|
-
| `
|
|
308
|
-
| `
|
|
309
|
-
| `
|
|
310
|
-
| `
|
|
311
|
-
| `
|
|
312
|
-
| `orchestrator
|
|
292
|
+
| Skill | Role | What it does |
|
|
293
|
+
|-------|------|-------------|
|
|
294
|
+
| `task-planning` | Planner | Analyze requirements, define blueprints, break down tasks, push to queue |
|
|
295
|
+
| `task-execution` | Builder | Claim tasks, implement against blueprints, commit code with traceability |
|
|
296
|
+
| `task-verification` | Verifier | Independently verify Builder output against Plan criteria |
|
|
297
|
+
| `task-review` | Reviewer | Review full chain (Plan→Build→Verify) for design consistency |
|
|
298
|
+
| `task-acceptance` | Accepter | Validate final deliverable against business criteria, sign Go/No-Go |
|
|
299
|
+
| `task-traceability` | Foundation | Trace → Execute → Map → Evidence → Record — all roles |
|
|
300
|
+
| `claude-orchestrator` | Infrastructure | Full CLI reference — all 15 commands with examples |
|
|
301
|
+
| `claude-code-developer` | Infrastructure | Hooks, settings, MCP, CLI reference for extending Claude Code |
|
|
313
302
|
|
|
314
303
|
---
|
|
315
304
|
|
|
@@ -332,11 +321,12 @@ Zero external database. All state lives in ZooKeeper.
|
|
|
332
321
|
|
|
333
322
|
| Role | Value | Typical behavior |
|
|
334
323
|
|------|-------|-----------------|
|
|
335
|
-
| Leader | `leader` | Runs TUI,
|
|
336
|
-
|
|
|
337
|
-
|
|
|
338
|
-
|
|
|
339
|
-
|
|
|
324
|
+
| Leader | `leader` | Runs TUI, mechanical message/task routing, recovers orphaned tasks |
|
|
325
|
+
| Planner | `planner` | Decomposes requirements into task chains, defines blueprints |
|
|
326
|
+
| Builder | `builder` | Claims build tasks, writes code, submits PRs |
|
|
327
|
+
| Verifier | `verifier` | Claims verify tasks, checks Builder output against Plan |
|
|
328
|
+
| Reviewer | `reviewer` | Claims review tasks, quality gate for design consistency |
|
|
329
|
+
| Accepter | `accepter` | Claims accept tasks, final Go/No-Go validation |
|
|
340
330
|
|
|
341
331
|
---
|
|
342
332
|
|
|
@@ -355,24 +345,34 @@ Zero external database. All state lives in ZooKeeper.
|
|
|
355
345
|
|
|
356
346
|
```
|
|
357
347
|
├── src/
|
|
358
|
-
│ ├── index.ts # CLI entry point (commander,
|
|
348
|
+
│ ├── index.ts # CLI entry point (commander, 15 commands)
|
|
359
349
|
│ ├── config.ts # Configuration handling
|
|
360
350
|
│ ├── cli/
|
|
361
351
|
│ │ └── commands.ts # CLI subcommand implementations
|
|
362
|
-
│ ├── leader/ # Leader node (v0.3.
|
|
352
|
+
│ ├── leader/ # Leader node (v0.3.1)
|
|
363
353
|
│ │ ├── index.ts # startup / shutdown orchestration
|
|
364
354
|
│ │ ├── tui.ts # ANSI-based read-only TUI
|
|
365
|
-
│ │ ├── event-bus.ts # typed EventEmitter
|
|
355
|
+
│ │ ├── event-bus.ts # typed EventEmitter (13 events)
|
|
366
356
|
│ │ ├── state.ts # centralized LeaderState
|
|
367
357
|
│ │ ├── monitor.ts # WorkerMonitor — join/leave detection
|
|
368
358
|
│ │ ├── orchestrator.ts # TaskOrchestrator — lifecycle tracking
|
|
369
359
|
│ │ ├── recovery.ts # TaskRecovery — orphan recovery (max 3 retries)
|
|
370
|
-
│ │
|
|
371
|
-
│
|
|
372
|
-
│
|
|
360
|
+
│ │ ├── watcher.ts # LeaderWatcher — message processing
|
|
361
|
+
│ │ └── chain-router.ts # ChainRouter — mechanical routing (no AI)
|
|
362
|
+
│ ├── worker/ # Worker node (v0.3.1)
|
|
363
|
+
│ │ ├── watcher.ts # WorkerWatcher — ZK watch loop + orchestration
|
|
364
|
+
│ │ └── evaluator.ts # SelfEvaluator — built-in self-evaluation
|
|
365
|
+
│ ├── executor/ # Template execution engine
|
|
366
|
+
│ │ ├── template.ts # TemplateEngine — loading + rendering
|
|
367
|
+
│ │ └── runner.ts # ClaudeRunner — CLI execution wrapper
|
|
373
368
|
│ ├── templates/ # Built-in agent templates
|
|
374
|
-
│ │ ├──
|
|
375
|
-
│ │
|
|
369
|
+
│ │ ├── worker-decompose.md # Planner decompose prompt
|
|
370
|
+
│ │ ├── worker-evaluate.md # Worker self-evaluation prompt
|
|
371
|
+
│ │ ├── worker-plan.md # Planner template (task-traceability + task-acceptance)
|
|
372
|
+
│ │ ├── worker-build.md # Builder template (task-traceability)
|
|
373
|
+
│ │ ├── worker-verify.md # Verifier template (task-traceability)
|
|
374
|
+
│ │ ├── worker-review.md # Reviewer template (task-traceability)
|
|
375
|
+
│ │ └── worker-accept.md # Accepter template (task-traceability + task-acceptance)
|
|
376
376
|
│ ├── zk/
|
|
377
377
|
│ │ ├── client.ts # ZooKeeper connection management
|
|
378
378
|
│ │ ├── paths.ts # ZK path constants
|
|
@@ -386,7 +386,8 @@ Zero external database. All state lives in ZooKeeper.
|
|
|
386
386
|
│ │ └── schemas.ts # Zod schemas and inferred types
|
|
387
387
|
│ └── utils/
|
|
388
388
|
│ ├── exec.ts # Shell execution (execWithTee)
|
|
389
|
-
│
|
|
389
|
+
│ ├── output.ts # CLI output formatting
|
|
390
|
+
│ └── logger.ts # Tagged logger for contextual output
|
|
390
391
|
├── bin/
|
|
391
392
|
│ └── claude-orchestrator # npm CLI entry (Node.js)
|
|
392
393
|
├── scripts/
|
|
@@ -395,7 +396,15 @@ Zero external database. All state lives in ZooKeeper.
|
|
|
395
396
|
│ ├── start-worker.sh # Worker launcher
|
|
396
397
|
│ ├── stop-all.sh # Tear down
|
|
397
398
|
│ └── publish.sh # npm publish pipeline
|
|
398
|
-
├── skills/ # Claude Code skills
|
|
399
|
+
├── skills/ # Claude Code skills (8 skills, responsibility chain)
|
|
400
|
+
│ ├── task-planning/ # Planner skill
|
|
401
|
+
│ ├── task-execution/ # Builder skill
|
|
402
|
+
│ ├── task-verification/ # Verifier skill
|
|
403
|
+
│ ├── task-review/ # Reviewer skill
|
|
404
|
+
│ ├── task-acceptance/ # Accepter skill
|
|
405
|
+
│ ├── task-traceability/ # Foundation layer skill
|
|
406
|
+
│ ├── claude-orchestrator/ # CLI reference skill
|
|
407
|
+
│ └── claude-code-developer/ # Claude Code extension skill
|
|
399
408
|
├── docs/
|
|
400
409
|
│ ├── v0.1.0/ # Archived Python v0.1.0 docs
|
|
401
410
|
│ ├── v0.2.0/ # Archived MCP-based v0.2.x docs
|
package/dist/cli/commands.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export declare function cmdRegister(zkHosts: string): Promise<void>;
|
|
1
|
+
export declare function cmdRegister(zkHosts: string, debug?: boolean): Promise<void>;
|
|
2
2
|
export declare function cmdPushTask(zkHosts: string, cliInstanceId: string | undefined, title: string, description: string, priority: number, assignee?: string, link?: string, chainId?: string, dependsOn?: string[], blockedBy?: string[]): Promise<void>;
|
|
3
3
|
export declare function cmdClaimTask(zkHosts: string, cliInstanceId: string | undefined): Promise<void>;
|
|
4
4
|
export declare function cmdCompleteTask(zkHosts: string, cliInstanceId: string | undefined, taskId: string, result: string): Promise<void>;
|
|
5
5
|
export declare function cmdPollTask(zkHosts: string, statusFilter?: string): Promise<void>;
|
|
6
|
-
export declare function cmdSendMessage(zkHosts: string, cliInstanceId: string | undefined, content: string
|
|
6
|
+
export declare function cmdSendMessage(zkHosts: string, cliInstanceId: string | undefined, content: string): Promise<void>;
|
|
7
7
|
export declare function cmdPollMessage(zkHosts: string, cliInstanceId: string | undefined): Promise<void>;
|
|
8
8
|
export declare function cmdDeleteMessage(zkHosts: string, cliInstanceId: string | undefined, messageId: string): Promise<void>;
|
|
9
9
|
export declare function cmdUnregister(zkHosts: string, cliInstanceId: string | undefined): Promise<void>;
|
package/dist/cli/commands.js
CHANGED
|
@@ -7,8 +7,13 @@ import { TaskQueue } from "../modules/task-queue.js";
|
|
|
7
7
|
import { MessageRouter } from "../modules/message-router.js";
|
|
8
8
|
import { loadConfig, loadInstanceConfig, saveInstanceConfig, saveInstanceId, loadInstanceId, loadGlobalConfig, resolveInstanceId } from "../config.js";
|
|
9
9
|
import { output } from "../utils/output.js";
|
|
10
|
+
import { Logger } from "../utils/logger.js";
|
|
11
|
+
import { HookEngine } from "../hooks/engine.js";
|
|
10
12
|
import { WorkerWatcher } from "../worker/watcher.js";
|
|
11
|
-
|
|
13
|
+
import { TemplateEngine } from "../executor/template.js";
|
|
14
|
+
import { ClaudeRunner } from "../executor/runner.js";
|
|
15
|
+
import { SelfEvaluator } from "../worker/evaluator.js";
|
|
16
|
+
const VALID_ROLES = ["planner", "builder", "verifier", "reviewer", "accepter"];
|
|
12
17
|
async function withZk(hosts, fn) {
|
|
13
18
|
const zk = new ZkClient(hosts);
|
|
14
19
|
await zk.connect();
|
|
@@ -22,7 +27,9 @@ async function withZk(hosts, fn) {
|
|
|
22
27
|
await zk.disconnect();
|
|
23
28
|
}
|
|
24
29
|
}
|
|
25
|
-
export async function cmdRegister(zkHosts) {
|
|
30
|
+
export async function cmdRegister(zkHosts, debug = false) {
|
|
31
|
+
if (debug)
|
|
32
|
+
Logger.enableDebug();
|
|
26
33
|
// Read from project config only — no CLI args, no global fallback
|
|
27
34
|
const projectConfig = loadInstanceConfig();
|
|
28
35
|
const name = projectConfig.name;
|
|
@@ -51,7 +58,14 @@ export async function cmdRegister(zkHosts) {
|
|
|
51
58
|
// Resolve leader instance ID for CACHE_DIR path
|
|
52
59
|
const leaderData = await zk.getLeader();
|
|
53
60
|
const leaderInstanceId = leaderData?.instance_id ?? instance.id;
|
|
54
|
-
const
|
|
61
|
+
const workDir = process.cwd();
|
|
62
|
+
const agentsDir = path.join(workDir, ".claude-orchestrator", "agents");
|
|
63
|
+
const hooks = new HookEngine();
|
|
64
|
+
hooks.load(resolvedConfig.hooks);
|
|
65
|
+
const templateEngine = new TemplateEngine(agentsDir);
|
|
66
|
+
const runner = new ClaudeRunner(resolvedConfig.cliCommand, resolvedConfig.cacheDir, leaderInstanceId, workDir);
|
|
67
|
+
const evaluator = new SelfEvaluator(templateEngine, runner, name, role);
|
|
68
|
+
const watcher = new WorkerWatcher(zk, instance.id, leaderInstanceId, hooks, templateEngine, runner, evaluator);
|
|
55
69
|
const onSigint = () => {
|
|
56
70
|
watcher.stop();
|
|
57
71
|
};
|
|
@@ -66,10 +80,11 @@ export async function cmdRegister(zkHosts) {
|
|
|
66
80
|
}
|
|
67
81
|
}, 200);
|
|
68
82
|
});
|
|
83
|
+
const logger = new Logger("CLI");
|
|
69
84
|
await registry.unregister(instance.id);
|
|
70
85
|
await zk.disconnect();
|
|
71
86
|
process.removeListener("SIGINT", onSigint);
|
|
72
|
-
|
|
87
|
+
logger.info("Unregistered. Goodbye.");
|
|
73
88
|
}
|
|
74
89
|
export async function cmdPushTask(zkHosts, cliInstanceId, title, description, priority, assignee, link, chainId, dependsOn, blockedBy) {
|
|
75
90
|
await withZk(zkHosts, async ({ taskQueue }) => {
|
|
@@ -103,7 +118,7 @@ export async function cmdPollTask(zkHosts, statusFilter) {
|
|
|
103
118
|
output(tasks);
|
|
104
119
|
});
|
|
105
120
|
}
|
|
106
|
-
export async function cmdSendMessage(zkHosts, cliInstanceId, content
|
|
121
|
+
export async function cmdSendMessage(zkHosts, cliInstanceId, content) {
|
|
107
122
|
await withZk(zkHosts, async ({ registry, messageRouter }) => {
|
|
108
123
|
const instanceId = cliInstanceId || loadInstanceId() || "";
|
|
109
124
|
let fromName;
|
|
@@ -114,7 +129,13 @@ export async function cmdSendMessage(zkHosts, cliInstanceId, content, toInstance
|
|
|
114
129
|
else {
|
|
115
130
|
fromName = "CLI";
|
|
116
131
|
}
|
|
117
|
-
const
|
|
132
|
+
const instances = await registry.listAll();
|
|
133
|
+
const leader = instances.find((i) => i.role === "leader");
|
|
134
|
+
if (!leader) {
|
|
135
|
+
throw new Error("No leader instance found");
|
|
136
|
+
}
|
|
137
|
+
const leaderId = leader.id;
|
|
138
|
+
const messages = await messageRouter.send(instanceId, fromName, content, leaderId, false, undefined, false);
|
|
118
139
|
const targets = messages.map((m) => m.to_instance);
|
|
119
140
|
output({ sent_to: targets, message_count: targets.length });
|
|
120
141
|
});
|
|
@@ -151,10 +172,16 @@ export async function cmdSetup(options) {
|
|
|
151
172
|
const existingGlobal = loadGlobalConfig();
|
|
152
173
|
const globalZk = existingGlobal.zookeeper || { url: "127.0.0.1:2181", root_path: "/claude-orchestrator", auth: null };
|
|
153
174
|
const prevCommands = existingGlobal.commands;
|
|
175
|
+
const prevHooks = existingGlobal.hooks;
|
|
154
176
|
saveInstanceConfig({
|
|
155
177
|
commands: {
|
|
156
178
|
"claude-cli": command || prevCommands?.["claude-cli"] || defaultCliCommand,
|
|
157
|
-
|
|
179
|
+
},
|
|
180
|
+
hooks: prevHooks || {
|
|
181
|
+
leader_message_start: null,
|
|
182
|
+
leader_message_end: null,
|
|
183
|
+
worker_message_start: null,
|
|
184
|
+
worker_message_end: null,
|
|
158
185
|
},
|
|
159
186
|
cache_dir: cacheDir || existingGlobal.cache_dir || defaultCacheDir,
|
|
160
187
|
zookeeper: {
|
|
@@ -182,8 +209,8 @@ export async function cmdSetup(options) {
|
|
|
182
209
|
const templateDir = path.join(__dirname, "..", "templates");
|
|
183
210
|
const agentsDir = path.join(process.cwd(), ".claude-orchestrator", "agents");
|
|
184
211
|
const templates = {
|
|
185
|
-
"
|
|
186
|
-
"
|
|
212
|
+
"worker-decompose.md": path.join(templateDir, "worker-decompose.md"),
|
|
213
|
+
"worker-evaluate.md": path.join(templateDir, "worker-evaluate.md"),
|
|
187
214
|
"worker-plan.md": path.join(templateDir, "worker-plan.md"),
|
|
188
215
|
"worker-build.md": path.join(templateDir, "worker-build.md"),
|
|
189
216
|
"worker-verify.md": path.join(templateDir, "worker-verify.md"),
|
|
@@ -207,27 +234,29 @@ export async function cmdSetup(options) {
|
|
|
207
234
|
// ── Copy skills to .claude/skills/ ──
|
|
208
235
|
const skillsSrcDir = path.join(__dirname, "..", "skills");
|
|
209
236
|
const skillsDstDir = path.join(process.cwd(), ".claude", "skills");
|
|
237
|
+
const SKILLS_TO_COPY = [
|
|
238
|
+
"task-planning",
|
|
239
|
+
"task-execution",
|
|
240
|
+
"task-verification",
|
|
241
|
+
"task-review",
|
|
242
|
+
"task-acceptance",
|
|
243
|
+
"task-traceability",
|
|
244
|
+
];
|
|
210
245
|
const skillsWritten = [];
|
|
211
|
-
const skillsSkipped = [];
|
|
212
246
|
if (fs.existsSync(skillsSrcDir)) {
|
|
213
|
-
const
|
|
214
|
-
.filter(d => d.isDirectory())
|
|
215
|
-
.map(d => d.name);
|
|
216
|
-
for (const skillName of skillNames) {
|
|
247
|
+
for (const skillName of SKILLS_TO_COPY) {
|
|
217
248
|
const srcSkillPath = path.join(skillsSrcDir, skillName, "SKILL.md");
|
|
218
249
|
const dstSkillDir = path.join(skillsDstDir, skillName);
|
|
219
250
|
const dstSkillPath = path.join(dstSkillDir, "SKILL.md");
|
|
220
251
|
if (!fs.existsSync(srcSkillPath))
|
|
221
252
|
continue;
|
|
222
|
-
fs.
|
|
223
|
-
|
|
224
|
-
skillsSkipped.push(skillName);
|
|
225
|
-
}
|
|
226
|
-
else {
|
|
227
|
-
const content = fs.readFileSync(srcSkillPath, "utf-8");
|
|
228
|
-
fs.writeFileSync(dstSkillPath, content);
|
|
229
|
-
skillsWritten.push(skillName);
|
|
253
|
+
if (fs.existsSync(dstSkillDir)) {
|
|
254
|
+
fs.rmSync(dstSkillDir, { recursive: true, force: true });
|
|
230
255
|
}
|
|
256
|
+
fs.mkdirSync(dstSkillDir, { recursive: true });
|
|
257
|
+
const content = fs.readFileSync(srcSkillPath, "utf-8");
|
|
258
|
+
fs.writeFileSync(dstSkillPath, content);
|
|
259
|
+
skillsWritten.push(skillName);
|
|
231
260
|
}
|
|
232
261
|
}
|
|
233
262
|
const result = {
|
|
@@ -242,8 +271,6 @@ export async function cmdSetup(options) {
|
|
|
242
271
|
result["templates_skipped"] = skipped;
|
|
243
272
|
if (skillsWritten.length > 0)
|
|
244
273
|
result["skills_written"] = skillsWritten;
|
|
245
|
-
if (skillsSkipped.length > 0)
|
|
246
|
-
result["skills_skipped"] = skillsSkipped;
|
|
247
274
|
if (!resolvedName)
|
|
248
275
|
result["warning"] = "No name provided. Use --name to set instance name.";
|
|
249
276
|
output(result);
|
package/dist/cli/commands.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -7,13 +7,19 @@ export interface ZkConfig {
|
|
|
7
7
|
}
|
|
8
8
|
export interface CommandsConfig {
|
|
9
9
|
"claude-cli"?: string;
|
|
10
|
-
|
|
10
|
+
}
|
|
11
|
+
export interface HooksConfig {
|
|
12
|
+
leader_message_start?: string | null;
|
|
13
|
+
leader_message_end?: string | null;
|
|
14
|
+
worker_message_start?: string | null;
|
|
15
|
+
worker_message_end?: string | null;
|
|
11
16
|
}
|
|
12
17
|
export interface InstanceConfig {
|
|
13
18
|
instance_id?: string;
|
|
14
19
|
name?: string;
|
|
15
20
|
role?: string;
|
|
16
21
|
commands?: CommandsConfig;
|
|
22
|
+
hooks?: HooksConfig;
|
|
17
23
|
cache_dir?: string;
|
|
18
24
|
zookeeper?: ZkConfig;
|
|
19
25
|
}
|
|
@@ -21,7 +27,7 @@ export interface ResolvedConfig {
|
|
|
21
27
|
zk: ZkConfig;
|
|
22
28
|
cacheDir: string;
|
|
23
29
|
cliCommand: string;
|
|
24
|
-
|
|
30
|
+
hooks: HooksConfig;
|
|
25
31
|
instanceId?: string;
|
|
26
32
|
name?: string;
|
|
27
33
|
role?: string;
|
package/dist/config.js
CHANGED
|
@@ -36,11 +36,15 @@ export function loadConfig(cliOpts) {
|
|
|
36
36
|
// Command: project overrides global
|
|
37
37
|
const mergedCommands = project.commands || global.commands;
|
|
38
38
|
const cliCommand = mergedCommands?.["claude-cli"] || defaultCliCommand();
|
|
39
|
-
|
|
39
|
+
// Hooks: project overrides global
|
|
40
|
+
const hooks = {
|
|
41
|
+
...global.hooks,
|
|
42
|
+
...project.hooks,
|
|
43
|
+
};
|
|
40
44
|
const instanceId = project.instance_id;
|
|
41
45
|
const name = project.name;
|
|
42
46
|
const role = project.role;
|
|
43
|
-
return { zk, cacheDir, cliCommand,
|
|
47
|
+
return { zk, cacheDir, cliCommand, hooks, instanceId, name, role };
|
|
44
48
|
}
|
|
45
49
|
function readConfigFile(filePath) {
|
|
46
50
|
try {
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,sBAAsB,CAAC,CAAC;AACjF,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare class ClaudeRunner {
|
|
2
|
+
private command;
|
|
3
|
+
private cacheDir;
|
|
4
|
+
private leaderInstanceId;
|
|
5
|
+
private workDir;
|
|
6
|
+
private logger;
|
|
7
|
+
private resolvedCache;
|
|
8
|
+
constructor(command: string, cacheDir: string, leaderInstanceId: string, workDir: string);
|
|
9
|
+
private dateDir;
|
|
10
|
+
ensureDir(dir: string): void;
|
|
11
|
+
taskDocPath(taskId: string): string;
|
|
12
|
+
logPath(uniqueKey: string): string;
|
|
13
|
+
resultPath(uniqueKey: string): string;
|
|
14
|
+
evalLogPath(uniqueKey: string): string;
|
|
15
|
+
evalResultPath(uniqueKey: string): string;
|
|
16
|
+
run(prompt: string, logPath: string): Promise<{
|
|
17
|
+
code: number;
|
|
18
|
+
}>;
|
|
19
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import * as fs from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { execWithTee } from "../utils/exec.js";
|
|
4
|
+
import { expandHomeDir } from "../config.js";
|
|
5
|
+
import { Logger } from "../utils/logger.js";
|
|
6
|
+
export class ClaudeRunner {
|
|
7
|
+
command;
|
|
8
|
+
cacheDir;
|
|
9
|
+
leaderInstanceId;
|
|
10
|
+
workDir;
|
|
11
|
+
logger = new Logger("ClaudeRunner");
|
|
12
|
+
resolvedCache;
|
|
13
|
+
constructor(command, cacheDir, leaderInstanceId, workDir) {
|
|
14
|
+
this.command = command;
|
|
15
|
+
this.cacheDir = cacheDir;
|
|
16
|
+
this.leaderInstanceId = leaderInstanceId;
|
|
17
|
+
this.workDir = workDir;
|
|
18
|
+
this.resolvedCache = expandHomeDir(path.join(this.cacheDir, this.leaderInstanceId));
|
|
19
|
+
}
|
|
20
|
+
dateDir() {
|
|
21
|
+
return new Date().toISOString().slice(0, 10);
|
|
22
|
+
}
|
|
23
|
+
ensureDir(dir) {
|
|
24
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
25
|
+
}
|
|
26
|
+
taskDocPath(taskId) {
|
|
27
|
+
const dir = path.join(this.resolvedCache, "tasks", this.dateDir());
|
|
28
|
+
this.ensureDir(dir);
|
|
29
|
+
return path.join(dir, `${taskId}.md`);
|
|
30
|
+
}
|
|
31
|
+
logPath(uniqueKey) {
|
|
32
|
+
const dir = path.join(this.resolvedCache, "logs", this.dateDir());
|
|
33
|
+
this.ensureDir(dir);
|
|
34
|
+
return path.join(dir, `${uniqueKey}.log`);
|
|
35
|
+
}
|
|
36
|
+
resultPath(uniqueKey) {
|
|
37
|
+
const dir = path.join(this.resolvedCache, "results", this.dateDir());
|
|
38
|
+
this.ensureDir(dir);
|
|
39
|
+
return path.join(dir, `${uniqueKey}-result.md`);
|
|
40
|
+
}
|
|
41
|
+
evalLogPath(uniqueKey) {
|
|
42
|
+
const dir = path.join(this.resolvedCache, "eval", this.dateDir());
|
|
43
|
+
this.ensureDir(dir);
|
|
44
|
+
return path.join(dir, `${uniqueKey}-eval.log`);
|
|
45
|
+
}
|
|
46
|
+
evalResultPath(uniqueKey) {
|
|
47
|
+
const dir = path.join(this.resolvedCache, "eval", this.dateDir());
|
|
48
|
+
this.ensureDir(dir);
|
|
49
|
+
return path.join(dir, `${uniqueKey}-eval-result.md`);
|
|
50
|
+
}
|
|
51
|
+
async run(prompt, logPath) {
|
|
52
|
+
if (Logger.isDebug()) {
|
|
53
|
+
this.logger.debug(`Prompt (${prompt.length} chars):\n${prompt.slice(0, 1000)}${prompt.length > 1000 ? "\n... (truncated)" : ""}`);
|
|
54
|
+
this.logger.debug(`Log: ${logPath}`);
|
|
55
|
+
}
|
|
56
|
+
return execWithTee(this.command, prompt, logPath, this.workDir);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=runner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/executor/runner.ts"],"names":[],"mappings":"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"}
|