akili-specs 2.7.1 → 2.9.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 (70) hide show
  1. package/.claude/commands/akili-archive.md +2 -0
  2. package/.claude/commands/akili-audit.md +4 -0
  3. package/.claude/commands/akili-constitution.md +104 -14
  4. package/.claude/commands/akili-execute.md +5 -3
  5. package/.claude/commands/akili-propose.md +2 -0
  6. package/.claude/commands/akili-quick.md +2 -0
  7. package/.claude/commands/akili-seo.md +2 -0
  8. package/.claude/commands/akili-specify.md +7 -2
  9. package/.claude/commands/akili-test.md +4 -2
  10. package/.claude/commands/akili-validate.md +2 -0
  11. package/.claude/skills/angular-developer/SKILL.md +4 -0
  12. package/.claude/skills/api-design-principles/SKILL.md +8 -0
  13. package/.claude/skills/aws-serverless/SKILL.md +8 -1
  14. package/.claude/skills/brainstorming/SKILL.md +25 -1
  15. package/.claude/skills/cognitive-doc-design/SKILL.md +14 -0
  16. package/.claude/skills/error-handling-patterns/SKILL.md +8 -0
  17. package/.claude/skills/frontend-design/SKILL.md +8 -1
  18. package/.claude/skills/gsap-animation/SKILL.md +182 -0
  19. package/.claude/skills/gsap-animation/references/frameworks.md +137 -0
  20. package/.claude/skills/{gsap-performance/SKILL.md → gsap-animation/references/performance.md} +10 -20
  21. package/.claude/skills/gsap-animation/references/plugins.md +390 -0
  22. package/.claude/skills/gsap-animation/references/react.md +122 -0
  23. package/.claude/skills/gsap-animation/references/scrolltrigger.md +255 -0
  24. package/.claude/skills/{gsap-timeline/SKILL.md → gsap-animation/references/timeline.md} +7 -19
  25. package/.claude/skills/gsap-animation/references/utils.md +254 -0
  26. package/.claude/skills/judgment-day/SKILL.md +19 -1
  27. package/.claude/skills/kaizen/SKILL.md +1 -0
  28. package/.claude/skills/nestjs-expert/SKILL.md +8 -0
  29. package/.claude/skills/product-manager-toolkit/SKILL.md +7 -1
  30. package/.claude/skills/react-doctor/SKILL.md +6 -0
  31. package/.claude/skills/seo-audit/SKILL.md +18 -9
  32. package/.claude/skills/shadcn-ui/SKILL.md +6 -0
  33. package/.claude/skills/stitch-design/SKILL.md +7 -0
  34. package/.claude/skills/systematic-debugging/SKILL.md +21 -0
  35. package/.claude/skills/tailwind-design-system/SKILL.md +8 -0
  36. package/.claude/skills/ui-ux-pro-max/SKILL.md +21 -0
  37. package/.claude/skills/vercel-react-best-practices/SKILL.md +3 -0
  38. package/.claude/templates/leader.md +1 -1
  39. package/CHANGELOG.md +31 -0
  40. package/README.md +3 -8
  41. package/bin/akili.js +40 -0
  42. package/docs/cli.md +1 -1
  43. package/docs/commands/akili-constitution.md +17 -13
  44. package/docs/flow.md +39 -5
  45. package/docs/model-routing.md +92 -24
  46. package/docs/skills/README.md +34 -31
  47. package/docs/skills/brainstorming.md +2 -0
  48. package/docs/skills/cognitive-doc-design.md +2 -0
  49. package/docs/skills/governance.md +77 -0
  50. package/docs/skills/gsap-animation.md +29 -0
  51. package/docs/skills/judgment-day.md +2 -0
  52. package/docs/skills/product-manager-toolkit.md +1 -1
  53. package/docs/skills/seo-audit.md +2 -0
  54. package/docs/skills/systematic-debugging.md +2 -0
  55. package/docs/skills/ui-ux-pro-max.md +2 -0
  56. package/package.json +1 -1
  57. package/.claude/skills/gsap-core/SKILL.md +0 -254
  58. package/.claude/skills/gsap-frameworks/SKILL.md +0 -153
  59. package/.claude/skills/gsap-plugins/SKILL.md +0 -426
  60. package/.claude/skills/gsap-react/SKILL.md +0 -136
  61. package/.claude/skills/gsap-scrolltrigger/SKILL.md +0 -296
  62. package/.claude/skills/gsap-utils/SKILL.md +0 -284
  63. package/docs/skills/gsap-core.md +0 -21
  64. package/docs/skills/gsap-frameworks.md +0 -20
  65. package/docs/skills/gsap-performance.md +0 -21
  66. package/docs/skills/gsap-plugins.md +0 -20
  67. package/docs/skills/gsap-react.md +0 -22
  68. package/docs/skills/gsap-scrolltrigger.md +0 -21
  69. package/docs/skills/gsap-timeline.md +0 -20
  70. package/docs/skills/gsap-utils.md +0 -21
@@ -56,6 +56,8 @@ docs/specs/archive/2026-05-16-bugfix--login-redirect/
56
56
 
