@event4u/agent-config 1.15.0 → 1.16.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 (244) hide show
  1. package/.agent-src/commands/bug-fix.md +1 -1
  2. package/.agent-src/commands/bug-investigate.md +2 -2
  3. package/.agent-src/commands/chat-history-checkpoint.md +1 -1
  4. package/.agent-src/commands/chat-history-clear.md +1 -1
  5. package/.agent-src/commands/chat-history.md +1 -1
  6. package/.agent-src/commands/check-current-md.md +1 -1
  7. package/.agent-src/commands/council-design.md +96 -0
  8. package/.agent-src/commands/council-optimize.md +115 -0
  9. package/.agent-src/commands/council-pr.md +123 -0
  10. package/.agent-src/commands/council.md +219 -0
  11. package/.agent-src/commands/create-pr.md +23 -0
  12. package/.agent-src/commands/do-and-judge.md +3 -3
  13. package/.agent-src/commands/do-in-steps.md +4 -4
  14. package/.agent-src/commands/e2e-heal.md +1 -1
  15. package/.agent-src/commands/e2e-plan.md +1 -1
  16. package/.agent-src/commands/feature-dev.md +8 -0
  17. package/.agent-src/commands/feature-explore.md +6 -1
  18. package/.agent-src/commands/feature-plan.md +33 -2
  19. package/.agent-src/commands/feature-refactor.md +5 -0
  20. package/.agent-src/commands/feature-roadmap.md +6 -1
  21. package/.agent-src/commands/feature.md +58 -0
  22. package/.agent-src/commands/fix-ci.md +5 -0
  23. package/.agent-src/commands/fix-portability.md +5 -0
  24. package/.agent-src/commands/fix-pr-bot-comments.md +5 -0
  25. package/.agent-src/commands/fix-pr-comments.md +5 -0
  26. package/.agent-src/commands/fix-pr-developer-comments.md +5 -0
  27. package/.agent-src/commands/fix-references.md +5 -0
  28. package/.agent-src/commands/fix-seeder.md +5 -0
  29. package/.agent-src/commands/fix.md +60 -0
  30. package/.agent-src/commands/jira-ticket.md +1 -1
  31. package/.agent-src/commands/judge.md +1 -1
  32. package/.agent-src/commands/memory-add.md +3 -3
  33. package/.agent-src/commands/memory-full.md +2 -2
  34. package/.agent-src/commands/memory-promote.md +2 -2
  35. package/.agent-src/commands/mode.md +5 -5
  36. package/.agent-src/commands/onboard.md +3 -3
  37. package/.agent-src/commands/optimize-agents.md +6 -1
  38. package/.agent-src/commands/optimize-augmentignore.md +5 -0
  39. package/.agent-src/commands/optimize-rtk-filters.md +5 -0
  40. package/.agent-src/commands/optimize-skills.md +6 -1
  41. package/.agent-src/commands/optimize.md +54 -0
  42. package/.agent-src/commands/propose-memory.md +2 -2
  43. package/.agent-src/commands/review-changes.md +26 -1
  44. package/.agent-src/commands/review-routing.md +1 -1
  45. package/.agent-src/commands/roadmap-create.md +29 -2
  46. package/.agent-src/commands/set-cost-profile.md +3 -3
  47. package/.agent-src/commands/sync-agent-settings.md +2 -2
  48. package/.agent-src/commands/tests-create.md +1 -1
  49. package/.agent-src/commands/upstream-contribute.md +1 -1
  50. package/.agent-src/contexts/authority/commit-mechanics.md +57 -0
  51. package/.agent-src/contexts/authority/destructive-mechanics.md +66 -0
  52. package/.agent-src/contexts/authority/scope-mechanics.md +87 -0
  53. package/.agent-src/contexts/execution/autonomy-detection.md +54 -0
  54. package/.agent-src/contexts/execution/autonomy-examples.md +90 -0
  55. package/.agent-src/contexts/execution/autonomy-mechanics.md +29 -0
  56. package/.agent-src/contexts/execution/verification-mechanics.md +80 -0
  57. package/.agent-src/personas/README.md +1 -1
  58. package/.agent-src/rules/agent-authority.md +24 -0
  59. package/.agent-src/rules/architecture.md +1 -1
  60. package/.agent-src/rules/artifact-drafting-protocol.md +1 -1
  61. package/.agent-src/rules/artifact-engagement-recording.md +1 -1
  62. package/.agent-src/rules/ask-when-uncertain.md +1 -1
  63. package/.agent-src/rules/autonomous-execution.md +78 -114
  64. package/.agent-src/rules/capture-learnings.md +1 -1
  65. package/.agent-src/rules/chat-history-cadence.md +3 -3
  66. package/.agent-src/rules/chat-history-ownership.md +3 -3
  67. package/.agent-src/rules/chat-history-visibility.md +3 -3
  68. package/.agent-src/rules/{command-suggestion.md → command-suggestion-policy.md} +7 -7
  69. package/.agent-src/rules/commit-conventions.md +1 -1
  70. package/.agent-src/rules/commit-policy.md +14 -42
  71. package/.agent-src/rules/context-hygiene.md +3 -3
  72. package/.agent-src/rules/direct-answers.md +1 -1
  73. package/.agent-src/rules/docs-sync.md +1 -1
  74. package/.agent-src/rules/e2e-testing.md +1 -1
  75. package/.agent-src/rules/guidelines.md +4 -4
  76. package/.agent-src/rules/improve-before-implement.md +2 -2
  77. package/.agent-src/rules/language-and-tone.md +37 -96
  78. package/.agent-src/rules/minimal-safe-diff.md +3 -3
  79. package/.agent-src/rules/model-recommendation.md +4 -4
  80. package/.agent-src/rules/no-cheap-questions.md +89 -0
  81. package/.agent-src/rules/non-destructive-by-default.md +15 -49
  82. package/.agent-src/rules/onboarding-gate.md +5 -5
  83. package/.agent-src/rules/review-routing-awareness.md +9 -9
  84. package/.agent-src/rules/roadmap-progress-sync.md +26 -33
  85. package/.agent-src/rules/role-mode-adherence.md +2 -2
  86. package/.agent-src/rules/scope-control.md +65 -46
  87. package/.agent-src/rules/security-sensitive-stop.md +2 -2
  88. package/.agent-src/rules/size-enforcement.md +1 -1
  89. package/.agent-src/rules/think-before-action.md +5 -5
  90. package/.agent-src/rules/token-efficiency.md +4 -4
  91. package/.agent-src/rules/{ui-audit-before-build.md → ui-audit-gate.md} +3 -3
  92. package/.agent-src/rules/user-interaction.md +3 -3
  93. package/.agent-src/rules/verify-before-complete.md +12 -67
  94. package/.agent-src/scripts/update_roadmap_progress.py +9 -4
  95. package/.agent-src/skills/ai-council/SKILL.md +333 -0
  96. package/.agent-src/skills/api-endpoint/SKILL.md +2 -2
  97. package/.agent-src/skills/blade-ui/SKILL.md +1 -1
  98. package/.agent-src/skills/blast-radius-analyzer/SKILL.md +1 -1
  99. package/.agent-src/skills/bug-analyzer/SKILL.md +1 -1
  100. package/.agent-src/skills/command-routing/SKILL.md +1 -1
  101. package/.agent-src/skills/command-writing/SKILL.md +1 -1
  102. package/.agent-src/skills/conventional-commits-writing/SKILL.md +1 -1
  103. package/.agent-src/skills/copilot-agents-optimization/SKILL.md +2 -2
  104. package/.agent-src/skills/developer-like-execution/SKILL.md +2 -2
  105. package/.agent-src/skills/flux/SKILL.md +1 -1
  106. package/.agent-src/skills/git-workflow/SKILL.md +1 -1
  107. package/.agent-src/skills/guideline-writing/SKILL.md +11 -11
  108. package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +4 -4
  109. package/.agent-src/skills/livewire/SKILL.md +1 -1
  110. package/.agent-src/skills/override-management/SKILL.md +2 -2
  111. package/.agent-src/skills/php-coder/SKILL.md +1 -1
  112. package/.agent-src/skills/playwright-testing/SKILL.md +2 -2
  113. package/.agent-src/skills/readme-reviewer/SKILL.md +1 -1
  114. package/.agent-src/skills/readme-writing/SKILL.md +1 -1
  115. package/.agent-src/skills/readme-writing-package/SKILL.md +1 -1
  116. package/.agent-src/skills/receiving-code-review/SKILL.md +1 -1
  117. package/.agent-src/skills/review-routing/SKILL.md +2 -2
  118. package/.agent-src/skills/rule-writing/SKILL.md +1 -1
  119. package/.agent-src/skills/skill-reviewer/SKILL.md +1 -1
  120. package/.agent-src/skills/skill-writing/SKILL.md +3 -3
  121. package/.agent-src/skills/subagent-orchestration/SKILL.md +1 -0
  122. package/.agent-src/skills/systematic-debugging/SKILL.md +1 -1
  123. package/.agent-src/skills/upstream-contribute/SKILL.md +1 -1
  124. package/.agent-src/skills/validate-feature-fit/SKILL.md +2 -2
  125. package/.agent-src/skills/{verify-before-complete → verify-completion-evidence}/SKILL.md +2 -2
  126. package/.agent-src/templates/agent-settings.md +8 -8
  127. package/.agent-src/templates/contexts/auth-model.md +1 -1
  128. package/.agent-src/templates/scripts/README.md +2 -2
  129. package/.agent-src/templates/scripts/telemetry/aggregator.py +16 -1
  130. package/.agent-src/templates/scripts/telemetry/engagement.py +59 -0
  131. package/.agent-src/templates/scripts/telemetry/report_renderer.py +28 -1
  132. package/.agent-src/templates/scripts/telemetry_record.py +14 -1
  133. package/.claude-plugin/marketplace.json +10 -2
  134. package/AGENTS.md +11 -9
  135. package/CHANGELOG.md +123 -1
  136. package/README.md +28 -30
  137. package/config/agent-settings.template.yml +58 -1
  138. package/config/gitignore-block.txt +3 -0
  139. package/docs/architecture.md +4 -4
  140. package/docs/catalog.md +331 -0
  141. package/docs/contracts/STABILITY.md +39 -0
  142. package/docs/contracts/adr-command-suggestion.md +3 -3
  143. package/docs/contracts/adr-product-ui-track.md +2 -2
  144. package/docs/contracts/agent-memory-contract.md +2 -2
  145. package/docs/contracts/artifact-engagement-flow.md +1 -1
  146. package/docs/contracts/command-clusters.md +2 -2
  147. package/docs/contracts/command-suggestion-flow.md +3 -3
  148. package/docs/contracts/implement-ticket-flow.md +2 -2
  149. package/docs/contracts/linear-ai-rules-inclusion.md +1 -1
  150. package/docs/contracts/load-context-schema.md +186 -0
  151. package/docs/contracts/rule-interactions.yml +96 -0
  152. package/docs/contracts/rule-priority-hierarchy.md +87 -0
  153. package/docs/contracts/ui-track-flow.md +1 -1
  154. package/docs/customization.md +14 -0
  155. package/docs/end-to-end-walkthroughs.md +165 -0
  156. package/docs/getting-started.md +26 -8
  157. package/docs/github-topics.md +12 -3
  158. package/docs/guidelines/agent-infra/language-and-tone-examples.md +79 -0
  159. package/{.agent-src → docs}/guidelines/docs/readme-size-and-splitting.md +26 -25
  160. package/docs/guidelines/php/git.md +164 -0
  161. package/docs/migrations/commands-1.15.0.md +1 -1
  162. package/docs/showcase.md +9 -4
  163. package/docs/skills-catalog.md +14 -8
  164. package/docs/ui-track-mental-model.md +2 -2
  165. package/llms.txt +13 -7
  166. package/package.json +1 -1
  167. package/scripts/agent-config +23 -0
  168. package/scripts/ai_council/__init__.py +39 -0
  169. package/scripts/ai_council/_default_prices.py +41 -0
  170. package/scripts/ai_council/_one_off_rebalancing_audit.py +149 -0
  171. package/scripts/ai_council/_one_off_roundtrip.py +106 -0
  172. package/scripts/ai_council/budget_guard.py +172 -0
  173. package/scripts/ai_council/bundler.py +261 -0
  174. package/scripts/ai_council/clients.py +381 -0
  175. package/scripts/ai_council/modes.py +127 -0
  176. package/scripts/ai_council/orchestrator.py +350 -0
  177. package/scripts/ai_council/pricing.py +213 -0
  178. package/scripts/ai_council/project_context.py +159 -0
  179. package/scripts/ai_council/prompts.py +232 -0
  180. package/scripts/ai_council/session.py +144 -0
  181. package/scripts/check_always_budget.py +126 -0
  182. package/scripts/check_augmentignore.py +69 -0
  183. package/scripts/check_command_count_messaging.py +120 -0
  184. package/scripts/check_portability.py +55 -0
  185. package/scripts/check_public_catalog_links.py +122 -0
  186. package/scripts/check_references.py +4 -1
  187. package/scripts/check_roadmap_trackable.py +111 -0
  188. package/scripts/command_suggester/cooldown.py +1 -1
  189. package/scripts/generate_index.py +266 -0
  190. package/scripts/install_anthropic_key.sh +5 -0
  191. package/scripts/install_openai_key.sh +106 -0
  192. package/scripts/lint_load_context.py +163 -0
  193. package/scripts/schemas/command.schema.json +20 -0
  194. package/scripts/schemas/rule.schema.json +10 -0
  195. package/scripts/skill_linter.py +12 -4
  196. package/scripts/sync_agent_settings.py +1 -1
  197. package/scripts/update_counts.py +9 -4
  198. package/scripts/update_prices.py +124 -0
  199. package/.agent-src/guidelines/php/git.md +0 -96
  200. /package/.agent-src/rules/{slash-commands.md → slash-command-routing-policy.md} +0 -0
  201. /package/{.agent-src → docs}/guidelines/agent-infra/agent-interaction-and-decision-quality.md +0 -0
  202. /package/{.agent-src → docs}/guidelines/agent-infra/break-glass-usage.md +0 -0
  203. /package/{.agent-src → docs}/guidelines/agent-infra/developer-judgment.md +0 -0
  204. /package/{.agent-src → docs}/guidelines/agent-infra/engineering-memory-data-format.md +0 -0
  205. /package/{.agent-src → docs}/guidelines/agent-infra/layered-settings.md +0 -0
  206. /package/{.agent-src → docs}/guidelines/agent-infra/memory-access.md +0 -0
  207. /package/{.agent-src → docs}/guidelines/agent-infra/naming.md +0 -0
  208. /package/{.agent-src → docs}/guidelines/agent-infra/output-patterns.md +0 -0
  209. /package/{.agent-src → docs}/guidelines/agent-infra/review-routing-data-format.md +0 -0
  210. /package/{.agent-src → docs}/guidelines/agent-infra/role-contracts.md +0 -0
  211. /package/{.agent-src → docs}/guidelines/agent-infra/role-mode-router.md +0 -0
  212. /package/{.agent-src → docs}/guidelines/agent-infra/runtime-layer.md +0 -0
  213. /package/{.agent-src → docs}/guidelines/agent-infra/self-improvement-pipeline.md +0 -0
  214. /package/{.agent-src → docs}/guidelines/agent-infra/size-and-scope.md +0 -0
  215. /package/{.agent-src → docs}/guidelines/agent-infra/tool-integration.md +0 -0
  216. /package/{.agent-src → docs}/guidelines/e2e/playwright.md +0 -0
  217. /package/{.agent-src → docs}/guidelines/php/api-design.md +0 -0
  218. /package/{.agent-src → docs}/guidelines/php/artisan-commands.md +0 -0
  219. /package/{.agent-src → docs}/guidelines/php/blade-ui.md +0 -0
  220. /package/{.agent-src → docs}/guidelines/php/controllers.md +0 -0
  221. /package/{.agent-src → docs}/guidelines/php/database.md +0 -0
  222. /package/{.agent-src → docs}/guidelines/php/eloquent.md +0 -0
  223. /package/{.agent-src → docs}/guidelines/php/flux.md +0 -0
  224. /package/{.agent-src → docs}/guidelines/php/general.md +0 -0
  225. /package/{.agent-src → docs}/guidelines/php/jobs.md +0 -0
  226. /package/{.agent-src → docs}/guidelines/php/livewire.md +0 -0
  227. /package/{.agent-src → docs}/guidelines/php/logging.md +0 -0
  228. /package/{.agent-src → docs}/guidelines/php/naming.md +0 -0
  229. /package/{.agent-src → docs}/guidelines/php/patterns/dependency-injection.md +0 -0
  230. /package/{.agent-src → docs}/guidelines/php/patterns/dtos.md +0 -0
  231. /package/{.agent-src → docs}/guidelines/php/patterns/events.md +0 -0
  232. /package/{.agent-src → docs}/guidelines/php/patterns/factory.md +0 -0
  233. /package/{.agent-src → docs}/guidelines/php/patterns/pipelines.md +0 -0
  234. /package/{.agent-src → docs}/guidelines/php/patterns/policies.md +0 -0
  235. /package/{.agent-src → docs}/guidelines/php/patterns/repositories.md +0 -0
  236. /package/{.agent-src → docs}/guidelines/php/patterns/service-layer.md +0 -0
  237. /package/{.agent-src → docs}/guidelines/php/patterns/strategy.md +0 -0
  238. /package/{.agent-src → docs}/guidelines/php/patterns.md +0 -0
  239. /package/{.agent-src → docs}/guidelines/php/performance.md +0 -0
  240. /package/{.agent-src → docs}/guidelines/php/resources.md +0 -0
  241. /package/{.agent-src → docs}/guidelines/php/security.md +0 -0
  242. /package/{.agent-src → docs}/guidelines/php/sql.md +0 -0
  243. /package/{.agent-src → docs}/guidelines/php/validations.md +0 -0
  244. /package/{.agent-src → docs}/guidelines/php/websocket.md +0 -0
