@event4u/agent-config 6.1.0 → 7.0.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 (1537) hide show
  1. package/.claude-plugin/marketplace.json +35 -3
  2. package/AGENTS.md +8 -7
  3. package/CHANGELOG.md +408 -0
  4. package/CONTRIBUTING.md +1 -1
  5. package/README.md +17 -15
  6. package/dist/agent-src/commands/agent-status.md +2 -2
  7. package/dist/agent-src/commands/agents/audit.md +3 -3
  8. package/dist/agent-src/commands/agents/init.md +1 -1
  9. package/dist/agent-src/commands/agents/optimize.md +4 -4
  10. package/dist/agent-src/commands/analyze/decision.md +108 -0
  11. package/dist/agent-src/commands/analyze/incident.md +120 -0
  12. package/dist/agent-src/commands/analyze/near-miss.md +113 -0
  13. package/dist/agent-src/commands/analyze/postmortem.md +130 -0
  14. package/dist/agent-src/commands/analyze/premortem.md +104 -0
  15. package/dist/agent-src/commands/analyze.md +124 -0
  16. package/dist/agent-src/commands/brand/identity.md +27 -0
  17. package/dist/agent-src/commands/brand/review.md +27 -0
  18. package/dist/agent-src/commands/brand/strategy.md +27 -0
  19. package/dist/agent-src/commands/brand/tokens.md +28 -0
  20. package/dist/agent-src/commands/brand/voice.md +27 -0
  21. package/dist/agent-src/commands/brand.md +58 -0
  22. package/dist/agent-src/commands/check-current-md.md +3 -3
  23. package/dist/agent-src/commands/condense.md +2 -2
  24. package/dist/agent-src/commands/council/debate.md +2 -2
  25. package/dist/agent-src/commands/council/default.md +45 -18
  26. package/dist/agent-src/commands/fix/portability.md +3 -3
  27. package/dist/agent-src/commands/fix/refs.md +3 -3
  28. package/dist/agent-src/commands/implement-ticket.md +36 -6
  29. package/dist/agent-src/commands/knowledge/cross-repo.md +1 -1
  30. package/dist/agent-src/commands/memory/add.md +1 -1
  31. package/dist/agent-src/commands/mission/upgrade.md +182 -0
  32. package/dist/agent-src/commands/optimize/skills.md +2 -2
  33. package/dist/agent-src/commands/orchestrate.md +1 -1
  34. package/dist/agent-src/commands/pr/create.md +6 -4
  35. package/dist/agent-src/commands/review-changes.md +8 -0
  36. package/dist/agent-src/commands/roadmap/materialize.md +73 -0
  37. package/dist/agent-src/commands/skill/preview.md +1 -1
  38. package/dist/agent-src/commands/skills/discover.md +1 -1
  39. package/dist/agent-src/commands/threat-model.md +4 -4
  40. package/dist/agent-src/commands/upstream-contribute.md +3 -3
  41. package/dist/agent-src/commands/video/from-script.md +2 -2
  42. package/dist/agent-src/commands/video/from-song.md +3 -3
  43. package/dist/agent-src/commands/video/scene.md +1 -1
  44. package/dist/agent-src/commands/video/storyboard.md +1 -1
  45. package/dist/agent-src/commands/video.md +3 -3
  46. package/dist/agent-src/contexts/communication/rules-auto/source-of-truth-mechanics.md +3 -3
  47. package/dist/agent-src/contexts/communication/rules-auto/user-interaction-mechanics.md +1 -1
  48. package/dist/agent-src/contexts/execution/evidence-discipline.md +153 -0
  49. package/dist/agent-src/contexts/execution/project-intelligence.md +264 -0
  50. package/dist/agent-src/contexts/execution/roadmap-process-loop.md +2 -1
  51. package/dist/agent-src/personas/ai-video-technical-director.md +1 -1
  52. package/dist/agent-src/personas/brand-strategist.md +74 -0
  53. package/dist/agent-src/personas/design-director.md +74 -0
  54. package/dist/agent-src/rules/brand-consistency.md +77 -0
  55. package/dist/agent-src/rules/brand-source-of-truth.md +57 -0
  56. package/dist/agent-src/rules/direct-answers.md +2 -0
  57. package/dist/agent-src/rules/domain-safety-disclaimer.md +2 -0
  58. package/dist/agent-src/rules/git-history-discipline.md +1 -0
  59. package/dist/agent-src/rules/icon-consistency.md +53 -0
  60. package/dist/agent-src/rules/image-likeness-and-rights.md +67 -0
  61. package/dist/agent-src/rules/lethal-trifecta-guard.md +1 -1
  62. package/dist/agent-src/rules/persona-governance.md +2 -2
  63. package/dist/agent-src/rules/provider-lifecycle-discipline.md +3 -1
  64. package/dist/agent-src/rules/roadmap-progress-sync.md +10 -0
  65. package/dist/agent-src/rules/security-sensitive-stop.md +9 -3
  66. package/dist/agent-src/rules/size-enforcement.md +1 -1
  67. package/dist/agent-src/rules/source-confidentiality.md +3 -3
  68. package/dist/agent-src/rules/source-discovery-gate.md +98 -0
  69. package/dist/agent-src/rules/think-before-action.md +1 -0
  70. package/dist/agent-src/rules/ui-audit-gate.md +2 -0
  71. package/dist/agent-src/rules/untrusted-input-defense.md +1 -1
  72. package/dist/agent-src/rules/user-interaction.md +1 -1
  73. package/dist/agent-src/scripts/archive_completed_roadmaps.ts +392 -0
  74. package/dist/agent-src/scripts/update_roadmap_progress.ts +824 -0
  75. package/dist/agent-src/skills/adr-create/SKILL.md +5 -5
  76. package/dist/agent-src/skills/agent-security-review/evals/triggers.json +1 -0
  77. package/dist/agent-src/skills/agents-md-thin-root/SKILL.md +1 -1
  78. package/dist/agent-src/skills/ai-council/SKILL.md +1 -1
  79. package/dist/agent-src/skills/analysis-autonomous-mode/SKILL.md +9 -13
  80. package/dist/agent-src/skills/blade-ui/SKILL.md +12 -5
  81. package/dist/agent-src/skills/blameless-post-mortem/SKILL.md +199 -0
  82. package/dist/agent-src/skills/brand/ATTRIBUTION.md +38 -0
  83. package/dist/agent-src/skills/brand/SKILL.md +115 -0
  84. package/dist/agent-src/skills/brand/data/archetypes.csv +13 -0
  85. package/dist/agent-src/skills/brand/data/color-psychology.csv +14 -0
  86. package/dist/agent-src/skills/brand/data/logo-style-fit.csv +13 -0
  87. package/dist/agent-src/skills/brand/data/manifest.json +226 -0
  88. package/dist/agent-src/skills/brand/data/messaging-frameworks.csv +13 -0
  89. package/dist/agent-src/skills/brand/data/naming-patterns.csv +13 -0
  90. package/dist/agent-src/skills/brand/data/typography-principles.csv +13 -0
  91. package/dist/agent-src/skills/brand/data/voice-tone.csv +13 -0
  92. package/dist/agent-src/skills/brand/evals/triggers.json +17 -0
  93. package/dist/agent-src/skills/brand-asset-generation/SKILL.md +89 -0
  94. package/dist/agent-src/skills/brand-asset-generation/evals/triggers.json +17 -0
  95. package/dist/agent-src/skills/brand-audit/SKILL.md +67 -0
  96. package/dist/agent-src/skills/brand-audit/evals/triggers.json +17 -0
  97. package/dist/agent-src/skills/brand-identity/SKILL.md +101 -0
  98. package/dist/agent-src/skills/brand-identity/evals/triggers.json +17 -0
  99. package/dist/agent-src/skills/brand-strategy/SKILL.md +83 -0
  100. package/dist/agent-src/skills/brand-strategy/evals/triggers.json +17 -0
  101. package/dist/agent-src/skills/brand-to-tokens/SKILL.md +102 -0
  102. package/dist/agent-src/skills/brand-to-tokens/evals/triggers.json +17 -0
  103. package/dist/agent-src/skills/brand-to-tokens/templates/marp-brand-deck.md.example +46 -0
  104. package/dist/agent-src/skills/brand-to-tokens/templates/reveal-brand-deck.yaml +32 -0
  105. package/dist/agent-src/skills/canvas-design/evals/triggers.json +1 -0
  106. package/dist/agent-src/skills/check-refs/SKILL.md +5 -5
  107. package/dist/agent-src/skills/code-review/SKILL.md +6 -15
  108. package/dist/agent-src/skills/command-writing/SKILL.md +2 -2
  109. package/dist/agent-src/skills/complexity-first-planning/evals/triggers.json +1 -0
  110. package/dist/agent-src/skills/context-authoring/SKILL.md +2 -2
  111. package/dist/agent-src/skills/context-document/SKILL.md +35 -2
  112. package/dist/agent-src/skills/corpus-grounding/evals/triggers.json +1 -0
  113. package/dist/agent-src/skills/corpus-grounding/scripts/bm25_search.ts +482 -0
  114. package/dist/agent-src/skills/corpus-grounding/scripts/decision_engine.ts +803 -0
  115. package/dist/agent-src/skills/corpus-grounding/scripts/ground.ts +541 -0
  116. package/dist/agent-src/skills/corpus-grounding/scripts/schema_validator.ts +309 -0
  117. package/dist/agent-src/skills/database/SKILL.md +26 -4
  118. package/dist/agent-src/skills/decision-record/SKILL.md +1 -1
  119. package/dist/agent-src/skills/decision-record/evals/triggers.json +17 -0
  120. package/dist/agent-src/skills/decision-review/SKILL.md +179 -0
  121. package/dist/agent-src/skills/description-assist/SKILL.md +1 -1
  122. package/dist/agent-src/skills/design-intelligence/SKILL.md +1 -1
  123. package/dist/agent-src/skills/design-intelligence/data/manifest.json +23 -6
  124. package/dist/agent-src/skills/design-intelligence/evals/triggers.json +1 -0
  125. package/dist/agent-src/skills/design-tokens/evals/triggers.json +1 -0
  126. package/dist/agent-src/skills/design-tokens/scripts/tokens.ts +888 -0
  127. package/dist/agent-src/skills/doc-coauthoring/evals/triggers.json +1 -0
  128. package/dist/agent-src/skills/eloquent/evals/triggers.json +1 -0
  129. package/dist/agent-src/skills/emit-tickets/SKILL.md +198 -0
  130. package/dist/agent-src/skills/estimate-ticket/evals/triggers.json +1 -0
  131. package/dist/agent-src/skills/git-workflow/SKILL.md +33 -0
  132. package/dist/agent-src/skills/guideline-writing/SKILL.md +2 -2
  133. package/dist/agent-src/skills/iconography/SKILL.md +88 -0
  134. package/dist/agent-src/skills/iconography/evals/triggers.json +17 -0
  135. package/dist/agent-src/skills/image-analyser/evals/triggers.json +1 -0
  136. package/dist/agent-src/skills/image-creator/evals/triggers.json +1 -0
  137. package/dist/agent-src/skills/image-editing/SKILL.md +100 -0
  138. package/dist/agent-src/skills/image-editing/evals/triggers.json +17 -0
  139. package/dist/agent-src/skills/image-generation/SKILL.md +95 -0
  140. package/dist/agent-src/skills/image-generation/evals/triggers.json +17 -0
  141. package/dist/agent-src/skills/image-provider-routing/SKILL.md +96 -0
  142. package/dist/agent-src/skills/image-provider-routing/evals/triggers.json +17 -0
  143. package/dist/agent-src/skills/launch-readiness/SKILL.md +21 -0
  144. package/dist/agent-src/skills/learning-to-rule-or-skill/SKILL.md +12 -8
  145. package/dist/agent-src/skills/lint-skills/SKILL.md +5 -5
  146. package/dist/agent-src/skills/logo-generation/SKILL.md +98 -0
  147. package/dist/agent-src/skills/logo-generation/evals/triggers.json +17 -0
  148. package/dist/agent-src/skills/markitdown/SKILL.md +1 -1
  149. package/dist/agent-src/skills/md-language-check/SKILL.md +1 -1
  150. package/dist/agent-src/skills/motion-choreographer/SKILL.md +1 -1
  151. package/dist/agent-src/skills/php-coder/evals/triggers.json +1 -0
  152. package/dist/agent-src/skills/prediction-pool-optimizer/evals/triggers.json +1 -0
  153. package/dist/agent-src/skills/premortem/SKILL.md +137 -0
  154. package/dist/agent-src/skills/prompt-engineering-image/SKILL.md +115 -0
  155. package/dist/agent-src/skills/prompt-engineering-image/evals/triggers.json +17 -0
  156. package/dist/agent-src/skills/prompt-validator/evals/triggers.json +1 -0
  157. package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +12 -5
  158. package/dist/agent-src/skills/react-shadcn-ui/scripts/shadcn_add.ts +388 -0
  159. package/dist/agent-src/skills/reasoning-orchestrator/SKILL.md +1 -1
  160. package/dist/agent-src/skills/reasoning-orchestrator/evals/triggers.json +1 -0
  161. package/dist/agent-src/skills/refine-ticket/evals/triggers.json +1 -0
  162. package/dist/agent-src/skills/roadmap-management/SKILL.md +16 -3
  163. package/dist/agent-src/skills/roadmap-writing/SKILL.md +76 -0
  164. package/dist/agent-src/skills/root-cause-frameworks/SKILL.md +146 -0
  165. package/dist/agent-src/skills/rule-refactor/SKILL.md +9 -9
  166. package/dist/agent-src/skills/rule-writing/SKILL.md +7 -7
  167. package/dist/agent-src/skills/script-writing/SKILL.md +2 -2
  168. package/dist/agent-src/skills/security-audit/SKILL.md +5 -0
  169. package/dist/agent-src/skills/skill-improvement-pipeline/SKILL.md +19 -3
  170. package/dist/agent-src/skills/skill-management/SKILL.md +3 -3
  171. package/dist/agent-src/skills/skill-reviewer/SKILL.md +1 -1
  172. package/dist/agent-src/skills/skill-writing/SKILL.md +5 -5
  173. package/dist/agent-src/skills/skill-writing/evals/triggers.json +1 -0
  174. package/dist/agent-src/skills/source-discovery/SKILL.md +182 -0
  175. package/dist/agent-src/skills/standards-from-config/SKILL.md +93 -0
  176. package/dist/agent-src/skills/systematic-debugging/SKILL.md +7 -0
  177. package/dist/agent-src/skills/tailwind-engineer/scripts/tailwind_config_gen.ts +561 -0
  178. package/dist/agent-src/skills/threat-modeling/SKILL.md +1 -0
  179. package/dist/agent-src/skills/typography-system/SKILL.md +138 -0
  180. package/dist/agent-src/skills/typography-system/evals/triggers.json +17 -0
  181. package/dist/agent-src/skills/upstream-contribute/SKILL.md +3 -3
  182. package/dist/agent-src/skills/verify-repair-loop/SKILL.md +209 -0
  183. package/dist/agent-src/skills/verify-repair-loop/evals/output-schema.yml +20 -0
  184. package/dist/agent-src/skills/verify-repair-loop/evals/triggers.json +17 -0
  185. package/dist/agent-src/templates/agent-settings.md +7 -0
  186. package/dist/agent-src/templates/contexts/knowledge-card.md +69 -0
  187. package/dist/agent-src/templates/contexts/lesson-card.md +73 -0
  188. package/dist/agent-src/templates/roadmaps.md +29 -1
  189. package/dist/agent-src/templates/scripts/README.md +6 -6
  190. package/dist/agent-src/templates/scripts/check_memory.ts +640 -0
  191. package/dist/agent-src/templates/scripts/check_memory_proposal.ts +351 -0
  192. package/dist/agent-src/templates/scripts/implement_ticket/__main__.ts +27 -0
  193. package/dist/agent-src/templates/scripts/memory_hash.ts +333 -0
  194. package/dist/agent-src/templates/scripts/memory_lookup.ts +1067 -0
  195. package/dist/agent-src/templates/scripts/memory_report.ts +846 -0
  196. package/dist/agent-src/templates/scripts/memory_signal.ts +422 -0
  197. package/dist/agent-src/templates/scripts/memory_status.ts +191 -0
  198. package/dist/agent-src/templates/scripts/pr_review_routing.ts +523 -0
  199. package/dist/agent-src/templates/scripts/pr_risk_review.ts +0 -0
  200. package/dist/agent-src/templates/scripts/telemetry/aggregator.ts +0 -0
  201. package/dist/agent-src/templates/scripts/telemetry/boundary.ts +164 -0
  202. package/dist/agent-src/templates/scripts/telemetry/engagement.ts +479 -0
  203. package/dist/agent-src/templates/scripts/telemetry/report_renderer.ts +394 -0
  204. package/dist/agent-src/templates/scripts/telemetry/settings.ts +210 -0
  205. package/dist/agent-src/templates/scripts/telemetry_record.ts +255 -0
  206. package/dist/agent-src/templates/scripts/telemetry_report.ts +189 -0
  207. package/dist/agent-src/templates/scripts/telemetry_status.ts +312 -0
  208. package/dist/agent-src/templates/scripts/tier_usage_report.ts +597 -0
  209. package/dist/agent-src/templates/scripts/work_engine/__main__.ts +14 -0
  210. package/dist/agent-src/templates/scripts/work_engine/_lib/agent_settings.ts +1118 -0
  211. package/dist/agent-src/templates/scripts/work_engine/_lib/user_global_paths.ts +329 -0
  212. package/dist/agent-src/templates/scripts/work_engine/cli.ts +206 -0
  213. package/dist/agent-src/templates/scripts/work_engine/cli_args.ts +249 -0
  214. package/dist/agent-src/templates/scripts/work_engine/delivery_state.ts +225 -0
  215. package/dist/agent-src/templates/scripts/work_engine/directives/backend/analyze.ts +125 -0
  216. package/dist/agent-src/templates/scripts/work_engine/directives/backend/implement.ts +189 -0
  217. package/dist/agent-src/templates/scripts/work_engine/directives/backend/index.ts +94 -0
  218. package/dist/agent-src/templates/scripts/work_engine/directives/backend/memory.ts +193 -0
  219. package/dist/agent-src/templates/scripts/work_engine/directives/backend/plan.ts +267 -0
  220. package/dist/agent-src/templates/scripts/work_engine/directives/backend/refine.ts +518 -0
  221. package/dist/agent-src/templates/scripts/work_engine/directives/backend/report.ts +379 -0
  222. package/dist/agent-src/templates/scripts/work_engine/directives/backend/test.ts +268 -0
  223. package/dist/agent-src/templates/scripts/work_engine/directives/backend/verify.ts +258 -0
  224. package/dist/agent-src/templates/scripts/work_engine/directives/index.ts +32 -0
  225. package/dist/agent-src/templates/scripts/work_engine/directives/mixed/contract.ts +243 -0
  226. package/dist/agent-src/templates/scripts/work_engine/directives/mixed/index.ts +108 -0
  227. package/dist/agent-src/templates/scripts/work_engine/directives/mixed/stitch.ts +259 -0
  228. package/dist/agent-src/templates/scripts/work_engine/directives/mixed/ui.ts +216 -0
  229. package/dist/agent-src/templates/scripts/work_engine/directives/ui/_passthrough.ts +40 -0
  230. package/dist/agent-src/templates/scripts/work_engine/directives/ui/app_spec.ts +241 -0
  231. package/dist/agent-src/templates/scripts/work_engine/directives/ui/apply.ts +216 -0
  232. package/dist/agent-src/templates/scripts/work_engine/directives/ui/audit.ts +506 -0
  233. package/dist/agent-src/templates/scripts/work_engine/directives/ui/design.ts +325 -0
  234. package/dist/agent-src/templates/scripts/work_engine/directives/ui/index.ts +102 -0
  235. package/dist/agent-src/templates/scripts/work_engine/directives/ui/polish.ts +462 -0
  236. package/dist/agent-src/templates/scripts/work_engine/directives/ui/review.ts +474 -0
  237. package/dist/agent-src/templates/scripts/work_engine/directives/ui/scaffold.ts +352 -0
  238. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/_skipped.ts +33 -0
  239. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/apply.ts +213 -0
  240. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/index.ts +111 -0
  241. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/refine.ts +126 -0
  242. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/report.ts +112 -0
  243. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/test.ts +164 -0
  244. package/dist/agent-src/templates/scripts/work_engine/dispatcher.ts +515 -0
  245. package/dist/agent-src/templates/scripts/work_engine/emitters.ts +119 -0
  246. package/dist/agent-src/templates/scripts/work_engine/errors.ts +24 -0
  247. package/dist/agent-src/templates/scripts/work_engine/hook_bootstrap.ts +104 -0
  248. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/_chat_history_base.ts +176 -0
  249. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/chat_history_append.ts +41 -0
  250. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/chat_history_halt_append.ts +89 -0
  251. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/decision_gate.ts +193 -0
  252. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/decision_trace.ts +304 -0
  253. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/directive_set_guard.ts +110 -0
  254. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/halt_surface_audit.ts +118 -0
  255. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/index.ts +17 -0
  256. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/memory_visibility.ts +161 -0
  257. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/state_shape_validation.ts +45 -0
  258. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/trace.ts +134 -0
  259. package/dist/agent-src/templates/scripts/work_engine/hooks/context.ts +94 -0
  260. package/dist/agent-src/templates/scripts/work_engine/hooks/events.ts +58 -0
  261. package/dist/agent-src/templates/scripts/work_engine/hooks/exceptions.ts +85 -0
  262. package/dist/agent-src/templates/scripts/work_engine/hooks/index.ts +27 -0
  263. package/dist/agent-src/templates/scripts/work_engine/hooks/registry.ts +66 -0
  264. package/dist/agent-src/templates/scripts/work_engine/hooks/runner.ts +90 -0
  265. package/dist/agent-src/templates/scripts/work_engine/hooks/settings.ts +260 -0
  266. package/dist/agent-src/templates/scripts/work_engine/input_builders.ts +260 -0
  267. package/dist/agent-src/templates/scripts/work_engine/intent/classify.ts +466 -0
  268. package/dist/agent-src/templates/scripts/work_engine/migration/v0_to_v1.ts +531 -0
  269. package/dist/agent-src/templates/scripts/work_engine/orchestration.ts +366 -0
  270. package/dist/agent-src/templates/scripts/work_engine/persona_policy.ts +97 -0
  271. package/dist/agent-src/templates/scripts/work_engine/resolvers/diff.ts +135 -0
  272. package/dist/agent-src/templates/scripts/work_engine/resolvers/file.ts +175 -0
  273. package/dist/agent-src/templates/scripts/work_engine/resolvers/prompt.ts +115 -0
  274. package/dist/agent-src/templates/scripts/work_engine/scoring/confidence.ts +415 -0
  275. package/dist/agent-src/templates/scripts/work_engine/scoring/decision_engine.ts +466 -0
  276. package/dist/agent-src/templates/scripts/work_engine/scoring/decision_trace.ts +298 -0
  277. package/dist/agent-src/templates/scripts/work_engine/scoring/memory_visibility.ts +444 -0
  278. package/dist/agent-src/templates/scripts/work_engine/stack/detect.ts +252 -0
  279. package/dist/agent-src/templates/scripts/work_engine/stack/runner.ts +745 -0
  280. package/dist/agent-src/templates/scripts/work_engine/state.ts +1151 -0
  281. package/dist/agent-src/templates/scripts/work_engine/state_io.ts +413 -0
  282. package/dist/agent-src/templates/tickets.md +120 -0
  283. package/dist/cli/commands/commands.js +2 -2
  284. package/dist/cli/commands/commands.js.map +1 -1
  285. package/dist/cli/commands/doctorShell.js +4 -22
  286. package/dist/cli/commands/doctorShell.js.map +1 -1
  287. package/dist/cli/commands/packs.js +1 -1
  288. package/dist/cli/commands/packs.js.map +1 -1
  289. package/dist/cli/commands/recordTriggerEval.js +179 -0
  290. package/dist/cli/commands/recordTriggerEval.js.map +1 -0
  291. package/dist/cli/commands/recordTriggerEval.test.js +113 -0
  292. package/dist/cli/commands/recordTriggerEval.test.js.map +1 -0
  293. package/dist/cli/commands/workspaces.js +1 -1
  294. package/dist/cli/commands/workspaces.js.map +1 -1
  295. package/dist/cli/main.js +22 -1
  296. package/dist/cli/main.js.map +1 -1
  297. package/dist/cli/python/knowledge_ingest.js +1048 -0
  298. package/dist/cli/python/knowledge_ingest.js.map +1 -0
  299. package/dist/cli/python/workspace_analytics.js +1085 -0
  300. package/dist/cli/python/workspace_analytics.js.map +1 -0
  301. package/dist/cli/python/workspace_crypto.js +544 -0
  302. package/dist/cli/python/workspace_crypto.js.map +1 -0
  303. package/dist/cli/python/workspace_documents.js +1216 -0
  304. package/dist/cli/python/workspace_documents.js.map +1 -0
  305. package/dist/cli/python/workspace_drive.js +574 -0
  306. package/dist/cli/python/workspace_drive.js.map +1 -0
  307. package/dist/cli/python/workspace_drive_health.js +628 -0
  308. package/dist/cli/python/workspace_drive_health.js.map +1 -0
  309. package/dist/cli/python/workspace_explain.js +765 -0
  310. package/dist/cli/python/workspace_explain.js.map +1 -0
  311. package/dist/cli/python/workspace_hosts.js +349 -0
  312. package/dist/cli/python/workspace_hosts.js.map +1 -0
  313. package/dist/cli/python/workspace_inbox.js +692 -0
  314. package/dist/cli/python/workspace_inbox.js.map +1 -0
  315. package/dist/cli/python/workspace_render.js +816 -0
  316. package/dist/cli/python/workspace_render.js.map +1 -0
  317. package/dist/cli/python/workspace_roles.js +487 -0
  318. package/dist/cli/python/workspace_roles.js.map +1 -0
  319. package/dist/cli/python/workspace_secrets.js +180 -0
  320. package/dist/cli/python/workspace_secrets.js.map +1 -0
  321. package/dist/cli/python/workspace_sessions.js +1079 -0
  322. package/dist/cli/python/workspace_sessions.js.map +1 -0
  323. package/dist/cli/python/workspace_skills.js +417 -0
  324. package/dist/cli/python/workspace_skills.js.map +1 -0
  325. package/dist/cli/registry.js +2 -0
  326. package/dist/cli/registry.js.map +1 -1
  327. package/dist/discovery/deprecation-report.md +1 -1
  328. package/dist/discovery/discovery-manifest.json +1174 -123
  329. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  330. package/dist/discovery/discovery-manifest.summary.md +9 -6
  331. package/dist/discovery/orphan-report.md +1 -1
  332. package/dist/discovery/packs.json +163 -15
  333. package/dist/discovery/trust-report.md +4 -4
  334. package/dist/discovery/workspaces.json +73 -12
  335. package/dist/install/install.mjs +13934 -0
  336. package/dist/mcp/registry-manifest.json +4 -4
  337. package/dist/router.json +1 -1
  338. package/dist/server/routes/wizard.js +50 -21
  339. package/dist/server/routes/wizard.js.map +1 -1
  340. package/dist/server/routes/workspace.js +44 -25
  341. package/dist/server/routes/workspace.js.map +1 -1
  342. package/dist/server/schemas/settings.js +15 -0
  343. package/dist/server/schemas/settings.js.map +1 -1
  344. package/docs/SKILL_CENSUS.md +344 -0
  345. package/docs/architecture/augment-projection.md +1 -1
  346. package/docs/architecture/multi-tool-projection.md +3 -3
  347. package/docs/architecture.md +37 -6
  348. package/docs/benchmark.md +24 -27
  349. package/docs/capability-matrix.md +32 -0
  350. package/docs/catalog.md +50 -9
  351. package/docs/command-naming-audit.md +60 -0
  352. package/docs/contracts/STABILITY.md +32 -0
  353. package/docs/contracts/agents-md-tech-stack.md +1 -1
  354. package/docs/contracts/ai-council-config.md +22 -22
  355. package/docs/contracts/analysis-memory-loop.md +149 -0
  356. package/docs/contracts/benchmark-ab-contract.md +3 -3
  357. package/docs/contracts/branch-protection-policy.md +27 -0
  358. package/docs/contracts/brand-token-consumption.md +69 -0
  359. package/docs/contracts/command-clusters.md +2 -1
  360. package/docs/contracts/command-surface-tiers.md +13 -0
  361. package/docs/contracts/discovery-manifest.schema.json +24 -5
  362. package/docs/contracts/implement-ticket-flow.md +9 -9
  363. package/docs/contracts/install-layout.md +249 -0
  364. package/docs/contracts/kernel-membership.md +1 -1
  365. package/docs/contracts/linear-ai-rules-inclusion.md +2 -2
  366. package/docs/contracts/linter-structural-model.md +1 -1
  367. package/docs/contracts/mcp-discovery-phase-notice.md +1 -1
  368. package/docs/contracts/multi-tool-projection-fidelity.md +1 -1
  369. package/docs/contracts/namespace.md +2 -2
  370. package/docs/contracts/no-runtime-boundary.md +56 -0
  371. package/docs/contracts/package-self-orientation.md +24 -0
  372. package/docs/contracts/provider-lifecycle.md +3 -3
  373. package/docs/contracts/reasoning-discipline-protocol.md +83 -0
  374. package/docs/contracts/rule-classification.md +3 -3
  375. package/docs/contracts/skill-domains.md +1 -1
  376. package/docs/contracts/smoke-contracts.md +1 -1
  377. package/docs/contracts/surface-tiers.md +81 -0
  378. package/docs/contracts/ticket-bundle-format.md +228 -0
  379. package/docs/cookbook.md +152 -0
  380. package/docs/customization.md +12 -1
  381. package/docs/decisions/ADR-013-discovery-frontmatter-contract.md +16 -0
  382. package/docs/decisions/ADR-056-unvalidated-video-adapters-disposition.md +1 -1
  383. package/docs/decisions/ADR-059-render-resume-filesystem-as-state.md +1 -1
  384. package/docs/decisions/ADR-060-comfyui-sandbox-model.md +1 -1
  385. package/docs/decisions/ADR-061-corpus-grounding-layer.md +48 -1
  386. package/docs/decisions/ADR-096-analysis-workbench.md +110 -0
  387. package/docs/decisions/ADR-097-mission-recipe-privilege-boundary.md +121 -0
  388. package/docs/decisions/ADR-098-evidence-first-structure-discovery.md +154 -0
  389. package/docs/decisions/ADR-099-file-first-pattern-library.md +87 -0
  390. package/docs/decisions/ADR-100-global-knowledge-card-sharing.md +133 -0
  391. package/docs/decisions/ADR-101-ticket-bundle-emission.md +109 -0
  392. package/docs/decisions/ADR-102-ticket-handoff-paste-and-mcp.md +72 -0
  393. package/docs/decisions/ADR-103-global-knowledge-default-off-until-measured.md +92 -0
  394. package/docs/decisions/ADR-200-python-to-typescript-migration.md +193 -0
  395. package/docs/decisions/INDEX.md +9 -0
  396. package/docs/distribution/mcp-submission-checklist.md +3 -3
  397. package/docs/featured-commands.md +1 -1
  398. package/docs/featured-skills.md +1 -1
  399. package/docs/getting-started-by-role.md +2 -0
  400. package/docs/getting-started.md +2 -2
  401. package/docs/guidelines/agent-infra/failure-signatures.md +35 -0
  402. package/docs/guidelines/agent-infra/frontier-reasoning-operating-profile.md +5 -0
  403. package/docs/guidelines/agent-infra/size-and-scope.md +17 -0
  404. package/docs/guidelines/agent-infra/skill-quality-checklist.md +2 -2
  405. package/docs/guides/frontend-design-corpus-refresh.md +83 -0
  406. package/docs/guides/skill-preview.md +1 -1
  407. package/docs/hook-payload-capture.md +4 -4
  408. package/docs/mcp.md +1 -1
  409. package/docs/migration/consumer-template-consumption-model.md +145 -0
  410. package/docs/migration/divergences/README.md +55 -0
  411. package/docs/migration/divergences/_template.md +50 -0
  412. package/docs/migration/divergences/bench-stats-float-precision.md +72 -0
  413. package/docs/migration/divergences/mcp-telemetry-node-sqlite.md +61 -0
  414. package/docs/migration/divergences/pack-mcp-content-gzip-body.md +53 -0
  415. package/docs/migration/divergences/src-scripts-build_cloud_bundle.md +63 -0
  416. package/docs/migration/divergences/src-scripts-check_memory.md +91 -0
  417. package/docs/migration/divergences/src-scripts-inventory_abstraction_budget.md +65 -0
  418. package/docs/migration/divergences/src-scripts-lint_marketplace.md +57 -0
  419. package/docs/migration/divergences/src-scripts-lint_mcp_registry_manifest.md +70 -0
  420. package/docs/migration/divergences/src-scripts-spotcheck_thin_root.md +60 -0
  421. package/docs/migration/divergences/src-scripts-validate_agent_settings.md +58 -0
  422. package/docs/migration/node-floor.md +86 -0
  423. package/docs/migration/yaml-roundtrip-spike.md +163 -0
  424. package/docs/personas.md +6 -1
  425. package/docs/role-experiences.md +19 -0
  426. package/docs/setup/per-ide/windsurf.md +1 -1
  427. package/docs/skills-catalog.md +24 -3
  428. package/docs/threat-model.md +28 -0
  429. package/llms.txt +23 -2
  430. package/package.json +10 -15
  431. package/src/config/agent-settings.template.yml +64 -1
  432. package/src/config/discovery/packs.yml +31 -0
  433. package/src/config/discovery/unassigned-artefacts.yml +6 -0
  434. package/src/config/discovery/workspaces.yml +2 -2
  435. package/src/config/gitignore-block.txt +7 -0
  436. package/src/scripts/_cli/cmd_doctor.ts +2306 -0
  437. package/src/scripts/_cli/cmd_explain.ts +748 -0
  438. package/src/scripts/_cli/cmd_export.ts +375 -0
  439. package/src/scripts/_cli/cmd_migrate.ts +951 -0
  440. package/src/scripts/_cli/cmd_prune.ts +610 -0
  441. package/src/scripts/_cli/cmd_refresh.ts +530 -0
  442. package/src/scripts/_cli/cmd_settings_check.ts +407 -0
  443. package/src/scripts/_cli/cmd_settings_migrate.ts +344 -0
  444. package/src/scripts/_cli/cmd_sync.ts +381 -0
  445. package/src/scripts/_cli/cmd_uninstall.ts +833 -0
  446. package/src/scripts/_cli/cmd_update.ts +585 -0
  447. package/src/scripts/_cli/cmd_upgrade.ts +390 -0
  448. package/src/scripts/_cli/cmd_validate.ts +394 -0
  449. package/src/scripts/_cli/cmd_versions.ts +492 -0
  450. package/src/scripts/_cli/explain_last/assumptions.ts +114 -0
  451. package/src/scripts/_cli/explain_last/council.ts +197 -0
  452. package/src/scripts/_cli/explain_last/halt.ts +73 -0
  453. package/src/scripts/_cli/explain_last/index.ts +155 -0
  454. package/src/scripts/_cli/explain_last/inputs.ts +211 -0
  455. package/src/scripts/_cli/explain_last/memory.ts +231 -0
  456. package/src/scripts/_cli/explain_last/provider.ts +82 -0
  457. package/src/scripts/_cli/explain_last/render.ts +54 -0
  458. package/src/scripts/_cli/explain_last/route.ts +70 -0
  459. package/src/scripts/_cli/explain_last/scrubber.ts +138 -0
  460. package/src/scripts/_cli/explain_last/sections/assumptions.ts +51 -0
  461. package/src/scripts/_cli/explain_last/sections/council.ts +56 -0
  462. package/src/scripts/_cli/explain_last/sections/halt.ts +60 -0
  463. package/src/scripts/_cli/explain_last/sections/header.ts +50 -0
  464. package/src/scripts/_cli/explain_last/sections/index.ts +21 -0
  465. package/src/scripts/_cli/explain_last/sections/inputs.ts +63 -0
  466. package/src/scripts/_cli/explain_last/sections/memory.ts +124 -0
  467. package/src/scripts/_cli/explain_last/sections/pack.ts +42 -0
  468. package/src/scripts/_cli/explain_last/sections/provider.ts +51 -0
  469. package/src/scripts/_cli/explain_last/sections/route.ts +48 -0
  470. package/src/scripts/_cli/explain_last/state_loader.ts +119 -0
  471. package/src/scripts/_dispatch.bash +179 -163
  472. package/src/scripts/_lib/agent_settings.ts +1123 -0
  473. package/src/scripts/_lib/agent_src.ts +654 -0
  474. package/src/scripts/_lib/agents_overlay.ts +183 -0
  475. package/src/scripts/_lib/bench_ab_cache.ts +399 -0
  476. package/src/scripts/_lib/bench_ab_scoring.ts +352 -0
  477. package/src/scripts/_lib/bench_ab_scoring_v2.ts +751 -0
  478. package/src/scripts/_lib/bench_cost.ts +396 -0
  479. package/src/scripts/_lib/bench_quality.ts +237 -0
  480. package/src/scripts/_lib/bench_report.ts +255 -0
  481. package/src/scripts/_lib/bench_telegraph.ts +516 -0
  482. package/src/scripts/_lib/bench_telegraph_report.ts +272 -0
  483. package/src/scripts/_lib/changelog_eras.ts +398 -0
  484. package/src/scripts/_lib/claude_desktop_bundler.ts +324 -0
  485. package/src/scripts/_lib/cli_wrapper.ts +89 -0
  486. package/src/scripts/_lib/fs_atomic.ts +172 -0
  487. package/src/scripts/_lib/global_deploy_inventory.ts +639 -0
  488. package/src/scripts/_lib/install_layout.ts +87 -0
  489. package/src/scripts/_lib/install_regenerator.ts +157 -0
  490. package/src/scripts/_lib/installed_lock.ts +451 -0
  491. package/src/scripts/_lib/installed_tools.ts +518 -0
  492. package/src/scripts/_lib/json_pointers.ts +388 -0
  493. package/src/scripts/_lib/knowledge_global.ts +770 -0
  494. package/src/scripts/_lib/knowledge_global_promote.ts +453 -0
  495. package/src/scripts/_lib/knowledge_global_redaction.ts +448 -0
  496. package/src/scripts/_lib/link_crypto.ts +325 -0
  497. package/src/scripts/_lib/linked_projects.ts +613 -0
  498. package/src/scripts/_lib/model_tier.ts +65 -0
  499. package/src/scripts/_lib/module_detection.ts +275 -0
  500. package/src/scripts/_lib/node_sqlite.d.ts +32 -0
  501. package/src/scripts/_lib/pin_resolver.ts +264 -0
  502. package/src/scripts/_lib/py_random.ts +212 -0
  503. package/src/scripts/_lib/script_output.ts +147 -0
  504. package/src/scripts/_lib/security_lint.ts +623 -0
  505. package/src/scripts/_lib/surface_tiers.ts +127 -0
  506. package/src/scripts/_lib/token_count.ts +126 -0
  507. package/src/scripts/_lib/update_check.ts +297 -0
  508. package/src/scripts/_lib/user_global_paths.ts +329 -0
  509. package/src/scripts/_lib/value_ladder.ts +882 -0
  510. package/src/scripts/_lib/value_report.ts +617 -0
  511. package/src/scripts/_lib/zip_min.ts +175 -0
  512. package/src/scripts/adoption_report.ts +357 -0
  513. package/src/scripts/adoption_snapshot.ts +392 -0
  514. package/src/scripts/adoption_status.ts +424 -0
  515. package/src/scripts/adr/regenerate_index.ts +257 -0
  516. package/src/scripts/ai-image/adapters/flux.sh +45 -0
  517. package/src/scripts/ai-image/adapters/gemini-image.sh +45 -0
  518. package/src/scripts/ai-image/adapters/ideogram.sh +45 -0
  519. package/src/scripts/ai-image/adapters/recraft.sh +47 -0
  520. package/src/scripts/ai-video/adapters/comfyui.sh +3 -3
  521. package/src/scripts/ai-video/adapters/fal.sh +3 -3
  522. package/src/scripts/ai-video/adapters/gemini-veo.sh +3 -3
  523. package/src/scripts/ai-video/adapters/higgsfield.sh +3 -3
  524. package/src/scripts/ai-video/adapters/kling.sh +3 -3
  525. package/src/scripts/ai-video/adapters/musetalk.sh +2 -2
  526. package/src/scripts/ai-video/adapters/openai-images.sh +3 -3
  527. package/src/scripts/ai-video/adapters/replicate.sh +3 -3
  528. package/src/scripts/ai-video/adapters/sora.sh +3 -3
  529. package/src/scripts/ai-video/adapters/syncso.sh +3 -3
  530. package/src/scripts/ai-video/audio-adapters/allin1.sh +2 -2
  531. package/src/scripts/ai-video/audio-adapters/whisperx.sh +2 -2
  532. package/src/scripts/ai-video/lib/audio-adapter-contract.md +1 -1
  533. package/src/scripts/ai-video/lib/embed-provenance.sh +2 -2
  534. package/src/scripts/ai-video/lib/ingest-song.sh +2 -2
  535. package/src/scripts/ai-video/lib/parse-blueprint.sh +1 -1
  536. package/src/scripts/ai-video/lib/resume-scan.sh +2 -2
  537. package/src/scripts/ai-video/smoke-trace.sh +16 -7
  538. package/src/scripts/ai-video/stitch.sh +2 -2
  539. package/src/scripts/ai_council/_default_prices.ts +73 -0
  540. package/src/scripts/ai_council/advisors.ts +244 -0
  541. package/src/scripts/ai_council/airgap.ts +249 -0
  542. package/src/scripts/ai_council/budget_guard.ts +492 -0
  543. package/src/scripts/ai_council/bundler.ts +376 -0
  544. package/src/scripts/ai_council/cli_hints.ts +120 -0
  545. package/src/scripts/ai_council/clients.ts +2214 -0
  546. package/src/scripts/ai_council/compile_corpus.ts +681 -0
  547. package/src/scripts/ai_council/confidence_gate.ts +230 -0
  548. package/src/scripts/ai_council/config.ts +1729 -0
  549. package/src/scripts/ai_council/consensus.ts +551 -0
  550. package/src/scripts/ai_council/events_log.ts +327 -0
  551. package/src/scripts/ai_council/learn_low_impact_preview.ts +317 -0
  552. package/src/scripts/ai_council/low_impact.ts +1069 -0
  553. package/src/scripts/ai_council/low_impact_corpus.ts +662 -0
  554. package/src/scripts/ai_council/low_impact_intake.ts +222 -0
  555. package/src/scripts/ai_council/modes.ts +169 -0
  556. package/src/scripts/ai_council/necessity.ts +933 -0
  557. package/src/scripts/ai_council/orchestrator.ts +1689 -0
  558. package/src/scripts/ai_council/pricing.ts +267 -0
  559. package/src/scripts/ai_council/probation_gate.ts +282 -0
  560. package/src/scripts/ai_council/project_context.ts +308 -0
  561. package/src/scripts/ai_council/prompts.ts +600 -0
  562. package/src/scripts/ai_council/redact_low_impact_entry.ts +291 -0
  563. package/src/scripts/ai_council/replay.ts +314 -0
  564. package/src/scripts/ai_council/session.ts +558 -0
  565. package/src/scripts/ai_council/shadow_dispatch.ts +509 -0
  566. package/src/scripts/ai_council/solo_dispatch.ts +281 -0
  567. package/src/scripts/analysis_freshness.ts +343 -0
  568. package/src/scripts/annotate_discovery.ts +288 -0
  569. package/src/scripts/apply_modules_config.ts +537 -0
  570. package/src/scripts/audit_adr_coverage.ts +357 -0
  571. package/src/scripts/audit_auto_rules.ts +415 -0
  572. package/src/scripts/audit_cloud_compatibility.ts +608 -0
  573. package/src/scripts/audit_command_surface.ts +1227 -0
  574. package/src/scripts/audit_initial_context.ts +694 -0
  575. package/src/scripts/audit_likelihood.ts +434 -0
  576. package/src/scripts/audit_mcp_tools.ts +252 -0
  577. package/src/scripts/audit_overlap.ts +421 -0
  578. package/src/scripts/audit_skill_descriptions.ts +402 -0
  579. package/src/scripts/audit_skill_overlap.ts +576 -0
  580. package/src/scripts/audit_user_type_axis.ts +264 -0
  581. package/src/scripts/backfill_model_tier.ts +349 -0
  582. package/src/scripts/bench_ab_cache_dispatch.ts +126 -0
  583. package/src/scripts/bench_ab_clone.ts +610 -0
  584. package/src/scripts/bench_ab_diff.ts +609 -0
  585. package/src/scripts/bench_ab_integrity.ts +261 -0
  586. package/src/scripts/bench_ab_run.ts +417 -0
  587. package/src/scripts/bench_ab_task_runner.ts +1382 -0
  588. package/src/scripts/bench_ab_tracka_run.ts +436 -0
  589. package/src/scripts/bench_ab_v2_run.ts +585 -0
  590. package/src/scripts/bench_ab_v2_stats.ts +1018 -0
  591. package/src/scripts/bench_baseline_ready.ts +326 -0
  592. package/src/scripts/bench_condense_memory.ts +479 -0
  593. package/src/scripts/bench_drift_check.ts +503 -0
  594. package/src/scripts/bench_per_tool.ts +591 -0
  595. package/src/scripts/bench_rtk_savings.ts +710 -0
  596. package/src/scripts/bench_run.ts +509 -0
  597. package/src/scripts/bench_runner.ts +519 -0
  598. package/src/scripts/build_cloud_bundle.ts +692 -0
  599. package/src/scripts/build_discovery_manifest.ts +1371 -0
  600. package/src/scripts/build_linear_digest.ts +368 -0
  601. package/src/scripts/build_mcp_registry_manifest.ts +351 -0
  602. package/src/scripts/build_rule_trigger_matrix.ts +469 -0
  603. package/src/scripts/capture_showcase_session.ts +735 -0
  604. package/src/scripts/chat_history.ts +2301 -0
  605. package/src/scripts/check_always_budget.ts +694 -0
  606. package/src/scripts/check_artefact_checksums.ts +281 -0
  607. package/src/scripts/check_augment_description_cap.ts +133 -0
  608. package/src/scripts/check_augmentignore.ts +108 -0
  609. package/src/scripts/check_beta_review_markers.ts +234 -0
  610. package/src/scripts/check_bite_sized_granularity.ts +116 -0
  611. package/src/scripts/check_cluster_patterns.ts +285 -0
  612. package/src/scripts/check_command_count_messaging.ts +224 -0
  613. package/src/scripts/check_condensation.ts +900 -0
  614. package/src/scripts/check_condensed_paths.ts +414 -0
  615. package/src/scripts/check_context_paths.ts +388 -0
  616. package/src/scripts/check_council_config_location.ts +260 -0
  617. package/src/scripts/check_council_layout.ts +180 -0
  618. package/src/scripts/check_council_references.ts +345 -0
  619. package/src/scripts/check_discovery_determinism.ts +124 -0
  620. package/src/scripts/check_gate_paths.ts +230 -0
  621. package/src/scripts/check_iron_law_prominence.ts +298 -0
  622. package/src/scripts/check_kernel_rule_bundle.ts +242 -0
  623. package/src/scripts/check_knowledge_cards.ts +759 -0
  624. package/src/scripts/check_md_language.ts +291 -0
  625. package/src/scripts/check_memory.ts +845 -0
  626. package/src/scripts/check_memory_proposal.ts +351 -0
  627. package/src/scripts/check_module_management_neutral.ts +238 -0
  628. package/src/scripts/check_no_conflict_markers.ts +298 -0
  629. package/src/scripts/check_no_conflict_markers_allowlist.json +4 -0
  630. package/src/scripts/check_no_external_sources.ts +351 -0
  631. package/src/scripts/check_no_local_settings_committed.ts +69 -0
  632. package/src/scripts/check_no_new_legacy_path.ts +188 -0
  633. package/src/scripts/check_no_roadmap_refs.ts +304 -0
  634. package/src/scripts/check_one_off_location.ts +165 -0
  635. package/src/scripts/check_overlay_cascade_subdirs.ts +188 -0
  636. package/src/scripts/check_portability.ts +860 -0
  637. package/src/scripts/check_proposal.ts +0 -0
  638. package/src/scripts/check_public_catalog_links.ts +204 -0
  639. package/src/scripts/check_public_links.ts +357 -0
  640. package/src/scripts/check_references.ts +963 -0
  641. package/src/scripts/check_release_includes_discovery.ts +94 -0
  642. package/src/scripts/check_release_pr_shape.ts +222 -0
  643. package/src/scripts/check_release_published.ts +235 -0
  644. package/src/scripts/check_release_trunk_sync.ts +203 -0
  645. package/src/scripts/check_reply_consistency.ts +359 -0
  646. package/src/scripts/check_roadmap_trackable.ts +268 -0
  647. package/src/scripts/check_role_doc_links.ts +187 -0
  648. package/src/scripts/check_safety_floor_untouched.ts +160 -0
  649. package/src/scripts/check_skill_requires.ts +205 -0
  650. package/src/scripts/check_structural_breaking.ts +170 -0
  651. package/src/scripts/check_surface_tiers.ts +567 -0
  652. package/src/scripts/check_template_pin_drift.ts +222 -0
  653. package/src/scripts/check_test_coverage_diff.ts +235 -0
  654. package/src/scripts/check_token_optimizer_freshness.ts +183 -0
  655. package/src/scripts/check_trigger_evals.ts +375 -0
  656. package/src/scripts/check_update_banner.ts +143 -0
  657. package/src/scripts/ci_status.ts +0 -0
  658. package/src/scripts/ci_summary.ts +235 -0
  659. package/src/scripts/ci_time_ratio.ts +526 -0
  660. package/src/scripts/command_suggester/cooldown.ts +176 -0
  661. package/src/scripts/command_suggester/index.ts +41 -0
  662. package/src/scripts/command_suggester/loader.ts +205 -0
  663. package/src/scripts/command_suggester/match.ts +294 -0
  664. package/src/scripts/command_suggester/rank.ts +201 -0
  665. package/src/scripts/command_suggester/render.ts +122 -0
  666. package/src/scripts/command_suggester/sanitize.ts +114 -0
  667. package/src/scripts/command_suggester/settings.ts +186 -0
  668. package/src/scripts/command_suggester/types.ts +0 -0
  669. package/src/scripts/compile_router.ts +297 -0
  670. package/src/scripts/condense.sh +7 -1
  671. package/src/scripts/condense.ts +2035 -0
  672. package/src/scripts/condense_memory.ts +334 -0
  673. package/src/scripts/config/index.ts +15 -0
  674. package/src/scripts/config/packs.ts +310 -0
  675. package/src/scripts/config/presets.ts +369 -0
  676. package/src/scripts/config/profile_explain.ts +114 -0
  677. package/src/scripts/config/profiles.ts +277 -0
  678. package/src/scripts/config/session_profiles.ts +1064 -0
  679. package/src/scripts/context_hygiene_hook.ts +272 -0
  680. package/src/scripts/cost_by_conversation.ts +444 -0
  681. package/src/scripts/cost_summary.ts +407 -0
  682. package/src/scripts/council_cli.ts +2827 -0
  683. package/src/scripts/council_prune.ts +153 -0
  684. package/src/scripts/cross_repo_retrieve.ts +694 -0
  685. package/src/scripts/discovery_stats.ts +218 -0
  686. package/src/scripts/evidence_report.ts +580 -0
  687. package/src/scripts/external_sources_denylist.json +1 -0
  688. package/src/scripts/extract_audit_patterns.ts +394 -0
  689. package/src/scripts/first_run_gate_hook.ts +246 -0
  690. package/src/scripts/gen_discovery_baseline.ts +297 -0
  691. package/src/scripts/generate_capabilities_index.ts +496 -0
  692. package/src/scripts/generate_capability_matrix.ts +430 -0
  693. package/src/scripts/generate_catalog.ts +178 -0
  694. package/src/scripts/generate_command_flows.ts +316 -0
  695. package/src/scripts/generate_cookbook.ts +302 -0
  696. package/src/scripts/generate_index.ts +500 -0
  697. package/src/scripts/generate_ownership_matrix.ts +646 -0
  698. package/src/scripts/generate_pack_manifests.ts +1025 -0
  699. package/src/scripts/generate_role_experiences_catalog.ts +265 -0
  700. package/src/scripts/hermetic-install.sh +22 -11
  701. package/src/scripts/hook_manifest.yaml +24 -10
  702. package/src/scripts/hooks/augment-chat-history.sh +3 -10
  703. package/src/scripts/hooks/augment-context-hygiene.sh +3 -10
  704. package/src/scripts/hooks/augment-dispatcher.sh +3 -10
  705. package/src/scripts/hooks/augment-onboarding-gate.sh +3 -10
  706. package/src/scripts/hooks/augment-roadmap-progress.sh +3 -10
  707. package/src/scripts/hooks/block_no_verify.ts +413 -0
  708. package/src/scripts/hooks/cline-dispatcher.sh +3 -10
  709. package/src/scripts/hooks/cowork-dispatcher.sh +3 -14
  710. package/src/scripts/hooks/cursor-dispatcher.sh +3 -10
  711. package/src/scripts/hooks/dispatch_hook.ts +851 -0
  712. package/src/scripts/hooks/dispatch_issues.ts +226 -0
  713. package/src/scripts/hooks/envelope.ts +140 -0
  714. package/src/scripts/hooks/gemini-dispatcher.sh +3 -8
  715. package/src/scripts/hooks/replay_hook.ts +364 -0
  716. package/src/scripts/hooks/state_io.ts +293 -0
  717. package/src/scripts/hooks/windsurf-dispatcher.sh +3 -9
  718. package/src/scripts/hooks_doctor.ts +418 -0
  719. package/src/scripts/hooks_status.ts +292 -0
  720. package/src/scripts/injection_scan_hook.ts +285 -0
  721. package/src/scripts/install +36 -22
  722. package/src/scripts/install-hooks.sh +20 -14
  723. package/src/scripts/install.sh +38 -14
  724. package/src/scripts/install.ts +4515 -0
  725. package/src/scripts/inventory_abstraction_budget.ts +1104 -0
  726. package/src/scripts/inventory_frontmatter.ts +320 -0
  727. package/src/scripts/inventory_meta_layers.ts +516 -0
  728. package/src/scripts/iron_law_sha.ts +233 -0
  729. package/src/scripts/knowledge_global_cli.ts +1105 -0
  730. package/src/scripts/linked_projects_list.ts +310 -0
  731. package/src/scripts/lint_agent_security.ts +224 -0
  732. package/src/scripts/lint_agent_skill_names.ts +241 -0
  733. package/src/scripts/lint_agents_layout.ts +205 -0
  734. package/src/scripts/lint_agents_md.ts +294 -0
  735. package/src/scripts/lint_archived_skills.ts +309 -0
  736. package/src/scripts/lint_artefact_frontmatter.ts +359 -0
  737. package/src/scripts/lint_bench_ab.ts +319 -0
  738. package/src/scripts/lint_bench_corpus.ts +421 -0
  739. package/src/scripts/lint_command_flow_coverage.ts +231 -0
  740. package/src/scripts/lint_command_routing.ts +377 -0
  741. package/src/scripts/lint_command_tiers.ts +345 -0
  742. package/src/scripts/lint_command_verbs.ts +379 -0
  743. package/src/scripts/lint_commit_subjects.ts +243 -0
  744. package/src/scripts/lint_context_spine_usage.ts +198 -0
  745. package/src/scripts/lint_discovery_manifest.ts +540 -0
  746. package/src/scripts/lint_discovery_vocabulary.ts +393 -0
  747. package/src/scripts/lint_empty_roadmaps.ts +147 -0
  748. package/src/scripts/lint_eval_freshness.ts +335 -0
  749. package/src/scripts/lint_examples.ts +183 -0
  750. package/src/scripts/lint_explain_trace.ts +381 -0
  751. package/src/scripts/lint_featured_skills.ts +0 -0
  752. package/src/scripts/lint_flows.ts +701 -0
  753. package/src/scripts/lint_framework_leakage.ts +497 -0
  754. package/src/scripts/lint_framework_leakage_allowlist.json +8 -1
  755. package/src/scripts/lint_frontmatter_boilerplate.ts +356 -0
  756. package/src/scripts/lint_ghostwriter_source.ts +389 -0
  757. package/src/scripts/lint_global_paths.ts +420 -0
  758. package/src/scripts/lint_handoffs.ts +362 -0
  759. package/src/scripts/lint_hidden_unicode.ts +350 -0
  760. package/src/scripts/lint_hook_concern_budget.ts +319 -0
  761. package/src/scripts/lint_hook_manifest.ts +354 -0
  762. package/src/scripts/lint_instruction_smuggling.ts +173 -0
  763. package/src/scripts/lint_load_context.ts +371 -0
  764. package/src/scripts/lint_marketplace.ts +286 -0
  765. package/src/scripts/lint_marketplace_install_completeness.ts +309 -0
  766. package/src/scripts/lint_mcp_config_security.ts +225 -0
  767. package/src/scripts/lint_mcp_registry_manifest.ts +350 -0
  768. package/src/scripts/lint_media_policy_linkage.ts +224 -0
  769. package/src/scripts/lint_missions.ts +774 -0
  770. package/src/scripts/lint_model_tier_coverage.ts +151 -0
  771. package/src/scripts/lint_namespace.ts +295 -0
  772. package/src/scripts/lint_namespace_collisions.ts +203 -0
  773. package/src/scripts/lint_new_skill_gate.ts +462 -0
  774. package/src/scripts/lint_no_new_atomic_commands.ts +342 -0
  775. package/src/scripts/lint_one_off_age.ts +348 -0
  776. package/src/scripts/lint_orchestration_dsl.ts +377 -0
  777. package/src/scripts/lint_orchestrator_auto_detect.ts +177 -0
  778. package/src/scripts/lint_pack_boundaries.ts +366 -0
  779. package/src/scripts/lint_pack_dependencies.ts +541 -0
  780. package/src/scripts/lint_pack_first_win.ts +202 -0
  781. package/src/scripts/lint_persona_governance.ts +292 -0
  782. package/src/scripts/lint_positioning.ts +257 -0
  783. package/src/scripts/lint_profile_overlay_set_only.ts +324 -0
  784. package/src/scripts/lint_readme_jargon.ts +189 -0
  785. package/src/scripts/lint_readme_size.ts +73 -0
  786. package/src/scripts/lint_regression.ts +497 -0
  787. package/src/scripts/lint_roadmap_ci_steps.ts +252 -0
  788. package/src/scripts/lint_roadmap_complexity.ts +295 -0
  789. package/src/scripts/lint_roadmap_later_disposition.ts +357 -0
  790. package/src/scripts/lint_role_experiences.ts +410 -0
  791. package/src/scripts/lint_rule_interactions.ts +281 -0
  792. package/src/scripts/lint_rule_tiers.ts +169 -0
  793. package/src/scripts/lint_showcase_sessions.ts +254 -0
  794. package/src/scripts/lint_skill_frontmatter_safety.ts +279 -0
  795. package/src/scripts/lint_skill_originality.ts +586 -0
  796. package/src/scripts/lint_skill_originality_allowlist.json +20 -0
  797. package/src/scripts/lint_skill_tools.ts +320 -0
  798. package/src/scripts/lint_ticket_buildable.ts +1027 -0
  799. package/src/scripts/lint_topics_yaml.ts +203 -0
  800. package/src/scripts/lint_trust_coherence.ts +377 -0
  801. package/src/scripts/lint_value_dashboard.ts +314 -0
  802. package/src/scripts/lint_workflow_security.ts +637 -0
  803. package/src/scripts/lint_workflow_security_allowlist.json +20 -0
  804. package/src/scripts/lint_workspace_boundary.ts +248 -0
  805. package/src/scripts/mcp_parity_smoke.ts +638 -0
  806. package/src/scripts/mcp_render.ts +346 -0
  807. package/src/scripts/mcp_server/__main__.ts +28 -0
  808. package/src/scripts/mcp_server/catalog.ts +154 -0
  809. package/src/scripts/mcp_server/index.ts +24 -0
  810. package/src/scripts/mcp_server/metadata.ts +83 -0
  811. package/src/scripts/mcp_server/prompts.ts +711 -0
  812. package/src/scripts/mcp_server/resources.ts +343 -0
  813. package/src/scripts/mcp_server/server.ts +439 -0
  814. package/src/scripts/mcp_server/telemetry.ts +154 -0
  815. package/src/scripts/mcp_server/tools.ts +1031 -0
  816. package/src/scripts/mcp_setup.sh +25 -52
  817. package/src/scripts/mcp_telemetry_health.ts +362 -0
  818. package/src/scripts/mcp_telemetry_query.ts +371 -0
  819. package/src/scripts/mcp_telemetry_store.ts +422 -0
  820. package/src/scripts/measure_augment_budget.ts +453 -0
  821. package/src/scripts/measure_density.ts +618 -0
  822. package/src/scripts/measure_frugality_savings.ts +353 -0
  823. package/src/scripts/measure_markitdown_lift.ts +299 -0
  824. package/src/scripts/measure_patterns.ts +682 -0
  825. package/src/scripts/measure_projection_bytes.ts +425 -0
  826. package/src/scripts/measure_rule_budget.ts +627 -0
  827. package/src/scripts/measure_skill_reduction.ts +442 -0
  828. package/src/scripts/media/lib/adapter-common.sh +247 -0
  829. package/src/scripts/media/lib/adapter-contract.md +329 -0
  830. package/src/scripts/media/lib/fixtures/comfyui/result.json +1 -0
  831. package/src/scripts/media/lib/fixtures/fal/result.json +1 -0
  832. package/src/scripts/media/lib/fixtures/flux/asset-0001.png +0 -0
  833. package/src/scripts/media/lib/fixtures/flux/result.json +1 -0
  834. package/src/scripts/media/lib/fixtures/gemini-image/asset-0001.png +0 -0
  835. package/src/scripts/media/lib/fixtures/gemini-image/result.json +1 -0
  836. package/src/scripts/media/lib/fixtures/gemini-veo/result.json +1 -0
  837. package/src/scripts/media/lib/fixtures/higgsfield/result.json +1 -0
  838. package/src/scripts/media/lib/fixtures/ideogram/asset-0001.png +0 -0
  839. package/src/scripts/media/lib/fixtures/ideogram/result.json +1 -0
  840. package/src/scripts/media/lib/fixtures/kling/result.json +1 -0
  841. package/src/scripts/media/lib/fixtures/musetalk/result.json +1 -0
  842. package/src/scripts/media/lib/fixtures/openai-images/result.json +1 -0
  843. package/src/scripts/media/lib/fixtures/recraft/asset-0001.svg +1 -0
  844. package/src/scripts/media/lib/fixtures/recraft/result.json +1 -0
  845. package/src/scripts/media/lib/fixtures/replicate/result.json +1 -0
  846. package/src/scripts/media/lib/fixtures/sora/result.json +1 -0
  847. package/src/scripts/media/lib/fixtures/syncso/result.json +1 -0
  848. package/src/scripts/media/lib/load-config.sh +180 -0
  849. package/src/scripts/media/lib/redact.sh +85 -0
  850. package/src/scripts/memory_hash.ts +331 -0
  851. package/src/scripts/memory_lookup.ts +1278 -0
  852. package/src/scripts/memory_report.ts +845 -0
  853. package/src/scripts/memory_signal.ts +417 -0
  854. package/src/scripts/memory_status.ts +189 -0
  855. package/src/scripts/migrate_command_suggestions.ts +341 -0
  856. package/src/scripts/migrate_frontmatter_defaults.ts +539 -0
  857. package/src/scripts/migration_status.ts +301 -0
  858. package/src/scripts/mine_session.ts +645 -0
  859. package/src/scripts/minimal_safe_diff_hook.ts +355 -0
  860. package/src/scripts/move_artefact.ts +869 -0
  861. package/src/scripts/new_skill.ts +404 -0
  862. package/src/scripts/onboarding_gate_hook.ts +224 -0
  863. package/src/scripts/pack_dependency_allowlist.json +1 -1
  864. package/src/scripts/pack_mcp_content.ts +552 -0
  865. package/src/scripts/parity/README.md +140 -0
  866. package/src/scripts/parity/compare.ts +189 -0
  867. package/src/scripts/parity/coverage_diff.ts +199 -0
  868. package/src/scripts/parity/phase-manifest.json +93 -0
  869. package/src/scripts/parity/phase_gate.ts +270 -0
  870. package/src/scripts/parity/replay.ts +320 -0
  871. package/src/scripts/pattern_share.ts +363 -0
  872. package/src/scripts/plan_physical_move.ts +605 -0
  873. package/src/scripts/prediction-pool/poisson_sim.ts +537 -0
  874. package/src/scripts/prediction-pool/pool_winsim.ts +677 -0
  875. package/src/scripts/prediction-pool/score_ev.ts +546 -0
  876. package/src/scripts/print_required_checks.ts +249 -0
  877. package/src/scripts/probe_projection_fidelity.ts +468 -0
  878. package/src/scripts/probe_skill_registration.ts +787 -0
  879. package/src/scripts/profile_staleness_hook.ts +169 -0
  880. package/src/scripts/profile_use.ts +227 -0
  881. package/src/scripts/project_thin_rules.ts +387 -0
  882. package/src/scripts/propose_modules_config.ts +311 -0
  883. package/src/scripts/prototype_lint_contradictions.ts +414 -0
  884. package/src/scripts/prove_pack_extractable.ts +388 -0
  885. package/src/scripts/readme_linter.ts +913 -0
  886. package/src/scripts/redact_hook_capture.ts +325 -0
  887. package/src/scripts/refine_ticket_detect.ts +703 -0
  888. package/src/scripts/release.ts +1697 -0
  889. package/src/scripts/render_benchmark_md.ts +664 -0
  890. package/src/scripts/render_value_md.ts +506 -0
  891. package/src/scripts/repro/repro_marketplace_install_gap.sh +1 -1
  892. package/src/scripts/roadmap_progress_hook.ts +410 -0
  893. package/src/scripts/router_telemetry.ts +972 -0
  894. package/src/scripts/run.ts +98 -0
  895. package/src/scripts/run_skill_evals.ts +477 -0
  896. package/src/scripts/runtime_dispatcher.ts +586 -0
  897. package/src/scripts/runtime_handler.ts +231 -0
  898. package/src/scripts/runtime_registry.ts +394 -0
  899. package/src/scripts/schemas/command.schema.json +3 -2
  900. package/src/scripts/schemas/mission-catalog.schema.json +112 -0
  901. package/src/scripts/schemas/mission.schema.json +87 -0
  902. package/src/scripts/schemas/pack.schema.json +6 -0
  903. package/src/scripts/schemas/rule.schema.json +1 -0
  904. package/src/scripts/schemas/skill.schema.json +1 -0
  905. package/src/scripts/schemas/ticket-manifest.schema.json +35 -0
  906. package/src/scripts/schemas/ticket.schema.json +60 -0
  907. package/src/scripts/score_skill_selection.ts +570 -0
  908. package/src/scripts/security_audit_config.ts +423 -0
  909. package/src/scripts/skill_collision_clusters.ts +448 -0
  910. package/src/scripts/skill_discovery.ts +690 -0
  911. package/src/scripts/skill_linter.ts +4276 -0
  912. package/src/scripts/skill_overlap.ts +414 -0
  913. package/src/scripts/skill_preview.ts +548 -0
  914. package/src/scripts/skill_tools/audit_persona_coverage.ts +427 -0
  915. package/src/scripts/skill_tools/audit_user_type_coverage.ts +507 -0
  916. package/src/scripts/skill_tools/index.ts +28 -0
  917. package/src/scripts/skill_tools/run_block_d_eval.ts +373 -0
  918. package/src/scripts/skill_tools/score_skill_relevance.ts +475 -0
  919. package/src/scripts/skill_tools/suggest_skill_for_task.ts +288 -0
  920. package/src/scripts/skill_trigger_eval.ts +1046 -0
  921. package/src/scripts/skill_usage_collect.ts +465 -0
  922. package/src/scripts/skill_usage_report.ts +364 -0
  923. package/src/scripts/smoke/kernel.sh +4 -5
  924. package/src/scripts/smoke/router.sh +76 -76
  925. package/src/scripts/smoke/schema.sh +2 -2
  926. package/src/scripts/smoke/skills.sh +73 -52
  927. package/src/scripts/smoke_path_resolution.ts +194 -0
  928. package/src/scripts/smoke_quickstart.ts +224 -0
  929. package/src/scripts/snapshot_agent_outputs.ts +375 -0
  930. package/src/scripts/spotcheck_thin_root.ts +247 -0
  931. package/src/scripts/surface-tiers.yml +68 -0
  932. package/src/scripts/sync_agent_settings.ts +763 -0
  933. package/src/scripts/sync_github_metadata.ts +550 -0
  934. package/src/scripts/sync_gitignore.ts +630 -0
  935. package/src/scripts/sync_yaml_rt.ts +910 -0
  936. package/src/scripts/telegraph_stats.ts +447 -0
  937. package/src/scripts/tool_registry.ts +330 -0
  938. package/src/scripts/tools/adapter_errors.ts +93 -0
  939. package/src/scripts/tools/base_adapter.ts +147 -0
  940. package/src/scripts/tools/github_adapter.ts +229 -0
  941. package/src/scripts/tools/jira_adapter.ts +196 -0
  942. package/src/scripts/trigger_coverage.ts +251 -0
  943. package/src/scripts/update_counts.ts +284 -0
  944. package/src/scripts/update_prices.ts +219 -0
  945. package/src/scripts/validate_agent_settings.ts +265 -0
  946. package/src/scripts/validate_decision_engine.ts +366 -0
  947. package/src/scripts/validate_discovery_manifest.ts +160 -0
  948. package/src/scripts/validate_frontmatter.ts +1030 -0
  949. package/src/scripts/validate_pack_yaml.ts +0 -0
  950. package/src/scripts/validate_safe_paths.ts +164 -0
  951. package/src/scripts/validate_telegraph_carveouts.ts +485 -0
  952. package/src/scripts/verify_before_complete_hook.ts +306 -0
  953. package/src/scripts/verify_physical_move.ts +411 -0
  954. package/src/scripts/wrapper_freshness_hook.ts +179 -0
  955. package/dist/agent-src/scripts/archive_completed_roadmaps.py +0 -171
  956. package/dist/agent-src/scripts/update_roadmap_progress.py +0 -537
  957. package/dist/agent-src/skills/corpus-grounding/scripts/bm25_search.py +0 -212
  958. package/dist/agent-src/skills/corpus-grounding/scripts/decision_engine.py +0 -438
  959. package/dist/agent-src/skills/corpus-grounding/scripts/ground.py +0 -166
  960. package/dist/agent-src/skills/corpus-grounding/scripts/schema_validator.py +0 -160
  961. package/dist/agent-src/skills/design-tokens/scripts/tokens.py +0 -296
  962. package/dist/agent-src/skills/react-shadcn-ui/scripts/shadcn_add.py +0 -299
  963. package/dist/agent-src/skills/tailwind-engineer/scripts/tailwind_config_gen.py +0 -463
  964. package/dist/agent-src/templates/scripts/check_memory.py +0 -282
  965. package/dist/agent-src/templates/scripts/check_memory_proposal.py +0 -180
  966. package/dist/agent-src/templates/scripts/implement_ticket/__init__.py +0 -94
  967. package/dist/agent-src/templates/scripts/implement_ticket/__main__.py +0 -15
  968. package/dist/agent-src/templates/scripts/memory_hash.py +0 -75
  969. package/dist/agent-src/templates/scripts/memory_lookup.py +0 -436
  970. package/dist/agent-src/templates/scripts/memory_report.py +0 -314
  971. package/dist/agent-src/templates/scripts/memory_signal.py +0 -165
  972. package/dist/agent-src/templates/scripts/memory_status.py +0 -76
  973. package/dist/agent-src/templates/scripts/pr_review_routing.py +0 -340
  974. package/dist/agent-src/templates/scripts/pr_risk_review.py +0 -211
  975. package/dist/agent-src/templates/scripts/telemetry/__init__.py +0 -42
  976. package/dist/agent-src/templates/scripts/telemetry/aggregator.py +0 -169
  977. package/dist/agent-src/templates/scripts/telemetry/boundary.py +0 -171
  978. package/dist/agent-src/templates/scripts/telemetry/engagement.py +0 -297
  979. package/dist/agent-src/templates/scripts/telemetry/report_renderer.py +0 -197
  980. package/dist/agent-src/templates/scripts/telemetry/settings.py +0 -177
  981. package/dist/agent-src/templates/scripts/telemetry_record.py +0 -179
  982. package/dist/agent-src/templates/scripts/telemetry_report.py +0 -161
  983. package/dist/agent-src/templates/scripts/telemetry_status.py +0 -142
  984. package/dist/agent-src/templates/scripts/tier_usage_report.py +0 -183
  985. package/dist/agent-src/templates/scripts/work_engine/__init__.py +0 -58
  986. package/dist/agent-src/templates/scripts/work_engine/__main__.py +0 -9
  987. package/dist/agent-src/templates/scripts/work_engine/_lib/__init__.py +0 -7
  988. package/dist/agent-src/templates/scripts/work_engine/_lib/agent_settings.py +0 -840
  989. package/dist/agent-src/templates/scripts/work_engine/_lib/user_global_paths.py +0 -249
  990. package/dist/agent-src/templates/scripts/work_engine/cli.py +0 -195
  991. package/dist/agent-src/templates/scripts/work_engine/cli_args.py +0 -116
  992. package/dist/agent-src/templates/scripts/work_engine/delivery_state.py +0 -137
  993. package/dist/agent-src/templates/scripts/work_engine/directives/__init__.py +0 -33
  994. package/dist/agent-src/templates/scripts/work_engine/directives/backend/__init__.py +0 -98
  995. package/dist/agent-src/templates/scripts/work_engine/directives/backend/analyze.py +0 -98
  996. package/dist/agent-src/templates/scripts/work_engine/directives/backend/implement.py +0 -145
  997. package/dist/agent-src/templates/scripts/work_engine/directives/backend/memory.py +0 -136
  998. package/dist/agent-src/templates/scripts/work_engine/directives/backend/plan.py +0 -175
  999. package/dist/agent-src/templates/scripts/work_engine/directives/backend/refine.py +0 -396
  1000. package/dist/agent-src/templates/scripts/work_engine/directives/backend/report.py +0 -227
  1001. package/dist/agent-src/templates/scripts/work_engine/directives/backend/test.py +0 -180
  1002. package/dist/agent-src/templates/scripts/work_engine/directives/backend/verify.py +0 -170
  1003. package/dist/agent-src/templates/scripts/work_engine/directives/mixed/__init__.py +0 -116
  1004. package/dist/agent-src/templates/scripts/work_engine/directives/mixed/contract.py +0 -254
  1005. package/dist/agent-src/templates/scripts/work_engine/directives/mixed/stitch.py +0 -229
  1006. package/dist/agent-src/templates/scripts/work_engine/directives/mixed/ui.py +0 -231
  1007. package/dist/agent-src/templates/scripts/work_engine/directives/ui/__init__.py +0 -113
  1008. package/dist/agent-src/templates/scripts/work_engine/directives/ui/_passthrough.py +0 -44
  1009. package/dist/agent-src/templates/scripts/work_engine/directives/ui/apply.py +0 -241
  1010. package/dist/agent-src/templates/scripts/work_engine/directives/ui/audit.py +0 -414
  1011. package/dist/agent-src/templates/scripts/work_engine/directives/ui/design.py +0 -335
  1012. package/dist/agent-src/templates/scripts/work_engine/directives/ui/polish.py +0 -513
  1013. package/dist/agent-src/templates/scripts/work_engine/directives/ui/review.py +0 -471
  1014. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/__init__.py +0 -119
  1015. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/_skipped.py +0 -37
  1016. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/apply.py +0 -165
  1017. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/refine.py +0 -66
  1018. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/report.py +0 -62
  1019. package/dist/agent-src/templates/scripts/work_engine/directives/ui_trivial/test.py +0 -115
  1020. package/dist/agent-src/templates/scripts/work_engine/dispatcher.py +0 -331
  1021. package/dist/agent-src/templates/scripts/work_engine/emitters.py +0 -68
  1022. package/dist/agent-src/templates/scripts/work_engine/errors.py +0 -19
  1023. package/dist/agent-src/templates/scripts/work_engine/hook_bootstrap.py +0 -91
  1024. package/dist/agent-src/templates/scripts/work_engine/hooks/__init__.py +0 -54
  1025. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/__init__.py +0 -35
  1026. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/_chat_history_base.py +0 -59
  1027. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/chat_history_append.py +0 -43
  1028. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/chat_history_halt_append.py +0 -41
  1029. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/decision_gate.py +0 -162
  1030. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/decision_trace.py +0 -163
  1031. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/directive_set_guard.py +0 -53
  1032. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/halt_surface_audit.py +0 -50
  1033. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/memory_visibility.py +0 -141
  1034. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/state_shape_validation.py +0 -52
  1035. package/dist/agent-src/templates/scripts/work_engine/hooks/builtin/trace.py +0 -84
  1036. package/dist/agent-src/templates/scripts/work_engine/hooks/context.py +0 -66
  1037. package/dist/agent-src/templates/scripts/work_engine/hooks/events.py +0 -44
  1038. package/dist/agent-src/templates/scripts/work_engine/hooks/exceptions.py +0 -79
  1039. package/dist/agent-src/templates/scripts/work_engine/hooks/registry.py +0 -60
  1040. package/dist/agent-src/templates/scripts/work_engine/hooks/runner.py +0 -73
  1041. package/dist/agent-src/templates/scripts/work_engine/hooks/settings.py +0 -196
  1042. package/dist/agent-src/templates/scripts/work_engine/input_builders.py +0 -163
  1043. package/dist/agent-src/templates/scripts/work_engine/intent/__init__.py +0 -47
  1044. package/dist/agent-src/templates/scripts/work_engine/intent/classify.py +0 -280
  1045. package/dist/agent-src/templates/scripts/work_engine/migration/__init__.py +0 -8
  1046. package/dist/agent-src/templates/scripts/work_engine/migration/v0_to_v1.py +0 -231
  1047. package/dist/agent-src/templates/scripts/work_engine/orchestration.py +0 -193
  1048. package/dist/agent-src/templates/scripts/work_engine/persona_policy.py +0 -85
  1049. package/dist/agent-src/templates/scripts/work_engine/resolvers/__init__.py +0 -22
  1050. package/dist/agent-src/templates/scripts/work_engine/resolvers/diff.py +0 -106
  1051. package/dist/agent-src/templates/scripts/work_engine/resolvers/file.py +0 -113
  1052. package/dist/agent-src/templates/scripts/work_engine/resolvers/prompt.py +0 -90
  1053. package/dist/agent-src/templates/scripts/work_engine/scoring/__init__.py +0 -14
  1054. package/dist/agent-src/templates/scripts/work_engine/scoring/confidence.py +0 -300
  1055. package/dist/agent-src/templates/scripts/work_engine/scoring/decision_engine.py +0 -351
  1056. package/dist/agent-src/templates/scripts/work_engine/scoring/decision_trace.py +0 -141
  1057. package/dist/agent-src/templates/scripts/work_engine/scoring/memory_visibility.py +0 -283
  1058. package/dist/agent-src/templates/scripts/work_engine/stack/__init__.py +0 -31
  1059. package/dist/agent-src/templates/scripts/work_engine/stack/detect.py +0 -187
  1060. package/dist/agent-src/templates/scripts/work_engine/stack/runner.py +0 -481
  1061. package/dist/agent-src/templates/scripts/work_engine/state.py +0 -694
  1062. package/dist/agent-src/templates/scripts/work_engine/state_io.py +0 -202
  1063. package/dist/cli/python/resolvePython.js +0 -38
  1064. package/dist/cli/python/resolvePython.js.map +0 -1
  1065. package/src/scripts/__pycache__/validate_frontmatter.cpython-312.pyc +0 -0
  1066. package/src/scripts/_archive/_backfill_skill_domains.py +0 -140
  1067. package/src/scripts/_archive/_bootstrap_tier_frontmatter.py +0 -151
  1068. package/src/scripts/_archive/_p43_bodies.py +0 -235
  1069. package/src/scripts/_archive/_p43_condense.py +0 -118
  1070. package/src/scripts/_archive/_p4_migrate.py +0 -199
  1071. package/src/scripts/_archive/_phase2_shim_helper.py +0 -109
  1072. package/src/scripts/_archive/_pilot_council_question.py +0 -57
  1073. package/src/scripts/_cli/__init__.py +0 -0
  1074. package/src/scripts/_cli/cmd_doctor.py +0 -1669
  1075. package/src/scripts/_cli/cmd_explain.py +0 -355
  1076. package/src/scripts/_cli/cmd_export.py +0 -157
  1077. package/src/scripts/_cli/cmd_migrate.py +0 -524
  1078. package/src/scripts/_cli/cmd_prune.py +0 -322
  1079. package/src/scripts/_cli/cmd_refresh.py +0 -179
  1080. package/src/scripts/_cli/cmd_settings_check.py +0 -171
  1081. package/src/scripts/_cli/cmd_settings_migrate.py +0 -147
  1082. package/src/scripts/_cli/cmd_sync.py +0 -166
  1083. package/src/scripts/_cli/cmd_uninstall.py +0 -476
  1084. package/src/scripts/_cli/cmd_update.py +0 -279
  1085. package/src/scripts/_cli/cmd_upgrade.py +0 -172
  1086. package/src/scripts/_cli/cmd_validate.py +0 -177
  1087. package/src/scripts/_cli/cmd_versions.py +0 -160
  1088. package/src/scripts/_cli/explain_last/__init__.py +0 -122
  1089. package/src/scripts/_cli/explain_last/assumptions.py +0 -59
  1090. package/src/scripts/_cli/explain_last/council.py +0 -105
  1091. package/src/scripts/_cli/explain_last/halt.py +0 -44
  1092. package/src/scripts/_cli/explain_last/inputs.py +0 -128
  1093. package/src/scripts/_cli/explain_last/memory.py +0 -94
  1094. package/src/scripts/_cli/explain_last/provider.py +0 -52
  1095. package/src/scripts/_cli/explain_last/render.py +0 -52
  1096. package/src/scripts/_cli/explain_last/route.py +0 -59
  1097. package/src/scripts/_cli/explain_last/scrubber.py +0 -105
  1098. package/src/scripts/_cli/explain_last/sections/__init__.py +0 -35
  1099. package/src/scripts/_cli/explain_last/sections/assumptions.py +0 -21
  1100. package/src/scripts/_cli/explain_last/sections/council.py +0 -27
  1101. package/src/scripts/_cli/explain_last/sections/halt.py +0 -31
  1102. package/src/scripts/_cli/explain_last/sections/header.py +0 -24
  1103. package/src/scripts/_cli/explain_last/sections/inputs.py +0 -27
  1104. package/src/scripts/_cli/explain_last/sections/memory.py +0 -21
  1105. package/src/scripts/_cli/explain_last/sections/pack.py +0 -16
  1106. package/src/scripts/_cli/explain_last/sections/provider.py +0 -26
  1107. package/src/scripts/_cli/explain_last/sections/route.py +0 -22
  1108. package/src/scripts/_cli/explain_last/state_loader.py +0 -76
  1109. package/src/scripts/_emit_domain_table.py +0 -35
  1110. package/src/scripts/_lib/__init__.py +0 -5
  1111. package/src/scripts/_lib/__pycache__/__init__.cpython-312.pyc +0 -0
  1112. package/src/scripts/_lib/__pycache__/agent_src.cpython-312.pyc +0 -0
  1113. package/src/scripts/_lib/agent_settings.py +0 -840
  1114. package/src/scripts/_lib/agent_src.py +0 -491
  1115. package/src/scripts/_lib/agents_overlay.py +0 -120
  1116. package/src/scripts/_lib/bench_ab_cache.py +0 -162
  1117. package/src/scripts/_lib/bench_ab_scoring.py +0 -209
  1118. package/src/scripts/_lib/bench_ab_scoring_v2.py +0 -227
  1119. package/src/scripts/_lib/bench_cost.py +0 -138
  1120. package/src/scripts/_lib/bench_quality.py +0 -118
  1121. package/src/scripts/_lib/bench_report.py +0 -149
  1122. package/src/scripts/_lib/bench_telegraph.py +0 -273
  1123. package/src/scripts/_lib/bench_telegraph_report.py +0 -151
  1124. package/src/scripts/_lib/changelog_eras.py +0 -330
  1125. package/src/scripts/_lib/claude_desktop_bundler.py +0 -238
  1126. package/src/scripts/_lib/cli_wrapper.py +0 -64
  1127. package/src/scripts/_lib/fs_atomic.py +0 -116
  1128. package/src/scripts/_lib/global_deploy_inventory.py +0 -312
  1129. package/src/scripts/_lib/install_regenerator.py +0 -134
  1130. package/src/scripts/_lib/installed_lock.py +0 -256
  1131. package/src/scripts/_lib/installed_tools.py +0 -381
  1132. package/src/scripts/_lib/json_pointers.py +0 -260
  1133. package/src/scripts/_lib/link_crypto.py +0 -206
  1134. package/src/scripts/_lib/linked_projects.py +0 -238
  1135. package/src/scripts/_lib/model_tier.py +0 -52
  1136. package/src/scripts/_lib/module_detection.py +0 -223
  1137. package/src/scripts/_lib/pin_resolver.py +0 -152
  1138. package/src/scripts/_lib/script_output.py +0 -144
  1139. package/src/scripts/_lib/security_lint.py +0 -228
  1140. package/src/scripts/_lib/token_count.py +0 -95
  1141. package/src/scripts/_lib/update_check.py +0 -207
  1142. package/src/scripts/_lib/user_global_paths.py +0 -249
  1143. package/src/scripts/_lib/value_ladder.py +0 -696
  1144. package/src/scripts/_lib/value_report.py +0 -455
  1145. package/src/scripts/_phase4_bucket.py +0 -210
  1146. package/src/scripts/_pilot_measure.py +0 -53
  1147. package/src/scripts/_tmp_scan_framework_leakage.py +0 -119
  1148. package/src/scripts/adoption_report.py +0 -195
  1149. package/src/scripts/adoption_snapshot.py +0 -219
  1150. package/src/scripts/adoption_status.py +0 -166
  1151. package/src/scripts/adr/regenerate_index.py +0 -79
  1152. package/src/scripts/ai-video/lib/adapter-common.sh +0 -231
  1153. package/src/scripts/ai-video/lib/adapter-contract.md +0 -329
  1154. package/src/scripts/ai-video/lib/fixtures/comfyui/result.json +0 -1
  1155. package/src/scripts/ai-video/lib/fixtures/fal/result.json +0 -1
  1156. package/src/scripts/ai-video/lib/fixtures/gemini-veo/result.json +0 -1
  1157. package/src/scripts/ai-video/lib/fixtures/higgsfield/result.json +0 -1
  1158. package/src/scripts/ai-video/lib/fixtures/kling/result.json +0 -1
  1159. package/src/scripts/ai-video/lib/fixtures/musetalk/result.json +0 -1
  1160. package/src/scripts/ai-video/lib/fixtures/openai-images/result.json +0 -1
  1161. package/src/scripts/ai-video/lib/fixtures/replicate/result.json +0 -1
  1162. package/src/scripts/ai-video/lib/fixtures/sora/result.json +0 -1
  1163. package/src/scripts/ai-video/lib/fixtures/syncso/result.json +0 -1
  1164. package/src/scripts/ai-video/lib/load-config.sh +0 -180
  1165. package/src/scripts/ai-video/lib/redact.sh +0 -85
  1166. package/src/scripts/ai_council/__init__.py +0 -40
  1167. package/src/scripts/ai_council/_default_prices.py +0 -50
  1168. package/src/scripts/ai_council/advisors.py +0 -148
  1169. package/src/scripts/ai_council/airgap.py +0 -165
  1170. package/src/scripts/ai_council/budget_guard.py +0 -202
  1171. package/src/scripts/ai_council/bundler.py +0 -263
  1172. package/src/scripts/ai_council/cli_hints.py +0 -123
  1173. package/src/scripts/ai_council/clients.py +0 -1385
  1174. package/src/scripts/ai_council/compile_corpus.py +0 -179
  1175. package/src/scripts/ai_council/confidence_gate.py +0 -156
  1176. package/src/scripts/ai_council/config.py +0 -1419
  1177. package/src/scripts/ai_council/consensus.py +0 -329
  1178. package/src/scripts/ai_council/events_log.py +0 -141
  1179. package/src/scripts/ai_council/learn_low_impact_preview.py +0 -252
  1180. package/src/scripts/ai_council/low_impact.py +0 -714
  1181. package/src/scripts/ai_council/low_impact_corpus.py +0 -466
  1182. package/src/scripts/ai_council/low_impact_intake.py +0 -163
  1183. package/src/scripts/ai_council/modes.py +0 -131
  1184. package/src/scripts/ai_council/necessity.py +0 -782
  1185. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_2a4_acceptance.py +0 -208
  1186. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_add_quiet.py +0 -149
  1187. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_budget_v2_audit.py +0 -206
  1188. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_context_layer_v1_estimate.py +0 -67
  1189. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_context_layer_v1_review.py +0 -292
  1190. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_followups_review.py +0 -259
  1191. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_inject_quiet_flag.py +0 -33
  1192. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_measure_v2.sh +0 -36
  1193. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_measure_verbosity.sh +0 -26
  1194. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_nondestructive_inline_audit.py +0 -209
  1195. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_per_task.sh +0 -41
  1196. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_phase4_dispatch_latency.py +0 -108
  1197. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_phase6_trigger_jaccard.py +0 -92
  1198. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_phase_2a_budget_rebalance.py +0 -257
  1199. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_phase_2a_post_revert.py +0 -197
  1200. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_rebalancing_audit.py +0 -149
  1201. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_roundtrip.py +0 -111
  1202. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_rule_hardening_v1.py +0 -251
  1203. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_silent_taskfiles.py +0 -98
  1204. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_open_questions.py +0 -232
  1205. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_optimization.py +0 -144
  1206. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_v3_gaps.py +0 -252
  1207. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_v3_review.py +0 -240
  1208. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_tier_retrofit.py +0 -180
  1209. package/src/scripts/ai_council/orchestrator.py +0 -1206
  1210. package/src/scripts/ai_council/pricing.py +0 -215
  1211. package/src/scripts/ai_council/probation_gate.py +0 -152
  1212. package/src/scripts/ai_council/project_context.py +0 -159
  1213. package/src/scripts/ai_council/prompts.py +0 -567
  1214. package/src/scripts/ai_council/redact_low_impact_entry.py +0 -155
  1215. package/src/scripts/ai_council/replay.py +0 -155
  1216. package/src/scripts/ai_council/session.py +0 -366
  1217. package/src/scripts/ai_council/shadow_dispatch.py +0 -235
  1218. package/src/scripts/ai_council/solo_dispatch.py +0 -226
  1219. package/src/scripts/annotate_discovery.py +0 -149
  1220. package/src/scripts/apply_modules_config.py +0 -290
  1221. package/src/scripts/audit_adr_coverage.py +0 -173
  1222. package/src/scripts/audit_auto_rules.py +0 -175
  1223. package/src/scripts/audit_cloud_compatibility.py +0 -362
  1224. package/src/scripts/audit_command_surface.py +0 -682
  1225. package/src/scripts/audit_initial_context.py +0 -237
  1226. package/src/scripts/audit_likelihood.py +0 -148
  1227. package/src/scripts/audit_mcp_tools.py +0 -146
  1228. package/src/scripts/audit_overlap.py +0 -145
  1229. package/src/scripts/audit_skill_descriptions.py +0 -180
  1230. package/src/scripts/audit_skill_overlap.py +0 -207
  1231. package/src/scripts/audit_user_type_axis.py +0 -140
  1232. package/src/scripts/backfill_model_tier.py +0 -184
  1233. package/src/scripts/bench_ab_cache_dispatch.py +0 -68
  1234. package/src/scripts/bench_ab_clone.py +0 -220
  1235. package/src/scripts/bench_ab_diff.py +0 -220
  1236. package/src/scripts/bench_ab_integrity.py +0 -143
  1237. package/src/scripts/bench_ab_run.py +0 -235
  1238. package/src/scripts/bench_ab_task_runner.py +0 -814
  1239. package/src/scripts/bench_ab_tracka_run.py +0 -202
  1240. package/src/scripts/bench_ab_v2_run.py +0 -247
  1241. package/src/scripts/bench_ab_v2_stats.py +0 -347
  1242. package/src/scripts/bench_baseline_ready.py +0 -108
  1243. package/src/scripts/bench_condense_memory.py +0 -168
  1244. package/src/scripts/bench_drift_check.py +0 -151
  1245. package/src/scripts/bench_per_tool.py +0 -216
  1246. package/src/scripts/bench_rtk_savings.py +0 -320
  1247. package/src/scripts/bench_run.py +0 -272
  1248. package/src/scripts/bench_runner.py +0 -158
  1249. package/src/scripts/build_cloud_bundle.py +0 -458
  1250. package/src/scripts/build_discovery_manifest.py +0 -757
  1251. package/src/scripts/build_linear_digest.py +0 -260
  1252. package/src/scripts/build_mcp_registry_manifest.py +0 -181
  1253. package/src/scripts/build_rule_trigger_matrix.py +0 -350
  1254. package/src/scripts/capture_showcase_session.py +0 -361
  1255. package/src/scripts/chat_history.py +0 -1799
  1256. package/src/scripts/check_always_budget.py +0 -532
  1257. package/src/scripts/check_artefact_checksums.py +0 -111
  1258. package/src/scripts/check_augment_description_cap.py +0 -79
  1259. package/src/scripts/check_augmentignore.py +0 -72
  1260. package/src/scripts/check_beta_review_markers.py +0 -127
  1261. package/src/scripts/check_bite_sized_granularity.py +0 -98
  1262. package/src/scripts/check_cluster_patterns.py +0 -206
  1263. package/src/scripts/check_command_count_messaging.py +0 -152
  1264. package/src/scripts/check_condensation.py +0 -375
  1265. package/src/scripts/check_condensed_paths.py +0 -231
  1266. package/src/scripts/check_context_paths.py +0 -202
  1267. package/src/scripts/check_council_layout.py +0 -125
  1268. package/src/scripts/check_council_references.py +0 -228
  1269. package/src/scripts/check_discovery_determinism.py +0 -70
  1270. package/src/scripts/check_gate_paths.py +0 -128
  1271. package/src/scripts/check_iron_law_prominence.py +0 -145
  1272. package/src/scripts/check_kernel_rule_bundle.py +0 -151
  1273. package/src/scripts/check_md_language.py +0 -161
  1274. package/src/scripts/check_memory.py +0 -429
  1275. package/src/scripts/check_memory_proposal.py +0 -182
  1276. package/src/scripts/check_module_management_neutral.py +0 -147
  1277. package/src/scripts/check_no_external_sources.py +0 -101
  1278. package/src/scripts/check_no_local_settings_committed.py +0 -51
  1279. package/src/scripts/check_no_new_legacy_path.py +0 -100
  1280. package/src/scripts/check_no_roadmap_refs.py +0 -155
  1281. package/src/scripts/check_one_off_location.py +0 -81
  1282. package/src/scripts/check_overlay_cascade_subdirs.py +0 -129
  1283. package/src/scripts/check_portability.py +0 -574
  1284. package/src/scripts/check_proposal.py +0 -269
  1285. package/src/scripts/check_public_catalog_links.py +0 -125
  1286. package/src/scripts/check_public_links.py +0 -185
  1287. package/src/scripts/check_references.py +0 -559
  1288. package/src/scripts/check_release_includes_discovery.py +0 -61
  1289. package/src/scripts/check_release_pr_shape.py +0 -123
  1290. package/src/scripts/check_release_published.py +0 -145
  1291. package/src/scripts/check_release_trunk_sync.py +0 -152
  1292. package/src/scripts/check_reply_consistency.py +0 -169
  1293. package/src/scripts/check_roadmap_trackable.py +0 -114
  1294. package/src/scripts/check_role_doc_links.py +0 -110
  1295. package/src/scripts/check_safety_floor_untouched.py +0 -125
  1296. package/src/scripts/check_skill_requires.py +0 -147
  1297. package/src/scripts/check_template_pin_drift.py +0 -129
  1298. package/src/scripts/check_test_coverage_diff.py +0 -180
  1299. package/src/scripts/check_token_optimizer_freshness.py +0 -146
  1300. package/src/scripts/check_update_banner.py +0 -86
  1301. package/src/scripts/ci_status.py +0 -301
  1302. package/src/scripts/ci_summary.py +0 -131
  1303. package/src/scripts/ci_time_ratio.py +0 -168
  1304. package/src/scripts/command_suggester/__init__.py +0 -51
  1305. package/src/scripts/command_suggester/cooldown.py +0 -132
  1306. package/src/scripts/command_suggester/loader.py +0 -73
  1307. package/src/scripts/command_suggester/match.py +0 -180
  1308. package/src/scripts/command_suggester/rank.py +0 -120
  1309. package/src/scripts/command_suggester/render.py +0 -86
  1310. package/src/scripts/command_suggester/sanitize.py +0 -113
  1311. package/src/scripts/command_suggester/settings.py +0 -127
  1312. package/src/scripts/command_suggester/types.py +0 -78
  1313. package/src/scripts/compile_router.py +0 -232
  1314. package/src/scripts/condense.py +0 -1919
  1315. package/src/scripts/condense_memory.py +0 -178
  1316. package/src/scripts/config/__init__.py +0 -9
  1317. package/src/scripts/config/packs.py +0 -157
  1318. package/src/scripts/config/presets.py +0 -224
  1319. package/src/scripts/config/profile_explain.py +0 -89
  1320. package/src/scripts/config/profiles.py +0 -191
  1321. package/src/scripts/config/session_profiles.py +0 -542
  1322. package/src/scripts/context_hygiene_hook.py +0 -181
  1323. package/src/scripts/cost_by_conversation.py +0 -78
  1324. package/src/scripts/cost_summary.py +0 -97
  1325. package/src/scripts/council_cli.py +0 -2571
  1326. package/src/scripts/council_prune.py +0 -81
  1327. package/src/scripts/cross_repo_retrieve.py +0 -172
  1328. package/src/scripts/discovery_stats.py +0 -70
  1329. package/src/scripts/extract_audit_patterns.py +0 -202
  1330. package/src/scripts/first_run_gate_hook.py +0 -179
  1331. package/src/scripts/gen_discovery_baseline.py +0 -127
  1332. package/src/scripts/generate_catalog.py +0 -116
  1333. package/src/scripts/generate_command_flows.py +0 -191
  1334. package/src/scripts/generate_index.py +0 -303
  1335. package/src/scripts/generate_ownership_matrix.py +0 -378
  1336. package/src/scripts/generate_pack_manifests.py +0 -340
  1337. package/src/scripts/hooks/__init__.py +0 -1
  1338. package/src/scripts/hooks/dispatch_hook.py +0 -461
  1339. package/src/scripts/hooks/dispatch_issues.py +0 -136
  1340. package/src/scripts/hooks/envelope.py +0 -98
  1341. package/src/scripts/hooks/replay_hook.py +0 -144
  1342. package/src/scripts/hooks/state_io.py +0 -145
  1343. package/src/scripts/hooks_doctor.py +0 -223
  1344. package/src/scripts/hooks_status.py +0 -157
  1345. package/src/scripts/injection_scan_hook.py +0 -145
  1346. package/src/scripts/install.py +0 -5258
  1347. package/src/scripts/inventory_abstraction_budget.py +0 -622
  1348. package/src/scripts/inventory_frontmatter.py +0 -164
  1349. package/src/scripts/inventory_meta_layers.py +0 -288
  1350. package/src/scripts/iron_law_sha.py +0 -107
  1351. package/src/scripts/linked_projects_list.py +0 -91
  1352. package/src/scripts/lint_agent_security.py +0 -112
  1353. package/src/scripts/lint_agent_skill_names.py +0 -150
  1354. package/src/scripts/lint_agents_layout.py +0 -197
  1355. package/src/scripts/lint_agents_md.py +0 -210
  1356. package/src/scripts/lint_archived_skills.py +0 -159
  1357. package/src/scripts/lint_artefact_frontmatter.py +0 -188
  1358. package/src/scripts/lint_bench_ab.py +0 -173
  1359. package/src/scripts/lint_bench_corpus.py +0 -255
  1360. package/src/scripts/lint_command_flow_coverage.py +0 -132
  1361. package/src/scripts/lint_command_routing.py +0 -160
  1362. package/src/scripts/lint_command_tiers.py +0 -216
  1363. package/src/scripts/lint_command_verbs.py +0 -206
  1364. package/src/scripts/lint_commit_subjects.py +0 -139
  1365. package/src/scripts/lint_context_spine_usage.py +0 -137
  1366. package/src/scripts/lint_discovery_manifest.py +0 -176
  1367. package/src/scripts/lint_discovery_vocabulary.py +0 -222
  1368. package/src/scripts/lint_empty_roadmaps.py +0 -80
  1369. package/src/scripts/lint_examples.py +0 -102
  1370. package/src/scripts/lint_explain_trace.py +0 -80
  1371. package/src/scripts/lint_featured_skills.py +0 -144
  1372. package/src/scripts/lint_flows.py +0 -215
  1373. package/src/scripts/lint_framework_leakage.py +0 -375
  1374. package/src/scripts/lint_frontmatter_boilerplate.py +0 -77
  1375. package/src/scripts/lint_ghostwriter_source.py +0 -242
  1376. package/src/scripts/lint_global_paths.py +0 -148
  1377. package/src/scripts/lint_handoffs.py +0 -217
  1378. package/src/scripts/lint_hidden_unicode.py +0 -132
  1379. package/src/scripts/lint_hook_concern_budget.py +0 -207
  1380. package/src/scripts/lint_hook_manifest.py +0 -217
  1381. package/src/scripts/lint_instruction_smuggling.py +0 -107
  1382. package/src/scripts/lint_load_context.py +0 -196
  1383. package/src/scripts/lint_marketplace.py +0 -180
  1384. package/src/scripts/lint_marketplace_install_completeness.py +0 -198
  1385. package/src/scripts/lint_mcp_config_security.py +0 -124
  1386. package/src/scripts/lint_mcp_registry_manifest.py +0 -69
  1387. package/src/scripts/lint_media_policy_linkage.py +0 -140
  1388. package/src/scripts/lint_model_tier_coverage.py +0 -73
  1389. package/src/scripts/lint_namespace.py +0 -135
  1390. package/src/scripts/lint_namespace_collisions.py +0 -103
  1391. package/src/scripts/lint_new_skill_gate.py +0 -144
  1392. package/src/scripts/lint_no_new_atomic_commands.py +0 -180
  1393. package/src/scripts/lint_one_off_age.py +0 -184
  1394. package/src/scripts/lint_orchestration_dsl.py +0 -217
  1395. package/src/scripts/lint_orchestrator_auto_detect.py +0 -111
  1396. package/src/scripts/lint_pack_boundaries.py +0 -147
  1397. package/src/scripts/lint_pack_dependencies.py +0 -137
  1398. package/src/scripts/lint_pack_first_win.py +0 -121
  1399. package/src/scripts/lint_persona_governance.py +0 -164
  1400. package/src/scripts/lint_positioning.py +0 -143
  1401. package/src/scripts/lint_profile_overlay_set_only.py +0 -179
  1402. package/src/scripts/lint_readme_jargon.py +0 -131
  1403. package/src/scripts/lint_readme_size.py +0 -33
  1404. package/src/scripts/lint_regression.py +0 -251
  1405. package/src/scripts/lint_roadmap_ci_steps.py +0 -186
  1406. package/src/scripts/lint_roadmap_complexity.py +0 -220
  1407. package/src/scripts/lint_role_experiences.py +0 -255
  1408. package/src/scripts/lint_rule_interactions.py +0 -170
  1409. package/src/scripts/lint_rule_tiers.py +0 -90
  1410. package/src/scripts/lint_showcase_sessions.py +0 -148
  1411. package/src/scripts/lint_skill_frontmatter_safety.py +0 -144
  1412. package/src/scripts/lint_skill_tools.py +0 -168
  1413. package/src/scripts/lint_topics_yaml.py +0 -89
  1414. package/src/scripts/lint_trust_coherence.py +0 -212
  1415. package/src/scripts/lint_value_dashboard.py +0 -218
  1416. package/src/scripts/lint_workspace_boundary.py +0 -122
  1417. package/src/scripts/mcp_parity_smoke.py +0 -316
  1418. package/src/scripts/mcp_render.py +0 -173
  1419. package/src/scripts/mcp_server/__init__.py +0 -19
  1420. package/src/scripts/mcp_server/__main__.py +0 -12
  1421. package/src/scripts/mcp_server/catalog.py +0 -125
  1422. package/src/scripts/mcp_server/metadata.py +0 -75
  1423. package/src/scripts/mcp_server/prompts.py +0 -442
  1424. package/src/scripts/mcp_server/requirements.txt +0 -4
  1425. package/src/scripts/mcp_server/resources.py +0 -201
  1426. package/src/scripts/mcp_server/server.py +0 -270
  1427. package/src/scripts/mcp_server/telemetry.py +0 -128
  1428. package/src/scripts/mcp_server/tools.py +0 -926
  1429. package/src/scripts/mcp_telemetry_health.py +0 -214
  1430. package/src/scripts/mcp_telemetry_query.py +0 -203
  1431. package/src/scripts/mcp_telemetry_store.py +0 -211
  1432. package/src/scripts/measure_augment_budget.py +0 -214
  1433. package/src/scripts/measure_density.py +0 -232
  1434. package/src/scripts/measure_frugality_savings.py +0 -164
  1435. package/src/scripts/measure_markitdown_lift.py +0 -127
  1436. package/src/scripts/measure_patterns.py +0 -376
  1437. package/src/scripts/measure_projection_bytes.py +0 -159
  1438. package/src/scripts/measure_rule_budget.py +0 -347
  1439. package/src/scripts/measure_skill_reduction.py +0 -102
  1440. package/src/scripts/memory_hash.py +0 -75
  1441. package/src/scripts/memory_lookup.py +0 -436
  1442. package/src/scripts/memory_report.py +0 -314
  1443. package/src/scripts/memory_signal.py +0 -165
  1444. package/src/scripts/memory_status.py +0 -76
  1445. package/src/scripts/migrate_command_suggestions.py +0 -151
  1446. package/src/scripts/migrate_frontmatter_defaults.py +0 -245
  1447. package/src/scripts/mine_session.py +0 -356
  1448. package/src/scripts/minimal_safe_diff_hook.py +0 -245
  1449. package/src/scripts/move_artefact.py +0 -143
  1450. package/src/scripts/new_skill.py +0 -148
  1451. package/src/scripts/onboarding_gate_hook.py +0 -142
  1452. package/src/scripts/pack_mcp_content.py +0 -293
  1453. package/src/scripts/plan_physical_move.py +0 -353
  1454. package/src/scripts/prediction-pool/poisson_sim.py +0 -167
  1455. package/src/scripts/prediction-pool/pool_winsim.py +0 -236
  1456. package/src/scripts/prediction-pool/score_ev.py +0 -188
  1457. package/src/scripts/print_required_checks.py +0 -196
  1458. package/src/scripts/probe_projection_fidelity.py +0 -202
  1459. package/src/scripts/probe_skill_registration.py +0 -413
  1460. package/src/scripts/profile_staleness_hook.py +0 -69
  1461. package/src/scripts/profile_use.py +0 -164
  1462. package/src/scripts/project_thin_rules.py +0 -168
  1463. package/src/scripts/propose_modules_config.py +0 -145
  1464. package/src/scripts/prototype_lint_contradictions.py +0 -150
  1465. package/src/scripts/prove_pack_extractable.py +0 -187
  1466. package/src/scripts/readme_linter.py +0 -589
  1467. package/src/scripts/redact_hook_capture.py +0 -148
  1468. package/src/scripts/refine_ticket_detect.py +0 -646
  1469. package/src/scripts/release.py +0 -1091
  1470. package/src/scripts/render_benchmark_md.py +0 -401
  1471. package/src/scripts/render_value_md.py +0 -347
  1472. package/src/scripts/requirements-evals.txt +0 -8
  1473. package/src/scripts/roadmap_progress_hook.py +0 -274
  1474. package/src/scripts/router_telemetry.py +0 -470
  1475. package/src/scripts/run_skill_evals.py +0 -185
  1476. package/src/scripts/runtime_dispatcher.py +0 -276
  1477. package/src/scripts/runtime_handler.py +0 -148
  1478. package/src/scripts/runtime_registry.py +0 -166
  1479. package/src/scripts/score_skill_selection.py +0 -198
  1480. package/src/scripts/security_audit_config.py +0 -153
  1481. package/src/scripts/setup_eval_venv.sh +0 -58
  1482. package/src/scripts/skill_collision_clusters.py +0 -162
  1483. package/src/scripts/skill_discovery.py +0 -254
  1484. package/src/scripts/skill_linter.py +0 -3694
  1485. package/src/scripts/skill_overlap.py +0 -204
  1486. package/src/scripts/skill_preview.py +0 -179
  1487. package/src/scripts/skill_tools/__init__.py +0 -22
  1488. package/src/scripts/skill_tools/audit_persona_coverage.py +0 -147
  1489. package/src/scripts/skill_tools/audit_user_type_coverage.py +0 -148
  1490. package/src/scripts/skill_tools/run_block_d_eval.py +0 -129
  1491. package/src/scripts/skill_tools/score_skill_relevance.py +0 -169
  1492. package/src/scripts/skill_tools/suggest_skill_for_task.py +0 -113
  1493. package/src/scripts/skill_trigger_eval.py +0 -682
  1494. package/src/scripts/skill_usage_collect.py +0 -191
  1495. package/src/scripts/skill_usage_report.py +0 -162
  1496. package/src/scripts/smoke_path_resolution.py +0 -93
  1497. package/src/scripts/smoke_quickstart.py +0 -144
  1498. package/src/scripts/snapshot_agent_outputs.py +0 -144
  1499. package/src/scripts/spotcheck_thin_root.py +0 -134
  1500. package/src/scripts/sync_agent_settings.py +0 -180
  1501. package/src/scripts/sync_github_metadata.py +0 -147
  1502. package/src/scripts/sync_gitignore.py +0 -291
  1503. package/src/scripts/sync_yaml_rt.py +0 -734
  1504. package/src/scripts/telegraph_stats.py +0 -119
  1505. package/src/scripts/tool_registry.py +0 -146
  1506. package/src/scripts/tools/__init__.py +0 -1
  1507. package/src/scripts/tools/adapter_errors.py +0 -63
  1508. package/src/scripts/tools/base_adapter.py +0 -91
  1509. package/src/scripts/tools/github_adapter.py +0 -128
  1510. package/src/scripts/tools/jira_adapter.py +0 -115
  1511. package/src/scripts/trigger_coverage.py +0 -129
  1512. package/src/scripts/update_counts.py +0 -199
  1513. package/src/scripts/update_prices.py +0 -125
  1514. package/src/scripts/validate_agent_settings.py +0 -124
  1515. package/src/scripts/validate_decision_engine.py +0 -136
  1516. package/src/scripts/validate_discovery_manifest.py +0 -94
  1517. package/src/scripts/validate_frontmatter.py +0 -647
  1518. package/src/scripts/validate_pack_yaml.py +0 -179
  1519. package/src/scripts/validate_safe_paths.py +0 -118
  1520. package/src/scripts/validate_telegraph_carveouts.py +0 -129
  1521. package/src/scripts/verify_before_complete_hook.py +0 -216
  1522. package/src/scripts/verify_physical_move.py +0 -185
  1523. package/src/scripts/wrapper_freshness_hook.py +0 -86
  1524. /package/dist/agent-src/skills/design-intelligence/data/{typography.csv → font-pairings-reference.csv} +0 -0
  1525. /package/src/scripts/{ai-video → media}/lib/fixtures/allin1/analysis.json +0 -0
  1526. /package/src/scripts/{ai-video → media}/lib/fixtures/comfyui/scene-0001.mp4 +0 -0
  1527. /package/src/scripts/{ai-video → media}/lib/fixtures/fal/scene-0001.mp4 +0 -0
  1528. /package/src/scripts/{ai-video → media}/lib/fixtures/gemini-veo/scene-0001.mp4 +0 -0
  1529. /package/src/scripts/{ai-video → media}/lib/fixtures/higgsfield/scene-0001.mp4 +0 -0
  1530. /package/src/scripts/{ai-video → media}/lib/fixtures/kling/scene-0001.mp4 +0 -0
  1531. /package/src/scripts/{ai-video → media}/lib/fixtures/musetalk/lipsync-0001.mp4 +0 -0
  1532. /package/src/scripts/{ai-video → media}/lib/fixtures/openai-images/scene-0001.png +0 -0
  1533. /package/src/scripts/{ai-video → media}/lib/fixtures/replicate/scene-0001.mp4 +0 -0
  1534. /package/src/scripts/{ai-video → media}/lib/fixtures/sora/scene-0001.mp4 +0 -0
  1535. /package/src/scripts/{ai-video → media}/lib/fixtures/syncso/lipsync-0001.mp4 +0 -0
  1536. /package/src/scripts/{ai-video → media}/lib/fixtures/whisperx/transcript.json +0 -0
  1537. /package/src/scripts/{ai-video → media}/lib/telemetry.sh +0 -0