57
57
  ### Step 0: Load Context
58
58
 
59
+ **Model checkpoint:** This phase runs best on **T5 Fast-Cheap** (summarization and bookkeeping). If the project's `## Model Routing` registry (root `AGENTS.md`/`CLAUDE.md`) maps that tier to a model different from the current session model, tell the user in one line — e.g. *"This phase is T5 — the registry recommends `/model haiku`; you are on opus"* — and offer to switch (`/model …` in Claude Code, the model selector in OpenCode) at the first approval pause. Never block on this; continuing on the current model is always allowed.
60
+
59
61
  **Token Optimization (Prompt Caching):** To maximize prompt caching, always read the constitutional baseline documents FIRST and in the exact same order across all sessions before reading task-specific files.
60
62
 
61
63
  1. Confirm `docs/specs/$ARGUMENTS/` exists.
@@ -19,6 +19,8 @@ Detect and report drift between the project's specifications (PRD, UX/UI Design,
19
19
 
20
20
  ### Step 0: Read Project Specifications
21
21
 
22
+ **Model checkpoint:** This phase runs best on **T4 Context-Ingest** for the scan and **T3 Auditor** for judging drift. If the project's `## Model Routing` registry (root `AGENTS.md`/`CLAUDE.md`) maps that tier to a model different from the current session model, tell the user in one line — e.g. *"This phase is T4+T3 — the registry recommends `/model sonnet`; you are on haiku"* — and offer to switch (`/model …` in Claude Code, the model selector in OpenCode) at the first approval pause. Never block on this; continuing on the current model is always allowed.
23
+
22
24
  First, read the constitutional documentation baseline in the repository:
23
25
 
24
26
  1. `docs/prd.md`
@@ -44,6 +46,7 @@ Audit for discrepancies, classifying findings under the following categories:
44
46
  * **Visual/Design Token Mismatch:** Colors, typography, spacing, or component structures used in the codebase that violate the styling tokens and design principles declared in `docs/ux-ui/design.md`.
45
47
  * **Technical Constraints Violation:** Architectural layout in the codebase that conflicts with patterns (e.g. testing requirements, security rules, file structuring) documented in `docs/trd/trd.md`.
46
48
  * **Agent Guide Drift:** Modules whose conventions clearly diverge from the root but lack a child `CLAUDE.md`/`AGENTS.md`, child guides missing from the parent's `## Module Guides` index, guide entries pointing at modules that no longer exist, or root-guide structure descriptions that no longer match the codebase.
49
+ * **Model Registry Drift:** The project's `## Model Routing` registry (root `AGENTS.md`/`CLAUDE.md`) names models the host tool no longer offers, uses dated model pins where a floating alias exists (violating the alias-first rule) without a recorded reason, is missing tiers or the author ≠ auditor note versus the packaged default in `docs/model-routing.md`, or the Step 8E agent wrappers (`.claude/agents/akili-*.md` / OpenCode agent config) declare models that contradict the registry. Report only — never edit the registry or wrappers during the audit.
47
50
 
48
51
  ### Step 3: Write Drift Report
49
52
 
@@ -87,6 +90,7 @@ A brief overview of the codebase alignment state and major areas of specificatio
87
90
  | UX/UI Design / Screen Inventory | [Details] | [Aligned / Drifted] | |
88
91
  | TRD (APIs/DB) | [Details] | [Aligned / Drifted] | |
89
92
  | Agent Guides (root + `## Module Guides` index) | [Details] | [Aligned / Drifted] | |
93
+ | Model Routing (registry + Step 8E wrappers) | [Details] | [Aligned / Drifted] | |
90
94
 
91
95
  ## Recommended Next Steps
92
96
  Specific actions to resolve the discrepancies (e.g., "Run `/akili-constitution` to enhance baseline", "Update `trd.md` with active REST APIs", or "Schedule a task to implement missing validation tests").
@@ -19,6 +19,8 @@ Establish or strengthen the project-wide AKILI-SPECS foundation. This command cr
19
19
 
20
20
  ### Step 0: Determine Project Mode and Foundation Setup
21
21
 
22
+ **Model checkpoint:** This phase runs best on **T4 Context-Ingest** for repository ingestion and **T1 Architect** for baseline synthesis (if no project registry exists yet, use the packaged default in `docs/model-routing.md`). If the project's `## Model Routing` registry (root `AGENTS.md`/`CLAUDE.md`) maps that tier to a model different from the current session model, tell the user in one line — e.g. *"Baseline synthesis is T1 — the default registry recommends `/model opus`; you are on haiku"* — and offer to switch (`/model …` in Claude Code, the model selector in OpenCode) at the first approval pause. Never block on this; continuing on the current model is always allowed.
23
+
22
24
  Before classifying the repository, use the `brainstorming` skill to ask the user if this is a new project/MVP starting from 0, or if it is an existing project with an established structure.
23
25
 
24
26
  Based on the response, classify the repository into one of three modes. The classification is non-destructive — it controls how aggressively the constitution drafts, scans, or preserves existing material.
@@ -34,7 +36,7 @@ For all three modes:
34
36
  3. Ensure `docs/specs/general-setup/` exists.
