@event4u/agent-config 2.26.0 → 3.1.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 (870) hide show
  1. package/.agent-src/commands/agent-handoff.md +15 -3
  2. package/.agent-src/commands/agent-status.md +12 -0
  3. package/.agent-src/commands/agents/audit.md +12 -0
  4. package/.agent-src/commands/agents/init.md +12 -0
  5. package/.agent-src/commands/agents/optimize.md +12 -0
  6. package/.agent-src/commands/agents/user/accept.md +12 -0
  7. package/.agent-src/commands/agents/user/init.md +12 -0
  8. package/.agent-src/commands/agents/user/review.md +12 -0
  9. package/.agent-src/commands/agents/user/show.md +12 -0
  10. package/.agent-src/commands/agents/user/update.md +12 -0
  11. package/.agent-src/commands/agents/user.md +12 -0
  12. package/.agent-src/commands/agents.md +12 -0
  13. package/.agent-src/commands/analyze-reference-repo.md +15 -3
  14. package/.agent-src/commands/bug-fix.md +12 -0
  15. package/.agent-src/commands/bug-investigate.md +13 -1
  16. package/.agent-src/commands/challenge-me/vision.md +12 -0
  17. package/.agent-src/commands/challenge-me/with-docs.md +12 -0
  18. package/.agent-src/commands/challenge-me.md +12 -0
  19. package/.agent-src/commands/chat-history/import.md +16 -4
  20. package/.agent-src/commands/chat-history/learn.md +15 -3
  21. package/.agent-src/commands/chat-history/show.md +17 -5
  22. package/.agent-src/commands/chat-history.md +14 -2
  23. package/.agent-src/commands/check-current-md.md +12 -0
  24. package/.agent-src/commands/commit/in-chunks.md +12 -0
  25. package/.agent-src/commands/commit.md +12 -0
  26. package/.agent-src/commands/compress.md +12 -0
  27. package/.agent-src/commands/context/create.md +17 -5
  28. package/.agent-src/commands/context/refactor.md +15 -3
  29. package/.agent-src/commands/context.md +12 -0
  30. package/.agent-src/commands/cost-report.md +12 -0
  31. package/.agent-src/commands/council/analysis.md +15 -3
  32. package/.agent-src/commands/council/debate.md +17 -5
  33. package/.agent-src/commands/council/default.md +17 -5
  34. package/.agent-src/commands/council/design.md +12 -0
  35. package/.agent-src/commands/council/optimize.md +12 -0
  36. package/.agent-src/commands/council/pr.md +12 -0
  37. package/.agent-src/commands/council.md +13 -1
  38. package/.agent-src/commands/create-pr/description-only.md +12 -0
  39. package/.agent-src/commands/create-pr.md +39 -0
  40. package/.agent-src/commands/e2e-heal.md +12 -0
  41. package/.agent-src/commands/e2e-plan.md +12 -0
  42. package/.agent-src/commands/estimate-ticket.md +12 -0
  43. package/.agent-src/commands/feature/dev.md +13 -1
  44. package/.agent-src/commands/feature/explore.md +12 -0
  45. package/.agent-src/commands/feature/plan.md +14 -2
  46. package/.agent-src/commands/feature/refactor.md +12 -0
  47. package/.agent-src/commands/feature/roadmap.md +12 -0
  48. package/.agent-src/commands/feature.md +12 -0
  49. package/.agent-src/commands/fix/ci.md +12 -0
  50. package/.agent-src/commands/fix/portability.md +12 -0
  51. package/.agent-src/commands/fix/pr-bot-comments.md +12 -0
  52. package/.agent-src/commands/fix/pr-comments.md +12 -0
  53. package/.agent-src/commands/fix/pr-developer-comments.md +12 -0
  54. package/.agent-src/commands/fix/refs.md +12 -0
  55. package/.agent-src/commands/fix/seeder.md +12 -0
  56. package/.agent-src/commands/fix.md +12 -0
  57. package/.agent-src/commands/ghostwriter/delete.md +20 -8
  58. package/.agent-src/commands/ghostwriter/fetch.md +19 -7
  59. package/.agent-src/commands/ghostwriter/list.md +19 -7
  60. package/.agent-src/commands/ghostwriter/show.md +14 -2
  61. package/.agent-src/commands/ghostwriter/write.md +15 -3
  62. package/.agent-src/commands/ghostwriter.md +14 -2
  63. package/.agent-src/commands/grill-me.md +12 -0
  64. package/.agent-src/commands/implement-ticket.md +12 -0
  65. package/.agent-src/commands/install-via-agent.md +129 -0
  66. package/.agent-src/commands/jira-ticket.md +12 -0
  67. package/.agent-src/commands/judge/on-diff.md +12 -0
  68. package/.agent-src/commands/judge/solo.md +12 -0
  69. package/.agent-src/commands/judge/steps.md +12 -0
  70. package/.agent-src/commands/judge.md +12 -0
  71. package/.agent-src/commands/memory/add.md +12 -0
  72. package/.agent-src/commands/memory/learn-low-impact.md +18 -6
  73. package/.agent-src/commands/memory/load.md +12 -0
  74. package/.agent-src/commands/memory/mine-session.md +12 -0
  75. package/.agent-src/commands/memory/promote.md +12 -0
  76. package/.agent-src/commands/memory/propose.md +12 -0
  77. package/.agent-src/commands/memory.md +12 -0
  78. package/.agent-src/commands/mode.md +12 -0
  79. package/.agent-src/commands/module/create.md +12 -0
  80. package/.agent-src/commands/module/explore.md +13 -1
  81. package/.agent-src/commands/module.md +12 -0
  82. package/.agent-src/commands/optimize/agents-dir.md +14 -2
  83. package/.agent-src/commands/optimize/augmentignore.md +12 -0
  84. package/.agent-src/commands/optimize/rtk.md +12 -0
  85. package/.agent-src/commands/optimize/skills.md +12 -0
  86. package/.agent-src/commands/optimize-prompt.md +12 -0
  87. package/.agent-src/commands/optimize.md +12 -0
  88. package/.agent-src/commands/orchestrate.md +13 -1
  89. package/.agent-src/commands/override/create.md +12 -0
  90. package/.agent-src/commands/override/manage.md +12 -0
  91. package/.agent-src/commands/override.md +12 -0
  92. package/.agent-src/commands/package-reset.md +12 -0
  93. package/.agent-src/commands/package-test.md +12 -0
  94. package/.agent-src/commands/post-as/ghostwriter.md +12 -0
  95. package/.agent-src/commands/post-as/me.md +13 -1
  96. package/.agent-src/commands/post-as.md +12 -0
  97. package/.agent-src/commands/prepare-for-review.md +12 -0
  98. package/.agent-src/commands/project-analyze.md +27 -15
  99. package/.agent-src/commands/project-health.md +13 -1
  100. package/.agent-src/commands/quality-fix.md +12 -0
  101. package/.agent-src/commands/refine-ticket.md +12 -0
  102. package/.agent-src/commands/research/deep.md +12 -0
  103. package/.agent-src/commands/research/report.md +12 -0
  104. package/.agent-src/commands/research.md +12 -0
  105. package/.agent-src/commands/review-changes.md +12 -0
  106. package/.agent-src/commands/review-routing.md +12 -0
  107. package/.agent-src/commands/roadmap/ai-council.md +15 -3
  108. package/.agent-src/commands/roadmap/create.md +13 -1
  109. package/.agent-src/commands/roadmap/process-full.md +12 -0
  110. package/.agent-src/commands/roadmap/process-phase.md +12 -0
  111. package/.agent-src/commands/roadmap/process-step.md +12 -0
  112. package/.agent-src/commands/roadmap.md +12 -0
  113. package/.agent-src/commands/rule-compliance-audit.md +12 -0
  114. package/.agent-src/commands/set-cost-profile.md +12 -0
  115. package/.agent-src/commands/sync-agent-settings.md +12 -0
  116. package/.agent-src/commands/sync-gitignore/fix.md +32 -13
  117. package/.agent-src/commands/sync-gitignore.md +13 -1
  118. package/.agent-src/commands/tests/create.md +12 -0
  119. package/.agent-src/commands/tests/execute.md +12 -0
  120. package/.agent-src/commands/tests.md +12 -0
  121. package/.agent-src/commands/threat-model.md +12 -0
  122. package/.agent-src/commands/update-form-request-messages.md +12 -0
  123. package/.agent-src/commands/upstream-contribute.md +12 -0
  124. package/.agent-src/commands/video/from-script.md +13 -1
  125. package/.agent-src/commands/video/scene.md +12 -0
  126. package/.agent-src/commands/video/stitch.md +13 -1
  127. package/.agent-src/commands/video/storyboard.md +12 -0
  128. package/.agent-src/commands/video.md +13 -1
  129. package/.agent-src/commands/work.md +12 -0
  130. package/.agent-src/contexts/augment-infrastructure.md +2 -2
  131. package/.agent-src/contexts/authority/scope-mechanics.md +11 -0
  132. package/.agent-src/contexts/contracts/agents-md-anatomy.md +1 -1
  133. package/.agent-src/contexts/documentation-hierarchy.md +2 -2
  134. package/.agent-src/contexts/execution/cheap-question-mechanics.md +81 -0
  135. package/.agent-src/contexts/execution/roadmap-process-loop.md +19 -0
  136. package/.agent-src/ghostwriter/README.md +2 -2
  137. package/.agent-src/ghostwriter/fictional-fixture-v1.md +1 -1
  138. package/.agent-src/personas/README.md +1 -1
  139. package/.agent-src/personas/advisors/contrarian.md +1 -1
  140. package/.agent-src/personas/advisors/executor.md +1 -1
  141. package/.agent-src/personas/advisors/expansionist.md +1 -1
  142. package/.agent-src/personas/advisors/first-principles.md +1 -1
  143. package/.agent-src/personas/advisors/outsider.md +1 -1
  144. package/.agent-src/rules/agent-authority.md +12 -0
  145. package/.agent-src/rules/analysis-skill-routing.md +12 -0
  146. package/.agent-src/rules/architecture.md +13 -1
  147. package/.agent-src/rules/artifact-drafting-protocol.md +13 -1
  148. package/.agent-src/rules/artifact-engagement-recording.md +13 -1
  149. package/.agent-src/rules/ask-when-uncertain.md +12 -0
  150. package/.agent-src/rules/augment-edit-discipline.md +13 -1
  151. package/.agent-src/rules/augment-source-of-truth.md +13 -1
  152. package/.agent-src/rules/autonomous-execution.md +13 -1
  153. package/.agent-src/rules/caveman-speak.md +15 -3
  154. package/.agent-src/rules/cli-output-handling.md +13 -1
  155. package/.agent-src/rules/command-suggestion-policy.md +13 -1
  156. package/.agent-src/rules/commit-conventions.md +13 -1
  157. package/.agent-src/rules/commit-policy.md +12 -0
  158. package/.agent-src/rules/context-hygiene.md +51 -3
  159. package/.agent-src/rules/copilot-routing.md +13 -1
  160. package/.agent-src/rules/devcontainer-routing.md +13 -1
  161. package/.agent-src/rules/direct-answers.md +12 -0
  162. package/.agent-src/rules/docker-commands.md +13 -1
  163. package/.agent-src/rules/domain-adoption-policy.md +17 -5
  164. package/.agent-src/rules/domain-safety-disclaimer.md +13 -1
  165. package/.agent-src/rules/domain-safety-pii.md +13 -1
  166. package/.agent-src/rules/domain-safety-retention.md +13 -1
  167. package/.agent-src/rules/downstream-changes.md +13 -1
  168. package/.agent-src/rules/engineering-safety-floor.md +102 -0
  169. package/.agent-src/rules/external-reference-deep-dive.md +13 -1
  170. package/.agent-src/rules/fast-path-marker-visibility.md +21 -1
  171. package/.agent-src/rules/finance-safety-floor.md +114 -0
  172. package/.agent-src/rules/framework-neutrality-in-generic-skills.md +13 -1
  173. package/.agent-src/rules/git-history-discipline.md +14 -2
  174. package/.agent-src/rules/guidelines.md +12 -0
  175. package/.agent-src/rules/improve-before-implement.md +13 -1
  176. package/.agent-src/rules/invite-challenge.md +13 -1
  177. package/.agent-src/rules/language-and-tone.md +12 -0
  178. package/.agent-src/rules/laravel-routing.md +13 -1
  179. package/.agent-src/rules/laravel-translations.md +13 -1
  180. package/.agent-src/rules/low-impact-corpus-privacy-floor.md +17 -5
  181. package/.agent-src/rules/markdown-safe-codeblocks.md +13 -1
  182. package/.agent-src/rules/media-governance-routing.md +27 -15
  183. package/.agent-src/rules/minimal-safe-diff.md +13 -1
  184. package/.agent-src/rules/missing-tool-handling.md +13 -1
  185. package/.agent-src/rules/model-recommendation.md +13 -1
  186. package/.agent-src/rules/no-attribution-footers.md +13 -1
  187. package/.agent-src/rules/no-cheap-questions.md +46 -32
  188. package/.agent-src/rules/no-roadmap-references.md +28 -16
  189. package/.agent-src/rules/non-destructive-by-default.md +12 -0
  190. package/.agent-src/rules/onboarding-gate.md +19 -6
  191. package/.agent-src/rules/package-ci-checks.md +12 -0
  192. package/.agent-src/rules/persona-governance.md +13 -1
  193. package/.agent-src/rules/php-coding.md +13 -1
  194. package/.agent-src/rules/preservation-guard.md +13 -1
  195. package/.agent-src/rules/provider-lifecycle-discipline.md +18 -6
  196. package/.agent-src/rules/reviewer-awareness.md +13 -1
  197. package/.agent-src/rules/roadmap-ci-steps-policy.md +13 -1
  198. package/.agent-src/rules/roadmap-progress-sync.md +18 -1
  199. package/.agent-src/rules/role-mode-adherence.md +13 -1
  200. package/.agent-src/rules/rule-type-governance.md +13 -1
  201. package/.agent-src/rules/runtime-safety.md +13 -1
  202. package/.agent-src/rules/scope-control.md +12 -0
  203. package/.agent-src/rules/security-sensitive-stop.md +13 -1
  204. package/.agent-src/rules/size-enforcement.md +12 -0
  205. package/.agent-src/rules/skill-improvement-trigger.md +13 -1
  206. package/.agent-src/rules/skill-quality.md +13 -1
  207. package/.agent-src/rules/slash-command-routing-policy.md +13 -1
  208. package/.agent-src/rules/strategy-safety-floor.md +114 -0
  209. package/.agent-src/rules/symfony-routing.md +13 -1
  210. package/.agent-src/rules/think-before-action.md +13 -1
  211. package/.agent-src/rules/token-efficiency.md +13 -1
  212. package/.agent-src/rules/token-optimizer-maintenance.md +12 -0
  213. package/.agent-src/rules/tool-safety.md +13 -1
  214. package/.agent-src/rules/ui-audit-gate.md +13 -1
  215. package/.agent-src/rules/upstream-proposal.md +13 -1
  216. package/.agent-src/rules/user-interaction.md +13 -1
  217. package/.agent-src/rules/user-interrupt-priority.md +12 -0
  218. package/.agent-src/rules/verify-before-complete.md +12 -0
  219. package/.agent-src/skills/accessibility-auditor/SKILL.md +12 -0
  220. package/.agent-src/skills/activation-design/SKILL.md +12 -0
  221. package/.agent-src/skills/adr-create/SKILL.md +12 -0
  222. package/.agent-src/skills/adversarial-review/SKILL.md +12 -0
  223. package/.agent-src/skills/agent-docs-writing/SKILL.md +16 -4
  224. package/.agent-src/skills/agents-md-thin-root/SKILL.md +28 -10
  225. package/.agent-src/skills/ai-council/SKILL.md +28 -15
  226. package/.agent-src/skills/analysis-autonomous-mode/SKILL.md +12 -0
  227. package/.agent-src/skills/analysis-skill-router/SKILL.md +12 -0
  228. package/.agent-src/skills/api-design/SKILL.md +13 -3
  229. package/.agent-src/skills/api-endpoint/SKILL.md +12 -0
  230. package/.agent-src/skills/api-testing/SKILL.md +12 -0
  231. package/.agent-src/skills/architecture-review-lens/SKILL.md +12 -0
  232. package/.agent-src/skills/artisan-commands/SKILL.md +12 -0
  233. package/.agent-src/skills/async-python-patterns/SKILL.md +13 -1
  234. package/.agent-src/skills/authz-review/SKILL.md +12 -2
  235. package/.agent-src/skills/aws-infrastructure/SKILL.md +12 -0
  236. package/.agent-src/skills/blade-ui/SKILL.md +12 -0
  237. package/.agent-src/skills/blast-radius-analyzer/SKILL.md +12 -0
  238. package/.agent-src/skills/bug-analyzer/SKILL.md +14 -2
  239. package/.agent-src/skills/build-buy-partner/SKILL.md +12 -0
  240. package/.agent-src/skills/canvas-design/SKILL.md +12 -0
  241. package/.agent-src/skills/character-consistency/SKILL.md +23 -11
  242. package/.agent-src/skills/check-refs/SKILL.md +12 -0
  243. package/.agent-src/skills/churn-prevention/SKILL.md +12 -0
  244. package/.agent-src/skills/code-refactoring/SKILL.md +16 -4
  245. package/.agent-src/skills/code-review/SKILL.md +12 -0
  246. package/.agent-src/skills/command-routing/SKILL.md +12 -0
  247. package/.agent-src/skills/command-writing/SKILL.md +14 -2
  248. package/.agent-src/skills/comp-banding/SKILL.md +12 -0
  249. package/.agent-src/skills/competitive-moat-analysis/SKILL.md +12 -2
  250. package/.agent-src/skills/competitive-positioning/SKILL.md +12 -2
  251. package/.agent-src/skills/composer-packages/SKILL.md +12 -0
  252. package/.agent-src/skills/compress-memory/SKILL.md +12 -0
  253. package/.agent-src/skills/content-funnel-design/SKILL.md +12 -2
  254. package/.agent-src/skills/context-authoring/SKILL.md +18 -6
  255. package/.agent-src/skills/context-document/SKILL.md +17 -5
  256. package/.agent-src/skills/contracts-cognition/SKILL.md +12 -2
  257. package/.agent-src/skills/conventional-commits-writing/SKILL.md +12 -0
  258. package/.agent-src/skills/copilot-agents-optimization/SKILL.md +13 -1
  259. package/.agent-src/skills/copilot-config/SKILL.md +12 -0
  260. package/.agent-src/skills/customer-research/SKILL.md +12 -0
  261. package/.agent-src/skills/dashboard-design/SKILL.md +12 -0
  262. package/.agent-src/skills/data-flow-mapper/SKILL.md +12 -0
  263. package/.agent-src/skills/data-handling-judgment/SKILL.md +12 -2
  264. package/.agent-src/skills/database/SKILL.md +14 -2
  265. package/.agent-src/skills/dcf-modeling/SKILL.md +12 -2
  266. package/.agent-src/skills/deal-qualification-meddic/SKILL.md +12 -2
  267. package/.agent-src/skills/decision-record/SKILL.md +12 -0
  268. package/.agent-src/skills/deep-reading-analyst/SKILL.md +12 -0
  269. package/.agent-src/skills/defense-in-depth/SKILL.md +13 -1
  270. package/.agent-src/skills/dependency-upgrade/SKILL.md +12 -0
  271. package/.agent-src/skills/description-assist/SKILL.md +12 -0
  272. package/.agent-src/skills/design-review/SKILL.md +12 -0
  273. package/.agent-src/skills/devcontainer/SKILL.md +12 -0
  274. package/.agent-src/skills/developer-like-execution/SKILL.md +12 -0
  275. package/.agent-src/skills/discovery-interview/SKILL.md +12 -2
  276. package/.agent-src/skills/doc-coauthoring/SKILL.md +12 -0
  277. package/.agent-src/skills/docker/SKILL.md +12 -0
  278. package/.agent-src/skills/editorial-calendar/SKILL.md +12 -2
  279. package/.agent-src/skills/eloquent/SKILL.md +12 -0
  280. package/.agent-src/skills/eloquent/evals/triggers.json +1 -1
  281. package/.agent-src/skills/error-handling-patterns/SKILL.md +13 -1
  282. package/.agent-src/skills/estimate-ticket/SKILL.md +12 -0
  283. package/.agent-src/skills/existing-ui-audit/SKILL.md +12 -0
  284. package/.agent-src/skills/expansion-playbook/SKILL.md +12 -0
  285. package/.agent-src/skills/fe-design/SKILL.md +12 -0
  286. package/.agent-src/skills/feature-planning/SKILL.md +12 -0
  287. package/.agent-src/skills/file-editor/SKILL.md +12 -0
  288. package/.agent-src/skills/finishing-a-development-branch/SKILL.md +12 -0
  289. package/.agent-src/skills/flux/SKILL.md +12 -0
  290. package/.agent-src/skills/forecast-accuracy/SKILL.md +12 -2
  291. package/.agent-src/skills/forecasting/SKILL.md +12 -2
  292. package/.agent-src/skills/form-handler/SKILL.md +12 -0
  293. package/.agent-src/skills/fundraising-narrative/SKILL.md +12 -2
  294. package/.agent-src/skills/funnel-analysis/SKILL.md +12 -0
  295. package/.agent-src/skills/git-workflow/SKILL.md +12 -0
  296. package/.agent-src/skills/github-ci/SKILL.md +12 -0
  297. package/.agent-src/skills/grafana/SKILL.md +12 -0
  298. package/.agent-src/skills/gtm-launch/SKILL.md +12 -2
  299. package/.agent-src/skills/guideline-writing/SKILL.md +12 -0
  300. package/.agent-src/skills/hiring-loop-design/SKILL.md +12 -0
  301. package/.agent-src/skills/incident-commander/SKILL.md +12 -2
  302. package/.agent-src/skills/jira-integration/SKILL.md +12 -0
  303. package/.agent-src/skills/jobs-events/SKILL.md +12 -0
  304. package/.agent-src/skills/judge-bug-hunter/SKILL.md +12 -0
  305. package/.agent-src/skills/judge-code-quality/SKILL.md +12 -0
  306. package/.agent-src/skills/judge-security-auditor/SKILL.md +12 -0
  307. package/.agent-src/skills/judge-test-coverage/SKILL.md +12 -0
  308. package/.agent-src/skills/laravel/SKILL.md +12 -0
  309. package/.agent-src/skills/laravel-api-endpoint/SKILL.md +15 -3
  310. package/.agent-src/skills/laravel-dto/SKILL.md +14 -2
  311. package/.agent-src/skills/laravel-horizon/SKILL.md +12 -0
  312. package/.agent-src/skills/laravel-mail/SKILL.md +12 -0
  313. package/.agent-src/skills/laravel-middleware/SKILL.md +12 -0
  314. package/.agent-src/skills/laravel-migration/SKILL.md +12 -0
  315. package/.agent-src/skills/laravel-notifications/SKILL.md +12 -0
  316. package/.agent-src/skills/laravel-pennant/SKILL.md +12 -0
  317. package/.agent-src/skills/laravel-pulse/SKILL.md +12 -0
  318. package/.agent-src/skills/laravel-reverb/SKILL.md +12 -0
  319. package/.agent-src/skills/laravel-scheduling/SKILL.md +12 -0
  320. package/.agent-src/skills/laravel-validation/SKILL.md +12 -0
  321. package/.agent-src/skills/laravel-websocket/SKILL.md +12 -0
  322. package/.agent-src/skills/launch-readiness/SKILL.md +12 -2
  323. package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +15 -3
  324. package/.agent-src/skills/lint-skills/SKILL.md +12 -0
  325. package/.agent-src/skills/livewire/SKILL.md +12 -0
  326. package/.agent-src/skills/livewire-architect/SKILL.md +12 -0
  327. package/.agent-src/skills/logging-monitoring/SKILL.md +12 -0
  328. package/.agent-src/skills/market-entry-analysis/SKILL.md +12 -0
  329. package/.agent-src/skills/markitdown/SKILL.md +14 -2
  330. package/.agent-src/skills/mcp/SKILL.md +12 -0
  331. package/.agent-src/skills/mcp-builder/SKILL.md +14 -2
  332. package/.agent-src/skills/md-language-check/SKILL.md +13 -1
  333. package/.agent-src/skills/memory-consolidation/SKILL.md +12 -0
  334. package/.agent-src/skills/merge-conflicts/SKILL.md +12 -0
  335. package/.agent-src/skills/messaging-architecture/SKILL.md +12 -2
  336. package/.agent-src/skills/migration-architect/SKILL.md +12 -0
  337. package/.agent-src/skills/mobile-e2e-strategy/SKILL.md +12 -0
  338. package/.agent-src/skills/module-management/SKILL.md +12 -0
  339. package/.agent-src/skills/motion-choreographer/SKILL.md +16 -4
  340. package/.agent-src/skills/multi-tenancy/SKILL.md +14 -2
  341. package/.agent-src/skills/nextjs-patterns/SKILL.md +12 -0
  342. package/.agent-src/skills/okr-tree-modeling/SKILL.md +12 -2
  343. package/.agent-src/skills/onboarding-design/SKILL.md +12 -0
  344. package/.agent-src/skills/onboarding-program/SKILL.md +12 -0
  345. package/.agent-src/skills/one-on-one-cadence/SKILL.md +12 -0
  346. package/.agent-src/skills/openapi/SKILL.md +13 -1
  347. package/.agent-src/skills/org-design/SKILL.md +12 -0
  348. package/.agent-src/skills/override-management/SKILL.md +12 -0
  349. package/.agent-src/skills/perf-feedback-craft/SKILL.md +12 -0
  350. package/.agent-src/skills/performance/SKILL.md +12 -0
  351. package/.agent-src/skills/performance-analysis/SKILL.md +12 -0
  352. package/.agent-src/skills/persona-writing/SKILL.md +12 -0
  353. package/.agent-src/skills/pest-testing/SKILL.md +12 -0
  354. package/.agent-src/skills/php-coder/SKILL.md +12 -0
  355. package/.agent-src/skills/php-debugging/SKILL.md +12 -0
  356. package/.agent-src/skills/php-service/SKILL.md +12 -0
  357. package/.agent-src/skills/pipeline-strategy/SKILL.md +12 -2
  358. package/.agent-src/skills/pixar-storyteller/SKILL.md +17 -5
  359. package/.agent-src/skills/playwright-architect/SKILL.md +12 -2
  360. package/.agent-src/skills/playwright-testing/SKILL.md +12 -0
  361. package/.agent-src/skills/po-discovery/SKILL.md +12 -0
  362. package/.agent-src/skills/positioning-strategy/SKILL.md +12 -0
  363. package/.agent-src/skills/privacy-review/SKILL.md +12 -2
  364. package/.agent-src/skills/project-analysis-core/SKILL.md +12 -0
  365. package/.agent-src/skills/project-analysis-hypothesis-driven/SKILL.md +12 -0
  366. package/.agent-src/skills/project-analysis-laravel/SKILL.md +12 -0
  367. package/.agent-src/skills/project-analysis-nextjs/SKILL.md +12 -0
  368. package/.agent-src/skills/project-analysis-node-express/SKILL.md +12 -0
  369. package/.agent-src/skills/project-analysis-react/SKILL.md +12 -0
  370. package/.agent-src/skills/project-analysis-symfony/SKILL.md +12 -0
  371. package/.agent-src/skills/project-analysis-zend-laminas/SKILL.md +12 -0
  372. package/.agent-src/skills/project-analyzer/SKILL.md +30 -18
  373. package/.agent-src/skills/project-docs/SKILL.md +25 -13
  374. package/.agent-src/skills/prompt-engineering-patterns/SKILL.md +13 -1
  375. package/.agent-src/skills/prompt-optimizer/SKILL.md +13 -1
  376. package/.agent-src/skills/quality-tools/SKILL.md +12 -2
  377. package/.agent-src/skills/react-native-setup/SKILL.md +12 -0
  378. package/.agent-src/skills/react-shadcn-ui/SKILL.md +12 -0
  379. package/.agent-src/skills/readme-reviewer/SKILL.md +64 -3
  380. package/.agent-src/skills/readme-writing/SKILL.md +64 -4
  381. package/.agent-src/skills/readme-writing-package/SKILL.md +60 -5
  382. package/.agent-src/skills/receiving-code-review/SKILL.md +12 -0
  383. package/.agent-src/skills/refine-prompt/SKILL.md +13 -1
  384. package/.agent-src/skills/refine-ticket/SKILL.md +14 -2
  385. package/.agent-src/skills/refine-ticket/detection-map.yml +2 -2
  386. package/.agent-src/skills/release-comms/SKILL.md +12 -2
  387. package/.agent-src/skills/repomix-packer/SKILL.md +13 -1
  388. package/.agent-src/skills/requesting-code-review/SKILL.md +12 -0
  389. package/.agent-src/skills/retention-loops/SKILL.md +12 -0
  390. package/.agent-src/skills/review-routing/SKILL.md +12 -0
  391. package/.agent-src/skills/rice-prioritization/SKILL.md +12 -0
  392. package/.agent-src/skills/risk-officer/SKILL.md +12 -0
  393. package/.agent-src/skills/roadmap-management/SKILL.md +12 -0
  394. package/.agent-src/skills/roadmap-writing/SKILL.md +12 -0
  395. package/.agent-src/skills/rtk-output-filtering/SKILL.md +12 -0
  396. package/.agent-src/skills/rule-refactor/SKILL.md +15 -3
  397. package/.agent-src/skills/rule-writing/SKILL.md +13 -1
  398. package/.agent-src/skills/runway-cognition/SKILL.md +12 -2
  399. package/.agent-src/skills/scenario-modeling/SKILL.md +12 -2
  400. package/.agent-src/skills/scene-expander/SKILL.md +18 -6
  401. package/.agent-src/skills/script-writing/SKILL.md +13 -1
  402. package/.agent-src/skills/secrets-management/SKILL.md +13 -3
  403. package/.agent-src/skills/security/SKILL.md +12 -0
  404. package/.agent-src/skills/security-audit/SKILL.md +12 -0
  405. package/.agent-src/skills/sentry-integration/SKILL.md +12 -0
  406. package/.agent-src/skills/sequential-thinking/SKILL.md +12 -0
  407. package/.agent-src/skills/skill-improvement-pipeline/SKILL.md +12 -0
  408. package/.agent-src/skills/skill-management/SKILL.md +12 -0
  409. package/.agent-src/skills/skill-reviewer/SKILL.md +12 -0
  410. package/.agent-src/skills/skill-writing/SKILL.md +12 -0
  411. package/.agent-src/skills/sql-writing/SKILL.md +12 -0
  412. package/.agent-src/skills/stakeholder-tradeoff/SKILL.md +12 -0
  413. package/.agent-src/skills/subagent-orchestration/SKILL.md +13 -1
  414. package/.agent-src/skills/symfony-workflow/SKILL.md +12 -0
  415. package/.agent-src/skills/systematic-debugging/SKILL.md +53 -0
  416. package/.agent-src/skills/tailwind-engineer/SKILL.md +12 -0
  417. package/.agent-src/skills/tech-debt-tracker/SKILL.md +12 -2
  418. package/.agent-src/skills/technical-specification/SKILL.md +12 -0
  419. package/.agent-src/skills/terraform/SKILL.md +12 -0
  420. package/.agent-src/skills/terragrunt/SKILL.md +12 -0
  421. package/.agent-src/skills/test-driven-development/SKILL.md +12 -0
  422. package/.agent-src/skills/test-performance/SKILL.md +13 -1
  423. package/.agent-src/skills/testing-anti-patterns/SKILL.md +13 -1
  424. package/.agent-src/skills/threat-modeling/SKILL.md +12 -0
  425. package/.agent-src/skills/throughput-vs-morale-tradeoff/SKILL.md +12 -0
  426. package/.agent-src/skills/token-optimizer/SKILL.md +12 -0
  427. package/.agent-src/skills/traefik/SKILL.md +12 -0
  428. package/.agent-src/skills/ui-component-architect/SKILL.md +12 -0
  429. package/.agent-src/skills/unit-economics-modeling/SKILL.md +12 -2
  430. package/.agent-src/skills/universal-project-analysis/SKILL.md +12 -0
  431. package/.agent-src/skills/upstream-contribute/SKILL.md +12 -0
  432. package/.agent-src/skills/using-git-worktrees/SKILL.md +12 -0
  433. package/.agent-src/skills/validate-feature-fit/SKILL.md +12 -0
  434. package/.agent-src/skills/verify-completion-evidence/SKILL.md +12 -0
  435. package/.agent-src/skills/video-director/SKILL.md +18 -6
  436. package/.agent-src/skills/vision-articulation/SKILL.md +12 -0
  437. package/.agent-src/skills/voc-extract/SKILL.md +12 -2
  438. package/.agent-src/skills/voice-and-tone-design/SKILL.md +12 -2
  439. package/.agent-src/templates/agent-settings.md +5 -5
  440. package/.agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  441. package/.agent-src/templates/agents/memory/ownership.example.yml +1 -1
  442. package/.agent-src/templates/agents/proposal.example.md +12 -0
  443. package/.agent-src/templates/command.md +1 -1
  444. package/.agent-src/templates/contexts/auth-model.md +2 -2
  445. package/.agent-src/templates/contexts/data-sensitivity.md +3 -3
  446. package/.agent-src/templates/contexts/deployment-order.md +2 -2
  447. package/.agent-src/templates/contexts/observability.md +3 -3
  448. package/.agent-src/templates/contexts/tenant-boundaries.md +3 -3
  449. package/.agent-src/templates/contexts.md +1 -1
  450. package/.agent-src/templates/hooks/pre-commit-frontmatter +66 -0
  451. package/.agent-src/templates/hooks/pre-commit-roadmap-progress +78 -39
  452. package/.agent-src/templates/rule.md +1 -1
  453. package/.agent-src/templates/scripts/work_engine/_lib/agent_settings.py +7 -4
  454. package/.agent-src/templates/scripts/work_engine/cli.py +6 -6
  455. package/.agent-src/templates/scripts/work_engine/emitters.py +29 -4
  456. package/.agent-src/templates/scripts/work_engine/hooks/builtin/decision_trace.py +3 -3
  457. package/.agent-src/templates/scripts/work_engine/orchestration.py +25 -11
  458. package/.agent-src/templates/scripts/work_engine/state.py +53 -0
  459. package/.agent-src/templates/skill-archive-note.md +4 -4
  460. package/.claude-plugin/marketplace.json +2 -2
  461. package/AGENTS.md +12 -9
  462. package/CHANGELOG.md +268 -90
  463. package/CONTRIBUTING.md +61 -0
  464. package/README.md +173 -558
  465. package/config/agent-settings.template.yml +11 -8
  466. package/config/discovery/packs.yml +162 -0
  467. package/config/discovery/unassigned-artefacts.yml +68 -0
  468. package/config/discovery/workspaces.yml +59 -0
  469. package/config/gitignore-block.txt +36 -23
  470. package/dist/cli/agent-config.js +199 -0
  471. package/dist/cli/agent-config.js.map +1 -0
  472. package/dist/cli/bash/runBash.js +40 -0
  473. package/dist/cli/bash/runBash.js.map +1 -0
  474. package/dist/cli/commands/doctorShell.js +91 -0
  475. package/dist/cli/commands/doctorShell.js.map +1 -0
  476. package/dist/cli/commands/packs.js +59 -0
  477. package/dist/cli/commands/packs.js.map +1 -0
  478. package/dist/cli/commands/settings.js +35 -0
  479. package/dist/cli/commands/settings.js.map +1 -0
  480. package/dist/cli/commands/uiServe.js +119 -0
  481. package/dist/cli/commands/uiServe.js.map +1 -0
  482. package/dist/cli/commands/versions.js +64 -0
  483. package/dist/cli/commands/versions.js.map +1 -0
  484. package/dist/cli/commands/workspaces.js +58 -0
  485. package/dist/cli/commands/workspaces.js.map +1 -0
  486. package/dist/cli/discovery/loadManifest.js +62 -0
  487. package/dist/cli/discovery/loadManifest.js.map +1 -0
  488. package/dist/cli/log/logger.js +41 -0
  489. package/dist/cli/log/logger.js.map +1 -0
  490. package/dist/cli/paths.js +60 -0
  491. package/dist/cli/paths.js.map +1 -0
  492. package/dist/cli/python/resolvePython.js +38 -0
  493. package/dist/cli/python/resolvePython.js.map +1 -0
  494. package/dist/cli/registry.js +77 -0
  495. package/dist/cli/registry.js.map +1 -0
  496. package/dist/discovery/deprecation-report.md +7 -0
  497. package/dist/discovery/discovery-manifest.json +9893 -0
  498. package/dist/discovery/discovery-manifest.json.sha256 +1 -0
  499. package/dist/discovery/discovery-manifest.summary.md +93 -0
  500. package/dist/discovery/orphan-report.md +10 -0
  501. package/dist/discovery/packs.json +1002 -0
  502. package/dist/discovery/trust-report.md +26 -0
  503. package/dist/discovery/workspaces.json +705 -0
  504. package/dist/mcp/awesome-mcp-servers.row.md +1 -0
  505. package/dist/mcp/mcp-cloudflare-catalogue.json +27 -0
  506. package/dist/mcp/registry-manifest.json +63 -0
  507. package/dist/router.json +1623 -0
  508. package/dist/server/app.js +125 -0
  509. package/dist/server/app.js.map +1 -0
  510. package/dist/server/io/atomicMultiWrite.js +204 -0
  511. package/dist/server/io/atomicMultiWrite.js.map +1 -0
  512. package/dist/server/io/atomicWrite.js +79 -0
  513. package/dist/server/io/atomicWrite.js.map +1 -0
  514. package/dist/server/io/substituteTemplate.js +87 -0
  515. package/dist/server/io/substituteTemplate.js.map +1 -0
  516. package/dist/server/io/yamlIO.js +162 -0
  517. package/dist/server/io/yamlIO.js.map +1 -0
  518. package/dist/server/port.js +97 -0
  519. package/dist/server/port.js.map +1 -0
  520. package/dist/server/routes/discovery.js +72 -0
  521. package/dist/server/routes/discovery.js.map +1 -0
  522. package/dist/server/routes/ping.js +57 -0
  523. package/dist/server/routes/ping.js.map +1 -0
  524. package/dist/server/routes/schema.js +41 -0
  525. package/dist/server/routes/schema.js.map +1 -0
  526. package/dist/server/routes/settings.js +236 -0
  527. package/dist/server/routes/settings.js.map +1 -0
  528. package/dist/server/routes/userMd.js +127 -0
  529. package/dist/server/routes/userMd.js.map +1 -0
  530. package/dist/server/routes/wizard.js +374 -0
  531. package/dist/server/routes/wizard.js.map +1 -0
  532. package/dist/server/schemas/settings.js +137 -0
  533. package/dist/server/schemas/settings.js.map +1 -0
  534. package/dist/server/token.js +75 -0
  535. package/dist/server/token.js.map +1 -0
  536. package/dist/server/writeRoot.js +84 -0
  537. package/dist/server/writeRoot.js.map +1 -0
  538. package/dist/server/writeRoot.test.js +91 -0
  539. package/dist/server/writeRoot.test.js.map +1 -0
  540. package/dist/shared/userMd/formAdapter.js +83 -0
  541. package/dist/shared/userMd/formAdapter.js.map +1 -0
  542. package/dist/shared/userMd/schema.js +46 -0
  543. package/dist/shared/userMd/schema.js.map +1 -0
  544. package/dist/shared/userMd/utils.js +88 -0
  545. package/dist/shared/userMd/utils.js.map +1 -0
  546. package/dist/ui/assets/index-D-DY1ywI.js +35 -0
  547. package/dist/ui/assets/index-D-DY1ywI.js.map +1 -0
  548. package/dist/ui/assets/index-Dqfhmg-d.css +1 -0
  549. package/dist/ui/index.html +14 -0
  550. package/docs/adrs/caveman/0001-default-off-until-bench.md +2 -2
  551. package/docs/adrs/cost/0001-hard-stop-hook.md +1 -1
  552. package/docs/adrs/router/0001-three-tier-routing.md +5 -5
  553. package/docs/adrs/schema/0001-json-schema-frontmatter.md +4 -4
  554. package/docs/adrs/schema/README.md +1 -1
  555. package/docs/adrs/smoke/0001-per-tier-smoke-scripts.md +3 -3
  556. package/docs/architecture/setup-vs-settings-shared-surface.md +114 -0
  557. package/docs/architecture.md +3 -2
  558. package/docs/archive/CHANGELOG-pre-2.2.0.md +7 -7
  559. package/docs/archive/CHANGELOG-pre-3.0.0.md +130 -0
  560. package/docs/archive/CHANGELOG-pre-3.1.0.md +167 -0
  561. package/docs/catalog.md +92 -100
  562. package/docs/contracts/CHANGELOG-conventions.md +1 -1
  563. package/docs/contracts/STABILITY.md +1 -1
  564. package/docs/contracts/adr-architectural-consensus-mechanism.md +5 -5
  565. package/docs/contracts/adr-chat-history-split.md +1 -1
  566. package/docs/contracts/adr-implement-ticket-runtime.md +1 -1
  567. package/docs/contracts/adr-install-user-type-axis.md +1 -1
  568. package/docs/contracts/adr-mcp-runtime.md +2 -2
  569. package/docs/contracts/agent-user-schema.md +17 -11
  570. package/docs/contracts/ai-council-config.md +13 -13
  571. package/docs/contracts/audit-log-v1.md +2 -2
  572. package/docs/contracts/command-clusters.md +2 -2
  573. package/docs/contracts/compression-default-kill-criterion.md +3 -3
  574. package/docs/contracts/consumer-bridge.md +79 -0
  575. package/docs/contracts/decision-trace-v1.md +5 -5
  576. package/docs/contracts/discovery-manifest.md +209 -0
  577. package/docs/contracts/discovery-manifest.schema.json +219 -0
  578. package/docs/contracts/explain-trace.schema.json +144 -0
  579. package/docs/contracts/file-ownership-matrix.json +288 -328
  580. package/docs/contracts/file-ownership-matrix.md +1 -1
  581. package/docs/contracts/frontmatter-contract.md +140 -0
  582. package/docs/contracts/ghostwriter-schema.md +3 -3
  583. package/docs/contracts/gui-wizard.md +223 -0
  584. package/docs/contracts/hook-architecture-v1.md +10 -10
  585. package/docs/contracts/installer-agent-mode.md +137 -0
  586. package/docs/contracts/kernel-membership.md +5 -5
  587. package/docs/contracts/linter-structural-model.md +3 -3
  588. package/docs/contracts/load-context-schema.md +5 -5
  589. package/docs/contracts/local-server-api.md +134 -0
  590. package/docs/contracts/low-impact-corpus-format.md +1 -1
  591. package/docs/contracts/mcp-cloud-scope.md +2 -2
  592. package/docs/contracts/mcp-discovery-phase-notice.md +1 -1
  593. package/docs/contracts/mcp-phase-1-scope.md +5 -4
  594. package/docs/contracts/mcp-registry-manifest.schema.json +129 -0
  595. package/docs/contracts/mcp-tool-inventory.md +9 -9
  596. package/docs/contracts/mcp-tool-stub-envelope.md +1 -1
  597. package/docs/contracts/memory-visibility-v1.md +2 -2
  598. package/docs/contracts/multi-tool-projection-fidelity.md +3 -3
  599. package/docs/contracts/namespace.md +7 -7
  600. package/docs/contracts/one-off-script-lifecycle.md +1 -1
  601. package/docs/contracts/package-self-orientation.md +1 -1
  602. package/docs/contracts/provider-lifecycle.md +7 -7
  603. package/docs/contracts/router-blending.md +1 -1
  604. package/docs/contracts/rule-classification.md +2 -2
  605. package/docs/contracts/rule-router.md +4 -4
  606. package/docs/contracts/settings-api.md +207 -0
  607. package/docs/contracts/settings-gui-agent-mode.schema.json +128 -0
  608. package/docs/contracts/smoke-contracts.md +3 -3
  609. package/docs/contracts/tier-3-contrib-plugin.md +1 -1
  610. package/docs/contracts/trust-and-safety.md +144 -0
  611. package/docs/contracts/universal-skills.md +1 -1
  612. package/docs/contracts/write-engine.md +1 -1
  613. package/docs/customization.md +139 -13
  614. package/docs/decisions/ADR-001-kernel-swap-deferred.md +1 -1
  615. package/docs/decisions/ADR-002-kernel-bucket-overrides.md +1 -1
  616. package/docs/decisions/ADR-004-rule-governance-pruning.md +8 -8
  617. package/docs/decisions/ADR-006-skill-tools-python-pilot.md +5 -5
  618. package/docs/decisions/ADR-007-agent-discovery-scopes.md +16 -4
  619. package/docs/decisions/ADR-008-installed-tools-manifest.md +2 -2
  620. package/docs/decisions/ADR-010-profile-pack-preset-boundary.md +2 -2
  621. package/docs/decisions/ADR-011-domain-pack-readiness.md +4 -4
  622. package/docs/decisions/ADR-012-typescript-cli-shell.md +162 -0
  623. package/docs/decisions/ADR-013-discovery-frontmatter-contract.md +234 -0
  624. package/docs/decisions/ADR-014-gui-framework-choice.md +136 -0
  625. package/docs/decisions/ADR-015-discovery-manifest-contract.md +146 -0
  626. package/docs/decisions/ADR-016-installer-architecture.md +189 -0
  627. package/docs/decisions/ADR-017-monorepo-physical-layout.md +261 -0
  628. package/docs/decisions/ADR-018-trust-and-safety-layer.md +159 -0
  629. package/docs/decisions/ADR-019-router-json-dist-location.md +124 -0
  630. package/docs/decisions/ADR-020-global-only-consumer-scope.md +123 -0
  631. package/docs/decisions/ADR-021-deployment-shape.md +153 -0
  632. package/docs/decisions/ADR-rule-kernel-and-router.md +2 -2
  633. package/docs/decisions/INDEX.md +10 -0
  634. package/docs/deploy/connector-setup.md +129 -0
  635. package/docs/deploy/env-vars.md +70 -0
  636. package/docs/deploy/policy-cookbook.md +130 -0
  637. package/docs/deploy/quickstart.md +112 -0
  638. package/docs/distribution/mcp-submission-checklist.md +95 -0
  639. package/docs/distribution/public-install-smoke.md +68 -0
  640. package/docs/distribution/registries.md +55 -0
  641. package/docs/distribution/telemetry-privacy.md +128 -0
  642. package/docs/distribution/telemetry-schema.md +174 -0
  643. package/docs/distribution/topics-equivalents-decay-policy.md +51 -0
  644. package/docs/examples/agent-user.example.md +3 -1
  645. package/docs/featured-skills.md +95 -0
  646. package/docs/getting-started-by-role.md +19 -1
  647. package/docs/getting-started.md +5 -4
  648. package/docs/guidelines/agent-infra/ask-when-uncertain-demos.md +1 -1
  649. package/docs/guidelines/agent-infra/installed-tools-manifest.md +11 -8
  650. package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +10 -1
  651. package/docs/guidelines/agent-infra/rule-type-governance.md +2 -2
  652. package/docs/guidelines/agent-infra/tool-integration.md +1 -1
  653. package/docs/guidelines/docs/readme-size-and-splitting.md +53 -1
  654. package/docs/guidelines/php/api-design.md +1 -1
  655. package/docs/guidelines/prompt-templates.md +2 -2
  656. package/docs/hook-payload-capture.md +3 -3
  657. package/docs/installation.md +39 -18
  658. package/docs/maintainers/dev-mode.md +105 -0
  659. package/docs/migrations/commands-1.15.0.md +3 -3
  660. package/docs/parity/bench-ruflo.json +1 -1
  661. package/docs/parity/ruflo.md +3 -3
  662. package/docs/profiles.md +1 -1
  663. package/docs/quality.md +2 -2
  664. package/docs/recruits/_template.md +3 -3
  665. package/docs/setup/enterprise-and-offline.md +3 -3
  666. package/docs/setup/mcp-server-docker.md +5 -3
  667. package/docs/setup/per-ide/claude-desktop.md +3 -2
  668. package/docs/skills-catalog.md +62 -18
  669. package/docs/wizard.md +156 -0
  670. package/llms.txt +61 -17
  671. package/package.json +63 -3
  672. package/scripts/__pycache__/validate_frontmatter.cpython-312.pyc +0 -0
  673. package/scripts/_archive/README.md +2 -2
  674. package/scripts/_archive/_p4_migrate.py +1 -1
  675. package/scripts/_cli/cmd_doctor.py +155 -7
  676. package/scripts/_cli/cmd_explain.py +108 -3
  677. package/scripts/_cli/cmd_migrate.py +2 -2
  678. package/scripts/_cli/cmd_migrate_to_global.py +415 -0
  679. package/scripts/_cli/cmd_settings_migrate.py +146 -0
  680. package/scripts/_cli/explain_last/__init__.py +122 -0
  681. package/scripts/_cli/explain_last/assumptions.py +59 -0
  682. package/scripts/_cli/explain_last/council.py +105 -0
  683. package/scripts/_cli/explain_last/halt.py +44 -0
  684. package/scripts/_cli/explain_last/inputs.py +125 -0
  685. package/scripts/_cli/explain_last/memory.py +94 -0
  686. package/scripts/_cli/explain_last/provider.py +52 -0
  687. package/scripts/_cli/explain_last/render.py +52 -0
  688. package/scripts/_cli/explain_last/route.py +59 -0
  689. package/scripts/_cli/explain_last/scrubber.py +105 -0
  690. package/scripts/_cli/explain_last/sections/__init__.py +35 -0
  691. package/scripts/_cli/explain_last/sections/assumptions.py +21 -0
  692. package/scripts/_cli/explain_last/sections/council.py +27 -0
  693. package/scripts/_cli/explain_last/sections/halt.py +31 -0
  694. package/scripts/_cli/explain_last/sections/header.py +24 -0
  695. package/scripts/_cli/explain_last/sections/inputs.py +27 -0
  696. package/scripts/_cli/explain_last/sections/memory.py +21 -0
  697. package/scripts/_cli/explain_last/sections/pack.py +16 -0
  698. package/scripts/_cli/explain_last/sections/provider.py +26 -0
  699. package/scripts/_cli/explain_last/sections/route.py +22 -0
  700. package/scripts/_cli/explain_last/state_loader.py +76 -0
  701. package/scripts/_dispatch.bash +987 -0
  702. package/scripts/_lib/__pycache__/__init__.cpython-312.pyc +0 -0
  703. package/scripts/_lib/__pycache__/agent_src.cpython-312.pyc +0 -0
  704. package/scripts/_lib/agent_settings.py +7 -4
  705. package/scripts/_lib/agent_src.py +157 -0
  706. package/scripts/_lib/agents_overlay.py +3 -3
  707. package/scripts/_phase4_bucket.py +210 -0
  708. package/scripts/agent-config +50 -947
  709. package/scripts/ai-video/adapters/higgsfield.sh +1 -1
  710. package/scripts/ai-video/adapters/sora.sh +1 -1
  711. package/scripts/ai-video/test-pipeline.sh +2 -2
  712. package/scripts/ai_council/_default_prices.py +5 -5
  713. package/scripts/ai_council/advisors.py +1 -1
  714. package/scripts/ai_council/clients.py +2 -2
  715. package/scripts/ai_council/compile_corpus.py +9 -8
  716. package/scripts/ai_council/config.py +3 -3
  717. package/scripts/ai_council/events_log.py +8 -4
  718. package/scripts/ai_council/low_impact_corpus.py +1 -1
  719. package/scripts/ai_council/low_impact_intake.py +1 -1
  720. package/scripts/ai_council/one_off_archive/2026-05/_one_off_budget_v2_audit.py +2 -2
  721. package/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_optimization.py +1 -1
  722. package/scripts/ai_council/one_off_archive/2026-05/_one_off_tier_retrofit.py +3 -3
  723. package/scripts/ai_council/pricing.py +8 -7
  724. package/scripts/ai_council/probation_gate.py +1 -1
  725. package/scripts/ai_council/redact_low_impact_entry.py +1 -1
  726. package/scripts/ai_council/session.py +13 -13
  727. package/scripts/ai_council/shadow_dispatch.py +2 -2
  728. package/scripts/annotate_discovery.py +149 -0
  729. package/scripts/audit_adr_coverage.py +1 -1
  730. package/scripts/audit_auto_rules.py +2 -2
  731. package/scripts/audit_cloud_compatibility.py +1 -1
  732. package/scripts/audit_command_surface.py +2 -2
  733. package/scripts/audit_likelihood.py +4 -4
  734. package/scripts/audit_overlap.py +3 -3
  735. package/scripts/audit_skill_descriptions.py +18 -6
  736. package/scripts/audit_user_type_axis.py +1 -1
  737. package/scripts/build_discovery_manifest.py +658 -0
  738. package/scripts/build_mcp_registry_manifest.py +181 -0
  739. package/scripts/build_rule_trigger_matrix.py +2 -2
  740. package/scripts/capture_showcase_session.py +1 -1
  741. package/scripts/chat_history.py +5 -5
  742. package/scripts/check_always_budget.py +7 -2
  743. package/scripts/check_artefact_checksums.py +104 -0
  744. package/scripts/check_cluster_patterns.py +20 -4
  745. package/scripts/check_command_count_messaging.py +33 -14
  746. package/scripts/check_council_layout.py +26 -20
  747. package/scripts/check_council_references.py +53 -14
  748. package/scripts/check_discovery_determinism.py +70 -0
  749. package/scripts/check_kernel_rule_bundle.py +2 -2
  750. package/scripts/check_no_roadmap_refs.py +2 -2
  751. package/scripts/check_one_off_location.py +1 -1
  752. package/scripts/check_overlay_cascade_subdirs.py +7 -3
  753. package/scripts/check_public_links.py +2 -2
  754. package/scripts/check_references.py +19 -23
  755. package/scripts/check_release_includes_discovery.py +61 -0
  756. package/scripts/check_reply_consistency.py +32 -9
  757. package/scripts/check_template_pin_drift.py +24 -7
  758. package/scripts/check_token_optimizer_freshness.py +18 -3
  759. package/scripts/ci_summary.py +2 -2
  760. package/scripts/ci_time_ratio.py +1 -1
  761. package/scripts/command_suggester/__init__.py +1 -1
  762. package/scripts/compile_router.py +34 -2
  763. package/scripts/compress.py +162 -44
  764. package/scripts/config/presets.py +19 -1
  765. package/scripts/config/profiles.py +16 -1
  766. package/scripts/context_hygiene_hook.py +2 -2
  767. package/scripts/council_cli.py +22 -22
  768. package/scripts/council_prune.py +3 -3
  769. package/scripts/discovery_stats.py +70 -0
  770. package/scripts/expected_perms.json +47 -0
  771. package/scripts/extract_audit_patterns.py +2 -2
  772. package/scripts/gen_discovery_baseline.py +127 -0
  773. package/scripts/generate_index.py +78 -46
  774. package/scripts/generate_ownership_matrix.py +99 -44
  775. package/scripts/generate_pack_manifests.py +183 -0
  776. package/scripts/hook_manifest.yaml +5 -5
  777. package/scripts/hooks/cline-dispatcher.sh +1 -1
  778. package/scripts/hooks/cowork-dispatcher.sh +1 -1
  779. package/scripts/hooks/dispatch_hook.py +3 -3
  780. package/scripts/hooks/gemini-dispatcher.sh +1 -1
  781. package/scripts/hooks/replay_hook.py +1 -1
  782. package/scripts/hooks/state_io.py +5 -5
  783. package/scripts/hooks_doctor.py +4 -4
  784. package/scripts/install +18 -1
  785. package/scripts/install-hooks.sh +2 -2
  786. package/scripts/install.py +937 -62
  787. package/scripts/install.sh +147 -27
  788. package/scripts/inventory_frontmatter.py +1 -1
  789. package/scripts/lint_agents_layout.py +183 -0
  790. package/scripts/lint_agents_md.py +1 -1
  791. package/scripts/lint_archived_skills.py +35 -19
  792. package/scripts/lint_artefact_frontmatter.py +180 -0
  793. package/scripts/lint_bench_corpus.py +14 -2
  794. package/scripts/lint_command_tiers.py +15 -2
  795. package/scripts/lint_discovery_manifest.py +136 -0
  796. package/scripts/lint_discovery_vocabulary.py +148 -0
  797. package/scripts/lint_explain_trace.py +80 -0
  798. package/scripts/lint_featured_skills.py +139 -0
  799. package/scripts/lint_framework_leakage.py +33 -6
  800. package/scripts/lint_framework_leakage_allowlist.json +63 -62
  801. package/scripts/lint_ghostwriter_source.py +1 -1
  802. package/scripts/lint_global_paths.py +147 -0
  803. package/scripts/lint_load_context.py +3 -3
  804. package/scripts/lint_mcp_registry_manifest.py +69 -0
  805. package/scripts/lint_media_policy_linkage.py +6 -6
  806. package/scripts/lint_orchestration_dsl.py +6 -3
  807. package/scripts/lint_pack_boundaries.py +147 -0
  808. package/scripts/lint_pack_first_win.py +103 -0
  809. package/scripts/lint_positioning.py +143 -0
  810. package/scripts/lint_readme_jargon.py +131 -0
  811. package/scripts/lint_readme_size.py +33 -0
  812. package/scripts/lint_rule_interactions.py +23 -5
  813. package/scripts/lint_rule_tiers.py +14 -5
  814. package/scripts/lint_skill_tools.py +1 -1
  815. package/scripts/lint_topics_yaml.py +89 -0
  816. package/scripts/lint_trust_coherence.py +212 -0
  817. package/scripts/mcp_server/consumer_tool_catalog.json +3 -3
  818. package/scripts/mcp_server/telemetry.py +2 -2
  819. package/scripts/mcp_server/tools.py +27 -11
  820. package/scripts/mcp_telemetry_health.py +2 -2
  821. package/scripts/mcp_telemetry_store.py +1 -1
  822. package/scripts/measure_augment_budget.py +3 -3
  823. package/scripts/measure_density.py +2 -2
  824. package/scripts/measure_frugality_savings.py +3 -3
  825. package/scripts/measure_roadmap_trajectory.py +1 -1
  826. package/scripts/measure_rule_budget.py +25 -7
  827. package/scripts/memory_report.py +1 -1
  828. package/scripts/migrate_command_suggestions.py +3 -3
  829. package/scripts/minimal_safe_diff_hook.py +1 -1
  830. package/scripts/move_artefact.py +143 -0
  831. package/scripts/new_skill.py +148 -0
  832. package/scripts/onboarding_gate_hook.py +4 -4
  833. package/scripts/plan_physical_move.py +353 -0
  834. package/scripts/prepack-check.mjs +62 -0
  835. package/scripts/probe_projection_fidelity.py +2 -2
  836. package/scripts/refine_ticket_detect.py +31 -8
  837. package/scripts/schemas/command.schema.json +45 -1
  838. package/scripts/schemas/persona.schema.json +1 -1
  839. package/scripts/schemas/rule.schema.json +44 -4
  840. package/scripts/schemas/skill.schema.json +41 -1
  841. package/scripts/score_skill_selection.py +1 -1
  842. package/scripts/skill_collision_clusters.py +1 -1
  843. package/scripts/skill_linter.py +250 -120
  844. package/scripts/skill_overlap.py +1 -1
  845. package/scripts/skill_tools/run_block_d_eval.py +1 -1
  846. package/scripts/skill_trigger_eval.py +28 -8
  847. package/scripts/skill_usage_collect.py +3 -3
  848. package/scripts/skill_usage_report.py +3 -3
  849. package/scripts/smoke/kernel.sh +1 -1
  850. package/scripts/smoke/router.sh +24 -5
  851. package/scripts/smoke/skills.sh +15 -7
  852. package/scripts/smoke_quickstart.py +12 -3
  853. package/scripts/snapshot_agent_outputs.py +144 -0
  854. package/scripts/spotcheck_thin_root.py +1 -1
  855. package/scripts/sync_github_metadata.py +147 -0
  856. package/scripts/sync_gitignore.py +15 -5
  857. package/scripts/update_counts.py +45 -17
  858. package/scripts/update_prices.py +4 -3
  859. package/scripts/validate_decision_engine.py +9 -1
  860. package/scripts/validate_discovery_manifest.py +94 -0
  861. package/scripts/validate_frontmatter.py +39 -20
  862. package/scripts/verify_before_complete_hook.py +1 -1
  863. package/scripts/verify_physical_move.py +185 -0
  864. package/scripts/verify_roadmap_closure.py +1 -1
  865. package/templates/agent-user.md +34 -0
  866. package/templates/agent-user.yml +21 -0
  867. package/templates/minimal/agents-overrides-readme.md +46 -0
  868. package/templates/minimal/overrides-gitkeep +2 -0
  869. package/.agent-src/commands/onboard.md +0 -467
  870. package/templates/minimal/agents-gitkeep +0 -2