@@ -0,0 +1,193 @@
1
+ ---
2
+ adr: 200
3
+ status: accepted
4
+ date: 2026-06-11
5
+ decision: python-to-typescript-migration
6
+ supersedes: —
7
+ superseded_by: —
8
+ phase: py2ts · migration-infrastructure
9
+ type: structural
10
+ ---
11
+
12
+ # ADR-200 — Full Python → TypeScript migration: execution model, branch strategy, dispatcher, parity gates
13
+
14
+ > Provisional number 200 (reserved, out-of-band). main ADRs grow sequentially; the migration ADR is renumbered to a high reserved slot to stop recurring collisions on the long-lived `python2ts` branch. Final number is assigned at the `python2ts`→`main` merge.
15
+
16
+ ## Status
17
+
18
+ **Accepted** · 2026-06-11. Records the locked design of the TypeScript-only
19
+ scripts roadmap (Phase 1, Step 1). Driven by the AI-council convergence of
20
+ 2026-06-11 (claude-sonnet-4-5 + gpt-4o, design mode, deep): both members
21
+ converged on migration infrastructure before any porting, the installer as
22
+ consumer trust boundary, pytest→vitest 1:1 ports plus golden replay as the
23
+ parity contract, sequential gated phasing instead of a parallel-agent control
24
+ plane, same-PR deletion of each Python original, and a documented
25
+ intentional-divergence process.
26
+
27
+ ## Context
28
+
29
+ The package is a hybrid Python + TypeScript system. The Python side spans
30
+ ~952 source `.py` files (~204k LOC): `src/scripts/` 419 files (linters/checks
31
+ ~17.4k LOC incl. `skill_linter.py` 3.7k, condense/sync pipeline ~3.8k incl.
32
+ the comment-preserving `sync_yaml_rt.py`, ai_council ~17k, hooks ~2.6k,
33
+ memory/telemetry, `install.py` 5.1k, `_lib/` ~6.2k, misc ~44.5k), `tests/`
34
+ 413 files (pytest), and `src/agent-src/templates/scripts/` ~100
35
+ consumer-shipped files. The call surface is wide: 60+ `python3` invocations in
36
+ `taskfiles/*.yml`, 40+ in `.github/workflows/*.yml`, 3 in `package.json`,
37
+ 15+ doc references in `src/rules` + `src/skills`, and git hooks via
38
+ `hooks/hooks.json`.
39
+
40
+ The target is a single-language TypeScript codebase: zero tracked `.py` in
41
+ source, no `pyproject.toml`, no `.venv`, no `python3` runtime requirement —
42
+ while every quality gate (linter finding counts, CI green floor, golden
43
+ behavior, consumer-facing CLI contracts) stays provably at or above today's
44
+ level. TS infrastructure already exists (`src/cli/`, `src/server/`,
45
+ `src/shared/`, `src/install/`, strict ES2022 tsconfig, vitest, Node >= 20.11,
46
+ typescript 5.9 + tsx 4.22).
47
+
48
+ The risk profile is asymmetric: internal lint tooling can tolerate iteration,
49
+ but the installer, git hooks, and consumer-shipped template scripts are trust
50
+ boundaries where a silent behavior change ships to consumers. That asymmetry
51
+ drives every decision below.
52
+
53
+ ## Decision
54
+
55
+ ### 1. Scope — full migration
56
+
57
+ Migrate all ~952 Python source files to TypeScript. The phased inventory and
58
+ sequencing live in the TypeScript-only scripts roadmap (prerequisites
59
+ section); this ADR locks the architecture, not the schedule. Bench fixture
60
+ clones under `internal/bench/` are test data, not source — out of scope.
61
+
62
+ ### 2. Execution model — sequential gated phasing, subagent fan-out within a phase
63
+
64
+ - **Across phases: sequential and gated.** A phase starts only when the
65
+ previous phase's exit criteria are green on the integration branch. No
66
+ separate control plane — state tracking is the roadmap checkbox layer plus
67
+ the migration dashboard.
68
+ - **Within a phase: parallel subagent fan-out.** An orchestrator session
69
+ splits the phase's cluster into dependency-free batches of ~5–15 scripts
70
+ and dispatches them to parallel porting subagents. Each subagent works in
71
+ an isolated git worktree on a `feat/py2ts-<phase>-<batch>` branch; each
72
+ batch lands as one PR.
73
+ - **Verification is independent of porting.** A verification subagent re-runs
74
+ the parity harness on each batch before the PR is marked ready — the porter
75
+ never green-lights its own parity claim.
76
+ - **Merge order is foundation-first** within a phase (libs before
77
+ dependents). Subagents produce ready PRs; they do not merge.
78
+
79
+ ### 3. Branch strategy — `python2ts` integration branch
80
+
81
+ - A long-lived integration branch **`python2ts`** is cut from `main` in
82
+ Phase 1 and lives until the migration completes.
83
+ - **Every migration PR targets `python2ts`, never `main`.** A guard check
84
+ fails any `py2ts`-prefixed PR whose base is not `python2ts`.
85
+ - A **scheduled `main → python2ts` sync** merges mainline changes into the
86
+ integration branch continuously, so the migration absorbs drift instead of
87
+ diverging toward a big-bang conflict. `main` stays the consumer-facing
88
+ trunk and keeps receiving normal work.
89
+ - The **final `python2ts → main` merge is a user-owned delivery decision**
90
+ outside the roadmap (Hard Floor: production-trunk merge requires explicit
91
+ per-turn confirmation).
92
+
93
+ ### 4. Dispatcher design — `src/scripts/run.ts`
94
+
95
+ A dispatch wrapper resolves a script path without extension: prefer
96
+ `<path>.ts` (via tsx in dev, compiled in CI) and fall back to `<path>.py`
97
+ (via `python3`), passing argv, stdin, stdout/stderr, and the exit code
98
+ through unchanged. Consequences:
99
+
100
+ - **All call sites switch once** (taskfiles, workflows, package.json, hooks,
101
+ doc references) — before any script is ported.
102
+ - **Per-script migration = add the `.ts` + delete the `.py` in the same
103
+ PR.** The dispatcher resolves the new `.ts` automatically.
104
+ - **Rollback = `git revert` of the porting PR.** The dispatcher then
105
+ resolves the restored `.py` again — no call-site churn in either
106
+ direction.
107
+
108
+ ### 5. Parity strategy — four stacked gates
109
+
110
+ 1. **pytest→vitest 1:1 ports are the behavioral specification.** Mechanical
111
+ translation only (`parametrize` → `test.each`, `monkeypatch` → `vi.mock`,
112
+ fixtures → `beforeEach`) — never "redefine test intent".
113
+ 2. **Golden replay.** Execute the Python and TS versions on identical
114
+ fixtures; compare stdout/stderr/exit code/written files byte-exact, with
115
+ an opt-in JSON/YAML normalization layer.
116
+ 3. **Coverage-diff gate.** `vitest --coverage` must be ≥ the `pytest --cov`
117
+ baseline per ported cluster, on both line and branch coverage.
118
+ 4. **Error parity for consumer-facing scripts.** A fixture corpus of failure
119
+ scenarios (bad input, missing file, invalid flags) comparing error text,
120
+ output channel, and exit code.
121
+
122
+ Python style (snake_case CLI flags, exit codes, stdout/stderr split) is part
123
+ of the contract — TS ports keep them identical unless a documented divergence
124
+ says otherwise.
125
+
126
+ ### 6. Intentional-divergence process
127
+
128
+ Every golden-parity mismatch requires a divergence doc in
129
+ `docs/migration/divergences/` (symptom, root cause, bug-fix-vs-regression
130
+ verdict, evidence, approval) before the porting PR can pass CI. The quality
131
+ floor reads: **quality must not degrade; documented improvements are allowed
132
+ and explicitly approved.** An undocumented difference is a regression by
133
+ definition. See `docs/migration/divergences/README.md` for the process.
134
+
135
+ ### 7. Runtime model
136
+
137
+ - **Internal tooling runs via tsx** (no precompile; acceptable startup for
138
+ lint/CI tasks).
139
+ - **Consumer-shipped templates and git-hook entry points ship as compiled
140
+ esbuild single-file bundles** — consumers need Node only (no tsx, no
141
+ node_modules resolution inside consumer projects), and hooks keep their
142
+ cold-start budget and exit-0 guarantee.
143
+
144
+ ## Consequences
145
+
146
+ - Phase 1 (dispatcher, parity harness, YAML round-trip spike, branch +
147
+ sync + drift infrastructure, divergence process, phase-gate CI) is a hard
148
+ blocker — nothing ports before it is green.
149
+ - The same-PR deletion rule prevents a drifting dual-source window per
150
+ script; the cost is that each porting PR must clear all four parity gates
151
+ before merge.
152
+ - Later-phase Python scripts must not import half-migrated libs across
153
+ languages; Python `_lib` files needed by an unported importer stay in
154
+ place until that importer's own phase deletes them.
155
+ - The `python2ts` branch carries the full migration risk away from `main`;
156
+ consumers see no change until the user-owned final merge.
157
+ - Business-logic refactors are forbidden while porting (minimal safe diff
158
+ per script): port first, improve via documented divergence or follow-up.
159
+
160
+ ## Alternatives considered
161
+
162
+ - **Parallel-agent control plane** (a coordinator service tracking migration
163
+ state outside the repo) — rejected: the roadmap checkbox layer plus a
164
+ dashboard script gives the same visibility with zero extra infrastructure,
165
+ and sequential phase gates remove the coordination problem the control
166
+ plane would solve.
167
+ - **Migration PRs against `main`** — rejected: every porting PR would put
168
+ consumer-facing trunk at risk and force the full migration gate set onto
169
+ unrelated mainline work; the integration branch isolates both directions.
170
+ - **Big-bang cutover** (port everything on a branch, switch call sites at
171
+ the end) — rejected: the dispatcher makes incremental per-script cutover
172
+ free, with `git revert` rollback per script instead of an all-or-nothing
173
+ merge.
174
+ - **Keeping Python originals alongside TS ports** ("soak window") — rejected:
175
+ a dual-source window invites silent drift; git history is the soak window,
176
+ and the dispatcher's `.py` fallback makes a revert behave identically.
177
+ - **Rewriting tests idiomatically during the port** — rejected: the pytest
178
+ suite is the behavioral spec; redefining intent while porting destroys the
179
+ only oracle the migration has.
180
+
181
+ ## References
182
+
183
+ - The TypeScript-only scripts roadmap (full phase plan, inventory, exit
184
+ criteria) — referenced by name; roadmaps are a transient layer and are not
185
+ linked from stable artifacts.
186
+ - AI-council convergence 2026-06-11 (claude-sonnet-4-5 + gpt-4o, design
187
+ mode, deep) — inline summary above; council artifacts are local-only.
188
+ - `docs/migration/divergences/README.md` — divergence process.
189
+ - `docs/migration/divergences/_template.md` — divergence doc template.
190
+ - [ADR-012](ADR-012-typescript-cli-shell.md) — TypeScript CLI shell (the
191
+ existing TS infrastructure this migration extends).
192
+ - [ADR-087](ADR-087-installer-e2e-test-strategy.md) — installer container
193
+ e2e (the golden corpus base for the dual-mode installer phase).
@@ -99,6 +99,15 @@ _Auto-generated by `scripts/adr/regenerate_index.py`. Do not edit._
99
99
  | [ADR-093](ADR-093-ai-council-config-user-global.md) | Ai Council Config User Global | accepted | 2026-06-13 | — |