35
37
  4. Ensure root `CLAUDE.md` exists or is enhanced.
36
38
  5. Ensure root `AGENTS.md` exists or is enhanced.
37
- 6. Ensure project-level `.agents/` exists with `leader.md`, `implementer.md`, `reviewer.md`, and `tester.md` (see Step 7B).
39
+ 6. Ensure project-level `.agents/` exists with `leader.md`, `implementer.md`, `reviewer.md`, and `tester.md` (see Step 8B).
38
40
  7. Default behavior is to enhance existing project docs in place instead of creating parallel copies.
39
41
 
40
42
  The constitutional baseline must cover these files:
@@ -210,7 +212,7 @@ When the file already exists, refine it in place instead of replacing establishe
210
212
 
211
213
  Create or enhance `docs/trd/trd.md` as the technical implementation blueprint.
212
214
 
213
- **Use skills when relevant:**
215
+ **Use skills when relevant** (stack skills — load only the ones matching the project's stack; the same set feeds the `## Skill Map` in Step 8D):
214
216
 
215
217
  - `nestjs-expert`
216
218
  - `api-design-principles`
@@ -219,6 +221,7 @@ Create or enhance `docs/trd/trd.md` as the technical implementation blueprint.
219
221
  - `shadcn-ui`
220
222
  - `tailwind-design-system`
221
223
  - `vercel-react-best-practices`
224
+ - `angular-developer`
222
225
 
223
226
  **Required structure:**
224
227
 
@@ -288,9 +291,9 @@ The update should explain briefly:
288
291
  - When Claude should consult each one
289
292
  - That these documents form the constitutional baseline for future AKILI-SPECS work
290
293
  - How module specs should be organized under `docs/specs/`
291
- - Which skills should be used for common work in the project
294
+ - Which skills should be used for common work in the project (the `## Skill Map` added in Step 8D)
292
295
  - Whether CodeGraph is initialized and how agents should use it for existing-project analysis
293
- - Which model to switch to per AKILI-SPECS phase (the `## Model Routing` registry added in Step 7C)
296
+ - Which model to switch to per AKILI-SPECS phase (the `## Model Routing` registry added in Step 8C)
294
297
 
295
298
  Preserve the repository's existing `CLAUDE.md` and `AGENTS.md` conventions and extend them.
296
299
 
@@ -378,27 +381,114 @@ project guides so the project does not depend on the package's `docs/` after ins
378
381
  must differ from the Implementer model. `/akili-test` is likewise split into its Leader (T5,
379
382
  orchestration) and Tester(s) (T2, test authoring), with a note to prefer a Tester model different
380
383
  from the Implementer (author ≠ tester).
381
- 4. The editable model registry table with columns `Tier | Claude Code | OpenCode | Fallback`.
382
- Fill the Claude Code column for the user's plan (e.g. PRO: Opus reserved for T1/T3, Sonnet as the
383
- T2/T4/T6 workhorse, Haiku for T5). Fill the OpenCode column from the user's confirmed roster; if
384
- it is unknown, leave clearly-marked `<CONFIRM SLUG>` placeholders rather than guessing.
385
- 5. The instruction: *"To change models, edit only this registry table. Model selection is guidance
386
- onlynever add `model:` to command frontmatter."*
387
-
388
- **Mode-specific policy (mirror Step 7B):**
384
+ 4. The editable model registry table with columns `Tier | Claude Code | OpenCode | Fallback`, plus
385
+ an `Updated: <YYYY-MM>` stamp. **Alias-first rule:** the Claude Code column uses floating aliases
386
+ (`opus`, `sonnet`, `haiku`) they always resolve to the latest generation, so the registry
387
+ survives model churn with zero edits; pin a dated model ID only when the user deliberately wants
388
+ to freeze a version, and record why. Fill the OpenCode column from the user's confirmed roster
389
+ (slugs are concrete no alias mechanism); if it is unknown, leave clearly-marked
390
+ `<CONFIRM SLUG>` placeholders rather than guessing.
391
+ 5. The instruction: *"To change models, edit only this registry table. Never pin a dated model name
392
+ where a floating alias exists. Model selection is guidance only in command prompts — never add
393
+ `model:` to command frontmatter; enforced bindings live only in the Step 8E agent wrappers."*
394
+
395
+ **Mode-specific policy (mirror Step 8B):**
389
396
 
390
397
  - **Brand-new (Seed Setup):** insert the full `## Model Routing` section using the packaged defaults.
391
398
  - **Legacy (Discovery Setup):** insert the section and, where detected, annotate the registry with
392
399
  the project's actual tooling (e.g. note if the team already standardizes on a specific model).
393
400
  - **Active AKILI-SPECS (Safe Update):** **do not overwrite** an existing customized registry. If the section
394
401
  is missing, add it; if it exists, only fill gaps (missing tiers, missing author ≠ auditor note)
395
- without changing the user's pinned models.
402
+ without changing the user's pinned models. Additionally, **flag stale entries**: compare the
403
+ project registry against the packaged default in `docs/model-routing.md` and list (do not edit)
404
+ entries that name models the tool no longer offers or dated pins that an alias would now cover —
405
+ the user decides whether to refresh them.
396
406
 