@@ -9,7 +9,7 @@
9
9
  # Contract: scripts/ai-video/lib/adapter-contract.md
10
10
  # Provider: top-level <provider id="higgsfield" kind="video"> in
11
11
  # agents/.ai-video.xml. Preset → motion-choreographer profile mapping
12
- # is documented in agents/ai-video/prompts/motion-choreography.md
12
+ # is documented in agents/reference/ai-video/prompts/motion-choreography.md
13
13
  # (Phase 6).
14
14
  #
15
15
  # Lifecycle: experimental — capability-discovery path conformant; no
@@ -4,7 +4,7 @@
4
4
  # Capability: audio=native. Sora-class models produce muxed MP4 with
5
5
  # dialogue + ambient sound; we pass the audio block straight through.
6
6
  # Structural-prompt path informed by upstream `awesome-sora-prompts`
7
- # (attribution in agents/ai-video/prompts/cinematic-blueprint.md).
7
+ # (attribution in agents/reference/ai-video/prompts/cinematic-blueprint.md).
8
8
  #
9
9
  # Contract: scripts/ai-video/lib/adapter-contract.md
10
10
  # Provider: top-level <provider id="sora" kind="video"> in
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env bash
2
2
  # test-pipeline.sh — offline smoke test for /video:* against
3
- # agents/ai-video/examples/banana-arc/. Dry-run only; no network.
3
+ # agents/reference/ai-video/examples/banana-arc/. Dry-run only; no network.
4
4
  #
