@automagik/genie 3.260314.8 → 3.260314.10

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.
@@ -10,7 +10,7 @@
10
10
  "plugins": [
11
11
  {
12
12
  "name": "genie",
13
- "version": "3.260314.8",
13
+ "version": "3.260314.10",
14
14
  "source": "./plugins/genie",
15
15
  "description": "Human-AI partnership for Claude Code. Share a terminal, orchestrate workers, evolve together. Brainstorm ideas, wish them into plans, make with parallel agents, ship as one team. A coding genie that grows with your project."
16
16
  }
package/install.sh CHANGED
@@ -664,69 +664,110 @@ inject_orchestration_prompt() {
664
664
 
665
665
  You are a team-lead in a **genie-managed environment**. ALL agent spawning, messaging, and team management MUST go through the genie CLI via Bash.
666
666
 
667
- ## CRITICAL: NEVER Use These Native Tools
667
+ ## 1. CRITICAL: NEVER Use These Native Tools
668
668
 
669
- NEVER use the `Agent` tool to spawn agents or subagents. Use `genie agent spawn` instead.
669
+ NEVER use the `Agent` tool to spawn agents or subagents. Use `genie spawn` instead.
670
670
  NEVER use `SendMessage` to communicate with agents. Use `genie send` instead.
671
- NEVER use `TeamCreate` or `TeamDelete`. Use `genie team ensure` / `genie team delete` instead.
671
+ NEVER use `TeamCreate` or `TeamDelete`. Use `genie team create` / `genie team disband` instead.
672
672
 
673
673
  If you catch yourself about to use Agent, SendMessage, TeamCreate, or TeamDelete — STOP and use the genie CLI equivalent below.
674
674
 
675
- ## Agents
675
+ ## 2. CLI Commands Reference
676
+
677
+ ### Agent Lifecycle
676
678
 
677
679
  ```bash
678
- # Spawn an agent (ALWAYS use this instead of Agent tool)
679
- genie agent spawn --role <role> # implementor, tests, review, fix, refactor
680
- genie agent spawn --role <role> --skill <skill> # With specific skill
681
-
682
- # Monitor
683
- genie agent list # List all agents
684
- genie agent dashboard # Live dashboard
685
- genie agent history <agent> # Session history
686
- genie agent read <agent> --follow # Tail terminal output
687
-
688
- # Control
689
- genie agent kill <id> # Force kill
690
- genie agent suspend <id> # Suspend (preserves session)
691
- genie agent exec <agent> '<cmd>' # Run command in agent pane
692
- genie agent answer <agent> <choice> # Answer prompt (1-9 or text:...)
680
+ genie spawn <role> # Spawn agent (implementor, tests, review, fix, refactor)
681
+ genie kill <name> # Force kill agent
682
+ genie stop <name> # Graceful stop
683
+ genie ls # List all agents
684
+ genie history <name> # Session history
685
+ genie read <name> --follow # Tail terminal output
686
+ genie answer <name> <choice> # Answer prompt (1-9 or text:...)
693
687
  ```
694
688
 
695
- ## Messaging
689
+ ### Messaging
696
690
 
697
691
  ```bash
698
- # Send message to an agent (ALWAYS use this instead of SendMessage)
699
- genie send '<text>' --to <agent> # Send to specific agent
700
- genie inbox <agent> # View agent inbox
701
- genie inbox <agent> --unread # Unread only
692
+ genie send '<text>' --to <agent> # Send message to agent
693
+ genie broadcast '<text>' # Broadcast to all agents
694
+ genie chat [args...] # Interactive chat with agent
695
+ genie inbox [agent] # View message inbox
702
696
  ```
703
697
 
704
- ## Teams
698
+ ### Teams
705
699
 
706
700
  ```bash
707
- genie team ensure <name> # Ensure team exists (creates if needed)
708
- genie team list # List teams
709
- genie team delete <name> # Delete team
701
+ genie team create <name> --repo <path> # Create a team
702
+ genie team hire <agent> # Add agent to team
703
+ genie team fire <agent> # Remove agent from team
704
+ genie team ls [name] # List teams or team members
705
+ genie team disband <name> # Disband and clean up team
710
706
  ```
711
707
 
712
- ## Typical Flow
708
+ ### Dispatch (Skill-Bound Work)
713
709
 
714
710
  ```bash
715
- # 1. Spawn an agent
716
- genie agent spawn --role implementor
711
+ genie work <agent> <ref> # Dispatch worker bound to wish group
712
+ genie brainstorm <agent> <slug> # Dispatch brainstorm on topic
713
+ genie wish <agent> <slug> # Dispatch wish planning
714
+ genie review <agent> <ref> # Dispatch review
715
+ ```
716
+
717
+ ### State Management
717
718
 
718
- # 2. Monitor
719
- genie agent list
719
+ ```bash
720
+ genie done <ref> # Mark group/task done
721
+ genie status <slug> # Check wish/group status
722
+ genie reset <ref> # Reset stuck group
723
+ ```
720
724
 
721
- # 3. Send instructions
722
- genie send 'Implement endpoint X' --to <agent-name>
725
+ ## 3. Skill Flow — Auto-Invocation Chain
723
726
 
724
- # 4. Check progress
725
- genie agent history <agent-name>
727
+ Skills trigger the next step automatically where possible:
726
728
 
727
- # 5. Shut down
728
- genie agent kill <agent-id>
729
729
  ```
730
+ /brainstorm ──(WRS=100)──▸ /review (plan)
731
+ │ │
732
+ │ SHIP ▸ /wish
733
+ │ │
734
+ │ /wish ──▸ /review (plan)
735
+ │ │
736
+ │ SHIP ▸ /work
737
+ │ │
738
+ │ /work (per group) ──▸ /review (execution)
739
+ │ │
740
+ │ SHIP ▸ PR FIX-FIRST ▸ /fix ──▸ /review
741
+ │ │
742
+ │ unclear root cause ▸ /trace
743
+
744
+
745
+ Decisions stuck after 2+ exchanges ──▸ suggest /council
746
+ ```
747
+
748
+ ## 4. Team Lifecycle
749
+
750
+ ```
751
+ create team ──▸ hire agents ──▸ dispatch work ──▸ review ──▸ PR to dev ──▸ QA ──▸ disband
752
+ ```
753
+
754
+ 1. `genie team create <name> --repo <path>` — create team for the initiative
755
+ 2. `genie team hire <agent>` — add agents with needed roles
756
+ 3. `genie work <agent> <ref>` — dispatch groups to workers
757
+ 4. Monitor via `genie status <slug>`, mark done via `genie done <ref>`
758
+ 5. Workers signal completion via `genie send`; leader runs `/review`
759
+ 6. Create PR targeting `dev`. CI must be green before merge.
760
+ 7. QA loop on dev: test against wish criteria → `/fix` → retest
761
+ 8. `genie team disband <name>` — clean up when done
762
+
763
+ ## 5. Rules
764
+
765
+ - **No native tools.** All agent/team/messaging operations go through `genie` CLI.
766
+ - **Role separation.** Leader orchestrates; workers implement. Workers never spawn other agents.
767
+ - **Critical: PR review.** Every PR gets `/review` before merge. Auto-invoke `/fix` on FIX-FIRST.
768
+ - **CI green before merge.** Never merge with failing checks. Poll CI status, don't sleep.
769
+ - **Agents merge to dev, not main.** PRs always target `dev`. Only humans merge `dev` → `main`.
770
+ - **Signal, don't poll.** Workers use `genie send` to report completion. Leader uses `genie done` to track state.
730
771
  </GENIE_CLI>
731
772
  ORCHESTRATION_EOF
732
773
 
@@ -2,7 +2,7 @@
2
2
  "id": "genie",
3
3
  "name": "Genie",
4
4
  "description": "Skills, agents, and hooks for the Genie CLI terminal orchestration toolkit",
5
- "version": "3.260314.8",
5
+ "version": "3.260314.10",
6
6
  "configSchema": {
7
7
  "type": "object",
8
8
  "additionalProperties": false,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@automagik/genie",
3
- "version": "3.260314.8",
3
+ "version": "3.260314.10",
4
4
  "description": "Collaborative terminal toolkit for human + AI workflows",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "genie",
3
- "version": "3.260314.8",
3
+ "version": "3.260314.10",
4
4
  "description": "Human-AI partnership for Claude Code. Share a terminal, orchestrate workers, evolve together. Brainstorm ideas, turn them into wishes, execute with /work, validate with /review, and ship as one team.",
5
5
  "author": {
6
6
  "name": "Namastex Labs"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "genie-plugin",
3
- "version": "3.260314.8",
3
+ "version": "3.260314.10",
4
4
  "private": true,
5
5
  "description": "Runtime dependencies for genie bundled CLIs",
6
6
  "type": "module",
@@ -245,69 +245,110 @@ const ORCHESTRATION_PROMPT = `<GENIE_CLI>
245
245
 
246
246
  You are a team-lead in a **genie-managed environment**. ALL agent spawning, messaging, and team management MUST go through the genie CLI via Bash.
247
247
 
248
- ## CRITICAL: NEVER Use These Native Tools
248
+ ## 1. CRITICAL: NEVER Use These Native Tools
249
249
 
250
- NEVER use the \`Agent\` tool to spawn agents or subagents. Use \`genie agent spawn\` instead.
250
+ NEVER use the \`Agent\` tool to spawn agents or subagents. Use \`genie spawn\` instead.
251
251
  NEVER use \`SendMessage\` to communicate with agents. Use \`genie send\` instead.
252
- NEVER use \`TeamCreate\` or \`TeamDelete\`. Use \`genie team ensure\` / \`genie team delete\` instead.
252
+ NEVER use \`TeamCreate\` or \`TeamDelete\`. Use \`genie team create\` / \`genie team disband\` instead.
253
253
 
254
254
  If you catch yourself about to use Agent, SendMessage, TeamCreate, or TeamDelete — STOP and use the genie CLI equivalent below.
255
255
 
256
- ## Agents
256
+ ## 2. CLI Commands Reference
257
+
258
+ ### Agent Lifecycle
257
259
 
258
260
  \`\`\`bash
259
- # Spawn an agent (ALWAYS use this instead of Agent tool)
260
- genie agent spawn --role <role> # implementor, tests, review, fix, refactor
261
- genie agent spawn --role <role> --skill <skill> # With specific skill
262
-
263
- # Monitor
264
- genie agent list # List all agents
265
- genie agent dashboard # Live dashboard
266
- genie agent history <agent> # Session history
267
- genie agent read <agent> --follow # Tail terminal output
268
-
269
- # Control
270
- genie agent kill <id> # Force kill
271
- genie agent suspend <id> # Suspend (preserves session)
272
- genie agent exec <agent> '<cmd>' # Run command in agent pane
273
- genie agent answer <agent> <choice> # Answer prompt (1-9 or text:...)
261
+ genie spawn <role> # Spawn agent (implementor, tests, review, fix, refactor)
262
+ genie kill <name> # Force kill agent
263
+ genie stop <name> # Graceful stop
264
+ genie ls # List all agents
265
+ genie history <name> # Session history
266
+ genie read <name> --follow # Tail terminal output
267
+ genie answer <name> <choice> # Answer prompt (1-9 or text:...)
274
268
  \`\`\`
275
269
 
276
- ## Messaging
270
+ ### Messaging
277
271
 
278
272
  \`\`\`bash
279
- # Send message to an agent (ALWAYS use this instead of SendMessage)
280
- genie send '<text>' --to <agent> # Send to specific agent
281
- genie inbox <agent> # View agent inbox
282
- genie inbox <agent> --unread # Unread only
273
+ genie send '<text>' --to <agent> # Send message to agent
274
+ genie broadcast '<text>' # Broadcast to all agents
275
+ genie chat [args...] # Interactive chat with agent
276
+ genie inbox [agent] # View message inbox
283
277
  \`\`\`
284
278
 
285
- ## Teams
279
+ ### Teams
286
280
 
287
281
  \`\`\`bash
288
- genie team ensure <name> # Ensure team exists (creates if needed)
289
- genie team list # List teams
290
- genie team delete <name> # Delete team
282
+ genie team create <name> --repo <path> # Create a team
283
+ genie team hire <agent> # Add agent to team
284
+ genie team fire <agent> # Remove agent from team
285
+ genie team ls [name] # List teams or team members
286
+ genie team disband <name> # Disband and clean up team
291
287
  \`\`\`
292
288
 
293
- ## Typical Flow
289
+ ### Dispatch (Skill-Bound Work)
294
290
 
295
291
  \`\`\`bash
296
- # 1. Spawn an agent
297
- genie agent spawn --role implementor
292
+ genie work <agent> <ref> # Dispatch worker bound to wish group
293
+ genie brainstorm <agent> <slug> # Dispatch brainstorm on topic
294
+ genie wish <agent> <slug> # Dispatch wish planning
295
+ genie review <agent> <ref> # Dispatch review
296
+ \`\`\`
297
+
298
+ ### State Management
298
299
 
299
- # 2. Monitor
300
- genie agent list
300
+ \`\`\`bash
301
+ genie done <ref> # Mark group/task done
302
+ genie status <slug> # Check wish/group status
303
+ genie reset <ref> # Reset stuck group
304
+ \`\`\`
301
305
 
302
- # 3. Send instructions
303
- genie send 'Implement endpoint X' --to <agent-name>
306
+ ## 3. Skill Flow — Auto-Invocation Chain
304
307
 
305
- # 4. Check progress
306
- genie agent history <agent-name>
308
+ Skills trigger the next step automatically where possible:
307
309
 
308
- # 5. Shut down
309
- genie agent kill <agent-id>
310
310
  \`\`\`
311
+ /brainstorm ──(WRS=100)──▸ /review (plan)
312
+ │ │
313
+ │ SHIP ▸ /wish
314
+ │ │
315
+ │ /wish ──▸ /review (plan)
316
+ │ │
317
+ │ SHIP ▸ /work
318
+ │ │
319
+ │ /work (per group) ──▸ /review (execution)
320
+ │ │
321
+ │ SHIP ▸ PR FIX-FIRST ▸ /fix ──▸ /review
322
+ │ │
323
+ │ unclear root cause ▸ /trace
324
+
325
+
326
+ Decisions stuck after 2+ exchanges ──▸ suggest /council
327
+ \`\`\`
328
+
329
+ ## 4. Team Lifecycle
330
+
331
+ \`\`\`
332
+ create team ──▸ hire agents ──▸ dispatch work ──▸ review ──▸ PR to dev ──▸ QA ──▸ disband
333
+ \`\`\`
334
+
335
+ 1. \`genie team create <name> --repo <path>\` — create team for the initiative
336
+ 2. \`genie team hire <agent>\` — add agents with needed roles
337
+ 3. \`genie work <agent> <ref>\` — dispatch groups to workers
338
+ 4. Monitor via \`genie status <slug>\`, mark done via \`genie done <ref>\`
339
+ 5. Workers signal completion via \`genie send\`; leader runs \`/review\`
340
+ 6. Create PR targeting \`dev\`. CI must be green before merge.
341
+ 7. QA loop on dev: test against wish criteria → \`/fix\` → retest
342
+ 8. \`genie team disband <name>\` — clean up when done
343
+
344
+ ## 5. Rules
345
+
346
+ - **No native tools.** All agent/team/messaging operations go through \`genie\` CLI.
347
+ - **Role separation.** Leader orchestrates; workers implement. Workers never spawn other agents.
348
+ - **Critical: PR review.** Every PR gets \`/review\` before merge. Auto-invoke \`/fix\` on FIX-FIRST.
349
+ - **CI green before merge.** Never merge with failing checks. Poll CI status, don't sleep.
350
+ - **Agents merge to dev, not main.** PRs always target \`dev\`. Only humans merge \`dev\` → \`main\`.
351
+ - **Signal, don't poll.** Workers use \`genie send\` to report completion. Leader uses \`genie done\` to track state.
311
352
  </GENIE_CLI>
312
353
  `;
313
354
 
@@ -454,7 +495,7 @@ try {
454
495
  if (!isTmuxInstalled()) {
455
496
  console.error('');
456
497
  console.error('WARNING: tmux is not installed.');
457
- console.error('tmux is required for agent orchestration (genie agent spawn, teams, etc.).');
498
+ console.error('tmux is required for agent orchestration (genie spawn, teams, etc.).');
458
499
  console.error('Non-interactive features still work without it.');
459
500
  console.error('');
460
501
  console.error('Install tmux:');
@@ -7,6 +7,20 @@ description: "Obsidian-style knowledge vault — store, search, and retrieve age
7
7
 
8
8
  Persistent long-term memory for agents. Knowledge is stored in `brain/`, searched before answering, and written back every session.
9
9
 
10
+ ## Brain vs Memory
11
+
12
+ These are **different tools for different purposes**:
13
+
14
+ | | **Brain** (this skill) | **Memory** (Claude native) |
15
+ |---|---|---|
16
+ | **What** | Context graph — entities, relationships, domain knowledge | Behavioral learnings — feedback, decisions, user preferences |
17
+ | **Tool** | `notesmd-cli` (Obsidian-style vault) | `.claude/memory/` files with YAML frontmatter |
18
+ | **When** | Domain intel, playbooks, company/person context, session logs | Corrections, conventions, project rules, user profile |
19
+ | **Updated by** | `/brain` (this skill) | `/learn` skill, auto memory system |
20
+ | **Format** | Markdown notes in `brain/` directory | Typed memory files (user, feedback, project, reference) |
21
+
22
+ **Rule of thumb:** If it's *knowledge about the world* → brain. If it's *how the agent should behave* → memory.
23
+
10
24
  ## When to Use
11
25
  - Agent needs to recall prior session context, decisions, or intel
12
26
  - New intel (person, company, deal) is discovered mid-session
@@ -59,18 +73,36 @@ notesmd-cli print "Playbooks/<playbook-name>"
59
73
  | `notesmd-cli list` | Browse full vault structure |
60
74
  | `notesmd-cli set-default --vault <path>` | Configure vault path (one-time setup) |
61
75
 
62
- ## Installation
76
+ ## Installation (Auto-Detect)
77
+
78
+ On first use, check if `notesmd-cli` is available:
63
79
 
64
80
  ```bash
65
- # Automated (recommended)
66
- bash skills/brain/scripts/install-notesmd.sh --vault ./brain
81
+ command -v notesmd-cli >/dev/null 2>&1 && echo "installed" || echo "missing"
82
+ ```
83
+
84
+ **If missing**, offer to install from https://github.com/Yakitrak/notesmd-cli:
67
85
 
68
- # Manual
86
+ ```bash
87
+ # macOS (Homebrew)
69
88
  brew install yakitrak/yakitrak/notesmd-cli
89
+
90
+ # Linux / manual
91
+ # Download the latest release binary from:
92
+ # https://github.com/Yakitrak/notesmd-cli/releases
93
+ # Place in /usr/local/bin/notesmd-cli and chmod +x
94
+
95
+ # Or use the bundled install script (if available)
96
+ bash skills/brain/scripts/install-notesmd.sh --vault ./brain
97
+ ```
98
+
99
+ After install, configure the vault:
100
+
101
+ ```bash
70
102
  notesmd-cli set-default --vault ./brain/
71
103
  ```
72
104
 
73
- If Homebrew is unavailable: download from https://github.com/Yakitrak/notesmd-cli/releases and place in `/usr/local/bin/notesmd-cli`.
105
+ If the user declines installation, skip brain operations gracefully and note that `/brain` requires `notesmd-cli`.
74
106
 
75
107
  ## Provisioning a New Agent Brain
76
108
 
@@ -76,26 +76,78 @@ Brainstorm index at `.genie/brainstorm.md`. Tracks all topics across sessions.
76
76
 
77
77
  Triggered automatically when WRS = 100.
78
78
 
79
- 1. Write `.genie/brainstorms/<slug>/DESIGN.md` from `DRAFT.md` (use `references/design-template.md`).
79
+ 1. Write `.genie/brainstorms/<slug>/DESIGN.md` from `DRAFT.md` using the Design Template below.
80
80
  2. Update `.genie/brainstorm.md` — move item to Poured with wish link.
81
- 3. Run `genie brainstorm crystallize`.
81
+ 3. Auto-invoke `/review` (plan review) on the `DESIGN.md`.
82
82
 
83
83
  ## Output Options
84
84
 
85
85
  | Complexity | Output |
86
86
  |-----------|--------|
87
- | Standard | Write `DESIGN.md`, hand off to `/wish` |
87
+ | Standard | Write `DESIGN.md`, auto-invoke `/review` (plan review) |
88
88
  | Small but non-trivial | Write design, ask whether to implement directly |
89
- | Trivial | Verbal validation only no file needed |
89
+ | Trivial | Add one-liner to jar (Raw section), no file needed |
90
90
 
91
91
  ## Handoff
92
92
 
93
+ After `/review` returns SHIP on the design:
94
+
93
95
  ```
94
- Design validated (WRS {score}/100). Run /wish to turn this into an executable plan.
96
+ Design reviewed and validated (WRS {score}/100). Proceeding to /wish.
95
97
  ```
96
98
 
97
99
  Note any cross-repo or cross-agent dependencies — these become `depends-on`/`blocks` fields in the wish.
98
100
 
101
+ ## Stuck Decisions
102
+
103
+ If the **Decisions** dimension stays ░ (unfilled) after 2+ exchanges, suggest:
104
+
105
+ ```
106
+ Decisions seem stuck. Consider running /council to get specialist perspectives on the tradeoffs.
107
+ ```
108
+
109
+ ## Design Template
110
+
111
+ Use this structure when writing `DESIGN.md` at crystallize:
112
+
113
+ ```markdown
114
+ # Design: <Title>
115
+
116
+ | Field | Value |
117
+ |-------|-------|
118
+ | **Slug** | `<slug>` |
119
+ | **Date** | YYYY-MM-DD |
120
+ | **WRS** | 100/100 |
121
+
122
+ ## Problem
123
+ One-sentence problem statement.
124
+
125
+ ## Scope
126
+ ### IN
127
+ - Concrete deliverable 1
128
+ - Concrete deliverable 2
129
+
130
+ ### OUT
131
+ - Explicit exclusion 1
132
+
133
+ ## Approach
134
+ Chosen approach with rationale. Reference alternatives considered.
135
+
136
+ ## Decisions
137
+ | Decision | Rationale |
138
+ |----------|-----------|
139
+ | Choice 1 | Why this over alternatives |
140
+
141
+ ## Risks & Assumptions
142
+ | Risk | Severity | Mitigation |
143
+ |------|----------|------------|
144
+ | Risk 1 | Low/Medium/High | How to handle |
145
+
146
+ ## Success Criteria
147
+ - [ ] Testable criterion 1
148
+ - [ ] Testable criterion 2
149
+ ```
150
+
99
151
  ## Rules
100
152
  - One question per message. Never batch questions.
101
153
  - YAGNI and simplicity first.
@@ -14,6 +14,12 @@ Convene a panel of 10 specialist perspectives to brainstorm, critique, and vote
14
14
  - During `/review` to surface risks and blind spots
15
15
  - Deadlocked discussions needing fresh angles
16
16
 
17
+ ### Auto-Invocation Triggers
18
+
19
+ The council can be triggered automatically by other skills:
20
+ - **During `/review`**: when an architecture decision has significant tradeoffs, `/review` may invoke `/council` to get specialist input before rendering a verdict.
21
+ - **During `/brainstorm`**: when the Decisions dimension stays unfilled (░) after 2+ exchanges, `/brainstorm` suggests running `/council` to break the deadlock.
22
+
17
23
  ## Mode Detection
18
24
 
19
25
  Before running the council flow, detect which mode to use:
@@ -24,7 +30,7 @@ Before running the council flow, detect which mode to use:
24
30
 
25
31
  ## Lightweight Mode (Default)
26
32
 
27
- When no council members are hired in the team, simulate all perspectives in a single session.
33
+ When no council members are hired in the team, simulate all perspectives in a single session. One agent plays all roles — faster, lower cost, good for most decisions.
28
34
 
29
35
  ### Flow
30
36
 
@@ -37,7 +43,17 @@ When no council members are hired in the team, simulate all perspectives in a si
37
43
 
38
44
  ## Full Spawn Mode
39
45
 
40
- When council members are hired in the team, use the team chat channel for real multi-agent deliberation.
46
+ When council members are hired in the team, real agents deliberate via `genie chat` and reach consensus. Higher-quality than lightweight mode since each member runs in its own context with its own reasoning.
47
+
48
+ ### Setup
49
+
50
+ Hire council members into the team before invoking:
51
+
52
+ ```bash
53
+ genie team hire council
54
+ ```
55
+
56
+ This adds specialist agents (e.g., `council-questioner`, `council-architect`) to the current team.
41
57
 
42
58
  ### Flow
43
59
 
@@ -54,17 +70,18 @@ When council members are hired in the team, use the team chat channel for real m
54
70
  ```bash
55
71
  genie chat read --team <team> --since <topic-post-timestamp>
56
72
  ```
57
- 5. Once all consulted members have responded (or after a reasonable wait), the leader synthesizes:
73
+ 5. **Timeout:** if a council member hasn't responded within 2 minutes, proceed with "no response" in the tally. Do not block indefinitely.
74
+ 6. Once all consulted members have responded (or timeout reached), the leader synthesizes:
58
75
  - Collect all perspectives from team chat
59
76
  - Tally votes
60
77
  - Produce the synthesized recommendation
61
- 6. Present the advisory to the user using the same output format
78
+ 7. Present the advisory to the user using the same output format
62
79
 
63
80
  ### Notes on Full Spawn Mode
64
81
 
65
82
  - Council members respond independently — each applies their own lens prompt
66
83
  - The leader (session running `/council`) acts as moderator and synthesizer
67
- - If a council member hasn't responded, note them as "no response" in the tally
84
+ - If a council member hasn't responded after timeout, note them as "no response" in the tally
68
85
  - Full spawn mode produces higher-quality reviews since each member runs in its own context
69
86
 
70
87
  ## Council Members
@@ -12,10 +12,25 @@ Audit existing documentation, identify gaps, generate what's missing, and valida
12
12
  - Existing documentation is stale or references removed features
13
13
  - A wish deliverable includes documentation
14
14
  - After significant code changes that invalidate existing docs
15
+ - After `/work` completes — suggest `/docs` to document what changed
16
+
17
+ ## Documentation Surfaces
18
+
19
+ Audit and maintain these doc types:
20
+
21
+ | Type | Location | Purpose |
22
+ |------|----------|---------|
23
+ | **README** | `README.md`, `*/README.md` | Project/module overview, setup, usage |
24
+ | **CLAUDE.md** | `CLAUDE.md`, `*/CLAUDE.md` | Project conventions, commands, gotchas for AI agents |
25
+ | **API docs** | `docs/api/`, inline JSDoc/TSDoc | Endpoint contracts, request/response schemas |
26
+ | **Architecture** | `docs/architecture.md`, `ARCHITECTURE.md` | System design, data flow, component relationships |
27
+ | **Inline docs** | JSDoc, TSDoc, docstrings | Function/class/module-level documentation |
28
+
29
+ **CLAUDE.md is a first-class documentation surface.** When the codebase changes significantly (new commands, changed conventions, removed features), flag CLAUDE.md for update. CLAUDE.md should always reflect the current state of the project.
15
30
 
16
31
  ## Flow
17
- 1. **Audit existing docs:** scan for READMEs, guides, inline docs, changelogs — map what exists.
18
- 2. **Identify gaps:** compare documentation against actual code — find what's missing, outdated, or wrong.
32
+ 1. **Audit existing docs:** scan all documentation surfaces above — map what exists.
33
+ 2. **Identify gaps:** compare documentation against actual code — find what's missing, outdated, or wrong. Pay special attention to CLAUDE.md accuracy.
19
34
  3. **Generate:** write documentation to fill the gaps, matching project conventions.
20
35
  4. **Validate against code:** verify every claim — file paths exist, APIs match, behaviors are accurate.
21
36
  5. **Report:** return list of created/updated files with validation results.