397
407
  Confirm the user's available models before writing concrete identifiers: which tier they run in
398
408
  Claude Code (and their plan's rate limits) and which models their OpenCode roster exposes.
399
409
 
400
410
  ---
401
411
 
412
+ ### Step 8D: Scaffold the Skill Map
413
+
414
+ Add or upgrade a `## Skill Map` section in the project's root `AGENTS.md` **and** `CLAUDE.md` so the
415
+ project declares which stack-dependent skills apply to it. AKILI binds skills at three levels
416
+ (see the packaged `docs/skills/governance.md`): `core` and `conditional` skills are already wired
417
+ into the command prompts; **`stack` skills are never hard-referenced by commands** — this Skill Map
418
+ is how they reach the agents.
419
+
420
+ **The scaffolded `## Skill Map` section must contain:**
421
+
422
+ 1. A table `Skill | Applies To | When to load` listing only the stack skills that match the
423
+ detected or declared stack. Candidates shipped with AKILI: `angular-developer`, `nestjs-expert`,
424
+ `shadcn-ui`, `tailwind-design-system`, `react-doctor`, `vercel-react-best-practices`,
425
+ `aws-serverless`, `api-design-principles`, `error-handling-patterns`. Projects may add their own.
426
+ 2. The instruction: *"During `/akili-specify`, derive each task's required skills from this map.
427
+ During `/akili-execute` and `/akili-test`, the Leader assigns these skills and the
428
+ Implementer/Tester must load them before writing code or tests."*
429
+
430
+ **Mode-specific policy (mirror Step 8B):**
431
+
432
+ - **Brand-new (Seed Setup):** build the map from the seed intent's declared stack.
433
+ - **Legacy (Discovery Setup):** build the map from the codebase scan evidence (frameworks, UI
434
+ library, cloud tooling actually present). Do not list skills for frameworks the repo does not use.
435
+ - **Active AKILI-SPECS (Safe Update):** preserve an existing customized map; only add rows for
436
+ newly detected stack elements and remove rows the user confirms are obsolete.
437
+
438
+ ---
439
+
440
+ ### Step 8E: Bind Personas to Models (Tool-Native Agent Wrappers)
441
+
442
+ Offer to generate **tool-native agent definitions** that bind the `.agents/` personas to the models
443
+ in the `## Model Routing` registry (Step 8C). This turns model routing from guidance into
444
+ enforcement for the multi-agent fan-out — where most tokens are spent — and makes
445
+ **author ≠ auditor structural**: the Reviewer wrapper is pinned to a different model than the
446
+ Implementer wrapper in configuration, not by human discipline.
447
+
448
+ Ask the user first (one question): *"Bind the AKILI personas to models with native agent wrappers,
449
+ so the Implementer/Reviewer/Tester automatically run on their tier's model?"* If declined, skip
450
+ this step — the guidance-only flow keeps working.
451
+
452
+ **Per tool:**
453
+
454
+ - **Claude Code:** create project-level `.claude/agents/akili-leader.md`, `akili-implementer.md`,
455
+ `akili-reviewer.md`, and `akili-tester.md`. Each wrapper is thin:
456
+
457
+ ```markdown
458
+ ---
459
+ name: akili-implementer
460
+ description: AKILI Implementer — executes one spec task with strict scope and verification.
461
+ model: sonnet
462
+ ---
463
+ Read `.agents/implementer.md` in the project root and adopt it fully as your persona and
464
+ operating contract before doing anything else.
465
+ ```
466
+
467
+ Models come from the registry's Claude Code column as **aliases** (default: leader `haiku`,
468
+ implementer `sonnet`, reviewer `opus`, tester `sonnet`). Never copy the persona body into the
469
+ wrapper — `.agents/` stays the single source of truth.
470
+
471
+ - **OpenCode:** create the equivalent project agent definitions (`.opencode/agent/akili-*.md` or
472
+ the `agent` block of `opencode.json`, matching the user's OpenCode version) with `model:` set to
473
+ the registry's OpenCode slugs (default: implementer `opencode-go/glm-5.1`, reviewer
474
+ `opencode-go/deepseek-v4-pro`, leader `opencode-go/deepseek-v4-flash`).
475
+
476
+ - **Google Antigravity:** no per-agent model binding exists — skip wrapper generation and note in
477
+ the summary that Antigravity stays on guidance-only routing.
478
+
479
+ **Rules:**
480
+
481
+ 1. The Reviewer wrapper's model MUST differ from the Implementer wrapper's model. If the registry
482
+ collapses them, escalate the Reviewer one tier before writing the wrappers.
483
+ 2. Wrappers reference `.agents/<role>.md`; they never duplicate persona content. Editing a persona
484
+ requires no wrapper change; changing a model requires editing only the wrapper (or re-running
485
+ this step).
486
+ 3. **Mode policy:** Brand-new/Legacy — create the wrappers when accepted. Active AKILI-SPECS —
487
+ never overwrite existing wrapper files; create only missing ones and flag model drift between
488
+ existing wrappers and the current registry.
489
+
490
+ ---
491
+
402
492
  ### Step 9: Present and Confirm