5
5
  # Asserts (per agents/roadmaps/ai-video-pipeline.md Phase 6 Step 3):
6
6
  # 1. parse-blueprint.sh output matches the committed expected.json
@@ -27,7 +27,7 @@ set -uo pipefail
27
27
 
28
28
  SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
29
29
  ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
30
- PROJECT="$ROOT/agents/ai-video/examples/banana-arc"
30
+ PROJECT="$ROOT/agents/reference/ai-video/examples/banana-arc"
31
31
 
32
32
  PASS=0
33
33
  FAIL=0
@@ -1,15 +1,15 @@
1
1
  """Shipped baseline prices for the AI Council.
2
2
 
3
- This file is the bootstrap source for `agents/.agent-prices.md` when
4
- the runtime file is missing. It is also the network-fallback source for
5
- `scripts/update_prices.py` when the upstream feed (LiteLLM) is
6
- unreachable.
3
+ This file is the bootstrap source for `agents/runtime/.agent-prices.md`
4
+ when the runtime file is missing. It is also the network-fallback
5
+ source for `scripts/update_prices.py` when the upstream feed (LiteLLM)
6
+ is unreachable.
7
7
 
8
8
  Prices are USD per **1 000 000** tokens. Models are identified by the
9
9
  exact `model:` string the user puts into `.agent-settings.yml`.
10
10
 
11
11
  Numbers below are a hand-curated snapshot — they will drift. The
12
- runtime never reads them directly once `agents/.agent-prices.md`
12
+ runtime never reads them directly once `agents/runtime/.agent-prices.md`
13
13
  exists; the weekly refresh and user edits are the live source of truth.
14
14
  """
