@event4u/agent-config 1.15.0 → 1.17.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 (354) hide show
  1. package/.agent-src/commands/{agents-audit.md → agents/audit.md} +4 -3
  2. package/.agent-src/commands/{agents-cleanup.md → agents/cleanup.md} +12 -6
  3. package/.agent-src/commands/{agents-prepare.md → agents/prepare.md} +4 -3
  4. package/.agent-src/commands/agents.md +46 -0
  5. package/.agent-src/commands/bug-fix.md +1 -1
  6. package/.agent-src/commands/bug-investigate.md +2 -2
  7. package/.agent-src/commands/{chat-history-checkpoint.md → chat-history/checkpoint.md} +5 -5
  8. package/.agent-src/commands/{chat-history-clear.md → chat-history/clear.md} +5 -5
  9. package/.agent-src/commands/{chat-history-resume.md → chat-history/resume.md} +4 -4
  10. package/.agent-src/commands/chat-history/show.md +107 -0
  11. package/.agent-src/commands/chat-history.md +33 -89
  12. package/.agent-src/commands/check-current-md.md +1 -1
  13. package/.agent-src/commands/{commit-in-chunks.md → commit/in-chunks.md} +15 -13
  14. package/.agent-src/commands/commit.md +22 -2
  15. package/.agent-src/commands/{context-create.md → context/create.md} +4 -3
  16. package/.agent-src/commands/{context-refactor.md → context/refactor.md} +4 -3
  17. package/.agent-src/commands/context.md +44 -0
  18. package/.agent-src/commands/{copilot-agents-init.md → copilot-agents/init.md} +4 -3
  19. package/.agent-src/commands/{copilot-agents-optimize.md → copilot-agents/optimize.md} +4 -3
  20. package/.agent-src/commands/copilot-agents.md +44 -0
  21. package/.agent-src/commands/council/default.md +221 -0
  22. package/.agent-src/commands/council/design.md +97 -0
  23. package/.agent-src/commands/council/optimize.md +116 -0
  24. package/.agent-src/commands/council/pr.md +124 -0
  25. package/.agent-src/commands/council.md +54 -0
  26. package/.agent-src/commands/{create-pr-description.md → create-pr/description-only.md} +4 -2
  27. package/.agent-src/commands/create-pr.md +49 -5
  28. package/.agent-src/commands/e2e-heal.md +1 -1
  29. package/.agent-src/commands/e2e-plan.md +1 -1
  30. package/.agent-src/commands/{feature-dev.md → feature/dev.md} +6 -3
  31. package/.agent-src/commands/{feature-explore.md → feature/explore.md} +5 -4
  32. package/.agent-src/commands/{feature-plan.md → feature/plan.md} +32 -5
  33. package/.agent-src/commands/{feature-refactor.md → feature/refactor.md} +4 -3
  34. package/.agent-src/commands/{feature-roadmap.md → feature/roadmap.md} +7 -6
  35. package/.agent-src/commands/feature.md +52 -0
  36. package/.agent-src/commands/{fix-ci.md → fix/ci.md} +4 -3
  37. package/.agent-src/commands/{fix-portability.md → fix/portability.md} +4 -3
  38. package/.agent-src/commands/{fix-pr-bot-comments.md → fix/pr-bots.md} +4 -3
  39. package/.agent-src/commands/{fix-pr-developer-comments.md → fix/pr-developers.md} +4 -3
  40. package/.agent-src/commands/{fix-pr-comments.md → fix/pr.md} +7 -6
  41. package/.agent-src/commands/{fix-references.md → fix/refs.md} +4 -3
  42. package/.agent-src/commands/{fix-seeder.md → fix/seeder.md} +4 -3
  43. package/.agent-src/commands/fix.md +54 -0
  44. package/.agent-src/commands/jira-ticket.md +1 -1
  45. package/.agent-src/commands/{do-and-judge.md → judge/on-diff.md} +7 -6
  46. package/.agent-src/commands/judge/solo.md +90 -0
  47. package/.agent-src/commands/{do-in-steps.md → judge/steps.md} +8 -7
  48. package/.agent-src/commands/judge.md +35 -70
  49. package/.agent-src/commands/{memory-add.md → memory/add.md} +7 -6
  50. package/.agent-src/commands/{memory-full.md → memory/load.md} +6 -5
  51. package/.agent-src/commands/{memory-promote.md → memory/promote.md} +6 -5
  52. package/.agent-src/commands/{propose-memory.md → memory/propose.md} +6 -5
  53. package/.agent-src/commands/memory.md +48 -0
  54. package/.agent-src/commands/mode.md +5 -5
  55. package/.agent-src/commands/{module-create.md → module/create.md} +4 -3
  56. package/.agent-src/commands/{module-explore.md → module/explore.md} +4 -3
  57. package/.agent-src/commands/module.md +44 -0
  58. package/.agent-src/commands/onboard.md +3 -3
  59. package/.agent-src/commands/{optimize-agents.md → optimize/agents.md} +5 -4
  60. package/.agent-src/commands/{optimize-augmentignore.md → optimize/augmentignore.md} +4 -4
  61. package/.agent-src/commands/{optimize-rtk-filters.md → optimize/rtk.md} +4 -3
  62. package/.agent-src/commands/{optimize-skills.md → optimize/skills.md} +5 -4
  63. package/.agent-src/commands/optimize.md +48 -0
  64. package/.agent-src/commands/{override-create.md → override/create.md} +4 -3
  65. package/.agent-src/commands/{override-manage.md → override/manage.md} +4 -3
  66. package/.agent-src/commands/override.md +44 -0
  67. package/.agent-src/commands/review-changes.md +26 -1
  68. package/.agent-src/commands/review-routing.md +1 -1
  69. package/.agent-src/commands/{roadmap-create.md → roadmap/create.md} +33 -5
  70. package/.agent-src/commands/{roadmap-execute.md → roadmap/execute.md} +4 -3
  71. package/.agent-src/commands/roadmap.md +44 -0
  72. package/.agent-src/commands/set-cost-profile.md +3 -3
  73. package/.agent-src/commands/sync-agent-settings.md +2 -2
  74. package/.agent-src/commands/{tests-create.md → tests/create.md} +5 -4
  75. package/.agent-src/commands/{tests-execute.md → tests/execute.md} +4 -3
  76. package/.agent-src/commands/tests.md +44 -0
  77. package/.agent-src/commands/upstream-contribute.md +1 -1
  78. package/.agent-src/contexts/authority/commit-mechanics.md +57 -0
  79. package/.agent-src/contexts/authority/destructive-mechanics.md +66 -0
  80. package/.agent-src/contexts/authority/scope-mechanics.md +87 -0
  81. package/.agent-src/contexts/communication/rules-auto/artifact-engagement-recording-mechanics.md +72 -0
  82. package/.agent-src/contexts/communication/rules-auto/augment-portability-mechanics.md +79 -0
  83. package/.agent-src/contexts/communication/rules-auto/augment-source-of-truth-mechanics.md +98 -0
  84. package/.agent-src/contexts/communication/rules-auto/cli-output-handling-mechanics.md +87 -0
  85. package/.agent-src/contexts/communication/rules-auto/command-suggestion-policy-mechanics.md +62 -0
  86. package/.agent-src/contexts/communication/rules-auto/docs-sync-mechanics.md +78 -0
  87. package/.agent-src/contexts/communication/rules-auto/package-ci-checks-mechanics.md +85 -0
  88. package/.agent-src/contexts/communication/rules-auto/review-routing-awareness-mechanics.md +65 -0
  89. package/.agent-src/contexts/communication/rules-auto/roadmap-progress-sync-mechanics.md +78 -0
  90. package/.agent-src/contexts/communication/rules-auto/skill-quality-mechanics.md +62 -0
  91. package/.agent-src/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md +55 -0
  92. package/.agent-src/contexts/communication/rules-auto/ui-audit-gate-mechanics.md +53 -0
  93. package/.agent-src/contexts/communication/rules-auto/user-interaction-mechanics.md +77 -0
  94. package/.agent-src/contexts/execution/autonomy-detection.md +54 -0
  95. package/.agent-src/contexts/execution/autonomy-examples.md +90 -0
  96. package/.agent-src/contexts/execution/autonomy-mechanics.md +29 -0
  97. package/.agent-src/contexts/execution/verification-mechanics.md +80 -0
  98. package/.agent-src/contexts/judges/no-consolidate-rationale.md +102 -0
  99. package/.agent-src/contexts/judges/persona-voice-rubric.md +140 -0
  100. package/.agent-src/personas/README.md +1 -1
  101. package/.agent-src/rules/agent-authority.md +24 -0
  102. package/.agent-src/rules/architecture.md +1 -1
  103. package/.agent-src/rules/artifact-drafting-protocol.md +1 -1
  104. package/.agent-src/rules/artifact-engagement-recording.md +14 -70
  105. package/.agent-src/rules/ask-when-uncertain.md +28 -43
  106. package/.agent-src/rules/augment-portability.md +15 -61
  107. package/.agent-src/rules/augment-source-of-truth.md +27 -93
  108. package/.agent-src/rules/autonomous-execution.md +78 -114
  109. package/.agent-src/rules/capture-learnings.md +1 -1
  110. package/.agent-src/rules/chat-history-cadence.md +3 -3
  111. package/.agent-src/rules/chat-history-ownership.md +3 -3
  112. package/.agent-src/rules/chat-history-visibility.md +3 -3
  113. package/.agent-src/rules/cli-output-handling.md +10 -76
  114. package/.agent-src/rules/command-suggestion-policy.md +93 -0
  115. package/.agent-src/rules/commit-conventions.md +17 -14
  116. package/.agent-src/rules/commit-policy.md +14 -42
  117. package/.agent-src/rules/context-hygiene.md +3 -3
  118. package/.agent-src/rules/direct-answers.md +34 -49
  119. package/.agent-src/rules/docker-commands.md +5 -5
  120. package/.agent-src/rules/docs-sync.md +16 -70
  121. package/.agent-src/rules/e2e-testing.md +1 -1
  122. package/.agent-src/rules/guidelines.md +4 -4
  123. package/.agent-src/rules/improve-before-implement.md +2 -2
  124. package/.agent-src/rules/language-and-tone.md +50 -133
  125. package/.agent-src/rules/minimal-safe-diff.md +3 -3
  126. package/.agent-src/rules/missing-tool-handling.md +28 -22
  127. package/.agent-src/rules/model-recommendation.md +4 -4
  128. package/.agent-src/rules/no-cheap-questions.md +82 -0
  129. package/.agent-src/rules/no-roadmap-references.md +73 -0
  130. package/.agent-src/rules/non-destructive-by-default.md +15 -49
  131. package/.agent-src/rules/onboarding-gate.md +5 -5
  132. package/.agent-src/rules/package-ci-checks.md +21 -61
  133. package/.agent-src/rules/preservation-guard.md +64 -29
  134. package/.agent-src/rules/review-routing-awareness.md +26 -45
  135. package/.agent-src/rules/roadmap-progress-sync.md +28 -96
  136. package/.agent-src/rules/role-mode-adherence.md +2 -2
  137. package/.agent-src/rules/scope-control.md +65 -46
  138. package/.agent-src/rules/security-sensitive-stop.md +9 -9
  139. package/.agent-src/rules/size-enforcement.md +1 -1
  140. package/.agent-src/rules/skill-quality.md +16 -48
  141. package/.agent-src/rules/{slash-commands.md → slash-command-routing-policy.md} +7 -4
  142. package/.agent-src/rules/think-before-action.md +55 -45
  143. package/.agent-src/rules/token-efficiency.md +4 -4
  144. package/.agent-src/rules/tool-safety.md +19 -16
  145. package/.agent-src/rules/{ui-audit-before-build.md → ui-audit-gate.md} +27 -41
  146. package/.agent-src/rules/user-interaction.md +16 -71
  147. package/.agent-src/rules/verify-before-complete.md +12 -67
  148. package/.agent-src/scripts/update_roadmap_progress.py +9 -4
  149. package/.agent-src/skills/ai-council/SKILL.md +335 -0
  150. package/.agent-src/skills/api-endpoint/SKILL.md +2 -2
  151. package/.agent-src/skills/api-testing/SKILL.md +1 -1
  152. package/.agent-src/skills/blade-ui/SKILL.md +1 -1
  153. package/.agent-src/skills/blast-radius-analyzer/SKILL.md +1 -1
  154. package/.agent-src/skills/bug-analyzer/SKILL.md +1 -1
  155. package/.agent-src/skills/check-refs/SKILL.md +59 -40
  156. package/.agent-src/skills/command-routing/SKILL.md +1 -1
  157. package/.agent-src/skills/command-writing/SKILL.md +1 -1
  158. package/.agent-src/skills/conventional-commits-writing/SKILL.md +86 -28
  159. package/.agent-src/skills/copilot-agents-optimization/SKILL.md +7 -7
  160. package/.agent-src/skills/developer-like-execution/SKILL.md +6 -6
  161. package/.agent-src/skills/finishing-a-development-branch/SKILL.md +101 -65
  162. package/.agent-src/skills/flux/SKILL.md +31 -11
  163. package/.agent-src/skills/git-workflow/SKILL.md +1 -1
  164. package/.agent-src/skills/github-ci/SKILL.md +2 -2
  165. package/.agent-src/skills/guideline-writing/SKILL.md +11 -11
  166. package/.agent-src/skills/judge-code-quality/SKILL.md +7 -8
  167. package/.agent-src/skills/judge-security-auditor/SKILL.md +4 -5
  168. package/.agent-src/skills/judge-test-coverage/SKILL.md +3 -4
  169. package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +4 -4
  170. package/.agent-src/skills/lint-skills/SKILL.md +57 -39
  171. package/.agent-src/skills/livewire/SKILL.md +1 -1
  172. package/.agent-src/skills/md-language-check/SKILL.md +61 -39
  173. package/.agent-src/skills/override-management/SKILL.md +7 -7
  174. package/.agent-src/skills/php-coder/SKILL.md +1 -1
  175. package/.agent-src/skills/playwright-testing/SKILL.md +2 -2
  176. package/.agent-src/skills/quality-tools/SKILL.md +2 -2
  177. package/.agent-src/skills/react-shadcn-ui/SKILL.md +116 -43
  178. package/.agent-src/skills/readme-reviewer/SKILL.md +31 -30
  179. package/.agent-src/skills/readme-writing/SKILL.md +79 -54
  180. package/.agent-src/skills/readme-writing-package/SKILL.md +51 -48
  181. package/.agent-src/skills/receiving-code-review/SKILL.md +53 -48
  182. package/.agent-src/skills/refine-prompt/SKILL.md +0 -1
  183. package/.agent-src/skills/requesting-code-review/SKILL.md +35 -30
  184. package/.agent-src/skills/review-routing/SKILL.md +2 -2
  185. package/.agent-src/skills/rule-writing/SKILL.md +1 -1
  186. package/.agent-src/skills/security/SKILL.md +7 -2
  187. package/.agent-src/skills/security-audit/SKILL.md +7 -3
  188. package/.agent-src/skills/skill-reviewer/SKILL.md +1 -1
  189. package/.agent-src/skills/skill-writing/SKILL.md +3 -3
  190. package/.agent-src/skills/subagent-orchestration/SKILL.md +1 -0
  191. package/.agent-src/skills/systematic-debugging/SKILL.md +69 -61
  192. package/.agent-src/skills/test-driven-development/SKILL.md +59 -57
  193. package/.agent-src/skills/test-performance/SKILL.md +0 -1
  194. package/.agent-src/skills/traefik/SKILL.md +4 -4
  195. package/.agent-src/skills/upstream-contribute/SKILL.md +1 -1
  196. package/.agent-src/skills/validate-feature-fit/SKILL.md +2 -2
  197. package/.agent-src/skills/{verify-before-complete → verify-completion-evidence}/SKILL.md +30 -28
  198. package/.agent-src/templates/agent-settings.md +8 -8
  199. package/.agent-src/templates/contexts/auth-model.md +1 -1
  200. package/.agent-src/templates/scripts/README.md +2 -2
  201. package/.agent-src/templates/scripts/telemetry/aggregator.py +16 -1
  202. package/.agent-src/templates/scripts/telemetry/engagement.py +59 -0
  203. package/.agent-src/templates/scripts/telemetry/report_renderer.py +28 -1
  204. package/.agent-src/templates/scripts/telemetry_record.py +14 -1
  205. package/.claude-plugin/marketplace.json +31 -12
  206. package/AGENTS.md +11 -9
  207. package/CHANGELOG.md +213 -2
  208. package/README.md +43 -44
  209. package/config/agent-settings.template.yml +58 -1
  210. package/config/gitignore-block.txt +3 -0
  211. package/docs/architecture.md +5 -7
  212. package/docs/catalog.md +359 -0
  213. package/docs/contracts/STABILITY.md +46 -1
  214. package/docs/contracts/adr-chat-history-split.md +1 -3
  215. package/docs/contracts/adr-command-suggestion.md +3 -5
  216. package/docs/contracts/adr-implement-ticket-runtime.md +1 -2
  217. package/docs/contracts/adr-product-ui-track.md +5 -8
  218. package/docs/contracts/adr-prompt-driven-execution.md +3 -4
  219. package/docs/contracts/agent-memory-contract.md +8 -13
  220. package/docs/contracts/artifact-engagement-flow.md +7 -10
  221. package/docs/contracts/command-clusters.md +56 -46
  222. package/docs/contracts/command-suggestion-flow.md +4 -6
  223. package/docs/contracts/context-paths.md +99 -0
  224. package/docs/contracts/file-ownership-matrix.json +6722 -0
  225. package/docs/contracts/file-ownership-matrix.md +134 -0
  226. package/docs/contracts/implement-ticket-flow.md +8 -11
  227. package/docs/contracts/linear-ai-rules-inclusion.md +1 -2
  228. package/docs/contracts/linear-ai-three-layers.md +0 -2
  229. package/docs/contracts/load-context-budget-model.md +178 -0
  230. package/docs/contracts/load-context-schema.md +184 -0
  231. package/docs/contracts/rule-interactions.md +0 -1
  232. package/docs/contracts/rule-interactions.yml +96 -0
  233. package/docs/contracts/rule-priority-hierarchy.md +87 -0
  234. package/docs/contracts/ui-track-flow.md +8 -18
  235. package/docs/customization.md +16 -0
  236. package/docs/end-to-end-walkthroughs.md +165 -0
  237. package/docs/getting-started.md +29 -10
  238. package/docs/github-topics.md +12 -3
  239. package/docs/guidelines/agent-infra/asking-and-brevity-examples.md +100 -0
  240. package/docs/guidelines/agent-infra/language-and-tone-examples.md +79 -0
  241. package/{.agent-src → docs}/guidelines/docs/readme-size-and-splitting.md +26 -25
  242. package/docs/guidelines/php/git.md +164 -0
  243. package/docs/migrations/commands-1.15.0.md +1 -1
  244. package/docs/showcase.md +9 -4
  245. package/docs/skills-catalog.md +14 -8
  246. package/docs/ui-track-mental-model.md +2 -2
  247. package/llms.txt +13 -7
  248. package/package.json +1 -1
  249. package/scripts/_one_off_phase4_dispatch_latency.py +108 -0
  250. package/scripts/_one_off_phase6_trigger_jaccard.py +92 -0
  251. package/scripts/_phase2_shim_helper.py +109 -0
  252. package/scripts/agent-config +33 -0
  253. package/scripts/ai_council/__init__.py +39 -0
  254. package/scripts/ai_council/_default_prices.py +41 -0
  255. package/scripts/ai_council/_one_off_2a4_acceptance.py +208 -0
  256. package/scripts/ai_council/_one_off_context_layer_v1_estimate.py +67 -0
  257. package/scripts/ai_council/_one_off_context_layer_v1_review.py +292 -0
  258. package/scripts/ai_council/_one_off_followups_review.py +259 -0
  259. package/scripts/ai_council/_one_off_nondestructive_inline_audit.py +209 -0
  260. package/scripts/ai_council/_one_off_phase_2a_budget_rebalance.py +257 -0
  261. package/scripts/ai_council/_one_off_phase_2a_post_revert.py +197 -0
  262. package/scripts/ai_council/_one_off_rebalancing_audit.py +149 -0
  263. package/scripts/ai_council/_one_off_roundtrip.py +106 -0
  264. package/scripts/ai_council/_one_off_rule_hardening_v1.py +251 -0
  265. package/scripts/ai_council/_one_off_structural_open_questions.py +232 -0
  266. package/scripts/ai_council/_one_off_structural_optimization.py +144 -0
  267. package/scripts/ai_council/_one_off_structural_v3_gaps.py +252 -0
  268. package/scripts/ai_council/_one_off_structural_v3_review.py +240 -0
  269. package/scripts/ai_council/budget_guard.py +172 -0
  270. package/scripts/ai_council/bundler.py +261 -0
  271. package/scripts/ai_council/clients.py +381 -0
  272. package/scripts/ai_council/modes.py +127 -0
  273. package/scripts/ai_council/orchestrator.py +350 -0
  274. package/scripts/ai_council/pricing.py +213 -0
  275. package/scripts/ai_council/project_context.py +159 -0
  276. package/scripts/ai_council/prompts.py +232 -0
  277. package/scripts/ai_council/session.py +144 -0
  278. package/scripts/check_always_budget.py +444 -0
  279. package/scripts/check_augmentignore.py +69 -0
  280. package/scripts/check_cluster_patterns.py +159 -0
  281. package/scripts/check_command_count_messaging.py +127 -0
  282. package/scripts/check_context_paths.py +201 -0
  283. package/scripts/check_no_roadmap_refs.py +155 -0
  284. package/scripts/check_phase_coupling.py +148 -0
  285. package/scripts/check_portability.py +57 -0
  286. package/scripts/check_public_catalog_links.py +122 -0
  287. package/scripts/check_references.py +33 -3
  288. package/scripts/check_roadmap_trackable.py +111 -0
  289. package/scripts/check_safety_floor_untouched.py +125 -0
  290. package/scripts/command_suggester/cooldown.py +1 -1
  291. package/scripts/command_suggester/loader.py +4 -1
  292. package/scripts/compress.py +59 -13
  293. package/scripts/generate_index.py +270 -0
  294. package/scripts/generate_ownership_matrix.py +323 -0
  295. package/scripts/hooks/augment-roadmap-progress.sh +57 -0
  296. package/scripts/install.py +49 -28
  297. package/scripts/install_anthropic_key.sh +5 -0
  298. package/scripts/install_openai_key.sh +106 -0
  299. package/scripts/lint_load_context.py +163 -0
  300. package/scripts/lint_no_new_atomic_commands.py +12 -11
  301. package/scripts/requirements-evals.txt +1 -0
  302. package/scripts/roadmap_progress_hook.py +159 -0
  303. package/scripts/schemas/command.schema.json +22 -1
  304. package/scripts/schemas/rule.schema.json +10 -0
  305. package/scripts/skill_linter.py +13 -4
  306. package/scripts/sync_agent_settings.py +26 -3
  307. package/scripts/update_counts.py +16 -4
  308. package/scripts/update_prices.py +124 -0
  309. package/.agent-src/guidelines/php/git.md +0 -96
  310. package/.agent-src/rules/command-suggestion.md +0 -134
  311. /package/{.agent-src → docs}/guidelines/agent-infra/agent-interaction-and-decision-quality.md +0 -0
  312. /package/{.agent-src → docs}/guidelines/agent-infra/break-glass-usage.md +0 -0
  313. /package/{.agent-src → docs}/guidelines/agent-infra/developer-judgment.md +0 -0
  314. /package/{.agent-src → docs}/guidelines/agent-infra/engineering-memory-data-format.md +0 -0
  315. /package/{.agent-src → docs}/guidelines/agent-infra/layered-settings.md +0 -0
  316. /package/{.agent-src → docs}/guidelines/agent-infra/memory-access.md +0 -0
  317. /package/{.agent-src → docs}/guidelines/agent-infra/naming.md +0 -0
  318. /package/{.agent-src → docs}/guidelines/agent-infra/output-patterns.md +0 -0
  319. /package/{.agent-src → docs}/guidelines/agent-infra/review-routing-data-format.md +0 -0
  320. /package/{.agent-src → docs}/guidelines/agent-infra/role-contracts.md +0 -0
  321. /package/{.agent-src → docs}/guidelines/agent-infra/role-mode-router.md +0 -0
  322. /package/{.agent-src → docs}/guidelines/agent-infra/runtime-layer.md +0 -0
  323. /package/{.agent-src → docs}/guidelines/agent-infra/self-improvement-pipeline.md +0 -0
  324. /package/{.agent-src → docs}/guidelines/agent-infra/size-and-scope.md +0 -0
  325. /package/{.agent-src → docs}/guidelines/agent-infra/tool-integration.md +0 -0
  326. /package/{.agent-src → docs}/guidelines/e2e/playwright.md +0 -0
  327. /package/{.agent-src → docs}/guidelines/php/api-design.md +0 -0
  328. /package/{.agent-src → docs}/guidelines/php/artisan-commands.md +0 -0
  329. /package/{.agent-src → docs}/guidelines/php/blade-ui.md +0 -0
  330. /package/{.agent-src → docs}/guidelines/php/controllers.md +0 -0
  331. /package/{.agent-src → docs}/guidelines/php/database.md +0 -0
  332. /package/{.agent-src → docs}/guidelines/php/eloquent.md +0 -0
  333. /package/{.agent-src → docs}/guidelines/php/flux.md +0 -0
  334. /package/{.agent-src → docs}/guidelines/php/general.md +0 -0
  335. /package/{.agent-src → docs}/guidelines/php/jobs.md +0 -0
  336. /package/{.agent-src → docs}/guidelines/php/livewire.md +0 -0
  337. /package/{.agent-src → docs}/guidelines/php/logging.md +0 -0
  338. /package/{.agent-src → docs}/guidelines/php/naming.md +0 -0
  339. /package/{.agent-src → docs}/guidelines/php/patterns/dependency-injection.md +0 -0
  340. /package/{.agent-src → docs}/guidelines/php/patterns/dtos.md +0 -0
  341. /package/{.agent-src → docs}/guidelines/php/patterns/events.md +0 -0
  342. /package/{.agent-src → docs}/guidelines/php/patterns/factory.md +0 -0
  343. /package/{.agent-src → docs}/guidelines/php/patterns/pipelines.md +0 -0
  344. /package/{.agent-src → docs}/guidelines/php/patterns/policies.md +0 -0
  345. /package/{.agent-src → docs}/guidelines/php/patterns/repositories.md +0 -0
  346. /package/{.agent-src → docs}/guidelines/php/patterns/service-layer.md +0 -0
  347. /package/{.agent-src → docs}/guidelines/php/patterns/strategy.md +0 -0
  348. /package/{.agent-src → docs}/guidelines/php/patterns.md +0 -0
  349. /package/{.agent-src → docs}/guidelines/php/performance.md +0 -0
  350. /package/{.agent-src → docs}/guidelines/php/resources.md +0 -0
  351. /package/{.agent-src → docs}/guidelines/php/security.md +0 -0
  352. /package/{.agent-src → docs}/guidelines/php/sql.md +0 -0
  353. /package/{.agent-src → docs}/guidelines/php/validations.md +0 -0
  354. /package/{.agent-src → docs}/guidelines/php/websocket.md +0 -0
