@event4u/agent-config 2.25.0 → 3.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 (804) 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 +13 -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 +14 -2
  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 +15 -2
  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/jira-ticket.md +12 -0
  66. package/.agent-src/commands/judge/on-diff.md +12 -0
  67. package/.agent-src/commands/judge/solo.md +12 -0
  68. package/.agent-src/commands/judge/steps.md +12 -0
  69. package/.agent-src/commands/judge.md +12 -0
  70. package/.agent-src/commands/memory/add.md +15 -3
  71. package/.agent-src/commands/memory/learn-low-impact.md +18 -6
  72. package/.agent-src/commands/memory/load.md +12 -0
  73. package/.agent-src/commands/memory/mine-session.md +12 -0
  74. package/.agent-src/commands/memory/promote.md +12 -0
  75. package/.agent-src/commands/memory/propose.md +12 -0
  76. package/.agent-src/commands/memory.md +12 -0
  77. package/.agent-src/commands/mode.md +12 -0
  78. package/.agent-src/commands/module/create.md +13 -0
  79. package/.agent-src/commands/module/explore.md +23 -7
  80. package/.agent-src/commands/module.md +12 -0
  81. package/.agent-src/commands/optimize/agents-dir.md +14 -2
  82. package/.agent-src/commands/optimize/augmentignore.md +64 -20
  83. package/.agent-src/commands/optimize/rtk.md +68 -30
  84. package/.agent-src/commands/optimize/skills.md +12 -0
  85. package/.agent-src/commands/optimize-prompt.md +12 -0
  86. package/.agent-src/commands/optimize.md +12 -0
  87. package/.agent-src/commands/orchestrate.md +13 -1
  88. package/.agent-src/commands/override/create.md +12 -0
  89. package/.agent-src/commands/override/manage.md +12 -0
  90. package/.agent-src/commands/override.md +12 -0
  91. package/.agent-src/commands/package-reset.md +12 -0
  92. package/.agent-src/commands/package-test.md +98 -10
  93. package/.agent-src/commands/post-as/ghostwriter.md +12 -0
  94. package/.agent-src/commands/post-as/me.md +13 -1
  95. package/.agent-src/commands/post-as.md +12 -0
  96. package/.agent-src/commands/prepare-for-review.md +12 -0
  97. package/.agent-src/commands/project-analyze.md +27 -15
  98. package/.agent-src/commands/project-health.md +13 -1
  99. package/.agent-src/commands/quality-fix.md +61 -27
  100. package/.agent-src/commands/refine-ticket.md +12 -0
  101. package/.agent-src/commands/research/deep.md +12 -0
  102. package/.agent-src/commands/research/report.md +12 -0
  103. package/.agent-src/commands/research.md +12 -0
  104. package/.agent-src/commands/review-changes.md +12 -0
  105. package/.agent-src/commands/review-routing.md +12 -0
  106. package/.agent-src/commands/roadmap/ai-council.md +15 -3
  107. package/.agent-src/commands/roadmap/create.md +13 -1
  108. package/.agent-src/commands/roadmap/process-full.md +12 -0
  109. package/.agent-src/commands/roadmap/process-phase.md +12 -0
  110. package/.agent-src/commands/roadmap/process-step.md +12 -0
  111. package/.agent-src/commands/roadmap.md +12 -0
  112. package/.agent-src/commands/rule-compliance-audit.md +12 -0
  113. package/.agent-src/commands/set-cost-profile.md +12 -0
  114. package/.agent-src/commands/sync-agent-settings.md +12 -0
  115. package/.agent-src/commands/sync-gitignore/fix.md +32 -13
  116. package/.agent-src/commands/sync-gitignore.md +13 -1
  117. package/.agent-src/commands/tests/create.md +12 -0
  118. package/.agent-src/commands/tests/execute.md +12 -0
  119. package/.agent-src/commands/tests.md +12 -0
  120. package/.agent-src/commands/threat-model.md +12 -0
  121. package/.agent-src/commands/update-form-request-messages.md +14 -1
  122. package/.agent-src/commands/upstream-contribute.md +12 -0
  123. package/.agent-src/commands/video/from-script.md +12 -0
  124. package/.agent-src/commands/video/scene.md +12 -0
  125. package/.agent-src/commands/video/stitch.md +13 -1
  126. package/.agent-src/commands/video/storyboard.md +12 -0
  127. package/.agent-src/commands/video.md +12 -0
  128. package/.agent-src/commands/work.md +12 -0
  129. package/.agent-src/contexts/augment-infrastructure.md +6 -9
  130. package/.agent-src/contexts/authority/scope-mechanics.md +11 -0
  131. package/.agent-src/contexts/communication/rules-auto/guidelines-mechanics.md +1 -1
  132. package/.agent-src/contexts/contracts/agents-md-anatomy.md +1 -1
  133. package/.agent-src/contexts/contracts/research-schema.md +1 -1
  134. package/.agent-src/contexts/documentation-hierarchy.md +2 -2
  135. package/.agent-src/contexts/execution/interrupt-examples.md +34 -0
  136. package/.agent-src/contexts/execution/roadmap-process-loop.md +19 -0
  137. package/.agent-src/contexts/skills-and-commands.md +2 -2
  138. package/.agent-src/ghostwriter/README.md +2 -2
  139. package/.agent-src/ghostwriter/fictional-fixture-v1.md +1 -1
  140. package/.agent-src/personas/README.md +1 -1
  141. package/.agent-src/personas/advisors/contrarian.md +1 -1
  142. package/.agent-src/personas/advisors/executor.md +1 -1
  143. package/.agent-src/personas/advisors/expansionist.md +1 -1
  144. package/.agent-src/personas/advisors/first-principles.md +1 -1
  145. package/.agent-src/personas/advisors/outsider.md +1 -1
  146. package/.agent-src/rules/agent-authority.md +12 -0
  147. package/.agent-src/rules/analysis-skill-routing.md +12 -0
  148. package/.agent-src/rules/architecture.md +37 -11
  149. package/.agent-src/rules/artifact-drafting-protocol.md +19 -1
  150. package/.agent-src/rules/artifact-engagement-recording.md +13 -1
  151. package/.agent-src/rules/ask-when-uncertain.md +12 -0
  152. package/.agent-src/rules/augment-edit-discipline.md +40 -0
  153. package/.agent-src/rules/augment-source-of-truth.md +15 -3
  154. package/.agent-src/rules/autonomous-execution.md +44 -1
  155. package/.agent-src/rules/caveman-speak.md +13 -1
  156. package/.agent-src/rules/cli-output-handling.md +13 -1
  157. package/.agent-src/rules/command-suggestion-policy.md +13 -1
  158. package/.agent-src/rules/commit-conventions.md +13 -1
  159. package/.agent-src/rules/commit-policy.md +12 -0
  160. package/.agent-src/rules/context-hygiene.md +16 -4
  161. package/.agent-src/rules/copilot-routing.md +13 -1
  162. package/.agent-src/rules/devcontainer-routing.md +13 -1
  163. package/.agent-src/rules/direct-answers.md +12 -0
  164. package/.agent-src/rules/docker-commands.md +13 -1
  165. package/.agent-src/rules/domain-adoption-policy.md +21 -10
  166. package/.agent-src/rules/domain-safety-disclaimer.md +126 -0
  167. package/.agent-src/rules/domain-safety-pii.md +154 -0
  168. package/.agent-src/rules/domain-safety-retention.md +98 -0
  169. package/.agent-src/rules/downstream-changes.md +17 -5
  170. package/.agent-src/rules/external-reference-deep-dive.md +13 -1
  171. package/.agent-src/rules/fast-path-marker-visibility.md +21 -1
  172. package/.agent-src/rules/framework-neutrality-in-generic-skills.md +142 -0
  173. package/.agent-src/rules/git-history-discipline.md +111 -0
  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 +19 -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 +12 -0
  188. package/.agent-src/rules/no-roadmap-references.md +32 -18
  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 +14 -2
  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/symfony-routing.md +13 -1
  209. package/.agent-src/rules/think-before-action.md +13 -1
  210. package/.agent-src/rules/token-efficiency.md +13 -1
  211. package/.agent-src/rules/token-optimizer-maintenance.md +12 -0
  212. package/.agent-src/rules/tool-safety.md +13 -1
  213. package/.agent-src/rules/ui-audit-gate.md +13 -1
  214. package/.agent-src/rules/upstream-proposal.md +13 -1
  215. package/.agent-src/rules/user-interaction.md +13 -1
  216. package/.agent-src/rules/user-interrupt-priority.md +58 -0
  217. package/.agent-src/rules/verify-before-complete.md +23 -2
  218. package/.agent-src/skills/accessibility-auditor/SKILL.md +12 -0
  219. package/.agent-src/skills/activation-design/SKILL.md +12 -0
  220. package/.agent-src/skills/adr-create/SKILL.md +12 -0
  221. package/.agent-src/skills/adversarial-review/SKILL.md +13 -1
  222. package/.agent-src/skills/agent-docs-writing/SKILL.md +16 -4
  223. package/.agent-src/skills/agents-md-thin-root/SKILL.md +14 -2
  224. package/.agent-src/skills/ai-council/SKILL.md +29 -15
  225. package/.agent-src/skills/analysis-autonomous-mode/SKILL.md +12 -0
  226. package/.agent-src/skills/analysis-skill-router/SKILL.md +12 -0
  227. package/.agent-src/skills/api-design/SKILL.md +13 -3
  228. package/.agent-src/skills/api-endpoint/SKILL.md +70 -154
  229. package/.agent-src/skills/api-testing/SKILL.md +23 -0
  230. package/.agent-src/skills/architecture-review-lens/SKILL.md +12 -0
  231. package/.agent-src/skills/artisan-commands/SKILL.md +12 -0
  232. package/.agent-src/skills/async-python-patterns/SKILL.md +13 -1
  233. package/.agent-src/skills/authz-review/SKILL.md +12 -2
  234. package/.agent-src/skills/aws-infrastructure/SKILL.md +12 -0
  235. package/.agent-src/skills/blade-ui/SKILL.md +12 -0
  236. package/.agent-src/skills/blast-radius-analyzer/SKILL.md +12 -0
  237. package/.agent-src/skills/bug-analyzer/SKILL.md +14 -2
  238. package/.agent-src/skills/build-buy-partner/SKILL.md +12 -0
  239. package/.agent-src/skills/canvas-design/SKILL.md +12 -0
  240. package/.agent-src/skills/character-consistency/SKILL.md +23 -11
  241. package/.agent-src/skills/check-refs/SKILL.md +12 -0
  242. package/.agent-src/skills/churn-prevention/SKILL.md +12 -0
  243. package/.agent-src/skills/code-refactoring/SKILL.md +52 -34
  244. package/.agent-src/skills/code-review/SKILL.md +53 -36
  245. package/.agent-src/skills/command-routing/SKILL.md +12 -0
  246. package/.agent-src/skills/command-writing/SKILL.md +14 -2
  247. package/.agent-src/skills/comp-banding/SKILL.md +12 -0
  248. package/.agent-src/skills/competitive-moat-analysis/SKILL.md +12 -2
  249. package/.agent-src/skills/competitive-positioning/SKILL.md +12 -2
  250. package/.agent-src/skills/composer-packages/SKILL.md +12 -0
  251. package/.agent-src/skills/compress-memory/SKILL.md +12 -0
  252. package/.agent-src/skills/content-funnel-design/SKILL.md +12 -2
  253. package/.agent-src/skills/context-authoring/SKILL.md +19 -7
  254. package/.agent-src/skills/context-document/SKILL.md +17 -5
  255. package/.agent-src/skills/contracts-cognition/SKILL.md +12 -2
  256. package/.agent-src/skills/conventional-commits-writing/SKILL.md +12 -0
  257. package/.agent-src/skills/copilot-agents-optimization/SKILL.md +13 -1
  258. package/.agent-src/skills/copilot-config/SKILL.md +12 -0
  259. package/.agent-src/skills/customer-research/SKILL.md +12 -0
  260. package/.agent-src/skills/dashboard-design/SKILL.md +13 -2
  261. package/.agent-src/skills/data-flow-mapper/SKILL.md +12 -0
  262. package/.agent-src/skills/data-handling-judgment/SKILL.md +12 -2
  263. package/.agent-src/skills/database/SKILL.md +22 -5
  264. package/.agent-src/skills/dcf-modeling/SKILL.md +12 -2
  265. package/.agent-src/skills/deal-qualification-meddic/SKILL.md +12 -2
  266. package/.agent-src/skills/decision-record/SKILL.md +12 -0
  267. package/.agent-src/skills/deep-reading-analyst/SKILL.md +12 -0
  268. package/.agent-src/skills/defense-in-depth/SKILL.md +13 -1
  269. package/.agent-src/skills/dependency-upgrade/SKILL.md +77 -19
  270. package/.agent-src/skills/description-assist/SKILL.md +12 -0
  271. package/.agent-src/skills/design-review/SKILL.md +12 -0
  272. package/.agent-src/skills/devcontainer/SKILL.md +12 -0
  273. package/.agent-src/skills/developer-like-execution/SKILL.md +37 -14
  274. package/.agent-src/skills/discovery-interview/SKILL.md +12 -2
  275. package/.agent-src/skills/doc-coauthoring/SKILL.md +12 -0
  276. package/.agent-src/skills/docker/SKILL.md +12 -0
  277. package/.agent-src/skills/editorial-calendar/SKILL.md +12 -2
  278. package/.agent-src/skills/eloquent/SKILL.md +13 -1
  279. package/.agent-src/skills/eloquent/evals/triggers.json +1 -1
  280. package/.agent-src/skills/error-handling-patterns/SKILL.md +13 -1
  281. package/.agent-src/skills/estimate-ticket/SKILL.md +12 -0
  282. package/.agent-src/skills/existing-ui-audit/SKILL.md +12 -0
  283. package/.agent-src/skills/expansion-playbook/SKILL.md +12 -0
  284. package/.agent-src/skills/fe-design/SKILL.md +12 -0
  285. package/.agent-src/skills/feature-planning/SKILL.md +13 -1
  286. package/.agent-src/skills/file-editor/SKILL.md +57 -19
  287. package/.agent-src/skills/finishing-a-development-branch/SKILL.md +14 -2
  288. package/.agent-src/skills/flux/SKILL.md +12 -0
  289. package/.agent-src/skills/forecast-accuracy/SKILL.md +12 -2
  290. package/.agent-src/skills/forecasting/SKILL.md +12 -2
  291. package/.agent-src/skills/form-handler/SKILL.md +12 -0
  292. package/.agent-src/skills/fundraising-narrative/SKILL.md +12 -2
  293. package/.agent-src/skills/funnel-analysis/SKILL.md +12 -0
  294. package/.agent-src/skills/git-workflow/SKILL.md +16 -4
  295. package/.agent-src/skills/github-ci/SKILL.md +12 -0
  296. package/.agent-src/skills/grafana/SKILL.md +12 -0
  297. package/.agent-src/skills/gtm-launch/SKILL.md +12 -2
  298. package/.agent-src/skills/guideline-writing/SKILL.md +12 -0
  299. package/.agent-src/skills/hiring-loop-design/SKILL.md +12 -0
  300. package/.agent-src/skills/incident-commander/SKILL.md +12 -2
  301. package/.agent-src/skills/jira-integration/SKILL.md +12 -0
  302. package/.agent-src/skills/jobs-events/SKILL.md +12 -0
  303. package/.agent-src/skills/judge-bug-hunter/SKILL.md +12 -0
  304. package/.agent-src/skills/judge-code-quality/SKILL.md +12 -0
  305. package/.agent-src/skills/judge-security-auditor/SKILL.md +12 -0
  306. package/.agent-src/skills/judge-test-coverage/SKILL.md +12 -0
  307. package/.agent-src/skills/laravel/SKILL.md +12 -0
  308. package/.agent-src/skills/laravel-api-endpoint/SKILL.md +199 -0
  309. package/.agent-src/skills/{dto-creator → laravel-dto}/SKILL.md +19 -6
  310. package/.agent-src/skills/laravel-horizon/SKILL.md +12 -0
  311. package/.agent-src/skills/laravel-mail/SKILL.md +12 -0
  312. package/.agent-src/skills/laravel-middleware/SKILL.md +12 -0
  313. package/.agent-src/skills/{migration-creator → laravel-migration}/SKILL.md +23 -10
  314. package/.agent-src/skills/laravel-notifications/SKILL.md +12 -0
  315. package/.agent-src/skills/laravel-pennant/SKILL.md +12 -0
  316. package/.agent-src/skills/laravel-pulse/SKILL.md +12 -0
  317. package/.agent-src/skills/laravel-reverb/SKILL.md +15 -3
  318. package/.agent-src/skills/laravel-scheduling/SKILL.md +12 -0
  319. package/.agent-src/skills/laravel-validation/SKILL.md +12 -0
  320. package/.agent-src/skills/{websocket → laravel-websocket}/SKILL.md +16 -3
  321. package/.agent-src/skills/launch-readiness/SKILL.md +12 -2
  322. package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +16 -4
  323. package/.agent-src/skills/lint-skills/SKILL.md +12 -0
  324. package/.agent-src/skills/livewire/SKILL.md +12 -0
  325. package/.agent-src/skills/livewire-architect/SKILL.md +12 -0
  326. package/.agent-src/skills/logging-monitoring/SKILL.md +12 -0
  327. package/.agent-src/skills/market-entry-analysis/SKILL.md +12 -0
  328. package/.agent-src/skills/markitdown/SKILL.md +14 -2
  329. package/.agent-src/skills/mcp/SKILL.md +12 -0
  330. package/.agent-src/skills/mcp-builder/SKILL.md +14 -2
  331. package/.agent-src/skills/md-language-check/SKILL.md +13 -1
  332. package/.agent-src/skills/memory-consolidation/SKILL.md +12 -0
  333. package/.agent-src/skills/merge-conflicts/SKILL.md +61 -17
  334. package/.agent-src/skills/messaging-architecture/SKILL.md +12 -2
  335. package/.agent-src/skills/migration-architect/SKILL.md +18 -6
  336. package/.agent-src/skills/mobile-e2e-strategy/SKILL.md +12 -0
  337. package/.agent-src/skills/module-management/SKILL.md +13 -0
  338. package/.agent-src/skills/motion-choreographer/SKILL.md +16 -4
  339. package/.agent-src/skills/multi-tenancy/SKILL.md +29 -10
  340. package/.agent-src/skills/nextjs-patterns/SKILL.md +12 -0
  341. package/.agent-src/skills/okr-tree-modeling/SKILL.md +12 -2
  342. package/.agent-src/skills/onboarding-design/SKILL.md +12 -0
  343. package/.agent-src/skills/onboarding-program/SKILL.md +12 -0
  344. package/.agent-src/skills/one-on-one-cadence/SKILL.md +12 -0
  345. package/.agent-src/skills/openapi/SKILL.md +13 -1
  346. package/.agent-src/skills/org-design/SKILL.md +12 -0
  347. package/.agent-src/skills/override-management/SKILL.md +12 -0
  348. package/.agent-src/skills/perf-feedback-craft/SKILL.md +12 -0
  349. package/.agent-src/skills/performance/SKILL.md +12 -0
  350. package/.agent-src/skills/performance-analysis/SKILL.md +12 -0
  351. package/.agent-src/skills/persona-writing/SKILL.md +12 -0
  352. package/.agent-src/skills/pest-testing/SKILL.md +30 -0
  353. package/.agent-src/skills/php-coder/SKILL.md +12 -0
  354. package/.agent-src/skills/php-debugging/SKILL.md +40 -0
  355. package/.agent-src/skills/php-service/SKILL.md +15 -3
  356. package/.agent-src/skills/pipeline-strategy/SKILL.md +12 -2
  357. package/.agent-src/skills/pixar-storyteller/SKILL.md +17 -5
  358. package/.agent-src/skills/playwright-architect/SKILL.md +12 -2
  359. package/.agent-src/skills/playwright-testing/SKILL.md +28 -1
  360. package/.agent-src/skills/po-discovery/SKILL.md +12 -0
  361. package/.agent-src/skills/positioning-strategy/SKILL.md +12 -0
  362. package/.agent-src/skills/privacy-review/SKILL.md +12 -2
  363. package/.agent-src/skills/project-analysis-core/SKILL.md +12 -0
  364. package/.agent-src/skills/project-analysis-hypothesis-driven/SKILL.md +12 -0
  365. package/.agent-src/skills/project-analysis-laravel/SKILL.md +12 -0
  366. package/.agent-src/skills/project-analysis-nextjs/SKILL.md +12 -0
  367. package/.agent-src/skills/project-analysis-node-express/SKILL.md +12 -0
  368. package/.agent-src/skills/project-analysis-react/SKILL.md +12 -0
  369. package/.agent-src/skills/project-analysis-symfony/SKILL.md +12 -0
  370. package/.agent-src/skills/project-analysis-zend-laminas/SKILL.md +12 -0
  371. package/.agent-src/skills/project-analyzer/SKILL.md +98 -60
  372. package/.agent-src/skills/project-docs/SKILL.md +25 -13
  373. package/.agent-src/skills/prompt-engineering-patterns/SKILL.md +13 -1
  374. package/.agent-src/skills/prompt-optimizer/SKILL.md +13 -1
  375. package/.agent-src/skills/quality-tools/SKILL.md +12 -2
  376. package/.agent-src/skills/react-native-setup/SKILL.md +12 -0
  377. package/.agent-src/skills/react-shadcn-ui/SKILL.md +12 -0
  378. package/.agent-src/skills/readme-reviewer/SKILL.md +12 -0
  379. package/.agent-src/skills/readme-writing/SKILL.md +12 -0
  380. package/.agent-src/skills/readme-writing-package/SKILL.md +106 -23
  381. package/.agent-src/skills/receiving-code-review/SKILL.md +12 -0
  382. package/.agent-src/skills/refine-prompt/SKILL.md +13 -1
  383. package/.agent-src/skills/refine-ticket/SKILL.md +14 -2
  384. package/.agent-src/skills/refine-ticket/detection-map.yml +2 -2
  385. package/.agent-src/skills/release-comms/SKILL.md +12 -2
  386. package/.agent-src/skills/repomix-packer/SKILL.md +13 -1
  387. package/.agent-src/skills/requesting-code-review/SKILL.md +12 -0
  388. package/.agent-src/skills/retention-loops/SKILL.md +12 -0
  389. package/.agent-src/skills/review-routing/SKILL.md +12 -0
  390. package/.agent-src/skills/rice-prioritization/SKILL.md +12 -0
  391. package/.agent-src/skills/risk-officer/SKILL.md +12 -0
  392. package/.agent-src/skills/roadmap-management/SKILL.md +13 -1
  393. package/.agent-src/skills/roadmap-writing/SKILL.md +12 -0
  394. package/.agent-src/skills/rtk-output-filtering/SKILL.md +35 -8
  395. package/.agent-src/skills/rule-refactor/SKILL.md +157 -0
  396. package/.agent-src/skills/rule-writing/SKILL.md +46 -8
  397. package/.agent-src/skills/runway-cognition/SKILL.md +12 -2
  398. package/.agent-src/skills/scenario-modeling/SKILL.md +12 -2
  399. package/.agent-src/skills/scene-expander/SKILL.md +18 -6
  400. package/.agent-src/skills/script-writing/SKILL.md +13 -1
  401. package/.agent-src/skills/secrets-management/SKILL.md +13 -3
  402. package/.agent-src/skills/security/SKILL.md +50 -29
  403. package/.agent-src/skills/security-audit/SKILL.md +12 -0
  404. package/.agent-src/skills/sentry-integration/SKILL.md +12 -0
  405. package/.agent-src/skills/sequential-thinking/SKILL.md +12 -0
  406. package/.agent-src/skills/skill-improvement-pipeline/SKILL.md +12 -0
  407. package/.agent-src/skills/skill-management/SKILL.md +12 -0
  408. package/.agent-src/skills/skill-reviewer/SKILL.md +13 -1
  409. package/.agent-src/skills/skill-writing/SKILL.md +12 -0
  410. package/.agent-src/skills/sql-writing/SKILL.md +12 -0
  411. package/.agent-src/skills/stakeholder-tradeoff/SKILL.md +12 -0
  412. package/.agent-src/skills/subagent-orchestration/SKILL.md +13 -1
  413. package/.agent-src/skills/symfony-workflow/SKILL.md +12 -0
  414. package/.agent-src/skills/systematic-debugging/SKILL.md +12 -0
  415. package/.agent-src/skills/tailwind-engineer/SKILL.md +12 -0
  416. package/.agent-src/skills/tech-debt-tracker/SKILL.md +12 -2
  417. package/.agent-src/skills/technical-specification/SKILL.md +12 -0
  418. package/.agent-src/skills/terraform/SKILL.md +12 -0
  419. package/.agent-src/skills/terragrunt/SKILL.md +12 -0
  420. package/.agent-src/skills/test-driven-development/SKILL.md +16 -4
  421. package/.agent-src/skills/test-performance/SKILL.md +19 -6
  422. package/.agent-src/skills/testing-anti-patterns/SKILL.md +13 -1
  423. package/.agent-src/skills/threat-modeling/SKILL.md +12 -0
  424. package/.agent-src/skills/throughput-vs-morale-tradeoff/SKILL.md +12 -0
  425. package/.agent-src/skills/token-optimizer/SKILL.md +12 -0
  426. package/.agent-src/skills/traefik/SKILL.md +12 -0
  427. package/.agent-src/skills/ui-component-architect/SKILL.md +12 -0
  428. package/.agent-src/skills/unit-economics-modeling/SKILL.md +12 -2
  429. package/.agent-src/skills/universal-project-analysis/SKILL.md +12 -0
  430. package/.agent-src/skills/upstream-contribute/SKILL.md +12 -0
  431. package/.agent-src/skills/using-git-worktrees/SKILL.md +12 -0
  432. package/.agent-src/skills/validate-feature-fit/SKILL.md +12 -0
  433. package/.agent-src/skills/verify-completion-evidence/SKILL.md +36 -27
  434. package/.agent-src/skills/video-director/SKILL.md +18 -6
  435. package/.agent-src/skills/vision-articulation/SKILL.md +12 -0
  436. package/.agent-src/skills/voc-extract/SKILL.md +12 -2
  437. package/.agent-src/skills/voice-and-tone-design/SKILL.md +12 -2
  438. package/.agent-src/templates/agent-settings.md +5 -5
  439. package/.agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  440. package/.agent-src/templates/agents/memory/ownership.example.yml +1 -1
  441. package/.agent-src/templates/agents/proposal.example.md +12 -0
  442. package/.agent-src/templates/command.md +1 -1
  443. package/.agent-src/templates/contexts/auth-model.md +2 -2
  444. package/.agent-src/templates/contexts/data-sensitivity.md +3 -3
  445. package/.agent-src/templates/contexts/deployment-order.md +2 -2
  446. package/.agent-src/templates/contexts/observability.md +3 -3
  447. package/.agent-src/templates/contexts/tenant-boundaries.md +3 -3
  448. package/.agent-src/templates/contexts.md +1 -1
  449. package/.agent-src/templates/copilot-instructions.md +2 -2
  450. package/.agent-src/templates/rule.md +3 -3
  451. package/.agent-src/templates/scripts/work_engine/_lib/agent_settings.py +3 -3
  452. package/.agent-src/templates/scripts/work_engine/cli.py +6 -6
  453. package/.agent-src/templates/scripts/work_engine/emitters.py +29 -4
  454. package/.agent-src/templates/scripts/work_engine/hooks/builtin/decision_trace.py +3 -3
  455. package/.agent-src/templates/scripts/work_engine/state.py +53 -0
  456. package/.agent-src/templates/skill-archive-note.md +4 -4
  457. package/.claude-plugin/marketplace.json +6 -5
  458. package/AGENTS.md +5 -4
  459. package/CHANGELOG.md +178 -194
  460. package/CONTRIBUTING.md +61 -0
  461. package/README.md +23 -20
  462. package/config/agent-settings.template.yml +11 -1
  463. package/config/discovery/packs.yml +142 -0
  464. package/config/discovery/unassigned-artefacts.yml +66 -0
  465. package/config/discovery/workspaces.yml +59 -0
  466. package/config/gitignore-block.txt +17 -20
  467. package/dist/cli/agent-config.js +199 -0
  468. package/dist/cli/agent-config.js.map +1 -0
  469. package/dist/cli/bash/runBash.js +40 -0
  470. package/dist/cli/bash/runBash.js.map +1 -0
  471. package/dist/cli/commands/doctorShell.js +91 -0
  472. package/dist/cli/commands/doctorShell.js.map +1 -0
  473. package/dist/cli/commands/packs.js +59 -0
  474. package/dist/cli/commands/packs.js.map +1 -0
  475. package/dist/cli/commands/settings.js +35 -0
  476. package/dist/cli/commands/settings.js.map +1 -0
  477. package/dist/cli/commands/uiServe.js +110 -0
  478. package/dist/cli/commands/uiServe.js.map +1 -0
  479. package/dist/cli/commands/versions.js +64 -0
  480. package/dist/cli/commands/versions.js.map +1 -0
  481. package/dist/cli/commands/workspaces.js +58 -0
  482. package/dist/cli/commands/workspaces.js.map +1 -0
  483. package/dist/cli/discovery/loadManifest.js +62 -0
  484. package/dist/cli/discovery/loadManifest.js.map +1 -0
  485. package/dist/cli/log/logger.js +41 -0
  486. package/dist/cli/log/logger.js.map +1 -0
  487. package/dist/cli/paths.js +60 -0
  488. package/dist/cli/paths.js.map +1 -0
  489. package/dist/cli/python/resolvePython.js +38 -0
  490. package/dist/cli/python/resolvePython.js.map +1 -0
  491. package/dist/cli/registry.js +75 -0
  492. package/dist/cli/registry.js.map +1 -0
  493. package/dist/discovery/discovery-manifest.json +9195 -0
  494. package/dist/discovery/discovery-manifest.json.sha256 +1 -0
  495. package/dist/discovery/discovery-manifest.summary.md +93 -0
  496. package/dist/mcp/awesome-mcp-servers.row.md +1 -0
  497. package/dist/mcp/mcp-cloudflare-catalogue.json +27 -0
  498. package/dist/mcp/registry-manifest.json +63 -0
  499. package/dist/server/app.js +117 -0
  500. package/dist/server/app.js.map +1 -0
  501. package/dist/server/io/atomicMultiWrite.js +202 -0
  502. package/dist/server/io/atomicMultiWrite.js.map +1 -0
  503. package/dist/server/io/atomicWrite.js +79 -0
  504. package/dist/server/io/atomicWrite.js.map +1 -0
  505. package/dist/server/io/substituteTemplate.js +87 -0
  506. package/dist/server/io/substituteTemplate.js.map +1 -0
  507. package/dist/server/io/yamlIO.js +140 -0
  508. package/dist/server/io/yamlIO.js.map +1 -0
  509. package/dist/server/port.js +97 -0
  510. package/dist/server/port.js.map +1 -0
  511. package/dist/server/routes/discovery.js +72 -0
  512. package/dist/server/routes/discovery.js.map +1 -0
  513. package/dist/server/routes/ping.js +49 -0
  514. package/dist/server/routes/ping.js.map +1 -0
  515. package/dist/server/routes/schema.js +41 -0
  516. package/dist/server/routes/schema.js.map +1 -0
  517. package/dist/server/routes/settings.js +155 -0
  518. package/dist/server/routes/settings.js.map +1 -0
  519. package/dist/server/routes/userMd.js +117 -0
  520. package/dist/server/routes/userMd.js.map +1 -0
  521. package/dist/server/routes/wizard.js +138 -0
  522. package/dist/server/routes/wizard.js.map +1 -0
  523. package/dist/server/schemas/settings.js +138 -0
  524. package/dist/server/schemas/settings.js.map +1 -0
  525. package/dist/server/token.js +68 -0
  526. package/dist/server/token.js.map +1 -0
  527. package/dist/server/writeRoot.js +67 -0
  528. package/dist/server/writeRoot.js.map +1 -0
  529. package/dist/server/writeRoot.test.js +73 -0
  530. package/dist/server/writeRoot.test.js.map +1 -0
  531. package/dist/shared/userMd/formAdapter.js +105 -0
  532. package/dist/shared/userMd/formAdapter.js.map +1 -0
  533. package/dist/shared/userMd/schema.js +118 -0
  534. package/dist/shared/userMd/schema.js.map +1 -0
  535. package/dist/shared/userMd/utils.js +74 -0
  536. package/dist/shared/userMd/utils.js.map +1 -0
  537. package/dist/ui/assets/index-BTRcKDlB.js +39 -0
  538. package/dist/ui/assets/index-BTRcKDlB.js.map +1 -0
  539. package/dist/ui/assets/index-Dqfhmg-d.css +1 -0
  540. package/dist/ui/index.html +14 -0
  541. package/docs/adrs/caveman/0001-default-off-until-bench.md +2 -2
  542. package/docs/adrs/cost/0001-hard-stop-hook.md +1 -1
  543. package/docs/adrs/schema/0001-json-schema-frontmatter.md +4 -4
  544. package/docs/adrs/schema/README.md +1 -1
  545. package/docs/adrs/smoke/0001-per-tier-smoke-scripts.md +2 -2
  546. package/docs/architecture/setup-vs-settings-shared-surface.md +114 -0
  547. package/docs/architecture.md +4 -3
  548. package/docs/archive/CHANGELOG-pre-2.2.0.md +7 -7
  549. package/docs/archive/CHANGELOG-pre-2.25.0.md +191 -0
  550. package/docs/archive/CHANGELOG-pre-3.0.0.md +130 -0
  551. package/docs/catalog.md +77 -84
  552. package/docs/contracts/STABILITY.md +1 -1
  553. package/docs/contracts/adr-architectural-consensus-mechanism.md +5 -5
  554. package/docs/contracts/adr-chat-history-split.md +1 -1
  555. package/docs/contracts/adr-implement-ticket-runtime.md +1 -1
  556. package/docs/contracts/adr-install-user-type-axis.md +1 -1
  557. package/docs/contracts/adr-mcp-runtime.md +2 -2
  558. package/docs/contracts/agent-user-schema.md +11 -2
  559. package/docs/contracts/ai-council-config.md +13 -13
  560. package/docs/contracts/audit-log-v1.md +2 -2
  561. package/docs/contracts/command-clusters.md +2 -2
  562. package/docs/contracts/compression-default-kill-criterion.md +3 -3
  563. package/docs/contracts/decision-trace-v1.md +5 -5
  564. package/docs/contracts/discovery-manifest.schema.json +146 -0
  565. package/docs/contracts/explain-trace.schema.json +144 -0
  566. package/docs/contracts/file-ownership-matrix.json +515 -309
  567. package/docs/contracts/file-ownership-matrix.md +1 -1
  568. package/docs/contracts/ghostwriter-schema.md +3 -3
  569. package/docs/contracts/hook-architecture-v1.md +10 -10
  570. package/docs/contracts/kernel-membership.md +21 -4
  571. package/docs/contracts/linter-structural-model.md +3 -3
  572. package/docs/contracts/load-context-schema.md +5 -5
  573. package/docs/contracts/local-server-api.md +134 -0
  574. package/docs/contracts/low-impact-corpus-format.md +1 -1
  575. package/docs/contracts/mcp-cloud-scope.md +2 -2
  576. package/docs/contracts/mcp-discovery-phase-notice.md +1 -1
  577. package/docs/contracts/mcp-phase-1-scope.md +5 -4
  578. package/docs/contracts/mcp-registry-manifest.schema.json +129 -0
  579. package/docs/contracts/mcp-tool-stub-envelope.md +1 -1
  580. package/docs/contracts/memory-visibility-v1.md +2 -2
  581. package/docs/contracts/multi-tool-projection-fidelity.md +3 -3
  582. package/docs/contracts/namespace.md +1 -1
  583. package/docs/contracts/one-off-script-lifecycle.md +1 -1
  584. package/docs/contracts/package-self-orientation.md +1 -1
  585. package/docs/contracts/provider-lifecycle.md +2 -2
  586. package/docs/contracts/router-blending.md +1 -1
  587. package/docs/contracts/rule-classification.md +2 -2
  588. package/docs/contracts/settings-api.md +160 -0
  589. package/docs/contracts/settings-gui-agent-mode.schema.json +128 -0
  590. package/docs/contracts/smoke-contracts.md +8 -8
  591. package/docs/contracts/tier-3-contrib-plugin.md +1 -1
  592. package/docs/contracts/universal-skills.md +1 -1
  593. package/docs/contracts/write-engine.md +1 -1
  594. package/docs/customization.md +137 -11
  595. package/docs/decisions/ADR-001-kernel-swap-deferred.md +1 -1
  596. package/docs/decisions/ADR-002-kernel-bucket-overrides.md +1 -1
  597. package/docs/decisions/ADR-004-rule-governance-pruning.md +8 -8
  598. package/docs/decisions/ADR-006-skill-tools-python-pilot.md +5 -5
  599. package/docs/decisions/ADR-007-agent-discovery-scopes.md +4 -4
  600. package/docs/decisions/ADR-008-installed-tools-manifest.md +2 -2
  601. package/docs/decisions/ADR-010-profile-pack-preset-boundary.md +2 -2
  602. package/docs/decisions/ADR-011-domain-pack-readiness.md +4 -4
  603. package/docs/decisions/ADR-012-typescript-cli-shell.md +162 -0
  604. package/docs/decisions/ADR-013-discovery-frontmatter-contract.md +210 -0
  605. package/docs/decisions/ADR-014-gui-framework-choice.md +136 -0
  606. package/docs/decisions/ADR-rule-kernel-and-router.md +2 -2
  607. package/docs/decisions/INDEX.md +3 -0
  608. package/docs/distribution/mcp-submission-checklist.md +95 -0
  609. package/docs/distribution/topics-equivalents-decay-policy.md +51 -0
  610. package/docs/examples/agent-user.example.md +3 -1
  611. package/docs/getting-started.md +6 -5
  612. package/docs/guidelines/agent-infra/ask-when-uncertain-demos.md +1 -1
  613. package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +10 -1
  614. package/docs/guidelines/agent-infra/rule-type-governance.md +2 -2
  615. package/docs/guidelines/agent-infra/tool-integration.md +1 -1
  616. package/docs/guidelines/php/api-design.md +2 -2
  617. package/docs/guidelines/php/controllers.md +1 -1
  618. package/docs/guidelines/php/resources.md +1 -1
  619. package/docs/guidelines/php/validations.md +1 -1
  620. package/docs/guidelines/prompt-templates.md +2 -2
  621. package/docs/hook-payload-capture.md +3 -3
  622. package/docs/installation.md +12 -4
  623. package/docs/migrations/commands-1.15.0.md +3 -3
  624. package/docs/parity/bench-ruflo.json +1 -1
  625. package/docs/parity/ruflo.md +3 -3
  626. package/docs/profiles.md +1 -1
  627. package/docs/quality.md +2 -2
  628. package/docs/recruits/_template.md +3 -3
  629. package/docs/setup/enterprise-and-offline.md +3 -3
  630. package/docs/setup/mcp-server-docker.md +5 -3
  631. package/docs/skills-catalog.md +62 -18
  632. package/docs/wizard.md +121 -0
  633. package/llms.txt +61 -17
  634. package/package.json +46 -3
  635. package/scripts/__pycache__/validate_frontmatter.cpython-312.pyc +0 -0
  636. package/scripts/_archive/README.md +2 -2
  637. package/scripts/_archive/_p4_migrate.py +1 -1
  638. package/scripts/_cli/cmd_doctor.py +5 -5
  639. package/scripts/_cli/cmd_explain.py +106 -2
  640. package/scripts/_cli/cmd_migrate.py +2 -2
  641. package/scripts/_cli/explain_last/__init__.py +122 -0
  642. package/scripts/_cli/explain_last/assumptions.py +59 -0
  643. package/scripts/_cli/explain_last/council.py +105 -0
  644. package/scripts/_cli/explain_last/halt.py +44 -0
  645. package/scripts/_cli/explain_last/inputs.py +125 -0
  646. package/scripts/_cli/explain_last/memory.py +94 -0
  647. package/scripts/_cli/explain_last/provider.py +52 -0
  648. package/scripts/_cli/explain_last/render.py +52 -0
  649. package/scripts/_cli/explain_last/route.py +58 -0
  650. package/scripts/_cli/explain_last/scrubber.py +105 -0
  651. package/scripts/_cli/explain_last/sections/__init__.py +35 -0
  652. package/scripts/_cli/explain_last/sections/assumptions.py +21 -0
  653. package/scripts/_cli/explain_last/sections/council.py +27 -0
  654. package/scripts/_cli/explain_last/sections/halt.py +31 -0
  655. package/scripts/_cli/explain_last/sections/header.py +24 -0
  656. package/scripts/_cli/explain_last/sections/inputs.py +27 -0
  657. package/scripts/_cli/explain_last/sections/memory.py +21 -0
  658. package/scripts/_cli/explain_last/sections/pack.py +16 -0
  659. package/scripts/_cli/explain_last/sections/provider.py +26 -0
  660. package/scripts/_cli/explain_last/sections/route.py +22 -0
  661. package/scripts/_cli/explain_last/state_loader.py +76 -0
  662. package/scripts/_dispatch.bash +954 -0
  663. package/scripts/_lib/agent_settings.py +3 -3
  664. package/scripts/_lib/agents_overlay.py +3 -3
  665. package/scripts/_phase4_bucket.py +210 -0
  666. package/scripts/agent-config +35 -943
  667. package/scripts/ai-video/adapters/higgsfield.sh +1 -1
  668. package/scripts/ai-video/adapters/sora.sh +1 -1
  669. package/scripts/ai-video/test-pipeline.sh +2 -2
  670. package/scripts/ai_council/_default_prices.py +5 -5
  671. package/scripts/ai_council/advisors.py +1 -1
  672. package/scripts/ai_council/clients.py +2 -2
  673. package/scripts/ai_council/compile_corpus.py +9 -8
  674. package/scripts/ai_council/config.py +3 -3
  675. package/scripts/ai_council/events_log.py +8 -4
  676. package/scripts/ai_council/low_impact_corpus.py +1 -1
  677. package/scripts/ai_council/low_impact_intake.py +1 -1
  678. package/scripts/ai_council/one_off_archive/2026-05/_one_off_budget_v2_audit.py +2 -2
  679. package/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_optimization.py +1 -1
  680. package/scripts/ai_council/one_off_archive/2026-05/_one_off_tier_retrofit.py +3 -3
  681. package/scripts/ai_council/pricing.py +8 -7
  682. package/scripts/ai_council/probation_gate.py +1 -1
  683. package/scripts/ai_council/redact_low_impact_entry.py +1 -1
  684. package/scripts/ai_council/session.py +13 -13
  685. package/scripts/ai_council/shadow_dispatch.py +2 -2
  686. package/scripts/annotate_discovery.py +149 -0
  687. package/scripts/audit_adr_coverage.py +1 -1
  688. package/scripts/audit_auto_rules.py +2 -2
  689. package/scripts/audit_cloud_compatibility.py +1 -1
  690. package/scripts/audit_command_surface.py +2 -2
  691. package/scripts/audit_likelihood.py +4 -4
  692. package/scripts/audit_overlap.py +3 -3
  693. package/scripts/audit_user_type_axis.py +1 -1
  694. package/scripts/build_discovery_manifest.py +302 -0
  695. package/scripts/build_linear_digest.py +0 -1
  696. package/scripts/build_mcp_registry_manifest.py +181 -0
  697. package/scripts/build_rule_trigger_matrix.py +2 -2
  698. package/scripts/capture_showcase_session.py +1 -1
  699. package/scripts/chat_history.py +5 -5
  700. package/scripts/check_always_budget.py +7 -2
  701. package/scripts/check_council_layout.py +26 -20
  702. package/scripts/check_council_references.py +10 -10
  703. package/scripts/check_discovery_determinism.py +70 -0
  704. package/scripts/check_kernel_rule_bundle.py +2 -2
  705. package/scripts/check_no_roadmap_refs.py +2 -2
  706. package/scripts/check_one_off_location.py +1 -1
  707. package/scripts/check_public_links.py +2 -2
  708. package/scripts/check_references.py +14 -21
  709. package/scripts/check_release_includes_discovery.py +61 -0
  710. package/scripts/ci_summary.py +2 -2
  711. package/scripts/ci_time_ratio.py +1 -1
  712. package/scripts/command_suggester/__init__.py +1 -1
  713. package/scripts/context_hygiene_hook.py +2 -2
  714. package/scripts/council_cli.py +22 -22
  715. package/scripts/council_prune.py +3 -3
  716. package/scripts/extract_audit_patterns.py +2 -2
  717. package/scripts/gen_discovery_baseline.py +127 -0
  718. package/scripts/generate_ownership_matrix.py +1 -1
  719. package/scripts/hook_manifest.yaml +5 -5
  720. package/scripts/hooks/cline-dispatcher.sh +1 -1
  721. package/scripts/hooks/cowork-dispatcher.sh +1 -1
  722. package/scripts/hooks/dispatch_hook.py +3 -3
  723. package/scripts/hooks/gemini-dispatcher.sh +1 -1
  724. package/scripts/hooks/replay_hook.py +1 -1
  725. package/scripts/hooks/state_io.py +5 -5
  726. package/scripts/hooks_doctor.py +4 -4
  727. package/scripts/install-hooks.sh +2 -2
  728. package/scripts/install.py +3 -3
  729. package/scripts/install.sh +120 -18
  730. package/scripts/inventory_frontmatter.py +1 -1
  731. package/scripts/lint_agents_layout.py +103 -0
  732. package/scripts/lint_archived_skills.py +3 -3
  733. package/scripts/lint_artefact_frontmatter.py +180 -0
  734. package/scripts/lint_discovery_manifest.py +136 -0
  735. package/scripts/lint_discovery_vocabulary.py +148 -0
  736. package/scripts/lint_explain_trace.py +80 -0
  737. package/scripts/lint_framework_leakage.py +348 -0
  738. package/scripts/lint_framework_leakage_allowlist.json +477 -0
  739. package/scripts/lint_ghostwriter_source.py +1 -1
  740. package/scripts/lint_load_context.py +3 -3
  741. package/scripts/lint_mcp_registry_manifest.py +69 -0
  742. package/scripts/lint_media_policy_linkage.py +6 -6
  743. package/scripts/lint_positioning.py +143 -0
  744. package/scripts/lint_rule_tiers.py +2 -2
  745. package/scripts/lint_skill_tools.py +1 -1
  746. package/scripts/lint_topics_yaml.py +89 -0
  747. package/scripts/mcp_server/consumer_tool_catalog.json +3 -3
  748. package/scripts/mcp_server/telemetry.py +2 -2
  749. package/scripts/mcp_server/tools.py +27 -11
  750. package/scripts/mcp_telemetry_health.py +2 -2
  751. package/scripts/mcp_telemetry_store.py +1 -1
  752. package/scripts/measure_augment_budget.py +9 -3
  753. package/scripts/measure_density.py +2 -2
  754. package/scripts/measure_frugality_savings.py +3 -3
  755. package/scripts/measure_roadmap_trajectory.py +1 -1
  756. package/scripts/measure_rule_budget.py +3 -3
  757. package/scripts/memory_report.py +1 -1
  758. package/scripts/migrate_command_suggestions.py +3 -3
  759. package/scripts/minimal_safe_diff_hook.py +1 -1
  760. package/scripts/onboarding_gate_hook.py +4 -4
  761. package/scripts/prepack-check.mjs +62 -0
  762. package/scripts/probe_projection_fidelity.py +2 -2
  763. package/scripts/refine_ticket_detect.py +1 -1
  764. package/scripts/schemas/command.schema.json +46 -1
  765. package/scripts/schemas/persona.schema.json +1 -1
  766. package/scripts/schemas/rule.schema.json +44 -4
  767. package/scripts/schemas/skill.schema.json +46 -1
  768. package/scripts/score_skill_selection.py +1 -1
  769. package/scripts/skill_collision_clusters.py +1 -1
  770. package/scripts/skill_linter.py +62 -9
  771. package/scripts/skill_overlap.py +1 -1
  772. package/scripts/skill_tools/run_block_d_eval.py +1 -1
  773. package/scripts/skill_usage_collect.py +3 -3
  774. package/scripts/skill_usage_report.py +3 -3
  775. package/scripts/smoke/kernel.sh +4 -4
  776. package/scripts/smoke/router.sh +2 -2
  777. package/scripts/smoke_quickstart.py +1 -1
  778. package/scripts/spotcheck_thin_root.py +1 -1
  779. package/scripts/sync_github_metadata.py +147 -0
  780. package/scripts/sync_gitignore.py +15 -5
  781. package/scripts/update_prices.py +4 -3
  782. package/scripts/verify_before_complete_hook.py +1 -1
  783. package/scripts/verify_roadmap_closure.py +1 -1
  784. package/templates/agent-user.md +35 -0
  785. package/.agent-src/commands/onboard.md +0 -459
  786. package/.agent-src/rules/agent-docs.md +0 -20
  787. package/.agent-src/rules/augment-portability.md +0 -23
  788. package/.agent-src/rules/capture-learnings.md +0 -19
  789. package/.agent-src/rules/docs-sync.md +0 -20
  790. package/.agent-src/rules/domain-safety-disclaimer-consulting.md +0 -52
  791. package/.agent-src/rules/domain-safety-disclaimer-financial.md +0 -54
  792. package/.agent-src/rules/domain-safety-disclaimer-legal.md +0 -49
  793. package/.agent-src/rules/domain-safety-disclaimer-medical.md +0 -56
  794. package/.agent-src/rules/domain-safety-export-redact.md +0 -65
  795. package/.agent-src/rules/domain-safety-logging-pii-floor.md +0 -55
  796. package/.agent-src/rules/domain-safety-pii-finance.md +0 -57
  797. package/.agent-src/rules/domain-safety-pii-marketing.md +0 -60
  798. package/.agent-src/rules/domain-safety-pii-recruiting.md +0 -56
  799. package/.agent-src/rules/domain-safety-pii-support.md +0 -57
  800. package/.agent-src/rules/domain-safety-retention-finance.md +0 -48
  801. package/.agent-src/rules/domain-safety-retention-support.md +0 -55
  802. package/.agent-src/rules/e2e-testing.md +0 -19
  803. package/.agent-src/rules/no-unsolicited-rebase.md +0 -107
  804. package/.agent-src/rules/post-push-rewrite-discipline.md +0 -70
