@event4u/agent-config 14.22.0 → 15.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 (557) hide show
  1. package/.augment-plugin/marketplace.json +3 -3
  2. package/.augment-plugin/plugin.json +1 -1
  3. package/.claude-plugin/marketplace.json +1 -1
  4. package/CHANGELOG.md +333 -356
  5. package/README.md +1 -1
  6. package/dist/agent-src/commands/agent-handoff.md +8 -7
  7. package/dist/agent-src/commands/agents/init.md +1 -1
  8. package/dist/agent-src/commands/agents/user/accept.md +4 -4
  9. package/dist/agent-src/commands/agents/user/delete.md +2 -2
  10. package/dist/agent-src/commands/agents/user/init.md +3 -3
  11. package/dist/agent-src/commands/agents/user/review.md +3 -3
  12. package/dist/agent-src/commands/agents/user/show.md +3 -3
  13. package/dist/agent-src/commands/agents/user/update.md +2 -2
  14. package/dist/agent-src/commands/agents/user.md +6 -6
  15. package/dist/agent-src/commands/analytics/prune.md +1 -1
  16. package/dist/agent-src/commands/analytics/show.md +2 -2
  17. package/dist/agent-src/commands/analyze/decision.md +2 -2
  18. package/dist/agent-src/commands/analyze/inbox.md +5 -5
  19. package/dist/agent-src/commands/analyze/incident.md +3 -3
  20. package/dist/agent-src/commands/analyze/near-miss.md +3 -3
  21. package/dist/agent-src/commands/analyze/postmortem.md +4 -4
  22. package/dist/agent-src/commands/analyze/premortem.md +2 -2
  23. package/dist/agent-src/commands/analyze.md +2 -2
  24. package/dist/agent-src/commands/bug/fix.md +1 -1
  25. package/dist/agent-src/commands/bug/investigate.md +2 -2
  26. package/dist/agent-src/commands/cost/profile.md +3 -3
  27. package/dist/agent-src/commands/design.md +1 -1
  28. package/dist/agent-src/commands/feature/explore.md +1 -1
  29. package/dist/agent-src/commands/feature/plan.md +2 -2
  30. package/dist/agent-src/commands/feature/roadmap.md +2 -2
  31. package/dist/agent-src/commands/ghostwriter/fetch.md +4 -4
  32. package/dist/agent-src/commands/ghostwriter/list.md +1 -1
  33. package/dist/agent-src/commands/ghostwriter/show.md +1 -1
  34. package/dist/agent-src/commands/ghostwriter/write.md +9 -9
  35. package/dist/agent-src/commands/humanize.md +6 -6
  36. package/dist/agent-src/commands/jira-ticket.md +1 -1
  37. package/dist/agent-src/commands/judge/solo.md +1 -1
  38. package/dist/agent-src/commands/judge.md +1 -1
  39. package/dist/agent-src/commands/knowledge/cross-repo.md +1 -1
  40. package/dist/agent-src/commands/knowledge/forget.md +1 -1
  41. package/dist/agent-src/commands/knowledge/ingest.md +2 -2
  42. package/dist/agent-src/commands/knowledge/list.md +1 -1
  43. package/dist/agent-src/commands/memory/add.md +3 -3
  44. package/dist/agent-src/commands/memory/load.md +4 -4
  45. package/dist/agent-src/commands/memory/mine-session.md +1 -1
  46. package/dist/agent-src/commands/memory/promote.md +4 -4
  47. package/dist/agent-src/commands/memory/propose.md +2 -2
  48. package/dist/agent-src/commands/mode.md +5 -5
  49. package/dist/agent-src/commands/post-as/ghostwriter.md +3 -3
  50. package/dist/agent-src/commands/post-as/me.md +7 -7
  51. package/dist/agent-src/commands/pr/create.md +1 -1
  52. package/dist/agent-src/commands/pr/merge.md +48 -39
  53. package/dist/agent-src/commands/profile/activate.md +1 -1
  54. package/dist/agent-src/commands/profile/show.md +1 -1
  55. package/dist/agent-src/commands/research/deep.md +2 -2
  56. package/dist/agent-src/commands/research/report.md +2 -2
  57. package/dist/agent-src/commands/review/changes.md +1 -1
  58. package/dist/agent-src/commands/review/routing.md +1 -1
  59. package/dist/agent-src/commands/roadmap/create.md +1 -1
  60. package/dist/agent-src/commands/roadmap/materialize.md +2 -2
  61. package/dist/agent-src/commands/roadmap/next.md +9 -1
  62. package/dist/agent-src/commands/roadmap/process-full.md +2 -2
  63. package/dist/agent-src/commands/security-audit-config.md +3 -3
  64. package/dist/agent-src/commands/skill/preview.md +1 -1
  65. package/dist/agent-src/commands/skills/discover.md +1 -1
  66. package/dist/agent-src/commands/sync/agent-settings.md +2 -2
  67. package/dist/agent-src/commands/sync/gitignore/fix.md +1 -1
  68. package/dist/agent-src/commands/tests/create.md +1 -1
  69. package/dist/agent-src/commands/tests/e2e-heal.md +1 -1
  70. package/dist/agent-src/commands/tests/e2e-plan.md +1 -1
  71. package/dist/agent-src/contexts/authority/kernel-rule-edits.md +6 -6
  72. package/dist/agent-src/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md +1 -2
  73. package/dist/agent-src/contexts/communication/rules-auto/think-before-action-mechanics.md +2 -2
  74. package/dist/agent-src/contexts/communication/rules-auto/token-efficiency-mechanics.md +88 -1
  75. package/dist/agent-src/contexts/communication/rules-auto/user-interaction-mechanics.md +1 -1
  76. package/dist/agent-src/contexts/contracts/frugality-charter.md +1 -1
  77. package/dist/agent-src/contexts/execution/auto-dispatch-classification.md +1 -1
  78. package/dist/agent-src/contexts/execution/auto-orchestration-activation.md +1 -1
  79. package/dist/agent-src/contexts/execution/autonomy-mechanics.md +13 -1
  80. package/dist/agent-src/contexts/execution/cheap-question-mechanics.md +1 -1
  81. package/dist/agent-src/contexts/execution/contract-decision-sheet.md +3 -3
  82. package/dist/agent-src/contexts/execution/mandated-lines.md +1 -1
  83. package/dist/agent-src/contexts/execution/non-interactive-contract.md +1 -1
  84. package/dist/agent-src/contexts/execution/orchestration-telemetry.md +1 -1
  85. package/dist/agent-src/contexts/execution/plan-confidence-gate.md +5 -5
  86. package/dist/agent-src/contexts/execution/roadmap-execution-contract.md +1 -1
  87. package/dist/agent-src/contexts/execution/subagent-modes-detail.md +1 -1
  88. package/dist/agent-src/contexts/execution/subagent-routing.md +2 -2
  89. package/dist/agent-src/contexts/execution/subagent-spawn-contract.md +1 -1
  90. package/dist/agent-src/contexts/execution/user-memory-channels.md +3 -3
  91. package/dist/agent-src/contexts/execution/verification-mechanics.md +1 -1
  92. package/dist/agent-src/contexts/judges/persona-voice-rubric.md +2 -2
  93. package/dist/agent-src/guidelines/abstraction-thresholds.md +88 -0
  94. package/dist/agent-src/guidelines/agent-infra/5w2h-analysis.md +260 -0
  95. package/dist/agent-src/guidelines/agent-infra/active-remediation-mechanics.md +99 -0
  96. package/dist/agent-src/guidelines/agent-infra/agent-interaction-and-decision-quality.md +325 -0
  97. package/dist/agent-src/guidelines/agent-infra/api-cost-levers.md +177 -0
  98. package/dist/agent-src/guidelines/agent-infra/artifact-drafting-protocol-mechanics.md +222 -0
  99. package/dist/agent-src/guidelines/agent-infra/ask-when-uncertain-demos.md +134 -0
  100. package/dist/agent-src/guidelines/agent-infra/asking-and-brevity-examples.md +198 -0
  101. package/dist/agent-src/guidelines/agent-infra/break-glass-usage.md +113 -0
  102. package/dist/agent-src/guidelines/agent-infra/carve-out-predicates.md +17 -0
  103. package/dist/agent-src/guidelines/agent-infra/comparison-matrix.md +179 -0
  104. package/dist/agent-src/guidelines/agent-infra/context-hygiene-mechanics.md +165 -0
  105. package/dist/agent-src/guidelines/agent-infra/corpus-grounding-authoring.md +91 -0
  106. package/dist/agent-src/guidelines/agent-infra/critical-thinking.md +156 -0
  107. package/dist/agent-src/guidelines/agent-infra/cross-source-consistency-mechanics.md +109 -0
  108. package/dist/agent-src/guidelines/agent-infra/developer-judgment.md +82 -0
  109. package/dist/agent-src/guidelines/agent-infra/direct-answers-demos.md +142 -0
  110. package/dist/agent-src/guidelines/agent-infra/domain-adoption-gates.md +112 -0
  111. package/dist/agent-src/guidelines/agent-infra/domain-eval-anti-pattern.md +53 -0
  112. package/dist/agent-src/guidelines/agent-infra/domain-pack-architecture.md +56 -0
  113. package/dist/agent-src/guidelines/agent-infra/downstream-changes-mechanics.md +91 -0
  114. package/dist/agent-src/guidelines/agent-infra/emphasis-budget.md +45 -0
  115. package/dist/agent-src/guidelines/agent-infra/engineering-memory-data-format.md +210 -0
  116. package/dist/agent-src/guidelines/agent-infra/evaluator-independence-mechanics.md +92 -0
  117. package/dist/agent-src/guidelines/agent-infra/existence-question-verdicts.md +80 -0
  118. package/dist/agent-src/guidelines/agent-infra/failure-signatures.md +70 -0
  119. package/dist/agent-src/guidelines/agent-infra/false-green.md +233 -0
  120. package/dist/agent-src/guidelines/agent-infra/first-principles.md +192 -0
  121. package/dist/agent-src/guidelines/agent-infra/framework-neutrality-patterns.md +66 -0
  122. package/dist/agent-src/guidelines/agent-infra/frontier-reasoning-operating-profile.md +169 -0
  123. package/dist/agent-src/guidelines/agent-infra/gate-authoring.md +177 -0
  124. package/dist/agent-src/guidelines/agent-infra/guarded-baseline.md +39 -0
  125. package/dist/agent-src/guidelines/agent-infra/installed-tools-manifest.md +142 -0
  126. package/dist/agent-src/guidelines/agent-infra/inversion-thinking.md +388 -0
  127. package/dist/agent-src/guidelines/agent-infra/ios-simulator-guide.md +378 -0
  128. package/dist/agent-src/guidelines/agent-infra/language-and-tone-examples.md +141 -0
  129. package/dist/agent-src/guidelines/agent-infra/layered-settings.md +317 -0
  130. package/dist/agent-src/guidelines/agent-infra/linked-projects-onboarding-gate.md +80 -0
  131. package/dist/agent-src/guidelines/agent-infra/mcp-request-signing.md +197 -0
  132. package/dist/agent-src/guidelines/agent-infra/memory-access.md +149 -0
  133. package/dist/agent-src/guidelines/agent-infra/mental-models.md +314 -0
  134. package/dist/agent-src/guidelines/agent-infra/minimal-safe-diff-mechanics.md +241 -0
  135. package/dist/agent-src/guidelines/agent-infra/missing-tool-handling.md +66 -0
  136. package/dist/agent-src/guidelines/agent-infra/model-recommendation.md +101 -0
  137. package/dist/agent-src/guidelines/agent-infra/naming.md +69 -0
  138. package/dist/agent-src/guidelines/agent-infra/notes-horizon-mechanics.md +90 -0
  139. package/dist/agent-src/guidelines/agent-infra/output-patterns.md +117 -0
  140. package/dist/agent-src/guidelines/agent-infra/recurring-criticism-mechanics.md +96 -0
  141. package/dist/agent-src/guidelines/agent-infra/reuse-verdict-mechanics.md +71 -0
  142. package/dist/agent-src/guidelines/agent-infra/review-routing-data-format.md +143 -0
  143. package/dist/agent-src/guidelines/agent-infra/roadmap-deferred-resolution-provenance.md +54 -0
  144. package/dist/agent-src/guidelines/agent-infra/roadmap-progress-mechanics.md +274 -0
  145. package/dist/agent-src/guidelines/agent-infra/role-contracts.md +209 -0
  146. package/dist/agent-src/guidelines/agent-infra/role-mode-router.md +89 -0
  147. package/dist/agent-src/guidelines/agent-infra/rule-body-migration-inventory.md +241 -0
  148. package/dist/agent-src/guidelines/agent-infra/rule-type-governance.md +73 -0
  149. package/dist/agent-src/guidelines/agent-infra/runtime-layer.md +89 -0
  150. package/dist/agent-src/guidelines/agent-infra/scqa-framework.md +526 -0
  151. package/dist/agent-src/guidelines/agent-infra/security-lint-containment.md +121 -0
  152. package/dist/agent-src/guidelines/agent-infra/self-improvement-pipeline.md +134 -0
  153. package/dist/agent-src/guidelines/agent-infra/simplicity-and-goal-demos.md +211 -0
  154. package/dist/agent-src/guidelines/agent-infra/six-hats.md +353 -0
  155. package/dist/agent-src/guidelines/agent-infra/size-and-scope.md +229 -0
  156. package/dist/agent-src/guidelines/agent-infra/skill-quality-checklist.md +157 -0
  157. package/dist/agent-src/guidelines/agent-infra/source-confidentiality-mechanics.md +109 -0
  158. package/dist/agent-src/guidelines/agent-infra/symptom-driven-harvest-loop.md +104 -0
  159. package/dist/agent-src/guidelines/agent-infra/systems-thinking.md +220 -0
  160. package/dist/agent-src/guidelines/agent-infra/tool-description-as-policy.md +35 -0
  161. package/dist/agent-src/guidelines/agent-infra/tool-integration.md +73 -0
  162. package/dist/agent-src/guidelines/agent-infra/traceability-field-mechanics.md +50 -0
  163. package/dist/agent-src/guidelines/agent-infra/untrusted-input-spotlighting.md +166 -0
  164. package/dist/agent-src/guidelines/agent-infra/verify-before-complete-demos.md +128 -0
  165. package/dist/agent-src/guidelines/augment-portability-patterns.md +70 -0
  166. package/dist/agent-src/guidelines/code-clarity.md +350 -0
  167. package/dist/agent-src/guidelines/component-oriented-and-oop-development.md +189 -0
  168. package/dist/agent-src/guidelines/cross-role-handoff.md +127 -0
  169. package/dist/agent-src/guidelines/design-antipatterns-triggers.json +18 -0
  170. package/dist/agent-src/guidelines/design-antipatterns.md +327 -0
  171. package/dist/agent-src/guidelines/design-asset-discipline.md +38 -0
  172. package/dist/agent-src/guidelines/design-canon.md +63 -0
  173. package/dist/agent-src/guidelines/design-fidelity-mechanics.md +293 -0
  174. package/dist/agent-src/guidelines/design-fidelity-routing.md +78 -0
  175. package/dist/agent-src/guidelines/design-handover-extraction.md +117 -0
  176. package/dist/agent-src/guidelines/design-modes.md +143 -0
  177. package/dist/agent-src/guidelines/design-reconciliation.md +172 -0
  178. package/dist/agent-src/guidelines/docs/readme-size-and-splitting.md +209 -0
  179. package/dist/agent-src/guidelines/e2e/playwright.md +363 -0
  180. package/dist/agent-src/guidelines/gtm-handoff.md +114 -0
  181. package/dist/agent-src/guidelines/monorepo-antipatterns.md +141 -0
  182. package/dist/agent-src/guidelines/php/api-design.md +115 -0
  183. package/dist/agent-src/guidelines/php/artisan-commands.md +81 -0
  184. package/dist/agent-src/guidelines/php/blade-ui.md +78 -0
  185. package/dist/agent-src/guidelines/php/controllers.md +90 -0
  186. package/dist/agent-src/guidelines/php/database.md +194 -0
  187. package/dist/agent-src/guidelines/php/eloquent.md +208 -0
  188. package/dist/agent-src/guidelines/php/flux.md +80 -0
  189. package/dist/agent-src/guidelines/php/general.md +207 -0
  190. package/dist/agent-src/guidelines/php/git.md +164 -0
  191. package/dist/agent-src/guidelines/php/jobs.md +111 -0
  192. package/dist/agent-src/guidelines/php/livewire.md +71 -0
  193. package/dist/agent-src/guidelines/php/logging.md +79 -0
  194. package/dist/agent-src/guidelines/php/naming.md +89 -0
  195. package/dist/agent-src/guidelines/php/patterns/dependency-injection.md +57 -0
  196. package/dist/agent-src/guidelines/php/patterns/dtos.md +199 -0
  197. package/dist/agent-src/guidelines/php/patterns/events.md +67 -0
  198. package/dist/agent-src/guidelines/php/patterns/factory.md +53 -0
  199. package/dist/agent-src/guidelines/php/patterns/pipelines.md +66 -0
  200. package/dist/agent-src/guidelines/php/patterns/policies.md +66 -0
  201. package/dist/agent-src/guidelines/php/patterns/repositories.md +122 -0
  202. package/dist/agent-src/guidelines/php/patterns/service-layer.md +64 -0
  203. package/dist/agent-src/guidelines/php/patterns/strategy.md +247 -0
  204. package/dist/agent-src/guidelines/php/patterns.md +28 -0
  205. package/dist/agent-src/guidelines/php/performance.md +92 -0
  206. package/dist/agent-src/guidelines/php/php-coding-patterns.md +80 -0
  207. package/dist/agent-src/guidelines/php/resources.md +100 -0
  208. package/dist/agent-src/guidelines/php/security.md +110 -0
  209. package/dist/agent-src/guidelines/php/sql.md +97 -0
  210. package/dist/agent-src/guidelines/php/validations.md +119 -0
  211. package/dist/agent-src/guidelines/php/websocket.md +100 -0
  212. package/dist/agent-src/guidelines/prompt-templates.md +189 -0
  213. package/dist/agent-src/guidelines/redundancy-taxonomy.md +208 -0
  214. package/dist/agent-src/guidelines/wing4-handoff.md +127 -0
  215. package/dist/agent-src/personas/README.md +1 -1
  216. package/dist/agent-src/personas/_template-specialist/persona.md +1 -1
  217. package/dist/agent-src/personas/product-owner.md +1 -1
  218. package/dist/agent-src/rules/active-remediation.md +1 -1
  219. package/dist/agent-src/rules/architecture.md +2 -2
  220. package/dist/agent-src/rules/artifact-drafting-protocol.md +1 -1
  221. package/dist/agent-src/rules/ask-when-uncertain.md +2 -2
  222. package/dist/agent-src/rules/brand-source-of-truth.md +9 -7
  223. package/dist/agent-src/rules/code-comment-discipline.md +2 -2
  224. package/dist/agent-src/rules/code-provenance.md +1 -1
  225. package/dist/agent-src/rules/content-quoting-floor.md +1 -1
  226. package/dist/agent-src/rules/context-hygiene.md +5 -5
  227. package/dist/agent-src/rules/cross-source-consistency.md +1 -1
  228. package/dist/agent-src/rules/design-fidelity.md +36 -46
  229. package/dist/agent-src/rules/direct-answers.md +2 -2
  230. package/dist/agent-src/rules/domain-adoption-policy.md +1 -1
  231. package/dist/agent-src/rules/evaluator-independence.md +1 -1
  232. package/dist/agent-src/rules/framework-neutrality-in-generic-skills.md +1 -1
  233. package/dist/agent-src/rules/icon-consistency.md +5 -1
  234. package/dist/agent-src/rules/improve-before-implement.md +1 -1
  235. package/dist/agent-src/rules/language-and-tone.md +3 -3
  236. package/dist/agent-src/rules/minimal-safe-diff.md +1 -1
  237. package/dist/agent-src/rules/notes-first-reasoning.md +36 -25
  238. package/dist/agent-src/rules/recurring-criticism.md +1 -1
  239. package/dist/agent-src/rules/roadmap-progress-sync.md +1 -1
  240. package/dist/agent-src/rules/role-mode-adherence.md +2 -2
  241. package/dist/agent-src/rules/security-sensitive-stop.md +1 -1
  242. package/dist/agent-src/rules/size-enforcement.md +1 -1
  243. package/dist/agent-src/rules/source-confidentiality.md +2 -2
  244. package/dist/agent-src/rules/think-before-action.md +1 -1
  245. package/dist/agent-src/rules/token-efficiency.md +7 -5
  246. package/dist/agent-src/rules/ui-audit-gate.md +3 -2
  247. package/dist/agent-src/rules/untrusted-input-defense.md +3 -3
  248. package/dist/agent-src/scripts/archive_completed_roadmaps.ts +106 -4
  249. package/dist/agent-src/skills/activation-design/SKILL.md +2 -2
  250. package/dist/agent-src/skills/adr-create/SKILL.md +5 -5
  251. package/dist/agent-src/skills/ai-council/SKILL.md +1 -1
  252. package/dist/agent-src/skills/ai-council/references/advanced-modes.md +1 -1
  253. package/dist/agent-src/skills/blade-ui/SKILL.md +1 -1
  254. package/dist/agent-src/skills/blast-radius-analyzer/SKILL.md +1 -1
  255. package/dist/agent-src/skills/brand-to-tokens/SKILL.md +24 -3
  256. package/dist/agent-src/skills/bug-analyzer/SKILL.md +1 -1
  257. package/dist/agent-src/skills/build-buy-partner/SKILL.md +1 -1
  258. package/dist/agent-src/skills/churn-prevention/SKILL.md +2 -2
  259. package/dist/agent-src/skills/code-intelligence/SKILL.md +57 -1
  260. package/dist/agent-src/skills/code-refactoring/SKILL.md +3 -3
  261. package/dist/agent-src/skills/code-review/SKILL.md +3 -3
  262. package/dist/agent-src/skills/command-writing/SKILL.md +3 -3
  263. package/dist/agent-src/skills/comp-banding/SKILL.md +1 -1
  264. package/dist/agent-src/skills/competitive-moat-analysis/SKILL.md +1 -1
  265. package/dist/agent-src/skills/competitive-positioning/SKILL.md +2 -2
  266. package/dist/agent-src/skills/complexity-first-planning/SKILL.md +1 -1
  267. package/dist/agent-src/skills/condense-memory/SKILL.md +1 -1
  268. package/dist/agent-src/skills/content-funnel-design/SKILL.md +2 -2
  269. package/dist/agent-src/skills/contracts-cognition/SKILL.md +1 -1
  270. package/dist/agent-src/skills/copilot-agents-optimization/SKILL.md +2 -2
  271. package/dist/agent-src/skills/corpus-grounding/SKILL.md +2 -2
  272. package/dist/agent-src/skills/customer-research/SKILL.md +2 -2
  273. package/dist/agent-src/skills/dashboard-design/SKILL.md +1 -1
  274. package/dist/agent-src/skills/data-handling-judgment/SKILL.md +1 -1
  275. package/dist/agent-src/skills/deal-qualification-meddic/SKILL.md +2 -2
  276. package/dist/agent-src/skills/decision-record/SKILL.md +3 -3
  277. package/dist/agent-src/skills/decision-review/SKILL.md +8 -8
  278. package/dist/agent-src/skills/deep-reading-analyst/SKILL.md +22 -22
  279. package/dist/agent-src/skills/design-intelligence/SKILL.md +4 -4
  280. package/dist/agent-src/skills/design-intelligence/references/context-and-registers.md +2 -2
  281. package/dist/agent-src/skills/design-review/SKILL.md +4 -4
  282. package/dist/agent-src/skills/design-system-capture/references/design-system-json.md +20 -1
  283. package/dist/agent-src/skills/design-tokens/SKILL.md +17 -2
  284. package/dist/agent-src/skills/design-variations/SKILL.md +2 -2
  285. package/dist/agent-src/skills/developer-like-execution/SKILL.md +2 -2
  286. package/dist/agent-src/skills/discovery-interview/SKILL.md +2 -2
  287. package/dist/agent-src/skills/doc-coauthoring/SKILL.md +3 -3
  288. package/dist/agent-src/skills/editorial-calendar/SKILL.md +2 -2
  289. package/dist/agent-src/skills/existing-ui-audit/SKILL.md +44 -1
  290. package/dist/agent-src/skills/existing-ui-audit/references/anti-slop-cross-reference.md +2 -2
  291. package/dist/agent-src/skills/expansion-playbook/SKILL.md +2 -2
  292. package/dist/agent-src/skills/experiment-loop/SKILL.md +1 -1
  293. package/dist/agent-src/skills/experiment-loop/references/protocol.md +1 -1
  294. package/dist/agent-src/skills/fe-design/SKILL.md +3 -3
  295. package/dist/agent-src/skills/fe-design/references/design-patterns.md +1 -1
  296. package/dist/agent-src/skills/fe-design/references/design-read-and-memory.md +3 -3
  297. package/dist/agent-src/skills/fe-design/references/source-led-port.md +1 -1
  298. package/dist/agent-src/skills/feature-planning/SKILL.md +1 -1
  299. package/dist/agent-src/skills/flux/SKILL.md +1 -1
  300. package/dist/agent-src/skills/forecast-accuracy/SKILL.md +2 -2
  301. package/dist/agent-src/skills/forecasting/SKILL.md +2 -2
  302. package/dist/agent-src/skills/fundraising-narrative/SKILL.md +2 -2
  303. package/dist/agent-src/skills/funnel-analysis/SKILL.md +2 -2
  304. package/dist/agent-src/skills/git-workflow/references/push-closes-its-loop.md +9 -0
  305. package/dist/agent-src/skills/gtm-launch/SKILL.md +2 -2
  306. package/dist/agent-src/skills/hiring-loop-design/SKILL.md +1 -1
  307. package/dist/agent-src/skills/html-deck/SKILL.md +5 -5
  308. package/dist/agent-src/skills/humanizer/SKILL.md +1 -1
  309. package/dist/agent-src/skills/humanizer/data/patterns.md +1 -1
  310. package/dist/agent-src/skills/iconography/SKILL.md +3 -3
  311. package/dist/agent-src/skills/judge-synthesis/SKILL.md +1 -1
  312. package/dist/agent-src/skills/laravel-api-endpoint/SKILL.md +2 -2
  313. package/dist/agent-src/skills/launch-readiness/SKILL.md +3 -3
  314. package/dist/agent-src/skills/learning-to-rule-or-skill/SKILL.md +6 -6
  315. package/dist/agent-src/skills/livewire/SKILL.md +1 -1
  316. package/dist/agent-src/skills/market-entry-analysis/SKILL.md +1 -1
  317. package/dist/agent-src/skills/mcp-builder/SKILL.md +1 -1
  318. package/dist/agent-src/skills/memory-consolidation/SKILL.md +3 -3
  319. package/dist/agent-src/skills/messaging-architecture/SKILL.md +2 -2
  320. package/dist/agent-src/skills/monorepo-workspace/SKILL.md +1 -1
  321. package/dist/agent-src/skills/onboarding-design/SKILL.md +2 -2
  322. package/dist/agent-src/skills/onboarding-program/SKILL.md +1 -1
  323. package/dist/agent-src/skills/one-on-one-cadence/SKILL.md +1 -1
  324. package/dist/agent-src/skills/org-design/SKILL.md +1 -1
  325. package/dist/agent-src/skills/overbuild-review-lens/SKILL.md +3 -3
  326. package/dist/agent-src/skills/override-management/SKILL.md +1 -1
  327. package/dist/agent-src/skills/perf-feedback-craft/SKILL.md +1 -1
  328. package/dist/agent-src/skills/persona-writing/SKILL.md +1 -1
  329. package/dist/agent-src/skills/php-coder/SKILL.md +1 -1
  330. package/dist/agent-src/skills/pipeline-strategy/SKILL.md +2 -2
  331. package/dist/agent-src/skills/playwright-testing/SKILL.md +3 -3
  332. package/dist/agent-src/skills/po-discovery/SKILL.md +1 -1
  333. package/dist/agent-src/skills/positioning-strategy/SKILL.md +2 -2
  334. package/dist/agent-src/skills/privacy-review/SKILL.md +1 -1
  335. package/dist/agent-src/skills/prompt-optimizer/SKILL.md +3 -3
  336. package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +1 -1
  337. package/dist/agent-src/skills/reasoning-orchestrator/SKILL.md +2 -2
  338. package/dist/agent-src/skills/receiving-code-review/SKILL.md +1 -1
  339. package/dist/agent-src/skills/refine-ticket/SKILL.md +2 -2
  340. package/dist/agent-src/skills/release-comms/SKILL.md +2 -2
  341. package/dist/agent-src/skills/retention-loops/SKILL.md +2 -2
  342. package/dist/agent-src/skills/review-routing/SKILL.md +2 -2
  343. package/dist/agent-src/skills/roadmap-management/SKILL.md +1 -1
  344. package/dist/agent-src/skills/roadmap-management/references/archival.md +1 -1
  345. package/dist/agent-src/skills/roadmap-writing/SKILL.md +5 -5
  346. package/dist/agent-src/skills/rule-writing/SKILL.md +6 -6
  347. package/dist/agent-src/skills/runway-cognition/SKILL.md +2 -2
  348. package/dist/agent-src/skills/scenario-modeling/SKILL.md +2 -2
  349. package/dist/agent-src/skills/skill-writing/SKILL.md +2 -2
  350. package/dist/agent-src/skills/skill-writing/references/procedure.md +1 -1
  351. package/dist/agent-src/skills/skill-writing/references/section-patterns.md +3 -3
  352. package/dist/agent-src/skills/spreadsheet-authoring/SKILL.md +1 -1
  353. package/dist/agent-src/skills/stakeholder-tradeoff/SKILL.md +3 -3
  354. package/dist/agent-src/skills/subagent-orchestration/SKILL.md +1 -1
  355. package/dist/agent-src/skills/supply-chain-intake/SKILL.md +1 -1
  356. package/dist/agent-src/skills/systematic-debugging/SKILL.md +2 -2
  357. package/dist/agent-src/skills/tailwind-engineer/SKILL.md +60 -4
  358. package/dist/agent-src/skills/throughput-vs-morale-tradeoff/SKILL.md +1 -1
  359. package/dist/agent-src/skills/token-optimizer/SKILL.md +1 -1
  360. package/dist/agent-src/skills/typography-system/SKILL.md +2 -2
  361. package/dist/agent-src/skills/ui-component-architect/SKILL.md +28 -8
  362. package/dist/agent-src/skills/unit-economics-modeling/SKILL.md +2 -2
  363. package/dist/agent-src/skills/upstream-contribute/SKILL.md +1 -1
  364. package/dist/agent-src/skills/validate-feature-fit/SKILL.md +2 -2
  365. package/dist/agent-src/skills/verify-repair-loop/SKILL.md +2 -2
  366. package/dist/agent-src/skills/vision-articulation/SKILL.md +1 -1
  367. package/dist/agent-src/skills/voc-extract/SKILL.md +2 -2
  368. package/dist/agent-src/skills/voice-and-tone-design/SKILL.md +2 -2
  369. package/dist/agent-src/skills/wireframe/SKILL.md +1 -1
  370. package/dist/agent-src/skills/workspace-link/SKILL.md +1 -1
  371. package/dist/agent-src/templates/agent-settings.md +6 -6
  372. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
  373. package/dist/agent-src/templates/contexts/knowledge-pages.md +2 -3
  374. package/dist/agent-src/templates/copilot-instructions.md +1 -1
  375. package/dist/agent-src/templates/roadmaps.md +1 -1
  376. package/dist/agent-src/templates/scripts/README.md +2 -2
  377. package/dist/agent-src/user-types/_template/user-type.md +1 -1
  378. package/dist/cli/registry.js +1 -1
  379. package/dist/cli-delegate/archive_completed_roadmaps.js +52 -4
  380. package/dist/cli-delegate/check_update_banner.js +12 -1
  381. package/dist/cli-delegate/{chunk-TGIPZBCW.js → chunk-2KKXJW25.js} +22 -8
  382. package/dist/cli-delegate/{chunk-NLP54U3J.js → chunk-2XY7ILBT.js} +13 -1
  383. package/dist/cli-delegate/{chunk-4FS4WRXP.js → chunk-3FKR64R5.js} +34 -6
  384. package/dist/cli-delegate/{chunk-J3RFNKG4.js → chunk-55ACLDUE.js} +2 -2
  385. package/dist/cli-delegate/{chunk-PKOBQADP.js → chunk-57PN4GYJ.js} +1 -1
  386. package/dist/cli-delegate/{chunk-BIXEDQPZ.js → chunk-AK6HODNQ.js} +4 -4
  387. package/dist/cli-delegate/{chunk-2FTMENJL.js → chunk-GYC3VRYN.js} +1 -1
  388. package/dist/cli-delegate/{chunk-LWTYTX6F.js → chunk-HZ52BRGG.js} +24 -18
  389. package/dist/cli-delegate/{chunk-6RJA2F5A.js → chunk-IVBPRCQO.js} +1 -1
  390. package/dist/cli-delegate/{chunk-I6RHFQEG.js → chunk-YUM5KURG.js} +17 -1
  391. package/dist/cli-delegate/cmd_analyze_session.js +1 -1
  392. package/dist/cli-delegate/cmd_brand_status.js +1 -1
  393. package/dist/cli-delegate/cmd_conformance.js +3 -3
  394. package/dist/cli-delegate/cmd_doctor.js +3 -3
  395. package/dist/cli-delegate/cmd_explain.js +2 -2
  396. package/dist/cli-delegate/cmd_export.js +4 -4
  397. package/dist/cli-delegate/cmd_handoff.js +24 -16
  398. package/dist/cli-delegate/cmd_mcp_available.js +1 -1
  399. package/dist/cli-delegate/cmd_memory_get.js +1 -1
  400. package/dist/cli-delegate/cmd_migrate.js +2 -2
  401. package/dist/cli-delegate/cmd_packs_active.js +2 -2
  402. package/dist/cli-delegate/cmd_prune.js +4 -4
  403. package/dist/cli-delegate/cmd_route_audit.js +3 -3
  404. package/dist/cli-delegate/cmd_route_explain.js +1 -1
  405. package/dist/cli-delegate/cmd_session_recycle.js +4 -14
  406. package/dist/cli-delegate/cmd_settings_get.js +15 -9
  407. package/dist/cli-delegate/cmd_settings_migrate.js +4 -4
  408. package/dist/cli-delegate/cmd_settings_set.js +41 -11
  409. package/dist/cli-delegate/cmd_sync.js +4 -4
  410. package/dist/cli-delegate/cmd_uninstall.js +4 -4
  411. package/dist/cli-delegate/cmd_update.js +1 -1
  412. package/dist/cli-delegate/cmd_upgrade.js +1 -1
  413. package/dist/cli-delegate/cmd_validate.js +4 -4
  414. package/dist/cli-delegate/cmd_versions.js +1 -1
  415. package/dist/discovery/deprecation-report.md +1 -1
  416. package/dist/discovery/discovery-manifest.json +27 -80
  417. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  418. package/dist/discovery/discovery-manifest.summary.md +3 -3
  419. package/dist/discovery/dormancy-report.md +1 -1
  420. package/dist/discovery/orphan-report.md +1 -1
  421. package/dist/discovery/packs.json +5 -7
  422. package/dist/discovery/trust-report.md +2 -2
  423. package/dist/discovery/workspaces.json +4 -6
  424. package/dist/hooks/dispatch.js +9249 -8981
  425. package/dist/install/install.mjs +47 -8
  426. package/dist/mcp/registry-manifest.json +3 -3
  427. package/dist/mcp/server.json +2 -2
  428. package/dist/mcp/server.mjs +5496 -2400
  429. package/dist/router.json +1 -1
  430. package/dist/scripts/_lib/agent_settings.js +73 -0
  431. package/dist/scripts/_lib/agent_src.js +20 -0
  432. package/dist/scripts/_lib/guidelines_lane.js +158 -0
  433. package/dist/scripts/_lib/lean_projection_mode.js +108 -0
  434. package/dist/scripts/_lib/router_match.js +243 -0
  435. package/dist/scripts/_lib/rule_injection.js +216 -0
  436. package/dist/scripts/condense.js +22 -25
  437. package/dist/scripts/project_thin_rules.js +139 -19
  438. package/dist/server/io/yamlIO.js +125 -17
  439. package/dist/server/schemas/settings.js +32 -5
  440. package/dist/shared/settingsSurface.js +6 -1
  441. package/docs/MIGRATION.md +56 -0
  442. package/docs/contracts/settings-classes.md +48 -7
  443. package/docs/guidelines/abstraction-thresholds.md +35 -0
  444. package/docs/guidelines/agent-infra/active-remediation-mechanics.md +3 -3
  445. package/docs/guidelines/agent-infra/false-green.md +2 -2
  446. package/docs/guidelines/agent-infra/notes-horizon-mechanics.md +90 -0
  447. package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +1 -1
  448. package/docs/guidelines/agent-infra/skill-quality-checklist.md +1 -1
  449. package/docs/guidelines/design-fidelity-mechanics.md +4 -0
  450. package/docs/guidelines/design-fidelity-routing.md +78 -0
  451. package/docs/guidelines/design-reconciliation.md +172 -0
  452. package/docs/guidelines/gtm-handoff.md +2 -2
  453. package/docs/guidelines/wing4-handoff.md +2 -2
  454. package/llms.txt +1 -1
  455. package/package.json +7 -3
  456. package/src/agent-src/scripts/archive_completed_roadmaps.ts +106 -4
  457. package/src/config/agent-settings.template.yml +94 -1
  458. package/src/config/ci-local-parity.yml +34 -0
  459. package/src/config/continuity-surface.json +8 -29
  460. package/src/config/evaluator-budgets.json +4 -4
  461. package/src/config/gate-coverage.yml +31 -8
  462. package/src/config/gate-reachability-exemptions.json +1 -0
  463. package/src/config/gate-violation-baselines.json +3 -3
  464. package/src/config/hook-token-budget.json +8 -7
  465. package/src/config/host-injection-effect.json +2 -2
  466. package/src/config/pack-size-budget.json +55 -4
  467. package/src/config/packed-binary-manifest.json +1 -1
  468. package/src/config/platform-anchor.json +47 -0
  469. package/src/config/preamble-payload-budget.json +2 -3
  470. package/src/config/publish-surface.json +4 -2
  471. package/src/config/ratification-policy.json +7 -0
  472. package/src/config/routing-coverage-seed.json +9 -2
  473. package/src/config/rule-stub-ceilings.json +16 -9
  474. package/src/scripts/_cli/cmd_session_recycle.ts +2 -25
  475. package/src/scripts/_cli/cmd_settings_get.ts +22 -7
  476. package/src/scripts/_cli/handoff_sessions.ts +14 -44
  477. package/src/scripts/_lib/agent_settings.ts +85 -0
  478. package/src/scripts/_lib/agent_src.ts +21 -0
  479. package/src/scripts/_lib/artifact_maturity.ts +242 -0
  480. package/src/scripts/_lib/conformance_report.ts +403 -0
  481. package/src/scripts/_lib/continuity_slot.ts +295 -0
  482. package/src/scripts/_lib/continuity_writer.ts +312 -0
  483. package/src/scripts/_lib/design_system_import.ts +20 -0
  484. package/src/scripts/_lib/design_tolerance.ts +281 -0
  485. package/src/scripts/_lib/guidelines_lane.ts +164 -0
  486. package/src/scripts/_lib/hook_settings.ts +85 -0
  487. package/src/scripts/_lib/lean_projection_mode.ts +127 -0
  488. package/src/scripts/_lib/obligation_frequency.ts +2 -3
  489. package/src/scripts/_lib/packed_binary_predicate.ts +37 -0
  490. package/src/scripts/_lib/platform_anchor.ts +1053 -0
  491. package/src/scripts/_lib/ratification_artifact.ts +278 -0
  492. package/src/scripts/_lib/recycle_envelope_paths.ts +109 -21
  493. package/src/scripts/_lib/regression_neighbourhood.ts +159 -22
  494. package/src/scripts/_lib/security_lint.ts +23 -2
  495. package/src/scripts/_lib/self_repair.ts +21 -0
  496. package/src/scripts/_lib/session_eol.ts +44 -0
  497. package/src/scripts/_lib/session_index_trust.ts +387 -0
  498. package/src/scripts/_lib/standing_bound_ratchet.ts +220 -0
  499. package/src/scripts/_lib/tolerance_shadow.ts +177 -0
  500. package/src/scripts/_lib/vendored_grammar_upstream.ts +280 -0
  501. package/src/scripts/ai_council/redact_low_impact_entry.ts +8 -0
  502. package/src/scripts/audit_mcp_tools.ts +69 -25
  503. package/src/scripts/autonomy_friction_traffic.ts +379 -0
  504. package/src/scripts/build_mcp_catalog.ts +24 -1
  505. package/src/scripts/check_host_tree_parity.ts +291 -0
  506. package/src/scripts/check_kernel_edit_ratified.ts +462 -0
  507. package/src/scripts/check_loss_class_declared.ts +793 -46
  508. package/src/scripts/check_platform_anchor.ts +390 -0
  509. package/src/scripts/check_preamble_payload_budget.ts +424 -7
  510. package/src/scripts/check_projected_rule_routes.ts +395 -0
  511. package/src/scripts/check_rule_projection_integrity.ts +102 -2
  512. package/src/scripts/ci_settle.ts +205 -5
  513. package/src/scripts/code_graph/build.ts +79 -0
  514. package/src/scripts/code_graph/cli.ts +264 -7
  515. package/src/scripts/code_graph/detect.ts +38 -0
  516. package/src/scripts/code_graph/query.ts +25 -2
  517. package/src/scripts/code_graph/sqlite_store.ts +16 -1
  518. package/src/scripts/code_graph/types.ts +52 -3
  519. package/src/scripts/code_graph/validate.ts +3 -1
  520. package/src/scripts/code_graph/verbs.ts +590 -0
  521. package/src/scripts/condense.ts +22 -26
  522. package/src/scripts/generate_host_cost_table.ts +354 -0
  523. package/src/scripts/handoff_context_hook.ts +39 -1
  524. package/src/scripts/hook_manifest.json +1 -1
  525. package/src/scripts/hook_manifest.yaml +59 -28
  526. package/src/scripts/hooks/block_speaking_inbox_dir.ts +182 -16
  527. package/src/scripts/hooks/category_a.ts +1 -1
  528. package/src/scripts/hooks/chain_nudge_hook.ts +311 -25
  529. package/src/scripts/hooks/code_graph_context_hook.ts +7 -18
  530. package/src/scripts/hooks/push_settle_hook.ts +3 -2
  531. package/src/scripts/hooks/rule_inject_hook.ts +107 -20
  532. package/src/scripts/hooks/session_eol_hook.ts +177 -145
  533. package/src/scripts/hooks/source_first_gate_hook.ts +12 -0
  534. package/src/scripts/hooks/ui_route_nudge_hook.ts +52 -15
  535. package/src/scripts/hot_context_hook.ts +103 -408
  536. package/src/scripts/lint_evidence_artifacts.ts +1 -0
  537. package/src/scripts/lint_knowledge_scale.ts +0 -26
  538. package/src/scripts/lint_roadmap_blockers.ts +164 -1
  539. package/src/scripts/mcp_server/consumer_tool_catalog.json +152 -2
  540. package/src/scripts/mcp_server/graph_tools.ts +294 -0
  541. package/src/scripts/mcp_server/path_util.ts +31 -0
  542. package/src/scripts/mcp_server/tool_catalog_source.ts +7 -1
  543. package/src/scripts/mcp_server/tools.ts +3 -13
  544. package/src/scripts/memory_lookup.ts +9 -9
  545. package/src/scripts/model_rule_injection.ts +61 -4
  546. package/src/scripts/project_thin_rules.ts +149 -16
  547. package/src/scripts/report_standing_payload_by_host.ts +650 -0
  548. package/src/scripts/schemas/agent-settings.schema.json +7 -1
  549. package/src/scripts/session_memory_index.ts +86 -8
  550. package/src/scripts/sync_agent_settings.ts +270 -10
  551. package/src/server/io/yamlIO.ts +127 -17
  552. package/src/server/schemas/settings.ts +45 -6
  553. package/src/shared/settingsSurface.ts +13 -2
  554. package/src/templates/compact-instructions.md +8 -3
  555. package/src/vendor/grammars/README.md +27 -2
  556. package/dist/agent-src/commands/chat-history/import.md +0 -170
  557. package/dist/agent-src/commands/chat-history.md +0 -63
