@event4u/agent-config 9.5.0 → 9.6.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 (130) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +21 -0
  3. package/dist/agent-src/commands/agents/audit.md +2 -3
  4. package/dist/agent-src/commands/agents/optimize.md +2 -3
  5. package/dist/agent-src/commands/agents/user/review.md +4 -5
  6. package/dist/agent-src/commands/agents/user/show.md +4 -5
  7. package/dist/agent-src/commands/agents/user/update.md +4 -5
  8. package/dist/agent-src/commands/agents/user.md +2 -3
  9. package/dist/agent-src/commands/analytics/prune.md +2 -3
  10. package/dist/agent-src/commands/analytics/show.md +2 -3
  11. package/dist/agent-src/commands/analyze/decision.md +2 -3
  12. package/dist/agent-src/commands/analyze/incident.md +2 -3
  13. package/dist/agent-src/commands/analyze/near-miss.md +2 -3
  14. package/dist/agent-src/commands/analyze/postmortem.md +2 -3
  15. package/dist/agent-src/commands/analyze/premortem.md +2 -3
  16. package/dist/agent-src/commands/analyze/reference-repo.md +2 -3
  17. package/dist/agent-src/commands/brand/identity.md +2 -3
  18. package/dist/agent-src/commands/brand/review.md +2 -3
  19. package/dist/agent-src/commands/brand/strategy.md +2 -3
  20. package/dist/agent-src/commands/brand/tokens.md +2 -3
  21. package/dist/agent-src/commands/brand/voice.md +2 -3
  22. package/dist/agent-src/commands/bug/fix.md +2 -3
  23. package/dist/agent-src/commands/bug/investigate.md +2 -3
  24. package/dist/agent-src/commands/challenge-me/vision.md +2 -3
  25. package/dist/agent-src/commands/challenge-me/with-docs.md +2 -3
  26. package/dist/agent-src/commands/chat-history/import.md +2 -3
  27. package/dist/agent-src/commands/commit/in-chunks.md +2 -3
  28. package/dist/agent-src/commands/context/create.md +2 -3
  29. package/dist/agent-src/commands/context/refactor.md +2 -3
  30. package/dist/agent-src/commands/cost/report.md +2 -3
  31. package/dist/agent-src/commands/council/analysis.md +2 -3
  32. package/dist/agent-src/commands/council/debate.md +2 -3
  33. package/dist/agent-src/commands/council/design.md +2 -3
  34. package/dist/agent-src/commands/council/optimize.md +2 -3
  35. package/dist/agent-src/commands/council/pr.md +2 -3
  36. package/dist/agent-src/commands/feature/dev.md +2 -3
  37. package/dist/agent-src/commands/feature/explore.md +2 -3
  38. package/dist/agent-src/commands/feature/plan.md +2 -3
  39. package/dist/agent-src/commands/feature/refactor.md +2 -3
  40. package/dist/agent-src/commands/feature/roadmap.md +2 -3
  41. package/dist/agent-src/commands/fix/ci.md +2 -3
  42. package/dist/agent-src/commands/fix/comments.md +2 -3
  43. package/dist/agent-src/commands/fix/pr-comments.md +2 -3
  44. package/dist/agent-src/commands/fix/quality.md +2 -3
  45. package/dist/agent-src/commands/fix/route.md +2 -3
  46. package/dist/agent-src/commands/fix/seeder.md +2 -3
  47. package/dist/agent-src/commands/ghostwriter/delete.md +2 -3
  48. package/dist/agent-src/commands/ghostwriter/fetch.md +2 -3
  49. package/dist/agent-src/commands/ghostwriter/list.md +2 -3
  50. package/dist/agent-src/commands/ghostwriter/show.md +2 -3
  51. package/dist/agent-src/commands/ghostwriter/write.md +2 -3
  52. package/dist/agent-src/commands/image/analyse.md +2 -3
  53. package/dist/agent-src/commands/image/create.md +2 -3
  54. package/dist/agent-src/commands/image/verify.md +2 -3
  55. package/dist/agent-src/commands/knowledge/cross-repo.md +2 -3
  56. package/dist/agent-src/commands/knowledge/forget.md +2 -3
  57. package/dist/agent-src/commands/knowledge/ingest.md +2 -3
  58. package/dist/agent-src/commands/knowledge/list.md +2 -3
  59. package/dist/agent-src/commands/memory/add.md +2 -3
  60. package/dist/agent-src/commands/memory/learn-low-impact.md +2 -3
  61. package/dist/agent-src/commands/module/create.md +2 -3
  62. package/dist/agent-src/commands/module/explore.md +2 -3
  63. package/dist/agent-src/commands/optimize/agents-dir.md +2 -3
  64. package/dist/agent-src/commands/optimize/project.md +2 -3
  65. package/dist/agent-src/commands/optimize/prompt.md +2 -3
  66. package/dist/agent-src/commands/optimize/skills.md +2 -3
  67. package/dist/agent-src/commands/override/create.md +2 -3
  68. package/dist/agent-src/commands/override/manage.md +2 -3
  69. package/dist/agent-src/commands/post-as/ghostwriter.md +2 -3
  70. package/dist/agent-src/commands/post-as/me.md +2 -3
  71. package/dist/agent-src/commands/pr/create/description-only.md +2 -3
  72. package/dist/agent-src/commands/pr/create.md +1 -1
  73. package/dist/agent-src/commands/profile/activate.md +2 -3
  74. package/dist/agent-src/commands/profile/deactivate.md +2 -3
  75. package/dist/agent-src/commands/profile/show.md +2 -3
  76. package/dist/agent-src/commands/project/analyze.md +2 -3
  77. package/dist/agent-src/commands/project/health.md +2 -3
  78. package/dist/agent-src/commands/research/deep.md +2 -3
  79. package/dist/agent-src/commands/research/report.md +2 -3
  80. package/dist/agent-src/commands/review/changes.md +2 -3
  81. package/dist/agent-src/commands/review/routing.md +2 -3
  82. package/dist/agent-src/commands/roadmap/ai-council.md +2 -3
  83. package/dist/agent-src/commands/roadmap/create.md +2 -3
  84. package/dist/agent-src/commands/roadmap/materialize.md +2 -3
  85. package/dist/agent-src/commands/roadmap/process-full.md +2 -3
  86. package/dist/agent-src/commands/roadmap/process-phase.md +2 -3
  87. package/dist/agent-src/commands/roadmap/process-step.md +2 -3
  88. package/dist/agent-src/commands/skill/preview.md +2 -3
  89. package/dist/agent-src/commands/skills/discover.md +2 -3
  90. package/dist/agent-src/commands/sync/gitignore/fix.md +3 -4
  91. package/dist/agent-src/commands/tdd/green.md +2 -3
  92. package/dist/agent-src/commands/tdd/red.md +2 -3
  93. package/dist/agent-src/commands/tdd/refactor.md +2 -3
  94. package/dist/agent-src/commands/team/adversarial.md +2 -3
  95. package/dist/agent-src/commands/team/review.md +2 -3
  96. package/dist/agent-src/commands/team-knowledge/bootstrap.md +2 -3
  97. package/dist/agent-src/commands/team-knowledge/consolidate.md +2 -3
  98. package/dist/agent-src/commands/tests/create.md +2 -3
  99. package/dist/agent-src/commands/tests/e2e-heal.md +2 -3
  100. package/dist/agent-src/commands/tests/e2e-plan.md +2 -3
  101. package/dist/agent-src/commands/tests/execute.md +2 -3
  102. package/dist/agent-src/commands/video/from-script.md +2 -3
  103. package/dist/agent-src/commands/video/from-song.md +2 -3
  104. package/dist/agent-src/commands/video/scene.md +2 -3
  105. package/dist/agent-src/commands/video/stitch.md +2 -3
  106. package/dist/agent-src/commands/video/storyboard.md +2 -3
  107. package/dist/agent-src/commands/worktree/cleanup.md +2 -3
  108. package/dist/agent-src/commands/worktree/create.md +2 -3
  109. package/dist/agent-src/commands/worktree/status.md +2 -3
  110. package/dist/agent-src/commands/worktree/verify.md +2 -3
  111. package/dist/agent-src/contexts/contracts/command-suggestion-flow.md +10 -0
  112. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  113. package/dist/discovery/deprecation-report.md +1 -1
  114. package/dist/discovery/discovery-manifest.json +110 -110
  115. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  116. package/dist/discovery/discovery-manifest.summary.md +1 -1
  117. package/dist/discovery/orphan-report.md +1 -1
  118. package/dist/discovery/packs.json +2 -2
  119. package/dist/discovery/trust-report.md +1 -1
  120. package/dist/discovery/workspaces.json +2 -2
  121. package/dist/mcp/registry-manifest.json +1 -1
  122. package/docs/decisions/ADR-123-runtime-security-scope-and-spawn-hardening.md +111 -0
  123. package/docs/decisions/INDEX.md +1 -0
  124. package/docs/guidelines/agent-infra/artifact-drafting-protocol-mechanics.md +26 -0
  125. package/docs/threat-model.md +2 -1
  126. package/package.json +1 -1
  127. package/src/scripts/_lib/spawn_env.ts +100 -0
  128. package/src/scripts/ai_council/clients.ts +6 -0
  129. package/src/scripts/hot_context_hook.ts +2 -0
  130. package/src/scripts/roadmap_progress_hook.ts +2 -0
