@event4u/agent-config 9.9.0 → 9.10.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 (384) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +153 -194
  3. package/README.md +1 -1
  4. package/dist/agent-src/commands/agent-status.md +12 -11
  5. package/dist/agent-src/commands/agents/user/accept.md +115 -30
  6. package/dist/agent-src/commands/agents/user/delete.md +147 -0
  7. package/dist/agent-src/commands/agents/user/review.md +65 -28
  8. package/dist/agent-src/commands/agents/user/show.md +82 -29
  9. package/dist/agent-src/commands/agents/user/update.md +2 -2
  10. package/dist/agent-src/commands/agents/user.md +16 -3
  11. package/dist/agent-src/commands/check-current-md.md +0 -10
  12. package/dist/agent-src/commands/condense.md +28 -97
  13. package/dist/agent-src/commands/cost/report.md +7 -0
  14. package/dist/agent-src/commands/fix/portability.md +0 -8
  15. package/dist/agent-src/commands/fix/refs.md +0 -8
  16. package/dist/agent-src/commands/humanize.md +2 -2
  17. package/dist/agent-src/commands/jira-ticket.md +1 -1
  18. package/dist/agent-src/commands/memory/load.md +11 -0
  19. package/dist/agent-src/commands/optimize/skills.md +1 -1
  20. package/dist/agent-src/commands/pr/create.md +4 -4
  21. package/dist/agent-src/commands/profile/show.md +3 -3
  22. package/dist/agent-src/commands/rule-compliance-audit.md +5 -4
  23. package/dist/agent-src/commands/security-audit-config.md +1 -1
  24. package/dist/agent-src/commands/sync/gitignore/fix.md +1 -1
  25. package/dist/agent-src/commands/tdd.md +21 -0
  26. package/dist/agent-src/commands/team/delegate.md +2 -2
  27. package/dist/agent-src/commands/team-knowledge/bootstrap.md +9 -8
  28. package/dist/agent-src/commands/team-knowledge/consolidate.md +8 -7
  29. package/dist/agent-src/commands/team.md +4 -1
  30. package/dist/agent-src/commands/upstream-contribute.md +0 -1
  31. package/dist/agent-src/contexts/authority/commit-mechanics.md +7 -0
  32. package/dist/agent-src/contexts/authority/destructive-mechanics.md +16 -0
  33. package/dist/agent-src/contexts/authority/scope-mechanics.md +61 -0
  34. package/dist/agent-src/contexts/communication/rules-auto/reply-close-mechanics.md +20 -18
  35. package/dist/agent-src/contexts/communication/rules-auto/skill-quality-mechanics.md +1 -1
  36. package/dist/agent-src/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md +1 -1
  37. package/dist/agent-src/contexts/communication/rules-auto/source-of-truth-mechanics.md +9 -10
  38. package/dist/agent-src/contexts/communication/rules-auto/think-before-action-mechanics.md +1 -1
  39. package/dist/agent-src/contexts/communication/rules-auto/user-interaction-mechanics.md +11 -0
  40. package/dist/agent-src/contexts/contracts/artifact-engagement-flow.md +26 -15
  41. package/dist/agent-src/contexts/contracts/command-suggestion-flow.md +3 -0
  42. package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +67 -37
  43. package/dist/agent-src/contexts/execution/auto-orchestration-activation.md +1 -1
  44. package/dist/agent-src/contexts/execution/autonomy-examples.md +1 -1
  45. package/dist/agent-src/contexts/execution/autonomy-mechanics.md +7 -6
  46. package/dist/agent-src/contexts/execution/evidence-discipline.md +92 -77
  47. package/dist/agent-src/contexts/execution/orchestration-benchmark-gate.md +22 -21
  48. package/dist/agent-src/contexts/execution/orchestration-telemetry.md +24 -0
  49. package/dist/agent-src/contexts/execution/project-intelligence.md +122 -103
  50. package/dist/agent-src/contexts/execution/roadmap-execution-contract.md +23 -21
  51. package/dist/agent-src/contexts/execution/subagent-response-contract.md +5 -5
  52. package/dist/agent-src/contexts/execution/subagent-routing.md +11 -0
  53. package/dist/agent-src/contexts/execution/subagent-spawn-contract.md +13 -13
  54. package/dist/agent-src/contexts/execution/subagent-steering.md +36 -34
  55. package/dist/agent-src/contexts/execution/toolchain-resolver.md +1 -1
  56. package/dist/agent-src/contexts/execution/user-memory-channels.md +189 -0
  57. package/dist/agent-src/contexts/execution/verification-mechanics.md +9 -0
  58. package/dist/agent-src/contexts/model-recommendations.md +3 -2
  59. package/dist/agent-src/contexts/subagent-configuration.md +3 -3
  60. package/dist/agent-src/ghostwriter/README.md +2 -2
  61. package/dist/agent-src/packs/README.md +1 -1
  62. package/dist/agent-src/personas/README.md +5 -5
  63. package/dist/agent-src/personas/_template-specialist/persona.md +3 -3
  64. package/dist/agent-src/personas/backend-architect.md +24 -23
  65. package/dist/agent-src/personas/eloquent-tamer.md +30 -30
  66. package/dist/agent-src/personas/frontend-engineer.md +30 -30
  67. package/dist/agent-src/personas/product-owner.md +41 -38
  68. package/dist/agent-src/personas/qa.md +13 -13
  69. package/dist/agent-src/personas/security-engineer.md +22 -22
  70. package/dist/agent-src/presets/README.md +3 -3
  71. package/dist/agent-src/profiles/README.md +3 -3
  72. package/dist/agent-src/rules/active-remediation.md +2 -2
  73. package/dist/agent-src/rules/artifact-engagement-recording.md +4 -4
  74. package/dist/agent-src/rules/ask-when-uncertain.md +0 -4
  75. package/dist/agent-src/rules/augment-edit-discipline.md +1 -1
  76. package/dist/agent-src/rules/broken-access-control.md +4 -4
  77. package/dist/agent-src/rules/code-comment-discipline.md +1 -1
  78. package/dist/agent-src/rules/code-provenance.md +2 -2
  79. package/dist/agent-src/rules/commit-policy.md +4 -9
  80. package/dist/agent-src/rules/communication-through-line.md +5 -5
  81. package/dist/agent-src/rules/decision-revisit-gate.md +1 -1
  82. package/dist/agent-src/rules/doc-screenshot-hygiene.md +1 -1
  83. package/dist/agent-src/rules/domain-adoption-policy.md +1 -1
  84. package/dist/agent-src/rules/domain-safety-pii.md +1 -1
  85. package/dist/agent-src/rules/external-code-graph-interop.md +1 -1
  86. package/dist/agent-src/rules/fast-path-marker-visibility.md +43 -7
  87. package/dist/agent-src/rules/finance-safety-floor.md +1 -1
  88. package/dist/agent-src/rules/framework-neutrality-in-generic-skills.md +3 -3
  89. package/dist/agent-src/rules/history-discipline.md +1 -1
  90. package/dist/agent-src/rules/legal-safety-floor.md +1 -1
  91. package/dist/agent-src/rules/lethal-trifecta-guard.md +5 -5
  92. package/dist/agent-src/rules/low-impact-corpus-privacy-floor.md +10 -8
  93. package/dist/agent-src/rules/media-governance-routing.md +13 -13
  94. package/dist/agent-src/rules/media-sync-ground-truth.md +29 -11
  95. package/dist/agent-src/rules/no-cheap-questions.md +7 -7
  96. package/dist/agent-src/rules/no-decorative-emojis-in-git-surfaces.md +29 -18
  97. package/dist/agent-src/rules/non-destructive-by-default.md +5 -23
  98. package/dist/agent-src/rules/onboarding-gate.md +14 -4
  99. package/dist/agent-src/rules/persona-governance.md +2 -2
  100. package/dist/agent-src/rules/prefer-enums-over-literals.md +9 -9
  101. package/dist/agent-src/rules/preservation-guard.md +10 -2
  102. package/dist/agent-src/rules/question-not-instruction.md +1 -1
  103. package/dist/agent-src/rules/roadmap-progress-sync.md +6 -6
  104. package/dist/agent-src/rules/rule-type-governance.md +1 -1
  105. package/dist/agent-src/rules/scale-discipline.md +1 -1
  106. package/dist/agent-src/rules/scope-control.md +1 -1
  107. package/dist/agent-src/rules/secret-vcs-guard.md +1 -1
  108. package/dist/agent-src/rules/security-sensitive-stop.md +17 -11
  109. package/dist/agent-src/rules/senior-engineering-discipline.md +17 -17
  110. package/dist/agent-src/rules/session-canary.md +1 -1
  111. package/dist/agent-src/rules/skill-quality.md +1 -1
  112. package/dist/agent-src/rules/source-confidentiality.md +21 -19
  113. package/dist/agent-src/rules/source-of-truth.md +6 -5
  114. package/dist/agent-src/rules/spreadsheet-source-quality.md +2 -2
  115. package/dist/agent-src/rules/strategy-safety-floor.md +1 -1
  116. package/dist/agent-src/rules/think-before-action.md +5 -5
  117. package/dist/agent-src/rules/token-budget-discipline.md +5 -3
  118. package/dist/agent-src/rules/token-efficiency.md +2 -2
  119. package/dist/agent-src/rules/untrusted-input-defense.md +4 -4
  120. package/dist/agent-src/rules/user-interaction.md +12 -0
  121. package/dist/agent-src/rules/verify-before-complete.md +4 -24
  122. package/dist/agent-src/skills/adversarial-review/SKILL.md +2 -2
  123. package/dist/agent-src/skills/agent-security-review/SKILL.md +52 -45
  124. package/dist/agent-src/skills/agents-md-thin-root/SKILL.md +2 -2
  125. package/dist/agent-src/skills/ai-code-blindspots/SKILL.md +20 -20
  126. package/dist/agent-src/skills/ai-council/SKILL.md +185 -128
  127. package/dist/agent-src/skills/analysis-skill-router/SKILL.md +3 -3
  128. package/dist/agent-src/skills/api-endpoint/SKILL.md +2 -2
  129. package/dist/agent-src/skills/artisan-commands/SKILL.md +2 -2
  130. package/dist/agent-src/skills/async-python-patterns/SKILL.md +8 -7
  131. package/dist/agent-src/skills/authz-review/SKILL.md +16 -15
  132. package/dist/agent-src/skills/aws-infrastructure/SKILL.md +5 -5
  133. package/dist/agent-src/skills/blade-ui/SKILL.md +1 -1
  134. package/dist/agent-src/skills/bug-analyzer/SKILL.md +30 -12
  135. package/dist/agent-src/skills/code-intelligence/SKILL.md +0 -1
  136. package/dist/agent-src/skills/code-intelligence/evals/triggers.json +52 -0
  137. package/dist/agent-src/skills/code-review/SKILL.md +6 -6
  138. package/dist/agent-src/skills/command-routing/SKILL.md +5 -4
  139. package/dist/agent-src/skills/composer-packages/SKILL.md +2 -2
  140. package/dist/agent-src/skills/condense-memory/SKILL.md +43 -41
  141. package/dist/agent-src/skills/context-document/SKILL.md +23 -21
  142. package/dist/agent-src/skills/copilot-config/SKILL.md +6 -1
  143. package/dist/agent-src/skills/decision-record/SKILL.md +20 -18
  144. package/dist/agent-src/skills/design-intelligence/SKILL.md +4 -4
  145. package/dist/agent-src/skills/design-review/SKILL.md +15 -14
  146. package/dist/agent-src/skills/design-system-capture/reference/design-system-json.md +28 -25
  147. package/dist/agent-src/skills/devcontainer/SKILL.md +2 -2
  148. package/dist/agent-src/skills/docker/SKILL.md +1 -1
  149. package/dist/agent-src/skills/docx-authoring/evals/triggers.json +52 -0
  150. package/dist/agent-src/skills/emit-tickets/SKILL.md +2 -2
  151. package/dist/agent-src/skills/error-handling-patterns/SKILL.md +1 -1
  152. package/dist/agent-src/skills/estimate-ticket/SKILL.md +2 -2
  153. package/dist/agent-src/skills/evaluate-llm-feature/SKILL.md +0 -1
  154. package/dist/agent-src/skills/evaluate-llm-feature/evals/triggers.json +52 -0
  155. package/dist/agent-src/skills/existing-ui-audit/SKILL.md +6 -5
  156. package/dist/agent-src/skills/feature-planning/SKILL.md +2 -2
  157. package/dist/agent-src/skills/finishing-a-development-branch/SKILL.md +3 -3
  158. package/dist/agent-src/skills/flux/SKILL.md +1 -1
  159. package/dist/agent-src/skills/frontend-render-security/SKILL.md +13 -13
  160. package/dist/agent-src/skills/git-workflow/SKILL.md +33 -33
  161. package/dist/agent-src/skills/grafana/SKILL.md +5 -0
  162. package/dist/agent-src/skills/humanizer/SKILL.md +83 -66
  163. package/dist/agent-src/skills/humanizer/data/patterns.md +14 -14
  164. package/dist/agent-src/skills/humanizer/references/anti-aiisms.md +4 -4
  165. package/dist/agent-src/skills/judge-artifact-completeness/SKILL.md +82 -37
  166. package/dist/agent-src/skills/judge-bug-hunter/SKILL.md +17 -5
  167. package/dist/agent-src/skills/judge-injection-defense/SKILL.md +63 -25
  168. package/dist/agent-src/skills/judge-security-auditor/SKILL.md +2 -0
  169. package/dist/agent-src/skills/judge-synthesis/SKILL.md +72 -28
  170. package/dist/agent-src/skills/laravel-horizon/SKILL.md +5 -0
  171. package/dist/agent-src/skills/laravel-mail/SKILL.md +5 -4
  172. package/dist/agent-src/skills/laravel-middleware/SKILL.md +5 -4
  173. package/dist/agent-src/skills/laravel-notifications/SKILL.md +10 -9
  174. package/dist/agent-src/skills/laravel-pennant/SKILL.md +1 -1
  175. package/dist/agent-src/skills/laravel-pulse/SKILL.md +9 -8
  176. package/dist/agent-src/skills/laravel-reverb/SKILL.md +6 -5
  177. package/dist/agent-src/skills/laravel-scheduling/SKILL.md +6 -1
  178. package/dist/agent-src/skills/laravel-validation/SKILL.md +12 -0
  179. package/dist/agent-src/skills/launch-readiness/SKILL.md +1 -1
  180. package/dist/agent-src/skills/learning-to-rule-or-skill/SKILL.md +7 -7
  181. package/dist/agent-src/skills/learning-tutor/SKILL.md +44 -43
  182. package/dist/agent-src/skills/learning-tutor/evals/triggers.json +52 -0
  183. package/dist/agent-src/skills/license-compliance-audit/SKILL.md +7 -7
  184. package/dist/agent-src/skills/license-compliance-borrow-check/SKILL.md +3 -3
  185. package/dist/agent-src/skills/license-compliance-credits/SKILL.md +4 -4
  186. package/dist/agent-src/skills/llm-provider-knowledge/SKILL.md +0 -1
  187. package/dist/agent-src/skills/memory-consolidation/SKILL.md +69 -64
  188. package/dist/agent-src/skills/motion-choreographer/SKILL.md +6 -6
  189. package/dist/agent-src/skills/pdf-tools/evals/triggers.json +52 -0
  190. package/dist/agent-src/skills/performance-analysis/SKILL.md +7 -3
  191. package/dist/agent-src/skills/persona-improvement/SKILL.md +0 -2
  192. package/dist/agent-src/skills/persona-improvement/evals/triggers.json +52 -0
  193. package/dist/agent-src/skills/php-coder/SKILL.md +10 -0
  194. package/dist/agent-src/skills/prediction-pool-optimizer/SKILL.md +129 -120
  195. package/dist/agent-src/skills/prediction-pool-optimizer/reference/ev-fixtures.md +36 -35
  196. package/dist/agent-src/skills/prediction-pool-optimizer/reference/odds-and-bonus.md +45 -41
  197. package/dist/agent-src/skills/project-analysis-core/SKILL.md +4 -4
  198. package/dist/agent-src/skills/project-analysis-hypothesis-driven/SKILL.md +3 -3
  199. package/dist/agent-src/skills/project-analysis-react/SKILL.md +1 -1
  200. package/dist/agent-src/skills/project-analysis-symfony/SKILL.md +1 -1
  201. package/dist/agent-src/skills/project-analysis-zend-laminas/SKILL.md +2 -2
  202. package/dist/agent-src/skills/prompt-engineering-patterns/SKILL.md +1 -1
  203. package/dist/agent-src/skills/prompt-validator/SKILL.md +39 -39
  204. package/dist/agent-src/skills/quality-tools/SKILL.md +15 -15
  205. package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +55 -19
  206. package/dist/agent-src/skills/react-shadcn-ui/reference/registry.md +29 -27
  207. package/dist/agent-src/skills/readme-writing-package/SKILL.md +2 -2
  208. package/dist/agent-src/skills/reasoning-orchestrator/SKILL.md +25 -25
  209. package/dist/agent-src/skills/recursive-verification/SKILL.md +6 -5
  210. package/dist/agent-src/skills/refine-prompt/SKILL.md +1 -1
  211. package/dist/agent-src/skills/refine-ticket/SKILL.md +20 -2
  212. package/dist/agent-src/skills/repomix-packer/SKILL.md +1 -1
  213. package/dist/agent-src/skills/requesting-code-review/SKILL.md +2 -2
  214. package/dist/agent-src/skills/roadmap-management/SKILL.md +80 -66
  215. package/dist/agent-src/skills/roadmap-writing/SKILL.md +84 -77
  216. package/dist/agent-src/skills/rule-refactor/SKILL.md +1 -1
  217. package/dist/agent-src/skills/screenshot-hygiene/evals/triggers.json +52 -0
  218. package/dist/agent-src/skills/security-audit/SKILL.md +26 -9
  219. package/dist/agent-src/skills/security-maturity-assessment/SKILL.md +38 -16
  220. package/dist/agent-src/skills/skill-improvement-pipeline/SKILL.md +14 -11
  221. package/dist/agent-src/skills/skill-writing/SKILL.md +9 -8
  222. package/dist/agent-src/skills/song-to-script/SKILL.md +93 -85
  223. package/dist/agent-src/skills/sql-writing/SKILL.md +2 -2
  224. package/dist/agent-src/skills/stakeholder-tradeoff/SKILL.md +4 -3
  225. package/dist/agent-src/skills/standards-from-config/SKILL.md +61 -43
  226. package/dist/agent-src/skills/subagent-orchestration/SKILL.md +22 -8
  227. package/dist/agent-src/skills/subagent-orchestration/prompts/README.md +28 -2
  228. package/dist/agent-src/skills/supply-chain-intake/SKILL.md +13 -13
  229. package/dist/agent-src/skills/systematic-debugging/SKILL.md +22 -21
  230. package/dist/agent-src/skills/tailwind-engineer/SKILL.md +1 -1
  231. package/dist/agent-src/skills/technical-specification/SKILL.md +5 -0
  232. package/dist/agent-src/skills/terraform/SKILL.md +2 -2
  233. package/dist/agent-src/skills/terragrunt/SKILL.md +8 -8
  234. package/dist/agent-src/skills/testing-anti-patterns/process-anti-patterns.md +1 -1
  235. package/dist/agent-src/skills/threat-modeling/SKILL.md +19 -13
  236. package/dist/agent-src/skills/universal-project-analysis/SKILL.md +1 -1
  237. package/dist/agent-src/skills/upstream-contribute/SKILL.md +0 -1
  238. package/dist/agent-src/skills/using-git-worktrees/SKILL.md +9 -9
  239. package/dist/agent-src/skills/validate-feature-fit/SKILL.md +3 -1
  240. package/dist/agent-src/skills/verify-completion-evidence/SKILL.md +4 -6
  241. package/dist/agent-src/skills/verify-repair-loop/SKILL.md +67 -61
  242. package/dist/agent-src/skills/video-director/SKILL.md +7 -7
  243. package/dist/agent-src/skills/worktree-lifecycle/SKILL.md +3 -3
  244. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  245. package/dist/agent-src/templates/contexts/knowledge-pages.md +47 -45
  246. package/dist/agent-src/templates/contexts/lesson-card.md +2 -2
  247. package/dist/agent-src/templates/contexts/tenant-boundaries.md +2 -2
  248. package/dist/agent-src/templates/contexts.md +1 -1
  249. package/dist/agent-src/templates/features.md +1 -1
  250. package/dist/agent-src/templates/roadmaps.md +125 -116
  251. package/dist/agent-src/templates/rule.md +2 -1
  252. package/dist/agent-src/templates/scripts/pr_risk_review.ts +0 -0
  253. package/dist/agent-src/templates/scripts/telemetry/aggregator.ts +0 -0
  254. package/dist/agent-src/templates/scripts/tier_usage_report.ts +2 -2
  255. package/dist/agent-src/templates/scripts/work_engine/directives/ui/polish.ts +2 -2
  256. package/dist/agent-src/templates/scripts/work_engine/directives/ui/review.ts +1 -1
  257. package/dist/agent-src/user-types/README.md +8 -8
  258. package/dist/agent-src/user-types/galabau-field-crew.md +34 -33
  259. package/dist/agent-src/user-types/metalworking-shop.md +35 -34
  260. package/dist/agent-src/user-types/truck-driver.md +22 -20
  261. package/dist/cli/python/workspace_roles.js +2 -2
  262. package/dist/cli/python/workspace_roles.js.map +1 -1
  263. package/dist/discovery/deprecation-report.md +1 -1
  264. package/dist/discovery/discovery-manifest.json +88 -62
  265. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  266. package/dist/discovery/discovery-manifest.summary.md +3 -3
  267. package/dist/discovery/orphan-report.md +1 -1
  268. package/dist/discovery/packs.json +6 -5
  269. package/dist/discovery/trust-report.md +2 -2
  270. package/dist/discovery/workspaces.json +5 -4
  271. package/dist/hooks/dispatch.js +186 -12
  272. package/dist/install/install.mjs +8 -0
  273. package/dist/mcp/registry-manifest.json +3 -3
  274. package/dist/mcp/server.json +2 -2
  275. package/dist/mcp/server.mjs +1199 -857
  276. package/dist/router.json +1 -1
  277. package/dist/scripts/_lib/compile_time_toggles.js +48 -0
  278. package/dist/scripts/_lib/compile_time_toggles.js.map +1 -0
  279. package/dist/scripts/condense.js +234 -217
  280. package/dist/scripts/condense.js.map +1 -1
  281. package/dist/server/schemas/settings.js +4 -0
  282. package/dist/server/schemas/settings.js.map +1 -1
  283. package/dist/shared/userMd/utils.js +30 -0
  284. package/dist/shared/userMd/utils.js.map +1 -1
  285. package/dist/ui/assets/index-BpSQt5vm.js.map +1 -1
  286. package/docs/guidelines/agent-infra/api-cost-levers.md +56 -5
  287. package/docs/guidelines/agent-infra/simplicity-and-goal-demos.md +93 -33
  288. package/package.json +1 -1
  289. package/src/agent-src/templates/scripts/pr_risk_review.ts +0 -0
  290. package/src/agent-src/templates/scripts/telemetry/aggregator.ts +0 -0
  291. package/src/agent-src/templates/scripts/tier_usage_report.ts +2 -2
  292. package/src/agent-src/templates/scripts/work_engine/directives/ui/polish.ts +2 -2
  293. package/src/agent-src/templates/scripts/work_engine/directives/ui/review.ts +1 -1
  294. package/src/config/agent-settings.template.yml +32 -2
  295. package/src/config/ci-local-parity.yml +142 -0
  296. package/src/config/gate-coverage.yml +127 -0
  297. package/src/config/preamble-payload-budget.json +44 -0
  298. package/src/scripts/_cli/cmd_doctor.ts +78 -2
  299. package/src/scripts/_lib/agent_user_profile.ts +381 -0
  300. package/src/scripts/_lib/agents_overlay.ts +9 -0
  301. package/src/scripts/_lib/anchor_eval.ts +311 -0
  302. package/src/scripts/_lib/cc_transcript.ts +316 -0
  303. package/src/scripts/_lib/compile_time_toggles.ts +79 -0
  304. package/src/scripts/_lib/confusables.ts +101 -0
  305. package/src/scripts/_lib/duplicate_scope_census.ts +77 -0
  306. package/src/scripts/_lib/managed_agents_folder.ts +181 -0
  307. package/src/scripts/_lib/payload_hash_drift.ts +126 -0
  308. package/src/scripts/_lib/preservation_migration.ts +291 -0
  309. package/src/scripts/_lib/retrieval_sanitize.ts +166 -2
  310. package/src/scripts/_lib/scan_scope.ts +115 -0
  311. package/src/scripts/_lib/user_global_memory_audit.ts +187 -0
  312. package/src/scripts/_lib/user_global_observations.ts +830 -0
  313. package/src/scripts/_lib/user_global_revocations.ts +110 -0
  314. package/src/scripts/_lib/user_memory_gate_counters.ts +291 -0
  315. package/src/scripts/ai_council/blind_review.ts +0 -0
  316. package/src/scripts/ai_council/budget_guard.ts +90 -11
  317. package/src/scripts/ai_council/bundler.ts +2 -2
  318. package/src/scripts/ai_council/clients.ts +59 -3
  319. package/src/scripts/ai_council/config.ts +38 -0
  320. package/src/scripts/ai_council/orchestrator.ts +54 -9
  321. package/src/scripts/ai_team/team_dispatch.ts +17 -6
  322. package/src/scripts/anchor_eval_falsify.ts +198 -0
  323. package/src/scripts/anchor_scoring_run.ts +239 -0
  324. package/src/scripts/annotate_discovery.ts +1 -65
  325. package/src/scripts/bench_quality_run.ts +168 -4
  326. package/src/scripts/cache_realization_report.ts +782 -0
  327. package/src/scripts/check_artefact_count_messaging.ts +5 -1
  328. package/src/scripts/check_augment_description_cap.ts +15 -4
  329. package/src/scripts/check_ci_local_parity.ts +317 -0
  330. package/src/scripts/check_condensation.ts +96 -191
  331. package/src/scripts/check_context_paths.ts +38 -9
  332. package/src/scripts/check_gate_coverage.ts +299 -0
  333. package/src/scripts/check_iron_law_prominence.ts +22 -1
  334. package/src/scripts/check_kernel_prefix_stability.ts +0 -0
  335. package/src/scripts/check_no_new_legacy_path.ts +16 -6
  336. package/src/scripts/check_no_roadmap_refs.ts +22 -9
  337. package/src/scripts/check_originality_freshness.ts +167 -0
  338. package/src/scripts/check_preamble_payload_budget.ts +130 -0
  339. package/src/scripts/check_proposal.ts +0 -0
  340. package/src/scripts/check_references.ts +0 -1
  341. package/src/scripts/check_safety_floor_untouched.ts +171 -24
  342. package/src/scripts/check_site_links.ts +62 -3
  343. package/src/scripts/ci_status.ts +0 -0
  344. package/src/scripts/cluster_near_miss_patterns.ts +0 -0
  345. package/src/scripts/code_graph/build.ts +0 -0
  346. package/src/scripts/command_suggester/types.ts +0 -0
  347. package/src/scripts/compile_router.ts +10 -14
  348. package/src/scripts/condense.sh +3 -4
  349. package/src/scripts/condense.ts +247 -228
  350. package/src/scripts/cost/track.mjs +168 -33
  351. package/src/scripts/cost_summary.ts +33 -1
  352. package/src/scripts/council_cli.ts +45 -3
  353. package/src/scripts/discovery_graph.ts +0 -0
  354. package/src/scripts/encoding_corpus.ts +500 -0
  355. package/src/scripts/encoding_corpus_report.ts +216 -0
  356. package/src/scripts/generate_index.ts +19 -2
  357. package/src/scripts/install-hooks.sh +2 -2
  358. package/src/scripts/learning_sidecar.ts +0 -0
  359. package/src/scripts/lint_confusables.ts +10 -72
  360. package/src/scripts/lint_featured_skills.ts +0 -0
  361. package/src/scripts/lint_hidden_unicode.ts +208 -0
  362. package/src/scripts/lint_load_context.ts +17 -5
  363. package/src/scripts/lint_new_skill_gate.ts +9 -3
  364. package/src/scripts/lint_no_python_twin_rationale.ts +17 -2
  365. package/src/scripts/lint_originality.ts +1 -1
  366. package/src/scripts/lint_skill_originality.ts +1 -1
  367. package/src/scripts/lint_ticket_buildable.ts +1 -1
  368. package/src/scripts/mcp_server/tools.ts +4 -4
  369. package/src/scripts/measure_scope_dedup.ts +224 -0
  370. package/src/scripts/memory_lookup.ts +0 -0
  371. package/src/scripts/mine_session.ts +98 -0
  372. package/src/scripts/orchestration_payload_hash_drift.ts +145 -0
  373. package/src/scripts/preamble_byte_census.ts +574 -0
  374. package/src/scripts/probe_skill_registration.ts +2 -2
  375. package/src/scripts/redact_hook_capture.ts +13 -0
  376. package/src/scripts/release.ts +65 -10
  377. package/src/scripts/router_telemetry.ts +1 -1
  378. package/src/scripts/second_brain_retrieval.ts +14 -4
  379. package/src/scripts/skill_linter.ts +5 -0
  380. package/src/scripts/surface-tiers.yml +2 -0
  381. package/src/scripts/validate_pack_yaml.ts +0 -0
  382. package/src/server/schemas/settings.ts +8 -0
  383. package/src/shared/userMd/utils.ts +31 -0
  384. package/dist/agent-src/rules/telegraph-speak.md +0 -87