100
100
  | [ADR-094](ADR-094-agent-memory-layer-removal.md) | Agent Memory Layer Removal | accepted | 2026-06-14 | — |
101
101
  | [ADR-095](ADR-095-workspace-boundary-contract.md) | Workspace Boundary Contract | accepted | 2026-06-14 | — |
102
+ | [ADR-096](ADR-096-analysis-workbench.md) | Analysis Workbench | accepted | 2026-06-15 | — |
103
+ | [ADR-097](ADR-097-mission-recipe-privilege-boundary.md) | Mission Recipe Privilege Boundary | accepted | 2026-06-15 | — |
104
+ | [ADR-098](ADR-098-evidence-first-structure-discovery.md) | Evidence First Structure Discovery | accepted | 2026-06-15 | — |
105
+ | [ADR-099](ADR-099-file-first-pattern-library.md) | File First Pattern Library | accepted | 2026-06-15 | — |
106
+ | [ADR-100](ADR-100-global-knowledge-card-sharing.md) | Global Knowledge Card Sharing | accepted | 2026-06-15 | ADR-098 |
107
+ | [ADR-101](ADR-101-ticket-bundle-emission.md) | Ticket Bundle Emission | proposed | 2026-06-15 | — |
108
+ | [ADR-102](ADR-102-ticket-handoff-paste-and-mcp.md) | Ticket Handoff Paste And Mcp | accepted | 2026-06-16 | — |
109
+ | [ADR-103](ADR-103-global-knowledge-default-off-until-measured.md) | Global Knowledge Default Off Until Measured | accepted | 2026-06-16 | — |
110
+ | [ADR-200](ADR-200-python-to-typescript-migration.md) | Python To Typescript Migration | accepted | 2026-06-11 | — |
102
111
 