@@ -10,9 +10,8 @@ skills: [emit-tickets]
10
10
  description: Materialise a roadmap into a self-contained, importable ticket bundle under agents/tickets/
11
11
  argument-hint: "[roadmap-path]"
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "turn this roadmap into tickets, materialise the roadmap, mach Tickets aus der Roadmap"
15
- trigger_context: "an existing agents/roadmaps/*.md the user wants decomposed into build-ready tickets"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -10,9 +10,8 @@ skills: [agent-docs-writing, ai-council, roadmap-management]
10
10
  description: Autonomously process every open step across every phase of a roadmap until the file is fully closed. Largest execution scope of the /roadmap cluster — runs continuously across phase boundaries.
11
11
  argument-hint: "[roadmap]"
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "process the whole roadmap, finish the roadmap, komplette roadmap abarbeiten"
15
- trigger_context: "existing agents/roadmaps/*.md and user wants the entire file done end-to-end"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -10,9 +10,8 @@ skills: [agent-docs-writing, ai-council, roadmap-management]
10
10
  description: Autonomously process every open step in the next or current phase of a roadmap, then stop. Default execution scope of the /roadmap cluster.
11
11
  argument-hint: "[roadmap]"
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "process the next phase, finish this phase autonomously, eine phase abarbeiten"
15
- trigger_context: "existing agents/roadmaps/*.md and user wants the next phase done end-to-end"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -10,9 +10,8 @@ skills: [agent-docs-writing, ai-council, roadmap-management]
10
10
  description: Autonomously process the single next open step of a roadmap and stop. Smallest execution scope of the /roadmap cluster — one step in, one step out.