@@ -0,0 +1,80 @@
1
+ # Verification Mechanics
2
+
3
+ Loaded by [`verify-before-complete`](../../rules/verify-before-complete.md).
4
+ Holds the decision logic and lookup tables behind the Iron Law: when
5
+ to run which verification command, the per-task-type evidence table,
6
+ confidence gating, and the break-glass reduction during live
7
+ incidents.
8
+
9
+ **Size budget:** ≤ 4,000 chars. Tracked under Phase 6 of
10
+ `road-to-pr-34-followups`.
11
+
12
+ ## When to run what — timing matters
13
+
14
+ **Quality tools (PHPStan, Rector, ECS) run ONCE at the very end** — not after every edit.
15
+ Do NOT run quality checks between tasks if you have more work to do.
16
+ Only run the full quality pipeline when you are about to finish all work in the current conversation.
17
+
18
+ **Tests: as targeted as possible, as little as necessary.**
19
+
20
+ - During work: run ONLY the specific test class or test case affected by the change.
21
+ Use `--filter=ClassName` or `--filter=test_name` — NEVER the full suite mid-work.
22
+ - Only run tests when you genuinely need to verify behavior (not "just to be safe").
23
+ - Full test suite: ONCE at the very end, before quality tools.
24
+
25
+ **The sequence at the end:**
26
+
27
+ 1. All code changes are done
28
+ 2. Run tests — targeted first (`--filter`), full suite only if targeted passes
29
+ 3. Run quality pipeline (PHPStan → Rector → ECS → PHPStan)
30
+ 4. Fix any issues from step 2-3
31
+ 5. ONLY THEN claim completion or suggest commit/push/PR
32
+
33
+ ## Minimum verification per task type
34
+
35
+ | Task | Required evidence |
36
+ |---|---|
37
+ | Code change | Tests + PHPStan |
38
+ | New feature | Tests + PHPStan + smoke test |
39
+ | Bug fix | Regression test + full suite |
40
+ | Refactoring | Full suite + PHPStan + Rector |
41
+ | Config/migration | Relevant tests or command output |
42
+ | API endpoint | curl/HTTP response output |
43
+ | Documentation only | No verification needed |
44
+
45
+ **Never accept** as proof: "should work", "looks correct", "logic is sound".
46
+ No captured output = not verified.
47
+
48
+ ## Confidence gating
49
+
50
+ State confidence explicitly before claiming completion on non-trivial work.
51
+
52
+ - **High** — runtime path read end-to-end, relevant tests inspected or run,
53
+ no hidden side-effects (queues/events/observers) unaccounted for.
54
+ - **Medium** — main path verified but one gap remains; list the gap in the
55
+ completion message.
56
+ - **Low** — broad implementation NOT allowed; switch to analysis, narrow
57
+ the scope, or ask the user before proceeding.
58
+
59
+ For high-risk areas (auth, tenancy, migrations, queues, dependencies,
60
+ external APIs, data exposure), "high" requires tests AND a cross-layer
61
+ read — not inference from a single file.
62
+
63
+ ## Break-glass reduction
64
+
65
+ During a live production incident the verification gate is **narrowed**,
66
+ never skipped. Break-glass requires explicit user invocation (e.g.
67
+ `break-glass: true`, "this is a hotfix"). Never enter it unilaterally.
68
+
69
+ Minimum evidence:
70
+
71
+ - **Targeted test(s)** covering the exact regression — zero tests is not
72
+ acceptable.
73
+ - **Smoke check** of the fixed path (curl, manual trigger, log tail) with
74
+ output captured in the message.
75
+ - **Explicit list of skipped validations** and a **follow-up commitment**
76
+ (ticket or PR line) to run them within 24h.
77
+
78
+ Completion wording: _"hotfix applied, full verification deferred per
79
+ break-glass"_ — never _"done"_ or _"verified"_. The normal gate resumes
80
+ on the follow-up PR.
@@ -99,5 +99,5 @@ cast (usually Core-6 for review skills, empty for others).
99
99
 
