@fredericboyer/dev-team 0.3.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.md +260 -61
  2. package/dist/files.d.ts +4 -0
  3. package/dist/files.js +52 -9
  4. package/dist/files.js.map +1 -1
  5. package/dist/init.js +21 -11
  6. package/dist/init.js.map +1 -1
  7. package/dist/scan.d.ts +12 -2
  8. package/dist/scan.js +103 -2
  9. package/dist/scan.js.map +1 -1
  10. package/dist/update.js +17 -3
  11. package/dist/update.js.map +1 -1
  12. package/package.json +1 -1
  13. package/templates/CLAUDE.md +16 -5
  14. package/templates/agent-memory/dev-team-borges/MEMORY.md +12 -0
  15. package/templates/agent-memory/{dev-team-architect → dev-team-brooks}/MEMORY.md +1 -1
  16. package/templates/agent-memory/{dev-team-release → dev-team-conway}/MEMORY.md +1 -1
  17. package/templates/agent-memory/{dev-team-lead → dev-team-drucker}/MEMORY.md +1 -1
  18. package/templates/agent-memory/{dev-team-docs → dev-team-tufte}/MEMORY.md +1 -1
  19. package/templates/agents/dev-team-beck.md +2 -0
  20. package/templates/agents/dev-team-borges.md +94 -0
  21. package/templates/agents/{dev-team-architect.md → dev-team-brooks.md} +4 -2
  22. package/templates/agents/{dev-team-release.md → dev-team-conway.md} +4 -2
  23. package/templates/agents/dev-team-deming.md +3 -5
  24. package/templates/agents/{dev-team-lead.md → dev-team-drucker.md} +42 -16
  25. package/templates/agents/dev-team-knuth.md +2 -0
  26. package/templates/agents/dev-team-mori.md +2 -0
  27. package/templates/agents/dev-team-szabo.md +2 -0
  28. package/templates/agents/{dev-team-docs.md → dev-team-tufte.md} +4 -2
  29. package/templates/agents/dev-team-voss.md +2 -0
  30. package/templates/hooks/dev-team-post-change-review.js +39 -6
  31. package/templates/hooks/dev-team-pre-commit-gate.js +40 -19
  32. package/templates/hooks/dev-team-pre-commit-lint.js +122 -0
  33. package/templates/hooks/dev-team-tdd-enforce.js +3 -1
  34. package/templates/hooks/dev-team-watch-list.js +2 -1
  35. package/templates/settings.json +4 -0
  36. package/templates/skills/dev-team-review/SKILL.md +3 -3
  37. package/templates/skills/dev-team-task/SKILL.md +16 -3
package/README.md CHANGED
@@ -2,105 +2,304 @@
2
2
 
