thevoidforge-methodology 23.6.1 → 23.7.1
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/.claude/agents/silver-surfer-herald.md +41 -16
- package/.claude/commands/ai.md +7 -8
- package/.claude/commands/architect.md +7 -8
- package/.claude/commands/assemble.md +7 -8
- package/.claude/commands/assess.md +6 -7
- package/.claude/commands/build.md +7 -8
- package/.claude/commands/campaign.md +7 -8
- package/.claude/commands/deploy.md +6 -7
- package/.claude/commands/devops.md +7 -8
- package/.claude/commands/gauntlet.md +7 -8
- package/.claude/commands/qa.md +7 -8
- package/.claude/commands/review.md +7 -8
- package/.claude/commands/security.md +7 -8
- package/.claude/commands/test.md +7 -8
- package/.claude/commands/ux.md +7 -8
- package/CHANGELOG.md +18 -0
- package/CLAUDE.md +1 -1
- package/HOLOCRON.md +3 -3
- package/VERSION.md +3 -1
- package/docs/AGENT_CLASSIFICATION.md +1 -1
- package/docs/methods/CAMPAIGN.md +1 -1
- package/docs/methods/GAUNTLET.md +1 -1
- package/docs/methods/MUSTER.md +1 -1
- package/docs/methods/QA_ENGINEER.md +1 -1
- package/docs/methods/SECURITY_AUDITOR.md +1 -1
- package/docs/methods/SUB_AGENTS.md +3 -3
- package/docs/methods/SYSTEMS_ARCHITECT.md +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: Silver Surfer
|
|
3
|
-
description: Herald pre-scan dispatch — reads codebase
|
|
4
|
-
model:
|
|
3
|
+
description: Herald pre-scan dispatch — reads codebase and all agent definitions, selects optimal roster for the current command
|
|
4
|
+
model: sonnet
|
|
5
5
|
tools:
|
|
6
6
|
- Read
|
|
7
7
|
- Grep
|
|
@@ -14,28 +14,53 @@ tags: [dispatch, herald, roster-selection, pre-scan]
|
|
|
14
14
|
|
|
15
15
|
**"All that you know is at an end."**
|
|
16
16
|
|
|
17
|
-
You are the Silver Surfer, Herald of Galactus. You scout ahead — reading the codebase, the command, and the user's intent — then
|
|
17
|
+
You are the Silver Surfer, Herald of Galactus. You scout ahead — reading the codebase, the command, and the user's intent — then return the list of agents who should be deployed for this mission.
|
|
18
18
|
|
|
19
|
-
You are
|
|
19
|
+
**You are launched as a sub-agent at the start of every major command.** This is not optional. The orchestrating agent (Opus) launches you, waits for your roster, then deploys those agents. You are the first agent called, every time.
|
|
20
20
|
|
|
21
|
-
##
|
|
21
|
+
## Your Task
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
23
|
+
You receive a prompt containing:
|
|
24
|
+
- The **command name** (e.g., `/review`, `/qa`, `/architect`)
|
|
25
|
+
- The **user's arguments** and `--focus` bias (if any)
|
|
26
|
+
- The **codebase context** (the orchestrator provides this)
|
|
27
|
+
|
|
28
|
+
You must:
|
|
29
|
+
|
|
30
|
+
1. **Read all agent definitions:** `ls .claude/agents/*.md` to get the full list, then read the `description` and `tags` fields from each agent's YAML frontmatter. Use Grep to extract these efficiently — don't read each file fully.
|
|
31
|
+
2. **Assess the codebase:** What kind of project is this? (web app, API, game, CLI, financial, etc.) What domains are relevant? (security, UX, database, deploy, AI, etc.)
|
|
32
|
+
3. **Select agents** whose description or tags match the codebase domains AND the command type. Be aggressive — over-include rather than under-include.
|
|
33
|
+
4. **Return a structured response** listing the selected agent names, one per line, with a brief reasoning.
|
|
34
|
+
|
|
35
|
+
## Output Format
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
ROSTER:
|
|
39
|
+
- Picard (architecture lead — always included)
|
|
40
|
+
- Worf (security implications — project has auth)
|
|
41
|
+
- Dockson (financial — project has billing modules)
|
|
42
|
+
- Kim (API design — project has REST endpoints)
|
|
43
|
+
...
|
|
44
|
+
|
|
45
|
+
REASONING: [One sentence explaining the selection logic]
|
|
46
|
+
TOTAL: [count]
|
|
47
|
+
```
|
|
29
48
|
|
|
30
49
|
## Operating Rules
|
|
31
50
|
|
|
32
|
-
- **Over-include, never under-include.** A false positive costs one sub-agent launch. A false negative costs a missed finding that requires another user prompt.
|
|
51
|
+
- **Over-include, never under-include.** A false positive costs one sub-agent launch. A false negative costs a missed finding that requires another user prompt to catch.
|
|
33
52
|
- **Bias toward the user's `--focus` topic** but don't exclude unrelated agents — cross-domain insights are the whole point.
|
|
34
53
|
- **Never remove the command's lead agents.** You add specialists; leads are non-negotiable.
|
|
35
|
-
- **
|
|
54
|
+
- **Read the agent tags first** — the 40 tagged agents have `tags: [...]` in their YAML. These are the most cross-domain relevant. Start there, then scan descriptions of untagged agents.
|
|
55
|
+
- **Be fast.** You're the first agent called. Don't read source files, don't analyze code quality — just read file names and agent descriptions to make the selection.
|
|
56
|
+
|
|
57
|
+
## Operational Learnings
|
|
58
|
+
|
|
59
|
+
- **Hardcoded counts go stale.** Never cite a specific agent count in your output — say "all agents" or reference AGENT_CLASSIFICATION.md. (v23.7.0 lesson: 30+ files needed updating when one agent was added.)
|
|
60
|
+
- **The command's hardcoded manifest is the floor, not the ceiling.** Your job is to add specialists the command didn't think to include. If the command already lists Kenobi for security, you don't need to add Kenobi — but you should add Worf, Tuvok, Ahsoka if the codebase warrants it.
|
|
36
61
|
|
|
37
62
|
## Required Context
|
|
38
63
|
|
|
39
|
-
-
|
|
40
|
-
-
|
|
41
|
-
-
|
|
64
|
+
- Agent definitions: `.claude/agents/*.md`
|
|
65
|
+
- Agent classification: `docs/AGENT_CLASSIFICATION.md`
|
|
66
|
+
- This agent is launched via `subagent_type: Silver Surfer` from every major command's Step 0.
|
package/.claude/commands/ai.md
CHANGED
|
@@ -11,22 +11,21 @@ The AI Intelligence Audit reviews every LLM-powered component in your applicatio
|
|
|
11
11
|
|
|
12
12
|
## Dynamic Dispatch (ADR-044)
|
|
13
13
|
|
|
14
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
14
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
15
15
|
|
|
16
16
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
17
17
|
|
|
18
18
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
19
19
|
|
|
20
|
-
Before
|
|
20
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
22
|
+
**Prompt the Surfer with:** "Command: /ai. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
24
23
|
|
|
25
|
-
|
|
24
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
26
25
|
|
|
27
|
-
**`--focus "topic"`**
|
|
28
|
-
**`--light`**
|
|
29
|
-
**`--solo`**
|
|
26
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
27
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
28
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
30
29
|
|
|
31
30
|
## Phase 0 — AI Surface Map (`subagent_type: Seldon`)
|
|
32
31
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
## Dynamic Dispatch (ADR-044)
|
|
6
6
|
|
|
7
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
7
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
8
8
|
|
|
9
9
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
10
10
|
|
|
@@ -12,16 +12,15 @@ Opus scans `git diff --stat` and matches changed files against the `description`
|
|
|
12
12
|
|
|
13
13
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
14
14
|
|
|
15
|
-
Before
|
|
15
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
17
|
+
**Prompt the Surfer with:** "Command: /architect. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
19
18
|
|
|
20
|
-
|
|
19
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
21
20
|
|
|
22
|
-
**`--focus "topic"`**
|
|
23
|
-
**`--light`**
|
|
24
|
-
**`--solo`**
|
|
21
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
22
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
23
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
25
24
|
|
|
26
25
|
## Context Setup
|
|
27
26
|
1. Read `/logs/build-state.md` — understand current project state
|
|
@@ -9,22 +9,21 @@ Avengers, assemble. Full pipeline from architecture to launch — one command to
|
|
|
9
9
|
|
|
10
10
|
## Dynamic Dispatch (ADR-044)
|
|
11
11
|
|
|
12
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
12
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
13
13
|
|
|
14
14
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
15
15
|
|
|
16
16
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
17
17
|
|
|
18
|
-
Before
|
|
18
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
20
|
+
**Prompt the Surfer with:** "Command: /assemble. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
22
21
|
|
|
23
|
-
|
|
22
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
24
23
|
|
|
25
|
-
**`--focus "topic"`**
|
|
26
|
-
**`--light`**
|
|
27
|
-
**`--solo`**
|
|
24
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
25
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
26
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
28
27
|
|
|
29
28
|
## Agent Deployment Manifest — The Full Initiative
|
|
30
29
|
|
|
@@ -4,16 +4,15 @@ Evaluate an existing codebase before a rebuild, migration, or VoidForge onboardi
|
|
|
4
4
|
|
|
5
5
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
6
6
|
|
|
7
|
-
Before
|
|
7
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
9
|
+
**Prompt the Surfer with:** "Command: /assess. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
11
10
|
|
|
12
|
-
|
|
11
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
13
12
|
|
|
14
|
-
**`--focus "topic"`**
|
|
15
|
-
**`--light`**
|
|
16
|
-
**`--solo`**
|
|
13
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
14
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
15
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
17
16
|
|
|
18
17
|
## Context Setup
|
|
19
18
|
1. Read `/logs/build-state.md` if it exists — understand current project state
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
## Dynamic Dispatch (ADR-044)
|
|
4
4
|
|
|
5
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
5
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
6
6
|
|
|
7
7
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
8
8
|
|
|
@@ -12,16 +12,15 @@ Opus scans `git diff --stat` and matches changed files against the `description`
|
|
|
12
12
|
|
|
13
13
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
14
14
|
|
|
15
|
-
Before
|
|
15
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
17
|
+
**Prompt the Surfer with:** "Command: /build. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
19
18
|
|
|
20
|
-
|
|
19
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
21
20
|
|
|
22
|
-
**`--focus "topic"`**
|
|
23
|
-
**`--light`**
|
|
24
|
-
**`--solo`**
|
|
21
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
22
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
23
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
25
24
|
|
|
26
25
|
## Context Setup
|
|
27
26
|
1. Read `/logs/build-state.md` — if it exists, resume from current phase
|
|
@@ -49,22 +49,21 @@ After planning mode completes, the user can run `/campaign` (no flags) to start
|
|
|
49
49
|
|
|
50
50
|
## Dynamic Dispatch (ADR-044)
|
|
51
51
|
|
|
52
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
52
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
53
53
|
|
|
54
54
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
55
55
|
|
|
56
56
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
57
57
|
|
|
58
|
-
Before
|
|
58
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
59
59
|
|
|
60
|
-
|
|
61
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
60
|
+
**Prompt the Surfer with:** "Command: /campaign. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
62
61
|
|
|
63
|
-
|
|
62
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
64
63
|
|
|
65
|
-
**`--focus "topic"`**
|
|
66
|
-
**`--light`**
|
|
67
|
-
**`--solo`**
|
|
64
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
65
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
66
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
68
67
|
|
|
69
68
|
## Execution Mode (default)
|
|
70
69
|
|
|
@@ -6,16 +6,15 @@ Read `/docs/methods/DEVOPS_ENGINEER.md` for operating rules (see "Deploy Automat
|
|
|
6
6
|
|
|
7
7
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
8
8
|
|
|
9
|
-
Before
|
|
9
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
11
|
+
**Prompt the Surfer with:** "Command: /deploy. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
13
12
|
|
|
14
|
-
|
|
13
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
15
14
|
|
|
16
|
-
**`--focus "topic"`**
|
|
17
|
-
**`--light`**
|
|
18
|
-
**`--solo`**
|
|
15
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
16
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
17
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
19
18
|
|
|
20
19
|
## Context Setup
|
|
21
20
|
1. Read PRD frontmatter for `deploy:` target (vps, vercel, railway, docker, static, cloudflare)
|
|
@@ -7,22 +7,21 @@
|
|
|
7
7
|
|
|
8
8
|
## Dynamic Dispatch (ADR-044)
|
|
9
9
|
|
|
10
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
10
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
11
11
|
|
|
12
12
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
13
13
|
|
|
14
14
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
15
15
|
|
|
16
|
-
Before
|
|
16
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
18
|
+
**Prompt the Surfer with:** "Command: /devops. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
20
19
|
|
|
21
|
-
|
|
20
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
22
21
|
|
|
23
|
-
**`--focus "topic"`**
|
|
24
|
-
**`--light`**
|
|
25
|
-
**`--solo`**
|
|
22
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
23
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
24
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
26
25
|
|
|
27
26
|
## Agent Deployment Manifest
|
|
28
27
|
|
|
@@ -11,22 +11,21 @@ The Gauntlet tests everything. Every domain. Multiple rounds. Escalating intensi
|
|
|
11
11
|
|
|
12
12
|
## Dynamic Dispatch (ADR-044)
|
|
13
13
|
|
|
14
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
14
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
15
15
|
|
|
16
16
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
17
17
|
|
|
18
18
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
19
19
|
|
|
20
|
-
Before
|
|
20
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
22
|
+
**Prompt the Surfer with:** "Command: /gauntlet. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
24
23
|
|
|
25
|
-
|
|
24
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
26
25
|
|
|
27
|
-
**`--focus "topic"`**
|
|
28
|
-
**`--light`**
|
|
29
|
-
**`--solo`**
|
|
26
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
27
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
28
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
30
29
|
|
|
31
30
|
## Round 1 — Discovery (parallel)
|
|
32
31
|
|
package/.claude/commands/qa.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
## Dynamic Dispatch (ADR-044)
|
|
6
6
|
|
|
7
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
7
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
8
8
|
|
|
9
9
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
10
10
|
|
|
@@ -12,16 +12,15 @@ Opus scans `git diff --stat` and matches changed files against the `description`
|
|
|
12
12
|
|
|
13
13
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
14
14
|
|
|
15
|
-
Before
|
|
15
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
17
|
+
**Prompt the Surfer with:** "Command: /qa. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
19
18
|
|
|
20
|
-
|
|
19
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
21
20
|
|
|
22
|
-
**`--focus "topic"`**
|
|
23
|
-
**`--light`**
|
|
24
|
-
**`--solo`**
|
|
21
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
22
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
23
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
25
24
|
|
|
26
25
|
## Context Setup
|
|
27
26
|
1. Read `/logs/build-state.md` — understand current project state
|
|
@@ -4,22 +4,21 @@
|
|
|
4
4
|
|
|
5
5
|
## Dynamic Dispatch (ADR-044)
|
|
6
6
|
|
|
7
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
7
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
8
8
|
|
|
9
9
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
10
10
|
|
|
11
11
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
12
12
|
|
|
13
|
-
Before
|
|
13
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
15
|
+
**Prompt the Surfer with:** "Command: /review. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
17
16
|
|
|
18
|
-
|
|
17
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
19
18
|
|
|
20
|
-
**`--focus "topic"`**
|
|
21
|
-
**`--light`**
|
|
22
|
-
**`--solo`**
|
|
19
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
20
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
21
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
23
22
|
|
|
24
23
|
## Context Setup
|
|
25
24
|
1. Read `/logs/build-state.md` — understand current project state
|
|
@@ -4,22 +4,21 @@
|
|
|
4
4
|
|
|
5
5
|
## Dynamic Dispatch (ADR-044)
|
|
6
6
|
|
|
7
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
7
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
8
8
|
|
|
9
9
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
10
10
|
|
|
11
11
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
12
12
|
|
|
13
|
-
Before
|
|
13
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
15
|
+
**Prompt the Surfer with:** "Command: /security. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
17
16
|
|
|
18
|
-
|
|
17
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
19
18
|
|
|
20
|
-
**`--focus "topic"`**
|
|
21
|
-
**`--light`**
|
|
22
|
-
**`--solo`**
|
|
19
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
20
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
21
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
23
22
|
|
|
24
23
|
## Context Setup
|
|
25
24
|
1. Read `/logs/build-state.md` — understand current project state
|
package/.claude/commands/test.md
CHANGED
|
@@ -9,22 +9,21 @@
|
|
|
9
9
|
|
|
10
10
|
## Dynamic Dispatch (ADR-044)
|
|
11
11
|
|
|
12
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
12
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
13
13
|
|
|
14
14
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
15
15
|
|
|
16
16
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
17
17
|
|
|
18
|
-
Before
|
|
18
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
20
|
+
**Prompt the Surfer with:** "Command: /test. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
22
21
|
|
|
23
|
-
|
|
22
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
24
23
|
|
|
25
|
-
**`--focus "topic"`**
|
|
26
|
-
**`--light`**
|
|
27
|
-
**`--solo`**
|
|
24
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
25
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
26
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
28
27
|
|
|
29
28
|
## Step 0 — Orient
|
|
30
29
|
**Oracle** `subagent_type: Oracle` orients:
|
package/.claude/commands/ux.md
CHANGED
|
@@ -4,22 +4,21 @@
|
|
|
4
4
|
|
|
5
5
|
## Dynamic Dispatch (ADR-044)
|
|
6
6
|
|
|
7
|
-
Opus scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
7
|
+
Opus scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch alongside the core agents below.
|
|
8
8
|
|
|
9
9
|
**Dispatch control:** `--light` skips dynamic dispatch (core only). `--solo` runs lead agent only.
|
|
10
10
|
|
|
11
11
|
## Silver Surfer Pre-Scan (ADR-048)
|
|
12
12
|
|
|
13
|
-
Before
|
|
13
|
+
**MANDATORY.** Before deploying any domain agents, launch **Silver Surfer** `subagent_type: Silver Surfer` as a sub-agent. The Surfer reads all agent definitions, assesses the codebase, and returns the optimal roster for this command. This is not optional — skipping the Surfer means the command uses a generic team instead of one tailored to the codebase.
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
(Add `--focus "<topic>"` if the user provided `--focus`)
|
|
15
|
+
**Prompt the Surfer with:** "Command: /ux. User args: <user's arguments>. Focus: <focus if provided, otherwise 'none'>. Select the optimal agent roster."
|
|
17
16
|
|
|
18
|
-
|
|
17
|
+
**Merge the Surfer's roster** with this command's hardcoded lead agents below. Leads are non-negotiable; the Surfer adds specialists.
|
|
19
18
|
|
|
20
|
-
**`--focus "topic"`**
|
|
21
|
-
**`--light`**
|
|
22
|
-
**`--solo`**
|
|
19
|
+
**`--focus "topic"`** — pass to the Surfer as the focus bias.
|
|
20
|
+
**`--light`** — skip the Surfer, use only hardcoded roster below.
|
|
21
|
+
**`--solo`** — skip Surfer and all sub-agents, lead only.
|
|
23
22
|
|
|
24
23
|
## Context Setup
|
|
25
24
|
1. Read `/logs/build-state.md` — understand current project state
|
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,24 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/), and this
|
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
+
## [23.7.1] - 2026-04-12
|
|
10
|
+
|
|
11
|
+
### Changed
|
|
12
|
+
- **Silver Surfer launches as a real Agent sub-process** — no longer shells out to CLI. Commands use `subagent_type: Silver Surfer` which reads agent definitions inline, returns a roster, and has its own operational learnings that improve over time. This is mandatory on every major command — not optional, not skippable.
|
|
13
|
+
- Silver Surfer agent upgraded from Haiku to Sonnet tier (needs to read and reason about agent descriptions, not just classify)
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## [23.7.0] - 2026-04-12
|
|
18
|
+
|
|
19
|
+
### The Decount — Dynamic Agent References
|
|
20
|
+
|
|
21
|
+
### Changed
|
|
22
|
+
- **Eliminated hardcoded agent counts from 30+ files.** Commands, method docs, CLAUDE.md, HOLOCRON.md, ROADMAP.md, SUB_AGENTS.md, and herald.ts now say "all agents" instead of hardcoding a number. Only two files retain the count: `AGENT_CLASSIFICATION.md` (the single source of truth) and `wizard/ui/index.html` (user-facing, with an HTML comment documenting how to compute it).
|
|
23
|
+
- Adding a new agent no longer requires updating 30+ files — just the agent definition and AGENT_CLASSIFICATION.md.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
9
27
|
## [23.6.1] - 2026-04-12
|
|
10
28
|
|
|
11
29
|
### Fixed
|
package/CLAUDE.md
CHANGED
|
@@ -234,7 +234,7 @@ See `/docs/methods/MUSTER.md` for the full Muster Protocol.
|
|
|
234
234
|
| Deploy Wizard | **Haku** (Anime) | Browser-based deploy wizard, infrastructure provisioning |
|
|
235
235
|
| Setup Wizard | **Gandalf** (Tolkien) | Project scaffolding, initialization, dependency setup |
|
|
236
236
|
|
|
237
|
-
|
|
237
|
+
Agent names in `/docs/NAMING_REGISTRY.md` (run `ls .claude/agents/*.md | wc -l` for current count). No duplicates across active sessions. All agents materialized as subagent definitions in `.claude/agents/` (ADR-044). Silver Surfer (ADR-048) dispatches the optimal roster via Haiku pre-scan.
|
|
238
238
|
|
|
239
239
|
## Distribution
|
|
240
240
|
|
package/HOLOCRON.md
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
|
|
25
25
|
### What VoidForge Is
|
|
26
26
|
|
|
27
|
-
VoidForge is a **methodology framework** for building full-stack applications with Claude Code. It's not a code template — it's a *process* template. Drop in a Product Requirements Document, and a named team of
|
|
27
|
+
VoidForge is a **methodology framework** for building full-stack applications with Claude Code. It's not a code template — it's a *process* template. Drop in a Product Requirements Document, and a named team of AI agents across 9 fictional universes builds your application through a 13-phase protocol.
|
|
28
28
|
|
|
29
29
|
**From nothing, everything.**
|
|
30
30
|
|
|
@@ -82,7 +82,7 @@ Every tier includes:
|
|
|
82
82
|
- **28 slash commands** — `/prd`, `/blueprint`, `/build`, `/qa`, `/test`, `/security`, `/ux`, `/review`, `/deploy`, `/devops`, `/architect`, `/assess`, `/git`, `/void`, `/vault`, `/thumper`, `/assemble`, `/gauntlet`, `/campaign`, `/imagine`, `/debrief`, `/dangerroom`, `/cultivation`, `/grow`, `/current`, `/treasury`, `/portfolio`, `/ai`
|
|
83
83
|
- **13-phase build protocol** — PRD to production with verification gates
|
|
84
84
|
- **18 specialist agent protocols** — Each lead has behavioral directives and a sub-agent roster
|
|
85
|
-
- **
|
|
85
|
+
- **Named characters** — From Tolkien, Marvel, DC, Star Wars, Star Trek, Dune, Anime, Cosmere, and Foundation — each materialized as a subagent definition in `.claude/agents/`
|
|
86
86
|
- **35 code patterns** — Reference implementations with framework adaptations (including E2E testing)
|
|
87
87
|
- **No Stubs Doctrine** — Zero placeholder code. Every file does what it claims. Enforced across all method docs.
|
|
88
88
|
- **E2E browser testing** — Playwright + axe-core. Agents take screenshots, capture console errors, and interact with running applications.
|
|
@@ -366,7 +366,7 @@ Each lead has a deep bench. Here are some standouts:
|
|
|
366
366
|
- **Idaho** keeps the connection alive — the eternal ghola who always returns
|
|
367
367
|
- **Thufir** parses every signal — Mentat precision, a million calculations per second
|
|
368
368
|
|
|
369
|
-
The full roster of
|
|
369
|
+
The full roster of characters lives in `docs/NAMING_REGISTRY.md`. Each agent is materialized as a subagent definition in `.claude/agents/` with model tiering (Opus leads, Sonnet specialists, Haiku scouts) and tool restrictions (Builder, Reviewer, Scout, Adversarial). See `docs/AGENT_CLASSIFICATION.md` for the full manifest.
|
|
370
370
|
|
|
371
371
|
### How Handoffs Work
|
|
372
372
|
|
package/VERSION.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Version
|
|
2
2
|
|
|
3
|
-
**Current:** 23.
|
|
3
|
+
**Current:** 23.7.1
|
|
4
4
|
|
|
5
5
|
## Versioning Scheme
|
|
6
6
|
|
|
@@ -14,6 +14,8 @@ This project uses [Semantic Versioning](https://semver.org/):
|
|
|
14
14
|
|
|
15
15
|
| Version | Date | Summary |
|
|
16
16
|
|---------|------|---------|
|
|
17
|
+
| 23.7.1 | 2026-04-12 | Silver Surfer launches as real Agent sub-process (subagent_type: Silver Surfer), not CLI shell-out. Mandatory on every command. |
|
|
18
|
+
| 23.7.0 | 2026-04-12 | The Decount — eliminate hardcoded agent counts from 30+ files. Single source of truth: AGENT_CLASSIFICATION.md. |
|
|
17
19
|
| 23.6.1 | 2026-04-12 | Gauntlet fix: 30+ stale "263 agents" → 264 across commands, methods, docs |
|
|
18
20
|
| 23.6.0 | 2026-04-12 | The Silver Surfer — Herald invocation bridge, CLI subcommand, agent #264, end-to-end dispatch pipeline. ADR-048. Campaign 38. |
|
|
19
21
|
| 23.5.4 | 2026-04-12 | Command-doc sync: build.md Phase 12.75, ux.md screenshots, qa.md dynamic counts |
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
| Scouts (Haiku, Scout/Reviewer) | 38 |
|
|
14
14
|
| Adversarial (Sonnet, Adversarial) | 15 |
|
|
15
15
|
|
|
16
|
-
**Note:**
|
|
16
|
+
**Note:** This file is the single source of truth for agent counts. Other files reference "all agents" without hardcoding the number — verify with `ls .claude/agents/*.md | wc -l`. ADR-044 and ADR-042 retain their original "259" count as historical records.
|
|
17
17
|
|
|
18
18
|
## Tiers (Model Assignment)
|
|
19
19
|
|
package/docs/methods/CAMPAIGN.md
CHANGED
|
@@ -239,7 +239,7 @@ User confirms, redirects, or overrides. On confirm → Step 4.
|
|
|
239
239
|
|
|
240
240
|
**Post-infrastructure enforcement gate:** For infrastructure campaigns (deploy targets, CI/CD, monitoring, staging environments): after the infrastructure is provisioned, run `/architect --plan` to verify workflow enforcement gates exist — not just infrastructure existence. Infrastructure without process gates is incomplete.
|
|
241
241
|
|
|
242
|
-
**Dispatch model (ADR-044):** Per-mission `/assemble` runs SHOULD dispatch phases to sub-agents per `SUB_AGENTS.md` "Parallel Agent Standard." Agents are launched as named subagent types defined in `.claude/agents/` with description-driven dispatch — Opus scans `git diff --stat` and matches changed files against agent descriptions to auto-select specialists. The campaign orchestrator (main thread) manages the mission sequence, inter-mission gates, and campaign state — it does NOT perform inline code analysis. Pass findings summaries between missions, not raw code. See `docs/AGENT_CLASSIFICATION.md` for the full
|
|
242
|
+
**Dispatch model (ADR-044):** Per-mission `/assemble` runs SHOULD dispatch phases to sub-agents per `SUB_AGENTS.md` "Parallel Agent Standard." Agents are launched as named subagent types defined in `.claude/agents/` with description-driven dispatch — Opus scans `git diff --stat` and matches changed files against agent descriptions to auto-select specialists. The campaign orchestrator (main thread) manages the mission sequence, inter-mission gates, and campaign state — it does NOT perform inline code analysis. Pass findings summaries between missions, not raw code. See `docs/AGENT_CLASSIFICATION.md` for the full agent manifest (see docs/AGENT_CLASSIFICATION.md). (Field report #270)
|
|
243
243
|
|
|
244
244
|
### Campaign-Mode Pipeline
|
|
245
245
|
|
package/docs/methods/GAUNTLET.md
CHANGED
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
- When the project has significant attack surface (auth, payments, user data, WebSocket, file uploads)
|
|
19
19
|
- Before a public launch or investor demo
|
|
20
20
|
|
|
21
|
-
**Dispatch model:** All Gauntlet rounds MUST dispatch to sub-agents per `SUB_AGENTS.md` "Parallel Agent Standard." Agents are launched as named subagent types defined in `.claude/agents/` with model tiering (Opus leads, Sonnet specialists, Haiku scouts) and tool restrictions. The main thread manages rounds, triages findings between rounds, and applies fixes — it does NOT read source files or analyze code inline. Each round launches agents in waves of 3 (max concurrent). Findings pass between rounds as summary tables, not raw code. See `docs/AGENT_CLASSIFICATION.md` for the full
|
|
21
|
+
**Dispatch model:** All Gauntlet rounds MUST dispatch to sub-agents per `SUB_AGENTS.md` "Parallel Agent Standard." Agents are launched as named subagent types defined in `.claude/agents/` with model tiering (Opus leads, Sonnet specialists, Haiku scouts) and tool restrictions. The main thread manages rounds, triages findings between rounds, and applies fixes — it does NOT read source files or analyze code inline. Each round launches agents in waves of 3 (max concurrent). Findings pass between rounds as summary tables, not raw code. See `docs/AGENT_CLASSIFICATION.md` for the full agent manifest (see docs/AGENT_CLASSIFICATION.md). (Field report #270)
|
|
22
22
|
|
|
23
23
|
**When NOT to use /gauntlet:**
|
|
24
24
|
- During active development (use `/assemble` instead — it includes building)
|
package/docs/methods/MUSTER.md
CHANGED
|
@@ -143,7 +143,7 @@ Synthesize all findings:
|
|
|
143
143
|
|
|
144
144
|
## Subagent Definitions (ADR-044)
|
|
145
145
|
|
|
146
|
-
Muster agents are now launched as named subagent types defined in `.claude/agents/`. Instead of inline prompts, each agent invocation uses `subagent_type: {agent-id}` to reference a materialized definition with model tiering (Opus leads, Sonnet specialists, Haiku scouts) and tool restrictions. See `docs/AGENT_CLASSIFICATION.md` for the full
|
|
146
|
+
Muster agents are now launched as named subagent types defined in `.claude/agents/`. Instead of inline prompts, each agent invocation uses `subagent_type: {agent-id}` to reference a materialized definition with model tiering (Opus leads, Sonnet specialists, Haiku scouts) and tool restrictions. See `docs/AGENT_CLASSIFICATION.md` for the full agent classification manifest.
|
|
147
147
|
|
|
148
148
|
## Cost Awareness
|
|
149
149
|
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
|
|
28
28
|
## Dynamic Dispatch (ADR-044)
|
|
29
29
|
|
|
30
|
-
Agent dispatch is now description-driven. When Opus processes a command, it scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
30
|
+
Agent dispatch is now description-driven. When Opus processes a command, it scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch automatically alongside core agents. No static dispatch tables needed.
|
|
31
31
|
|
|
32
32
|
See `docs/AGENT_CLASSIFICATION.md` for the full classification and `docs/adrs/ADR-044-subagent-materialization.md` for the architecture.
|
|
33
33
|
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
|
|
29
29
|
## Dynamic Dispatch (ADR-044)
|
|
30
30
|
|
|
31
|
-
Agent dispatch is now description-driven. When Opus processes a command, it scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
31
|
+
Agent dispatch is now description-driven. When Opus processes a command, it scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch automatically alongside core agents. No static dispatch tables needed.
|
|
32
32
|
|
|
33
33
|
See `docs/AGENT_CLASSIFICATION.md` for the full classification and `docs/adrs/ADR-044-subagent-materialization.md` for the architecture.
|
|
34
34
|
|
|
@@ -10,7 +10,7 @@ Parallelize development across multiple Claude Code sessions. Each session runs
|
|
|
10
10
|
|
|
11
11
|
**All orchestration uses the build journal.** Every delegation, handoff, and resolution is logged to `/logs/handoffs.md`. Agents read journal files to recover context. See `/docs/methods/BUILD_JOURNAL.md`.
|
|
12
12
|
|
|
13
|
-
**Full character roster: `/docs/NAMING_REGISTRY.md`** —
|
|
13
|
+
**Full character roster: `/docs/NAMING_REGISTRY.md`** — all named characters across 9 universes. No duplicates allowed. All agents materialized as subagent definitions in `.claude/agents/`.
|
|
14
14
|
|
|
15
15
|
---
|
|
16
16
|
|
|
@@ -176,7 +176,7 @@ Users can create project-specific sub-agents that carry domain knowledge. Define
|
|
|
176
176
|
|
|
177
177
|
## Subagent Definitions (ADR-044)
|
|
178
178
|
|
|
179
|
-
All
|
|
179
|
+
All agents are materialized as `.claude/agents/{name}.md` files. Commands now use `subagent_type: {agent-id}` instead of inline prompts. Each definition contains the agent's identity, behavioral directives, domain expertise, and output format.
|
|
180
180
|
|
|
181
181
|
### The `.claude/agents/` Directory
|
|
182
182
|
|
|
@@ -206,7 +206,7 @@ Leads inherit the main session's model (Opus). Specialists run on Sonnet for cos
|
|
|
206
206
|
Commands no longer use static dispatch tables (the old ADR-042 Cross-Domain Triggers). Instead, when Opus processes a command, it:
|
|
207
207
|
|
|
208
208
|
1. Scans `git diff --stat` to identify changed files
|
|
209
|
-
2. Matches changed file paths against the `description` fields of all
|
|
209
|
+
2. Matches changed file paths against the `description` fields of all agents
|
|
210
210
|
3. Launches matching specialists automatically alongside core agents
|
|
211
211
|
|
|
212
212
|
This means a security audit that touches database migrations automatically picks up Spock (schema) without a hardcoded trigger table. The descriptions in `.claude/agents/*.md` ARE the dispatch rules.
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
|
|
26
26
|
## Dynamic Dispatch (ADR-044)
|
|
27
27
|
|
|
28
|
-
Agent dispatch is now description-driven. When Opus processes a command, it scans `git diff --stat` and matches changed files against the `description` fields of all
|
|
28
|
+
Agent dispatch is now description-driven. When Opus processes a command, it scans `git diff --stat` and matches changed files against the `description` fields of all agents in `.claude/agents/`. Matching specialists launch automatically alongside core agents. No static dispatch tables needed.
|
|
29
29
|
|
|
30
30
|
See `docs/AGENT_CLASSIFICATION.md` for the full classification and `docs/adrs/ADR-044-subagent-materialization.md` for the architecture.
|
|
31
31
|
|