@@ -7,7 +7,8 @@ visibility: internal
7
7
  cluster: agents
8
8
  sub: user
9
9
  skills: [agents]
10
- description: Read-only render of .agent-user.md — prints the persona summary the host agent loads at session start.
10
+ description: Read-only render of the effective (merged) user profile — global profile.md plus project .agent-user.md. --audit renders the global layer raw for delete/revoke decisions.
11
+ argument-hint: "[--audit]"
11
12
  suggestion:
12
13
  eligible: false
13
14
  rationale: "Cluster sub-command — reached via its cluster head's routing or its explicit /cluster:sub name; not independently suggested (surface-consolidation)."
@@ -19,50 +20,71 @@ packs:
19
20
 
20
21
  # /agents user show
21
22
 
22
- Read-only render of the project-root `.agent-user.md` per
23
- [`docs/contracts/agent-user-schema.md`](../../../../../../../../../../../docs/contracts/agent-user-schema.md).
23
+ Read-only render of the **effective, merged** user profile — the
24
+ global `~/.event4u/agent-config/user/profile.md` layer plus the
25
+ project-root `.agent-user.md` layer — per
26
+ [`docs/contracts/agent-user-schema.md`](../../../../../docs/contracts/agent-user-schema.md)
27
+ and its Loader contract / merge rule (ADR-138).
24
28
 
