@dtlabs/ai-toolkit 0.17.5 → 0.18.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 (34) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/lib/agent-registry.js +39 -0
  3. package/package.json +1 -1
  4. package/src/claude/agents/gaia-generate-requirements-use-case.md +97 -0
  5. package/src/claude/agents/gaia-generate-requirements.md +22 -27
  6. package/src/claude/agents/gaia-generate-tech-spec-component.md +93 -0
  7. package/src/claude/agents/gaia-generate-tech-spec.md +47 -103
  8. package/src/claude/agents/gaia-generate-work-breakdown-task.md +151 -0
  9. package/src/claude/agents/gaia-generate-work-breakdown.md +94 -100
  10. package/src/claude/agents/gaia-validate-feature-docs.md +13 -8
  11. package/src/claude/commands/assemble-docs.md +16 -0
  12. package/src/claude/commands/feature-status.md +9 -4
  13. package/src/claude/scripts/ac-task-matrix.js +87 -0
  14. package/src/claude/scripts/assemble-docs.js +66 -0
  15. package/src/claude/scripts/req-assembler.js +127 -0
  16. package/src/claude/scripts/req-graph-checks.js +71 -0
  17. package/src/claude/scripts/req-skeleton-check.js +64 -0
  18. package/src/claude/scripts/tech-spec-assembler.js +188 -0
  19. package/src/claude/scripts/tech-spec-graph-checks.js +84 -0
  20. package/src/claude/scripts/templates/gaia-component-template.md +64 -0
  21. package/src/claude/scripts/templates/gaia-dependency-graph-template.md +85 -0
  22. package/src/claude/scripts/templates/gaia-requirements-index-template.md +144 -0
  23. package/src/claude/scripts/templates/gaia-task-template.md +92 -0
  24. package/src/claude/scripts/templates/gaia-tech-spec-index-template.md +137 -0
  25. package/src/claude/scripts/templates/gaia-use-case-template.md +56 -0
  26. package/src/claude/scripts/templates/gaia-user-story-template.md +61 -0
  27. package/src/claude/scripts/wb-graph-checks.js +754 -0
  28. package/src/claude/scripts/wb-render.js +6 -11
  29. package/src/claude/scripts/wb-skeleton-check.js +99 -0
  30. package/src/claude/scripts/wb-validate.js +49 -655
  31. package/src/claude/scripts/wbs-assembler.js +368 -0
  32. package/src/claude/skills/implement-feature/SKILL.md +12 -6
  33. package/src/claude/workflows/pm-phase1.js +324 -18
  34. package/src/claude/workflows/pm-phase2.js +277 -14
@@ -0,0 +1,61 @@
1
+ <!--
2
+ PHASE / USER-STORY DETAIL TEMPLATE — wbs/user-stories/{PHASE_ID}.md
3
+
4
+ Canonical structure for a phase file (the INFRA phase and every US-NN phase both use this same
5
+ template — INFRA is not a user story, but lives in the same directory and format; see "Type"
6
+ below). Every phase file has exactly four parts, in this order: (1) the field block,
7
+ (2) Context, (3) Tasks in this phase, (4) Depends on phases. Fill in every placeholder (angle
8
+ brackets) and delete every HTML comment block (including this one) before treating the file as
9
+ finished.
10
+ -->
11
+ <a id="phase-{PHASE_ID}"></a>
12
+ ### {PHASE_ID}
13
+
14
+ - **Phase ID:** {PHASE_ID}
15
+ - **Type:** <infrastructure | user-story>
16
+ - **Source UC:** <comma-separated UC-ID(s) this phase's tasks realize, or `—` for a phase with no
17
+ single originating UC (e.g. shared infrastructure). Restated here for human readability from
18
+ `index.json`'s own `sourceUC` array, which is authoritative — this line is a display-only
19
+ projection, not parsed back out by `parsePhaseDetailBlock` (same convention as `Phase ID`/
20
+ `Type` above, which are also restated but not re-extracted). Can be MORE than one UC (an
21
+ orchestration phase) — don't force a single value if that's not true; see Tech-Spec OQ-05.>
22
+ - **Title:** <For `type: user-story`, use the standard form: "As a <role>, I want <capability>,
23
+ so that <benefit>" — derived directly from this phase's source Use Case(s). For `type:
24
+ infrastructure` (the one INFRA phase), there is no user-story grammar — use a short descriptive
25
+ label of what shared setup this phase provides.>
26
+ - **Commit type:** <conventional-commit type, usually `feat`>
27
+ - **Commit scope:** <optional, or `—`>
28
+ - **Commit subject:** <imperative, concise — e.g. "implement {PHASE_ID} <short description>" —
29
+ the renderer prepends `type(scope): ` automatically, do not include it here>
30
+
31
+ **Context:**
32
+
33
+ <!--
34
+ 2–4 sentences, no more. Answer: why does this phase exist (which Use Case / need does it map
35
+ to)? How do its own tasks relate to each other? Is there a dependency or sequencing reason other
36
+ phases or tasks need to know about before opening this phase's individual task files? Do NOT
37
+ restate the Title — add information the title doesn't already give.
38
+ -->
39
+
40
+ <prose>
41
+
42
+ **Tasks in this phase:**
43
+
44
+ <!--
45
+ One bullet per task, in the same order as `index.json`'s `taskIds` for this phase. The summary is
46
+ a few words of what the task DOES, not a copy of its full Title (that's one click away via the
47
+ task ID link/filename).
48
+ -->
49
+
50
+ - `{TASK_ID}` — <one-line summary>
51
+
52
+ **Depends on phases:** <comma-separated phase IDs this phase's tasks have a `dependsOn` reference
53
+ into, or `none` if this phase has no cross-phase dependency>
54
+
55
+ <!--
56
+ PARSING CONTRACT — read by wbs-assembler.js's parsePhaseDetailBlock: field values are read from
57
+ the CONTIGUOUS RUN of `- **Label:** value` lines starting immediately after the `### {PHASE_ID}`
58
+ heading, stopping at the first non-matching line. Same rule and same rationale as the task
59
+ template — see task-template.md's parsing-contract note for the full explanation and the real
60
+ bug it fixes.
61
+ -->