11
11
  argument-hint: "[roadmap]"
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "process the next step, do the next roadmap step, einen schritt abarbeiten"
15
- trigger_context: "existing agents/roadmaps/*.md and user wants exactly one step done autonomously"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -10,9 +10,8 @@ description: Non-destructive preview of a skill — its declared steps, executio
10
10
  argument-hint: "<skill-name> [--technical]"
11
11
  skills: [file-editor]
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "what does this skill do, preview <skill> before running, what will it change, is it safe, /skill:preview competitive-positioning"
15
- trigger_context: "user wants to inspect a skill's declared intent before committing to run it"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -10,9 +10,8 @@ description: Recommend skills for a role — ranked by four explained classes (m
10
10
  argument-hint: "[role]"
11
11
  skills: [file-editor]
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "which skills should I use, recommend skills for my role, what fits this work, help me find a skill, /skills:discover sales"
15
- trigger_context: "user wants a short, explained skill shortlist instead of scanning the 220-skill catalog"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -9,9 +9,8 @@ sub: gitignore
9
9
  skills: [sync-gitignore]
10
10
  description: Scrub legacy pre-`/agents/` patterns from the consumer's .gitignore (inside or outside the managed block) and re-sync the canonical entries
11
11
  suggestion:
12
- eligible: true
13
- trigger_description: "fix .gitignore garbage, clean up legacy agent-config entries, my .gitignore has stale agent entries, /sync-gitignore is not picking up the right paths"
14
- trigger_context: "consumer project carries pre-/agents/ runtime patterns (.agent-chat-history, .agent-prices.md) at the root from an older install"
12
+ eligible: false
13
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
15
14
  workspaces:
16
15
  - agent-config-maintainer
17
16
  packs:
@@ -191,5 +190,5 @@ If the check fails, offer to re-sync the block with the current template:
191
190
  ignored-but-tracked detection (Phase 5.2)
192
191
  - [`scripts/check_gitignore_freshness.ts`](../../../../src/scripts/check_gitignore_freshness.ts) —
193
192
  manifest vs block coverage check (Phase 3.4)
194
- - [`docs/contracts/agents-layout.md`](../../../../docs/contracts/agents-layout.md) —
193
+ - [`docs/contracts/agents-layout.md`](../../../../../../docs/contracts/agents-layout.md) —
195
194
  full classification contract for `agents/` entries
@@ -10,9 +10,8 @@ skills: [test-driven-development]
10
10
  description: TDD green phase — write the minimum production code to make the failing test pass; no test edits
11
11
  argument-hint: "[failing test | context]"
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "make the failing test pass"
15
- trigger_context: "a failing test exists, ready to implement"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -10,9 +10,8 @@ skills: [test-driven-development]
10
10
  description: TDD red phase — enumerate cases, write ONE failing test, watch it fail at an assertion (not an import error)
11
11
  argument-hint: "[behavior to test]"
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "write the failing test first"
15
- trigger_context: "starting a new behavior test-first"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -10,9 +10,8 @@ skills: [test-driven-development]
10
10
  description: TDD refactor phase — clean up (rename, deduplicate) while keeping the test green
11
11
  argument-hint: "[target | context]"
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "refactor while the test stays green"
15
- trigger_context: "test is green, ready to clean up"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -11,9 +11,8 @@ description: Thin wrapper — adversarial cross-model review on a named focus vi
11
11
  cluster: team
12
12
  sub: adversarial
13
13
  suggestion:
14
- eligible: true
15
- trigger_description: "adversarial cross-model review, attack this change with a second model, stress-test the diff with GPT, hostile review by another model"
16
- trigger_context: "ai_team.enabled is true AND single-model self-review found nothing or the stakes are high — escalate the Attack-Defend-Revise frame to a second strong model"
14
+ eligible: false
15
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
17
16
  workspaces:
18
17
  - agent-config-maintainer
19
18
  packs:
@@ -10,9 +10,8 @@ description: Thin wrapper — cross-model review of the current diff via the off
10
10
  cluster: team
11
11
  sub: review
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "team review, second model review, cross-model review of my changes, GPT drüberschauen lassen, review the diff with another strong model"
15
- trigger_context: "ai_team.enabled is true AND there is an uncommitted / staged diff the user wants a second strong model to review with repo access"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -9,9 +9,8 @@ sub: bootstrap
9
9
  description: One-shot deterministic seed for a fresh project's knowledge layer — stages template pages from real config/directory detection, never LLM-invented claims. Review-then-commit.
10
10
  skills: []
11
11
  suggestion:
12
- eligible: true
13
- trigger_description: "bootstrap the knowledge base, seed project knowledge, initialize agents/knowledge, onboard this project's knowledge layer"
14
- trigger_context: "a project has no agents/knowledge/ typed pages yet and the user wants a starting baseline"
12
+ eligible: false
13
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
15
14
  workspaces:
16
15
  - agent-config-maintainer
17
16
  packs:
@@ -9,9 +9,8 @@ sub: consolidate
9
9
  description: Review pending typed knowledge-observation events and file them into agents/knowledge/ pages as a human-reviewed batch — never writes without approval.
10
10
  skills: [file-editor]
11
11
  suggestion:
12
- eligible: true
13
- trigger_description: "consolidate knowledge events, review pending observations, file captured knowledge, promote knowledge candidates"
14
- trigger_context: "pending events have accumulated in agents/knowledge/intake/ and are ready for review"
12
+ eligible: false
13
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
15
14
  workspaces:
16
15
  - agent-config-maintainer
17
16
  packs:
@@ -9,9 +9,8 @@ sub: create
9
9
  skills: [test-case-discovery, pest-testing, quality-tools]
10
10
  description: Write meaningful tests for the current branch — stack-adaptive (pest / phpunit / vitest / jest / pytest / …)
11
11
  suggestion:
12
- eligible: true
13
- trigger_description: "write tests for these changes, add tests for this branch"
14
- trigger_context: "code changes on the branch without matching test changes"
12
+ eligible: false
13
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
15
14
  workspaces:
16
15
  - agent-config-maintainer
17
16
  packs:
@@ -11,9 +11,8 @@ skills: [playwright-testing]
11
11
  description: Find, debug, and fix failing Playwright E2E tests
12
12
  argument-hint: "[test-file | ci-run-url]"
13
13
  suggestion:
14
- eligible: true
15
- trigger_description: "fix the failing E2E tests, playwright tests are red"
16
- trigger_context: "failing test output from tests/e2e/"
14
+ eligible: false
15
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
17
16
  workspaces:
18
17
  - agent-config-maintainer
19
18
  packs:
@@ -11,9 +11,8 @@ skills: [playwright-testing]
11
11
  description: Explore the application and create a structured E2E test plan in Markdown
12
12
  argument-hint: "[url | feature-area]"
13
13
  suggestion:
14
- eligible: true
15
- trigger_description: "plan E2E tests for this feature, what should we cover in playwright"
16
- trigger_context: "new feature or page added without tests/e2e/ coverage"
14
+ eligible: false
15
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
17
16
  workspaces:
18
17
  - agent-config-maintainer
19
18
  packs:
@@ -10,9 +10,8 @@ skills: [pest-testing, quality-tools]
10
10
  description: Run the project's test suite — stack-adaptive (pest / phpunit / vitest / jest / pytest / …)
11
11
  argument-hint: "[file | filter] [--include-e2e] [--include-slow] [--php]"
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "run the tests, execute the test suite"
15
- trigger_context: "code changes pending verification"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -11,9 +11,8 @@ argument-hint: "<path-to-script.md> [--mode preview|commit] [--max-spend-usd <us
11
11
  personas: [hollywood-director, ai-video-technical-director]
12
12
  skills: [scene-expander, video-director, pixar-storyteller, character-consistency, motion-choreographer]
13
13
  suggestion:
14
- eligible: true
15
- trigger_description: "render a video from a script, full AI video pipeline, multi-scene generation"
16
- trigger_context: "user supplies a Markdown script with `## Scene N` headings and wants a final MP4"
14
+ eligible: false
15
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
17
16
  workspaces:
18
17
  - agent-config-maintainer
19
18
  packs:
@@ -11,9 +11,8 @@ argument-hint: "<images-dir> <song-file> [--mode preview|commit] [--brief <text>
11
11
  personas: [hollywood-director, ai-video-technical-director]
12
12
  skills: [song-to-script, scene-expander, video-director, character-consistency, motion-choreographer, prompt-validator]
13
13
  suggestion:
14
- eligible: true
15
- trigger_description: "make a music video from a song, turn a track into a video, lip-sync clip from images and audio, AI music video"
16
- trigger_context: "user supplies an audio file plus reference images and wants a final MP4 cut to the song"
14
+ eligible: false
15
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
17
16
  workspaces:
18
17
  - agent-config-maintainer
19
18
  packs:
@@ -11,9 +11,8 @@ argument-hint: "<idea> [--mode preview|commit] [--image-provider <id>] [--video-
11
11
  personas: [hollywood-director, ai-video-technical-director]
12
12
  skills: [scene-expander, video-director, character-consistency, motion-choreographer]
13
13
  suggestion:
14
- eligible: true
15
- trigger_description: "render a single video scene, iterate on one shot, test a prompt without a full script"
16
- trigger_context: "user supplies a one-line scene idea and wants a single clip, no multi-scene stitching"
14
+ eligible: false
15
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
17
16
  workspaces:
18
17
  - agent-config-maintainer
19
18
  packs:
@@ -11,9 +11,8 @@ argument-hint: "<project-slug> [--skip-scene <id>] [--continue]"
11
11
  personas: [ai-video-technical-director]
12
12
  skills: []
13
13
  suggestion:
14
- eligible: true
15
- trigger_description: "re-stitch existing video clips, rebuild final MP4 after edits, ffmpeg concat existing scenes"
16
- trigger_context: "user has edited clips in `<project>/scenes/*/` and wants the final.mp4 rebuilt without paying for re-renders"
14
+ eligible: false
15
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
17
16
  workspaces:
18
17
  - agent-config-maintainer
19
18
  packs:
@@ -11,9 +11,8 @@ argument-hint: "<path-to-script.md> [--image-provider <id>]"
11
11
  personas: [hollywood-director]
12
12
  skills: [scene-expander, video-director, character-consistency]
13
13
  suggestion:
14
- eligible: true
15
- trigger_description: "build a storyboard, contact sheet of scenes, image-only preview, validate a script visually before video render"
16
- trigger_context: "user wants to see all scenes as stills before committing to motion calls"
14
+ eligible: false
15
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
17
16
  workspaces:
18
17
  - agent-config-maintainer
19
18
  packs:
@@ -10,9 +10,8 @@ skills: [worktree-lifecycle, git-workflow]
10
10
  description: Safe worktree removal gate — refuses while the branch holds commits on no other ref; never force-deletes
11
11
  argument-hint: "[worktree-path]"
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "clean up the worktrees, remove the finished worktree"
15
- trigger_context: "git worktree list shows worktrees whose branches are merged"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -10,9 +10,8 @@ skills: [worktree-lifecycle, using-git-worktrees]
10
10
  description: Create a governed worktree and write its scope-lock note — propose-once branch naming, host-native primitive preferred
11
11
  argument-hint: "[task] [branch-name]"
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "do this in a worktree, isolate this task, spawn a worktree for X"
15
- trigger_context: "parallel or exploratory work while the current branch is mid-work"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -9,9 +9,8 @@ sub: status
9
9
  skills: [worktree-lifecycle, git-workflow]
10
10
  description: List active worktrees — ownership (scope lock), dirty state, ahead/behind, merge-readiness incl. verification evidence
11
11
  suggestion:
12
- eligible: true
13
- trigger_description: "which worktrees are active, is this worktree merge-ready, worktree overview"
14
- trigger_context: "git worktree list shows more than the main working tree"
12
+ eligible: false
13
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
15
14
  workspaces:
16
15
  - agent-config-maintainer
17
16
  packs:
@@ -10,9 +10,8 @@ skills: [worktree-lifecycle, verify-completion-evidence]
10
10
  description: Run the scoped verification for a worktree's declared change — narrow probes matched to the diff, never the full CI pipeline
11
11
  argument-hint: "[worktree-path | branch]"
12
12
  suggestion:
13
- eligible: true
14
- trigger_description: "verify the worktree change, prove this worktree is ready"
15
- trigger_context: "a governed worktree with committed changes but no verification evidence attached"
13
+ eligible: false
14
+ rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
16
15
  workspaces:
17
16
  - agent-config-maintainer
18
17
  packs:
@@ -91,6 +91,16 @@ suggestion:
91
91
  cooldown: 30m # longer than global default
92
92
  ```
93
93
 
94
+ ## Eligibility invariant — cluster sub-commands route via their head
95
+
96
+ A `/cluster:sub` command (frontmatter `sub:` set) is **not** independently
97
+ suggestion-eligible: `suggestion.eligible: false`. The cluster HEAD is the
98
+ journey that self-suggests; the sub-command is reached by routing from the head
99
+ (the `/fix:route` template) or by its explicit `/cluster:sub` name — which
100
+ always works. This keeps the proactive surface to a few journeys, not one
101
+ entry point per mode (9.4.0 review; `road-to-surface-consolidation`, council
102
+ 2026-07-20). Standalone commands (no `sub:`) and cluster heads may be eligible.
103
+
94
104
  ## Subordination — when to stay silent
95
105
 
96
106
  The rule lists four senior gates that outrank suggestion. The agent
@@ -39,7 +39,7 @@ schema_version: 1
39
39
  # CI guard: a release bump of `package.json` must update this value
40
40
  # in lockstep — see scripts/check_template_pin_drift.ts (road-to-
41
41
  # portable-runtime-and-update-check P3.3).
42
- agent_config_version: "9.5.0"
42
+ agent_config_version: "9.6.0"
43
43
 
44
44
  # --- Project identity ---
45
45
  project:
@@ -1,6 +1,6 @@
1
1
  # Discovery — Deprecation Report
2
2
 
3
- - Generated: `2026-07-20T14:45:21Z`
3
+ - Generated: `2026-07-20T21:31:59Z`
4
4
  - Deprecated artefacts: **0**
5
5
 
6
6
  _None. Tree is clean._