@@ -2,19 +2,22 @@
2
2
  type: "auto"
3
3
  description: "Creating, editing, or modifying files inside .agent-src/ or .augment/ — the source of truth is .agent-src.uncompressed/, never edit the generated directories directly"
4
4
  source: package
5
+ load_context:
6
+ - .agent-src.uncompressed/contexts/communication/rules-auto/augment-source-of-truth-mechanics.md
5
7
  ---
6
8
 
7
9
  # Source of Truth
8
10
 
9
- `.agent-src.uncompressed/` is the **single source of truth**. Compressed output
10
- ships as `.agent-src/`. In the package repo, `.augment/` is a local projection
11
- of `.agent-src/` for Augment Code (rules copied, rest symlinked). Consumer
12
- projects still see `.augment/` as the installed runtime tree.
11
+ `.agent-src.uncompressed/` is the **single source of truth**. The compressed
12
+ output ships as `.agent-src/`. In the package repo, `.augment/` is a local
13
+ projection of `.agent-src/` for Augment Code (rules copied, rest symlinked).
14
+ Consumer projects still see `.augment/` as the installed runtime tree.
13
15
 
14
- Never edit any generated layer directly:
16
+ Never edit any of these generated layers directly:
15
17
 
16
18
  - `.agent-src/` — compressed output shipped in the package
