@jaggerxtrm/specialists 3.7.1 → 3.10.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 (193) hide show
  1. package/README.md +23 -9
  2. package/config/mandatory-rules/README.md +113 -0
  3. package/config/mandatory-rules/gitnexus-required.md +12 -1
  4. package/config/mandatory-rules/serena-cheatsheet.md +41 -0
  5. package/config/skills/specialists-creator/SKILL.md +6 -32
  6. package/config/skills/specialists-creator/scripts/audit-spec-uniformity.mjs +86 -0
  7. package/config/skills/specialists-creator/scripts/scaffold-specialist.ts +1 -6
  8. package/config/skills/update-specialists/SKILL.md +83 -8
  9. package/config/skills/using-specialists/SKILL.md +13 -0
  10. package/config/skills/using-specialists-v2/SKILL.md +639 -0
  11. package/config/specialists/debugger.specialist.json +7 -9
  12. package/config/specialists/executor.specialist.json +5 -6
  13. package/config/specialists/explorer.specialist.json +3 -7
  14. package/config/specialists/memory-processor.specialist.json +8 -9
  15. package/config/specialists/node-coordinator.specialist.json +1 -5
  16. package/config/specialists/overthinker.specialist.json +7 -13
  17. package/config/specialists/planner.specialist.json +12 -12
  18. package/config/specialists/researcher.specialist.json +9 -14
  19. package/config/specialists/reviewer.specialist.json +8 -8
  20. package/config/specialists/specialists-creator.specialist.json +7 -2
  21. package/config/specialists/sync-docs.specialist.json +7 -11
  22. package/config/specialists/test-runner.specialist.json +4 -13
  23. package/config/specialists/xt-merge.specialist.json +3 -5
  24. package/dist/index.js +3066 -1368
  25. package/dist/lib.js +13219 -0
  26. package/dist/types/cli/attach.d.ts +2 -0
  27. package/dist/types/cli/attach.d.ts.map +1 -0
  28. package/dist/types/cli/clean.d.ts +2 -0
  29. package/dist/types/cli/clean.d.ts.map +1 -0
  30. package/dist/types/cli/config.d.ts +2 -0
  31. package/dist/types/cli/config.d.ts.map +1 -0
  32. package/dist/types/cli/db.d.ts +2 -0
  33. package/dist/types/cli/db.d.ts.map +1 -0
  34. package/dist/types/cli/doctor.d.ts +15 -0
  35. package/dist/types/cli/doctor.d.ts.map +1 -0
  36. package/dist/types/cli/edit.d.ts +2 -0
  37. package/dist/types/cli/edit.d.ts.map +1 -0
  38. package/dist/types/cli/end.d.ts +2 -0
  39. package/dist/types/cli/end.d.ts.map +1 -0
  40. package/dist/types/cli/epic.d.ts +8 -0
  41. package/dist/types/cli/epic.d.ts.map +1 -0
  42. package/dist/types/cli/feed.d.ts +19 -0
  43. package/dist/types/cli/feed.d.ts.map +1 -0
  44. package/dist/types/cli/follow-up.d.ts +2 -0
  45. package/dist/types/cli/follow-up.d.ts.map +1 -0
  46. package/dist/types/cli/format-helpers.d.ts +108 -0
  47. package/dist/types/cli/format-helpers.d.ts.map +1 -0
  48. package/dist/types/cli/help.d.ts +2 -0
  49. package/dist/types/cli/help.d.ts.map +1 -0
  50. package/dist/types/cli/init.d.ts +10 -0
  51. package/dist/types/cli/init.d.ts.map +1 -0
  52. package/dist/types/cli/install.d.ts +2 -0
  53. package/dist/types/cli/install.d.ts.map +1 -0
  54. package/dist/types/cli/list-rules.d.ts +2 -0
  55. package/dist/types/cli/list-rules.d.ts.map +1 -0
  56. package/dist/types/cli/list.d.ts +13 -0
  57. package/dist/types/cli/list.d.ts.map +1 -0
  58. package/dist/types/cli/memory.d.ts +2 -0
  59. package/dist/types/cli/memory.d.ts.map +1 -0
  60. package/dist/types/cli/merge.d.ts +79 -0
  61. package/dist/types/cli/merge.d.ts.map +1 -0
  62. package/dist/types/cli/models.d.ts +2 -0
  63. package/dist/types/cli/models.d.ts.map +1 -0
  64. package/dist/types/cli/node.d.ts +2 -0
  65. package/dist/types/cli/node.d.ts.map +1 -0
  66. package/dist/types/cli/poll.d.ts +25 -0
  67. package/dist/types/cli/poll.d.ts.map +1 -0
  68. package/dist/types/cli/ps.d.ts +2 -0
  69. package/dist/types/cli/ps.d.ts.map +1 -0
  70. package/dist/types/cli/quickstart.d.ts +2 -0
  71. package/dist/types/cli/quickstart.d.ts.map +1 -0
  72. package/dist/types/cli/result.d.ts +2 -0
  73. package/dist/types/cli/result.d.ts.map +1 -0
  74. package/dist/types/cli/resume.d.ts +2 -0
  75. package/dist/types/cli/resume.d.ts.map +1 -0
  76. package/dist/types/cli/run.d.ts +2 -0
  77. package/dist/types/cli/run.d.ts.map +1 -0
  78. package/dist/types/cli/script.d.ts +23 -0
  79. package/dist/types/cli/script.d.ts.map +1 -0
  80. package/dist/types/cli/serve.d.ts +17 -0
  81. package/dist/types/cli/serve.d.ts.map +1 -0
  82. package/dist/types/cli/setup.d.ts +2 -0
  83. package/dist/types/cli/setup.d.ts.map +1 -0
  84. package/dist/types/cli/status.d.ts +4 -0
  85. package/dist/types/cli/status.d.ts.map +1 -0
  86. package/dist/types/cli/steer.d.ts +2 -0
  87. package/dist/types/cli/steer.d.ts.map +1 -0
  88. package/dist/types/cli/stop.d.ts +2 -0
  89. package/dist/types/cli/stop.d.ts.map +1 -0
  90. package/dist/types/cli/tmux-utils.d.ts +23 -0
  91. package/dist/types/cli/tmux-utils.d.ts.map +1 -0
  92. package/dist/types/cli/validate.d.ts +11 -0
  93. package/dist/types/cli/validate.d.ts.map +1 -0
  94. package/dist/types/cli/version.d.ts +2 -0
  95. package/dist/types/cli/version.d.ts.map +1 -0
  96. package/dist/types/cli/view.d.ts +2 -0
  97. package/dist/types/cli/view.d.ts.map +1 -0
  98. package/dist/types/constants.d.ts +140 -0
  99. package/dist/types/constants.d.ts.map +1 -0
  100. package/dist/types/index.d.ts +8 -0
  101. package/dist/types/index.d.ts.map +1 -0
  102. package/dist/types/lib.d.ts +5 -0
  103. package/dist/types/lib.d.ts.map +1 -0
  104. package/dist/types/pi/backendMap.d.ts +3 -0
  105. package/dist/types/pi/backendMap.d.ts.map +1 -0
  106. package/dist/types/pi/session.d.ts +209 -0
  107. package/dist/types/pi/session.d.ts.map +1 -0
  108. package/dist/types/server.d.ts +10 -0
  109. package/dist/types/server.d.ts.map +1 -0
  110. package/dist/types/specialist/beads.d.ts +60 -0
  111. package/dist/types/specialist/beads.d.ts.map +1 -0
  112. package/dist/types/specialist/chain-identity.d.ts +18 -0
  113. package/dist/types/specialist/chain-identity.d.ts.map +1 -0
  114. package/dist/types/specialist/epic-lifecycle.d.ts +57 -0
  115. package/dist/types/specialist/epic-lifecycle.d.ts.map +1 -0
  116. package/dist/types/specialist/epic-readiness.d.ts +55 -0
  117. package/dist/types/specialist/epic-readiness.d.ts.map +1 -0
  118. package/dist/types/specialist/epic-reconciler.d.ts +35 -0
  119. package/dist/types/specialist/epic-reconciler.d.ts.map +1 -0
  120. package/dist/types/specialist/hooks.d.ts +44 -0
  121. package/dist/types/specialist/hooks.d.ts.map +1 -0
  122. package/dist/types/specialist/job-control.d.ts +29 -0
  123. package/dist/types/specialist/job-control.d.ts.map +1 -0
  124. package/dist/types/specialist/job-file-output.d.ts +4 -0
  125. package/dist/types/specialist/job-file-output.d.ts.map +1 -0
  126. package/dist/types/specialist/job-root.d.ts +21 -0
  127. package/dist/types/specialist/job-root.d.ts.map +1 -0
  128. package/dist/types/specialist/jobRegistry.d.ts +69 -0
  129. package/dist/types/specialist/jobRegistry.d.ts.map +1 -0
  130. package/dist/types/specialist/json-output.d.ts +2 -0
  131. package/dist/types/specialist/json-output.d.ts.map +1 -0
  132. package/dist/types/specialist/loader.d.ts +48 -0
  133. package/dist/types/specialist/loader.d.ts.map +1 -0
  134. package/dist/types/specialist/mandatory-rules.d.ts +41 -0
  135. package/dist/types/specialist/mandatory-rules.d.ts.map +1 -0
  136. package/dist/types/specialist/memory-retrieval.d.ts +34 -0
  137. package/dist/types/specialist/memory-retrieval.d.ts.map +1 -0
  138. package/dist/types/specialist/model-display.d.ts +4 -0
  139. package/dist/types/specialist/model-display.d.ts.map +1 -0
  140. package/dist/types/specialist/node-contract.d.ts +343 -0
  141. package/dist/types/specialist/node-contract.d.ts.map +1 -0
  142. package/dist/types/specialist/node-resolve.d.ts +5 -0
  143. package/dist/types/specialist/node-resolve.d.ts.map +1 -0
  144. package/dist/types/specialist/node-supervisor.d.ts +198 -0
  145. package/dist/types/specialist/node-supervisor.d.ts.map +1 -0
  146. package/dist/types/specialist/observability-db.d.ts +19 -0
  147. package/dist/types/specialist/observability-db.d.ts.map +1 -0
  148. package/dist/types/specialist/observability-sqlite.d.ts +218 -0
  149. package/dist/types/specialist/observability-sqlite.d.ts.map +1 -0
  150. package/dist/types/specialist/pipeline.d.ts +23 -0
  151. package/dist/types/specialist/pipeline.d.ts.map +1 -0
  152. package/dist/types/specialist/process-liveness.d.ts +2 -0
  153. package/dist/types/specialist/process-liveness.d.ts.map +1 -0
  154. package/dist/types/specialist/runner.d.ts +98 -0
  155. package/dist/types/specialist/runner.d.ts.map +1 -0
  156. package/dist/types/specialist/schema.d.ts +2875 -0
  157. package/dist/types/specialist/schema.d.ts.map +1 -0
  158. package/dist/types/specialist/script-runner.d.ts +47 -0
  159. package/dist/types/specialist/script-runner.d.ts.map +1 -0
  160. package/dist/types/specialist/supervisor.d.ts +142 -0
  161. package/dist/types/specialist/supervisor.d.ts.map +1 -0
  162. package/dist/types/specialist/templateEngine.d.ts +2 -0
  163. package/dist/types/specialist/templateEngine.d.ts.map +1 -0
  164. package/dist/types/specialist/timeline-events.d.ts +563 -0
  165. package/dist/types/specialist/timeline-events.d.ts.map +1 -0
  166. package/dist/types/specialist/timeline-query.d.ts +129 -0
  167. package/dist/types/specialist/timeline-query.d.ts.map +1 -0
  168. package/dist/types/specialist/worktree-gc.d.ts +24 -0
  169. package/dist/types/specialist/worktree-gc.d.ts.map +1 -0
  170. package/dist/types/specialist/worktree.d.ts +69 -0
  171. package/dist/types/specialist/worktree.d.ts.map +1 -0
  172. package/dist/types/tools/specialist/feed_specialist.tool.d.ts +51 -0
  173. package/dist/types/tools/specialist/feed_specialist.tool.d.ts.map +1 -0
  174. package/dist/types/tools/specialist/list_specialists.tool.d.ts +28 -0
  175. package/dist/types/tools/specialist/list_specialists.tool.d.ts.map +1 -0
  176. package/dist/types/tools/specialist/resume_specialist.tool.d.ts +46 -0
  177. package/dist/types/tools/specialist/resume_specialist.tool.d.ts.map +1 -0
  178. package/dist/types/tools/specialist/specialist_init.tool.d.ts +26 -0
  179. package/dist/types/tools/specialist/specialist_init.tool.d.ts.map +1 -0
  180. package/dist/types/tools/specialist/specialist_status.tool.d.ts +33 -0
  181. package/dist/types/tools/specialist/specialist_status.tool.d.ts.map +1 -0
  182. package/dist/types/tools/specialist/steer_specialist.tool.d.ts +38 -0
  183. package/dist/types/tools/specialist/steer_specialist.tool.d.ts.map +1 -0
  184. package/dist/types/tools/specialist/stop_specialist.tool.d.ts +31 -0
  185. package/dist/types/tools/specialist/stop_specialist.tool.d.ts.map +1 -0
  186. package/dist/types/tools/specialist/use_specialist.tool.d.ts +93 -0
  187. package/dist/types/tools/specialist/use_specialist.tool.d.ts.map +1 -0
  188. package/dist/types/utils/circuitBreaker.d.ts +19 -0
  189. package/dist/types/utils/circuitBreaker.d.ts.map +1 -0
  190. package/dist/types/utils/logger.d.ts +11 -0
  191. package/dist/types/utils/logger.d.ts.map +1 -0
  192. package/package.json +13 -2
  193. package/config/specialists/parallel-review.specialist.json +0 -65