@@ -0,0 +1,325 @@
1
+ # agent-interaction-and-decision-quality
2
+
3
+ Improves how the agent asks questions, handles uncertainty, learns from feedback,
4
+ and integrates quality rules into CI.
5
+
6
+ ## Core principles
7
+
8
+ - Do not guess when clarification is cheap
9
+ - Do not overwhelm the user with too many complex questions at once
10
+ - Prefer structured decision-making over assumptions
11
+ - Learn from negative feedback and turn it into system improvements
12
+ - Integrate recurring improvements into rules, skills, or CI
13
+
14
+ ## 1. Question strategy
15
+
16
+ ### Simple decisions
17
+
18
+ If questions are simple binary or small choices — ask multiple at once, numbered clearly:
19
+
20
+ ```
21
+ 1. Use Tailwind or existing styles?
22
+ 2. Add tests? (yes/no)
23
+ 3. Extend existing component or create new one?
24
+ ```
25
+
26
+ ### Complex questions
27
+
28
+ If questions require thinking, context-create, or explanation:
29
+
30
+ - Ask ONE question at a time
31
+ - Wait for answer before continuing
32
+ - Do not bundle multiple complex topics together
33
+
34
+ ### Handoff / model-switch questions
35
+
36
+ If a handoff (e.g. model change, deeper analysis) is required:
37
+
38
+ 1. First ask all necessary domain questions (step-by-step if complex)
39
+ 2. Then ask the handoff question LAST
40
+
41
+ Reason: answers must be available before switching context — avoids incomplete downstream instructions.
42
+
43
+ ## 2. No blind implementation
44
+
45
+ Before implementing, analyze what already exists:
46
+
47
+ - Identify used frameworks, libraries, patterns
48
+ - If multiple UI systems exist (e.g. Tailwind, shadcn, custom): ask which one to use
49
+ - Do NOT pick one arbitrarily or start implementation without alignment
50
+
51
+ ## 3. Handling unclear requirements
52
+
53
+ If instructions are incomplete:
54
+
55
+ - Do NOT assume missing behavior
56
+ - Do NOT silently decide critical aspects
57
+ - Ask precise clarification questions or output a structured clarification request
58
+
59
+ ## 4. Learning from negative feedback
60
+
61
+ If the user complains, says something is wrong, or shows frustration:
62
+
63
+ 1. Do NOT ignore or defend blindly
64
+ 2. Extract the underlying failure pattern
65
+ 3. Convert it into one of:
66
+ - Rule (constraint to prevent recurrence)
67
+ - Skill improvement (better workflow step)
68
+ - Guideline addition (reference convention)
69
+ - Linter check (if recurring and automatable)
70
+
71
+ > Every mistake should improve the system.
72
+
73
+ ## 5. CI integration mindset
74
+
75
+ When introducing new quality patterns, consider whether they should be enforced automatically.
76
+
77
+ If unsure, ask:
78
+ - "Should this be enforced via CI?"
79
+ - "Should this be part of the linter?"
80
+
81
+ Prefer consistent enforcement over manual discipline.
82
+
83
+ ## 6. Decision transparency
84
+
85
+ When making decisions:
86
+
87
+ - State what you assumed
88
+ - State what alternatives exist
89
+ - State why a decision was made
90
+ - If the decision is important: confirm with the user before proceeding
91
+
92
+ ## 7. Efficiency in interaction
93
+
94
+ - Avoid long back-and-forth caused by poor initial questions
95
+ - Avoid rework caused by wrong assumptions
96
+ - Prefer: short clarification early → correct implementation once
97
+
98
+ ## 8. Improve before implement — pre-implementation validation
99
+
100
+ _Origin: migrated from `src/rules/improve-before-implement.md` per the P4 pattern of `road-to-kernel-and-router.md`. The rule keeps the activation lists and the golden rule ("Challenge to improve, never to refuse"); the check detail lives here._
101
+
102
+ Before coding a new feature, refactor, module, or behavior-altering change, quickly verify:
103
+
104
+ ### 8-pre. Demand gate — should this exist at all? (build / defer)
105
+
106
+ One altitude ABOVE engineering-fit. Fires on a "build me an app / add this
107
+ feature" ask, before checks 8a–8c. It is a three-question advisor, NOT a
108
+ product-management framework — surface it in one short block, then proceed on
109
+ the user's answer (never block; `improve-before-implement`'s golden rule holds).
110
+
111
+ **Read the addressee before the questions.** The ladder below measures **market
112
+ demand**, and market demand is a meaningful quantity only where a market is
113
+ intended. Who the project is built for is `project.audience` — resolve it with
114
+ `agent-config settings:get project.audience`, which reports the value and the
115
+ file it came from, rather than opening one file. An absent value resolves to
116
+ `public`, and mechanically so: the template-defaults layer supplies the shipped
117
+ value beneath every file layer (`src/scripts/_lib/agent_settings.ts:873`) and
118
+ `project.audience` is not in the `settingsCarveOut` set, so absent and an
119
+ explicit `public` are the same behaviour. (It used to explain the
120
+ same conclusion with "this package has no defaults layer" — true of the retired
121
+ `_DEFAULTS`, false since that layer shipped. The conclusion never moved; the
122
+ reason did, and the reason decides how far a change to the shipped
123
+ default would reach.)
124
+
125
+ | `project.audience` | What 8-pre does |
126
+ |---|---|
127
+ | `self` | **Inert.** One line — "demand gate skipped (audience: self)" — then straight to 8a. No deferral, no demand question. |
128
+ | `internal` | Question 2 only ("what breaks without it?"). Questions 1 and 3 are already answered — the requester is the team. |
129
+ | `client` | The requester is the client, not a segment. Question 2 survives; 1 and 3 are answered by the engagement. |
130
+ | `public` | **Today's behaviour, unchanged** — all three questions and the full ladder. |
131
+
132
+ Three questions:
133
+
134
+ 1. **Who requested this?** (a real user / segment, or an internal hunch?)
135
+ 2. **What happens if you DON'T build it?** (churn / blocked deal, or nothing measurable?)
136
+ 3. **What's the demand evidence?** (requests, usage data, lost revenue — or a feeling?)
137
+
138
+ Map the answers to a compressed feature-demand hierarchy and recommend:
139
+
140
+ | Level | Signal | Recommendation |
141
+ |---|---|---|
142
+ | L-self | The maintainer needs it for their own work — no user population is intended | **Build** |
143
+ | L0 | Founder/agent anxiety — "it feels missing" | **Defer** — validate demand first |
144
+ | L1 | One anecdotal request, no pattern | **Defer** — watch for repetition |
145
+ | L2 | Repeated requests, no measured impact | **Validate** — instrument before building |
146
+ | L3 | Blocks activation/retention for a real segment | **Build** |
147
+ | L4 | Users are churning / deals lost without it | **Build now** |
148
+
149
+ Build at **L-self**, **L3**, or **L4**; L0–L2 get a defer/validate
150
+ recommendation with the one missing evidence named.
151
+
152
+ `L-self` is not a weaker L3. L3 and L4 are defined exclusively over third-party
153
+ users — "a real segment", "users are churning" — so a project with no intended
154
+ user population cannot reach either, not because it is bad but because the scale
155
+ has no value for it. Its ceiling on the L0–L4 ladder is L0, whose recommendation
156
+ is *defer*, which would defer a single-user tool forever. `L-self` is the level
157
+ that ladder is missing, not a discount on the ones it has.
158
+
159
+ **The artefact consequence.** At `L-self`, or at `audience: self` / `internal`,
160
+ never write a roadmap gate, exit criterion, or opening condition that names an
161
+ external user population, a market, or an external measurement. A gate whose
162
+ condition depends on a quantity the project cannot produce is not a gate — it is
163
+ a permanent no in the shape of an answer. This is where the advisory reading
164
+ actually breaks: in conversation "never block" holds, but when a roadmap needs a
165
+ falsifiable opening condition the agent reaches for the only vocabulary it has
166
+ for *should this exist*, and an advisory ladder becomes a number, then a gate.
167
+
168
+ This is advisory — the user decides; a "just build it" answer proceeds
169
+ immediately to 8a. No network, no case-memory API (the source's remote lookup is
170
+ dropped — a lethal-trifecta egress concern).
171
+
172
+ **Enforcement, honestly.** Nothing reads `project.audience` to change what this
173
+ section does. § 8-pre is prose and the branch table above is model-carried —
174
+ the same honesty boundary `security-sensitive-stop` and `untrusted-input-defense`
175
+ state for their own obligations. The one deterministic backstop sits downstream,
176
+ where the damage actually lands: `lint_roadmap_complexity` warns when a roadmap
177
+ gate rests on an external population.
178
+
179
+ ### 8a. Is the request clear?
180
+
181
+ - Are acceptance criteria defined or derivable?
182
+ - Is the scope bounded? (not "make it better" but "add X to Y")
183
+ - Are edge cases considered?
184
+
185
+ **If unclear** → ask ONE focused question per turn (`ask-when-uncertain` Iron Law — serial, never batched), never an interrogation.
186
+
187
+ ### 8b. Does it fit the existing architecture?
188
+
189
+ - Does similar functionality already exist?
190
+ - Does it follow established patterns in the codebase?
191
+ - Does it contradict existing conventions?
192
+ - Do **multiple valid patterns/frameworks** already exist (e.g. Tailwind + Flux, multiple form libraries, competing state stores)? If yes, do NOT pick one arbitrarily — ask which to use.
193
+ - Is the change a **second branch on the same discriminator** — second `match`/`switch` arm, second `if/elseif`, or second class hardcoded to one enum value (e.g. `Provider::FOO`, `'stripe'`)? If yes, run the Strategy sniff test before adding the branch — see [`strategy.md`](../php/patterns/strategy.md#sniff-test--when-an-enumstring-discriminator-wants-to-become-a-strategy).
194
+
195
+ **If misfit** → show evidence (file references), propose alternative.
196
+ **If multiple valid options** → list them, ask which to use. See [§ 2 — No blind implementation](#2-no-blind-implementation).
197
+
198
+ #### 8b-ladder. The solution-size ladder — stop at the first rung that works
199
+
200
+ "Does similar functionality already exist?" is one question with an **ordered**
201
+ answer set. Walk it top-down and stop at the first rung that carries the
202
+ requirement; each rung down costs more code to write, own, and eventually
203
+ delete. Ordered **after** comprehension, never instead of it — the ladder
204
+ shortens the solution, never the reading.
205
+
206
+ | # | Rung | The question |
207
+ |---|---|---|
208
+ | 1 | **Need to exist** | Does this have to be built at all? (§ 8-pre decides) |
209
+ | 2 | **Reuse in repo** | Does a unit already in this codebase do it? |
210
+ | 3 | **Stdlib / framework** | Does the language stdlib or the framework already do it? |
211
+ | 4 | **Native platform** | Does the OS, runtime, browser, or database already do it? |
212
+ | 5 | **Installed dependency** | Is it already in the dependency tree? |
213
+ | 6 | **Smallest working form** | Of what genuinely must be written, what is the least of it? |
214
+
215
+ Rungs 1, 2, 3, 5 and 6 are obligations this suite already states elsewhere
216
+ (§ 8-pre; § 8b above and [`component-oriented-and-oop-development`](../component-oriented-and-oop-development.md)
217
+ "Reuse before you build"; `architecture`'s "use the framework's primitive";
218
+ [`supply-chain-intake`](../../skills/supply-chain-intake/SKILL.md) step 0;
219
+ `minimal-safe-diff`'s smallest-change Iron Law) — the ladder **orders** them, it
220
+ does not add them.
221
+
222
+ **Rung 4 is the one that was missing.** Between "the framework does it" and "add
223
+ a dependency" sits the platform the code already runs on: `crypto.randomUUID`
224
+ before a uuid package, a database's own JSON / full-text / generated-column
225
+ support before an application-side index, `AbortSignal.timeout` before a timeout
226
+ helper, `Intl` before a formatting library, a filesystem watcher before a polling
227
+ loop. A dependency added for something the platform already ships is permanent
228
+ cost bought against a capability you already had.
229
+
230
+ #### 8b-shape. The shape axis — simple is not the same as short
231
+
232
+ The ladder above is the **scope** axis: must this exist, and can something
233
+ cheaper serve? The **shape** axis is the other half: of what must exist, which
234
+ form carries the **least cognitive load** — explicitly *not* the fewest
235
+ keystrokes.
236
+
237
+ A flat version one line longer beats a dense clever one. A one-liner qualifies
238
+ as the "smallest working form" only when it is also the *simplest* form, not
239
+ merely the shortest — nested ternaries, long optional-call chains, and clever
240
+ one-expression reductions all shrink the diff while raising the cost of every
241
+ future read. The failure mode is measured, not theoretical: generated code
242
+ trends shorter but denser, carrying more cognitive load per line. A size metric
243
+ on its own rewards exactly that.
244
+
245
+ Read with [`code-clarity`](../code-clarity.md), which owns the line-level form
246
+ decisions and states the same distinction from the other direction.
247
+
248
+ #### 8b-precedence. Resolution order when these pull against each other
249
+
250
+ Stated once, here, so the clauses above never issue contradictory simultaneous
251
+ instructions. Higher wins:
252
+
253
+ 1. **Safety floors** — `engineering-safety-floor`, `security-sensitive-stop`,
254
+ and `senior-engineering-discipline`'s invisible cross-cutting controls. A
255
+ rung that saves a line by dropping a guard has lost, not won.
256
+ 2. **Explicit user-fenced scope** — "just this one line" ends the ladder.
257
+ 3. **Shape** (simplicity) — a simpler form beats a smaller one.
258
+ 4. **Scope** (don't build it) — a cheaper rung beats a lower rung.
259
+ 5. **De-duplication** — last, and gated: extract only when the repetition
260
+ trigger in [`minimal-safe-diff-mechanics`](minimal-safe-diff-mechanics.md)
261
+ § Anti-over-engineering fires, never as a reflex.
262
+
263
+ Any pair is resolvable from this list alone. This is a **principle** ordering
264
+ and deliberately *not* an entry in `docs/contracts/rule-interactions.yml`, which
265
+ is a pairwise contract scoped to the always-on kernel rules — forking that
266
+ linted contract with a second prose ordering over a different kind of object is
267
+ the drift this ladder exists to avoid.
268
+
269
+
270
+ ### 8c. Is the approach sound?
271
+
272
+ - Is there a simpler way to achieve the same result?
273
+ - Are there known problems with the requested approach?
274
+ - Does the scope match the stated goal? (not over-engineered, not under-specified)
275
+
276
+ **If problematic** → explain the concern, propose a better approach.
277
+
278
+ ### How to challenge
279
+
280
+ - **Be concise** — one sentence per concern, not paragraphs
281
+ - **Show evidence** — reference existing code, patterns, or conventions
282
+ - **Offer alternatives** — don't just say "this is wrong"
283
+ - **Use numbered options** — let the user choose quickly
284
+ - **Respect "just do it"** — if the user insists after your challenge, execute immediately
285
+
286
+ Example:
287
+
288
+ ```
289
+ > ⚠️ `UserService` already has a `deactivate()` method that covers this case.
290
+ >
291
+ > 1. Use existing method — extend with new parameter
292
+ > 2. Create new method anyway — I'll explain the overlap in a comment
293
+ > 3. Skip validation — implement as requested
294
+ ```
295
+
296
+ After presenting concerns: user picks an option → execute immediately; user says "just do it" → execute immediately. Never argue twice about the same point. Never block work — delay is only justified if it prevents a clear mistake.
297
+
298
+ ### Scope limits
299
+
300
+ - **Max 1-2 challenges per task** — not every request needs validation
301
+ - **Max 1 minute of analysis** — if the check takes longer, skip it
302
+ - **Never validate simple tasks** — only features, architecture, significant changes
303
+ - **Never validate after the user already explained their reasoning**
304
+
305
+ ### Verify with concrete tools, not prose
306
+
307
+ If the challenge requires you to confirm current behavior before proposing an alternative, use a concrete probe — a `curl` against the endpoint, a Playwright spec, a debugger / `xdebug` step-through, or the project's test runner with a targeted filter. Asserting current behavior from memory is not validation.
308
+
309
+ ### Intent inference (RDP, standard host)
310
+
311
+ When the literal request and the underlying goal may differ, **state the inferred goal in one line and give ONE recommendation** — do not spread 2–3 framings (that is the overplanning [`direct-answers`](../../rules/direct-answers.md) suppresses). Standard host only; a strong-reasoning host self-infers, so skip it there. Engage per [`rdp-gate`](../../contexts/execution/rdp-gate.md).
312
+
313
+ ## Anti-patterns
314
+
315
+ - Asking 5 complex questions at once
316
+ - Mixing clarification and implementation in the same step
317
+ - Doing handoff before collecting required context
318
+ - Blindly choosing frameworks/tools without checking existing usage
319
+ - Ignoring user frustration instead of learning from it
320
+ - Introducing new quality rules without considering CI enforcement
321
+ - Making important decisions silently without stating reasoning
322
+
323
+ ## Final principle
324
+
325
+ > Ask better → decide better → build once → improve system continuously
@@ -0,0 +1,177 @@
1
+ # API Cost Levers
2
+
3
+ Reference material for a downstream AI-coding agent that wants to cut its own
4
+ Claude API dollar bill. Four platform-level billing levers, the exact economics
5
+ of each, and how they interact. Read on demand — not always-loaded.
6
+
7
+ Facts sourced from the in-repo `claude-api` plugin skill plus platform research
8
+ (2026-07-14). Do not invent an API shape beyond what is stated here.
9
+
10
+ ## The four levers at a glance
11
+
12
+ | Lever | Cuts | Best for | Watch out for |
13
+ |---|---|---|---|
14
+ | Prompt caching | Repeated input tokens | Stable prefix reused across calls (system prompt, tools, repo map) | Any byte change in the prefix invalidates the rest |
15
+ | Batch API | 50% input + output | Non-interactive bulk work (classification, summarization, evals) | Async, up to 24h, results unordered |
16
+ | Model tiering | Per-token price | Routine work on a cheaper model | Switching model is a cache miss |
17
+ | Effort / output sizing | Thinking + output tokens | Routine turns that don't need deep reasoning | Oversized `max_tokens` risks runaway output |
18
+
19
+ ## 1. Prompt caching
20
+
21
+ Put the large, byte-**stable** context first — system prompt, tool definitions,
22
+ a corpus or repo map, few-shot examples — behind a
23
+ `cache_control: {type: 'ephemeral'}` breakpoint. Keep volatile content (the
24
+ varying question, timestamps, per-request IDs) **after** the last breakpoint.
25
+ The cache is a **prefix match**: any byte change in the cached prefix
26
+ invalidates everything after it. Render order is tools then system then
27
+ messages.
28
+
29
+ Caching is GA — **no beta header needed**.
30
+
31
+ Economics:
32
+
33
+ - Cache reads cost approximately 0.1x the base input price.
34
+ - Cache writes cost 1.25x (5-minute TTL) or 2x (1-hour TTL).
35
+ - Break-even is after **one** read on the 5-minute TTL.
36
+
37
+ Constraints:
38
+
39
+ - The minimum cacheable prefix is model-dependent (approximately 1024–4096
40
+ tokens). Shorter prefixes silently do not cache.
41
+ - The cache is workspace-isolated (since February 2026).
42
+
43
+ Verify a hit with `usage.cache_read_input_tokens > 0`.
44
+
45
+ ```json
46
+ {
47
+ "system": [
48
+ { "type": "text", "text": "<large stable system prompt>",
49
+ "cache_control": { "type": "ephemeral" } }
50
+ ],
51
+ "messages": [
52
+ { "role": "user", "content": "<the varying question>" }
53
+ ]
54
+ }
55
+ ```
56
+
57
+ ## 2. Batch API
58
+
59
+ For **non-interactive, non-latency-sensitive bulk work** — bulk classification,
60
+ mass file summarization, eval runs. Not chatbots or interactive assistants.
61
+
62
+ - **50% off both input and output tokens.**
63
+ - Async: results within 24h (usually much less), keyed by `custom_id`, arriving
64
+ **unordered** — key results by `custom_id`, never by position.
65
+ - **Stacks with prompt caching**: a cached-batch input token can reach
66
+ approximately 0.05x the standard input price.
67
+
68
+ ## 3. Model tiering
69
+
70
+ Treat models like a team — a cheap model for mechanical or routine work, the
71
+ expensive model only for hard judgment. Approximate input / output price per 1M
72
+ tokens:
73
+
74
+ | Model | Input | Output |
75
+ |---|---|---|
76
+ | Haiku | $1 | $5 |
77
+ | Sonnet | $3 | $15 |
78
+ | Opus | $5 | $25 |
79
+ | Fable | $10 | $50 |
80
+
81
+ Opus input is approximately 5x Haiku. Tier by task **difficulty**, not blindly:
82
+ a cheaper model that gives wrong answers on judgment tasks costs correction
83
+ cycles, which erases the saving.
84
+
85
+ **Interaction with caching.** The prompt cache is keyed by `(model, prefix)`, so
86
+ switching a call to a cheaper model is a cache **miss**. Weigh the downgrade
87
+ saving against the lost cache-read saving before routing a cached call to a
88
+ different model.
89
+
90
+ ## 4. Effort and output right-sizing
91
+
92
+ - `output_config.effort` (low through max) controls thinking and output depth,
93
+ and therefore spend. Dial effort **down** on routine turns; reserve high / max
94
+ for hard reasoning.
95
+ - Right-size `max_tokens` — do not leave a huge ceiling. An unrealistically
96
+ large `max_tokens` does not cost tokens by itself, but it risks runaway output
97
+ and defeats pre-flight budgeting.
98
+
99
+ ## When to reach for which
100
+
101
+ | Situation | Lever |
102
+ |---|---|
103
+ | Same large context reused across many calls | Prompt caching |
104
+ | Thousands of independent, non-urgent jobs | Batch API (+ caching) |
105
+ | Turn is mechanical / narrow / well-specified | Cheaper model tier |
106
+ | Turn is routine and does not need deep thinking | Lower `effort` |
107
+ | Output could balloon unnecessarily | Cap `max_tokens` |
108
+ | Interactive latency matters | Caching + tiering; not Batch |
109
+
110
+ ## Claude Code note
111
+
112
+ In Claude Code, prompt caching is automatic for the **main loop** — resending
113
+ the same context prefix is cheap, so keeping a stable prefix pays off without
114
+ any explicit `cache_control`. The session-level hygiene levers are `/clear`
115
+ and `/compact` to shed accumulated context, plus subagent delegation for
116
+ verbose output so it never lands in the main context window.
117
+
118
+ **Subagents and forks pay a different cache economy — verified against host
119
+ version 2.1.220 (2026-07-30), re-check on drift:**
120
+
121
+ - A **named subagent** starts its own conversation with its own system
122
+ prompt and tool set. It builds its own cache from scratch, so its **first
123
+ call has no cache hit** — the entire per-spawn preamble (rules, tools,
124
+ dispatch prompt) is a cold write. Subagents use the **five-minute TTL**
125
+ even on a subscription; there is no per-agent setting to change that (see
126
+ `## Known upstream costs` below).
127
+ - A **fork** inherits the parent's system prompt, tools, and conversation
128
+ history exactly, so its first request **reads the parent's cache** instead
129
+ of writing a fresh one — the only documented mechanism that shares a cache
130
+ across a dispatch boundary. Forking forces background mode, which changes
131
+ the tool set and therefore invalidates the very prefix that motivated the
132
+ fork; weigh that cost before reaching for it — see the fork-vs-subagent
133
+ ordering rule in See also.
134
+ - Either way, the **cold-start preamble is re-written on every spawn** — the
135
+ always-loaded rule set, the tool definitions, and the dispatch prompt are
136
+ not shared across separate subagent instances. Fan-out (many subagents
137
+ from one parent) multiplies this cost by cohort size; see
138
+ `## Known upstream costs` below for the fan-out re-prefill issue this
139
+ package cannot fix.
140
+
141
+ ## Known upstream costs
142
+
143
+ Host-controlled behaviour this package has confirmed but cannot change at
144
+ any layer. Each entry carries the host version observed and the command to
145
+ re-verify it — a stale entry degrades into a dated observation, never a
146
+ false promise, when Anthropic changes the behaviour underneath it.
147
+
148
+ | Cost | Observed on | Re-verify |
149
+ |---|---|---|
150
+ | Fan-out (`do-in-parallel`-shaped dispatch) re-prefills the parent-accumulated context **per child** — the waste scales linearly with fan-out width, worst exactly where fan-out is most valuable (anthropics/claude-code#81389, open). No fix at any layer. | Claude Code 2.1.220, 2026-07-30 | `claude --version`; re-check the linked issue for a status change |
151
+ | Host-dispatched subagents are pinned to the **five-minute** cache TTL regardless of subscription tier or any environment variable; `ENABLE_PROMPT_CACHING_1H` does not apply to them. | Claude Code 2.1.220, 2026-07-30 | `claude --version`; re-check the official caching docs for a subagent-TTL setting |
152
+
153
+ Neither entry implies a package-side fix exists or is planned — both are
154
+ request-construction facts inside the host binary, outside this package's
155
+ reach. This package's own scope is measurement and payload size (what it
156
+ authors), never subagent request construction (what the host authors).
157
+
158
+ ## See also
159
+
160
+ - [`cache-economy-refusals`](../../../agents/settings/contexts/cache-economy-refusals.md) —
161
+ the measured cache figures behind the Claude Code note above, plus the
162
+ refusals (no interception proxy, no blanket 1h TTL, no cache-hit auto-tuning)
163
+ recorded so they are not rebuilt.
164
+
165
+ - [`model-recommendation.md`](model-recommendation.md) — tier routing (the
166
+ capability band behind lever 3).
167
+ - [`size-and-scope.md`](size-and-scope.md) — token discipline for the artifacts
168
+ that become the cached prefix.
169
+ - [`subagent-orchestration/prompts/README.md`](../../skills/subagent-orchestration/prompts/README.md)
170
+ § Prompt-cache discipline — sibling-uniformity rules and the
171
+ fork-vs-subagent dispatch ordering that follow from this cache economy.
172
+ - [`docs/contracts/ai-council-config.md`](../../contracts/ai-council-config.md)
173
+ § `prompt_cache.ttl` — the one surface where this package DOES control a
174
+ cache-control TTL (the council's own Anthropic calls, never host subagents).
175
+ - The Claude Code `claude-api` plugin skill (external, not vendored here) — the
176
+ authoritative, versioned API reference these figures derive from; re-check it
177
+ when Anthropic pricing or the caching/batch surface changes.