403
493
 
404
494
  After drafting or enhancing the documents, generate a short, easy-to-understand summary (summary facil de entender de lo que se hizo) covering:
@@ -420,7 +510,7 @@ Ask the user whether to approve or request changes. If changes are requested, re
420
510
 
421
511
  ## Outcome
422
512
 
423
- At the end of `/akili-constitution`, the repository should have a project-level baseline that future `/akili-specify`, `/akili-execute`, `/akili-validate`, and `/akili-test` work can rely on without guessing the structure or conventions. The `.agents/` personas must be in place so that `/akili-execute` can run the Leader → Implementer → Reviewer rework loop and `/akili-test` can run the Leader → Tester(s) harness without falling back to inline personas. The root guides must also carry a `## Model Routing` registry (Step 8C) so each phase runs on a model matched to its demand, with the Reviewer on a different model than the Implementer.
513
+ At the end of `/akili-constitution`, the repository should have a project-level baseline that future `/akili-specify`, `/akili-execute`, `/akili-validate`, and `/akili-test` work can rely on without guessing the structure or conventions. The `.agents/` personas must be in place so that `/akili-execute` can run the Leader → Implementer → Reviewer rework loop and `/akili-test` can run the Leader → Tester(s) harness without falling back to inline personas. The root guides must also carry a `## Model Routing` registry (Step 8C) so each phase runs on a model matched to its demand, with the Reviewer on a different model than the Implementer, and a `## Skill Map` (Step 8D) so stack-dependent skills reach the agents without being hardcoded into commands.
424
514
 
425
515
  ---
426
516
 
@@ -52,8 +52,8 @@ If `.agents/` is missing, run `/akili-constitution` first to scaffold it. Do not
52
52
 
53
53
  **Delegation mechanism by tool:**
54
54
 
55
- - **Claude Code / OpenCode:** spawn a focused subagent (or sub-prompt context) seeded with the persona file plus the task/diff context.
56
- - **Google Antigravity:** invoke `invoke_subagent` (or the equivalent workflow primitive) using prompts read from `.agents/`.
55
+ - **Claude Code / OpenCode:** if the project has tool-native AKILI agent wrappers (scaffolded by `/akili-constitution` Step 8E — e.g. `.claude/agents/akili-implementer.md` / `akili-reviewer.md` with `model:` bindings from the `## Model Routing` registry), **spawn those named agents** so each role runs on its tier's model and author ≠ auditor is enforced by configuration. Otherwise, spawn a focused subagent (or sub-prompt context) seeded with the persona file plus the task/diff context.
56
+ - **Google Antigravity:** invoke `invoke_subagent` (or the equivalent workflow primitive) using prompts read from `.agents/` (no per-agent model binding — guidance-only routing).
57
57
 
58
58
  The Leader does not write production code itself unless the rework loop is exhausted and the user has explicitly approved a fallback.
59
59
 
@@ -63,6 +63,8 @@ The Leader does not write production code itself unless the rework loop is exhau
63
63
 
64
64
  ### Step 0: Load Context
65
65
 
66
+ **Model checkpoint:** This phase runs best on **T5 Fast-Cheap** for you as Leader — the Implementer/Reviewer route through the Step 8E agent wrappers (their own tier models) when present. If the project's `## Model Routing` registry (root `AGENTS.md`/`CLAUDE.md`) maps that tier to a model different from the current session model, tell the user in one line — e.g. *"The Leader loop is T5 — the registry recommends `/model haiku`; you are on opus"* — and offer to switch (`/model …` in Claude Code, the model selector in OpenCode) at the first approval pause. Never block on this; continuing on the current model is always allowed.
67
+
66
68
  **Token Optimization (Prompt Caching):** To maximize prompt caching, always read the constitutional baseline documents FIRST and in the exact same order across all sessions before reading task-specific files.
67
69
 
68
70
  1. Read the project constitutional docs (IN THIS ORDER):
@@ -135,7 +137,7 @@ Delegate to the Implementer with:
135
137
  - the active task ID, title, and scope from `tasks.md`
136
138
  - the relevant slices of `requirements.md`, `design.md`, and `trd.md`
137
139
  - the project constitution references (`CLAUDE.md`, `AGENTS.md`, `docs/ux-ui/design.md`)
138
- - the recommended skill list from the task (e.g. `ui-ux-pro-max`, `react-doctor`, `nestjs-expert`)
140
+ - the recommended skill list from the task (e.g. `ui-ux-pro-max`, `react-doctor`, `nestjs-expert`), falling back to the project's `## Skill Map` (root `AGENTS.md`/`CLAUDE.md`) when the task lists none; if the task involves animation, include `gsap-animation` and its matching reference file
139
141
  - any prior Reviewer feedback when this is a rework attempt
140
142
  - any Active Lessons from `docs/specs/kaizen-log.md` relevant to the task's domain (pass only the matching rows, never the full log)
141
143
  - the verification command to run before reporting completion