100
100
  ## Related
101
101
 
102
- - [`../guidelines/agent-infra/role-contracts.md`](../guidelines/agent-infra/role-contracts.md) — workflow modes personas compose with
102
+ - [`../../docs/guidelines/agent-infra/role-contracts.md`](../../docs/guidelines/agent-infra/role-contracts.md) — workflow modes personas compose with
103
103
  - [`../rules/artifact-drafting-protocol.md`](../rules/artifact-drafting-protocol.md) — mandatory per new persona
@@ -0,0 +1,24 @@
1
+ ---
2
+ type: "always"
3
+ description: "Priority Index for the four authority rules — Hard Floor → Permission Gate → Commit Default → Trivial-vs-Blocking; read first, route to canonical rule"
4
+ alwaysApply: true
5
+ source: package
6
+ ---
7
+
8
+ # Agent Authority — Priority Index
9
+
10
+ Four rules answer **"may the agent do this autonomously?"** Check bands in order; higher band wins.
11
+
12
+ | Band | Trigger | Canonical rule |
13
+ |---|---|---|
14
+ | **1. Hard Floor** | Prod-trunk merge · deploy · push · prod data/infra · whimsical bulk deletion · bulk-deletion or infra commit | [`non-destructive-by-default`](non-destructive-by-default.md) |
15
+ | **2. Permission Gate** | Git op · branch / PR / tag · architectural or library change · scope expansion | [`scope-control`](scope-control.md) |
16
+ | **3. Commit Default** | About to commit — never, unless one of four exceptions fires | [`commit-policy`](commit-policy.md) |
17
+ | **4. Trivial-vs-Blocking** | Routine workflow question — act or ask | [`autonomous-execution`](autonomous-execution.md) |
18
+
19
+ ## Index rules
20
+
21
+ - **Hard Floor wins, always.** No autonomy setting, roadmap step, or standing instruction lifts it.
22
+ - **Higher band wins on conflict.** Commit exception ≠ Hard Floor override; scope permission ≠ commit override.
23
+ - **Index never restates an Iron Law.** Iron Laws live verbatim in canonical files; this router only points.
24
+ - **Unsure → ask.** [`ask-when-uncertain`](ask-when-uncertain.md) is the universal escape hatch.
@@ -10,7 +10,7 @@ source: package
10
10
  ## General Principles