@@ -0,0 +1,143 @@
1
+ #!/usr/bin/env python3
2
+ """Positioning consistency lint for event4u/agent-config.
3
+
4
+ Asserts that three public-positioning surfaces agree on the canonical
5
+ phrasing and that every advertised GitHub topic is discoverable in the
6
+ README body (literally or through `equivalents:` paraphrases).
7
+
8
+ Sources:
9
+ - README.md — canonical phrasing (H1 + first blockquote)
10
+ - package.json — `description` field
11
+ - .github/about.yml — `description` field
12
+ - .github/topics.yml — `topics:` + optional `equivalents:` map
13
+
14
+ Failure mode is a diff, not a stack trace. See R5 Phase 3 in
15
+ agents/roadmaps/strategic-visibility-mcp-topics-positioning.md.
16
+ """
17
+
18
+ from __future__ import annotations
19
+
20
+ import argparse
21
+ import json
22
+ import re
23
+ import sys
24
+ from pathlib import Path
25
+
26
+ try:
27
+ import yaml
28
+ except ImportError:
29
+ sys.stderr.write("❌ PyYAML is required: pip3 install pyyaml\n")
30
+ sys.exit(2)
31
+
32
+ REPO_ROOT = Path(__file__).resolve().parent.parent
33
+ README = REPO_ROOT / "README.md"
34
+ PACKAGE_JSON = REPO_ROOT / "package.json"
35
+ ABOUT_YML = REPO_ROOT / ".github" / "about.yml"
36
+ TOPICS_YML = REPO_ROOT / ".github" / "topics.yml"
37
+
38
+ # Canonical anchor: the right-side phrase of the README H1
39
+ # ("Agent Config — Universal AI Agent OS" → "Universal AI Agent OS").
40
+ # This is the substring that MUST appear in the other two surfaces.
41
+ H1_RE = re.compile(r"^#\s+(.+?)\s*$", re.MULTILINE)
42
+ BLOCKQUOTE_RE = re.compile(r"^>\s+(.+?)\s*$", re.MULTILINE)
43
+ DESCRIPTION_MAX = 200
44
+
45
+
46
+ def _read_readme_anchors() -> tuple[str, str, str]:
47
+ text = README.read_text(encoding="utf-8")
48
+ h1_match = H1_RE.search(text)
49
+ if not h1_match:
50
+ raise SystemExit("❌ README.md has no H1 heading")
51
+ h1 = h1_match.group(1)
52
+ # Anchor = the phrase after the em dash, falling back to the whole H1.
53
+ parts = re.split(r"\s+[—–-]\s+", h1, maxsplit=1)
54
+ anchor = parts[1].strip() if len(parts) == 2 else h1.strip()
55
+
56
+ bq_match = BLOCKQUOTE_RE.search(text)
57
+ blockquote = bq_match.group(1).strip() if bq_match else ""
58
+ return h1, anchor, blockquote
59
+
60
+
61
+ def _read_package_description() -> str:
62
+ data = json.loads(PACKAGE_JSON.read_text(encoding="utf-8"))
63
+ return str(data.get("description", "")).strip()
64
+
65
+
66
+ def _read_about_description() -> str:
67
+ data = yaml.safe_load(ABOUT_YML.read_text(encoding="utf-8")) or {}
68
+ return str(data.get("description", "")).strip()
69
+
70
+
71
+ def _read_topics() -> tuple[list[str], dict[str, list[str]]]:
72
+ data = yaml.safe_load(TOPICS_YML.read_text(encoding="utf-8")) or {}
73
+ topics = [str(t) for t in data.get("topics", [])]
74
+ equivalents = {str(k): [str(v) for v in vs] for k, vs in (data.get("equivalents") or {}).items()}
75
+ return topics, equivalents
76
+
77
+
78
+ def _topic_present(readme_lc: str, topic: str, equivalents: dict[str, list[str]]) -> tuple[bool, str | None]:
79
+ needles = [topic, topic.replace("-", " "), topic.replace("-", "")] + equivalents.get(topic, [])
80
+ for n in needles:
81
+ if n and n.lower() in readme_lc:
82
+ return True, n
83
+ return False, None
84
+
85
+
86
+ def main() -> int:
87
+ parser = argparse.ArgumentParser(description="Positioning consistency lint.")
88
+ parser.add_argument("--quiet", action="store_true", help="Suppress success output.")
89
+ args = parser.parse_args()
90
+
91
+ h1, anchor, blockquote = _read_readme_anchors()
92
+ pkg_desc = _read_package_description()
93
+ about_desc = _read_about_description()
94
+ topics, equivalents = _read_topics()
95
+
96
+ errors: list[str] = []
97
+ anchor_lc = anchor.lower()
98
+ if anchor_lc not in pkg_desc.lower():
99
+ errors.append("package.json.description missing canonical anchor")
100
+ if anchor_lc not in about_desc.lower():
101
+ errors.append(".github/about.yml description missing canonical anchor")
102
+ if len(pkg_desc) > DESCRIPTION_MAX:
103
+ errors.append(f"package.json.description is {len(pkg_desc)} chars (max {DESCRIPTION_MAX})")
104
+ if len(about_desc) > DESCRIPTION_MAX:
105
+ errors.append(f".github/about.yml description is {len(about_desc)} chars (max {DESCRIPTION_MAX})")
106
+
107
+ readme_lc = README.read_text(encoding="utf-8").lower()
108
+ missing_topics: list[str] = []
109
+ for topic in topics:
110
+ present, _ = _topic_present(readme_lc, topic, equivalents)
111
+ if not present:
112
+ missing_topics.append(topic)
113
+
114
+ if errors or missing_topics:
115
+ sys.stderr.write("❌ positioning drift detected:\n")
116
+ sys.stderr.write(f" README anchor: {anchor}\n")
117
+ sys.stderr.write(f" package.json.desc: {pkg_desc}\n")
118
+ sys.stderr.write(f" .github/about.yml: {about_desc}\n\n")
119
+ for err in errors:
120
+ sys.stderr.write(f" - {err}\n")
121
+ if missing_topics:
122
+ sys.stderr.write("\n topics absent from README (literal + equivalents):\n")
123
+ for t in missing_topics:
124
+ sys.stderr.write(f" - {t}\n")
125
+ sys.stderr.write(
126
+ "\n Resolve by editing all three to share the canonical anchor,\n"
127
+ " or extending .github/topics.yml's `equivalents:` map\n"
128
+ " (or by removing the topic). The README is the canonical phrasing.\n"
129
+ )
130
+ else:
131
+ sys.stderr.write(
132
+ "\n Resolve by editing all three to share the canonical anchor.\n"
133
+ " The README is the canonical phrasing; the other two follow it.\n"
134
+ )
135
+ return 1
136
+
137
+ if not args.quiet:
138
+ sys.stdout.write(f"✅ positioning consistent (anchor: {anchor!r}, topics: {len(topics)})\n")
139
+ return 0
140
+
141
+
142
+ if __name__ == "__main__":
143
+ sys.exit(main())
@@ -3,8 +3,8 @@
3
3
 