@@ -55,6 +55,8 @@ Do not create `requirements.md`, `design.md`, or `tasks.md` in this command unle
55
55
 
56
56
  ### Step 0: Resolve Path And Load Context
57
57
 
58
+ **Model checkpoint:** This phase runs best on **T1 Architect** (deep reasoning). If the project's `## Model Routing` registry (root `AGENTS.md`/`CLAUDE.md`) maps that tier to a model different from the current session model, tell the user in one line — e.g. *"This phase is T1 — the registry recommends `/model opus`; you are on sonnet"* — and offer to switch (`/model …` in Claude Code, the model selector in OpenCode) at the first approval pause. Never block on this; continuing on the current model is always allowed.
59
+
58
60
  **Token Optimization (Prompt Caching):** To maximize prompt caching, always read the constitutional baseline documents FIRST and in the exact same order across all sessions before reading task-specific files.
59
61
 
60
62
  1. Resolve `$SPEC_PATH` using the path rules above.
@@ -60,6 +60,8 @@ State clearly which criterion failed and which command to run instead. Never sil
60
60
 
61
61
  ### Step 0: Load Minimal Context
62
62
 
63
+ **Model checkpoint:** This phase runs best on **T2 Coder** (small direct edit, light verification). If the project's `## Model Routing` registry (root `AGENTS.md`/`CLAUDE.md`) maps that tier to a model different from the current session model, tell the user in one line — e.g. *"This phase is T2 — the registry recommends `/model sonnet`; you are on opus"* — and offer to switch (`/model …` in Claude Code, the model selector in OpenCode) at the first approval pause. Never block on this; continuing on the current model is always allowed.
64
+
63
65
  Keep context small — this is a trivial change, not a full spec run.
64
66
 
65
67
  1. Read only what the change needs:
@@ -74,6 +74,8 @@ If any prerequisite is missing, stop and report exactly what is missing and how
74
74
 
75
75
  ### Phase 0: Setup
76
76
 
77
+ **Model checkpoint:** This phase runs best on **T3 Auditor** for audit findings and **T5 Fast-Cheap** for setup/formatting. If the project's `## Model Routing` registry (root `AGENTS.md`/`CLAUDE.md`) maps that tier to a model different from the current session model, tell the user in one line — e.g. *"The audit phase is T3 — the registry recommends `/model opus`; you are on haiku"* — and offer to switch (`/model …` in Claude Code, the model selector in OpenCode) at the first approval pause. Never block on this; continuing on the current model is always allowed.
78
+
77
79
  1. Resolve the spec path. If `$ARGUMENTS` is a bare domain, set `SPEC_PATH = seo/<domain>`. Otherwise treat `$ARGUMENTS` as the literal spec path.
78
80
  2. Create directory `docs/specs/$SPEC_PATH/` if it does not exist.
79
81
  3. Read the constitutional templates and project context as defined in `akili-specify`:
@@ -61,6 +61,8 @@ When the spec is a **bug** — the proposal's Document Control says `Type: Bug`,
61
61
 
62
62
  ### Step 0: Setup
63
63
 
64
+ **Model checkpoint:** This phase runs best on **T1 Architect** for requirements/design (re-check at Phase 3: **T5 Fast-Cheap** for the tasks split, **T6 Multimodal** when visual design is in scope). If the project's `## Model Routing` registry (root `AGENTS.md`/`CLAUDE.md`) maps that tier to a model different from the current session model, tell the user in one line — e.g. *"Phases 1–2 are T1 — the registry recommends `/model opus`; you are on haiku"* — and offer to switch (`/model …` in Claude Code, the model selector in OpenCode) at the first approval pause. Never block on this; continuing on the current model is always allowed.
65
+
64
66
  **Token Optimization (Prompt Caching):** To maximize prompt caching, always read the constitutional baseline documents FIRST and in the exact same order across all sessions before reading task-specific files.
65
67
 
66
68
  1. Create directory `docs/specs/$ARGUMENTS/` if it does not exist.
@@ -182,7 +184,9 @@ If the work includes meaningful UI/UX impact, use this skill preference:
182
184
  - `ui-ux-pro-max` if available
183
185
  - otherwise `frontend-design` + `stitch-design`
184
186
 
185
- Use additional technical skills as needed:
187
+ If the work involves animation (scroll effects, transitions, motion design), load `gsap-animation` and read the reference file matching the task.
188
+
189
+ Use additional stack skills as needed — prefer the project's `## Skill Map` (in root `AGENTS.md`/`CLAUDE.md`) when it exists; otherwise pick from:
186
190
 
187
191
  - `nestjs-expert`
188
192
  - `api-design-principles`
@@ -191,6 +195,7 @@ Use additional technical skills as needed:
191
195
  - `vercel-react-best-practices`
192
196
  - `error-handling-patterns`
193
197
  - `aws-serverless`
198
+ - `angular-developer`
194
199
 
195
200
  #### Step 2.2 — Write
196
201
 
@@ -269,7 +274,7 @@ Each task should include:
269
274
  - done criteria
270
275
  - relevant skills
271
276
 