15
15
 
@@ -1,6 +1,6 @@
1
1
  """Thinking-style advisors — replace-mode call planning (Phase 6).
2
2
 
3
- When `agents/.ai-council.yml` enables an advisor (e.g. `contrarian`
3
+ When `agents/settings/.ai-council.yml` enables an advisor (e.g. `contrarian`
4
4
  bound to `member: anthropic`), the orchestrator REPLACES the matching
5
5
  plain-member call with an advisor-persona call on the same provider.
6
6
  Same total call count as a plain run; bounded extra cost beyond the
@@ -324,7 +324,7 @@ class GeminiClient(ExternalAIClient):
324
324
  if api_key is None:
325
325
  raise RuntimeError(
326
326
  "GeminiClient requires explicit api_key or injected client. "
327
- "Use `api_key_ref: env:GEMINI_API_KEY` in agents/.ai-council.yml."
327
+ "Use `api_key_ref: env:GEMINI_API_KEY` in agents/settings/.ai-council.yml."
328
328
  )
329
329
  try:
330
330
  from google import genai # type: ignore[import-not-found]
@@ -658,7 +658,7 @@ class CliClient(ExternalAIClient):
658
658
  raise CliClientError(
659
659
  f"{type(self).__name__}: binary {self.default_binary!r} "
660
660
  f"not found on PATH. Install the provider CLI or set "
661
- f"`members.{self.name}.binary:` in agents/.ai-council.yml."
661
+ f"`members.{self.name}.binary:` in agents/settings/.ai-council.yml."
662
662
  )
663
663
  self.binary = resolved
664
664
 
@@ -2,9 +2,10 @@
2
2
 
3
3
  Step-10 — see ``agents/roadmaps/step-10-corpus-yaml-lockfile.md``.
4
4
 
5
- Markdown (`agents/low-impact-decisions.md`) stays the human-authored
6
- source-of-truth for PR review. This script reads it through the
7
- hardened :func:`scripts.ai_council.low_impact_corpus.parse_corpus_strict`
5
+ Markdown (`agents/decisions/low-impact-decisions.md`) stays the
6
+ human-authored source-of-truth for PR review. This script reads it
7
+ through the hardened
8
+ :func:`scripts.ai_council.low_impact_corpus.parse_corpus_strict`
8
9
  parser and writes a YAML lockfile that becomes the **runtime**
9
10
  source-of-truth. The pattern mirrors `.agent-src/` vs
10
11
  `.agent-src.uncompressed/`: human edits Markdown, `task consistency`
@@ -14,7 +15,7 @@ YAML schema (`schema_version: 1`)::
14
15
 
15
16
  schema_version: 1
16
17
  provenance:
17
- source_path: agents/low-impact-decisions.md
18
+ source_path: agents/decisions/low-impact-decisions.md
18
19
  source_sha256: <hex> # SHA-256 of the parsed Markdown bytes
19
20
  last_upstreamed: <40-hex sha> # mirrored from the Markdown footer
20
21
  validated:
@@ -61,8 +62,8 @@ SCHEMA_VERSION = 1
61
62
 
62
63
  _LAST_UPSTREAMED_RE = re.compile(r"^last-upstreamed:\s*([0-9a-f]{40})\s*$", re.MULTILINE)
63
64
 
64
- _DEFAULT_SOURCE = Path("agents/low-impact-decisions.md")
65
- _DEFAULT_OUT = Path("agents/low-impact-decisions.lock.yaml")
65
+ _DEFAULT_SOURCE = Path("agents/decisions/low-impact-decisions.md")
66
+ _DEFAULT_OUT = Path("agents/decisions/low-impact-decisions.lock.yaml")
66
67
 
67
68
 
68
69
  def _entry_to_dict(entry: CorpusEntry) -> dict[str, Any]:
@@ -84,8 +85,8 @@ def _normalise_source_path(path: Path) -> str:
84
85
 
85
86
  Absolute paths inside the current working directory are stripped to
86
87
  their relative form so the committed lockfile carries
87
- ``agents/low-impact-decisions.md`` regardless of how the compiler
88
- was invoked (CLI default, absolute path from a test, etc.).
88
+ ``agents/decisions/low-impact-decisions.md`` regardless of how the
89
+ compiler was invoked (CLI default, absolute path from a test, etc.).
89
90
  """