103
112
  ## Unnumbered (legacy)
104
113
 
@@ -11,9 +11,9 @@
11
11
  land on a hijacked release.
12
12
  2. Re-run the builder so payloads reflect the current package:
13
13
  ```bash
14
- python3 scripts/build_discovery_manifest.py --write --strict
15
- python3 scripts/build_mcp_registry_manifest.py --write --strict
16
- python3 scripts/lint_mcp_registry_manifest.py
14
+ ./scripts-run src/scripts/build_discovery_manifest --write --strict
15
+ ./scripts-run src/scripts/build_mcp_registry_manifest --write --strict
16
+ ./scripts-run src/scripts/lint_mcp_registry_manifest
17
17
  ```
18
18
  3. Confirm `dist/mcp/registry-manifest.json` `package.version`
19
19
  matches the latest published npm version (or the version about to
@@ -12,7 +12,7 @@ A curated subset of the 124 active commands. Full set lives in
12
12
  | [`/work`](../dist/agent-src/commands/work.md) | Same end-to-end loop for a free-form prompt — confidence-band gated |
13
13
  | [`/fix ci`](../dist/agent-src/commands/fix.md) | Fetch CI failures from GitHub Actions and fix them |
14
14
  | [`/review-changes`](../dist/agent-src/commands/review-changes.md) | Self-review local changes before creating a PR (five judges) |
15
- | [`/create-pr`](../dist/agent-src/commands/create-pr.md) | Create a GitHub PR with Jira-linked description |
15
+ | [`/pr:create`](../dist/agent-src/commands/pr/create.md) | Create a GitHub PR with Jira-linked description |
16
16
 
17
17
  ## For everyone
18
18
 
@@ -87,7 +87,7 @@ Every entry above MUST resolve in [`dist/discovery/discovery-manifest.json`](../
87
87
  ```bash
88
88
  task lint-featured-skills
89
89
  # or directly:
90
- python3 scripts/lint_featured_skills.py
90
+ ./scripts-run src/scripts/lint_featured_skills
91
91
  ```
92
92
 
93
93
  CI runs this in `taskfiles/ci-fast.yml`. Stale entries (renamed / removed skill or command) fail the build. See [`scripts/lint_featured_skills.py`](../src/scripts/lint_featured_skills.py) for the matcher.
@@ -4,6 +4,8 @@
4
4
 
5
5
  `agent-config` ships ~210 skills, ~67 rules, and ~124 commands. You do not need all of them. Each role below filters to the slice that pays back in week one; the rest stays available and shows up on demand when a task references it.
6
6
 
7
+ > **Taglines at a glance →** [`docs/role-experiences.md`](role-experiences.md) — the one-line pitch per role experience, in one table.
8
+
7
9
  > **Quickstart for every role.** Run `npx -y @event4u/agent-config init` — the browser wizard auto-launches and walks you through role, ready-made setup, and identity. Headless install path lives at [`docs/wizard.md`](wizard.md#headless--ci--no-browser). The wizard writes `.agent-settings.yml`, `.augment/`, and `.claude/` atomically; nothing leaves your disk.
8
10
 
9
11
  > **Eval-gated messaging note.** Until `task bench --corpus non-dev` reports `selection_accuracy >= 0.60` (step-12 Phase 1 exit), this page is documentation, not marketing. The skills listed below are the candidates the corpus tests against; their description quality is what the eval validates.
@@ -129,7 +129,7 @@ Your agent is now:
129
129
  - **Respecting your codebase** — no conflicting patterns
130
130
  - **Following standards** — consistent code quality
131
131
 
132
- This is enforced automatically by 83 rules. No configuration needed.
132
+ This is enforced automatically by 88 rules. No configuration needed.
133
133
 
134
134
  ---
135
135
 
@@ -169,7 +169,7 @@ Your agent now understands slash commands:
169
169
  | `/quality-fix` | Run and fix all quality checks |
170
170
  | `/chat-history import` | Pull a prior session into the current chat (resume) |
171
171
 
172
- → [Browse all 147 active commands](../dist/agent-src/commands/)
172
+ → [Browse all 161 active commands](../dist/agent-src/commands/)
173
173
 
174
174
  ---
175
175
 
@@ -0,0 +1,35 @@
1
+ # Failure signatures — symptom → likely cause → first check
2
+
3
+ A file-first lookup the [`systematic-debugging`](../../../src/skills/systematic-debugging/SKILL.md)
4
+ skill reads when a failure shows a recognisable signature. It does **not**
5
+ replace the 6-phase loop — it shortcuts **Phase 2 (Isolate)** by pointing at the
6
+ *first* check for a known shape, so you stop guessing and start with the highest-
7
+ probability cause.
8
+
9
+ > File-first by design (council 2026-06-15): kept as a reference table the skill
10
+ > reads, **not** hardcoded into the skill body — so it grows without bloating the
11
+ > always-loaded skill and stays one edit away from current.
12
+
13
+ ## Lookup
14
+
15
+ | Signature (what you see) | Likely cause | First check |
16
+ |---|---|---|
17
+ | **Tool/agent loop** — same tool called >2× with near-identical args, no progress | Missing stop condition; reading without acting; ambiguous state | Stop. State the hypothesis in one line. Act or ask — do not re-read. (`context-hygiene` 15/25 rule) |
18
+ | **HTTP 429 / "rate limit" / "quota"** | Too-frequent calls; shared quota; missing backoff | Inspect response headers (`Retry-After`, `X-RateLimit-*`); add exponential backoff; check if a loop is firing the calls |
19
+ | **`ECONNREFUSED` / connection refused** | Service not up; wrong host/port; container not started | Is the service running? (`docker compose ps`, health endpoint); is the port right? (`lsof -i :PORT`); is it bound to `127.0.0.1` vs `0.0.0.0`? |
20
+ | **`ENOENT` / "no such file or directory"** | Wrong cwd; path relative vs absolute; file not generated yet | Print the *resolved absolute* path; check cwd; confirm a prior step actually wrote the file |
21
+ | **Timeout / hang** | Blocking I/O; deadlock; awaiting a condition that never holds | What is it waiting on? Add a log right before the blocking call; bound the wait; check for a missing `await`/`return` |
22
+ | **`OOM` / killed (137) / heap out of memory** | Unbounded collection; loading all rows; leak in a loop | What grows per iteration? Stream/paginate instead of loading all; check `--max-old-space-size` only after finding the growth |
23
+ | **`EACCES` / permission denied** | Wrong file mode; running as wrong user; read-only mount | `ls -l` the target; check the process user; is the path a read-only volume? |
24
+ | **Flaky test (passes alone, fails in suite)** | Shared state; order dependence; real clock/random; unawaited async | Run the test in isolation vs in suite; look for shared fixtures, global state, `Date.now()`/random, missing `await` |
25
+ | **Works locally, fails in CI** | Env/config drift; missing service; absent secret; path/case sensitivity | Diff env (`printenv`); is the service/secret present in CI? Linux is case-sensitive — check filename casing |
26
+ | **Intermittent / "sometimes"** | Race; timing; network; non-deterministic order | Reproduce with condition-based waiting, not fixed sleeps (`systematic-debugging` § Condition-based waiting); log timestamps |
27
+
28
+ ## How to use
29
+
30
+ 1. Match the symptom to a signature above.
31
+ 2. Run the **first check** — it is the highest-probability isolation step, not a fix.
32
+ 3. If it confirms the cause → fix + add a regression test. If not → fall back to
33
+ the full `systematic-debugging` loop from Phase 1.
34
+
35
+ No signature matches → this table earned nothing; debug from first principles.
@@ -6,6 +6,11 @@
6
6
  > weaker models skip — the **transferable operating discipline** — and the
7
7
  > boundary of what is *not* transferable.
8
8
  >
9
+ > **User entry point:** for the one-screen "what it does / when it fires / how to
10
+ > turn it off" contract, see
11
+ > [`docs/contracts/reasoning-discipline-protocol.md`](../../contracts/reasoning-discipline-protocol.md).
12
+ > This dossier holds the depth; that contract is where users start.
13
+ >
9
14
  > Citation discipline: every catalog row names its source **and its dignity**
10
15
  > (Anthropic primary doc · third-party review · customer testimonial · our own
11
16
  > derivation). Two independent external model analyses (Claude + GPT) corroborate
@@ -106,6 +106,23 @@ Guidelines are reference — not execution.
106
106
 
107
107
  ---
108
108
 
109
+ ## Knowledge cards
110
+
111
+ Committed knowledge cards (`agents/knowledge/<source>.md`) are a size-bounded,
112
+ evidence-disciplined context type:
113
+
114
+ - Hard bound: **≤ 150 lines** — a card is a thin distillation, never a mirror.
115
+ - **Mandatory** `links.authoritative` pointer (path or URL).
116
+ - Enforced by `check_knowledge_cards.py` (pointer-resolution CI + size +
117
+ trust-tag + multi-evidence git-ancestry consistency; `--strict` adds a
118
+ content-compare). Durable content = negative facts + pointers; positive
119
+ structure is a per-line, last-verified hypothesis.
120
+
121
+ See [`source-discovery`](../../../src/skills/source-discovery/SKILL.md) and the
122
+ `evidence-discipline` context for the full model.
123
+
124
+ ---
125
+
109
126
  # Component responsibilities
110
127
 
111
128
  ## Rules
@@ -25,7 +25,7 @@ Every skill MUST have: `When to use`, `Procedure`, `Gotcha`, `Output format`, `D
25
25
 
26
26
  Every skill's YAML frontmatter MUST validate against `scripts/schemas/skill.schema.json`.
27
27
  Violations are reported by `scripts/skill_linter.py` as `schema_<rule>` errors
28
- and fail `python3 scripts/validate_frontmatter.py` and the full CI pipeline.
28
+ and fail `./scripts-run src/scripts/validate_frontmatter` and the full CI pipeline.
29
29
 
30
30
  ### Omit fields equal to their schema default
31
31
 
@@ -41,7 +41,7 @@ A field that carries the schema `default` (e.g. `trust.level: core`,
41
41
  every consumer (validator, discovery manifest, drift checksum). Writing it
42
42
  anyway is boilerplate that `scripts/lint_frontmatter_boilerplate.py` rejects
43
43
  (wired into `task ci-fast`). To strip it across the tree, run
44
- `python3 scripts/migrate_frontmatter_defaults.py`. Background:
44
+ `./scripts-run src/scripts/migrate_frontmatter_defaults`. Background:
45
45
  `road-to-abstraction-reduction.md` +
46
46
  `agents/evidence/analysis/abstraction-reduction-preflight.md`.
47
47
 
@@ -0,0 +1,83 @@
1
+ # Corpus refresh runbook — trigger-eval recording (ADR-061 §6 DoD)
2
+
3
+ How to refresh a corpus-backed skill (`design-intelligence`, and any future
4
+ SHA-pinned corpus) and keep its trigger-eval provenance current. This is the
5
+ **corpus-refresh Definition of Done**: a refresh that bumps the upstream SHA or
6
+ edits the routing description is not done until a live trigger-eval has been
7
+ re-run and recorded against the new pin.
8
+
9
+ > **Scope.** Applies to a skill whose `data/manifest.json` has an
10
+ > `upstream` block with a real `sha`. Original-authored corpora (`upstream:
11
+ > null`, e.g. `brand`) have no SHA to pin an eval to and are out of scope —
12
+ > `lint_eval_freshness.py` skips them.
13
+
14
+ ## When a refresh fires
15
+
16
+ - The upstream SHA is bumped (new corpus content adopted), OR
17
+ - The skill's `description` (its routing trigger surface) is edited, OR
18
+ - The quarterly refresh cadence in the manifest comes due.
19
+
20
+ Any of these can change which queries the description fires on, so the recorded
21
+ recall/precision must be re-measured.
22
+
23
+ ## The refresh steps
24
+
25
+ 1. **Bump the pin / edit the corpus** in `src/skills/<skill>/data/` and update
26
+ `upstream.sha` + `upstream.last_checked` in the manifest.
27
+
28
+ 2. **Run the live trigger-eval** (token spend — interactive, gated):
29
+
30
+ ```bash
31
+ task setup-evals # once: bootstrap .venv with the pinned anthropic SDK
32
+ task install-anthropic-key # once: install ~/.event4u/agent-config/anthropic.key
33
+ .venv/bin/python3 src/scripts/skill_trigger_eval.py \
34
+ --skill <skill> --output /tmp/<skill>-eval.json
35
+ ```
36
+
37
+ The runner enforces a tty + an explicit `yes` at the cost preview. It writes
38
+ the `EvalResult` JSON (router, model, metrics) to `--output`.
39
+
40
+ 3. **Record the result into the manifest:**
41
+
42
+ ```bash
43
+ agent-config eval:record \
44
+ --eval-json /tmp/<skill>-eval.json \
45
+ --manifest src/skills/<skill>/data/manifest.json
46
+ ```
47
+
48
+ This stamps `upstream.last_eval` with the measured precision/recall, the
49
+ `sha_at_eval` (= the current `upstream.sha`), the domain-specific floor, and
50
+ `passed`. Exit codes: `0` pass · `1` recorded-but-floor-missed · `2`
51
+ integrity error (nothing written). A `--dry-run` / MockRouter result is
52
+ refused unless `--allow-mock` (plumbing only) — a mock number is never
53
+ provenance.
54
+
55
+ 4. **Re-condense + commit** the manifest change through the normal `src/` →
56
+ `/condense` flow.
57
+
58
+ ## Definition of Done
59
+
60
+ A corpus-refresh PR does **not** merge unless, for every in-scope skill it
61
+ touches:
62
+
63
+ - `upstream.last_eval.passed: true`, AND
64
+ - `upstream.last_eval.sha_at_eval == upstream.sha`.
65
+
66
+ `src/scripts/lint_eval_freshness.py` (deterministic, no token spend) enforces
67
+ this. It is run standalone today (`task lint-eval-freshness`); it moves into the
68
+ blocking `task ci-fast` aggregate once the in-scope corpora carry a recorded
69
+ `last_eval` (the one-time live backfill below).
70
+
71
+ ## One-time backfill
72
+
73
+ Every already-shipped, SHA-pinned corpus skill needs its first recording. Run
74
+ steps 2–3 once per skill — `design-intelligence` first, then any other
75
+ SHA-pinned corpus that ships `evals/triggers.json`. Because step 2 is a live,
76
+ spend-bearing run, do the backfill as a deliberate, confirmed pass — not
77
+ autonomously.
78
+
79
+ ## See also
80
+
81
+ - [`recordTriggerEval.ts`](../../src/cli/commands/recordTriggerEval.ts) — the `eval:record` implementation + domain-specific floors.
82
+ - [`lint_eval_freshness.py`](../../src/scripts/lint_eval_freshness.py) — the deterministic freshness gate.
83
+ - [`corpus-grounding`](../../src/skills/corpus-grounding/SKILL.md) + [ADR-061](../decisions/ADR-061-corpus-grounding-layer.md) §6 — the provenance discipline this DoD enforces.
@@ -18,7 +18,7 @@ Find a candidate with [`/skills:discover`](skill-discovery.md), then look before
18
18
  Under the hood:
19
19
 
20
20
  ```bash
21
- python3 scripts/skill_preview.py competitive-positioning
21
+ ./scripts-run src/scripts/skill_preview competitive-positioning
22
22
  ```
23
23
 
24
24
  ## 2. Read the summary
@@ -55,7 +55,7 @@ ls -1 "$AGENT_HOOK_CAPTURE_DIR" | head
55
55
 
56
56
  # 5. Redact (replaces user-content fields with <REDACTED>;
57
57
  # envelope keys preserved).
58
- python3 scripts/redact_hook_capture.py "$AGENT_HOOK_CAPTURE_DIR" --strict
58
+ ./scripts-run src/scripts/redact_hook_capture "$AGENT_HOOK_CAPTURE_DIR" --strict
59
59
 
60
60
  # 6. Pick the smallest representative file.
61
61
  ls -1Sr "$AGENT_HOOK_CAPTURE_DIR"/*.redacted.json | head -1
@@ -174,9 +174,9 @@ After pasting and flipping the checkbox:
174
174
 
175
175
  ```bash
176
176
  # Lint gates must stay green.
177
- python3 scripts/lint_hook_manifest.py
178
- python3 scripts/check_references.py
179
- python3 scripts/check_portability.py
177
+ ./scripts-run src/scripts/lint_hook_manifest
178
+ ./scripts-run src/scripts/check_references
179
+ ./scripts-run src/scripts/check_portability
180
180
 
181
181
  # Tests still green.
182
182
  python3 -m pytest tests/hooks/ -q
package/docs/mcp.md CHANGED
@@ -68,7 +68,7 @@ task mcp:check
68
68
  Or invoke the script directly (maintainer workflow, inside the package repo):
69
69
 
70
70
  ```bash
71
- python3 scripts/mcp_render.py [--source PATH] [--claude-desktop] [--check]
71
+ ./scripts-run src/scripts/mcp_render [--source PATH] [--claude-desktop] [--check]
72
72
  ```
73
73
 
74
74
  Default output paths:
@@ -0,0 +1,145 @@
1
+ # Consumer Template Consumption Model
2
+
3
+ > Phase 1 Step 11 of `agents/roadmaps/road-to-typescript-only-scripts.md`.
4
+ > Question: how does `dist/agent-src/templates/scripts/` content reach a consumer
5
+ > project — copied, referenced in place, or symlinked — and what does that mean
6
+ > for the Phase 9 TS migration of the consumer-shipped scripts?
7
+
8
+ ## Verdict: hybrid — in-place execution is primary, copies are secondary
9
+
10
+ The template scripts are **executed in place from the installed package root**
11
+ as the primary channel, with **two copy channels** layered on top (one
12
+ installer-driven, one manual). Nothing is ever symlinked into a consumer tree —
13
+ the installer explicitly dereferences symlinks on copy
14
+ (`src/scripts/install.py:3201-3264`, rationale at `install.py:1950-1953`:
15
+ "Council Round 3 Q1 rejected cross-scope symlinks").
16
+
17
+ ### Channel 1 — in-place from the package root (primary)
18
+
19
+ The consumer CLI (`agent-config`, master entrypoint
20
+ `src/scripts/_dispatch.bash`) derives `PACKAGE_ROOT` from its own location —
21
+ `node_modules/@event4u/agent-config/` or the global npm install — and resolves
22
+ symlinks first (`_dispatch.bash:24-32`).
23
+
24
+ - The work engine (`/work`, `/implement-ticket`) runs **exclusively** in place:
25
+ `cmd_implement_ticket` and `cmd_work` hard-code
26
+ `engine_root="$PACKAGE_ROOT/dist/agent-src/templates/scripts"` and exec
27
+ `python3 -m work_engine` with `PYTHONPATH=$engine_root`
28
+ (`_dispatch.bash:393-420`). There is **no consumer-override tier** for the
29
+ engine.
30
+ - The memory/telemetry CLI surface (`memory:lookup`, `memory:signal`,
31
+ `memory:hash`, `telemetry:record|status|report`, `check_memory`,
32
+ `check_memory_proposal`) resolves through `resolve_template_script`
33
+ (`_dispatch.bash:318-337`, call sites `:422-478`) with a three-tier chain:
34
+
35
+ 1. `$CONSUMER_ROOT/scripts/<name>` — local copy / customization (wins)
36
+ 2. `$CONSUMER_ROOT/.augment/templates/scripts/<name>` — installer-shipped
37
+ (legacy project-scope projection)
38
+ 3. `$PACKAGE_ROOT/dist/agent-src/templates/scripts/<name>` — package-internal
39
+ fallback (the path every fresh consumer actually hits)
40
+
41
+ ### Channel 2 — installer-driven copies (user scope, Augment only)
42
+
43
+ Consumer installs are **global-only** per ADR-020: both front doors gate
44
+ `--scope=project` behind `AGENT_CONFIG_DEV_MODE=1`
45
+ (`src/scripts/install:188-196` and `install.py:2142-2163`,
46
+ `_enforce_consumer_global_only` called from `main()` at `install.py:4745`).
47
+
48
+ In global scope, only the **Augment** deploy plan copies the templates tree:
49
+ `("dist/agent-src/templates", "templates")` in `GLOBAL_DEPLOY_SOURCES`
50
+ (`install.py:1993-2002`) lands `templates/scripts/` under `~/.augment/templates/`
51
+ (anchor `install.py:1841`). The Claude Code skill bundle
52
+ (`_CLAUDE_SKILL_BUNDLE`, `install.py:1977-1992`) ships rules/skills/commands/
53
+ personas but **not** templates. Source paths always reference `dist/agent-src/`
54
+ because that is the only asset tree in the npm tarball
55
+ (`install.py:1973-1976`, `package.json#files`).
56
+
57
+ Note the asymmetry: the dispatcher's tier-2 lookup reads the **project-local**
58
+ `.augment/templates/scripts/` (written only by the legacy/maintainer
59
+ project-scope install), not the global `~/.augment/templates/`. The global
60
+ Augment copy exists for the Augment tool surface itself, not for the
61
+ dispatcher.
62
+
63
+ The wizard is the same engine, not a separate one: `src/server/routes/wizard.ts`
64
+ spawns `scripts/install.py --apply-payload` (`wizard.ts:325`, `:371`, `:953`),
65
+ so all GUI installs converge on the copy semantics above.
66
+
67
+ ### Channel 3 — documented manual copies (opt-in features)
68
+
69
+ `src/agent-src/templates/scripts/README.md:21-36` and `:171-178` instruct
70
+ consumers to `cp` selected scripts into their own tree: `pr_risk_review.py`,
71
+ `pr_review_routing.py` → consumer `scripts/`; YAML examples → `.github/`. The
72
+ shipped GitHub workflow templates depend on those copies
73
+ (`src/agent-src/templates/github-workflows/memory-hygiene.yml:14`,
74
+ `pr-risk-review.yml:9`). These copies are consumer-owned the moment they are
75
+ made.
76
+
77
+ ## (b) Can consumers modify the scripts locally? Do re-installs overwrite?
78
+
79
+ - **Installer-deployed copies are always overwritten.** `_resolve_file_conflict`
80
+ (`install.py:229-243`) unconditionally returns `"write"` — "deploys always
81
+ overwrite; the flag never gates a write". Edits inside `~/.augment/templates/`
82
+ (or a legacy project `.augment/`) are clobbered on the next
83
+ `init`/`sync`/`refresh`. Orphans are never deleted, though — the copier only
84
+ writes, so files removed upstream linger in the anchor.
85
+ - **The sanctioned customization point is the consumer's own `scripts/` dir.**
86
+ Tier 1 of `resolve_template_script` ("Consumer customization wins so projects
87
+ can patch behavior locally without losing the upstream default",
88
+ `_dispatch.bash:316-317`) plus the README `cp` flow. The installer never
89
+ touches `$CONSUMER_ROOT/scripts/`, so these copies survive re-installs —
90
+ and silently pin an old version until the consumer re-copies.
91
+ - **The work engine cannot be customized at all** (no override tier).
92
+
93
+ ## (c) What invokes the template scripts at runtime?
94
+
95
+ 1. **Dispatcher subcommands** — `./agent-config work | implement-ticket |
96
+ memory:* | telemetry:* | check_memory*` (`_dispatch.bash:393-478`). Hook
97
+ trampolines installed by `install.py` call the **global binary**, which is
98
+ this same dispatcher (ADR-020); the hook scripts themselves live under
99
+ `src/scripts/hooks/`, not under `templates/scripts/`.
100
+ 2. **Rules/skills markdown** — always-loaded artifacts tell the agent to run
101
+ the scripts directly, e.g. `src/rules/security-sensitive-stop.md`
102
+ (`from scripts.memory_lookup import retrieve` — assumes the tier-1 consumer
103
+ copy), `src/rules/ui-audit-gate.md` and `src/skills/flux/SKILL.md` (link to
104
+ `templates/scripts/work_engine/directives/...`), and
105
+ `src/agent-src/contexts/contracts/artifact-engagement-flow.md:218`
106
+ (`sys.path.insert(0, ...)` onto the templates dir).
107
+ 3. **Consumer GitHub workflows** — the copied workflow templates execute the
108
+ consumer-copied `scripts/*.py` in the consumer's CI.
109
+
110
+ ## (d) Consequences for Phase 9 (TS migration of consumer templates)
111
+
112
+ Phase 9 must treat `templates/scripts/` as **three independent surfaces**:
113
+
114
+ 1. **In-place engine + dispatcher fallback (easy).** Because fresh consumers
115
+ execute tier 3 (`PACKAGE_ROOT/dist/...`), migrating a script is: ship the
116
+ `.ts` in the tarball, repoint the dispatcher subcommand (`python3 <script>` →
117
+ the TS runner), delete the `.py`. No consumer-side migration needed; the
118
+ next package update flips everyone atomically. The work engine is the
119
+ cleanest case — single call site, no override tier.
120
+ 2. **Stale copies the installer must detect (the real work).** The TS installer
121
+ (Phase 3 Step 2 already plans a dual-mode transition layer) must:
122
+ - detect tier-1/tier-2 Python copies (`$CONSUMER_ROOT/scripts/<name>.py`,
123
+ `.augment/templates/scripts/`) that shadow a migrated script — the
124
+ resolution chain is keyed by **exact filename**, so a leftover
125
+ `memory_lookup.py` keeps winning forever if the dispatcher still probes
126
+ for it, or silently stops being found if the probe name changes to `.ts`;
127
+ either way the installer must warn and offer migration/removal;
128
+ - clean up **orphaned** `.py` files in deployed anchors (the always-overwrite
129
+ copier never deletes), ideally manifest-driven (the install manifest
130
+ already records written paths, `install.py:3208-3210`);
131
+ - keep honoring consumer-owned copies under `$CONSUMER_ROOT/scripts/` as
132
+ customizations — warn, never delete.
133
+ 3. **Lockstep doc/markdown updates.** Every rule/skill/workflow template that
134
+ names a `.py` path (channel 3 and the markdown references in (c)) must flip
135
+ in the same PR as the script, or agents will instruct consumers to run
136
+ files that no longer exist.
137
+
138
+ **Recommended Phase 9 mechanics:** migrate per script-cluster behind the
139
+ dispatcher — (1) land the TS implementation in the tarball, (2) change the
140
+ dispatcher to probe `<name>.ts` (tier 1/2) before falling back to the packaged
141
+ TS, keeping a one-release deprecation warning when a consumer-local `.py`
142
+ shadow is detected, (3) update the referencing markdown in the same PR,
143
+ (4) have the TS installer's dual-mode layer flag/clean stale `.py` copies, and
144
+ (5) drop the Python fallback once the dashboard shows the
145
+ `consumer-templates` bucket at zero.