4
4
  Hard-fails CI if any rule under .agent-src.uncompressed/rules/ lacks a
5
5
  `tier:` declaration or uses an unknown tier value. The valid tier set is
6
- locked by agents/contexts/hardening-pattern.md and the matrix in
7
- agents/contexts/rule-trigger-matrix.md.
6
+ locked by agents/settings/contexts/hardening-pattern.md and the matrix in
7
+ agents/settings/contexts/rule-trigger-matrix.md.
8
8
 
9
9
  Hooked into `task ci` after `task lint-skills`.
10
10
 
@@ -2,7 +2,7 @@
2
2
  """Block D · D1 — meta-linter for ``scripts/skill_tools/*.py``.
3
3
 
4
4
  Enforces the four pilot-tool invariants locked by the Block D council
5
- verdict (`agents/council-responses/block-d-python-tools-pilot-verdict.md`):
5
+ verdict (`agents/runtime/council/responses/block-d-python-tools-pilot-verdict.md`):
6
6
 
7
7
  1. **stdlib-only** — no third-party imports. Internal package imports
8
8
  (``scripts.*``) are allowed.
@@ -0,0 +1,89 @@
1
+ #!/usr/bin/env python3
2
+ """Linter for `.github/topics.yml`.
3
+
4
+ Asserts:
5
+ * file exists and parses as YAML
6
+ * `topics:` is a non-empty list
7
+ * every topic matches `^[a-z0-9][a-z0-9-]*$` and is \u2264 50 chars
8
+ * no duplicates
9
+ * `notes:` key exists (may be empty mapping/string), so the
10
+ rationale slot is never silently dropped
11
+ * `equivalents:` (if present) is a mapping whose keys are all
12
+ listed in `topics:`
13
+
14
+ Roadmap: agents/roadmaps/strategic-visibility-mcp-topics-positioning.md Phase 1.3.
15
+ """
16
+ from __future__ import annotations
17
+
18
+ import re
19
+ import sys
20
+ from pathlib import Path
21
+
22
+ import yaml
23
+
24
+ ROOT = Path(__file__).resolve().parents[1]
25
+ TOPICS_FILE = ROOT / ".github" / "topics.yml"
26
+ SLUG_RE = re.compile(r"^[a-z0-9][a-z0-9-]*$")
27
+ QUIET = "--quiet" in sys.argv
28
+
29
+
30
+ def _fail(msg: str) -> None:
31
+ print(f"\u274c topics.yml: {msg}", file=sys.stderr)
32
+
33
+
34
+ def main() -> int:
35
+ if not TOPICS_FILE.exists():
36
+ _fail(f"missing file: {TOPICS_FILE.relative_to(ROOT)}")
37
+ return 1
38
+ try:
39
+ doc = yaml.safe_load(TOPICS_FILE.read_text(encoding="utf-8")) or {}
40
+ except yaml.YAMLError as e:
41
+ _fail(f"YAML parse error: {e}")
42
+ return 1
43
+
44
+ errors: list[str] = []
45
+
46
+ topics = doc.get("topics")
47
+ if not isinstance(topics, list) or not topics:
48
+ errors.append("`topics:` must be a non-empty list")
49
+ topics = []
50
+
51
+ seen: set[str] = set()
52
+ for t in topics:
53
+ if not isinstance(t, str):
54
+ errors.append(f"non-string topic entry: {t!r}")
55
+ continue
56
+ if len(t) > 50:
57
+ errors.append(f"topic too long (>50 chars): {t!r}")
58
+ if not SLUG_RE.match(t):
59
+ errors.append(f"invalid slug (expect ^[a-z0-9][a-z0-9-]*$): {t!r}")
60
+ if t in seen:
61
+ errors.append(f"duplicate topic: {t!r}")
62
+ seen.add(t)
63
+
64
+ if "notes" not in doc:
65
+ errors.append("`notes:` key missing (may be empty, but must be present)")
66
+
67
+ equivalents = doc.get("equivalents")
68
+ if equivalents is not None:
69
+ if not isinstance(equivalents, dict):
70
+ errors.append("`equivalents:` must be a mapping")
71
+ else:
72
+ for key, val in equivalents.items():
73
+ if key not in seen:
74
+ errors.append(f"`equivalents:` key {key!r} not in `topics:`")
75
+ if not isinstance(val, list) or not all(isinstance(v, str) for v in val):
76
+ errors.append(f"`equivalents.{key}` must be a list of strings")
77
+
78
+ if errors:
79
+ for e in errors:
80
+ _fail(e)
81
+ return 1
82
+
83
+ if not QUIET:
84
+ print(f"\u2705 topics.yml: {len(topics)} topic(s), all valid")
85
+ return 0
86
+
87
+
88
+ if __name__ == "__main__":
89
+ raise SystemExit(main())
@@ -22,7 +22,7 @@
22
22
  },
23
23
  {
24
24
  "name": "chat_history_append",
25
- "description": "Append one entry to the consumer's chat-history JSONL (`agents/.agent-chat-history`). Path-scoped — writes outside the allowlist raise ValueError. Use `dry_run` to preview the payload without touching the filesystem.",
25
+ "description": "Append one entry to the consumer's chat-history JSONL (`agents/runtime/.agent-chat-history`; `agents/.agent-chat-history` and `.agent-chat-history` accepted for back-compat). Path-scoped — writes outside the allowlist raise ValueError. Use `dry_run` to preview the payload without touching the filesystem.",
26
26
  "side_effect": "fs-write",
27
27
  "implemented_on": ["stdio"],
28
28
  "input_schema": {
@@ -30,7 +30,7 @@
30
30
  "properties": {
31
31
  "text": {"type": "string"},
32
32
  "entry_type": {"type": "string", "description": "Short `t` tag (e.g. note, decision). Defaults to `note`."},
33
- "path": {"type": "string", "description": "Optional path override. Must resolve to `agents/.agent-chat-history` or `.agent-chat-history` under consumer_root."},
33
+ "path": {"type": "string", "description": "Optional path override. Must resolve to `agents/runtime/.agent-chat-history` (current default), `agents/.agent-chat-history`, or `.agent-chat-history` under consumer_root."},
34
34
  "session": {"type": "string"},
35
35
  "dry_run": {"type": "boolean", "default": false},
36
36
  "min_schema_version": {"type": "integer"}
@@ -41,7 +41,7 @@
41
41
  },
42
42
  {
43
43
  "name": "chat_history_read",
44
- "description": "Read recent chat-history entries from `agents/.agent-chat-history`. Filter by session, limit, or entry-type. Read-only.",
44
+ "description": "Read recent chat-history entries from `agents/runtime/.agent-chat-history` (`agents/.agent-chat-history` accepted for back-compat). Filter by session, limit, or entry-type. Read-only.",
45
45
  "side_effect": "ro",
46
46
  "implemented_on": ["stdio"],
47
47
  "input_schema": {
@@ -14,7 +14,7 @@ Outcomes:
14
14
  envelope returned.
15
15
  - ``latent_demand`` — caller asked for a tool not in the catalog.
16
16
 
17
- The sink writes JSONL to ``agents/.mcp-telemetry/calls.jsonl`` under the
17
+ The sink writes JSONL to ``agents/runtime/mcp-telemetry/calls.jsonl`` under the
18
18
  consumer root. Failure to write must not break the wire surface: the
19
19
  ``record_call`` helper swallows OSError + ValueError and emits a single
20
20
  warning to stderr.
@@ -33,7 +33,7 @@ Outcome = Literal["implemented", "stub", "latent_demand"]
33
33
 
34
34
  # Stable file location relative to consumer_root. Phase 2 K1 routes
35
35
  # this into a queryable store; Phase 1 only needs the file to exist.
36
- TELEMETRY_REL_DIR = "agents/.mcp-telemetry"
36
+ TELEMETRY_REL_DIR = "agents/runtime/mcp-telemetry"
37
37
  TELEMETRY_FILENAME = "calls.jsonl"
38
38
 
39
39
  # Truncation length for the client_id hash. 12 hex chars = 48 bits of
@@ -12,8 +12,11 @@ Names that are neither implemented nor catalog-listed raise
12
12
 
13
13
  Path-scoping is mandatory for any tool that writes: the resolved target
14
14
  path must stay under ``<consumer_root>`` and within the allowlist of
15
- filenames (`.agent-chat-history`, `agents/.agent-chat-history`). Escape
16
- attempts surface as ``ValueError`` before the underlying writer runs.
15
+ filenames (`agents/runtime/.agent-chat-history` — current default;
16
+ `agents/.agent-chat-history` and `.agent-chat-history` kept for
17
+ back-compat with older consumer installs that have not migrated yet).
18
+ Escape attempts surface as ``ValueError`` before the underlying writer
19
+ runs.
17
20
 
18
21
  This module deliberately does **not** import the ``subprocess`` module
19
22
  or ``os``-level shell-execution helpers directly. It imports project
@@ -48,6 +51,12 @@ STDIO_TRANSPORT = "stdio"
48
51
  # guard before the underlying writer touches the filesystem.
49
52
  _ALLOWED_WRITE_REL_PATHS: frozenset[str] = frozenset(
50
53
  {
54
+ # Current default (Volatile Runtime policy — agents/runtime/ is
55
+ # local-only and ignored by git).
56
+ "agents/runtime/.agent-chat-history",
57
+ # Back-compat: older consumer installs still write to the flat
58
+ # location. Additive — both paths stay accepted until the next
59
+ # major tool version bump.
51
60
  "agents/.agent-chat-history",
52
61
  ".agent-chat-history",
53
62
  }
@@ -93,7 +102,7 @@ def _validate_in_tree_path(raw: str | None, consumer_root: Path) -> Path:
93
102
  """