272
- Skill inventory should use real, available skills only.
277
+ Skill inventory should use real, available skills only. Derive each task's required skills from the project's `## Skill Map` (root `AGENTS.md`/`CLAUDE.md`) plus the conditional skills that match the task (`ui-ux-pro-max`/`frontend-design` for UI, `gsap-animation` for animation).
273
278
 
274
279
  Task quality rules:
275
280
 
@@ -50,8 +50,8 @@ If `.agents/tester.md` is missing, run `/akili-constitution` first to scaffold i
50
50
 
51
51
  **Delegation mechanism by tool:**
52
52
 
53
- - **Claude Code / OpenCode:** spawn a focused subagent (or sub-prompt context) seeded with `tester.md` plus the suite's context slice.
54
- - **Google Antigravity:** invoke `invoke_subagent` (or the equivalent) using the prompt read from `.agents/tester.md`.
53
+ - **Claude Code / OpenCode:** if the project has a tool-native `akili-tester` agent wrapper (scaffolded by `/akili-constitution` Step 8E with a `model:` binding from the `## Model Routing` registry), **spawn that named agent** so each Tester runs on its tier's model — preferring a model different from the Implementer's (author ≠ tester). Otherwise, spawn a focused subagent (or sub-prompt context) seeded with `tester.md` plus the suite's context slice.
54
+ - **Google Antigravity:** invoke `invoke_subagent` (or the equivalent) using the prompt read from `.agents/tester.md` (no per-agent model binding — guidance-only routing).
55
55
 
56
56
  **Token discipline — thin context per Tester (this is the core saving):**
57
57
 
@@ -76,6 +76,8 @@ The Leader decides the count from the spec's depth and the independence of the s
76
76
 
77
77
  ### Phase 0: Load Context (Leader)
78
78
 
79
+ **Model checkpoint:** This phase runs best on **T5 Fast-Cheap** for you as Leader — Testers route through the `akili-tester` wrapper (T2) when present. If the project's `## Model Routing` registry (root `AGENTS.md`/`CLAUDE.md`) maps that tier to a model different from the current session model, tell the user in one line — e.g. *"The Leader loop is T5 — the registry recommends `/model haiku`; you are on opus"* — and offer to switch (`/model …` in Claude Code, the model selector in OpenCode) at the first approval pause. Never block on this; continuing on the current model is always allowed.
80
+
79
81
  **Token Optimization (Prompt Caching):** To maximize prompt caching, always read the constitutional baseline documents FIRST and in the exact same order across all sessions before reading task-specific files.
80
82
 
81
83
  1. Read project-level context (IN THIS ORDER):
@@ -49,6 +49,8 @@ Use these result levels consistently:
49
49
 
50
50
  ### Phase 0: Load Context
51
51
 
52
+ **Model checkpoint:** This phase runs best on **T3 Auditor** — and it MUST resolve to a different model than the one that implemented the work (author ≠ auditor). If the project's `## Model Routing` registry (root `AGENTS.md`/`CLAUDE.md`) maps that tier to a model different from the current session model, tell the user in one line — e.g. *"This phase is T3 — the registry recommends `/model opus`; you are on sonnet, which also implemented the spec"* — and offer to switch (`/model …` in Claude Code, the model selector in OpenCode) at the first approval pause. Never block on this; continuing on the current model is always allowed.
53
+
52
54
  **Token Optimization (Prompt Caching):** To maximize prompt caching, always read the constitutional baseline documents FIRST and in the exact same order across all sessions before reading task-specific files.
53
55
 
54
56
  1. Read constitutional context (IN THIS ORDER):
@@ -4,6 +4,10 @@ description: Generates Angular code and provides architectural guidance. Trigger
4
4
  license: MIT
5
5
  metadata:
6
6
  author: Copyright 2026 Google LLC
7
+ source: https://angular.dev
8
+ adapted-by: "Juan Carlos Cadavid — jcadavid.com"
9
+ adapted-for: "AKILI-SPECS"
10
+ binding: stack
7
11
  version: '1.0'
8
12
  ---
9
13
 
@@ -1,6 +1,14 @@
1
1
  ---
2
2
  name: api-design-principles
3
3
  description: Master REST and GraphQL API design principles to build intuitive, scalable, and maintainable APIs that delight developers. Use when designing new APIs, reviewing API specifications, or establishing API design standards.
4
+ license: MIT
5
+ metadata:
6
+ author: Seth Hobson (wshobson)
7
+ source: https://github.com/wshobson/agents
8
+ adapted-by: "Juan Carlos Cadavid — jcadavid.com"
9
+ adapted-for: "AKILI-SPECS"
10
+ binding: stack
11
+ version: "1.0"
4
12
  ---
5
13
 
6
14
  # API Design Principles
@@ -1,7 +1,14 @@
1
1
  ---
2
2
  name: aws-serverless
3
3
  description: "Specialized skill for building production-ready serverless applications on AWS. Covers Lambda functions, API Gateway, DynamoDB, SQS/SNS event-driven patterns, SAM/CDK deployment, and cold start optimization."