11
11
 
12
12
  - **Controllers are thin** — no business logic, delegate to services.
13
- - **Only Single Action Controllers** — every new controller MUST use `__invoke()`. No multi-action / resource controllers. See `.augment/guidelines/php/controllers.md` for naming conventions.
13
+ - **Only Single Action Controllers** — every new controller MUST use `__invoke()`. No multi-action / resource controllers. See `../../docs/guidelines/php/controllers.md` for naming conventions.
14
14
  - **Every controller needs a FormRequest** — never validate inline with `$request->validate()`. Use a dedicated `FormRequest` subclass.
15
15
  - **Services contain business logic** — calculations, orchestration, validation.
16
16
  - **Models have no business logic** — only relationships, scopes, accessors/mutators.
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  type: "auto"
3
3
  alwaysApply: false
4
- description: "Use when the user asks to create a new skill, rule, command, or guideline, or to significantly rewrite an existing one — even if they don't explicitly say 'new artifact' or 'drafting protocol'. Runs a mandatory Understand → Research → Draft sequence before anything is written."
4
+ description: "Creating a new skill, rule, command, or guideline, or significantly rewriting one — runs a mandatory Understand → Research → Draft sequence before any artifact content is written."
5
5
  source: package
6
6
  ---
7
7
 
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  type: "auto"
3
3
  alwaysApply: false