25
29
  Use when:
26
30
 
27
31
  - You want to see what persona the host agent currently loads.
28
- - You want to confirm `last_updated` is fresh (≤90 days).
32
+ - You want to confirm the **effective** `last_updated` is fresh (≤90 days).
29
33
  - You want a paste-ready summary for handoff or onboarding.
30
34
 
31
35
  Does **not** edit, observe, or buffer anything. Pure read.
32
36
 
37
+ Called with `--audit` (road-to-global-user-memory Phase 4): renders the
38
+ GLOBAL layer's raw holdings instead of the merged effective profile —
39
+ see [§ Audit mode](#audit-mode---audit) below. Use `--audit` when
40
+ deciding what to delete via [`/agents user delete`](delete.md).
41
+
33
42
  ## Steps
34
43
 
35
- ### 1. Locate the file
44
+ ### 1. Locate both layers
36
45
 
37
46
  ```bash
38
47
  ls .agent-user.md 2>/dev/null
48
+ ls ~/.event4u/agent-config/user/profile.md 2>/dev/null
49
+ ls ~/.config/agent-config/user/profile.md 2>/dev/null # legacy fallback
39
50
  ```
40
51
 
41
- | State | Action |
42
- |---|---|
43
- | Present | Proceed |
44
- | Missing | Print "No `.agent-user.md` found at project root. Run `/agents user init` to create one." and stop |
52
+ | Project file | Global file | Action |
53
+ |---|---|---|
54
+ | Present | Present or absent | Proceed — project layer wins per field it declares |
55
+ | Missing | Present | Proceed — render sourced entirely from the global layer |
56
+ | Missing | Missing | Print "No `.agent-user.md` and no global profile found. Run `/agents user init` to create one, or set up the global profile." and stop |
45
57
 
46
- ### 2. Parse frontmatter
58
+ ### 2. Parse frontmatter — per layer
47
59
 
48
- Parse the YAML frontmatter and the body (everything after the second
49
- `---`). Validate against the locked v1 schema:
60
+ Parse each present layer's YAML frontmatter and body (everything after
61
+ the second `---`) independently. Per layer:
50
62
 