4
- source: vibeship-spawner-skills (Apache 2.0)
4
+ license: Apache-2.0
5
+ metadata:
6
+ author: vibeship
7
+ source: vibeship-spawner-skills (Apache 2.0)
8
+ adapted-by: "Juan Carlos Cadavid — jcadavid.com"
9
+ adapted-for: "AKILI-SPECS"
10
+ binding: stack
11
+ version: "1.0"
5
12
  ---
6
13
 
7
14
  # AWS Serverless
@@ -1,8 +1,32 @@
1
1
  ---
2
2
  name: brainstorming
3
- description: "You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation."
3
+ description: "You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation. In AKILI-SPECS projects, follow the AKILI-SPECS Integration section first."
4
+ license: MIT
5
+ metadata:
6
+ author: Jesse Vincent (obra)
7
+ source: https://github.com/obra/superpowers
8
+ adapted-by: "Juan Carlos Cadavid — jcadavid.com"
9
+ adapted-for: "AKILI-SPECS"
10
+ binding: core
11
+ version: "1.0"
4
12
  ---
5
13
 
14
+ ## AKILI-SPECS Integration
15
+
16
+ When this skill is loaded inside the AKILI-SPECS methodology, this section overrides the generic flow below:
17
+
18
+ | AKILI moment | How to use this skill |
19
+ |---|---|
20
+ | `/akili-constitution` Step 0 | Ask the new-vs-existing project question and clarify seed intent |
21
+ | `/akili-propose` | Explore intent, scope, options, and trade-offs before writing `proposal.md` |
22
+ | `/akili-specify` Phases 1–3 | Clarify problem/actors (requirements), explore trade-offs (design), sequence work (tasks) |
23
+
24
+ Adaptation rules:
25
+
26
+ - **Artifacts land in AKILI documents** — `proposal.md`, `requirements.md`, `design.md`, `tasks.md` under `docs/specs/`. Do NOT write `docs/plans/*-design.md`.
27
+ - **The terminal state is the AKILI phase you are in**, not the `writing-plans` skill (it is not packaged here). After approval, continue the active AKILI command's next step.
28
+ - The HARD-GATE still applies: no implementation before the user approves the design.
29
+
6
30
  # Brainstorming Ideas Into Designs
7
31
 
8
32
  ## Overview
@@ -4,6 +4,9 @@ description: "Design docs that reduce cognitive load. Trigger: writing guides, R
4
4
  license: Apache-2.0
5
5
  metadata:
6
6
  author: gentleman-programming
7
+ adapted-by: "Juan Carlos Cadavid — jcadavid.com"
8
+ adapted-for: "AKILI-SPECS"
9
+ binding: core
7
10
  version: "1.0"
8
11
  ---
9
12
 
@@ -18,6 +21,17 @@ Use it especially for:
18
21
  - Architecture, workflow, or onboarding docs.
19
22
  - Any doc that currently feels long, dense, or hard to scan.
20
23
 
24
+ ## AKILI-SPECS Integration
25
+
26
+ | AKILI moment | Documents written with this skill |
27
+ |---|---|
28
+ | `/akili-constitution` | `docs/prd.md` and the baseline docs |
29
+ | `/akili-specify` | `requirements.md`, `design.md`, `tasks.md` |
30
+ | `/akili-execute` | PR descriptions and review notes (PR and Review Docs section below) |
31
+ | `/akili-archive` | The archive summary and Kaizen log entries |
32
+
33
+ The AKILI templates in `docs/specs/general-setup/` win over the default Documentation Shape below — apply the Critical Patterns inside their structure.
34
+
21
35
  ## Critical Patterns
22
36
 
23
37
  | Pattern | Rule |
@@ -1,6 +1,14 @@
1
1
  ---
2
2
  name: error-handling-patterns
3
3
  description: Master error handling patterns across languages including exceptions, Result types, error propagation, and graceful degradation to build resilient applications. Use when implementing error handling, designing APIs, or improving application reliability.
4
+ license: MIT
5
+ metadata:
6
+ author: Seth Hobson (wshobson)
7
+ source: https://github.com/wshobson/agents
8
+ adapted-by: "Juan Carlos Cadavid — jcadavid.com"
9
+ adapted-for: "AKILI-SPECS"
10
+ binding: stack
11
+ version: "1.0"
4
12
  ---
5
13
 
6
14
  # Error Handling Patterns
@@ -1,7 +1,14 @@
1
1
  ---
2
2
  name: frontend-design
3
3
  description: Create distinctive, production-grade frontend interfaces with intentional aesthetics, high craft, and non-generic visual identity. Use when building or styling web UIs, components, pages, dashboards, or frontend applications.
4
- license: Complete terms in LICENSE.txt
4
+ license: Complete terms in LICENSE.txt (Apache-2.0)
5
+ metadata:
6
+ author: Anthropic
7
+ source: https://github.com/anthropics/skills
8
+ adapted-by: "Juan Carlos Cadavid — jcadavid.com"
9
+ adapted-for: "AKILI-SPECS"
10
+ binding: conditional
11
+ version: "1.0"
5
12
  ---
6
13
 
7
14
  # Frontend Design (Distinctive, Production-Grade)