94
103
  root = consumer_root.resolve()
95
104
  if raw is None or raw == "":
96
- target = root / "agents" / ".agent-chat-history"
105
+ target = root / "agents" / "runtime" / ".agent-chat-history"
97
106
  else:
98
107
  candidate = Path(raw)
99
108
  if candidate.is_absolute():
@@ -178,7 +187,8 @@ async def _chat_history_append_handler(
178
187
  text: free-form entry text. Stored under the ``text`` field.
179
188
  entry_type: short ``t`` tag (e.g. ``note``, ``decision``).
180
189
  path: optional override of the target file. Must resolve to one
181
- of ``agents/.agent-chat-history`` / ``.agent-chat-history``
190
+ of ``agents/runtime/.agent-chat-history`` (current default),
191
+ ``agents/.agent-chat-history``, or ``.agent-chat-history``
182
192
  under ``consumer_root``.
183
193
  session: optional 16-char session tag. Falls back to the most
184
194
  recent body entry's ``s`` (see ``chat_history.append``).
@@ -277,7 +287,8 @@ async def _chat_history_read_handler(
277
287
  session: optional 16-char session id.
278
288
  entry_type: optional ``t`` field exact-match filter.
279
289
  path: optional override; must resolve under
280
- ``agents/.agent-chat-history`` or ``.agent-chat-history``.
290
+ ``agents/runtime/.agent-chat-history`` (current default),
291
+ ``agents/.agent-chat-history``, or ``.agent-chat-history``.
281
292
  """
282
293
  from scripts.chat_history import read_entries # noqa: PLC0415
283
294
 
@@ -536,9 +547,11 @@ ALLOWLIST: dict[str, BuiltinTool] = {
536
547
  name="chat_history_append",
537
548
  description=(
538
549
  "Append one entry to the consumer's chat-history JSONL "
539
- "(`agents/.agent-chat-history`). Path-scoped — writes "
540
- "outside the allowlist raise ValueError. Use `dry_run` to "
541
- "preview the payload without touching the filesystem."
550
+ "(`agents/runtime/.agent-chat-history`; "
551
+ "`agents/.agent-chat-history` accepted for back-compat). "
552
+ "Path-scoped writes outside the allowlist raise "
553
+ "ValueError. Use `dry_run` to preview the payload without "
554
+ "touching the filesystem."
542
555
  ),
543
556
  input_schema={
544
557
  "type": "object",
@@ -555,7 +568,9 @@ ALLOWLIST: dict[str, BuiltinTool] = {
555
568
  "type": "string",
556
569
  "description": (
557
570
  "Optional path override. Must resolve to "
558
- "`agents/.agent-chat-history` or "
571
+ "`agents/runtime/.agent-chat-history` "
572
+ "(current default), "
573
+ "`agents/.agent-chat-history`, or "
559
574
  "`.agent-chat-history` under consumer_root."
560
575
  ),
561
576
  },
@@ -572,8 +587,9 @@ ALLOWLIST: dict[str, BuiltinTool] = {
572
587
  name="chat_history_read",
573
588
  description=(
574
589
  "Read recent chat-history entries from "
575
- "`agents/.agent-chat-history`. Filter by session, "
576
- "trailing-N, or entry-type. Read-only."
590
+ "`agents/runtime/.agent-chat-history` "
591
+ "(`agents/.agent-chat-history` accepted for back-compat). "
592
+ "Filter by session, trailing-N, or entry-type. Read-only."
577
593
  ),
578
594
  input_schema={
579
595
  "type": "object",
@@ -1,7 +1,7 @@
1
1
  """MCP telemetry healthcheck — Phase 1 J6.
2
2
 
3
3
  Asserts that the per-consumer JSONL sink at
4
- ``<consumer_root>/agents/.mcp-telemetry/calls.jsonl`` received at least
4
+ ``<consumer_root>/agents/runtime/mcp-telemetry/calls.jsonl`` received at least
5
5
  one record inside a configurable window (default 24 h). Exits non-zero
6
6
  on silence so the caller's alert sink — Sentry, email, GitHub Actions
7
7
  failure, cron mailer — fires.
@@ -166,7 +166,7 @@ def _build_parser() -> argparse.ArgumentParser:
166
166
  "--consumer-root",
167
167
  type=Path,
168
168
  default=None,
169
- help="Root directory containing agents/.mcp-telemetry/ (default: cwd).",
169
+ help="Root directory containing agents/runtime/mcp-telemetry/ (default: cwd).",
170
170
  )
171
171
  parser.add_argument(
172
172
  "--window-hours",
@@ -32,7 +32,7 @@ from mcp_server.telemetry import ( # noqa: E402
32
32
  TELEMETRY_REL_DIR,
33
33
  )
34
34
 
35
- DEFAULT_DB_REL = "agents/.mcp-telemetry/calls.sqlite3"
35
+ DEFAULT_DB_REL = "agents/runtime/mcp-telemetry/calls.sqlite3"
36
36
  SCHEMA_VERSION = 1
37
37
 
38
38
 
@@ -21,7 +21,7 @@ Output:
21
21
  - Default: stdout summary (totals + per-component breakdown).
22
22
  - `--json`: deterministic JSON.
23
23
  - `--trend-append`: append a snapshot record to
24
- `agents/.augment-budget-history.jsonl`.
24
+ `agents/runtime/.augment-budget-history.jsonl`.
25
25
 
26
26
  Exit codes: 0 = under fail threshold, 1 = at/above fail threshold,
27
27
  3 = internal error.
@@ -39,9 +39,15 @@ from pathlib import Path
39
39
  REPO_ROOT = Path(__file__).resolve().parent.parent
40
40
  AGENTS_MD = REPO_ROOT / "AGENTS.md"
41
41
  RULES_DIR = REPO_ROOT / ".augment" / "rules"
42
- TREND_FILE = REPO_ROOT / "agents" / ".augment-budget-history.jsonl"
42
+ TREND_FILE = REPO_ROOT / "agents" / "runtime" / ".augment-budget-history.jsonl"
43
43
 
44
44
  # Augment workspace-guidelines ceiling — empirical 2026-05-08.
45
+ # TOTAL_CAP is the hard ceiling Augment itself enforces. FAIL_THRESHOLD is the
46
+ # soft safety-margin gate (0.95). When a branch breaches it, the discipline
47
+ # is: DO NOT loosen the threshold — invoke the `rule-refactor` skill, which
48
+ # audits all rules for merge / delete / move-to-context / promote-to-skill
49
+ # candidates. Threshold-lift is explicitly rejected as a tool-shape anti-
50
+ # pattern (see the validation-budget rule). Only an ADR may grow the cap.
45
51
  TOTAL_CAP = 49_512
46
52
  WARN_THRESHOLD = 0.85
47
53
  FAIL_THRESHOLD = 0.95
@@ -164,7 +170,7 @@ def main() -> int:
164
170
  parser.add_argument(
165
171
  "--trend-append",
166
172
  action="store_true",
167
- help="Append a snapshot record to agents/.augment-budget-history.jsonl",
173
+ help="Append a snapshot record to agents/runtime/.augment-budget-history.jsonl",
168
174
  )
169
175
  parser.add_argument(
170
176
  "--check",
@@ -22,7 +22,7 @@ Companion signals collected per artifact (consumed by Phases 1.2-1.4):
22
22
  Output:
23
23
  - Default stdout: per-type distribution buckets + tail (lowest density).
24
24
  - ``--json`` deterministic JSON of every artifact.
25
- - ``--snapshot`` writes JSONL to ``agents/.density-snapshot.jsonl``.
25
+ - ``--snapshot`` writes JSONL to ``agents/runtime/density/snapshot.jsonl``.
26
26
 
27
27
  Stdlib only; no network. Re-runnable.
28
28
  """
@@ -44,7 +44,7 @@ from skill_linter import ( # noqa: E402
44
44
  gather_all_candidate_files,
45
45
  )
46
46
 
47
- SNAPSHOT_FILE = REPO_ROOT / "agents" / ".density-snapshot.jsonl"
47
+ SNAPSHOT_FILE = REPO_ROOT / "agents" / "runtime" / "density" / "snapshot.jsonl"
48
48
 
49
49
  _TABLE_ROW = re.compile(r"^\s*\|.*\|\s*$")
50
50
  _BULLET = re.compile(r"^\s*[-*]\s+\S")
@@ -3,7 +3,7 @@
3
3
 
4
4
  Measures the *current state* of the frugality canon along four
5
5
  deterministic axes. Output: JSONL baseline appended to
6
- agents/.frugality-baseline.jsonl (gitignored).
6
+ agents/runtime/frugality/baseline.jsonl (gitignored).
7
7
 
8
8
  Metrics:
9
9
  A. footprint — per-rule char/token count, kernel/tier breakdown
@@ -140,7 +140,7 @@ def metric_d_redundancy(root: Path) -> dict:
140
140
 
141
141
  def main() -> int:
142
142
  root = Path(__file__).resolve().parent.parent
143
- corpus = root / "agents" / ".agent-chat-history"
143
+ corpus = root / "agents" / "runtime" / ".agent-chat-history"
144
144
 
145
145
  record = {
146
146
  "schema_version": 1,
@@ -152,7 +152,7 @@ def main() -> int:
152
152
  "metric_d_redundancy": metric_d_redundancy(root),
153
153
  }
154
154
 
155
- out = root / "agents" / ".frugality-baseline.jsonl"
155
+ out = root / "agents" / "runtime" / "frugality" / "baseline.jsonl"
156
156
  with out.open("a") as fh:
157
157
  fh.write(json.dumps(record, ensure_ascii=False) + "\n")
158
158
  print(json.dumps(record, indent=2, ensure_ascii=False))
@@ -3,7 +3,7 @@
3
3
 
4
4
  Walks `agents/roadmaps/archive/` and computes per-roadmap checkbox
5
5
  completion ratio at archival time. Output: one-line trajectory metric
6
- per roadmap, plus an aggregate `agents/reports/roadmap-trajectory.json`.
6
+ per roadmap, plus an aggregate `agents/runtime/reports/roadmap-trajectory.json`.
7
7
 
8
8
  Checkbox grammar (mirrors `scripts/roadmap_progress_check.py`):
9
9
  - `[ ]` — open
@@ -28,7 +28,7 @@ from pathlib import Path
28
28
  REPO_ROOT = Path(__file__).resolve().parent.parent
29
29
  RULES_DIR = REPO_ROOT / ".agent-src.uncompressed" / "rules"
30
30
  OVERRIDES_FILE = REPO_ROOT / "docs" / "contracts" / "iron-law-overrides.txt"
31
- TREND_FILE = REPO_ROOT / "agents" / ".rule-budget-history.jsonl"
31
+ TREND_FILE = REPO_ROOT / "agents" / "runtime" / ".rule-budget-history.jsonl"
32
32
 
33
33
  # Council R2 amendments (2026-05-06) — see docs/contracts/kernel-membership.md § 5.1.
34
34
  # Per-rule cap raised 1.5k → 2.5k; warning band raised 1.2k → 2.0k.
@@ -241,7 +241,7 @@ def kernel_budget_check(
241
241
 
242
242
 
243
243
  def trend_append(agg: dict[str, object]) -> tuple[int, str]:
244
- """Append a daily snapshot to agents/.rule-budget-history.jsonl.
244
+ """Append a daily snapshot to agents/runtime/.rule-budget-history.jsonl.
245
245
 
246
246
  Idempotent per UTC day: if today's date already has a row, the file
247
247
  is not modified. Snapshot fields: date, kernel_chars, auto_chars,
@@ -284,7 +284,7 @@ def main(argv: list[str] | None = None) -> int:
284
284
  parser.add_argument(
285
285
  "--trend-append",
286
286
  action="store_true",
287
- help="append today's snapshot to agents/.rule-budget-history.jsonl (idempotent per UTC day)",
287
+ help="append today's snapshot to agents/runtime/.rule-budget-history.jsonl (idempotent per UTC day)",
288
288
  )
289
289
  args = parser.parse_args(argv)
290
290
 
@@ -48,7 +48,7 @@ _MODE_MARKER_PATTERN = re.compile(
48
48
  )
49
49
  _MODE_SCAN_DIRS = (
50
50
  Path("agents/sessions"),
51
- Path("agents/reports"),
51
+ Path("agents/runtime/reports"),
52
52
  Path("agents/handoffs"),
53
53
  Path("agents/learnings"),
54
54
  )
@@ -2,7 +2,7 @@
2
2
  """One-shot migration: inject the `suggestion:` frontmatter block into every
3
3
  command under `.agent-src.uncompressed/commands/`.
4
4
 
5
- Source-of-truth table: `agents/contexts/command-suggestion-eligibility.md`
5
+ Source-of-truth table: `agents/settings/contexts/command-suggestion-eligibility.md`
6
6
  (locked at end of road-to-context-aware-command-suggestion Phase 1).
7
7
 
8
8
  Idempotent: if `suggestion:` is already present for a command, the file is
@@ -55,8 +55,8 @@ ELIGIBLE: dict[str, tuple[str, str]] = {
55
55
  "bug-investigate": ("why is this broken, investigate this error, trace the root cause", "Sentry URL, Jira bug ticket key, or stack trace pasted in the prompt"),
56
56
  "commit": ("commit my changes, save this to git, create commits for these changes", "git status shows uncommitted changes"),
57
57
  "commit-in-chunks": ("commit everything autonomously, split and commit without confirmation", "autonomous mode active and uncommitted changes present"),
58
- "context-create": ("document this part of the codebase, create a context doc for X", "working in a module without an agents/contexts/ doc"),
59
- "context-refactor": ("update the context doc, refresh this context document", "existing agents/contexts/*.md referenced in the prompt"),
58
+ "context-create": ("document this part of the codebase, create a context doc for X", "working in a module without an agents/settings/contexts/ doc"),
59
+ "context-refactor": ("update the context doc, refresh this context document", "existing agents/settings/contexts/*.md referenced in the prompt"),
60
60
  "create-pr": ("open a PR, create a pull request, make a PR for this branch", "branch is ahead of base and not yet on a PR"),
61
61
  "create-pr-description": ("write a PR description, draft the PR text", "PR exists or branch ready for review without description"),
62
62
  "e2e-heal": ("fix the failing E2E tests, playwright tests are red", "failing test output from tests/e2e/"),
@@ -11,7 +11,7 @@ Wired to multiple events via the manifest:
11
11
  - session_start / user_prompt_submit → reset turn-scoped counters
12
12
  - pre_tool_use → record the planned edit's path before execution
13
13
 
14
- Output: `agents/state/minimal-safe-diff.json`
14
+ Output: `agents/runtime/state/minimal-safe-diff.json`
15
15
  {
16
16
  "schema_version": 1,
17
17
  "session_id": "<str>",
@@ -5,7 +5,7 @@ Reads `.agent-settings.yml` from the consumer repo and writes a
5
5
  deterministic state file the rule body can cite as the source of
6
6
  truth for "do I need to prompt the user about /onboard?".
7
7
 
8
- Output is written to `agents/state/onboarding-gate.json` with:
8
+ Output is written to `agents/runtime/state/onboarding-gate.json` with:
9
9
  {
10
10
  "required": <bool>, // true → rule fires on first turn
11
11
  "reason": "<string>", // why this state was set
@@ -31,7 +31,7 @@ import sys
31
31
  from pathlib import Path
32
32
 
33
33
  # Re-use the shared atomic-write helper so concerns honour the single
34
- # `agents/state/.dispatcher.lock` discipline (hook-architecture-v1.md
34
+ # `agents/runtime/state/.dispatcher.lock` discipline (hook-architecture-v1.md
35
35
  # § Concurrency, Phase 7.4).
36
36
  sys.path.insert(0, str(Path(__file__).resolve().parent))
37
37
  from hooks.state_io import atomic_write_json # noqa: E402
@@ -84,9 +84,9 @@ def _read_onboarded(settings_path: Path) -> tuple[bool, str]:
84
84
 
85
85
  def _write_state(consumer_root: Path, required: bool, reason: str,
86
86
  settings_present: bool) -> None:
87
- """Write `agents/state/onboarding-gate.json` atomically.
87
+ """Write `agents/runtime/state/onboarding-gate.json` atomically.
88
88
 
89
- Uses the shared `agents/state/.dispatcher.lock` so concurrent
89
+ Uses the shared `agents/runtime/state/.dispatcher.lock` so concurrent
90
90
  dispatcher invocations across platforms cannot tear the file
91
91
  (hook-architecture-v1.md § Concurrency, Phase 7.4).
92
92
  """