17
- - `.augment/` — local projection (gitignored in package; installer output in consumers)
19
+ - `.augment/` — local projection (gitignored in the package repo; installer
20
+ output in consumer projects)
18
21
  - `.claude/`, `.cursor/`, `.clinerules/`, `.windsurfrules` — tool projections
19
22
 
20
23
  ## The Iron Rule
@@ -24,73 +27,20 @@ NEVER create or edit files in .agent-src/ or .augment/ directly — not even "ju
24
27
  ALWAYS work in .agent-src.uncompressed/ — then compress via /compress command.
25
28
  ```
26
29
 
27
- **ZERO exceptions.** Even if the fix is obvious, small, or "faster" — STOP.
28
- Edit `.agent-src.uncompressed/` first. Always.
30
+ **There are ZERO exceptions to this rule.** Even if:
29
31
 
30
- Direct edits to `.agent-src/` break compression hashes, cause CI failures, and create drift.
32
+ - You "know" the compressed content is correct
33
+ - It's "just adding a missing section"
34
+ - It's "faster to edit the compressed file directly"
35
+ - The fix is "trivially obvious"
31
36
 
32
- **Compression ONLY via `/compress` command.** Handles hashing, sync, and quality checks.
37
+ **STOP. Edit `.agent-src.uncompressed/` first. Always.**
33
38
 
34
- ## Workflow
39
+ Direct edits to `.agent-src/` break compression hashes, cause CI failures
40
+ ("Verify compression hashes" step), and create drift between source and output.
35
41
 
36
- 1. **Create or edit** the file in `.agent-src.uncompressed/{path}`
37
- 2. **Do NOT auto-compress.** Continue working.
38
- 3. **Before commit/push:** Check if compression is needed (`bash scripts/compress.sh --changed`).
39
- If files need compression, ask the user:
40
- ```
41
- > 📦 {N} .agent-src files need compression before commit.
42
- >
43
- > 1. Compress now — run /compress
44
- > 2. Later — commit without compression
45
- ```
46
- 4. If compressing: run `/compress` command, then `bash scripts/compress.sh --mark-done {path}`
47
-
48
- For new non-.md files (`.php`, configs): `bash scripts/compress.sh --sync` copies them automatically.
49
-
50
- **Key change:** Compression happens once before commit/push — not after every edit.
51
- This avoids interruptions when work is still in progress.
52
-
53
- ## What "compress" means
54
-
55
- - Remove articles (a, an, the), filler, hedging, connective fluff
56
- - Shorten phrases: "in order to" → "to", "make sure to" → "ensure"
57
- - Fragments OK: "Run tests before commit" not "You should always run tests before committing"
58
- - Merge redundant bullets
59
-
60
- ## What NEVER changes during compression
61
-
62
- - Code blocks, inline code, URLs, file paths, commands
63
- - Headings (exact text preserved)
64
- - Tables (structure preserved, compress cell text only)
65
- - YAML frontmatter
66
- - Technical terms, library names, API names
67
- - Strong language: "NEVER", "MUST", "Do NOT" — these are load-bearing
68
-
69
- ## Commands workflow
70
-
71
- Commands live in `.agent-src.uncompressed/commands/{name}.md` (single source of truth).
72
- Claude Code reads them via symlinks in `.claude/skills/{name}/SKILL.md`.
73
-
74
- **Required frontmatter for commands:**
75
-
76
- ```yaml
77
- name: {command-name}
78
- description: {what it does}
79
- disable-model-invocation: true
80
- ```
81
-
82
- - `name` and `disable-model-invocation: true` are required for Claude Code compatibility
83
- - Augment ignores unknown frontmatter fields — no conflict
84
- - Template: `.agent-src.uncompressed/templates/command.md`
85
-
86
- **Creating a new command:**
87
-
88
- 1. Create `.agent-src.uncompressed/commands/{name}.md` (use template)
89
- 2. Run `python3 scripts/skill_linter.py` — must be 0 FAIL
90
- 3. Compress via `/compress`, which writes to `.agent-src/commands/`
91
- 4. Run `python3 scripts/compress.py --generate-tools` — creates Claude symlink automatically
92
-
93
- **Never** create `.claude/skills/{name}/SKILL.md` manually for commands — always use the symlink workflow.
42
+ **Compression is ONLY done via the `/compress` command.** The command handles
43
+ hashing, sync verification, and quality checks automatically.
94
44
 
95
45
  ## Pre-review consistency checkpoints
96
46
 
@@ -101,28 +51,12 @@ Before asking for review or creating a PR, verify derived outputs are not stale:
101
51
  3. Before merge: verify derived outputs (`.agent-src/`, `.augment/`, `.claude/skills/`) are regenerated
102
52
  4. Do NOT leave `.agent-src/` stale across review cycles
103
53
 
104
- ## Multi-agent symlink mapping
105
-
106
- `.claude/skills/` contains symlinks to **both** `.agent-src/skills/` and `.agent-src/commands/`.
107
- Claude Code treats both as "skills" — but they are different artifact types in our taxonomy.
108
-
109
- | `.claude/skills/{name}/SKILL.md` points to... | Actual type |
110
- |---|---|
111
- | `.agent-src/skills/{name}/SKILL.md` | **Skill** (workflow) |
112
- | `.agent-src/commands/{name}.md` | **Command** (slash-invoked procedure) |
113
-
114
- Always check the symlink target to determine the actual artifact type.
115
- Commands have `disable-model-invocation: true` in their frontmatter.
116
-
117
- ## Quick reference
54
+ ## Mechanics workflow, compression rules, commands, symlinks, quick reference
118
55
 
119
- | Task | What to do |
120
- |---|---|
121
- | Edit existing file | Edit in `.agent-src.uncompressed/`, compress to `.agent-src/` |
122
- | Create new `.md` | Create in `.agent-src.uncompressed/`, compress to `.agent-src/` |
123
- | Create new non-`.md` | Create in `.agent-src.uncompressed/`, run `bash scripts/compress.sh --sync` |
124
- | Create new command | Create in `.agent-src.uncompressed/commands/`, sync, `python3 scripts/compress.py --generate-tools` |
125
- | Delete a file | Delete from `.agent-src.uncompressed/` and `.agent-src/` |
126
- | Check what needs compression | `bash scripts/compress.sh --changed` |
127
- | Mark file as compressed | `bash scripts/compress.sh --mark-done {path}` |
128
- | Verify everything is in sync | `bash scripts/compress.sh --check` |
56
+ The authoring workflow, what compression does (and never touches), the
57
+ commands workflow with required frontmatter, the multi-agent symlink
58
+ mapping, and the per-task quick-reference table live in
59
+ [`contexts/communication/rules-auto/augment-source-of-truth-mechanics.md`](../contexts/communication/rules-auto/augment-source-of-truth-mechanics.md).
60
+ Pull it whenever an edit, new file, new command, or sync question
61
+ fires the rule above is the obligation surface; the mechanics file
62
+ is the lookup material.
@@ -1,158 +1,122 @@
1
1
  ---
2
- type: "always"
3
- description: "Suppress trivial workflow questions and act on the obvious next step; defers to non-destructive-by-default for the safety floor; never commit and never ask about committing except via /commit-in-chunks or explicit user instruction"
4
- alwaysApply: true
2
+ type: "auto"
3
+ description: "Deciding whether to ask the user or just act on a workflow step trivial-vs-blocking classification, autonomy opt-in detection, commit default; defers to non-destructive-by-default for the Hard Floor"
4
+ alwaysApply: false
5
5
  source: package
6
+ load_context:
7
+ - .agent-src.uncompressed/contexts/execution/autonomy-detection.md
8
+ - .agent-src.uncompressed/contexts/execution/autonomy-mechanics.md
9
+ - .agent-src.uncompressed/contexts/execution/autonomy-examples.md
6
10
  ---
7
11
 
8
12
  # Autonomous Execution
9
13
 
10
14
  User's time is the scarce resource. Trivial workflow questions are
11
- noise. Defines **trivial** (just act), **blocking** (still ask), the
12
- **hard floor** (always ask, no override), and the **commit default**
13
- (never commit, never ask — review-first by design).
15
+ noise. This rule defines **trivial** (just act), **blocking** (still
16
+ ask), the **hard floor** (always ask, no override), and the **commit
17
+ default** (never commit, never ask — review-first by design).
14
18
 
15
19
  ## Hard Floor — see [`non-destructive-by-default`](non-destructive-by-default.md)
16
20
 
17
- Universal safety floor (production-branch merges, deploys, pushes,
21
+ The universal safety floor (production-branch merges, deploys, pushes,
18
22
  prod data/infra, whimsical bulk deletions, and commits containing
19
23
  bulk deletions or infra changes) is governed by the canonical
20
24
  [`non-destructive-by-default`](non-destructive-by-default.md) rule.
21
-
22
- Applies regardless of `personal.autonomy`, a standing autonomy
23
- directive (anchor list in [Opt-in detection](#opt-in-detection--match-by-intent-not-exact-string)),
24
- or any roadmap authorization. Nothing in **this** rule lifts it. If a
25
- trigger from that rule fires, stop and ask — every section below
26
- assumes the floor has cleared.
25
+ It applies regardless of `personal.autonomy`, a standing autonomy
26
+ directive, or any roadmap authorization. Nothing in **this** rule
27
+ lifts it. If a trigger fires, stop and ask — every other section
28
+ below assumes the floor has already been cleared.
27
29
 
28
30
  ## Setting — `personal.autonomy`
29
31
 
30
- | Value | Behavior |
31
- |---|---|
32
- | `on` | Suppress trivial questions. Act on obvious next step. Still ask on blocking decisions; ALWAYS ask on Hard-Floor triggers. |
33
- | `off` | Ask trivial questions too. Use to check in on each workflow step. |
34
- | `auto` (default) | Like `off` until user expresses "stop asking, just work" — then `on` for the rest of the chat. See **Opt-in detection** below; match by **intent**, not exact string. The flip never lifts the Hard Floor. |
35
-
36
- Read once on first turn (per [`layered-settings`](../guidelines/agent-infra/layered-settings.md#section-aware-merge-rules))
37
- and cache. Missing key → treat as `on`.
32
+ Three values: `on` (suppress trivial questions), `off` (ask trivial
33
+ questions too), `auto` (default — same as `off` until the user opts
34
+ in via a standing autonomy directive). Read once on the first turn
35
+ (per [`layered-settings`](../../docs/guidelines/agent-infra/layered-settings.md#section-aware-merge-rules))
36
+ and cache. Missing key treat as `on`. Full table, semantics, and
37
+ cloud behavior:
38
+ [`contexts/execution/autonomy-mechanics.md`](../contexts/execution/autonomy-mechanics.md).
38
39
 
39
40
  ## Opt-in detection — match by intent, not exact string
40
41
 
41
- In `auto`, flip to `on` for the rest of the chat when the user expresses
42
- **"stop asking on trivial steps, just work"**. Recognize the **intent**,
43
- not the literal substring semantic equivalent in either language.
44
-
45
- Anchor examples (illustrative, not exhaustive):
46
-
47
- - DE: "arbeite selbstständig" · "frag nicht jedes Mal" · "tue es einfach"
48
- - EN: "work autonomously" · "don't ask" · "just do it"
49
-
50
- Litmus test: standing permission to skip trivial questions? → flip.
51
- Single-decision delegation ("you decide for this step") → handle that
52
- step, do **not** flip standing mode.
53
-
54
- ### Speech-act check — meta-instruction, not content
55
-
56
- Before flipping, verify the phrase is **addressed to the agent as
57
- guidance about how to work**, not a literal substring inside another
58
- instruction. Do **not** flip when the phrase is:
59
-
60
- - **Content / copy** — "Put the slogan 'just do it' on the landing page."
61
- - **Quote / reference** — "Nike's tagline is 'just do it' — write a blog post."
62
- - **Subject of a request** — "Write docs about the 'work autonomously' modes."
63
- - **Code / data** — string literals, fixtures, translations, JSON.
64
- - **About a third party** — "My colleague works autonomously."
65
- - **Question / hypothetical** — "Should I set `don't ask` as the default?"
66
-
67
- Heuristic: strip quotes, code blocks, embedded content. Read what's
68
- **left**. Still a directive to the agent about its working style →
69
- flip. Otherwise → don't.
70
-
71
- Opt-out (reversed intent) flips back to `off`:
42
+ In `auto` mode, flip to `on` for the rest of the conversation when
43
+ the user expresses **"stop asking on trivial steps, just work"**.
44
+ Recognize **intent**, not the literal substring. Opt-out (same intent,
45
+ reversed) flips back to `off`. Both directions are
46
+ **speech-act-checked**: the phrase must be a meta-instruction to the
47
+ agent, not content / quote / subject / code / third-party reference /
48
+ hypothetical. In doubt keep current mode, no speculative flips.
72
49
 
