@event4u/agent-config 1.14.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 (293) hide show
  1. package/.agent-src/commands/agent-handoff.md +1 -1
  2. package/.agent-src/commands/bug-fix.md +3 -3
  3. package/.agent-src/commands/bug-investigate.md +2 -2
  4. package/.agent-src/commands/chat-history-checkpoint.md +3 -3
  5. package/.agent-src/commands/chat-history-clear.md +2 -2
  6. package/.agent-src/commands/chat-history-resume.md +2 -2
  7. package/.agent-src/commands/chat-history.md +3 -3
  8. package/.agent-src/commands/check-current-md.md +44 -33
  9. package/.agent-src/commands/commit-in-chunks.md +43 -23
  10. package/.agent-src/commands/compress.md +34 -2
  11. package/.agent-src/commands/council-design.md +96 -0
  12. package/.agent-src/commands/council-optimize.md +115 -0
  13. package/.agent-src/commands/council-pr.md +123 -0
  14. package/.agent-src/commands/council.md +219 -0
  15. package/.agent-src/commands/create-pr.md +23 -0
  16. package/.agent-src/commands/do-and-judge.md +3 -3
  17. package/.agent-src/commands/do-in-steps.md +4 -4
  18. package/.agent-src/commands/e2e-heal.md +1 -1
  19. package/.agent-src/commands/e2e-plan.md +1 -1
  20. package/.agent-src/commands/feature-dev.md +8 -0
  21. package/.agent-src/commands/feature-explore.md +6 -1
  22. package/.agent-src/commands/feature-plan.md +33 -2
  23. package/.agent-src/commands/feature-refactor.md +5 -0
  24. package/.agent-src/commands/feature-roadmap.md +8 -3
  25. package/.agent-src/commands/feature.md +58 -0
  26. package/.agent-src/commands/fix-ci.md +5 -0
  27. package/.agent-src/commands/fix-portability.md +7 -2
  28. package/.agent-src/commands/fix-pr-bot-comments.md +5 -0
  29. package/.agent-src/commands/fix-pr-comments.md +5 -0
  30. package/.agent-src/commands/fix-pr-developer-comments.md +5 -0
  31. package/.agent-src/commands/fix-references.md +5 -0
  32. package/.agent-src/commands/fix-seeder.md +5 -0
  33. package/.agent-src/commands/fix.md +60 -0
  34. package/.agent-src/commands/jira-ticket.md +1 -1
  35. package/.agent-src/commands/judge.md +1 -1
  36. package/.agent-src/commands/memory-add.md +3 -3
  37. package/.agent-src/commands/memory-full.md +2 -2
  38. package/.agent-src/commands/memory-promote.md +2 -2
  39. package/.agent-src/commands/mode.md +5 -5
  40. package/.agent-src/commands/onboard.md +17 -8
  41. package/.agent-src/commands/optimize-agents.md +6 -1
  42. package/.agent-src/commands/optimize-augmentignore.md +14 -0
  43. package/.agent-src/commands/optimize-rtk-filters.md +5 -0
  44. package/.agent-src/commands/optimize-skills.md +6 -1
  45. package/.agent-src/commands/optimize.md +54 -0
  46. package/.agent-src/commands/propose-memory.md +2 -2
  47. package/.agent-src/commands/refine-ticket.md +9 -7
  48. package/.agent-src/commands/review-changes.md +61 -9
  49. package/.agent-src/commands/review-routing.md +1 -1
  50. package/.agent-src/commands/roadmap-create.md +42 -4
  51. package/.agent-src/commands/roadmap-execute.md +9 -7
  52. package/.agent-src/commands/set-cost-profile.md +11 -3
  53. package/.agent-src/commands/sync-agent-settings.md +11 -2
  54. package/.agent-src/commands/tests-create.md +1 -1
  55. package/.agent-src/commands/tests-execute.md +2 -3
  56. package/.agent-src/commands/upstream-contribute.md +1 -1
  57. package/.agent-src/contexts/authority/commit-mechanics.md +57 -0
  58. package/.agent-src/contexts/authority/destructive-mechanics.md +66 -0
  59. package/.agent-src/contexts/authority/scope-mechanics.md +87 -0
  60. package/.agent-src/contexts/execution/autonomy-detection.md +54 -0
  61. package/.agent-src/contexts/execution/autonomy-examples.md +90 -0
  62. package/.agent-src/contexts/execution/autonomy-mechanics.md +29 -0
  63. package/.agent-src/contexts/execution/verification-mechanics.md +80 -0
  64. package/.agent-src/personas/README.md +1 -1
  65. package/.agent-src/rules/agent-authority.md +24 -0
  66. package/.agent-src/rules/architecture.md +1 -1
  67. package/.agent-src/rules/artifact-drafting-protocol.md +1 -1
  68. package/.agent-src/rules/artifact-engagement-recording.md +2 -2
  69. package/.agent-src/rules/ask-when-uncertain.md +1 -1
  70. package/.agent-src/rules/augment-portability.md +56 -37
  71. package/.agent-src/rules/autonomous-execution.md +78 -114
  72. package/.agent-src/rules/capture-learnings.md +1 -1
  73. package/.agent-src/rules/chat-history-cadence.md +109 -0
  74. package/.agent-src/rules/chat-history-ownership.md +123 -0
  75. package/.agent-src/rules/chat-history-visibility.md +96 -0
  76. package/.agent-src/rules/cli-output-handling.md +1 -1
  77. package/.agent-src/rules/{command-suggestion.md → command-suggestion-policy.md} +10 -9
  78. package/.agent-src/rules/commit-conventions.md +1 -1
  79. package/.agent-src/rules/commit-policy.md +43 -61
  80. package/.agent-src/rules/context-hygiene.md +3 -3
  81. package/.agent-src/rules/direct-answers.md +2 -2
  82. package/.agent-src/rules/docs-sync.md +1 -1
  83. package/.agent-src/rules/e2e-testing.md +1 -1
  84. package/.agent-src/rules/guidelines.md +4 -4
  85. package/.agent-src/rules/improve-before-implement.md +2 -2
  86. package/.agent-src/rules/language-and-tone.md +41 -96
  87. package/.agent-src/rules/minimal-safe-diff.md +3 -3
  88. package/.agent-src/rules/model-recommendation.md +4 -4
  89. package/.agent-src/rules/no-cheap-questions.md +89 -0
  90. package/.agent-src/rules/non-destructive-by-default.md +25 -59
  91. package/.agent-src/rules/onboarding-gate.md +5 -5
  92. package/.agent-src/rules/review-routing-awareness.md +9 -9
  93. package/.agent-src/rules/roadmap-progress-sync.md +132 -80
  94. package/.agent-src/rules/role-mode-adherence.md +3 -3
  95. package/.agent-src/rules/scope-control.md +65 -46
  96. package/.agent-src/rules/security-sensitive-stop.md +2 -2
  97. package/.agent-src/rules/size-enforcement.md +3 -2
  98. package/.agent-src/rules/think-before-action.md +5 -5
  99. package/.agent-src/rules/token-efficiency.md +4 -4
  100. package/.agent-src/rules/{ui-audit-before-build.md → ui-audit-gate.md} +3 -3
  101. package/.agent-src/rules/user-interaction.md +31 -7
  102. package/.agent-src/rules/verify-before-complete.md +12 -67
  103. package/.agent-src/scripts/update_roadmap_progress.py +65 -8
  104. package/.agent-src/skills/ai-council/SKILL.md +333 -0
  105. package/.agent-src/skills/api-endpoint/SKILL.md +2 -2
  106. package/.agent-src/skills/blade-ui/SKILL.md +30 -11
  107. package/.agent-src/skills/blast-radius-analyzer/SKILL.md +1 -1
  108. package/.agent-src/skills/bug-analyzer/SKILL.md +1 -1
  109. package/.agent-src/skills/command-routing/SKILL.md +1 -1
  110. package/.agent-src/skills/command-writing/SKILL.md +16 -5
  111. package/.agent-src/skills/conventional-commits-writing/SKILL.md +1 -1
  112. package/.agent-src/skills/copilot-agents-optimization/SKILL.md +2 -2
  113. package/.agent-src/skills/developer-like-execution/SKILL.md +2 -2
  114. package/.agent-src/skills/existing-ui-audit/SKILL.md +24 -9
  115. package/.agent-src/skills/fe-design/SKILL.md +20 -15
  116. package/.agent-src/skills/file-editor/SKILL.md +9 -0
  117. package/.agent-src/skills/flux/SKILL.md +1 -1
  118. package/.agent-src/skills/git-workflow/SKILL.md +1 -1
  119. package/.agent-src/skills/guideline-writing/SKILL.md +11 -11
  120. package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +4 -4
  121. package/.agent-src/skills/livewire/SKILL.md +27 -8
  122. package/.agent-src/skills/override-management/SKILL.md +2 -2
  123. package/.agent-src/skills/php-coder/SKILL.md +1 -1
  124. package/.agent-src/skills/playwright-testing/SKILL.md +2 -2
  125. package/.agent-src/skills/readme-reviewer/SKILL.md +1 -1
  126. package/.agent-src/skills/readme-writing/SKILL.md +1 -1
  127. package/.agent-src/skills/readme-writing-package/SKILL.md +1 -1
  128. package/.agent-src/skills/receiving-code-review/SKILL.md +1 -1
  129. package/.agent-src/skills/refine-ticket/SKILL.md +30 -24
  130. package/.agent-src/skills/review-routing/SKILL.md +2 -2
  131. package/.agent-src/skills/roadmap-management/SKILL.md +22 -16
  132. package/.agent-src/skills/rule-writing/SKILL.md +1 -1
  133. package/.agent-src/skills/skill-reviewer/SKILL.md +1 -1
  134. package/.agent-src/skills/skill-writing/SKILL.md +6 -6
  135. package/.agent-src/skills/subagent-orchestration/SKILL.md +1 -0
  136. package/.agent-src/skills/systematic-debugging/SKILL.md +1 -1
  137. package/.agent-src/skills/upstream-contribute/SKILL.md +3 -3
  138. package/.agent-src/skills/validate-feature-fit/SKILL.md +2 -2
  139. package/.agent-src/skills/{verify-before-complete → verify-completion-evidence}/SKILL.md +2 -2
  140. package/.agent-src/templates/agent-settings.md +9 -9
  141. package/.agent-src/templates/contexts/auth-model.md +1 -1
  142. package/.agent-src/templates/roadmaps.md +9 -8
  143. package/.agent-src/templates/scripts/README.md +2 -2
  144. package/.agent-src/templates/scripts/memory_lookup.py +1 -1
  145. package/.agent-src/templates/scripts/telemetry/aggregator.py +16 -1
  146. package/.agent-src/templates/scripts/telemetry/engagement.py +59 -0
  147. package/.agent-src/templates/scripts/telemetry/report_renderer.py +28 -1
  148. package/.agent-src/templates/scripts/telemetry_record.py +14 -1
  149. package/.agent-src/templates/scripts/work_engine/__init__.py +2 -2
  150. package/.agent-src/templates/scripts/work_engine/cli.py +64 -461
  151. package/.agent-src/templates/scripts/work_engine/cli_args.py +116 -0
  152. package/.agent-src/templates/scripts/work_engine/delivery_state.py +3 -3
  153. package/.agent-src/templates/scripts/work_engine/directives/backend/__init__.py +1 -1
  154. package/.agent-src/templates/scripts/work_engine/directives/backend/implement.py +1 -1
  155. package/.agent-src/templates/scripts/work_engine/directives/backend/memory.py +1 -1
  156. package/.agent-src/templates/scripts/work_engine/directives/backend/plan.py +1 -1
  157. package/.agent-src/templates/scripts/work_engine/directives/backend/report.py +1 -1
  158. package/.agent-src/templates/scripts/work_engine/dispatcher.py +1 -1
  159. package/.agent-src/templates/scripts/work_engine/emitters.py +43 -0
  160. package/.agent-src/templates/scripts/work_engine/errors.py +19 -0
  161. package/.agent-src/templates/scripts/work_engine/hook_bootstrap.py +76 -0
  162. package/.agent-src/templates/scripts/work_engine/input_builders.py +163 -0
  163. package/.agent-src/templates/scripts/work_engine/migration/v0_to_v1.py +34 -2
  164. package/.agent-src/templates/scripts/work_engine/persona_policy.py +1 -1
  165. package/.agent-src/templates/scripts/work_engine/resolvers/prompt.py +1 -1
  166. package/.agent-src/templates/scripts/work_engine/state_io.py +202 -0
  167. package/.claude-plugin/marketplace.json +10 -2
  168. package/AGENTS.md +16 -12
  169. package/CHANGELOG.md +206 -9
  170. package/README.md +51 -52
  171. package/config/agent-settings.template.yml +58 -1
  172. package/config/gitignore-block.txt +3 -0
  173. package/docs/MIGRATION.md +122 -0
  174. package/docs/architecture.md +83 -34
  175. package/docs/catalog.md +331 -0
  176. package/docs/contracts/STABILITY.md +134 -0
  177. package/docs/contracts/adr-chat-history-split.md +132 -0
  178. package/docs/contracts/adr-command-suggestion.md +146 -0
  179. package/docs/contracts/adr-implement-ticket-runtime.md +122 -0
  180. package/docs/contracts/adr-product-ui-track.md +384 -0
  181. package/docs/contracts/adr-prompt-driven-execution.md +187 -0
  182. package/docs/contracts/agent-memory-contract.md +149 -0
  183. package/docs/contracts/artifact-engagement-flow.md +262 -0
  184. package/docs/contracts/command-clusters.md +126 -0
  185. package/docs/contracts/command-suggestion-flow.md +148 -0
  186. package/docs/contracts/implement-ticket-flow.md +628 -0
  187. package/docs/contracts/linear-ai-rules-inclusion.md +143 -0
  188. package/docs/contracts/linear-ai-three-layers.md +131 -0
  189. package/docs/contracts/load-context-schema.md +186 -0
  190. package/docs/contracts/rule-interactions.md +107 -0
  191. package/docs/contracts/rule-interactions.yml +238 -0
  192. package/docs/contracts/rule-priority-hierarchy.md +87 -0
  193. package/docs/contracts/ui-stack-extension.md +236 -0
  194. package/docs/contracts/ui-track-flow.md +338 -0
  195. package/docs/customization.md +14 -0
  196. package/docs/end-to-end-walkthroughs.md +165 -0
  197. package/docs/getting-started.md +27 -9
  198. package/docs/github-topics.md +12 -3
  199. package/docs/guidelines/agent-infra/language-and-tone-examples.md +79 -0
  200. package/{.agent-src → docs}/guidelines/docs/readme-size-and-splitting.md +26 -25
  201. package/docs/guidelines/php/git.md +164 -0
  202. package/docs/installation.md +42 -6
  203. package/docs/migrations/commands-1.15.0.md +112 -0
  204. package/docs/showcase.md +9 -4
  205. package/docs/skills-catalog.md +14 -8
  206. package/docs/ui-track-mental-model.md +121 -0
  207. package/llms.txt +13 -7
  208. package/package.json +1 -1
  209. package/scripts/agent-config +23 -0
  210. package/scripts/ai_council/__init__.py +39 -0
  211. package/scripts/ai_council/_default_prices.py +41 -0
  212. package/scripts/ai_council/_one_off_rebalancing_audit.py +149 -0
  213. package/scripts/ai_council/_one_off_roundtrip.py +106 -0
  214. package/scripts/ai_council/budget_guard.py +172 -0
  215. package/scripts/ai_council/bundler.py +261 -0
  216. package/scripts/ai_council/clients.py +381 -0
  217. package/scripts/ai_council/modes.py +127 -0
  218. package/scripts/ai_council/orchestrator.py +350 -0
  219. package/scripts/ai_council/pricing.py +213 -0
  220. package/scripts/ai_council/project_context.py +159 -0
  221. package/scripts/ai_council/prompts.py +232 -0
  222. package/scripts/ai_council/session.py +144 -0
  223. package/scripts/build_linear_digest.py +4 -4
  224. package/scripts/check_always_budget.py +126 -0
  225. package/scripts/check_augmentignore.py +69 -0
  226. package/scripts/check_command_count_messaging.py +120 -0
  227. package/scripts/check_portability.py +57 -0
  228. package/scripts/check_public_catalog_links.py +122 -0
  229. package/scripts/check_public_links.py +185 -0
  230. package/scripts/check_references.py +5 -1
  231. package/scripts/check_roadmap_trackable.py +111 -0
  232. package/scripts/command_suggester/cooldown.py +1 -1
  233. package/scripts/generate_index.py +266 -0
  234. package/scripts/install_anthropic_key.sh +5 -0
  235. package/scripts/install_openai_key.sh +106 -0
  236. package/scripts/lint_load_context.py +163 -0
  237. package/scripts/lint_no_new_atomic_commands.py +179 -0
  238. package/scripts/lint_rule_interactions.py +149 -0
  239. package/scripts/memory_lookup.py +1 -1
  240. package/scripts/release.py +297 -64
  241. package/scripts/schemas/command.schema.json +20 -0
  242. package/scripts/schemas/rule.schema.json +10 -0
  243. package/scripts/skill_linter.py +26 -4
  244. package/scripts/sync_agent_settings.py +1 -1
  245. package/scripts/update_counts.py +19 -4
  246. package/scripts/update_prices.py +124 -0
  247. package/.agent-src/guidelines/php/git.md +0 -96
  248. package/.agent-src/rules/chat-history.md +0 -200
  249. /package/.agent-src/rules/{slash-commands.md → slash-command-routing-policy.md} +0 -0
  250. /package/{.agent-src → docs}/guidelines/agent-infra/agent-interaction-and-decision-quality.md +0 -0
  251. /package/{.agent-src → docs}/guidelines/agent-infra/break-glass-usage.md +0 -0
  252. /package/{.agent-src → docs}/guidelines/agent-infra/developer-judgment.md +0 -0
  253. /package/{.agent-src → docs}/guidelines/agent-infra/engineering-memory-data-format.md +0 -0
  254. /package/{.agent-src → docs}/guidelines/agent-infra/layered-settings.md +0 -0
  255. /package/{.agent-src → docs}/guidelines/agent-infra/memory-access.md +0 -0
  256. /package/{.agent-src → docs}/guidelines/agent-infra/naming.md +0 -0
  257. /package/{.agent-src → docs}/guidelines/agent-infra/output-patterns.md +0 -0
  258. /package/{.agent-src → docs}/guidelines/agent-infra/review-routing-data-format.md +0 -0
  259. /package/{.agent-src → docs}/guidelines/agent-infra/role-contracts.md +0 -0
  260. /package/{.agent-src → docs}/guidelines/agent-infra/role-mode-router.md +0 -0
  261. /package/{.agent-src → docs}/guidelines/agent-infra/runtime-layer.md +0 -0
  262. /package/{.agent-src → docs}/guidelines/agent-infra/self-improvement-pipeline.md +0 -0
  263. /package/{.agent-src → docs}/guidelines/agent-infra/size-and-scope.md +0 -0
  264. /package/{.agent-src → docs}/guidelines/agent-infra/tool-integration.md +0 -0
  265. /package/{.agent-src → docs}/guidelines/e2e/playwright.md +0 -0
  266. /package/{.agent-src → docs}/guidelines/php/api-design.md +0 -0
  267. /package/{.agent-src → docs}/guidelines/php/artisan-commands.md +0 -0
  268. /package/{.agent-src → docs}/guidelines/php/blade-ui.md +0 -0
  269. /package/{.agent-src → docs}/guidelines/php/controllers.md +0 -0
  270. /package/{.agent-src → docs}/guidelines/php/database.md +0 -0
  271. /package/{.agent-src → docs}/guidelines/php/eloquent.md +0 -0
  272. /package/{.agent-src → docs}/guidelines/php/flux.md +0 -0
  273. /package/{.agent-src → docs}/guidelines/php/general.md +0 -0
  274. /package/{.agent-src → docs}/guidelines/php/jobs.md +0 -0
  275. /package/{.agent-src → docs}/guidelines/php/livewire.md +0 -0
  276. /package/{.agent-src → docs}/guidelines/php/logging.md +0 -0
  277. /package/{.agent-src → docs}/guidelines/php/naming.md +0 -0
  278. /package/{.agent-src → docs}/guidelines/php/patterns/dependency-injection.md +0 -0
  279. /package/{.agent-src → docs}/guidelines/php/patterns/dtos.md +0 -0
  280. /package/{.agent-src → docs}/guidelines/php/patterns/events.md +0 -0
  281. /package/{.agent-src → docs}/guidelines/php/patterns/factory.md +0 -0
  282. /package/{.agent-src → docs}/guidelines/php/patterns/pipelines.md +0 -0
  283. /package/{.agent-src → docs}/guidelines/php/patterns/policies.md +0 -0
  284. /package/{.agent-src → docs}/guidelines/php/patterns/repositories.md +0 -0
  285. /package/{.agent-src → docs}/guidelines/php/patterns/service-layer.md +0 -0
  286. /package/{.agent-src → docs}/guidelines/php/patterns/strategy.md +0 -0
  287. /package/{.agent-src → docs}/guidelines/php/patterns.md +0 -0
  288. /package/{.agent-src → docs}/guidelines/php/performance.md +0 -0
  289. /package/{.agent-src → docs}/guidelines/php/resources.md +0 -0
  290. /package/{.agent-src → docs}/guidelines/php/security.md +0 -0
  291. /package/{.agent-src → docs}/guidelines/php/sql.md +0 -0
  292. /package/{.agent-src → docs}/guidelines/php/validations.md +0 -0
  293. /package/{.agent-src → docs}/guidelines/php/websocket.md +0 -0