51
63
  - `version` is `1`.
52
- - `identity.name`, `language`, `role`, `style.pace`,
53
- `voice_sample`, `last_updated` are all present.
54
- - File is ≤100 lines total.
64
+ - File is ≤100 lines total — the cap applies **per layer**, never as a
65
+ shared total across both files.
66
+
67
+ Any violation → print a one-line warning identifying the layer, the
68
+ missing/malformed field, and continue with the render (so the user can
69
+ fix it via `/agents user update`).
70
+
71
+ ### 3. Merge
55
72
 
56
- Any violation → print a one-line warning identifying the missing /
57
- malformed field and continue with the render (so the user can fix it
58
- via `/agents user update`).
73
+ Apply the deepest-wins merge rule per
74
+ [`agent-user-schema.md § Global profile layer`](../../../../../docs/contracts/agent-user-schema.md#global-profile-layer-adr-138):
75
+ for each field (`identity.name`, `language`, `role`, `style.pace`,
76
+ `voice_sample`, `last_updated`), the project layer's value wins when
77
+ present, otherwise the global layer's value is used. `# Notes`
78
+ concatenates both layers' text under `[global]` / `[project]` markers
79
+ when both carry content.
59
80
 
60
- ### 3. Render
81
+ ### 4. Render
61
82
 
62
- Print the persona in this exact shape:
83
+ Print the merged persona in this exact shape:
63
84
 
64
85
  ```
65
- .agent-user.md ({n} lines, last_updated: YYYY-MM-DD{staleness_marker})
86
+ Effective user profile ({staleness_marker})
87
+ sources: identity.name={global|project}, style.pace={global|project}, …
66
88
 
67
89
  Identity : {nickname or name} ({name} if nickname is set)
68
90
  Language : {language}
@@ -75,15 +97,20 @@ Print the persona in this exact shape:
75
97
 
76
98
  Notes
77
99
  ─────────────
78
- {body, indented 2 spaces; "(empty)" if no notes}
100
+ {merged notes, indented 2 spaces; "(empty)" if neither layer has notes}
79
101
  ```
80
102
 
81
- Where `{staleness_marker}` is:
103
+ Where `{staleness_marker}` reflects the **effective** `last_updated`
104
+ (the merged value, not necessarily the project file's own date):
82
105
 
83
- - empty when `last_updated` is within 90 days.
106
+ - empty when within 90 days.
84
107
  - ` ⚠️ >90 days` when older (per the schema staleness rule).
85
108
 
86
- ### 4. Loader hint
109
+ The `sources:` line lists only the fields that resolved to a
110
+ non-default value, so a project-only or global-only user sees a
111
+ single-source line and is not confused by an empty cascade.
112
+
113
+ ### 5. Loader hint
87
114
 
88
115
  If the host-agent loader has NOT yet picked up the file this session
89
116
  (detect via session memory if available), print one line:
@@ -94,13 +121,39 @@ If the host-agent loader has NOT yet picked up the file this session
94
121
 
95
122
  Otherwise omit — agent already knows.
96
123
 
97
- ### 5. Stop
124
+ ### 6. Stop
98
125
 
99
126
  Do NOT chain to other `/agents user *` commands. Do NOT commit.
100
127
 
128
+ ## Audit mode (`--audit`)
129
+
130
+ Road-to-global-user-memory Phase 4. Renders what the GLOBAL layer
131
+ currently holds — `profile.md`'s fields, the observation buffer's entry
132
+ count and per-field counts, promotion candidates, and the revocation
133
+ ledger's tombstone count — without the user reading raw JSONL. This is
134
+ the global layer only; the project-local `.agent-user.md` never leaves
135
+ the project it lives in, so there is nothing to audit for it here.
136
+
137
+ 1. Call
138
+ [`renderGlobalMemoryAudit()`](../../../../../src/scripts/_lib/user_global_memory_audit.ts).
139
+ 2. Print its `text` verbatim — every value it contains already passed
140
+ the same
141
+ [`knowledge_global_redaction.redaction_scan`](../../../../../src/scripts/_lib/knowledge_global_redaction.ts)
142
+ gate the write path runs; nothing here needs a second scan.
143
+ 3. If `revocationCount > 0`, add one line: "Run `/agents user delete
144
+ --show-revoked` to see what was deleted and why." (a stub for a
145
+ future `--show-revoked` flag; today the count is sufficient — the
146
+ full ledger is inspectable via
147
+ [`user_global_revocations.loadTombstones`](../../../../../src/scripts/_lib/user_global_revocations.ts)
148
+ for a maintainer who needs it).
149
+ 4. Stop. Do NOT chain to `--audit`'s own delete follow-up — hand the
150
+ user to [`/agents user delete`](delete.md) explicitly if they name
151
+ something to remove.
152
+
101
153
  ## Rules
102
154
 
103
- - Read-only. Never write `.agent-user.md` from this command.
155
+ - Read-only. Never write `.agent-user.md` or the global `profile.md`
156
+ from this command — including `--audit` mode.
104
157
  - Never print fields the schema does not define — even if they exist
105
158
  in the file. (Forward-compat: an unexpected field is a warning, not
106
159
  a render target.)
@@ -110,6 +163,6 @@ Do NOT chain to other `/agents user *` commands. Do NOT commit.
110
163
 
111
164
  ## See also
112
165
 
113
- - Schema: [`agent-user-schema`](../../../../../../../../../../../docs/contracts/agent-user-schema.md).
166
+ - Schema: [`agent-user-schema`](../../../../../docs/contracts/agent-user-schema.md) — see § Global profile layer for the merge rule this command renders, and § Delete, revoke, and audit for `--audit`'s contract.
114
167
  - Parent: [`/agents user`](../user.md).
115
- - Sibling: [`/agents user init`](init.md), [`/agents user update`](update.md).
168
+ - Sibling: [`/agents user init`](init.md), [`/agents user update`](update.md), [`/agents user delete`](delete.md) — the delete/revoke counterpart `--audit` informs.
@@ -61,7 +61,7 @@ When called with `--validate` (or after the user confirms "done"):
61
61
 
62
62
  1. Read `.agent-user.md`.
63
63
  2. Parse frontmatter; check every required field per
64
- [`agent-user-schema § Field reference`](../../../../../../../docs/contracts/agent-user-schema.md#field-reference).
64
+ [`agent-user-schema § Field reference`](../../../../../docs/contracts/agent-user-schema.md#field-reference).
65
65
  3. Check file size ≤100 lines.
66
66
  4. Run the privacy-floor scan (same as `init` step 4): credentials,
67
67
  third-party PII, financial figures, health/legal status.
@@ -99,6 +99,6 @@ Do NOT commit. Do NOT chain to another `/agents user *` command.
99
99
 
100
100
  ## See also
101
101
 
102
- - Schema: [`agent-user-schema`](../../../../../../../docs/contracts/agent-user-schema.md).
102
+ - Schema: [`agent-user-schema`](../../../../../docs/contracts/agent-user-schema.md).
103
103
  - Parent: [`/agents user`](../user.md).
104
104
  - Sibling: [`/agents user init`](init.md), [`/agents user show`](show.md), [`/agents user review`](review.md).
@@ -25,6 +25,18 @@ Sub-dispatcher for the user-persona file
25
25
  single, project-root, gitignored Markdown file that captures who the
26
26
  user is and how they want the agent to address them.
27
27
 
28
+ Since ADR-138, a weaker global layer
29
+ (`~/.event4u/agent-config/user/profile.md`) sits beneath the
30
+ project-local file — see
31
+ [`agent-user-schema.md § Global profile layer`](../../../docs/contracts/agent-user-schema.md#global-profile-layer-adr-138)
32
+ for the merge rule. `init` and `update` operate on the **project-local**
33
+ file only; `review` and `accept` cover BOTH layers' observation buffers
34
+ (road-to-global-user-memory Phase 2/3); `show` renders the merged,
35
+ effective profile by default, or the global layer's raw holdings with
36
+ `--audit`; `delete` removes something the global learning channel wrote
37
+ — an observation, a project's worth of observations, or a promoted
38
+ profile field — with a tombstone in every case (Phase 4).
39
+
28
40
  **Why this is its own cluster:** `AGENTS.md` describes the *project*
29
41
  to the agent. `.agent-user.md` describes the *user* to the agent.
30
42
  Two distinct primitives — same `/agents` family for discoverability,
@@ -35,10 +47,11 @@ separate sub-commands for separation of concerns.
35
47
  | Sub-sub-command | Routes to | Purpose |
36
48
  |---|---|---|
37
49
  | `/agents user init` | `commands/agents/user/init.md` | Short interview → creates `.agent-user.md` |
38
- | `/agents user show` | `commands/agents/user/show.md` | Read-only render of the persona |
39
- | `/agents user review` | `commands/agents/user/review.md` | List buffered observations from `.agent-user.observations.jsonl` |
40
- | `/agents user accept` | `commands/agents/user/accept.md` | Apply a buffered observation with confirmation |
50
+ | `/agents user show` | `commands/agents/user/show.md` | Read-only render of the persona; `--audit` renders the global layer's raw holdings |
51
+ | `/agents user review` | `commands/agents/user/review.md` | List buffered observations from both the project-local and the global buffer |
52
+ | `/agents user accept` | `commands/agents/user/accept.md` | Apply a buffered observation (either layer) with confirmation |
41
53
  | `/agents user update` | `commands/agents/user/update.md` | Open in IDE for manual edit; validate on save |
54
+ | `/agents user delete` | `commands/agents/user/delete.md` | Delete an observation, purge a project's observations, or revoke a profile field — with a tombstone |
42
55
 
43
56
  Schema contract:
44
57
  [`docs/contracts/agent-user-schema.md`](../../../docs/contracts/agent-user-schema.md).
@@ -109,16 +109,6 @@ After all fixes, re-run:
109
109
  ./scripts-run src/scripts/check_md_language <path> [<path> …]
110
110
  ```
111
111
 
112
- ### 6. Mark hashes (only if `.agent-src.uncondensed/` was edited)
113
-
114
- For each modified source file:
115
-
116
- ```bash
117
- ./scripts-run src/scripts/condense --mark-done "{relative_path}"
118
- ```
119
-
120
- This keeps `.condensation-hashes.json` consistent with the new content.
121
-
122
112
  ## Rules
123
113
 
124
114
  - **Never edit `.augment/` directly** — it's a generated projection.
@@ -23,8 +23,8 @@ packs:
23
23
  Condense agent config `.md` files from `src/` into token-efficient telegraph format
24
24
  and write the condensed output to `dist/agent-src/`.
25
25
 
26
- Uses SHA-256 hashes to track which source files changed since last condensation.
27
- Only changed files need recondensation — saving tokens and time.
26
+ The projection is deterministic: `dist == rewrite(src)` byte-for-byte. A file is
27
+ out of date only when its projection does not match that rewrite.
28
28
 
29
29
  ## Step 1: Sync non-.md files
30
30
 
@@ -41,99 +41,37 @@ changed `.md` files that need condensation.
41
41
  bash scripts/condense.sh --changed
42
42
  ```
43
43
 
44
- This lists only `.md` files whose source has changed since the last condensation (based on
45
- stored SHA-256 hashes). If no files changed → you're done.
44
+ This lists only `.md` files whose projection is out of date (`dist != rewrite(src)`).
45
+ If no files are listed → you're done.
46
46
 
47
47
  If you need to see ALL files regardless of change status:
48
48
  `bash scripts/condense.sh --list`.
49
49
 
50
- ## Step 3: Condense each changed .md file
51
-
52
- **Core principle:** Condensation must improve execution quality, not just reduce length.
53
- A condensed file should be easier to scan, easier to trigger, and easier to execute than the original.
54
-
55
- For each changed `.md` file:
56
-
57
- 1. Read the source from `src/{path}`
58
- 2. Condense the prose using these rules:
59
- - **Remove:** articles (a, an, the), filler (just, really, basically, actually, simply, essentially),
60
- pleasantries, hedging, connective fluff (however, furthermore, additionally),
61
- redundant wording, obvious framework knowledge, repeated explanations, decorative prose
62
- - **Shorten:** "in order to" → "to", "make sure to" → "ensure", use short synonyms
63
- - **Abbreviate** common terms when context is unambiguous: `DB`, `auth`,
64
- `config`, `req`, `res`, `fn`, `impl`, `env`, `deps`, `ctx`. Skip if it
65
- would be the first occurrence of the concept in the file, or if the
66
- abbreviation collides with a domain term (e.g. `auth` stays
67
- `authentication` inside an auth-module file). Never abbreviate inside
68
- code blocks, frontmatter, file paths, command strings, or Iron Law
69
- fenced blocks.
70
- - **Arrows for causality:** `X causes Y` / `X leads to Y` / `X, then Y`
71
- → `X → Y`. Keep arrows out of code blocks, frontmatter, and Iron Law
72
- fenced blocks; only the surrounding prose uses them. (The example
73
- phrases here are intentionally backticked so the inline-code
74
- protection skips them — never strip those backticks.)
75
- - **Fragments OK:** "Run tests before commit" not "You should always run tests before committing"
76
- - **Drop:** "you should", "make sure to", "remember to" — state action directly
77
- - **Merge** redundant bullets that say the same thing differently
78
- - **Prefer** bullets over prose, direct instructions over explanatory paragraphs, one-line decisions over paragraphs
79
- 3. **Copy-paste first, condense second:**
80
- Before condensing ANY prose, extract and set aside these elements from the source.
81
- They go into the condensed output **unchanged, byte-for-byte**:
82
- - **All code blocks** (``` fenced or indented) — copy EVERY code block from source to output FIRST
83
- - **YAML frontmatter** — copy verbatim
84
- - **All inline code** (`backtick content`)
85
- - **All URLs, links, file paths, commands**
86
- - **All H1/H2 headings** — exact text preserved
87
- - **Tables** (structure preserved, condense cell text only)
88
- - **Technical terms, library names, API names**
89
- - **Dates, version numbers, numeric values**
90
- Then condense ONLY the prose around these preserved elements.
91
- 4. **NEVER remove (even if verbose):**
92
- - Trigger clarity (When to use / description)
93
- - Decision hints that prevent mistakes
94
- - Concrete validation checks
95
- - Gotchas based on real failure patterns
96
- - Anti-patterns that prevent recurring failures
97
- - **Iron Law sections** — see "Iron Laws — do not touch" below
98
- 5. **Enrich (SKILL.md files only):** During condensation, also improve agent-effectiveness:
99
- - **Validation steps:** If a Procedure ends with a vague validation ("check if it works"),
100
- replace with concrete checks (expected output, commands to verify, specific conditions)
101
- - **Mini examples:** If no `Examples` section exists, add a short safe/unsafe or good/bad example
102
- (2-4 lines max — not a tutorial)
103
- - **Output format:** If the Output format section is vague ("explain everything"), sharpen it to
104
- specific numbered expectations ("1. Code snippet 2. Where to register 3. Gotcha if relevant")
105
- - **Anti-patterns:** If the same mistake keeps recurring, add a short anti-patterns section
106
- - **Do NOT invent content.** Only concretize what the source implies. If the source says
107
- "validate copy/paste safety", you can add "Check: no nested backticks, fully selectable".
108
- But don't add unrelated sections.
109
- - **Do NOT condense weak skills.** If the source has no procedure or no validation, fix structure first.
110
- - **Reference skill:** See `src/skills/skill-writing/SKILL.md` for the gold standard
111
- 6. Write the condensed output to `dist/agent-src/{path}`
112
- 7. **MANDATORY: Run condensation quality check on this file:**
50
+ ## Step 3: nothing to condense — the projection is a deterministic copy
113
51
 
114
- ```bash
115
- ./scripts-run src/scripts/check_condensation --format text 2>&1 | grep "{path}"
116
- ```
117
-
118
- If the output contains 🔴 (error) for this file: **STOP. Fix the condensed file before continuing.**
119
- Common errors and how to fix them:
120
- - `lost_code_blocks` → You dropped a code block. Copy ALL code blocks from source.
121
- - `modified_code_block` → Code block content changed. Replace with exact source content.
122
- - `frontmatter_mismatch` → YAML frontmatter differs. Copy verbatim from source.
52
+ **ADR-201 (accepted 2026-07-29) removed the LLM prose rewrite from this command.**
53
+ `.md` is copied verbatim and path-rewritten by `condense.sh --sync`; there is no
54
+ per-file condensation step for the agent to perform any more.
123
55
 
124
- **Do NOT call `mark-done` until this file has zero 🔴 errors.**
56
+ Why it was removed, measured with exact `tiktoken cl100k_base` over 429 artefacts:
57
+ 0 of them saved >= 500 tok, the aggregate saving was 0.86%, 267/429 pairs were
58
+ byte-identical, and the 9 always-loaded kernel rules came out **36 tokens worse**.
59
+ Determinism failed by construction — the hash covered the source and never the
60
+ output, so divergence was undetectable, and it went undetected three times in a
61
+ single session.
125
62
 
126
- 8. Show word count: `{original} → {condensed} words ({saved}% saved)`
127
- 9. **Mark as done:** `bash scripts/condense.sh --mark-done {path}`
63
+ The instruction that used to live here already demanded *"copy EVERY code block
64
+ from source to output FIRST, unchanged, byte-for-byte"*. It was clear, and it was
65
+ broken anyway in six artefacts — corrupting template blocks users copy verbatim —
66
+ because nothing checked it. That is the case for removing the rewrite rather than
67
+ restating the rule more firmly.
128
68
 
129
- ### Batch processing
69
+ What survives is the one deterministic transform: `apply_path_rewriter` fixes
70
+ relative links so they resolve from the delivered location (`../../docs/…` →
71
+ `../docs/…`, ~38 artefacts). It runs automatically on every copy.
130
72
 
131
- When condensing multiple files, process them in batches of ~10.
132
- Mark each file done after writing it. After each batch, show a progress summary:
133
-
134
- ```
135
- Batch 1/5 complete: 10 files, avg 42% saved
136
- ```
73
+ **If you were sent here to condense a file: don't.** Edit `src/`, run
74
+ `--sync`, and let Step 4 verify that `dist == rewrite(src)` byte-for-byte.
137
75
 
138
76
  ## Step 4: Final verification gate
139
77
 
@@ -143,7 +81,7 @@ Run BOTH checks. Both must pass before finishing.
143
81
  bash scripts/condense.sh --check
144
82
  ```
145
83
 
146
- Must show ✅ (hashes in sync).
84
+ Must show ✅ (`dist/agent-src/` in sync with source).
147
85
 
148
86
  ```bash
149
87
  ./scripts-run src/scripts/check_condensation
@@ -162,14 +100,6 @@ Read `verbosity.post_action_reports` from `.agent-settings.yml` (default
162
100
  - `full` → multi-line table with per-category stats (files condensed,
163
101
  avg savings).
164
102
 
165
- ## Hash management
166
-
167
- - Hashes are stored in `.augment/.condensation-hashes.json` (committed to Git).
168
- - `bash scripts/condense.sh --sync` automatically cleans up hashes for deleted source files.
169
- - `bash scripts/condense.sh --mark-all-done` marks ALL current `.md` files as condensed
170
- (useful after an initial full condensation or when bootstrapping the hash file).
171
- - A file with no stored hash is always treated as "changed".
172
-
173
103
  ## Iron Laws — do not touch
174
104
 
175
105
  Sections under headings matching `Iron Law`, `Iron Laws`, or `The Iron Law` (any
@@ -202,7 +132,9 @@ If an Iron Law section genuinely contains filler (rare): edit the SOURCE in
202
132
 
203
133
  ## Condensation quality checklist
204
134
 
205
- **Also apply the `preservation-guard` rule** — strongest validation, example, anti-pattern, and decision hints must survive condensation. Iron Laws are non-negotiable.
135
+ **Also apply the [preservation-guard](../rules/preservation-guard.md) rule** — strongest validation, example, anti-pattern, and decision hints must survive condensation. Iron Laws are non-negotiable.
136
+
137
+ See also: [markdown-safe-codeblocks](../rules/markdown-safe-codeblocks.md) for fenced-block hygiene.
206
138
 
207
139
  After condensing each file, verify:
208
140
 
@@ -237,4 +169,3 @@ Unsafe (DO NOT do this):
237
169
  - **Only write to `.augment/`** — the condensed output directory.
238
170
  - **Preserve ALL technical content** — only condense natural language prose.
239
171
  - **YAML frontmatter** in command/skill files must be preserved exactly.
240
- - **Always run `bash scripts/condense.sh --mark-done {path}`** after writing each condensed file.
@@ -37,6 +37,13 @@ Emits a Markdown summary of the session (model breakdown, per-tier cost,
37
37
  total USD) and appends a JSON record to
38
38
  `agents/cost-tracking/sessions.jsonl`.
39
39
 
40
+ The summary now also reports a **replay dedup ratio** and splits **main session vs
41
+ subagent legs**. Both matter for reading the number honestly: Claude Code replays
42
+ the same assistant turn into many transcripts, so before the dedup fix this report
43
+ overstated tokens and cost by roughly 2x — and the overstatement grew with
44
+ conversation length. Any cost figure quoted from a run before that fix should be
45
+ treated as pre-dedup.
46
+
40
47
  If `track.mjs` exits 2 with `no Claude Code project dir`, the user is not in
41
48
  a Claude Code session — surface that and stop.
42
49
 
@@ -91,14 +91,6 @@ After all fixes, re-run:
91
91
  ./scripts-run src/scripts/check_portability
92
92
  ```
93
93
 
94
- ### 6. Mark hashes
95
-
96
- For each modified file:
97
-
98
- ```bash
99
- ./scripts-run src/scripts/condense --mark-done "{relative_path}"
100
- ```
101
-
102
94
  ## Rules
103
95
 
104
96
  - **Always fix in `src/`** — never edit `.augment/` directly.
@@ -88,14 +88,6 @@ After all fixes:
88
88
 
89
89
  Show final result.
90
90
 
91
- ### 6. Mark hashes
92
-
93
- For each modified file:
94
-
95
- ```bash
96
- ./scripts-run src/scripts/condense --mark-done "{relative_path}"
97
- ```
98
-
99
91
  ## Rules
100
92
 
101
93
  - **Always fix in `src/`** — never edit `dist/agent-src/` or `.augment/` directly.
@@ -35,7 +35,7 @@ counterpart to the write-engine's built-in step 4b audit.
35
35
  - `/humanize <path>` — read the file at `<path>` (read-only).
36
36
  - `/humanize --voice=<ghostwriter-slug|me>` — optionally resolve a voice
37
37
  via the write-engine's style-source resolution (§ 1 of the
38
- [`write-engine`](../docs/contracts/write-engine.md) contract):
38
+ [`write-engine`](../../docs/contracts/write-engine.md) contract):
39
39
  a ghostwriter slug loads `agents/reference/ghostwriter/<slug>.md`, `me`
40
40
  loads `.agent-user.md`. The resolved fingerprint takes precedence over
41
41
  humanizer defaults (a voice that legitimately uses em dashes wins). No
@@ -96,7 +96,7 @@ never reworded, never dropped.
96
96
 
97
97
  - [`humanizer`](../../../src/skills/humanizer/SKILL.md) — the skill this
98
98
  command wraps.
99
- - [`write-engine § 4b`](../docs/contracts/write-engine.md) — the
99
+ - [`write-engine § 4b`](../../docs/contracts/write-engine.md) — the
100
100
  built-in audit for ghostwriter/post-as drafts.
101
101
  - [`content-quoting-floor`](../../../src/rules/content-quoting-floor.md)
102
102
  — quoted text is never rewritten.
@@ -82,4 +82,4 @@ packs:
82
82
 
83
83
  ## See also
84
84
 
85
- - [`role-contracts`](../../docs/guidelines/agent-infra/role-contracts.md#developer) — Developer mode output contract (Goal / Plan / Changes / Tests / Open questions)
85
+ - [`role-contracts`](../docs/guidelines/agent-infra/role-contracts.md#developer) — Developer mode output contract (Goal / Plan / Changes / Tests / Open questions)
@@ -168,6 +168,17 @@ step entirely (feature off). Never auto-promote.
168
168
  - Type directory is empty — respond with "no entries yet, use
169
169
  `/memory-add` to start".
170
170
 
171
+ ## Retrieval-trigger signals
172
+
173
+ Before deciding whether to call `/memory:load` or a targeted
174
+ `memory_lookup`, recognise these implicit-continuity signals in the
175
+ user's message: **possessives** ("my/our X"), **definite references to
176
+ unnamed prior work** ("that bug", "the migration"), and **past-time
177
+ cues** ("last week", "back then"). These phrasings imply the user
178
+ expects continuity with prior sessions — consult memory before
179
+ answering from scratch. Full guidance:
180
+ [`memory-consolidation § Retrieval-trigger linguistics`](../../skills/memory-consolidation/SKILL.md#retrieval-trigger-linguistics).
181
+
171
182
  ## Read-escalation ladder (cheap → precise)
172
183
 
173
184
  When resolving a knowledge/memory read — including cross-project access — climb
@@ -27,7 +27,7 @@ Skill audit: measure, find duplicates/merge candidates, run linter, present find
27
27
  ### 1. Measure baseline
28
28
 
29
29
  ```bash
30
- total=$(ls -d src/skills/*/SKILL.md 2>/dev/null | wc -l | tr -d ' ')
30
+ total=$(ls -d .agent-src.uncondensed/skills/*/SKILL.md 2>/dev/null | wc -l | tr -d ' ')
31
31
  total_lines=$(cat .agent-src.uncondensed/skills/*/SKILL.md 2>/dev/null | wc -l | tr -d ' ')
32
32
  echo "Skills: $total, Total lines: $total_lines"
33
33
 
@@ -90,14 +90,14 @@ improvise the base or silently proceed when behind **and** overlapping. The
90
90
 
91
91
  **On merge conflict: regenerate, don't abort.** Most conflicts on this class of
92
92
  branch are in **generated files** — the roadmap dashboard
93
- (`agents/roadmaps-progress.md`), `docs/proof.md`, condensation hashes, tool
94
- projections. Those are resolved **by regenerating from the merged sources**,
93
+ (`agents/roadmaps-progress.md`), `docs/proof.md`, the `dist/agent-src/`
94
+ projection, tool projections. Those are resolved **by regenerating from the merged sources**,
95
95
  never by hand-picking hunks:
96
96
 
97
97
  1. `./agent-config roadmap:progress` → resolves the dashboard.
98
98
  2. `./scripts-run src/scripts/build_proof` → resolves `docs/proof.md`.
99
- 3. `bash src/scripts/condense.sh --check` (and re-`--mark-done` dependents on
100
- a hash conflict) → resolves condensation state.
99
+ 3. `bash src/scripts/condense.sh --sync`, then `--check` → resolves any
100
+ conflict inside `dist/agent-src/` by re-projecting from the merged source.
101
101
  4. Stage the regenerated files, complete the merge, and re-run the touched
102
102
  verification before pushing.
103
103
 
@@ -32,14 +32,14 @@ from its cause.
32
32
 
33
33
  Fields: `active_packs`, `commands_shown`, `skills_shown`, `hidden_total`.
34
34
 
35
- For a **non-technical employee**, render plain language instead — deterministic
36
- template (no LLM), the right content for an employee-facing surface:
35
+ For a **non-technical employee**, render the plain-language status instead — a
36
+ deterministic template (no LLM), the right content for an employee-facing surface:
37
37
 
38
38
  ```bash
39
39
  ./scripts-run src/scripts/config/session_profiles show --plain
40
40
  ```
41
41
 
42
- Shape: [`session-profile-overlay` § Plain status surface](../../../../docs/contracts/session-profile-overlay.md#plain-status-surface).
42
+ Shape + constraints: [`session-profile-overlay` § Plain status surface](../../../../docs/contracts/session-profile-overlay.md#plain-status-surface).
43
43
 
44
44
  ### 2. Report
45
45
 
@@ -19,10 +19,11 @@ packs:
19
19
  # rule-compliance-audit
20
20
 
21
21
  > **Intentionally a command, not a skill** (ADR-057, road-to-6.2.0 Step 7b).
22
- > Meta-tool that inspects rule-trigger quality — the auto-detection machinery
23
- > itself. A description-match-only skill cannot debug a broken
24
- > description-matcher; the explicit `/rule-compliance-audit` command is the
25
- > guaranteed debug-bypass. Skill-conversion gate **declined**.
22
+ > Like `review-routing`, this is a meta-tool that inspects rule-trigger quality
23
+ > — the auto-detection machinery itself. A skill reachable only by
24
+ > description-match cannot be relied on to debug a broken description-matcher.
25
+ > The explicit `/rule-compliance-audit` command is the guaranteed debug-bypass,
26
+ > independent of the routing pipeline. Skill-conversion gate **declined**.
26
27
 
27
28
  ## Instructions
28
29
 
@@ -36,7 +36,7 @@ suite's own `lint_agent_security` self-audit gate.
36
36
 
37
37
  (omit `--root` to audit the current repo). The script reuses the Phase-1
38
38
  detection library under the false-positive containment convention
39
- ([`security-lint-containment`](../docs/guidelines/agent-infra/security-lint-containment.md)),
39
+ ([`security-lint-containment`](../../docs/guidelines/agent-infra/security-lint-containment.md)),
40
40
  so doc/example files do not tank the score. It scans instruction files
41
41
  (`CLAUDE.md`, `AGENTS.md`, `.cursor/rules`, `.github/copilot-instructions.md`,
42
42
  `.clinerules`, `.windsurfrules`), MCP configs (`.mcp.json`, `.cursor/mcp.json`,
@@ -190,5 +190,5 @@ If the check fails, offer to re-sync the block with the current template:
190
190
  ignored-but-tracked detection (Phase 5.2)
191
191
  - [`scripts/check_gitignore_freshness.ts`](../../../../src/scripts/check_gitignore_freshness.ts) —
192
192
  manifest vs block coverage check (Phase 3.4)
193
- - [`docs/contracts/agents-layout.md`](../../../../../../docs/contracts/agents-layout.md) —
193
+ - [`docs/contracts/agents-layout.md`](../../../../../docs/contracts/agents-layout.md) —
194
194
  full classification contract for `agents/` entries
@@ -43,6 +43,27 @@ lives here**; each sub loads the skill and drives its named phase.
43
43
  and drive ONLY the named phase, honoring that phase's Forbidden block.
44
44
  3. LOW confidence / bare `/tdd` → show the three-row menu and ask.
45
45
 
46
+ ## Non-interactive & auto-detection
47
+
48
+ `/tdd` declares `auto_detect: true`, so it honors the
49
+ [`non-interactive-contract`](../contexts/execution/non-interactive-contract.md)
50
+ (surface detection, confidence tiers, `--yes` / `--json`, abort schemas, and the
51
+ `auto_detect` kill-switch). The inference in § Dispatch is that contract's detection
52
+ step; the table below names the signal each verdict rests on.
53
+
54
+ | Basis (signal) | Sub-command | Confidence |
55
+ |---|---|---|
56
+ | Explicit sub given (`/tdd green`) | that one | — (detection skipped) |
57
+ | No test exists for the named behavior | `red` | HIGH |
58
+ | A test fails at an assertion (not a collection/compile error) | `green` | HIGH |
59
+ | Tests green and a defect is reported | `red` | HIGH |
60
+ | Tests green, no defect, recent implementation churn | `refactor` | MEDIUM |
61
+ | Bare `/tdd`, none of the above resolves | none — show the three-row menu and ask | LOW |
62
+
63
+ A collection or compile error is deliberately NOT a `green` signal: the test never
64
+ reached an assertion, so there is no red to make pass yet. MEDIUM and below never
65
+ auto-run under `--yes`; they surface the menu, per the contract's confidence tiers.
66
+
46
67
  ## Rules
47
68
 
48
69
  - **One phase per turn.** Do NOT chain red→green→refactor silently — each sub is one turn.
@@ -51,8 +51,8 @@ refuse with the enable pointer and **STOP**:
51
51
  > Key reference: `docs/contracts/ai-team-config.md`.
52
52
 
53
53
  Deterministic mirror of gates 1+2: `npx tsx src/scripts/ai_team/team_dispatch.ts
54
- --delegate-gate` exits non-zero (pointer on stderr) unless BOTH flags true — run
55
- it instead of hand-parsing YAML when a shell is available.
54
+ --delegate-gate` exits non-zero (with the pointer on stderr) unless BOTH flags
55
+ are true — run it instead of hand-parsing the YAML when a shell is available.
56
56
 
57
57
  ### 3. Gate — plugin presence (fail closed)
58
58