73
- - DE: "frag mich wieder" · "frag mich erst" · "stop autonomous mode"
74
- - EN: "ask me first" · "ask me again" · "stop being autonomous"
75
-
76
- Same speech-act check applies.
77
-
78
- Counter-examples — do **not** flip on meta-questions, self-descriptions,
79
- or one-shot delegations: "why don't you ask that yourself?", "I'm
80
- working autonomously right now", "can you decide that yourself?".
81
-
82
- In doubt → keep current mode, no speculative flips.
50
+ Algorithm and speech-act heuristic:
51
+ [`contexts/execution/autonomy-detection.md`](../contexts/execution/autonomy-detection.md).
52
+ Anchor phrases (DE+EN), no-flip patterns, counter-examples:
53
+ [`contexts/execution/autonomy-examples.md`](../contexts/execution/autonomy-examples.md).
83
54
 
84
55
  ## Trivial — JUST ACT, do not ask
85
56
 
86
- Examples (matches `personal.autonomy: on` or `auto`-after-opt-in):
87
-
88
- - "Step 2 or Step 3?" — pick the obvious next roadmap step; if blocked, name the blocker, otherwise go.
89
- - "Commit now or after the next change?" — answered by the commit-default below.
90
- - "How should I split the commits?" — never asked; either `/commit-in-chunks` was invoked (split + commit) or it wasn't (don't commit).
91
- - "Run linter / tests now or later?" — `verify-before-complete` decides; act.
92
- - "Found 3 follow-ups — fix all or stop?" — if within scope and minimal-safe-diff allows, fix; if scope expands, stop and surface as list.
93
- - "Filename `X.md` or `Y.md`?" when one matches convention — pick convention-matching one.
94
- - "Verification table or paragraph?" — pick whichever fits; format isn't a decision worth a turn.
95
- - "Show me a diff before regenerating output from a tracked source?"
96
- — compression, code-gen, formatter passes, lock-file rebuilds — run
97
- it and report the result. Reversibility comes from the source, not
98
- from per-file confirmation. See [`non-destructive-by-default`](non-destructive-by-default.md#not-in-scope--deterministic-regeneration)
99
- § Not in scope.
100
-
101
- `personal.autonomy: off`: ask these. `on` or `auto`-after-opt-in: act.
57
+ In `personal.autonomy: on` or `auto`-after-opt-in, do not ask
58
+ trivial workflow questions — pick the obvious next step and proceed.
59
+ In `personal.autonomy: off`, ask them. Worked cases:
60
+ [`contexts/execution/autonomy-examples.md`](../contexts/execution/autonomy-examples.md).
102
61
 
103
62
  ## Blocking — STILL ASK regardless of `personal.autonomy`
104
63
 
105
- Beyond the Hard Floor, the autonomy setting also never overrides:
64
+ Beyond the Hard Floor above, the autonomy setting also never
65
+ overrides:
106
66
 
107
- - **Vague-request triggers** in [`ask-when-uncertain`](ask-when-uncertain.md) — ambiguous stays ambiguous; pick-one-and-pray is wrong.
108
- - **Architectural / structural choices** the codebase hasn't settled (multi-stack picks, library introductions).
67
+ - **Vague-request triggers** in [`ask-when-uncertain`](ask-when-uncertain.md)
68
+ ambiguous requirements stay ambiguous; pick-one-and-pray is wrong.
69
+ - **Architectural / structural choices** that the codebase doesn't
70
+ already settle (multi-stack picks, library introductions).
109
71
  - **Security-sensitive paths** — see [`security-sensitive-stop`](security-sensitive-stop.md).
110
- - **Scope expansion** beyond stated task — see [`scope-control`](scope-control.md).
111
- - **Remote-state ops** — push, merge, rebase, force-push, branch create/delete/switch, PR create/close/retarget, tag/release. Permission-gated by [`scope-control`](scope-control.md); the prod-trunk and deploy-tied subset is governed by [`non-destructive-by-default`](non-destructive-by-default.md).
112
- - **Destructive ops** — see [`non-destructive-by-default`](non-destructive-by-default.md) for the full taxonomy (whimsical bulk deletions, content destruction, commits containing bulk deletions or infra changes).
113
-
114
- In doubt blocking. Ask.
72
+ - **Scope expansion** beyond the stated task — see [`scope-control`](scope-control.md).
73
+ - **Remote-state operations** — push, merge, rebase, force-push,
74
+ branch create/delete/switch, PR create/close/retarget, tag/release.
75
+ Permission-gated by [`scope-control`](scope-control.md); the
76
+ prod-trunk and deploy-tied subset is governed by
77
+ [`non-destructive-by-default`](non-destructive-by-default.md).
78
+ - **Destructive ops** — see [`non-destructive-by-default`](non-destructive-by-default.md)
79
+ for the full taxonomy (whimsical bulk deletions, content
80
+ destruction, commits containing bulk deletions or infra changes).
81
+
82
+ When in doubt whether something is trivial or blocking → it is
83
+ blocking. Ask.
115
84
 
116
85
  ## Commit policy — see [`commit-policy`](commit-policy.md)
117
86
 
118
- Committing is governed by [`commit-policy`](commit-policy.md), which
119
- applies regardless of `personal.autonomy`. Summary:
87
+ Committing is governed by the canonical [`commit-policy`](commit-policy.md)
88
+ rule, which applies regardless of `personal.autonomy`. Summary:
120
89
 
121
90
  - NEVER commit unless user said so this turn, a commit command was
122
91
  invoked, a standing instruction is active, or the roadmap authorizes it.
123
- - NEVER ask about committing.
124
- - In autonomous mode, the **only** permitted commit-related question
125
- is the one-shot pre-scan ask at the start of roadmap execution.
92
+ - NEVER ask about committing. The user invokes a command or says so.
93
+ - In autonomous mode, the **only** permitted commit-related question is
94
+ the one-shot pre-scan ask at the start of roadmap execution.
126
95
 
127
- Push, merge, rebase, branch creation, PR ops, tags remain
128
- permission-gated per [`scope-control`](scope-control.md#git-operations--permission-gated).
96
+ Push, merge, rebase, branch creation, PR operations, and tags remain
97
+ permission-gated by [`scope-control`](scope-control.md#git-operations--permission-gated).
129
98
 
130
99
  ## Failure modes
131
100
 
132
- - Asking "Step 2 or Step 3?" when the roadmap orders them.
133
- - "Should I run the CI checks?" — `verify-before-complete` decides; act.
134
- - "Do we want to commit this?" — no, by default. Don't ask.
135
- - Numbered-options block whose only difference is sequencing ("A then B" vs "B then A") with no real trade-off.
136
- - Asking after user already issued a standing autonomy directive earlier (cache the opt-in for `auto`).
137
-
138
- For Hard-Floor failure modes (treating autonomy as cover for a
139
- floor-crossing action, reading a roadmap step as deploy authorization,
140
- refusing task-aligned WIP deletions, committing bulk-deletion / infra
141
- diffs without surfacing them) see
101
+ Autonomy-side wrong-behavior patterns (sequencing-only asks, CI-run
102
+ asks, commit asks, no-trade-off option blocks, re-asking after a
103
+ standing opt-in):
104
+ [`contexts/execution/autonomy-examples.md`](../contexts/execution/autonomy-examples.md).
105
+ For Hard-Floor failure modes see
142
106
  [`non-destructive-by-default`](non-destructive-by-default.md#failure-modes).
143
107
 
144
- ## Cloud Behavior
145
-
146
- Settings reads degrade gracefully on cloud platforms (no
147
- `.agent-settings.yml`). Treat as `personal.autonomy: on` — user had to
148
- deliberately ship a custom skill bundle and is unlikely to want
149
- trivial-question friction.
150
-
151
108
  ## See also
152
109
 
153
- - [`non-destructive-by-default`](non-destructive-by-default.md) — universal safety floor; never overridden by autonomy
154
- - [`scope-control`](scope-control.md) git-ops permission gate (push/merge/branch/PR/tag stays explicit)
155
- - [`ask-when-uncertain`](ask-when-uncertain.md) — vague-request triggers that always require asking
156
- - [`direct-answers`](direct-answers.md) Iron Laws on brevity and no-flattery (this rule extends to no-trivial-questions)
110
+ - [`non-destructive-by-default`](non-destructive-by-default.md) —
111
+ universal safety floor; never overridden by autonomy
112
+ - [`scope-control`](scope-control.md) — git-ops permission gate
113
+ (push/merge/branch/PR/tag stays explicit)
114
+ - [`ask-when-uncertain`](ask-when-uncertain.md) — vague-request
115
+ triggers that always require asking
116
+ - [`no-cheap-questions`](no-cheap-questions.md) — mode-independent
117
+ floor against context-derived, sequencing-only, and
118
+ Iron-Law-violating asks (applies in `off` and pre-opt-in `auto` too)
119
+ - [`direct-answers`](direct-answers.md) — Iron Laws on brevity and
120
+ no-flattery (this rule extends to no-trivial-questions)
157
121
  - [`/commit-in-chunks`](../commands/commit-in-chunks.md) — auto-split and commit without confirmation
158
122
  - [`/commit`](../commands/commit.md) — split and commit with confirmation
@@ -82,7 +82,7 @@ Body: 1-paragraph **pattern** (not anecdote) + 1 concrete example.
82
82
  A learning file is the input to `learning-to-rule-or-skill`, which
83
83
  produces a proposal draft under `agents/proposals/`. The proposal is
84
84
  then gated by `scripts/check_proposal.py`; see
85
- [`self-improvement-pipeline`](../guidelines/agent-infra/self-improvement-pipeline.md).
85
+ [`self-improvement-pipeline`](../../docs/guidelines/agent-infra/self-improvement-pipeline.md).
86
86
 
87
87
  The `agents/learnings/` and `agents/proposals/` directories are
88
88
  consumer-owned — the package ships templates and schemas, never the
@@ -1,7 +1,7 @@
1
1
  ---
2
- type: "always"
3
- description: "Append cadence for .agent-chat-history — when to call append (per_turn/per_phase/per_tool), turn-check ownership refusal handling, never write the file directly, cadence is the trigger not reply length"
4
- alwaysApply: true
2
+ type: "auto"
3
+ description: "Appending to .agent-chat-history — cadence boundaries (per_turn/per_phase/per_tool), turn-check ownership refusal handling, never writing the file directly; cadence is the trigger, not reply length"
4
+ alwaysApply: false
5
5
  source: package
6
6
  ---
7
7
 
@@ -1,7 +1,7 @@
1
1
  ---
2
- type: "always"
3
- description: "Detect file ownership of .agent-chat-history on first turn match/returning/foreign/missing handshake, two-paths classification (HOOK/ENGINE/CHECKPOINT/MANUAL), Foreign/Returning numbered-options prompt"
4
- alwaysApply: true
2
+ type: "auto"
3
+ description: "First turn or reference to .agent-chat-history detects ownership (match/returning/foreign/missing) and HOOK/ENGINE/CHECKPOINT/MANUAL path classification with numbered-options prompt"
4
+ alwaysApply: false
5
5
  source: package
6
6
  ---
7
7
 
@@ -1,7 +1,7 @@
1
1
  ---
2
- type: "always"
3
- description: "Heartbeat marker visibility for .agent-chat-history — paste subprocess stdout verbatim or nothing, never type from memory, hybrid mode prints only on drift, slip handling per language-and-tone"
4
- alwaysApply: true
2
+ type: "auto"
3
+ description: "Emitting the chat-history heartbeat marker — paste subprocess stdout verbatim or nothing, never type from memory, hybrid mode prints on drift only, slip handling per language-and-tone"
4
+ alwaysApply: false
5
5
  source: package
6
6
  ---
7
7
 
@@ -3,6 +3,8 @@ type: "auto"
3
3
  alwaysApply: false
4
4
  description: "Running CLI commands that produce verbose output — git, tests, linters, docker, build tools, artisan, npm, composer. Wrap with rtk when installed; tail/grep is fallback."
5
5
  source: package
6
+ load_context:
7
+ - .agent-src.uncompressed/contexts/communication/rules-auto/cli-output-handling-mechanics.md
6
8
  ---
7
9
 
8
10
  # Development Efficiency
@@ -32,83 +34,15 @@ exits 0. Caching the result for the session is fine.
32
34
  For the full rtk subcommand catalog and project-local filter setup → see
33
35
  the `rtk-output-filtering` skill.
34
36
 
35
- ## Codebase Navigation
37
+ ## Lookup material — see mechanics
36
38
 
37
- ### Use what you already have
38
-
39
- - Edited a file the edit tool already returned the result. Skip re-reading.
40
- - Ran a command → you have the output. Skip re-running to "verify".
41
- - File in context from recent messages → skip reloading.
42
- - Found a symbol use it. Skip searching again differently.
43
-
44
- ### Search before reading
45
-
46
- - **Search first** — `codebase-retrieval`, `search_query_regex`, or `grep`.
47
- - **Load only what you need** — use `view_range` or `search_query_regex`, not full files.
48
- - **Small files** (< 50 lines) — OK to read fully.
49
-
50
- ### Ignored files (`.augmentignore`)
51
-
52
- - `vendor/`, `node_modules/`, lock files, and generated files are excluded from `codebase-retrieval`.
53
- - When you need to understand a vendor package (base class, interface, API), **read the specific file** with `view`. This bypasses the ignore.
54
- - Load only the file you need — never browse entire vendor directories.
55
-
56
- ### Minimize tool calls
57
-
58
- - **Parallel reads** — read multiple files in one batch, not sequentially.
59
- - **`search_query_regex`** over full file reads.
60
- - **`view_range`** when you know the exact lines.
61
- - **One `codebase-retrieval` call** with all symbols — batch, not 5 separate calls.
62
-
63
- ## Fallback Pattern: Redirect, Summarize, Target
64
-
65
- When `rtk` has no matching subcommand for the tool at hand, fall back to
66
- this pattern. Every command that MAY produce more than ~30 lines of output:
67
-
68
- ### Step 1: Redirect to file
69
- ```bash
70
- docker compose exec -T <service> <command> 2>&1 > /tmp/<tool>-output.txt
71
- echo "EXIT=$?"
72
- ```
73
-
74
- ### Step 2: Read ONLY the summary
75
- ```bash
76
- tail -5 /tmp/<tool>-output.txt
77
- ```
78
-
79
- ### Step 3: If errors exist, read ONLY what you need to fix
80
- ```bash
81
- grep "ERROR\|error\|✏️" /tmp/<tool>-output.txt | head -20
82
- grep "app/Services/MyService.php" /tmp/<tool>-output.txt
83
- ```
84
-
85
- **NEVER** do:
86
- - `cat /tmp/<tool>-output.txt` (loads everything)
87
- - Read the full output of a passing command (waste)
88
- - Read diffs you don't plan to act on
89
-
90
- ## General Rules
91
-
92
- For tool-specific commands → see the `quality-tools` skill.
93
-
94
- 1. **Exit code first**: Check `$?` before reading ANY output. If 0, you're done — skip reading.
95
- 2. **Summary line**: Most tools print a summary as the last few lines. That's all you need.
96
- 3. **Targeted grep**: When you need details, `grep` for the specific file or error type.
97
- 4. **Read once, act, move on**: Once you've read output and acted on it, skip re-reading.
98
- 5. **Iterative fixing**: Fix one error at a time, re-run, check exit code.
99
- Output becomes stale after each fix — always re-run before reading again.
100
-
101
- ## CLI Over MCP
102
-
103
- MCP servers are **significantly more token-expensive** than CLI equivalents.
104
- When both options exist, prefer the CLI tool.
105
-
106
- - **Git**: `git` CLI, not Git MCP
107
- - **Files**: shell commands, not filesystem MCP
108
- - **APIs**: `curl`/`httpie`, not HTTP MCP
109
- - **Database**: `mysql`/`psql` CLI, not DB MCP
110
-
111
- Exception: MCPs with **unique capabilities** (Sentry, Playwright, Jira).
39
+ Codebase-navigation tips, the redirect-summarize-target fallback
40
+ pattern (with the three-step `tail`/`grep` recipe), the general rules
41
+ (exit code first, summary line, targeted `grep`, read-once-act-move-on,
42
+ iterative fixing), and the CLI-over-MCP catalog all live in
43
+ [`contexts/communication/rules-auto/cli-output-handling-mechanics.md`](../contexts/communication/rules-auto/cli-output-handling-mechanics.md).
44
+ Pull it whenever a verbose command is about to run without an `rtk`
45
+ match.
112
46
 
113
47
  ## Exceptions
114
48
 
@@ -0,0 +1,93 @@
1
+ ---
2
+ type: "auto"
3
+ description: "User prompt without /command but matching an eligible slash command — surface matches as numbered options with as-is escape hatch; never auto-executes, user always picks"
4
+ alwaysApply: false
5
+ source: package
6
+ load_context:
7
+ - .agent-src.uncompressed/contexts/communication/rules-auto/command-suggestion-policy-mechanics.md
8
+ ---
9
+
10
+ # Command Suggestion
11
+
12
+ When the user's prompt matches an eligible slash command, surface it
13
+ as a **numbered option** alongside an "as-is" escape hatch — the
14
+ "run prompt as-is" option is **always last** and **always present**,
15
+ never omitted. The user always picks. **Nothing auto-executes.** The
16
+ suggestion layer is a read-only shortcut *finder*, not an invocation
17
+ path.
18
+
19
+ The deterministic engine lives in `scripts/command_suggester/`. The
20
+ locked eligibility table lives in
21
+ [`agents/contexts/command-suggestion-eligibility.md`](../../agents/contexts/command-suggestion-eligibility.md).
22
+ The scoring contract and hardening list live in
23
+ [`docs/contracts/adr-command-suggestion.md`](../../docs/contracts/adr-command-suggestion.md)
24
+ and
25
+ [`docs/contracts/command-suggestion-flow.md`](../../docs/contracts/command-suggestion-flow.md).
26
+
27
+ ## Iron Law — never auto-execute
28
+
29
+ ```
30
+ SUGGEST. NEVER INVOKE. THE USER PICKS, ALWAYS.
31
+ ```
32
+
33
+ A suggestion block emits options. It does **not** start a command
34
+ flow. The user picking option N triggers `slash-command-routing-policy` on the
35
+ **next** turn — with all the command's own halts intact.
36
+
37
+ ## When to fire
38
+
39
+ On a user turn that matches **all** of the following:
40
+
41
+ 1. The message does **not** start with an explicit `/command` (those
42
+ bypass suggestion entirely — see `slash-command-routing-policy`).
43
+ 2. `commands.suggestion.enabled` is `true` (default).
44
+ 3. The user has not issued `/command-suggestion-off` in this conversation.
45
+ 4. No clarification is owed for the same turn (per
46
+ `ask-when-uncertain` — clarification wins; suggestion can fire next turn).
47
+ 5. No active engine flow is mid-halt (e.g. an `/implement-ticket`
48
+ step waiting on the user — the active flow has the floor).
49
+ 6. The matcher returns at least one match above the effective
50
+ `confidence_floor` after rank + cooldown + anti-noise.
51
+
52
+ When all six hold, the suggestion block is the **first and only**
53
+ thing the agent emits that turn. No tools, no edits, no other prose.
54
+
55
+ ## Subordination — when to stay silent
56
+
57
+ The suggestion rule is **junior** to:
58
+
59
+ - `scope-control` — never surfaces a git-op command behind a
60
+ permission gate the user already declined this turn.
61
+ - `ask-when-uncertain` — if a clarification is owed, the
62
+ clarification is the only question; suggestion suppresses for
63
+ that turn.
64
+ - `verify-before-complete` — suggestion does not interrupt an
65
+ evidence-gate verification that's already running.
66
+ - Any active role-mode contract (`role-mode-adherence`).
67
+ - Any active engine halt (`/implement-ticket`, `/work`, etc.).
68
+
69
+ On any conflict → suggestion stays silent. Zero output. The user's
70
+ prompt is processed as it would be without this rule.
71
+
72
+ ## Cloud Behavior
73
+
74
+ On cloud surfaces (Claude.ai Web, Skills API) the rule is **inert**
75
+ unless the suggester package is shipped in the bundle. Treat
76
+ `commands.suggestion.enabled` as `false` when the engine is not
77
+ available — degrade silently, never crash the turn.
78
+
79
+ ## Mechanics — output format, anti-noise, what this rule does NOT do
80
+
81
+ The exact rendered options block, the `Recommendation:` rules, the
82
+ `max_options` cap, the `rank.py` anti-noise filters, and the
83
+ "what this rule does NOT do" catalog live in
84
+ [`contexts/communication/rules-auto/command-suggestion-policy-mechanics.md`](../contexts/communication/rules-auto/command-suggestion-policy-mechanics.md).
85
+
86
+ ## Interactions
87
+
88
+ - [`slash-command-routing-policy`](slash-command-routing-policy.md) — explicit `/command` skips suggestion entirely.
89
+ - [`user-interaction`](user-interaction.md) — numbered-options Iron Law and single-source recommendation.
90
+ - [`ask-when-uncertain`](ask-when-uncertain.md) — clarification wins on conflict.
91
+ - [`scope-control`](scope-control.md) — git-op gates outrank suggestion.
92
+ - [`role-mode-adherence`](role-mode-adherence.md) — active mode contract outranks suggestion.
93
+ - [`agents/contexts/command-suggestion-eligibility.md`](../../agents/contexts/command-suggestion-eligibility.md) — locked eligibility table.