90
91
  try:
91
92
  rel = path.resolve().relative_to(Path.cwd().resolve())
@@ -1,6 +1,6 @@
1
1
  """Council configuration loader — single source of truth.
2
2
 
3
- Reads ``agents/.ai-council.yml`` per the contract in
3
+ Reads ``agents/settings/.ai-council.yml`` per the contract in
4
4
  ``docs/contracts/ai-council-config.md``. Replaces the fragmented
5
5
  ``.agent-settings.yml`` ``ai_council`` block (Phase 0 migration).
6
6
 
@@ -49,7 +49,7 @@ _RAW_KEY_PREFIXES = ("sk-", "sk-ant-", "ya29.", "AIza", "xai-", "pplx-", "gsk_")
49
49
 
50
50
 
51
51
  class CouncilConfigError(RuntimeError):
52
- """Raised when ``agents/.ai-council.yml`` violates the schema."""
52
+ """Raised when ``agents/settings/.ai-council.yml`` violates the schema."""
53
53
 
54
54
 
55
55
  @dataclass(frozen=True)
@@ -380,7 +380,7 @@ class LowImpactConfig:
380
380
  for shadow-mode logging (Phase 10). At ``0.0`` shadow is off; at
381
381
  ``1.0`` every solo decision is also dispatched to the full
382
382
  council and the verdicts are compared in
383
- ``agents/council-shadow-log.jsonl``. Must be in ``[0.0, 1.0]``.
383
+ ``agents/runtime/council/shadow-log.jsonl``. Must be in ``[0.0, 1.0]``.
384
384
 
385
385
  ``solo_confidence_floor`` is the auto-escalation threshold for
386
386
  solo-member responses (step-9 P13). When the dispatcher extracts
@@ -1,7 +1,7 @@
1
1
  """Persistent council events log (step-8 phase 3).