@@ -0,0 +1,90 @@
1
+ # Autonomy Examples — Anchors, Trivial Cases, Failure Modes
2
+
3
+ Loaded by the [`autonomous-execution`](../../rules/autonomous-execution.md)
4
+ rule when concrete examples sharpen a decision. The detection algorithm
5
+ lives in [`autonomy-detection.md`](autonomy-detection.md); the setting
6
+ semantics live in [`autonomy-mechanics.md`](autonomy-mechanics.md).
7
+
8
+ ## Opt-in anchors — flip `auto` → `on`
9
+
10
+ Multilingual phrases that, when spoken **as a meta-instruction to the
11
+ agent** (per the speech-act check in [`autonomy-detection.md`](autonomy-detection.md)),
12
+ flip standing autonomy on:
13
+
14
+ - DE: "arbeite selbstständig" · "frag nicht jedes Mal" · "tue es einfach"
15
+ - EN: "work autonomously" · "don't ask" · "just do it"
16
+
17
+ Illustrative, not exhaustive — recognition is intent-based, not
18
+ substring-based.
19
+
20
+ ## Opt-out anchors — flip back to `off`
21
+
22
+ Reverse-trigger phrases (same speech-act check applies):
23
+
24
+ - DE: "frag mich wieder" · "frag mich erst" · "stop autonomous mode"
25
+ - EN: "ask me first" · "ask me again" · "stop being autonomous"
26
+
27
+ ## Speech-act check — patterns that DO NOT flip
28
+
29
+ The same words can appear in many forms. None of these flip standing
30
+ autonomy:
31
+
32
+ - **Content / copy** — "Put the slogan 'just do it' on the landing page."
33
+ - **Quote / reference** — "Nike's tagline is 'just do it' — write a blog post about it."
34
+ - **Subject of a request** — "Write docs about the 'work autonomously' modes."
35
+ - **Code / data** — string literals, test fixtures, translations, JSON.
36
+ - **About a third party** — "My colleague works autonomously."
37
+ - **A question or hypothetical** — "Should I set `don't ask` as the default?"
38
+
39
+ Counter-examples — meta-questions, self-descriptions, or one-shot
40
+ delegations also do **not** flip:
41
+
42
+ - "Why don't you ask that yourself?"
43
+ - "I'm working autonomously right now."
44
+ - "Can you decide that yourself?"
45
+
46
+ ## Trivial — JUST ACT (in `on` or `auto`-after-opt-in)
47
+
48
+ Eight worked cases. In `personal.autonomy: off`, ask these. In `on`
49
+ or `auto`-after-opt-in, act on them.
50
+
51
+ - "Should I start with Step 2 or Step 3?" — pick the obvious next step
52
+ on the roadmap and proceed; if blocked, name the blocker, otherwise go.
53
+ - "Should we commit now or after the next change?" — answered by the
54
+ commit-default in [`commit-policy`](../../rules/commit-policy.md), no need to ask.
55
+ - "How should I split the commits?" — never asked; either you are
56
+ invoked via `/commit-in-chunks` (split and commit) or you are not
57
+ (don't commit at all).
58
+ - "Should I run the linter / tests now or after the change?" — run
59
+ what [`verify-before-complete`](../../rules/verify-before-complete.md)
60
+ requires; don't ask.
61
+ - "I found 3 follow-up issues — fix all or stop?" — if they are within
62
+ the stated task scope and minimal-safe-diff allows, fix them; if they
63
+ expand scope, stop and surface them as a list.
64
+ - "Filename should be `X.md` or `Y.md`?" when one matches the
65
+ surrounding convention — pick the convention-matching one.
66
+ - "Do you want a verification table or paragraph?" — pick whichever
67
+ fits the conversation style; format is not a decision worth a turn.
68
+ - "Show me a diff before regenerating output from a tracked source?"
69
+ — compression, code-gen, formatter passes, lock-file rebuilds — run
70
+ it and report the result. Reversibility comes from the source, not
71
+ from per-file confirmation. See [`non-destructive-by-default`](../../rules/non-destructive-by-default.md#not-in-scope--deterministic-regeneration)
72
+ § Not in scope.
73
+
74
+ ## Failure modes — autonomy side
75
+
76
+ Wrong-behavior patterns this rule prevents:
77
+
78
+ - Asking "Step 2 or Step 3?" when the roadmap orders them.
79
+ - "Should I run the CI checks?" — `verify-before-complete` decides; act.
80
+ - "Do we want to commit this?" — no, by default. Don't ask.
81
+ - Numbered-options block whose only choice differences are sequencing
82
+ ("do A then B" vs "do B then A") with no real trade-off.
83
+ - Asking after the user already issued a standing autonomy directive
84
+ earlier in the conversation (cache the opt-in for `auto`).
85
+
86
+ For Hard-Floor failure modes (treating autonomy as cover for a
87
+ floor-crossing action, reading a roadmap step as deploy authorization,
88
+ refusing task-aligned WIP deletions, committing bulk-deletion / infra
89
+ diffs without surfacing them) see
90
+ [`non-destructive-by-default`](../../rules/non-destructive-by-default.md#failure-modes).
@@ -0,0 +1,29 @@
1
+ # Autonomy Mechanics — Settings and Platform Behavior
2
+
3
+ Loaded by the [`autonomous-execution`](../../rules/autonomous-execution.md)
4
+ rule when settings semantics or platform-specific defaults are
5
+ relevant. Detection logic lives in [`autonomy-detection.md`](autonomy-detection.md).
6
+
7
+ ## `personal.autonomy` setting
8
+
9
+ | Value | Behavior |
10
+ |---|---|
11
+ | `on` | Suppress trivial questions. Act on the obvious next step. Still ask on blocking / critical decisions, and ALWAYS ask on Hard-Floor triggers. |
12
+ | `off` | Ask trivial questions too. Use this if you want the agent to check in on each workflow step. |
13
+ | `auto` (default) | Same as `off` by default. Flips to `on` for the rest of the conversation as soon as the user expresses the intent "stop asking, just work". See [detection logic](autonomy-detection.md) — match by **intent**, not exact string. The flip never lifts the Hard Floor. |
14
+
15
+ The value is read once on the first turn (per
16
+ [`layered-settings`](../../../docs/guidelines/agent-infra/layered-settings.md#section-aware-merge-rules))
17
+ and cached. Missing key → treat as `on`.
18
+
19
+ ## Cloud platforms — settings degrade to `on`
20
+
21
+ Setting reads degrade gracefully on cloud platforms (no
22
+ `.agent-settings.yml` available). Treat as `personal.autonomy: on` —
23
+ the user had to deliberately ship a custom skill bundle to a cloud
24
+ agent and is unlikely to want trivial-question friction.
25
+
26
+ The Hard Floor still applies on every surface, including cloud. There
27
+ is no "cloud override" for production-branch merges, deploys, pushes,
28
+ prod data/infra, or whimsical bulk deletions — see
29
+ [`non-destructive-by-default`](../../rules/non-destructive-by-default.md#cloud-behavior).
@@ -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
 
@@ -127,7 +127,7 @@ log — that is a real bug, not a swallowed error.
127
127
  ## See also
128
128
 
129
129
  - [`road-to-artifact-engagement-telemetry`](../../../agents/roadmaps/road-to-artifact-engagement-telemetry.md) — phase contract
130
- - [`agents/contexts/artifact-engagement-flow.md`](../../../agents/contexts/artifact-engagement-flow.md) — recording contract details
130
+ - [`docs/contracts/artifact-engagement-flow.md`](../../docs/contracts/artifact-engagement-flow.md) — recording contract details
131
131
  - [`/implement-ticket`](../commands/implement-ticket.md) and [`/work`](../commands/work.md) — boundary points where this rule fires
132
132
  - [`scripts/telemetry/`](../../../scripts/telemetry/) — engine source
133
133
  - [`agent-settings`](../templates/agent-settings.md) — `telemetry.artifact_engagement.*` reference
@@ -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.
@@ -6,38 +6,47 @@ source: package
6
6
 
7
7
  # Package Portability
8
8
 
9
- Everything shipped with `event4u/agent-config` MUST be **project-agnostic**:
9
+ Everything that ships with the `event4u/agent-config` package MUST be
10
+ **project-agnostic**. That includes:
10
11
 
11
- - `.augment/` (skills, rules, commands, guidelines, templates, contexts)
12
- - Package root `AGENTS.md`
13
- - Package `.github/copilot-instructions.md`
12
+ - Everything inside `.augment/` (skills, rules, commands, guidelines,
13
+ templates, contexts)
14
+ - The package repo's own root `AGENTS.md`
15
+ - The package repo's own `.github/copilot-instructions.md`
14
16
 
15
17
  All three are either installed into consumer projects (`.augment/` via
16
- `install.sh`) or read by AI tools working on the package itself. Leaking
17
- consumer-specific content pollutes downstream or misleads agents.
18
+ `install.sh`) or read by AI tools when working on the package itself
19
+ (`AGENTS.md`, `copilot-instructions.md`). Leaking consumer-specific
20
+ content into any of them pollutes downstream projects or misleads agents.
18
21
 
19
22
  ## Rules
20
23
 
21
- - NEVER reference a specific consumer project, repo, domain, or tech
22
- stack. The package repo itself (`event4u/agent-config`) MAY appear
23
- in its own root `AGENTS.md` / `copilot-instructions.md` — meta about
24
- the package, not a leak.
24
+ - NEVER reference a specific consumer project, repo name, domain, or tech
25
+ stack directly. The package repo itself (`event4u/agent-config`) MAY be
26
+ named inside its own root `AGENTS.md` and `copilot-instructions.md` —
27
+ that is meta about the package, not a leak.
25
28
  - NEVER hardcode consumer-project paths, class names, or conventions.
26
- - Write content so it works as a reusable package across any project.
27
- - Project-specific behavior belongs in the **consumer's**
28
- `.agent-settings.yml`, `AGENTS.md`, or `agents/` — never here.
29
- - If a skill/rule needs project-specific input: read from
30
- `.agent-settings.yml` or accept as parameter.
31
- - Always ask when editing package files: "Would this still make sense
32
- in a completely different project?"
29
+ - Write content so it works as a **reusable package** across any project.
30
+ - Project-specific behavior belongs in the **consumer's** `.agent-settings.yml`,
31
+ `AGENTS.md`, or `agents/` — never in files shipped by this package.
32
+ - If a skill or rule needs project-specific input, read it from
33
+ `.agent-settings.yml` or accept it as a parameter.
34
+ - When reviewing or editing package files, always ask: "Would this still
35
+ make sense in a completely different project?"
33
36
 
34
37
  ## Runtime invocations — no `task` commands
35
38
 
36
- Skills, rules, commands, guidelines, personas, contexts shipped by this
37
- package run in **consumer projects** that may not have Task installed.
38
- NEVER reference a `task <name>` invocation inside any artefact file
39
- under `.agent-src.uncompressed/{skills,rules,commands,guidelines,personas,contexts}/`
40
- (or the compressed mirror under `.agent-src/`). Use the direct script:
39
+ Skills, rules, commands, guidelines, personas, and context docs
40
+ shipped by this package run in **consumer projects**. Consumer
41
+ projects may not have [Task](https://taskfile.dev) installed
42
+ they might use npm scripts, Composer scripts, Make, or nothing at
43
+ all. A skill that instructs an agent to run `task <something>`
44
+ silently breaks in every project without a `Taskfile.yml`.
45
+
46
+ **Rule:** Never reference a `task <something>` invocation inside any
47
+ artefact file under `.agent-src.uncompressed/{skills,rules,commands,guidelines,personas,contexts}/`
48
+ (and therefore also not in the compressed mirror under `.agent-src/`).
49
+ Use the direct script invocation instead:
41
50
 
42
51
  | ❌ Forbidden | ✅ Portable |
43
52
  |---|---|
@@ -54,19 +63,29 @@ under `.agent-src.uncompressed/{skills,rules,commands,guidelines,personas,contex
54
63
  | `task validate-schema` | `python3 scripts/validate_frontmatter.py` |
55
64
  | `task counts-check` | `python3 scripts/update_counts.py --check` |
56
65
  | `task roadmap-progress` | `./agent-config roadmap:progress` |
57
- | `task ci` | run each underlying script directly |
66
+ | `task ci` | run each underlying script directly (no single portable equivalent) |
67
+
68
+ Task remains a convenience shortcut for maintainers working on the
69
+ package repo itself — `task ci` is the recommended local gate before
70
+ a PR and lives in `Taskfile.yml`, `AGENTS.md`, and the package README.
71
+ Those maintainer-facing surfaces are outside the scope of this rule.
72
+ Artefact files must assume Task is absent.
58
73
 
59
- Task stays a convenience for package maintainers (`Taskfile.yml`,
60
- `AGENTS.md`, README). Artefact files must assume Task is absent.
74
+ The detection pattern *"if the consumer has a `Makefile` / build
75
+ script, prefer its targets over raw commands"* is still allowed when
76
+ the skill adapts to the **consumer's own** tooling (e.g.
77
+ `tests-execute` detecting `php artisan test` vs `vendor/bin/pest`).
78
+ It is not allowed to reference `task <name>` as the detected target —
79
+ every direct invocation must resolve to a real script path.
61
80
 
62
81
  ## Consumer CLI — `./agent-config`
63
82
 
64
- A subset of scripts is exposed through a project-local CLI wrapper
65
- `./agent-config` (written into the project root by the installer,
66
- gitignored). Artefacts MUST prefer the CLI over raw `python3 scripts/…`
67
- paths for every command it covers raw paths only resolve inside the
68
- package repo, in consumer projects the scripts live under
69
- `node_modules/` or `vendor/`.
83
+ A subset of package scripts is exposed through a project-local CLI
84
+ wrapper `./agent-config` (written into the project root by the
85
+ installer, gitignored). Artefacts MUST prefer the CLI over raw
86
+ `python3 scripts/…` paths for every command the CLI already covers,
87
+ because the raw paths only resolve inside the package repo — in a
88
+ consumer project the scripts live under `node_modules/` or `vendor/`.
70
89
 
71
90
  | ❌ Forbidden in artefacts | ✅ Portable |
72
91
  |---|---|
@@ -85,13 +104,13 @@ package repo, in consumer projects the scripts live under
85
104
  | `python3 scripts/refine_ticket_detect.py` | `./agent-config refine-ticket:detect` |
86
105
 
87
106
  Commands not covered by the CLI stay as direct script invocations
88
- (e.g. `bash scripts/compress.sh --sync`) — maintainer-only, not
89
- reachable from a consumer project anyway.
107
+ (e.g. `bash scripts/compress.sh --sync`) — those are maintainer-only
108
+ and not reachable from a consumer project anyway.
90
109
 
91
110
  ## Enforcement
92
111
 
93
112
  `scripts/check_portability.py` scans `.augment/`, `.agent-src.uncompressed/`,
94
- and the package root `AGENTS.md` + `.github/copilot-instructions.md` for
95
- forbidden identifiers, for any `task <name>` invocation, and for direct
96
- script invocations that bypass the `./agent-config` CLI. Runs in CI —
97
- must pass before any PR.
113
+ and the package repo's root `AGENTS.md` + `.github/copilot-instructions.md`
114
+ for forbidden identifiers, for any `task <name>` invocation inside
115
+ artefact files, and for direct script invocations that bypass the
116
+ `./agent-config` CLI. It runs in CI and must pass before any PR.