3
3
  Adversarial AI agent team for any project. Installs [Claude Code](https://claude.ai/claude-code) agents, hooks, and skills that enforce quality through productive friction.
4
4
 
5
- Instead of an AI that agrees with everything, dev-team gives you six opinionated specialists that challenge each other — and you.
5
+ Instead of an AI that agrees with everything, dev-team gives you ten opinionated specialists that challenge each other — and you. Hooks enforce the process deterministically. Agents can't skip reviews. Commits are blocked until the team signs off.
6
+
7
+ ## How the system works
8
+
9
+ ```mermaid
10
+ graph TB
11
+ subgraph Skills["Skills (entry points)"]
12
+ S1["/dev-team:task"]
13
+ S2["/dev-team:review"]
14
+ S3["/dev-team:audit"]
15
+ S4["/dev-team:challenge"]
16
+ end
17
+
18
+ subgraph Lead["Orchestrator"]
19
+ L["@dev-team-lead\nAnalyzes task → selects agents\nManages review loop"]
20
+ end
21
+
22
+ subgraph Impl["Implementation Agents (sonnet)"]
23
+ Voss["@dev-team-voss\nBackend"]
24
+ Mori["@dev-team-mori\nFrontend"]
25
+ Beck["@dev-team-beck\nTests"]
26
+ Deming["@dev-team-deming\nTooling"]
27
+ Docs["@dev-team-docs\nDocumentation"]
28
+ Release["@dev-team-release\nRelease Manager"]
29
+ end
30
+
31
+ subgraph Rev["Review Agents (opus, read-only)"]
32
+ Szabo["@dev-team-szabo\nSecurity"]
33
+ Knuth["@dev-team-knuth\nQuality"]
34
+ Architect["@dev-team-architect\nArchitecture"]
35
+ end
36
+
37
+ subgraph Hooks["Hooks (deterministic enforcement)"]
38
+ H1["safety-guard\nBlocks dangerous commands"]
39
+ H2["tdd-enforce\nBlocks code without tests"]
40
+ H3["post-change-review\nFlags + spawns reviewers"]
41
+ H4["pre-commit-gate\nBlocks if reviews pending"]
42
+ H5["watch-list\nCustom pattern → agent"]
43
+ H6["task-loop\nIteration management"]
44
+ end
45
+
46
+ subgraph Mem["Persistent Memory"]
47
+ M1["agent-memory/\nPer-agent calibration"]
48
+ M2["dev-team-learnings.md\nShared knowledge"]
49
+ end
50
+
51
+ S1 --> L
52
+ S2 -->|spawns by file pattern| Rev
53
+ S3 -->|spawns Szabo+Knuth+Deming| Rev
54
+ S3 -->|spawns| Deming
55
+ S4 -->|structured review| Rev
56
+ L -->|delegates| Impl
57
+ L -->|spawns parallel| Rev
58
+ Impl -->|writes code| Hooks
59
+ H3 -->|ACTION REQUIRED| Rev
60
+ Rev -->|"[DEFECT] → fix"| Impl
61
+ Rev -->|findings| L
62
+ H4 -.->|blocks commit| L
63
+ Impl & Rev -->|write| Mem
64
+ Mem -->|loaded at start| Impl & Rev
65
+ ```
66
+
67
+ ### The flow
68
+
69
+ 1. **You give a task** → `@dev-team-lead` or `/dev-team:task`
70
+ 2. **Lead delegates** → picks the right implementer (Voss for backend, Mori for frontend, etc.)
71
+ 3. **Implementer writes code** → hooks fire automatically on every edit
72
+ 4. **Hooks flag reviewers** → `ACTION REQUIRED` directive + tracking file written
73
+ 5. **Reviewers spawn in parallel** → produce classified findings (`[DEFECT]`, `[RISK]`, etc.)
74
+ 6. **`[DEFECT]` found** → goes back to implementer for fixing
75
+ 7. **No defects remain** → tracking file cleared → commit allowed
76
+ 8. **Memory updated** → learnings persisted for next session
77
+
78
+ The key: **hooks make this mandatory**. The pre-commit gate blocks if flagged reviewers weren't spawned. Agents can't be skipped.
6
79
 
7
80
  ## Install
8
81
 
9
82
  ```bash
10
- npx @fredericboyer/dev-team init # Interactive wizard
11
- npx @fredericboyer/dev-team init --all # Everything, no prompts
83
+ npx @fredericboyer/dev-team init # Interactive wizard
84
+ npx @fredericboyer/dev-team init --all # Everything, no prompts
85
+ npx @fredericboyer/dev-team init --preset backend # Backend-heavy bundle
86
+ npx @fredericboyer/dev-team init --preset fullstack # All agents
87
+ npx @fredericboyer/dev-team init --preset data # Data pipeline bundle
12
88
  ```
13
89
 
14
90
  Requires Node.js 18+ and Claude Code.
15
91
 
16
- ## What you get
17
-
18
- ### Agents
92
+ ### After installation
19
93
 
20
- | Agent | Role | When to use |
21
- |-------|------|-------------|
22
- | `@dev-team-voss` | Backend Engineer | API design, data modeling, system architecture, error handling |
23
- | `@dev-team-mori` | Frontend/UI Engineer | Components, accessibility, UX patterns, state management |
24
- | `@dev-team-szabo` | Security Auditor | Vulnerability review, auth flows, attack surface analysis |
25
- | `@dev-team-knuth` | Quality Auditor | Coverage gaps, boundary conditions, correctness verification |
26
- | `@dev-team-beck` | Test Implementer | Writing tests, TDD cycles, translating audit findings into test cases |
27
- | `@dev-team-deming` | Tooling Optimizer | Linters, formatters, CI/CD, hooks, onboarding, automation |
28
-
29
- Szabo and Knuth use Opus (deep analysis, read-only). Voss, Mori, Beck, and Deming use Sonnet (implementation, full access).
94
+ ```bash
95
+ npx @fredericboyer/dev-team update # Upgrade to latest templates
96
+ npx @fredericboyer/dev-team create-agent <name> # Scaffold a custom agent
97
+ ```
30
98
 
31
- ### Hooks
99
+ ## What you get
32
100
 
33
- | Hook | Trigger | What it does |
34
- |------|---------|-------------|
35
- | Safety guard | Before Bash commands | Blocks dangerous commands (`rm -rf`, `chmod 777`, force push to main, `DROP TABLE/DATABASE`, `curl\|sh`, and others) |
36
- | TDD enforcement | After file edits | Blocks implementation changes when no corresponding test file exists and no tests were modified in the session |
37
- | Post-change review | After file edits | Routes files to domain agents for review (security → Szabo, API → Mori, infra → Voss, tooling → Deming, code → Knuth). Advisory, does not block. |
38
- | Pre-commit gate | On task completion | Reminds about running review agents before committing. Advisory, does not block. |
39
- | Task loop | On stop | Manages iterative task loop with adversarial review gates |
101
+ ### Agents (10)
102
+
103
+ | Agent | Role | Model | When to use |
104
+ |-------|------|-------|-------------|
105
+ | `@dev-team-lead` | **Orchestrator** | opus | Auto-delegates to specialists, manages review loops |
106
+ | `@dev-team-voss` | Backend Engineer | sonnet | API design, data modeling, system architecture |
107
+ | `@dev-team-mori` | Frontend Engineer | sonnet | Components, accessibility, UX patterns |
108
+ | `@dev-team-szabo` | Security Auditor | opus | Vulnerability review, auth flows, attack surfaces |
109
+ | `@dev-team-knuth` | Quality Auditor | opus | Coverage gaps, boundary conditions, correctness |
110
+ | `@dev-team-beck` | Test Implementer | sonnet | Writing tests, TDD cycles |
111
+ | `@dev-team-deming` | Tooling Optimizer | sonnet | Linters, formatters, CI/CD, hooks, automation |
112
+ | `@dev-team-docs` | Documentation Engineer | sonnet | Doc accuracy, stale docs, doc-code sync |
113
+ | `@dev-team-architect` | Architect | opus | Coupling, dependency direction, ADR compliance |
114
+ | `@dev-team-release` | Release Manager | sonnet | Versioning, changelog, semver validation |
115
+
116
+ **Opus** agents do deep analysis — Szabo, Knuth, and Architect are read-only reviewers; Lead uses opus for orchestration with full access. **Sonnet** agents implement (faster, full write access).
117
+
118
+ ### Hooks (6)
119
+
120
+ | Hook | Trigger | Behavior |
121
+ |------|---------|----------|
122
+ | Safety guard | Before Bash | **Blocks** dangerous commands (`rm -rf /`, force push, `DROP TABLE`, `curl\|sh`). Fails closed on malformed input. |
123
+ | TDD enforcement | After Edit/Write | **Blocks** implementation changes without corresponding test files. |
124
+ | Post-change review | After Edit/Write | **Flags + tracks** domain agents for review. Writes tracking file. Outputs `ACTION REQUIRED` directive. |
125
+ | Pre-commit gate | On task completion | **Blocks** commit if flagged agents were not spawned. Advisory for memory freshness. |
126
+ | Watch list | After Edit/Write | **Flags** custom agents based on configurable file-pattern-to-agent mappings in `dev-team.json`. |
127
+ | Task loop | On stop | Manages iteration counting for `/dev-team:task` adversarial review loop. |
40
128
 
41
129
  All hooks are Node.js scripts — work on macOS, Linux, and Windows.
42
130
 
43
- ### Skills
131
+ ### Skills (4)
44
132
 
45
133
  | Skill | What it does |
46
134
  |-------|-------------|
47
- | `/dev-team:challenge` | Critically examine a proposal, approach, or implementation |
48
- | `/dev-team:task` | Start an iterative task loop with adversarial review gates |
135
+ | `/dev-team:task` | Iterative task loop — implement, review, fix defects, repeat until clean |
136
+ | `/dev-team:review` | Parallel multi-agent review spawns agents based on changed file patterns |
137
+ | `/dev-team:audit` | Full codebase scan — Szabo (security) + Knuth (quality) + Deming (tooling) |
138
+ | `/dev-team:challenge` | Critical examination of a proposal or design decision |
139
+
140
+ ## Step-by-step usage guide
141
+
142
+ ### 1. Start a task
143
+
144
+ ```
145
+ @dev-team-lead Add rate limiting to the API endpoints
146
+ ```
147
+
148
+ Or use the task loop for automatic iteration:
149
+
150
+ ```
151
+ /dev-team:task Add rate limiting to the API endpoints
152
+ ```
153
+
154
+ Lead analyzes the task, picks Voss (backend), and spawns Szabo + Knuth as reviewers.
155
+
156
+ ### 2. Let the agents work
157
+
158
+ The implementing agent explores the codebase, writes code, and writes tests. Hooks fire on every edit:
159
+
160
+ - **TDD hook** ensures tests exist before implementation
161
+ - **Post-change-review** flags reviewers and writes a tracking file
162
+ - The LLM **spawns flagged agents as background reviewers** (mandatory, not optional)
163
+
164
+ ### 3. Review cycle
165
+
166
+ Reviewers produce classified findings:
167
+
168
+ ```
169
+ [DEFECT] @dev-team-szabo — src/api/rate-limit.ts:42
170
+ Rate limit key uses client IP, but behind a load balancer req.ip
171
+ returns the LB address. All clients share one rate limit bucket.
172
+
173
+ [RISK] @dev-team-knuth — tests/rate-limit.test.ts
174
+ Tests mock the Redis client. No integration test verifies actual
175
+ TTL expiry behavior.
176
+
177
+ [SUGGESTION] @dev-team-knuth — src/api/rate-limit.ts:15
178
+ Extract rate limit config to environment variables for per-env tuning.
179
+ ```
180
+
181
+ `[DEFECT]` goes back for fixing. `[RISK]` and `[SUGGESTION]` are reported to you.
49
182
 
50
- ### Challenge protocol
183
+ ### 4. Commit
51
184
 
52
- Agents challenge each other using classified findings:
185
+ Once all defects are resolved:
186
+ - Tracking file is deleted
187
+ - Pre-commit gate allows the commit
188
+ - Memory files are updated with learnings
53
189
 
54
- - **[DEFECT]** Concretely wrong. Blocks progress.
55
- - **[RISK]** — Not wrong today, but creates a likely failure mode. Advisory.
56
- - **[QUESTION]** — Decision needs justification. Advisory.
57
- - **[SUGGESTION]** — Works, but here's a specific improvement. Advisory.
190
+ If you try to commit with pending reviews, the pre-commit gate **blocks**:
58
191
 
59
- Rules: concrete evidence required, one exchange before escalation, human decides disputes.
192
+ ```
193
+ [dev-team pre-commit] BLOCKED — these agents were flagged but not spawned:
194
+ → @dev-team-szabo
195
+ → @dev-team-knuth
196
+ ```
197
+
198
+ ### 5. Other workflows
199
+
200
+ **Review a PR or branch:**
201
+ ```
202
+ /dev-team:review
203
+ ```
204
+
205
+ **Audit the whole codebase:**
206
+ ```
207
+ /dev-team:audit src/
208
+ ```
60
209
 
61
- ## How it works
210
+ **Challenge a design before building it:**
211
+ ```
212
+ /dev-team:challenge Should we use JWT or session tokens for auth?
213
+ ```
62
214
 
63
- ### Task loop (`/dev-team:task`)
215
+ ## Challenge protocol
64
216
 
65
- For non-trivial work, the task loop enforces quality convergence:
217
+ Every agent uses the same classification:
66
218
 
67
- 1. Implementing agent works on the task
68
- 2. Review agents challenge in parallel
69
- 3. If any `[DEFECT]` found loop continues with fixes
70
- 4. If no `[DEFECT]` remains done
71
- 5. Max iterations (default: 10) as safety cap
219
+ - **`[DEFECT]`** — Concretely wrong. Will produce incorrect behavior. **Blocks progress.**
220
+ - **`[RISK]`** Not wrong today, but creates a likely failure mode. Advisory.
221
+ - **`[QUESTION]`** Decision needs justification. Advisory.
222
+ - **`[SUGGESTION]`** Works, but here is a specific improvement. Advisory.
72
223
 
73
- The implementing agent can't declare "done" alone — the adversarial review is the quality gate.
224
+ Rules:
225
+ 1. Every finding must include concrete evidence (file, line, input, scenario)
226
+ 2. Only `[DEFECT]` blocks — everything else is advisory
227
+ 3. When agents disagree: one exchange each, then escalate to the human
228
+ 4. Human decides all disputes
74
229
 
75
- ### Agent memory
230
+ ## Agent memory
76
231
 
77
- Each agent maintains persistent memory (`.claude/agent-memory/<agent>/MEMORY.md`) that calibrates over time:
232
+ Each agent maintains persistent memory that calibrates over time:
78
233
 
79
- - Project-specific patterns and conventions
80
- - What challenges were accepted vs. overruled
81
- - Quality benchmarks learned from the codebase
234
+ ```
235
+ .claude/
236
+ agent-memory/
237
+ dev-team-voss/MEMORY.md # Voss's project-specific patterns
238
+ dev-team-szabo/MEMORY.md # Szabo's security findings
239
+ dev-team-knuth/MEMORY.md # Knuth's coverage observations
240
+ ...
241
+ dev-team-learnings.md # Shared team knowledge
242
+ ```
82
243
 
83
- Shared team learnings are stored in `.claude/dev-team-learnings.md`.
244
+ Memory is loaded at session start (first 200 lines). Agents write learnings after each task. The pre-commit gate reminds you to update memory if code changed but learnings didn't.
84
245
 
85
246
  ## Customization
86
247
 
87
- After installation, you can:
248
+ ### Edit agents
249
+
250
+ Agent definitions live in `.claude/agents/`. Edit focus areas, challenge style, or philosophy to match your project.
251
+
252
+ ### Create custom agents
253
+
254
+ ```bash
255
+ npx @fredericboyer/dev-team create-agent codd # Scaffold a new agent
256
+ ```
257
+
258
+ See [docs/custom-agents.md](docs/custom-agents.md) for the full authoring guide with format reference, blank template, and a worked example.
259
+
260
+ ### Configure watch lists
261
+
262
+ Add file-pattern-to-agent mappings in `.claude/dev-team.json`:
263
+
264
+ ```json
265
+ {
266
+ "watchLists": [
267
+ { "pattern": "src/db/", "agents": ["dev-team-codd"], "reason": "database code changed" },
268
+ { "pattern": "\\.graphql$", "agents": ["dev-team-mori"], "reason": "API schema changed" }
269
+ ]
270
+ }
271
+ ```
272
+
273
+ ### Preset bundles
274
+
275
+ | Preset | Agents included |
276
+ |--------|----------------|
277
+ | `backend` | Voss, Szabo, Knuth, Beck, Deming, Architect, Release |
278
+ | `fullstack` | All 10 agents |
279
+ | `data` | Voss, Szabo, Knuth, Beck, Deming, Docs |
280
+
281
+ `@dev-team-lead` is included in `fullstack` only. For other presets, invoke Lead manually with `@dev-team-lead` when you want automatic delegation.
282
+
283
+ ### Update
284
+
285
+ ```bash
286
+ npx @fredericboyer/dev-team update
287
+ ```
88
288
 
89
- - **Edit agent prompts** in `.claude/agents/` to adjust focus areas or challenge style
90
- - **Disable hooks** by removing entries from `.claude/settings.json`
91
- - **Add your own agents** following the same frontmatter format
92
- - **Tune agent memory** in `.claude/agent-memory/` to accelerate calibration
289
+ Updates agents, hooks, and skills to the latest templates. Preserves your agent memory, shared learnings, and CLAUDE.md content outside dev-team markers.
93
290
 
94
291
  ## What gets installed
95
292
 
96
293
  ```
97
294
  .claude/
98
- agents/ # Agent definitions (YAML frontmatter + prompt)
99
- hooks/ # Quality enforcement scripts
100
- skills/ # Skill definitions
101
- agent-memory/ # Per-agent persistent memory
102
- settings.json # Hook configuration
103
- CLAUDE.md # Project instructions (dev-team section added via markers)
295
+ agents/ # 10 agent definitions (YAML frontmatter + prompt)
296
+ hooks/ # 6 quality enforcement scripts
297
+ skills/ # 4 skill definitions
298
+ agent-memory/ # Per-agent persistent memory (never overwritten on update)
299
+ dev-team-learnings.md # Shared team knowledge (never overwritten on update)
300
+ dev-team.json # Installation preferences
301
+ settings.json # Hook configuration (merged additively)
302
+ CLAUDE.md # Project instructions (dev-team section via markers)
104
303
  ```
105
304
 
106
305
  ## Contributing
@@ -117,7 +316,7 @@ CLAUDE.md # Project instructions (dev-team section added via markers)
117
316
  npm install # Install dependencies (dev only, zero runtime deps)
118
317
  npm run build # Compile TypeScript
119
318
  npm test # Build + run all tests
120
- npm run lint # Run oxlint
319
+ npm run lint # Run oxlint (0 warnings target)
121
320
  npm run format # Run oxfmt
122
321
  ```
123
322
 
package/dist/files.d.ts CHANGED
@@ -50,6 +50,10 @@ export declare function mergeClaudeMd(filePath: string, newContent: string): "cr
50
50
  * Returns empty array if directory doesn't exist.
51
51
  */
52
52
  export declare function listSubdirectories(dir: string): string[];
53
+ /**
54
+ * Returns the current package version from package.json.
55
+ */
56
+ export declare function getPackageVersion(): string;
53
57
  /**
54
58
  * Lists all files in a directory recursively.
55
59
  */
package/dist/files.js CHANGED
@@ -12,6 +12,7 @@ exports.writeFile = writeFile;
12
12
  exports.mergeSettings = mergeSettings;
13
13
  exports.mergeClaudeMd = mergeClaudeMd;
14
14
  exports.listSubdirectories = listSubdirectories;
15
+ exports.getPackageVersion = getPackageVersion;
15
16
  exports.listFilesRecursive = listFilesRecursive;
16
17
  const fs_1 = __importDefault(require("fs"));
17
18
  const path_1 = __importDefault(require("path"));
@@ -38,8 +39,11 @@ function fileExists(absPath) {
38
39
  try {
39
40
  return fs_1.default.statSync(absPath).isFile();
40
41
  }
41
- catch {
42
- return false;
42
+ catch (err) {
43
+ if (err.code === "ENOENT") {
44
+ return false;
45
+ }
46
+ throw err;
43
47
  }
44
48
  }
45
49
  /**
@@ -49,8 +53,11 @@ function dirExists(absPath) {
49
53
  try {
50
54
  return fs_1.default.statSync(absPath).isDirectory();
51
55
  }
52
- catch {
53
- return false;
56
+ catch (err) {
57
+ if (err.code === "ENOENT") {
58
+ return false;
59
+ }
60
+ throw err;
54
61
  }
55
62
  }
56
63
  /**
@@ -60,8 +67,16 @@ function readFile(absPath) {
60
67
  try {
61
68
  return fs_1.default.readFileSync(absPath, "utf-8");
62
69
  }
63
- catch {
64
- return null;
70
+ catch (err) {
71
+ const code = err.code;
72
+ if (code === "ENOENT") {
73
+ return null;
74
+ }
75
+ if (code === "EACCES" || code === "EPERM") {
76
+ console.warn(`Warning: permission denied reading ${absPath}`);
77
+ return null;
78
+ }
79
+ throw err;
65
80
  }
66
81
  }
67
82
  /**
@@ -83,7 +98,14 @@ function mergeSettings(existingPath, newFragment) {
83
98
  }
84
99
  catch (err) {
85
100
  if (err.code !== "ENOENT") {
86
- console.warn(`Warning: ${existingPath} exists but is not valid JSON. Starting fresh.`);
101
+ const backupPath = existingPath + ".bak";
102
+ try {
103
+ fs_1.default.copyFileSync(existingPath, backupPath);
104
+ console.warn(`Warning: ${existingPath} is not valid JSON. Backed up to ${backupPath}. Starting fresh.`);
105
+ }
106
+ catch {
107
+ console.warn(`Warning: ${existingPath} is not valid JSON. Starting fresh.`);
108
+ }
87
109
  }
88
110
  }
89
111
  if (!existing.hooks) {
@@ -128,8 +150,14 @@ function mergeClaudeMd(filePath, newContent) {
128
150
  writeFile(filePath, existing.trimEnd() + "\n\n" + newContent + "\n");
129
151
  return "appended";
130
152
  }
131
- const beforeMarker = existing.substring(0, existing.indexOf(BEGIN_MARKER));
132
- const afterMarker = existing.substring(existing.indexOf(END_MARKER) + END_MARKER.length);
153
+ const firstBegin = existing.indexOf(BEGIN_MARKER);
154
+ const firstEnd = existing.indexOf(END_MARKER);
155
+ const secondBegin = existing.indexOf(BEGIN_MARKER, firstBegin + 1);
156
+ if (secondBegin !== -1) {
157
+ console.warn("Warning: Found duplicate dev-team marker pairs in CLAUDE.md. Replacing the first pair only and preserving all other content.");
158
+ }
159
+ const beforeMarker = existing.substring(0, firstBegin);
160
+ const afterMarker = existing.substring(firstEnd + END_MARKER.length);
133
161
  writeFile(filePath, beforeMarker + newContent + afterMarker);
134
162
  return "replaced";
135
163
  }
@@ -151,6 +179,21 @@ function listSubdirectories(dir) {
151
179
  return [];
152
180
  }
153
181
  }
182
+ /**
183
+ * Returns the current package version from package.json.
184
+ */
185
+ function getPackageVersion() {
186
+ const pkgPath = path_1.default.join(templateDir(), "..", "package.json");
187
+ const content = readFile(pkgPath);
188
+ if (!content) {
189
+ throw new Error("Cannot read package.json");
190
+ }
191
+ const parsed = JSON.parse(content);
192
+ if (!parsed.version) {
193
+ throw new Error("package.json missing version field");
194
+ }
195
+ return parsed.version;
196
+ }
154
197
  /**
155
198
  * Lists all files in a directory recursively.
156
199
  */
package/dist/files.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"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"}
package/dist/init.js CHANGED
@@ -66,25 +66,30 @@ const ALL_AGENTS = [
66
66
  description: "Tooling & DX Optimizer",
67
67
  },
68
68
  {
69
- label: "Docs",
70
- file: "dev-team-docs.md",
69
+ label: "Tufte",
70
+ file: "dev-team-tufte.md",
71
71
  description: "Documentation Engineer",
72
72
  },
73
73
  {
74
- label: "Architect",
75
- file: "dev-team-architect.md",
74
+ label: "Brooks",
75
+ file: "dev-team-brooks.md",
76
76
  description: "Architect",
77
77
  },
78
78
  {
79
- label: "Release",
80
- file: "dev-team-release.md",
79
+ label: "Conway",
80
+ file: "dev-team-conway.md",
81
81
  description: "Release Manager",
82
82
  },
83
83
  {
84
- label: "Lead",
85
- file: "dev-team-lead.md",
84
+ label: "Drucker",
85
+ file: "dev-team-drucker.md",
86
86
  description: "Orchestrator / Team Lead",
87
87
  },
88
+ {
89
+ label: "Borges",
90
+ file: "dev-team-borges.md",
91
+ description: "Librarian (end-of-task knowledge review)",
92
+ },
88
93
  ];
89
94
  exports.ALL_AGENTS = ALL_AGENTS;
90
95
  const QUALITY_HOOKS = [
@@ -113,6 +118,11 @@ const QUALITY_HOOKS = [
113
118
  file: "dev-team-task-loop.js",
114
119
  description: "Iterative task loop with adversarial review gates",
115
120
  },
121
+ {
122
+ label: "Pre-commit lint",
123
+ file: "dev-team-pre-commit-lint.js",
124
+ description: "Run lint + format checks before git commit",
125
+ },
116
126
  {
117
127
  label: "Watch list",
118
128
  file: "dev-team-watch-list.js",
@@ -124,7 +134,7 @@ const PRESETS = {
124
134
  backend: {
125
135
  label: "backend",
126
136
  description: "Backend-heavy — API, security, architecture, quality",
127
- agents: ["Voss", "Szabo", "Knuth", "Beck", "Deming", "Architect", "Release"],
137
+ agents: ["Voss", "Szabo", "Knuth", "Beck", "Deming", "Brooks", "Conway", "Drucker", "Borges"],
128
138
  hooks: QUALITY_HOOKS.map((h) => h.label),
129
139
  },
130
140
  fullstack: {
@@ -136,7 +146,7 @@ const PRESETS = {
136
146
  data: {
137
147
  label: "data",
138
148
  description: "Data pipeline — backend, quality, security, tooling",
139
- agents: ["Voss", "Szabo", "Knuth", "Beck", "Deming", "Docs"],
149
+ agents: ["Voss", "Szabo", "Knuth", "Beck", "Deming", "Tufte", "Drucker", "Borges"],
140
150
  hooks: QUALITY_HOOKS.map((h) => h.label),
141
151
  },
142
152
  };
@@ -317,7 +327,7 @@ async function run(targetDir, flags = []) {
317
327
  const claudeResult = (0, files_1.mergeClaudeMd)(claudeMdPath, claudeMdTemplate);
318
328
  // Save preferences
319
329
  const prefs = {
320
- version: "0.3.1",
330
+ version: (0, files_1.getPackageVersion)(),
321
331
  agents: selectedAgents,
322
332
  hooks: selectedHooks,
323
333
  issueTracker,
package/dist/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}