2
2
 
3
3
  Single-function module that appends one JSON line per council event to
4
- ``<project_root>/agents/council-events.log``. Schema v1 carries the
4
+ ``<project_root>/agents/runtime/council/events.log``. Schema v1 carries the
5
5
  minimum needed to answer the "why did the council skip / block this?"
6
6
  question at retro time without leaking prompt content.
7
7
 
@@ -9,7 +9,7 @@ Privacy floor:
9
9
  ``original_ask`` is never written verbatim — the caller passes the
10
10
  raw string, and :func:`append_event` writes ``sha256(value)[:12]``
11
11
  as ``original_ask_hash``. Mirrors the privacy floor in
12
- ``agents/low-impact-decisions.md``.
12
+ ``agents/decisions/low-impact-decisions.md``.
13
13
 
14
14
  Kill-switch:
15
15
  ``AGENT_CONFIG_NO_EVENTS_LOG=1`` short-circuits :func:`append_event`
@@ -47,7 +47,11 @@ _KILL_SWITCH_ENV = "AGENT_CONFIG_NO_EVENTS_LOG"
47
47
  #: above ``scripts/ai_council/``). Callers can override via
48
48
  #: ``log_path=`` for tests.
49
49
  _DEFAULT_LOG_PATH = (
50
- Path(__file__).resolve().parents[2] / "agents" / "council-events.log"
50
+ Path(__file__).resolve().parents[2]
51
+ / "agents"
52
+ / "runtime"
53
+ / "council"
54
+ / "events.log"
51
55
  )