@@ -0,0 +1,639 @@
1
+ ---
2
+ name: using-specialists-v2
3
+ description: >
4
+ Use this skill to orchestrate substantial work through project specialists with
5
+ a bead-first workflow. It covers when to delegate, how to write complete bead
6
+ task contracts, how to run explorer/executor/reviewer/test chains, how to use
7
+ --worktree/--job/--epic/--context-depth, and how to merge or recover specialist
8
+ work without drift. Trigger for code review, debugging, implementation,
9
+ planning, test generation, doc sync, multi-chain epics, and any question about
10
+ specialist orchestration.
11
+ version: 1.0
12
+ ---
13
+
14
+ # Specialists V2
15
+
16
+ You are the orchestrator. Your job is to specify the work, choose the right specialist, launch the right chain, monitor progress, and synthesize results. Do not turn orchestration into vague delegation: `--bead` is the prompt.
17
+
18
+ Use this skill for substantial work: codebase exploration, debugging, implementation, review, testing, documentation sync, planning, specialist authoring, and multi-chain orchestration. Do small deterministic edits directly when the scope is already clear and delegation would add ceremony.
19
+
20
+ ## Hard Rules
21
+
22
+ 1. `--bead` is the prompt for tracked work.
23
+ 2. Do not dispatch until the bead is a complete task contract.
24
+ 3. Never use `--prompt` to supplement tracked work. Update bead notes instead.
25
+ 4. Use explorer only when the implementation path is unknown.
26
+ 5. Use executor only after scope, constraints, and validation are clear enough to act.
27
+ 6. Edit-capable specialists use `--worktree` for the first implementation job.
28
+ 7. Reviewer gets its own bead and enters the executor workspace with `--job <exec-job>`.
29
+ 8. Use `--context-depth 2` for chained work unless there is a specific reason not to.
30
+ 9. Keep executor/debugger jobs alive through review so they can be resumed.
31
+ 10. Merge specialist branches with `sp merge` or `sp epic merge`, never manual `git merge`.
32
+ 11. Specialists must not perform destructive or irreversible actions.
33
+ 12. If a specialist fails, inspect feed/result and either steer, resume, rerun with a better bead, or report the blocker.
34
+ 13. Drive chains autonomously. Do not ask the operator to approve routine stage transitions. Escalate only on critical events (see Autonomous Drive section).
35
+
36
+ ## Autonomous Drive
37
+
38
+ Once the operator has approved a plan or specified a task, push the chain to completion without pausing for per-stage confirmation. Dispatch, wait with `sleep`, read results, dispatch the next stage, review, and merge. Treat each stage transition as a mechanical step — not a decision point.
39
+
40
+ Escalate to the operator only for:
41
+
42
+ - Reviewer verdict `FAIL` (not `PARTIAL` — fix those autonomously via resume).
43
+ - Destructive/irreversible action required (history rewrite, force push, credential rotation, mass delete, prod-impacting op).
44
+ - Repeated specialist crashes on the same chain (2+ in a row with same failure mode).
45
+ - Context-exhaustion risk above 80% with no clean handoff available.
46
+ - Ambiguous requirements the bead cannot resolve (rare — fix by updating the bead contract first and retrying).
47
+ - Explicit user-facing question embedded in reviewer output that needs human judgment.
48
+
49
+ Anything else — stage transitions, routine reviewer `PARTIAL` with concrete findings, merge gates passing, test retries — proceed without asking.
50
+
51
+ ### Sleep-Based Polling
52
+
53
+ Use `sleep` between dispatch and status check. Size the sleep to the observed median for the specialist and adjust by polling once and checking `sp ps <job-id>`:
54
+
55
+ | Specialist | First sleep | Poll interval after |
56
+ | --- | --- | --- |
57
+ | executor | `sleep 180` (3m) | 60-120s |
58
+ | reviewer | `sleep 120` (2m) | 60s |
59
+ | explorer | `sleep 180` (3m) | 60s |
60
+ | debugger | `sleep 480` (8m) | 120s |
61
+ | overthinker | `sleep 240` (4m) | 60s |
62
+ | planner | `sleep 300` (5m) | 60s |
63
+ | sync-docs | `sleep 180` (3m) | 60s |
64
+ | researcher | `sleep 120` (2m) | 60s |
65
+ | test-runner | `sleep 120` (2m) | 60s |
66
+
67
+ Medians are empirical (derived from run history). Adjust for observed run complexity. If `sp ps` shows `running` after the first sleep, poll once more before assuming stuck. If `waiting`, read `sp result` — reviewer verdicts and READ_ONLY outputs land in the bead notes automatically.
68
+
69
+ Do not busy-loop `sp ps` in tight intervals. One sleep + one confirmation poll is enough for routine runs.
70
+
71
+ ### Drive Loop Pattern
72
+
73
+ ```bash
74
+ # Dispatch
75
+ JOB=$(sp run <specialist> --bead <bead-id> --context-depth 2 --background 2>&1 | tail -1)
76
+
77
+ # Sleep for median
78
+ sleep 180
79
+
80
+ # Check
81
+ sp ps "$JOB"
82
+
83
+ # Still running? Short follow-up sleep, then re-check
84
+ # Waiting or done? Read result
85
+ sp result "$JOB"
86
+
87
+ # Advance to next stage based on output — no operator prompt
88
+ ```
89
+
90
+ Launch sleeps in the background when other orchestration work can proceed in parallel; the harness will notify on completion. Return to `sp ps`/`sp result` after the median interval elapses.
91
+
92
+ ## Bead Task Contract
93
+
94
+ Every specialist-bound bead must be a usable prompt. Title-only beads are not acceptable.
95
+
96
+ Required fields:
97
+
98
+ ```text
99
+ PROBLEM: What is wrong or needed.
100
+ SUCCESS: Observable completion criteria.
101
+ SCOPE: Files, symbols, commands, docs, or discovery area.
102
+ NON_GOALS: Explicitly out of scope.
103
+ CONSTRAINTS: Compatibility, safety, style, permissions, sequencing.
104
+ VALIDATION: Checks/tests/review expected before closure.
105
+ OUTPUT: Expected handoff format.
106
+ ```
107
+
108
+ Use `bd update <id> --notes "CONTRACT: ..."` when an existing bead is too vague.
109
+
110
+ ### Contract By Bead Type
111
+
112
+ Task/epic bead:
113
+
114
+ ```text
115
+ PROBLEM: User-facing or project-facing objective.
116
+ SUCCESS: End-state across all child beads.
117
+ SCOPE: Area of project affected.
118
+ NON_GOALS: Boundaries for the entire effort.
119
+ CONSTRAINTS: Sequencing, compatibility, branch/merge rules.
120
+ VALIDATION: Final checks before close.
121
+ OUTPUT: What the orchestrator reports back.
122
+ ```
123
+
124
+ Explorer bead:
125
+
126
+ ```text
127
+ PROBLEM: What is unknown.
128
+ SUCCESS: Questions answered with evidence.
129
+ SCOPE: Code areas, docs, commands, or symbols to inspect.
130
+ NON_GOALS: No implementation, no broad audit outside scope.
131
+ CONSTRAINTS: READ_ONLY, prefer GitNexus/code intelligence when available.
132
+ VALIDATION: Findings cite files/symbols/flows.
133
+ OUTPUT: Findings, risks, recommended implementation track, stop condition.
134
+ ```
135
+
136
+ Executor bead:
137
+
138
+ ```text
139
+ PROBLEM: Exact behavior or artifact to change.
140
+ SUCCESS: Observable acceptance criteria.
141
+ SCOPE: Target files/symbols; include "do not touch" boundaries.
142
+ NON_GOALS: Related improvements explicitly excluded.
143
+ CONSTRAINTS: API compatibility, style, migrations, safety.
144
+ VALIDATION: Lint/typecheck/tests or manual checks.
145
+ OUTPUT: Changed files, verification, residual risks.
146
+ ```
147
+
148
+ Reviewer bead:
149
+
150
+ ```text
151
+ PROBLEM: Verify executor output against requirements.
152
+ SUCCESS: PASS only if requirements and validation are satisfied.
153
+ SCOPE: Executor job, diff, task bead, acceptance criteria.
154
+ NON_GOALS: Do not rewrite unless explicitly asked.
155
+ CONSTRAINTS: Code-review mindset; findings first.
156
+ VALIDATION: Run or inspect required checks where feasible.
157
+ OUTPUT: PASS/PARTIAL/FAIL with file/line findings.
158
+ ```
159
+
160
+ Test bead:
161
+
162
+ ```text
163
+ PROBLEM: Validate one or more implementation chains.
164
+ SUCCESS: Relevant tests/checks pass or failures are diagnosed.
165
+ SCOPE: Commands and implementation beads covered.
166
+ NON_GOALS: No broad unrelated suite expansion unless requested.
167
+ CONSTRAINTS: Avoid destructive cleanup; report flaky/infra failures separately.
168
+ VALIDATION: Command output and failure interpretation.
169
+ OUTPUT: Pass/fail summary, failing tests, likely owner.
170
+ ```
171
+
172
+ ## Choosing The Specialist
173
+
174
+ Run `specialists list` if you need the live registry. Choose by task, not by habit.
175
+
176
+ | Need | Specialist | Use when |
177
+ | --- | --- | --- |
178
+ | Architecture/code mapping | `explorer` | You need evidence and a scoped implementation track. |
179
+ | Root-cause analysis | `debugger` | There is a symptom, stack trace, failing test, or regression. |
180
+ | Planning/decomposition | `planner` | You need beads, dependencies, file scopes, or sequencing. |
181
+ | Design/tradeoffs | `overthinker` | The approach is risky, ambiguous, or needs critique. |
182
+ | Implementation | `executor` | The contract is clear enough to write code or docs. |
183
+ | Compliance/code review | `reviewer` | An executor/debugger produced changes that need a verdict. |
184
+ | Multiple review perspectives | `parallel-review` | A critical diff needs independent review passes. |
185
+ | Test execution | `test-runner` | You need suites run and failures interpreted. |
186
+ | Docs audit/sync | `sync-docs` | Docs may be stale or need targeted synchronization. |
187
+ | External/live research | `researcher` | Current library/docs/media lookup is needed. |
188
+ | Specialist config | `specialists-creator` | Creating or changing specialist JSON/config. |
189
+
190
+ Selection rules:
191
+
192
+ - Explorer is READ_ONLY and should answer specific questions.
193
+ - Debugger is better than explorer for failures because it traces causes and remediation.
194
+ - Executor does not own full test validation; use reviewer/test-runner for that phase.
195
+ - Reviewer always uses its own bead plus `--job <executor-job>`.
196
+ - Sync-docs is for audit/sync; executor is for heavy doc rewrites.
197
+ - Specialists-creator should precede specialist config/schema edits.
198
+
199
+ ## Command Surface
200
+
201
+ Daily commands:
202
+
203
+ ```bash
204
+ specialists list
205
+ specialists doctor
206
+ specialists run <name> --bead <id> --context-depth 2 --background
207
+ specialists run executor --worktree --bead <impl-bead> --context-depth 2 --background
208
+ specialists run reviewer --bead <review-bead> --job <exec-job> --context-depth 2 --keep-alive --background
209
+ specialists ps
210
+ specialists ps <job-id>
211
+ specialists feed <job-id>
212
+ specialists feed -f
213
+ specialists result <job-id>
214
+ specialists steer <job-id> "new direction"
215
+ specialists resume <job-id> "next task"
216
+ specialists stop <job-id>
217
+ ```
218
+
219
+ Publication commands:
220
+
221
+ ```bash
222
+ sp merge <chain-root-bead>
223
+ sp epic status <epic-id>
224
+ sp epic sync <epic-id> --apply
225
+ sp epic merge <epic-id>
226
+ sp end
227
+ ```
228
+
229
+ Avoid `specialists status --job` for normal monitoring; prefer `sp ps <job-id>`.
230
+
231
+ ## Flag Semantics
232
+
233
+ `--bead <id>` is the task prompt and tracked work identity.
234
+
235
+ `--context-depth N` controls parent/ancestor bead context. Use `--context-depth 2` for chains so the specialist sees its own bead, predecessor output, and parent task context.
236
+
237
+ `--worktree` provisions a new isolated workspace and branch for edit-capable work. Use it for the first executor/debugger job that writes files.
238
+
239
+ `--job <id>` reuses an existing job's workspace. Use it for reviewer and fix passes. The caller's own `--bead` remains authoritative; `--job` only selects the workspace.
240
+
241
+ `--epic <id>` explicitly associates a job with an epic. Use it for prep jobs whose parent is not the epic but should appear in epic status/readiness.
242
+
243
+ `--keep-alive` keeps interactive specialists waiting after a turn. Use for reviewer, overthinker, researcher, sync-docs, and any job expected to receive follow-up.
244
+
245
+ `--worktree` and `--job` are mutually exclusive.
246
+
247
+ ## Golden Path: Single Implementation Chain
248
+
249
+ Use this when one implementation branch can solve the task.
250
+
251
+ Create a root task bead:
252
+
253
+ ```bash
254
+ bd create --title "Fix token refresh retry on 401" --type bug --priority 2 \
255
+ --description "PROBLEM: API clients fail permanently when token refresh receives a transient 401.
256
+ SUCCESS: Refresh retries are bounded, observable, and callers receive the same public error shape after exhaustion.
257
+ SCOPE: src/auth/refresh.ts, src/auth/client.ts, related auth tests.
258
+ NON_GOALS: Do not redesign auth storage or change public client API.
259
+ CONSTRAINTS: Preserve existing telemetry names and backward compatibility.
260
+ VALIDATION: lint, tsc, auth refresh tests or documented targeted equivalent.
261
+ OUTPUT: Changed files, validation results, residual risk."
262
+ ```
263
+
264
+ Create explorer only if the implementation path is unclear:
265
+
266
+ ```bash
267
+ bd create --title "Explore token refresh retry path" --type task --priority 2 \
268
+ --description "PROBLEM: Need exact refresh call graph and retry insertion point.
269
+ SUCCESS: Identify caller/callee path, current retry behavior, and safest files to modify.
270
+ SCOPE: auth refresh/client modules and tests only.
271
+ NON_GOALS: No implementation.
272
+ CONSTRAINTS: READ_ONLY; cite files/symbols.
273
+ VALIDATION: Findings include recommended executor scope and risks.
274
+ OUTPUT: Evidence-backed implementation plan."
275
+ bd dep add <explore> <task>
276
+ specialists run explorer --bead <explore> --context-depth 2 --background
277
+ specialists result <explore-job>
278
+ ```
279
+
280
+ Create implementation bead:
281
+
282
+ ```bash
283
+ bd create --title "Implement bounded token refresh retry" --type task --priority 2 \
284
+ --description "PROBLEM: Implement the retry behavior identified by exploration.
285
+ SUCCESS: 401 refresh retry is bounded and preserves public errors after exhaustion.
286
+ SCOPE: src/auth/refresh.ts, src/auth/client.ts, auth refresh tests.
287
+ NON_GOALS: No storage redesign, no public API change.
288
+ CONSTRAINTS: Keep telemetry names stable; avoid broad refactor.
289
+ VALIDATION: npm run lint, npx tsc --noEmit, targeted auth tests if available.
290
+ OUTPUT: Diff summary, checks run, follow-up risks."
291
+ bd dep add <impl> <explore-or-task>
292
+ specialists run executor --worktree --bead <impl> --context-depth 2 --background
293
+ specialists result <exec-job>
294
+ ```
295
+
296
+ Create review bead:
297
+
298
+ ```bash
299
+ bd create --title "Review token refresh retry implementation" --type task --priority 2 \
300
+ --description "PROBLEM: Verify executor changes satisfy token refresh retry contract.
301
+ SUCCESS: PASS only if behavior, scope, constraints, and validation are satisfied.
302
+ SCOPE: executor job <exec-job>, implementation bead, root task contract.
303
+ NON_GOALS: Do not request unrelated auth redesign.
304
+ CONSTRAINTS: Findings first with file/line references.
305
+ VALIDATION: Inspect diff and available checks.
306
+ OUTPUT: PASS/PARTIAL/FAIL verdict with required fixes."
307
+ bd dep add <review> <impl>
308
+ specialists run reviewer --bead <review> --job <exec-job> --context-depth 2 --keep-alive --background
309
+ specialists result <review-job>
310
+ ```
311
+
312
+ If reviewer returns `PARTIAL`, prefer resuming the same executor:
313
+
314
+ ```bash
315
+ specialists resume <exec-job> "Reviewer PARTIAL. Fix only these findings: ..."
316
+ ```
317
+
318
+ Then create a new re-review bead and run reviewer again with the same `--job <exec-job>`.
319
+
320
+ After reviewer `PASS`, publish:
321
+
322
+ ```bash
323
+ sp merge <impl>
324
+ bd close <task> --reason "Fixed token refresh retry. Reviewer PASS. Merged."
325
+ ```
326
+
327
+ ## Golden Path: Multi-Chain Epic
328
+
329
+ Use this when multiple independent implementation chains must publish together.
330
+
331
+ Create a top-level epic with the complete contract:
332
+
333
+ ```bash
334
+ bd create --title "Add specialist bead contract enforcement" --type epic --priority 1 \
335
+ --description "PROBLEM: Specialists drift when --bead issues are under-specified.
336
+ SUCCESS: Docs and runtime guidance require complete bead contracts before dispatch.
337
+ SCOPE: docs/workflow guidance, skill docs, optional validation entry point.
338
+ NON_GOALS: No database migration, no breaking CLI changes.
339
+ CONSTRAINTS: Keep examples canonical and avoid title-only beads.
340
+ VALIDATION: docs review, lint/typecheck for runtime changes, reviewer PASS per chain.
341
+ OUTPUT: Merged epic with documented contract and verification."
342
+ ```
343
+
344
+ Create a shared prep bead:
345
+
346
+ ```bash
347
+ bd create --title "Plan bead contract enforcement tracks" --type task --priority 2 \
348
+ --description "PROBLEM: Need file-disjoint implementation tracks for the epic.
349
+ SUCCESS: Identify independent chains, dependencies, risks, and validation per chain.
350
+ SCOPE: workflow docs, CLI/run validation surfaces, tests.
351
+ NON_GOALS: No implementation.
352
+ CONSTRAINTS: READ_ONLY; produce dependency plan.
353
+ VALIDATION: Plan names file scopes and merge order.
354
+ OUTPUT: Parallel track plan."
355
+ bd dep add <plan> <epic>
356
+ specialists run planner --bead <plan> --epic <epic> --context-depth 2 --background
357
+ ```
358
+
359
+ Create independent implementation beads only when write scopes are disjoint:
360
+
361
+ ```bash
362
+ bd create --title "Implement CLI bead contract warning" --type task --priority 2 \
363
+ --description "PROBLEM: CLI allows specialist dispatch from vague beads.
364
+ SUCCESS: Dispatch warns or blocks according to agreed contract policy.
365
+ SCOPE: src/cli/run.ts, src/specialist/beads.ts, related tests.
366
+ NON_GOALS: No schema migration.
367
+ CONSTRAINTS: Preserve --prompt behavior for explicit ad-hoc runs.
368
+ VALIDATION: lint, tsc, targeted run/beads tests.
369
+ OUTPUT: Diff summary and verification."
370
+ bd dep add <impl-cli> <plan>
371
+
372
+ bd create --title "Update workflow docs for bead contract" --type task --priority 2 \
373
+ --description "PROBLEM: Docs teach title-only specialist beads.
374
+ SUCCESS: Canonical examples use complete task contracts.
375
+ SCOPE: config/skills/using-specialists/SKILL.md, CLAUDE.md, docs/features.md.
376
+ NON_GOALS: No runtime code.
377
+ CONSTRAINTS: Keep docs concise and current.
378
+ VALIDATION: Review examples for contract fields and stale commands.
379
+ OUTPUT: Updated docs summary."
380
+ bd dep add <impl-docs> <plan>
381
+ ```
382
+
383
+ Run parallel executors only if scopes are disjoint:
384
+
385
+ ```bash
386
+ specialists run executor --worktree --bead <impl-cli> --context-depth 2 --background
387
+ specialists run executor --worktree --bead <impl-docs> --context-depth 2 --background
388
+ ```
389
+
390
+ Review each chain with its own review bead and `--job`.
391
+
392
+ After every chain has reviewer `PASS`:
393
+
394
+ ```bash
395
+ sp epic status <epic>
396
+ sp epic merge <epic>
397
+ bd close <epic> --reason "All chains reviewer PASS. Epic merged."
398
+ ```
399
+
400
+ ## Review And Fix Loop
401
+
402
+ A chain stays alive until merge or abandonment.
403
+
404
+ Standard loop:
405
+
406
+ ```text
407
+ executor --worktree --bead impl
408
+ -> waiting after turn
409
+ reviewer --bead review --job exec-job
410
+ -> PASS: verify commit, publish, stop members if needed
411
+ -> PARTIAL: resume executor with exact findings
412
+ -> FAIL: decide whether to resume, replace, or abandon
413
+ ```
414
+
415
+ Prefer `sp resume <exec-job>` over a new fix executor when the original job is waiting and context is healthy. Use a new fix bead with `--job <exec-job>` only when the original executor is dead, context exhausted, or a separate audit trail is required.
416
+
417
+ Reviewer output must be consumed before publishing. Do not treat job completion as equivalent to acceptance.
418
+
419
+ ## Dependency Mapping
420
+
421
+ The bead graph should mirror execution order.
422
+
423
+ Simple chain:
424
+
425
+ ```text
426
+ task -> explore -> impl -> review
427
+ ```
428
+
429
+ Fix loop:
430
+
431
+ ```text
432
+ task -> explore -> impl -> review -> re-review
433
+ ^ |
434
+ | v
435
+ resume executor with findings
436
+ ```
437
+
438
+ Epic:
439
+
440
+ ```text
441
+ epic -> shared prep -> impl-a -> review-a
442
+ -> impl-b -> review-b
443
+ -> test-batch
444
+ -> epic merge
445
+ ```
446
+
447
+ Use `bd dep add <issue> <depends-on>` so downstream beads are blocked until upstream context exists. Test beads can depend on multiple implementation beads.
448
+
449
+ ## Monitoring
450
+
451
+ Use `sp ps` instead of ad-hoc polling.
452
+
453
+ ```bash
454
+ sp ps
455
+ sp ps <job-id>
456
+ sp ps --follow
457
+ sp feed <job-id>
458
+ sp result <job-id>
459
+ ```
460
+
461
+ Read results at every stage. For READ_ONLY specialists, output also appends to the input bead notes. If result is empty, inspect feed and rerun or switch specialists before relying on it.
462
+
463
+ Context percentage in `sp ps`/feed is an action signal:
464
+
465
+ - 0-40%: healthy.
466
+ - 40-65%: monitor.
467
+ - 65-80%: steer toward conclusion.
468
+ - Above 80%: finish, summarize, or replace the job.
469
+
470
+ ## Steering And Resume
471
+
472
+ Use `steer` for running jobs:
473
+
474
+ ```bash
475
+ sp steer <job-id> "Stop broad audit. Answer only the three questions in the bead."
476
+ ```
477
+
478
+ Use `resume` for waiting keep-alive jobs:
479
+
480
+ ```bash
481
+ sp resume <job-id> "Reviewer PARTIAL. Fix only findings 1 and 2; do not refactor."
482
+ ```
483
+
484
+ Do not use `resume` as a substitute for a missing bead contract on a new tracked task. Create or update the bead first.
485
+
486
+ ## Merge Rules
487
+
488
+ Standalone chain:
489
+
490
+ ```bash
491
+ sp merge <chain-root-bead>
492
+ ```
493
+
494
+ Epic-owned chains:
495
+
496
+ ```bash
497
+ sp epic status <epic-id>
498
+ sp epic merge <epic-id>
499
+ ```
500
+
501
+ Rules:
502
+
503
+ - Merge only after reviewer `PASS`.
504
+ - Use `sp epic merge` for unresolved epic chains.
505
+ - Do not merge within a chain between executor and reviewer.
506
+ - Merge between stages only when later stages need the code on the main line.
507
+ - Run or confirm required gates before closing the root bead or epic.
508
+
509
+ ## Epic Lifecycle
510
+
511
+ Epics are merge-gated identities with a persisted state machine:
512
+
513
+ ```text
514
+ open -> resolving -> merge_ready -> merged
515
+ -> failed
516
+ -> abandoned
517
+ ```
518
+
519
+ | State | Meaning | Chains mergeable? |
520
+ | --- | --- | --- |
521
+ | `open` | Epic created, chains not yet running. | No |
522
+ | `resolving` | Chains actively running. | No |
523
+ | `merge_ready` | All chains terminal, reviewer PASS, tsc gate passes. | Yes via `sp epic merge` |
524
+ | `merged` | Publication complete. | — |
525
+ | `failed` | One or more chains failed. | Resolve or abandon. |
526
+ | `abandoned` | Cancelled without merge. | — |
527
+
528
+ Operator transitions:
529
+
530
+ ```bash
531
+ sp epic resolve <epic-id> # open -> resolving (marks epic as merge-ready target)
532
+ sp epic merge <epic-id> # merge_ready -> merged (canonical publication)
533
+ sp epic merge <epic-id> --pr # PR mode (publish via pull request)
534
+ sp epic sync <epic-id> --apply # reconcile DB vs live job state when stuck
535
+ sp epic abandon <epic-id> --reason <t> # terminal close for unrecoverable epic
536
+ sp epic abandon <epic-id> --reason <t> --force # force when active pointers still exist
537
+ ```
538
+
539
+ `sp merge <chain>` refuses if the chain belongs to an unresolved epic. Use
540
+ `sp epic merge` for epic-owned chains.
541
+
542
+ ## Concurrency And Force Flags
543
+
544
+ Edit-capable specialists (MEDIUM/HIGH permission) are blocked from entering a
545
+ workspace while the owner job is `starting` or `running`. This prevents
546
+ concurrent file corruption. READ_ONLY specialists (explorer, etc.) are always
547
+ allowed.
548
+
549
+ Override with `--force-job` only when the caller explicitly accepts the write
550
+ race (e.g. emergency fix into a stalled-but-not-terminal executor):
551
+
552
+ ```bash
553
+ sp run executor --bead <fix-bead> --job <stalled-exec-job> --force-job --context-depth 2 --background
554
+ ```
555
+
556
+ Do not use `--force-job` as a routine unblock. Inspect `sp ps <job-id>` and
557
+ prefer `sp stop <job-id>` on truly dead jobs first.
558
+
559
+ ## Terminology Bridge
560
+
561
+ Historical conversations and docs use "waves" for dispatch batches (e.g. "Wave
562
+ 1" / "Wave 2"). "Waves" are human shorthand only — not persisted. The
563
+ merge-gated identity is the epic. Map mental models as follows:
564
+
565
+ | Legacy speech | Canonical concept |
566
+ | --- | --- |
567
+ | "Wave 1" / prep wave | Stage 1 / shared prep job, `--epic` for membership |
568
+ | "Wave 2" | Implementation chains under one epic |
569
+ | "Between waves merge" | `sp epic merge <epic-id>` |
570
+ | "Parallel in wave" | Parallel chains under the same epic (disjoint scopes) |
571
+
572
+ Treat "wave" as speech, "epic" as truth.
573
+
574
+ ## Failure Handling
575
+
576
+ If a job fails or stalls:
577
+
578
+ ```bash
579
+ sp ps <job-id>
580
+ sp feed <job-id>
581
+ sp result <job-id>
582
+ sp doctor
583
+ ```
584
+
585
+ Then choose one action:
586
+
587
+ - Steer a running job back to scope.
588
+ - Resume a waiting job with exact next instruction.
589
+ - Stop a dead or obsolete job.
590
+ - Rerun with a better bead contract.
591
+ - Switch specialist if the selected role was wrong.
592
+ - Report blocker if destructive/high-risk/manual action is required.
593
+
594
+ Do not silently fall back to doing substantial specialist work yourself unless the user agrees or the work is genuinely small and deterministic.
595
+
596
+ ## Recovery Cheatsheet
597
+
598
+ Dead or zombie process:
599
+
600
+ ```bash
601
+ sp stop <job-id>
602
+ specialists clean --processes
603
+ ```
604
+
605
+ Epic state unclear:
606
+
607
+ ```bash
608
+ sp epic status <epic-id>
609
+ sp epic sync <epic-id> --apply
610
+ ```
611
+
612
+ Specialist missing or config skipped:
613
+
614
+ ```bash
615
+ specialists list
616
+ specialists doctor
617
+ ```
618
+
619
+ Worktree already exists:
620
+
621
+ ```text
622
+ Rerun with the same bead if it is safe; worktree is reused rather than recreated.
623
+ ```
624
+
625
+ Reviewer cannot enter job workspace:
626
+
627
+ ```text
628
+ Check target job status with sp ps. MEDIUM/HIGH jobs are blocked from entering a running write-capable workspace unless forced.
629
+ ```
630
+
631
+ Explorer produced empty output:
632
+
633
+ ```text
634
+ Inspect feed. If no usable final summary exists, rerun with a clearer explorer bead or switch to debugger/planner as appropriate.
635
+ ```
636
+
637
+ ## What Not To Put In This Skill
638
+
639
+ Do not add historical migration notes, stale model names, exhaustive command references, internal token counts, long stuck-state postmortems, or title-only examples. Put long reference material in docs and keep this skill focused on current canonical orchestration.
@@ -35,18 +35,19 @@
35
35
  "mandatory_rules": {
36
36
  "template_sets": [
37
37
  "debugger-trace-first",
38
- "gitnexus-required"
38
+ "gitnexus-required",
39
+ "serena-cheatsheet"
39
40
  ]
40
41
  },
41
42
  "prompt": {
42
- "system": "Autonomous debugger specialist. Given symptom, error, or stack trace \u2014 conduct disciplined, tool-driven investigation. Find root cause, apply targeted fix, verify.\n\nNOT executor. Fix bugs only \u2014 no refactor, no features, no improvements beyond resolving specific issue.\n\n## Investigation Workflow\n\nWork through phases in order.\n\n### Phase 0 \u2014 GitNexus Triage (preferred, skip if unavailable)\n\nUse knowledge graph to orient before touching source files.\n\n1. `gitnexus_query({query: \"<error text or symptom>\"})`\n2. `gitnexus_context({name: \"<suspect symbol>\"})`\n3. Read `gitnexus://repo/{name}/process/{processName}` for execution trace details\n4. Optional: `gitnexus_cypher({query: \"MATCH path = ...\"})` for custom traversal\n\nThen read source files only for pinpointed suspects \u2014 never whole codebase.\n\n### Phase 1 \u2014 File Discovery (fallback if GitNexus unavailable)\n\nParse symptom for candidate locations:\n- stack trace file paths + line numbers\n- module/import names in errors\n- error codes or exception types tied to subsystems\n\nUse `grep` and `find` to locate code quickly; read only relevant sections.\n\n### Phase 2 \u2014 Root Cause Analysis\n\nDetermine:\n- exact line/expression causing failure\n- causal explanation of observed symptom\n- whether root cause or downstream effect\n- likely side effects on related components\n\n### Phase 3 \u2014 Apply Fix\n\nOnce root cause confirmed:\n- Edit minimum code needed to fix bug\n- Do NOT refactor surrounding code, add comments, or improve style\n- Run lint and tsc to verify fix compiles\n- Stage ALL changes including new files: `git add -A` — do this before the turn ends\n- Do NOT run tests (test-runner specialist handles that)\n\n### Phase 4 \u2014 Verify\n\nRun specific failing command, test, or reproduction step that triggered bug.\nPass \u2192 report success. Still fails \u2192 return Phase 2 with new evidence.\n\n## Keep-Alive Behavior\n\nAfter delivering initial fix + verification:\n- Enter waiting state\n- Orchestrator may resume with \"still failing\" or \"new error after fix\"\n- Each resume cycle: re-diagnose \u2192 fix \u2192 verify\n- Issue fully resolved \u2192 report final status, exit\n\n## Output Format\n\nAlways output complete **Bug Investigation Report**:\n- Symptoms\n- Investigation path (GitNexus traces or files analyzed)\n- Root cause (with file:line references)\n- Fix applied (files changed, what changed)\n- Verification result (pass/fail + command output)\n- Concise summary\n\nEFFICIENCY RULE: Stop investigation, move to fix after at most 15 tool calls.\nNo over-investigate \u2014 form hypothesis, fix, verify.",
43
- "task_template": "Debug the following issue:\n\n$prompt\n\n$reused_worktree_awareness\n\nWorking directory: $cwd\n\n## Required investigation steps:\n1. `gitnexus_query({query: \"<error text or symptom>\"})` \u2014 find related execution flows\n2. `gitnexus_context({name: \"<suspect symbol>\"})` \u2014 trace callers and callees\n3. Read source files ONLY for pinpointed suspects from steps 1-2\n4. `gitnexus_impact` on any symbol before modifying it\n5. Apply fix, then `gitnexus_detect_changes()` to verify scope\n\nDo NOT skip steps 1-2 by going straight to grep/find.\n"
43
+ "system": "Autonomous debugger specialist. Given symptom, error, or stack trace conduct disciplined, tool-driven investigation. Find root cause, apply targeted fix, verify.\n\nNOT executor. Fix bugs only no refactor, no features, no improvements beyond resolving specific issue.\n\n## Investigation Workflow\n\nWork through phases in order.\n\n### Phase 0 GitNexus Triage (preferred, skip if unavailable)\n\nUse knowledge graph to orient before touching source files.\n\n1. `gitnexus_query({query: \"<error text or symptom>\"})`\n2. `gitnexus_context({name: \"<suspect symbol>\"})`\n3. Read `gitnexus://repo/{name}/process/{processName}` for execution trace details\n4. Optional: `gitnexus_cypher({query: \"MATCH path = ...\"})` for custom traversal\n\nThen read source files only for pinpointed suspects never whole codebase.\n\n### Phase 1 File Discovery (fallback if GitNexus unavailable)\n\nParse symptom for candidate locations:\n- stack trace file paths + line numbers\n- module/import names in errors\n- error codes or exception types tied to subsystems\n\nUse `grep` and `find` to locate code quickly; read only relevant sections.\n\n### Phase 2 Root Cause Analysis\n\nDetermine:\n- exact line/expression causing failure\n- causal explanation of observed symptom\n- whether root cause or downstream effect\n- likely side effects on related components\n\n### Phase 3 Apply Fix\n\nOnce root cause confirmed:\n- Edit minimum code needed to fix bug\n- Do NOT refactor surrounding code, add comments, or improve style\n- Run lint and tsc to verify fix compiles\n- Stage ALL changes including new files: `git add -A` — do this before the turn ends\n- Do NOT run tests (test-runner specialist handles that)\n\n### Phase 4 Verify\n\nRun specific failing command, test, or reproduction step that triggered bug.\nPass report success. Still fails return Phase 2 with new evidence.\n\n## Keep-Alive Behavior\n\nAfter delivering initial fix + verification:\n- Enter waiting state\n- Orchestrator may resume with \"still failing\" or \"new error after fix\"\n- Each resume cycle: re-diagnose fix verify\n- Issue fully resolved report final status, exit\n\n## Output Format\n\nAlways output complete **Bug Investigation Report**:\n- Symptoms\n- Investigation path (GitNexus traces or files analyzed)\n- Root cause (with file:line references)\n- Fix applied (files changed, what changed)\n- Verification result (pass/fail + command output)\n- Concise summary\n\nEFFICIENCY RULE: Stop investigation, move to fix after at most 15 tool calls.\nNo over-investigate form hypothesis, fix, verify.",
44
+ "task_template": "Debug the following issue:\n\n$prompt\n\n$reused_worktree_awareness\n\nWorking directory: $cwd\n\n## Required investigation steps:\n1. `gitnexus_query({query: \"<error text or symptom>\"})` find related execution flows\n2. `gitnexus_context({name: \"<suspect symbol>\"})` trace callers and callees\n3. Read source files ONLY for pinpointed suspects from steps 1-2\n4. `gitnexus_impact` on any symbol before modifying it\n5. Apply fix, then `gitnexus_detect_changes()` to verify scope\n\nDo NOT skip steps 1-2 by going straight to grep/find.\n"
44
45
  },
45
46
  "skills": {
46
47
  "paths": [
47
- ".xtrm/skills/active/pi/xt-debugging/SKILL.md",
48
+ ".xtrm/skills/active/xt-debugging/SKILL.md",
48
49
  ".xtrm/skills/optional/code-quality/systematic-debugging/SKILL.md",
49
- ".xtrm/skills/active/pi/gitnexus-debugging/SKILL.md"
50
+ ".xtrm/skills/active/gitnexus-debugging/SKILL.md"
50
51
  ],
51
52
  "scripts": []
52
53
  },
@@ -65,12 +66,9 @@
65
66
  "git"
66
67
  ]
67
68
  },
68
- "communication": {
69
- "next_specialists": []
70
- },
71
69
  "validation": {
72
70
  "files_to_watch": [
73
- ".xtrm/skills/active/pi/xt-debugging/SKILL.md"
71
+ ".xtrm/skills/active/xt-debugging/SKILL.md"
74
72
  ],
75
73
  "stale_threshold_days": 30
76
74
  },