4
- description: "After completing a /implement-ticket or /work phase-step (refine, memory, analyze, plan, implement, test, verify, report) or full task — emit one telemetry:record call with consulted+applied artefact ids when telemetry.artifact_engagement.enabled is true"
4
+ description: "After a /implement-ticket or /work phase-step (refine/memory/analyze/plan/implement/test/verify/report) or full task — emit one telemetry:record call with consulted+applied ids when enabled"
5
5
  source: package
6
6
  ---
7
7
 
@@ -94,7 +94,7 @@ are related".
94
94
  - **Session handoff** (`/agent-handoff`, fresh-chat proposal): ask LAST,
95
95
  after all domain / clarifying questions — so the user's answers can be
96
96
  folded into the handoff prompt. Full rationale in
97
- [`agent-interaction-and-decision-quality`](../guidelines/agent-infra/agent-interaction-and-decision-quality.md#handoff--model-switch-questions).
97
+ [`agent-interaction-and-decision-quality`](../../docs/guidelines/agent-infra/agent-interaction-and-decision-quality.md#handoff--model-switch-questions).
98
98
  - **Model switch**: different phase — [`model-recommendation`](model-recommendation.md)
99
99
  triggers at task start with its own STOP-AND-WAIT gate, standalone, not
100
100
  appended to a Q&A block. Do not conflate the two.
@@ -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
 
@@ -1,7 +1,7 @@
1
1
  ---
2
- type: "always"
3
- description: "Surface matching slash commands as numbered options when user intent matches a command's purpose — never auto-executes; user always picks (read-only suggestion layer)."
4
- alwaysApply: true
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
5
  source: package
6
6
  ---
7
7
 
@@ -25,7 +25,7 @@ SUGGEST. NEVER INVOKE. THE USER PICKS, ALWAYS.
25
25
  ```
26
26
 
27
27
  A suggestion block emits options. It does **not** start a command
28
- flow. The user picking option N triggers `slash-commands` on the
28
+ flow. The user picking option N triggers `slash-command-routing-policy` on the
29
29
  **next** turn — with all the command's own halts intact.
30
30
 
31
31
  ## When to fire
@@ -33,7 +33,7 @@ flow. The user picking option N triggers `slash-commands` on the
33
33
  On a user turn that matches **all** of the following:
34
34
 
35
35
  1. The message does **not** start with an explicit `/command` (those
36
- bypass suggestion entirely — see `slash-commands`).
36
+ bypass suggestion entirely — see `slash-command-routing-policy`).
37
37
  2. `commands.suggestion.enabled` is `true` (default).
38
38
  3. The user has not issued `/command-suggestion-off` in this conversation.
39
39
  4. No clarification is owed for the same turn (per
@@ -110,7 +110,7 @@ prompt runs exactly as it would without this rule.
110
110
 
111
111
  ## What this rule does NOT do
112
112
 
113
- - Invoke any command. Picking option N is what triggers `slash-commands`.
113
+ - Invoke any command. Picking option N is what triggers `slash-command-routing-policy`.
114
114
  - Stack with other questions. One numbered-options block per turn.
115
115
  - Re-trigger on its own output. Command names emitted in the
116
116
  suggestion block are excluded from the next-turn matcher input.
@@ -126,7 +126,7 @@ available — degrade silently, never crash the turn.
126
126
 
127
127
  ## Interactions
128
128
 
129
- - [`slash-commands`](slash-commands.md) — explicit `/command` skips suggestion entirely.
129
+ - [`slash-command-routing-policy`](slash-command-routing-policy.md) — explicit `/command` skips suggestion entirely.
130
130
  - [`user-interaction`](user-interaction.md) — numbered-options Iron Law and single-source recommendation.
131
131
  - [`ask-when-uncertain`](ask-when-uncertain.md) — clarification wins on conflict.
132
132
  - [`scope-control`](scope-control.md) — git-op gates outrank suggestion.
@@ -61,4 +61,4 @@ ci(lint): add skill-lint workflow
61
61
  docs(roadmap): add phase 3 implementation plan
62
62
  ```
63
63
 
64
- → Type selection rules, anti-patterns, decision checklist: `guidelines/php/git.md`
64
+ → Type selection rules, anti-patterns, decision checklist: `docs/guidelines/php/git.md`
@@ -3,6 +3,8 @@ type: "always"
3
3
  description: "Commit policy — never commit and never ask about committing unless the user said so this turn, the roadmap authorizes it, or a commit command is invoked"
4
4
  alwaysApply: true
5
5
  source: package
6
+ load_context:
7
+ - .agent-src.uncompressed/contexts/authority/commit-mechanics.md
6
8
  ---
7
9
 
8
10
  # Commit Policy
@@ -36,26 +38,12 @@ Exactly four ways the agent may commit:
36
38
  3. **Commit command invoked** — `/commit` (with confirmation) or
37
39
  `/commit-in-chunks` (auto-split, no confirmation).
38
40
  4. **Roadmap authorization** — the roadmap file lists explicit commit
39
- steps and the user invoked roadmap execution. See
40
- [Roadmap-authorized commits](#roadmap-authorized-commits) below.
41
+ steps and the user invoked roadmap execution.
41
42
 
42
- Anything else → no commit.
43
-
44
- ## Hard Floor still applies — bulk deletions and infra changes
45
-
46
- Even when one of the four exceptions above authorizes a commit, the
47
- [`non-destructive-by-default`](non-destructive-by-default.md) Hard
48
- Floor still fires when the diff:
49
-
50
- - Removes a directory
51
- - Deletes ≥5 unrelated files
52
- - Touches Terraform / Pulumi / k8s manifests / Ansible / cloud-config
53
-
54
- In those cases, **surface the diff** (paths + counts) and confirm
55
- this turn before committing — even under `/commit-in-chunks`,
56
- roadmap pre-scan authorization, or an explicit "commit this now". The
57
- four exceptions cover *whether* commits happen; the Hard Floor covers
58
- *which diffs* still need a separate confirmation.
43
+ Anything else → no commit. Hard Floor (bulk deletions, infra changes)
44
+ still fires on top of any exception — see
45
+ [`commit-mechanics`](../contexts/authority/commit-mechanics.md) for
46
+ the diff triggers and the roadmap-authorized commit flow.
59
47
 
60
48
  ## NEVER ask about committing
61
49
 
@@ -64,10 +52,10 @@ variant is **forbidden**. The user invokes a command or says so
64
52
  explicitly. Don't surface a commit option in numbered-options blocks
65
53
  unless the rest of the message would be incomplete without it.
66
54
 
67
- The same speech-act check from [`autonomous-execution`](autonomous-execution.md#speech-act-check--the-phrase-must-be-a-meta-instruction-to-the-agent)
68
- applies in reverse: an explicit commit phrase inside a quote, code
69
- block, or content (e.g. a copy-paste of a chat log) is **not** a
70
- permission grant.
55
+ Quoted commit phrases (chat-log paste, log excerpt, roadmap snippet)
56
+ are **not** permission see
57
+ [`commit-mechanics`](../contexts/authority/commit-mechanics.md)
58
+ § Speech-act check.
71
59
 
72
60
  ## NEVER write commit steps into roadmaps unsolicited
73
61
 
@@ -79,29 +67,13 @@ delivery decision; roadmaps plan **work**.
79
67
  If the user explicitly wants commit steps in the roadmap, write them
80
68
  clearly and unambiguously (e.g. "Commit phase X: chore: …").
81
69
 
82
- ## Roadmap-authorized commits
83
-
84
- When **executing** a roadmap that contains commit steps:
85
-
86
- - **Non-autonomous mode** (`personal.autonomy: off`, or `auto`
87
- before opt-in) — agent may ask before each commit step. The user
88
- authorized commits by writing them into the roadmap, but retains
89
- step-level control.
90
- - **Autonomous mode** (`personal.autonomy: on`, or `auto` after
91
- opt-in) — agent does a quick pre-scan of the roadmap **before
92
- starting execution**. If commit steps are found, ask **once** at
93
- the very start: "Roadmap contains N commit steps — should they be
94
- executed?". After that, honor or skip per the answer.
95
- No re-asking per step.
96
-
97
- The pre-scan ask is the **only** permitted commit-related question
98
- in autonomous mode. Once answered, the decision is cached for the
99
- rest of the roadmap execution.
100
-
101
70
  ## See also
102
71
 
103
72
  - [`autonomous-execution`](autonomous-execution.md) — when to suppress
104
73
  trivial questions; this rule survives the suppression.
74
+ - [`no-cheap-questions`](no-cheap-questions.md) — commit asks are
75
+ cheap by construction; this rule is the canonical Iron Law, the
76
+ cheap-questions rule cites it and refuses to surface the option.
105
77
  - [`scope-control`](scope-control.md) — git-ops permission gate
106
78
  (push, merge, branch, PR, tag stay separately permission-gated).
107
79
  - [`/commit`](../commands/commit.md) — split and commit with confirmation.
@@ -1,7 +1,7 @@
1
1
  ---
2
- type: "always"
3
- alwaysApply: true
4
- description: "3-failure rule for debugging and fixing errors stop after 3 consecutive failed attempts, dump state, and recommend a fresh session"
2
+ type: "auto"
3
+ alwaysApply: false
4
+ description: "When debugging, fixing errors, or running long conversations — 3-failure stop rule, tool-loop detection, fresh-chat triggers"
5
5
  source: package
6
6
  ---
7
7
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  type: "always"
3
- description: "Always — direct, unembellished answers. No flattery, no invented facts (verify the load-bearing ones with tools, otherwise ask). Emojis only as functional markers — status, warning, mandated. Brevity is the default."
3
+ description: "Always — direct, unembellished answers. No flattery, no invented facts (verify load-bearing claims, otherwise ask). Emojis only as functional markers. Brevity is the default."
4
4
  alwaysApply: true
5
5
  source: package
6
6
  ---
@@ -55,7 +55,7 @@ exist in `.augment/templates/agent-settings.md`:
55
55
  3. **Add a comment** above the key explaining what it does.
56
56
  4. **Update the local `.agent-settings.yml`** — add the new key with its default value.
57
57
  Preserve all existing values, apply template order and comments. Follow the
58
- [section-aware merge rules](../guidelines/agent-infra/layered-settings.md#section-aware-merge-rules)
58
+ [section-aware merge rules](../../docs/guidelines/agent-infra/layered-settings.md#section-aware-merge-rules)
59
59
  so the user benefits immediately without running a separate command.
60
60
 
61
61
  **This step is mandatory.** If the template gains a new key but the local `.agent-settings.yml`
@@ -9,7 +9,7 @@ source: package
9
9
 
10
10
  ## Before writing E2E tests
11
11
 
12
- 1. **Read the guideline** — `.augment/guidelines/e2e/playwright.md` for all conventions and patterns.
12
+ 1. **Read the guideline** — `../../docs/guidelines/e2e/playwright.md` for all conventions and patterns.
13
13
  2. **Check existing tests** — match the project's structure, fixtures, and Page Object patterns.
14
14
  3. **Check `playwright.config.ts`** — base URL, browsers, timeouts, projects.
15
15