52
56
 
53
57
 
@@ -83,7 +87,7 @@ def append_event(
83
87
  pass through verbatim — callers should not abuse this for
84
88
  free-form payloads (privacy floor).
85
89
  log_path: Override for tests. Defaults to
86
- ``<project_root>/agents/council-events.log``.
90
+ ``<project_root>/agents/runtime/council/events.log``.
87
91
 
88
92
  Returns:
89
93
  ``True`` when a line was written; ``False`` when the kill-switch
@@ -1,4 +1,4 @@
1
- """Hardened parser for ``agents/low-impact-decisions.md`` (step-9 P4).
1
+ """Hardened parser for ``agents/decisions/low-impact-decisions.md`` (step-9 P4).
2
2
 
3
3
  Replaces the silent-skip behaviour of the inline regex in
4
4
  ``necessity.load_validated_phrases`` with a typed-error contract.
@@ -1,4 +1,4 @@
1
- """Intake trigger + dedup for `agents/low-impact-decisions.md` (Phase 12).
1
+ """Intake trigger + dedup for `agents/decisions/low-impact-decisions.md` (Phase 12).
2
2
 
3
3
  User signals "leichte Frage" / "low-impact question" / equivalents
4
4
  (see :data:`TRIGGER_PHRASES`); the host agent collects the
@@ -2,7 +2,7 @@
2
2
 
3
3
  Phase 4 of road-to-context-layer-maturity selected two 4d-trim paths
4
4
  (`direct-answers`, `no-cheap-questions`) from a fixed option set
5
- documented in agents/contexts/budget-v2-matrix.md and shipped them.
5
+ documented in agents/settings/contexts/budget-v2-matrix.md and shipped them.
6
6
  Exit-gate actuals (run 2026-05-04): total 44,928 / 49,000 chars
7
7
  (91.7 %, 4,072 chars headroom) — ≥ 4,000 headroom goal hit. Top-3
8
8
  sum unchanged. Safety-floor rules untouched.
@@ -39,7 +39,7 @@ from scripts.ai_council.session import SessionManifest, save as save_session
39
39
  REPO_ROOT = Path(__file__).resolve().parents[4]
40
40
  ARTEFACTS = [
41
41
  REPO_ROOT / "docs/contracts/load-context-budget-model.md",
42
- REPO_ROOT / "agents/contexts/budget-v2-matrix.md",
42
+ REPO_ROOT / "agents/settings/contexts/budget-v2-matrix.md",
43
43
  REPO_ROOT / ".agent-src.uncompressed/rules/direct-answers.md",
44
44
  REPO_ROOT / ".agent-src.uncompressed/rules/no-cheap-questions.md",
45
45
  ]
@@ -1,7 +1,7 @@
1
1
  """One-off council run for road-to-structural-optimization.md.
2
2
 
3
3
  Invokes the council in `design` mode with Anthropic + OpenAI members.
4
- Saves the session under agents/contexts/ai-council-sessions/.
4
+ Saves the session under agents/settings/contexts/ai-council-sessions/.
5
5
 
6
6
  Invocation:
7
7
  .venv/bin/python -m scripts.ai_council._one_off_structural_optimization
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env python3
2
2
  """One-off — tier-bulk-retrofit (Phase 2.1 + 2.2 of road-to-feedback-consolidation).
3
3
 
4
- Parses agents/contexts/rule-trigger-matrix.md, emits tmp/tier-classification.md,
4
+ Parses agents/settings/contexts/rule-trigger-matrix.md, emits tmp/tier-classification.md,
5
5
  and inserts a `tier:` frontmatter key into every rule under
6
6
  .agent-src.uncompressed/rules/. Idempotent — re-runs are a no-op when a rule
7
7
  already declares the same tier value.
@@ -62,11 +62,11 @@ def write_spreadsheet(classifications: dict[str, tuple[str, str]]) -> None:
62
62
  lines = [
63
63
  "# Tier classification — Phase 2.1 of road-to-feedback-consolidation",
64
64
  "",
65
- "Source: `agents/contexts/rule-trigger-matrix.md` (manual classifications",
65
+ "Source: `agents/settings/contexts/rule-trigger-matrix.md` (manual classifications",
66
66
  "in `scripts/build_rule_trigger_matrix.py`'s `CLASSIFICATION` table).",
67
67
  "Generated by `scripts/_one_off/2026-05/_one_off_tier-retrofit.py`.",
68
68
  "",
69
- "Tier rubric: see `agents/contexts/hardening-pattern.md`.",
69
+ "Tier rubric: see `agents/settings/contexts/hardening-pattern.md`.",
70
70
  "",
71
71
  f"Total: {len(classifications)} rules.",
72
72
  "",
@@ -1,19 +1,19 @@
1
1
  """Runtime pricing layer for the AI Council.
2
2
 
3
- Reads `agents/.agent-prices.md` from the repo root, parses YAML
3
+ Reads `agents/runtime/.agent-prices.md` from the repo root, parses YAML
4
4
  frontmatter and the Markdown table, and exposes:
5
5
 
6
- - `load_prices()` — parse `agents/.agent-prices.md` (bootstraps if missing)
6
+ - `load_prices()` — parse `agents/runtime/.agent-prices.md` (bootstraps if missing)
7
7
  - `estimate_input_tokens()` — chars / 4 heuristic
8
8
  - `estimate_cost()` — input + output USD for a single member
9
9
  - `is_stale()` — True if `last_updated` is older than the
10
10
  most recent UTC Monday 00:00
11
- - `bootstrap_from_defaults()` — write a fresh `agents/.agent-prices.md`
11
+ - `bootstrap_from_defaults()` — write a fresh `agents/runtime/.agent-prices.md`
12
12
  from `_default_prices.DEFAULT_PRICES`
13
13
 
14
14
  The orchestrator never reads `_default_prices` directly. It always
15
15
  goes through `load_prices()` so user edits to
16
- `agents/.agent-prices.md` win.
16
+ `agents/runtime/.agent-prices.md` win.
17
17
  """
18
18
 
19
19
  from __future__ import annotations
@@ -25,7 +25,7 @@ from pathlib import Path
25
25
  from scripts.ai_council._default_prices import DEFAULT_PRICES, LAST_UPDATED, as_rows
26
26
 
27
27
  REPO_ROOT = Path(__file__).resolve().parents[2]
28
- PRICES_FILE = REPO_ROOT / "agents" / ".agent-prices.md"
28
+ PRICES_FILE = REPO_ROOT / "agents" / "runtime" / ".agent-prices.md"
29
29
 
30
30
  # Heuristic: 1 token ≈ 4 characters of English text. OpenAI's tiktoken
31
31
  # is more accurate but pulls in a heavy dep we explicitly avoid.
@@ -116,14 +116,15 @@ def is_stale(table: PriceTable, now: _dt.datetime | None = None) -> bool:
116
116
 
117
117
 
118
118
  def load_prices(path: Path = PRICES_FILE) -> PriceTable:
119
- """Parse `agents/.agent-prices.md`; bootstrap from defaults if missing."""
119
+ """Parse `agents/runtime/.agent-prices.md`; bootstrap from defaults if missing."""
120
120
  if not path.exists():
121
121
  bootstrap_from_defaults(path)
122
122
  return _parse(path.read_text(encoding="utf-8"))
123
123
 
124
124
 
125
125
  def bootstrap_from_defaults(path: Path = PRICES_FILE) -> None:
126
- """Write a fresh `agents/.agent-prices.md` from `_default_prices.py`."""
126
+ """Write a fresh `agents/runtime/.agent-prices.md` from `_default_prices.py`."""
127
+ path.parent.mkdir(parents=True, exist_ok=True)
127
128
  rows = as_rows()
128
129
  body = _render_markdown(LAST_UPDATED, "shipped-default", rows)
129
130
  path.write_text(body, encoding="utf-8")
@@ -1,4 +1,4 @@
1
- """Probation promote-and-prune for ``agents/low-impact-decisions.md``.
1
+ """Probation promote-and-prune for ``agents/decisions/low-impact-decisions.md``.
2
2
 
3
3
  Phase 12 § Step 3. Runs at council startup AND after every intake
4
4
  append. Idempotent — a second run on an unchanged corpus is a no-op.
@@ -1,4 +1,4 @@
1
- """Privacy floor for `agents/low-impact-decisions.md` (Phase 12).
1
+ """Privacy floor for `agents/decisions/low-impact-decisions.md` (Phase 12).
2
2
 
3
3
  Non-bypassable redactor invoked on intake (write-side) AND on
4
4
  upstream (`/learn-low-impact`, leave-the-repo side). Both gates call
@@ -1,7 +1,7 @@
1
1
  """Session persistence for council consultations (D2).
2
2
 
3
3
  Every `/council` call that completes (success or partial) writes an
4
- audit artefact under `agents/council-sessions/<UTC-timestamp>/`:
4
+ audit artefact under `agents/runtime/council/sessions/<UTC-timestamp>/`:
5
5
 
6
6
  - `manifest.json` — input mode, members, token + USD totals, original
7
7
  ask, neutrality preamble fingerprint.
@@ -15,7 +15,7 @@ Hard rules:
15
15
  swallowed; the council is text-only and the report is the contract.
16
16
  - Never writes secrets. The bundle has already been redacted by
17
17
  `bundler.py` before the orchestrator receives it.
18
- - Never writes outside `agents/council-sessions/`. Path traversal in
18
+ - Never writes outside `agents/runtime/council/sessions/`. Path traversal in
19
19
  the timestamp is impossible (we generate it from `datetime.utcnow`).
20
20
  """
21
21
 
@@ -34,9 +34,9 @@ from scripts.ai_council.clients import CouncilResponse
34
34
  from scripts.ai_council.orchestrator import render
35
35
 
36
36
  REPO_ROOT = Path(__file__).resolve().parents[2]
37
- SESSIONS_DIR = REPO_ROOT / "agents" / "council-sessions"
38
- QUESTIONS_DIR = REPO_ROOT / "agents" / "council-questions"
39
- RESPONSES_DIR = REPO_ROOT / "agents" / "council-responses"
37
+ SESSIONS_DIR = REPO_ROOT / "agents" / "runtime" / "council" / "sessions"
38
+ QUESTIONS_DIR = REPO_ROOT / "agents" / "runtime" / "council" / "questions"
39
+ RESPONSES_DIR = REPO_ROOT / "agents" / "runtime" / "council" / "responses"
40
40
  SETTINGS_FILE = REPO_ROOT / ".agent-settings.yml"
41
41
 
42
42
  # Default retention for all council artefacts (questions, responses,
@@ -190,9 +190,9 @@ def prune_old_artifacts(
190
190
  ) -> list[Path]:
191
191
  """Delete files and timestamp-less directories older than `retention_days`.
192
192
 
193
- mtime-based — used for `agents/council-questions/`,
194
- `agents/council-responses/`, and root-level files in
195
- `agents/council-sessions/` that don't match the
193
+ mtime-based — used for `agents/runtime/council/questions/`,
194
+ `agents/runtime/council/responses/`, and root-level files in
195
+ `agents/runtime/council/sessions/` that don't match the
196
196
  timestamp-subdir convention handled by `prune_old_sessions`.
197
197
 
198
198
  Walks the directory non-recursively. For files: deletes when
@@ -255,9 +255,9 @@ def prune_all_council_artifacts(
255
255
  """
256
256
  root = repo_root or REPO_ROOT
257
257
  days = _load_retention_days() if retention_days is None else retention_days
258
- sessions = root / "agents" / "council-sessions"
259
- questions = root / "agents" / "council-questions"
260
- responses = root / "agents" / "council-responses"
258
+ sessions = root / "agents" / "runtime" / "council" / "sessions"
259
+ questions = root / "agents" / "runtime" / "council" / "questions"
260
+ responses = root / "agents" / "runtime" / "council" / "responses"
261
261
  return {
262
262
  "sessions": (
263
263
  prune_old_sessions(sessions, days, now=now)
@@ -285,8 +285,8 @@ def save(
285
285
 
286
286
  `retention_days` controls auto-pruning of older council artefacts
287
287
  after the new one is written — sibling sessions plus, when
288
- `sessions_dir` is not overridden, files in `council-questions/`
289
- and `council-responses/`. `None` reads the value
288
+ `sessions_dir` is not overridden, files in `runtime/council/questions/`
289
+ and `runtime/council/responses/`. `None` reads the value
290
290
  from `.agent-settings.yml` (`ai_council.session_retention_days`,
291
291
  default `7`); `0` disables pruning.
292
292
 
@@ -3,7 +3,7 @@
3
3
  When ``low_impact.dispatch: single`` is active, a Bernoulli-sampled subset
4
4
  of decisions is shadowed through the full council so disagreement between
5
5
  the solo verdict and the council verdict can be measured. The shadow log
6
- lives at ``agents/council-shadow-log.jsonl`` and is subject to the same
6
+ lives at ``agents/runtime/council/shadow-log.jsonl`` and is subject to the same
7
7
  privacy floor as the low-impact corpus: redactor-refused entries are
8
8
  dropped, not softened.
9
9
 
@@ -23,7 +23,7 @@ from typing import Iterable
23
23
 
24
24
  from scripts.ai_council.bundler import redact
25
25
 
26
- SHADOW_LOG_PATH = Path("agents/council-shadow-log.jsonl")
26
+ SHADOW_LOG_PATH = Path("agents/runtime/council/shadow-log.jsonl")
27
27
 
28
28
  SLO_THRESHOLD_WARN = 0.05
29
29
  SLO_THRESHOLD_BREACH = 0.08
@@ -0,0 +1,149 @@
1
+ #!/usr/bin/env python3
2
+ """R3 Phase 4 mass-annotator — discovery frontmatter helper.
3
+
4
+ Walks a list of artefacts in `.agent-src.uncompressed/` and:
5
+ 1. Inserts the 5 ADR-013 frontmatter keys (workspaces, packs, lifecycle,
6
+ trust, install) before the closing `---`, deterministically.
7
+ 2. Mirrors the new keys into the matching `.agent-src/` counterpart so
8
+ the compressed projection stays consistent (body preserved).
9
+ 3. Refreshes `.compression-hashes.json` for each touched source path so
10
+ `task check-compression` stays green.
11
+
12
+ Idempotent: re-runs leave already-annotated files untouched.
13
+
14
+ Mapping table (`PACK_MAP`) is the council-locked authority. See
15
+ `agents/runtime/council/responses/r3-phase-4-7-execution.md`.
16
+ """
17
+ from __future__ import annotations
18
+
19
+ import argparse
20
+ import hashlib
21
+ import json
22
+ import re
23
+ import sys
24
+ from pathlib import Path
25
+
26
+ ROOT = Path(__file__).resolve().parents[1]
27
+ SRC = ROOT / ".agent-src.uncompressed"
28
+ DST = ROOT / ".agent-src"
29
+ HASH_FILE = ROOT / ".compression-hashes.json"
30
+
31
+ # Pack → (workspace_id, trust_level, default_install, removable, lifecycle).
32
+ PACK_DEFAULTS: dict[str, tuple[str, str, bool, bool, str]] = {
33
+ "engineering-base": ("engineering", "core", True, False, "active"),
34
+ "php": ("engineering", "professional", False, True, "active"),
35
+ "laravel": ("engineering", "professional", False, True, "active"),
36
+ "symfony": ("engineering", "professional", False, True, "active"),
37
+ "javascript": ("engineering", "professional", False, True, "active"),
38
+ "typescript": ("engineering", "professional", False, True, "active"),
39
+ "react": ("engineering", "professional", False, True, "active"),
40
+ "nextjs": ("engineering", "professional", False, True, "active"),
41
+ "python": ("engineering", "professional", False, True, "active"),
42
+ "product-basic": ("product", "professional", True, True, "active"),
43
+ "product-discovery": ("product", "professional", False, True, "active"),
44
+ "finance-basic": ("finance", "professional", True, True, "active"),
45
+ "finance-advanced": ("finance", "core", False, True, "active"),
46
+ "gtm-sales": ("gtm", "professional", True, True, "active"),
47
+ "gtm-marketing": ("gtm", "professional", True, True, "active"),
48
+ "ops-people": ("ops", "professional", True, True, "active"),
49
+ "founder-strategy": ("founder", "core", True, True, "active"),
50
+ "small-business": ("small-business", "professional", True, True, "active"),
51
+ "construction": ("construction", "professional", True, True, "active"),
52
+ "ai-video": ("small-business", "experimental", False, True, "experimental"),
53
+ "meta": ("agent-config-maintainer", "core", True, False, "active"),
54
+ }
55
+
56
+ _FM_RE = re.compile(r"^(---\n)(.*?)(\n---\n)", re.DOTALL)
57
+ # Detect any of the 5 new keys at top-level to make the writer idempotent.
58
+ _HAS_NEW_KEYS_RE = re.compile(r"^(workspaces|packs|lifecycle|trust|install):", re.MULTILINE)
59
+
60
+
61
+ def _render_block(pack: str) -> str:
62
+ ws, level, default, removable, lifecycle = PACK_DEFAULTS[pack]
63
+ return (
64
+ f"workspaces:\n"
65
+ f" - {ws}\n"
66
+ f"packs:\n"
67
+ f" - {pack}\n"
68
+ f"lifecycle: {lifecycle}\n"
69
+ f"trust:\n"
70
+ f" level: {level}\n"
71
+ f" confidence: high\n"
72
+ f" human_review_required: false\n"
73
+ f"install:\n"
74
+ f" default: {'true' if default else 'false'}\n"
75
+ f" removable: {'true' if removable else 'false'}"
76
+ )
77
+
78
+
79
+ def _annotate(path: Path, pack: str) -> bool:
80
+ text = path.read_text(encoding="utf-8")
81
+ m = _FM_RE.match(text)
82
+ if not m:
83
+ print(f" skip (no frontmatter): {path.relative_to(ROOT)}", file=sys.stderr)
84
+ return False
85
+ body_fm = m.group(2)
86
+ if _HAS_NEW_KEYS_RE.search(body_fm):
87
+ return False # idempotent
88
+ block = _render_block(pack)
89
+ new_fm = body_fm.rstrip() + "\n" + block
90
+ new_text = m.group(1) + new_fm + m.group(3) + text[m.end():]
91
+ path.write_text(new_text, encoding="utf-8")
92
+ return True
93
+
94
+
95
+ def _mirror_to_compressed(rel: Path, pack: str) -> None:
96
+ src = SRC / rel
97
+ dst = DST / rel
98
+ if not dst.exists():
99
+ return # no compressed counterpart yet (e.g. new file)
100
+ text = dst.read_text(encoding="utf-8")
101
+ m = _FM_RE.match(text)
102
+ if not m:
103
+ return
104
+ body_fm = m.group(2)
105
+ if _HAS_NEW_KEYS_RE.search(body_fm):
106
+ return
107
+ block = _render_block(pack)
108
+ new_fm = body_fm.rstrip() + "\n" + block
109
+ new_text = m.group(1) + new_fm + m.group(3) + text[m.end():]
110
+ dst.write_text(new_text, encoding="utf-8")
111
+
112
+
113
+ def _refresh_hash(rel: Path, hashes: dict) -> None:
114
+ src = SRC / rel
115
+ key = rel.as_posix()
116
+ hashes[key] = hashlib.sha256(src.read_bytes()).hexdigest()
117
+
118
+
119
+ def main(argv: list[str] | None = None) -> int:
120
+ ap = argparse.ArgumentParser(description=__doc__.splitlines()[0])
121
+ ap.add_argument("--pack", required=True, choices=sorted(PACK_DEFAULTS))
122
+ ap.add_argument("paths", nargs="+", help="repo-relative paths under .agent-src.uncompressed/")
123
+ args = ap.parse_args(argv)
124
+
125
+ hashes: dict = json.loads(HASH_FILE.read_text()) if HASH_FILE.exists() else {}
126
+ changed = 0
127
+ for raw in args.paths:
128
+ p = Path(raw)
129
+ if p.is_absolute():
130
+ p = p.relative_to(ROOT)
131
+ if not p.is_relative_to(Path(".agent-src.uncompressed")):
132
+ print(f" skip (not under .agent-src.uncompressed/): {p}", file=sys.stderr)
133
+ continue
134
+ rel = p.relative_to(".agent-src.uncompressed")
135
+ src_file = SRC / rel
136
+ if not src_file.is_file():
137
+ print(f" skip (missing): {p}", file=sys.stderr)
138
+ continue
139
+ if _annotate(src_file, args.pack):
140
+ changed += 1
141
+ _mirror_to_compressed(rel, args.pack)
142
+ _refresh_hash(rel, hashes)
143
+ HASH_FILE.write_text(json.dumps(hashes, indent=2, sort_keys=True) + "\n", encoding="utf-8")
144
+ print(f"annotated {changed} files with pack={args.pack}")
145
+ return 0
146
+
147
+
148
+ if __name__ == "__main__":
149
+ sys.exit(main())
@@ -27,7 +27,7 @@ AREAS: dict[str, dict[str, str]] = {
27
27
  "scope": "Budget ladder, hard-stop hook, cost reporting and dashboards."},
28
28
  "caveman": {"contract": "compression-default-kill-criterion.md",
29
29
  "scope": "Caveman-speak compression, decompression, reversibility guards."},
30
- "schema": {"contract": "agents/docs/frontmatter-contract.md",
30
+ "schema": {"contract": "agents/reference/docs/frontmatter-contract.md",
31
31
  "scope": "Frontmatter schemas, v2 rigor, lint behaviour for skills / rules / commands."},
32
32
  "router": {"contract": "rule-router.md",
33
33
  "scope": "router.json shape, tier semantics, dispatch precedence."},
@@ -6,8 +6,8 @@ Walk `.agent-src.uncompressed/rules/*.md`, collect per-rule frontmatter
6
6
  (`description`, `triggers`, `routes_to`, `tier`), measure body and
7
7
  registry-stub costs, and emit:
8
8
 
9
- - `agents/reports/auto-rules-audit.json` — deterministic, machine-readable.
10
- - `agents/reports/auto-rules-audit.md` — ranked summary for review.
9
+ - `agents/runtime/reports/auto-rules-audit.json` — deterministic, machine-readable.
10
+ - `agents/runtime/reports/auto-rules-audit.md` — ranked summary for review.
11
11
 
12
12
  The registry-stub cost mirrors `scripts/measure_augment_budget.py`'s
13
13
  accounting model: only the stub line is injected into the Augment
@@ -208,7 +208,7 @@ def scan() -> list[dict]:
208
208
 
209
209
 
210
210
  # step-9 P11 · U3 — Iron-Law bypass scan. Any Python module that loads
211
- # `agents/.ai-council.yml` directly (yaml.safe_load / open + parse) instead
211
+ # `agents/settings/.ai-council.yml` directly (yaml.safe_load / open + parse) instead
212
212
  # of going through `scripts.ai_council.config.load_council_config` skips the
213
213
  # `_reject_top_level_locked_dispatch` gate and is a potential Iron-Law
214
214
  # bypass. The scan is intentionally over-broad — false positives are
@@ -8,8 +8,8 @@ signal from git history (commands not touched in 90+ days are
8
8
  candidates for retirement).
9
9
 
10
10
  Output:
11
- - ``agents/reports/command-surface.json`` (machine-readable)
12
- - ``agents/reports/command-surface.md`` (human-readable)
11
+ - ``agents/runtime/reports/command-surface.json`` (machine-readable)
12
+ - ``agents/runtime/reports/command-surface.md`` (human-readable)
13
13
 
14
14
  Context: ``agents/roadmaps/step-2-feedback-followup.md`` Phase 1 —
15
15
  GPT's PR-#148 "108 commands" cognitive-load warning needs empirical