@event4u/agent-config 1.9.1

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 (446) hide show
  1. package/.agent-src/README.md +64 -0
  2. package/.agent-src/commands/agent-handoff.md +64 -0
  3. package/.agent-src/commands/agent-status.md +83 -0
  4. package/.agent-src/commands/agents-audit.md +243 -0
  5. package/.agent-src/commands/agents-cleanup.md +169 -0
  6. package/.agent-src/commands/agents-prepare.md +137 -0
  7. package/.agent-src/commands/analyze-reference-repo.md +191 -0
  8. package/.agent-src/commands/bug-fix.md +181 -0
  9. package/.agent-src/commands/bug-investigate.md +175 -0
  10. package/.agent-src/commands/commit.md +121 -0
  11. package/.agent-src/commands/compress.md +177 -0
  12. package/.agent-src/commands/config-agent-settings.md +126 -0
  13. package/.agent-src/commands/context-create.md +167 -0
  14. package/.agent-src/commands/context-refactor.md +170 -0
  15. package/.agent-src/commands/copilot-agents-init.md +150 -0
  16. package/.agent-src/commands/copilot-agents-optimize.md +251 -0
  17. package/.agent-src/commands/create-pr-description.md +112 -0
  18. package/.agent-src/commands/create-pr.md +76 -0
  19. package/.agent-src/commands/do-and-judge.md +114 -0
  20. package/.agent-src/commands/do-in-steps.md +84 -0
  21. package/.agent-src/commands/e2e-heal.md +98 -0
  22. package/.agent-src/commands/e2e-plan.md +85 -0
  23. package/.agent-src/commands/estimate-ticket.md +80 -0
  24. package/.agent-src/commands/feature-dev.md +111 -0
  25. package/.agent-src/commands/feature-explore.md +180 -0
  26. package/.agent-src/commands/feature-plan.md +288 -0
  27. package/.agent-src/commands/feature-refactor.md +181 -0
  28. package/.agent-src/commands/feature-roadmap.md +184 -0
  29. package/.agent-src/commands/fix-ci.md +48 -0
  30. package/.agent-src/commands/fix-portability.md +97 -0
  31. package/.agent-src/commands/fix-pr-bot-comments.md +146 -0
  32. package/.agent-src/commands/fix-pr-comments.md +58 -0
  33. package/.agent-src/commands/fix-pr-developer-comments.md +152 -0
  34. package/.agent-src/commands/fix-references.md +94 -0
  35. package/.agent-src/commands/fix-seeder.md +146 -0
  36. package/.agent-src/commands/implement-ticket.md +133 -0
  37. package/.agent-src/commands/jira-ticket.md +71 -0
  38. package/.agent-src/commands/judge.md +86 -0
  39. package/.agent-src/commands/memory-add.md +130 -0
  40. package/.agent-src/commands/memory-full.md +97 -0
  41. package/.agent-src/commands/memory-promote.md +144 -0
  42. package/.agent-src/commands/mode.md +121 -0
  43. package/.agent-src/commands/module-create.md +132 -0
  44. package/.agent-src/commands/module-explore.md +157 -0
  45. package/.agent-src/commands/optimize-agents.md +139 -0
  46. package/.agent-src/commands/optimize-augmentignore.md +262 -0
  47. package/.agent-src/commands/optimize-rtk-filters.md +120 -0
  48. package/.agent-src/commands/optimize-skills.md +121 -0
  49. package/.agent-src/commands/override-create.md +97 -0
  50. package/.agent-src/commands/override-manage.md +96 -0
  51. package/.agent-src/commands/package-reset.md +154 -0
  52. package/.agent-src/commands/package-test.md +154 -0
  53. package/.agent-src/commands/prepare-for-review.md +91 -0
  54. package/.agent-src/commands/project-analyze.md +300 -0
  55. package/.agent-src/commands/project-health.md +95 -0
  56. package/.agent-src/commands/propose-memory.md +108 -0
  57. package/.agent-src/commands/quality-fix.md +106 -0
  58. package/.agent-src/commands/refine-ticket.md +81 -0
  59. package/.agent-src/commands/review-changes.md +130 -0
  60. package/.agent-src/commands/review-routing.md +111 -0
  61. package/.agent-src/commands/roadmap-create.md +110 -0
  62. package/.agent-src/commands/roadmap-execute.md +68 -0
  63. package/.agent-src/commands/rule-compliance-audit.md +139 -0
  64. package/.agent-src/commands/tests-create.md +73 -0
  65. package/.agent-src/commands/tests-execute.md +58 -0
  66. package/.agent-src/commands/threat-model.md +115 -0
  67. package/.agent-src/commands/update-form-request-messages.md +189 -0
  68. package/.agent-src/commands/upstream-contribute.md +171 -0
  69. package/.agent-src/contexts/augment-infrastructure.md +181 -0
  70. package/.agent-src/contexts/documentation-hierarchy.md +142 -0
  71. package/.agent-src/contexts/model-recommendations.md +142 -0
  72. package/.agent-src/contexts/override-system.md +187 -0
  73. package/.agent-src/contexts/skills-and-commands.md +154 -0
  74. package/.agent-src/contexts/subagent-configuration.md +62 -0
  75. package/.agent-src/guidelines/agent-infra/agent-interaction-and-decision-quality.md +110 -0
  76. package/.agent-src/guidelines/agent-infra/break-glass-usage.md +113 -0
  77. package/.agent-src/guidelines/agent-infra/developer-judgment.md +82 -0
  78. package/.agent-src/guidelines/agent-infra/engineering-memory-data-format.md +117 -0
  79. package/.agent-src/guidelines/agent-infra/layered-settings.md +158 -0
  80. package/.agent-src/guidelines/agent-infra/memory-access.md +121 -0
  81. package/.agent-src/guidelines/agent-infra/naming.md +69 -0
  82. package/.agent-src/guidelines/agent-infra/output-patterns.md +117 -0
  83. package/.agent-src/guidelines/agent-infra/review-routing-data-format.md +144 -0
  84. package/.agent-src/guidelines/agent-infra/role-contracts.md +211 -0
  85. package/.agent-src/guidelines/agent-infra/role-mode-router.md +89 -0
  86. package/.agent-src/guidelines/agent-infra/runtime-layer.md +89 -0
  87. package/.agent-src/guidelines/agent-infra/self-improvement-pipeline.md +135 -0
  88. package/.agent-src/guidelines/agent-infra/size-and-scope.md +189 -0
  89. package/.agent-src/guidelines/agent-infra/tool-integration.md +73 -0
  90. package/.agent-src/guidelines/docs/readme-size-and-splitting.md +153 -0
  91. package/.agent-src/guidelines/e2e/playwright.md +363 -0
  92. package/.agent-src/guidelines/php/api-design.md +115 -0
  93. package/.agent-src/guidelines/php/artisan-commands.md +81 -0
  94. package/.agent-src/guidelines/php/blade-ui.md +78 -0
  95. package/.agent-src/guidelines/php/controllers.md +90 -0
  96. package/.agent-src/guidelines/php/database.md +111 -0
  97. package/.agent-src/guidelines/php/eloquent.md +208 -0
  98. package/.agent-src/guidelines/php/flux.md +80 -0
  99. package/.agent-src/guidelines/php/general.md +191 -0
  100. package/.agent-src/guidelines/php/git.md +96 -0
  101. package/.agent-src/guidelines/php/jobs.md +111 -0
  102. package/.agent-src/guidelines/php/livewire.md +71 -0
  103. package/.agent-src/guidelines/php/logging.md +79 -0
  104. package/.agent-src/guidelines/php/naming.md +89 -0
  105. package/.agent-src/guidelines/php/patterns/dependency-injection.md +57 -0
  106. package/.agent-src/guidelines/php/patterns/dtos.md +199 -0
  107. package/.agent-src/guidelines/php/patterns/events.md +67 -0
  108. package/.agent-src/guidelines/php/patterns/factory.md +53 -0
  109. package/.agent-src/guidelines/php/patterns/pipelines.md +66 -0
  110. package/.agent-src/guidelines/php/patterns/policies.md +66 -0
  111. package/.agent-src/guidelines/php/patterns/repositories.md +122 -0
  112. package/.agent-src/guidelines/php/patterns/service-layer.md +64 -0
  113. package/.agent-src/guidelines/php/patterns/strategy.md +69 -0
  114. package/.agent-src/guidelines/php/patterns.md +28 -0
  115. package/.agent-src/guidelines/php/performance.md +92 -0
  116. package/.agent-src/guidelines/php/resources.md +100 -0
  117. package/.agent-src/guidelines/php/security.md +110 -0
  118. package/.agent-src/guidelines/php/sql.md +97 -0
  119. package/.agent-src/guidelines/php/validations.md +119 -0
  120. package/.agent-src/guidelines/php/websocket.md +100 -0
  121. package/.agent-src/personas/README.md +104 -0
  122. package/.agent-src/personas/ai-agent.md +77 -0
  123. package/.agent-src/personas/critical-challenger.md +73 -0
  124. package/.agent-src/personas/developer.md +73 -0
  125. package/.agent-src/personas/product-owner.md +78 -0
  126. package/.agent-src/personas/qa.md +67 -0
  127. package/.agent-src/personas/senior-engineer.md +77 -0
  128. package/.agent-src/personas/stakeholder.md +78 -0
  129. package/.agent-src/rules/agent-docs.md +61 -0
  130. package/.agent-src/rules/analysis-skill-routing.md +48 -0
  131. package/.agent-src/rules/architecture.md +62 -0
  132. package/.agent-src/rules/artifact-drafting-protocol.md +73 -0
  133. package/.agent-src/rules/ask-when-uncertain.md +52 -0
  134. package/.agent-src/rules/augment-portability.md +38 -0
  135. package/.agent-src/rules/augment-source-of-truth.md +128 -0
  136. package/.agent-src/rules/capture-learnings.md +89 -0
  137. package/.agent-src/rules/cli-output-handling.md +94 -0
  138. package/.agent-src/rules/commit-conventions.md +64 -0
  139. package/.agent-src/rules/context-hygiene.md +90 -0
  140. package/.agent-src/rules/docker-commands.md +55 -0
  141. package/.agent-src/rules/docs-sync.md +79 -0
  142. package/.agent-src/rules/downstream-changes.md +70 -0
  143. package/.agent-src/rules/e2e-testing.md +53 -0
  144. package/.agent-src/rules/guidelines.md +90 -0
  145. package/.agent-src/rules/improve-before-implement.md +94 -0
  146. package/.agent-src/rules/language-and-tone.md +104 -0
  147. package/.agent-src/rules/laravel-translations.md +48 -0
  148. package/.agent-src/rules/markdown-safe-codeblocks.md +18 -0
  149. package/.agent-src/rules/minimal-safe-diff.md +87 -0
  150. package/.agent-src/rules/missing-tool-handling.md +62 -0
  151. package/.agent-src/rules/model-recommendation.md +70 -0
  152. package/.agent-src/rules/package-ci-checks.md +80 -0
  153. package/.agent-src/rules/php-coding.md +63 -0
  154. package/.agent-src/rules/preservation-guard.md +29 -0
  155. package/.agent-src/rules/review-routing-awareness.md +125 -0
  156. package/.agent-src/rules/reviewer-awareness.md +92 -0
  157. package/.agent-src/rules/roadmap-progress-sync.md +56 -0
  158. package/.agent-src/rules/role-mode-adherence.md +54 -0
  159. package/.agent-src/rules/rule-type-governance.md +46 -0
  160. package/.agent-src/rules/runtime-safety.md +42 -0
  161. package/.agent-src/rules/scope-control.md +40 -0
  162. package/.agent-src/rules/security-sensitive-stop.md +77 -0
  163. package/.agent-src/rules/size-enforcement.md +29 -0
  164. package/.agent-src/rules/skill-improvement-trigger.md +58 -0
  165. package/.agent-src/rules/skill-quality.md +110 -0
  166. package/.agent-src/rules/slash-commands.md +30 -0
  167. package/.agent-src/rules/think-before-action.md +91 -0
  168. package/.agent-src/rules/token-efficiency.md +99 -0
  169. package/.agent-src/rules/tool-safety.md +36 -0
  170. package/.agent-src/rules/upstream-proposal.md +76 -0
  171. package/.agent-src/rules/user-interaction.md +79 -0
  172. package/.agent-src/rules/verify-before-complete.md +120 -0
  173. package/.agent-src/scripts/scan-seeder-violations.php +145 -0
  174. package/.agent-src/scripts/update_roadmap_progress.py +244 -0
  175. package/.agent-src/skills/adversarial-review/SKILL.md +149 -0
  176. package/.agent-src/skills/agent-docs-writing/SKILL.md +234 -0
  177. package/.agent-src/skills/analysis-autonomous-mode/SKILL.md +197 -0
  178. package/.agent-src/skills/analysis-skill-router/SKILL.md +134 -0
  179. package/.agent-src/skills/api-design/SKILL.md +104 -0
  180. package/.agent-src/skills/api-endpoint/SKILL.md +185 -0
  181. package/.agent-src/skills/api-testing/SKILL.md +206 -0
  182. package/.agent-src/skills/artisan-commands/SKILL.md +78 -0
  183. package/.agent-src/skills/authz-review/SKILL.md +171 -0
  184. package/.agent-src/skills/aws-infrastructure/SKILL.md +152 -0
  185. package/.agent-src/skills/blade-ui/SKILL.md +75 -0
  186. package/.agent-src/skills/blast-radius-analyzer/SKILL.md +185 -0
  187. package/.agent-src/skills/bug-analyzer/SKILL.md +256 -0
  188. package/.agent-src/skills/check-refs/SKILL.md +72 -0
  189. package/.agent-src/skills/code-refactoring/SKILL.md +200 -0
  190. package/.agent-src/skills/code-review/SKILL.md +214 -0
  191. package/.agent-src/skills/command-routing/SKILL.md +96 -0
  192. package/.agent-src/skills/command-writing/SKILL.md +143 -0
  193. package/.agent-src/skills/composer-packages/SKILL.md +172 -0
  194. package/.agent-src/skills/context-authoring/SKILL.md +157 -0
  195. package/.agent-src/skills/context-document/SKILL.md +153 -0
  196. package/.agent-src/skills/conventional-commits-writing/SKILL.md +70 -0
  197. package/.agent-src/skills/copilot-agents-optimization/SKILL.md +220 -0
  198. package/.agent-src/skills/copilot-config/SKILL.md +203 -0
  199. package/.agent-src/skills/dashboard-design/SKILL.md +116 -0
  200. package/.agent-src/skills/data-flow-mapper/SKILL.md +160 -0
  201. package/.agent-src/skills/database/SKILL.md +91 -0
  202. package/.agent-src/skills/dependency-upgrade/SKILL.md +204 -0
  203. package/.agent-src/skills/description-assist/SKILL.md +169 -0
  204. package/.agent-src/skills/design-review/SKILL.md +228 -0
  205. package/.agent-src/skills/devcontainer/SKILL.md +121 -0
  206. package/.agent-src/skills/developer-like-execution/SKILL.md +276 -0
  207. package/.agent-src/skills/docker/SKILL.md +245 -0
  208. package/.agent-src/skills/dto-creator/SKILL.md +117 -0
  209. package/.agent-src/skills/eloquent/SKILL.md +92 -0
  210. package/.agent-src/skills/eloquent/evals/last-run.json +99 -0
  211. package/.agent-src/skills/eloquent/evals/triggers.json +16 -0
  212. package/.agent-src/skills/estimate-ticket/SKILL.md +186 -0
  213. package/.agent-src/skills/estimate-ticket/evals/output-schema.yml +20 -0
  214. package/.agent-src/skills/estimate-ticket/evals/triggers.json +18 -0
  215. package/.agent-src/skills/fe-design/SKILL.md +223 -0
  216. package/.agent-src/skills/feature-planning/SKILL.md +226 -0
  217. package/.agent-src/skills/file-editor/SKILL.md +129 -0
  218. package/.agent-src/skills/finishing-a-development-branch/SKILL.md +200 -0
  219. package/.agent-src/skills/flux/SKILL.md +64 -0
  220. package/.agent-src/skills/git-workflow/SKILL.md +102 -0
  221. package/.agent-src/skills/github-ci/SKILL.md +122 -0
  222. package/.agent-src/skills/grafana/SKILL.md +168 -0
  223. package/.agent-src/skills/guideline-writing/SKILL.md +147 -0
  224. package/.agent-src/skills/jira-integration/SKILL.md +182 -0
  225. package/.agent-src/skills/jobs-events/SKILL.md +87 -0
  226. package/.agent-src/skills/judge-bug-hunter/SKILL.md +157 -0
  227. package/.agent-src/skills/judge-code-quality/SKILL.md +158 -0
  228. package/.agent-src/skills/judge-security-auditor/SKILL.md +167 -0
  229. package/.agent-src/skills/judge-test-coverage/SKILL.md +154 -0
  230. package/.agent-src/skills/laravel/SKILL.md +195 -0
  231. package/.agent-src/skills/laravel-horizon/SKILL.md +169 -0
  232. package/.agent-src/skills/laravel-mail/SKILL.md +193 -0
  233. package/.agent-src/skills/laravel-middleware/SKILL.md +185 -0
  234. package/.agent-src/skills/laravel-notifications/SKILL.md +168 -0
  235. package/.agent-src/skills/laravel-pennant/SKILL.md +188 -0
  236. package/.agent-src/skills/laravel-pulse/SKILL.md +160 -0
  237. package/.agent-src/skills/laravel-reverb/SKILL.md +205 -0
  238. package/.agent-src/skills/laravel-scheduling/SKILL.md +167 -0
  239. package/.agent-src/skills/laravel-validation/SKILL.md +71 -0
  240. package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +249 -0
  241. package/.agent-src/skills/lint-skills/SKILL.md +72 -0
  242. package/.agent-src/skills/livewire/SKILL.md +79 -0
  243. package/.agent-src/skills/logging-monitoring/SKILL.md +100 -0
  244. package/.agent-src/skills/mcp/SKILL.md +193 -0
  245. package/.agent-src/skills/merge-conflicts/SKILL.md +158 -0
  246. package/.agent-src/skills/migration-creator/SKILL.md +160 -0
  247. package/.agent-src/skills/module-management/SKILL.md +154 -0
  248. package/.agent-src/skills/multi-tenancy/SKILL.md +129 -0
  249. package/.agent-src/skills/openapi/SKILL.md +154 -0
  250. package/.agent-src/skills/override-management/SKILL.md +186 -0
  251. package/.agent-src/skills/performance/SKILL.md +69 -0
  252. package/.agent-src/skills/performance-analysis/SKILL.md +118 -0
  253. package/.agent-src/skills/pest-testing/SKILL.md +321 -0
  254. package/.agent-src/skills/php-coder/SKILL.md +78 -0
  255. package/.agent-src/skills/php-coder/evals/triggers.json +16 -0
  256. package/.agent-src/skills/php-debugging/SKILL.md +184 -0
  257. package/.agent-src/skills/php-service/SKILL.md +96 -0
  258. package/.agent-src/skills/playwright-testing/SKILL.md +244 -0
  259. package/.agent-src/skills/project-analysis-core/SKILL.md +138 -0
  260. package/.agent-src/skills/project-analysis-hypothesis-driven/SKILL.md +130 -0
  261. package/.agent-src/skills/project-analysis-laravel/SKILL.md +119 -0
  262. package/.agent-src/skills/project-analysis-nextjs/SKILL.md +123 -0
  263. package/.agent-src/skills/project-analysis-node-express/SKILL.md +111 -0
  264. package/.agent-src/skills/project-analysis-react/SKILL.md +119 -0
  265. package/.agent-src/skills/project-analysis-symfony/SKILL.md +111 -0
  266. package/.agent-src/skills/project-analysis-zend-laminas/SKILL.md +108 -0
  267. package/.agent-src/skills/project-analyzer/SKILL.md +341 -0
  268. package/.agent-src/skills/project-docs/SKILL.md +137 -0
  269. package/.agent-src/skills/quality-tools/SKILL.md +411 -0
  270. package/.agent-src/skills/readme-reviewer/SKILL.md +187 -0
  271. package/.agent-src/skills/readme-writing/SKILL.md +142 -0
  272. package/.agent-src/skills/readme-writing-package/SKILL.md +185 -0
  273. package/.agent-src/skills/receiving-code-review/SKILL.md +190 -0
  274. package/.agent-src/skills/refine-ticket/SKILL.md +310 -0
  275. package/.agent-src/skills/refine-ticket/detection-map.yml +124 -0
  276. package/.agent-src/skills/refine-ticket/evals/output-schema.yml +16 -0
  277. package/.agent-src/skills/refine-ticket/evals/triggers.json +16 -0
  278. package/.agent-src/skills/requesting-code-review/SKILL.md +199 -0
  279. package/.agent-src/skills/review-routing/SKILL.md +195 -0
  280. package/.agent-src/skills/roadmap-management/SKILL.md +303 -0
  281. package/.agent-src/skills/rtk-output-filtering/SKILL.md +184 -0
  282. package/.agent-src/skills/rule-writing/SKILL.md +148 -0
  283. package/.agent-src/skills/security/SKILL.md +79 -0
  284. package/.agent-src/skills/security-audit/SKILL.md +123 -0
  285. package/.agent-src/skills/sentry-integration/SKILL.md +170 -0
  286. package/.agent-src/skills/sequential-thinking/SKILL.md +158 -0
  287. package/.agent-src/skills/skill-improvement-pipeline/SKILL.md +155 -0
  288. package/.agent-src/skills/skill-management/SKILL.md +121 -0
  289. package/.agent-src/skills/skill-reviewer/SKILL.md +218 -0
  290. package/.agent-src/skills/skill-writing/SKILL.md +291 -0
  291. package/.agent-src/skills/skill-writing/evals/triggers.json +16 -0
  292. package/.agent-src/skills/sql-writing/SKILL.md +74 -0
  293. package/.agent-src/skills/subagent-orchestration/SKILL.md +190 -0
  294. package/.agent-src/skills/systematic-debugging/SKILL.md +244 -0
  295. package/.agent-src/skills/technical-specification/SKILL.md +185 -0
  296. package/.agent-src/skills/terraform/SKILL.md +137 -0
  297. package/.agent-src/skills/terragrunt/SKILL.md +217 -0
  298. package/.agent-src/skills/test-driven-development/SKILL.md +252 -0
  299. package/.agent-src/skills/test-performance/SKILL.md +172 -0
  300. package/.agent-src/skills/threat-modeling/SKILL.md +189 -0
  301. package/.agent-src/skills/traefik/SKILL.md +319 -0
  302. package/.agent-src/skills/universal-project-analysis/SKILL.md +179 -0
  303. package/.agent-src/skills/upstream-contribute/SKILL.md +255 -0
  304. package/.agent-src/skills/using-git-worktrees/SKILL.md +148 -0
  305. package/.agent-src/skills/validate-feature-fit/SKILL.md +113 -0
  306. package/.agent-src/skills/verify-before-complete/SKILL.md +188 -0
  307. package/.agent-src/skills/websocket/SKILL.md +75 -0
  308. package/.agent-src/templates/AGENTS.md +146 -0
  309. package/.agent-src/templates/agent-settings.md +256 -0
  310. package/.agent-src/templates/agents/.gitattributes.fragment +16 -0
  311. package/.agent-src/templates/agents/agent-project-settings.example.yml +138 -0
  312. package/.agent-src/templates/agents/memory/architecture-decisions.example.yml +95 -0
  313. package/.agent-src/templates/agents/memory/domain-invariants.example.yml +80 -0
  314. package/.agent-src/templates/agents/memory/historical-patterns.example.yml +82 -0
  315. package/.agent-src/templates/agents/memory/incident-learnings.example.yml +113 -0
  316. package/.agent-src/templates/agents/memory/ownership.example.yml +75 -0
  317. package/.agent-src/templates/agents/memory/product-rules.example.yml +87 -0
  318. package/.agent-src/templates/agents/proposal.example.md +143 -0
  319. package/.agent-src/templates/command.md +84 -0
  320. package/.agent-src/templates/contexts/auth-model.md +59 -0
  321. package/.agent-src/templates/contexts/data-sensitivity.md +60 -0
  322. package/.agent-src/templates/contexts/deployment-order.md +72 -0
  323. package/.agent-src/templates/contexts/observability.md +64 -0
  324. package/.agent-src/templates/contexts/tenant-boundaries.md +68 -0
  325. package/.agent-src/templates/contexts.md +116 -0
  326. package/.agent-src/templates/copilot-instructions.md +115 -0
  327. package/.agent-src/templates/features.md +125 -0
  328. package/.agent-src/templates/github-workflows/memory-hygiene.yml +133 -0
  329. package/.agent-src/templates/github-workflows/pr-risk-review.yml +123 -0
  330. package/.agent-src/templates/github-workflows/proposal-drift.yml +118 -0
  331. package/.agent-src/templates/overrides/command.md +24 -0
  332. package/.agent-src/templates/overrides/guideline.md +21 -0
  333. package/.agent-src/templates/overrides/rule.md +19 -0
  334. package/.agent-src/templates/overrides/skill.md +24 -0
  335. package/.agent-src/templates/overrides/template.md +21 -0
  336. package/.agent-src/templates/persona.md +99 -0
  337. package/.agent-src/templates/roadmaps.md +109 -0
  338. package/.agent-src/templates/scripts/README.md +195 -0
  339. package/.agent-src/templates/scripts/check_memory.py +283 -0
  340. package/.agent-src/templates/scripts/check_memory_proposal.py +180 -0
  341. package/.agent-src/templates/scripts/historical-bug-patterns.example.yml +84 -0
  342. package/.agent-src/templates/scripts/implement_ticket/__init__.py +57 -0
  343. package/.agent-src/templates/scripts/implement_ticket/__main__.py +9 -0
  344. package/.agent-src/templates/scripts/implement_ticket/cli.py +171 -0
  345. package/.agent-src/templates/scripts/implement_ticket/delivery_state.py +130 -0
  346. package/.agent-src/templates/scripts/implement_ticket/dispatcher.py +134 -0
  347. package/.agent-src/templates/scripts/implement_ticket/persona_policy.py +85 -0
  348. package/.agent-src/templates/scripts/implement_ticket/steps/__init__.py +49 -0
  349. package/.agent-src/templates/scripts/implement_ticket/steps/analyze.py +98 -0
  350. package/.agent-src/templates/scripts/implement_ticket/steps/implement.py +145 -0
  351. package/.agent-src/templates/scripts/implement_ticket/steps/memory.py +136 -0
  352. package/.agent-src/templates/scripts/implement_ticket/steps/plan.py +175 -0
  353. package/.agent-src/templates/scripts/implement_ticket/steps/refine.py +140 -0
  354. package/.agent-src/templates/scripts/implement_ticket/steps/report.py +195 -0
  355. package/.agent-src/templates/scripts/implement_ticket/steps/test.py +180 -0
  356. package/.agent-src/templates/scripts/implement_ticket/steps/verify.py +170 -0
  357. package/.agent-src/templates/scripts/memory_hash.py +75 -0
  358. package/.agent-src/templates/scripts/memory_lookup.py +216 -0
  359. package/.agent-src/templates/scripts/memory_report.py +184 -0
  360. package/.agent-src/templates/scripts/memory_signal.py +167 -0
  361. package/.agent-src/templates/scripts/memory_status.py +156 -0
  362. package/.agent-src/templates/scripts/ownership-map.example.yml +87 -0
  363. package/.agent-src/templates/scripts/pr-risk-config.example.yml +76 -0
  364. package/.agent-src/templates/scripts/pr_review_routing.py +340 -0
  365. package/.agent-src/templates/scripts/pr_risk_review.py +211 -0
  366. package/.agent-src/templates/skill.md +136 -0
  367. package/.augment-plugin/marketplace.json +32 -0
  368. package/.augment-plugin/plugin.json +21 -0
  369. package/.claude-plugin/marketplace.json +119 -0
  370. package/AGENTS.md +121 -0
  371. package/CHANGELOG.md +279 -0
  372. package/CONTRIBUTING.md +176 -0
  373. package/LICENSE +21 -0
  374. package/README.md +357 -0
  375. package/bin/install.php +38 -0
  376. package/composer.json +29 -0
  377. package/config/agent-settings.template.yml +96 -0
  378. package/config/profiles/balanced.ini +10 -0
  379. package/config/profiles/full.ini +10 -0
  380. package/config/profiles/minimal.ini +10 -0
  381. package/docs/architecture.md +144 -0
  382. package/docs/customization.md +88 -0
  383. package/docs/development.md +171 -0
  384. package/docs/getting-started.md +130 -0
  385. package/docs/github-topics.md +84 -0
  386. package/docs/installation.md +376 -0
  387. package/docs/mcp.md +133 -0
  388. package/docs/quality.md +98 -0
  389. package/docs/skills-catalog.md +136 -0
  390. package/docs/troubleshooting.md +167 -0
  391. package/llms.txt +130 -0
  392. package/package.json +31 -0
  393. package/scripts/audit_skill_descriptions.py +168 -0
  394. package/scripts/check_compression.py +221 -0
  395. package/scripts/check_memory.py +341 -0
  396. package/scripts/check_memory_proposal.py +180 -0
  397. package/scripts/check_portability.py +320 -0
  398. package/scripts/check_proposal.py +269 -0
  399. package/scripts/check_references.py +400 -0
  400. package/scripts/ci_summary.py +131 -0
  401. package/scripts/compress.py +671 -0
  402. package/scripts/compress.sh +18 -0
  403. package/scripts/first-run.sh +109 -0
  404. package/scripts/generate_catalog.py +116 -0
  405. package/scripts/install +151 -0
  406. package/scripts/install-hooks.sh +29 -0
  407. package/scripts/install.py +487 -0
  408. package/scripts/install.sh +637 -0
  409. package/scripts/install_anthropic_key.sh +101 -0
  410. package/scripts/inventory_frontmatter.py +164 -0
  411. package/scripts/lint_marketplace.py +142 -0
  412. package/scripts/lint_regression.py +232 -0
  413. package/scripts/mcp_render.py +159 -0
  414. package/scripts/measure_patterns.py +376 -0
  415. package/scripts/memory_hash.py +75 -0
  416. package/scripts/memory_lookup.py +441 -0
  417. package/scripts/memory_report.py +336 -0
  418. package/scripts/memory_signal.py +210 -0
  419. package/scripts/memory_status.py +195 -0
  420. package/scripts/postinstall.sh +60 -0
  421. package/scripts/readme_linter.py +580 -0
  422. package/scripts/refine_ticket_detect.py +623 -0
  423. package/scripts/requirements-evals.txt +7 -0
  424. package/scripts/runtime_dispatcher.py +265 -0
  425. package/scripts/runtime_handler.py +148 -0
  426. package/scripts/runtime_registry.py +166 -0
  427. package/scripts/schemas/command.schema.json +32 -0
  428. package/scripts/schemas/persona.schema.json +42 -0
  429. package/scripts/schemas/rule.schema.json +28 -0
  430. package/scripts/schemas/skill.schema.json +73 -0
  431. package/scripts/setup.sh +230 -0
  432. package/scripts/setup_eval_venv.sh +58 -0
  433. package/scripts/skill_linter.py +2175 -0
  434. package/scripts/skill_trigger_eval.py +651 -0
  435. package/scripts/tool_registry.py +146 -0
  436. package/scripts/tools/__init__.py +1 -0
  437. package/scripts/tools/adapter_errors.py +63 -0
  438. package/scripts/tools/base_adapter.py +91 -0
  439. package/scripts/tools/github_adapter.py +128 -0
  440. package/scripts/tools/jira_adapter.py +115 -0
  441. package/scripts/update_counts.py +147 -0
  442. package/scripts/validate_frontmatter.py +424 -0
  443. package/templates/consumer-settings/README.md +46 -0
  444. package/templates/consumer-settings/augment-settings.json +12 -0
  445. package/templates/consumer-settings/claude-settings.json +9 -0
  446. package/templates/consumer-settings/copilot-settings.json +14 -0
@@ -0,0 +1,188 @@
1
+ ---
2
+ name: verify-before-complete
3
+ description: "Use when claiming 'done', suggesting a commit, push, or PR — runs the evidence gate so completion claims come from fresh output in this message, not memory or earlier runs."
4
+ source: package
5
+ ---
6
+
7
+ # verify-before-complete
8
+
9
+ ## When to use
10
+
11
+ * Just before claiming a task, feature, fix, or refactor is complete
12
+ * Just before proposing `/commit`, `/create-pr`, or pushing
13
+ * Before answering "is it ready?", "can I merge?", "does it work?"
14
+ * After a sequence of edits, when next step is reporting to the user
15
+ * Whenever "should work", "looks good", "probably fine" is about to
16
+ appear in a reply
17
+
18
+ Do NOT use when:
19
+
20
+ * Still actively editing — run targeted tests, not the full gate
21
+ * Pure documentation changes with no executable impact
22
+ * The user explicitly asks for a draft / exploration, not a final answer
23
+
24
+ ## Goal
25
+
26
+ Make every completion claim **traceable to captured output from this
27
+ message**. No claim survives unless the command that proves it was run
28
+ and its output was read inside the current turn.
29
+
30
+ ## The Iron Law
31
+
32
+ ```
33
+ NO COMPLETION CLAIMS WITHOUT FRESH EVIDENCE IN THIS MESSAGE.
34
+ ```
35
+
36
+ "I already ran it earlier in the conversation" does not count. Earlier
37
+ runs are stale the moment another edit lands.
38
+
39
+ ## Procedure
40
+
41
+ ### 1. Identify the claim you are about to make
42
+
43
+ Examples: *"all tests pass"*, *"ready for PR"*, *"refactor is done"*,
44
+ *"bug is fixed"*.
45
+
46
+ Each claim maps to a specific verification command. Write the mapping
47
+ before running anything:
48
+
49
+ | Claim | Evidence command |
50
+ |---|---|
51
+ | "tests pass" | full or targeted test suite |
52
+ | "no static errors" | PHPStan / TypeScript / mypy on changed scope |
53
+ | "style is clean" | ECS / Prettier / ESLint |
54
+ | "no automated refactor pending" | Rector --dry-run clean |
55
+ | "endpoint works" | curl / Postman / integration test output |
56
+ | "UI renders" | Playwright snapshot or manual browser check |
57
+ | "bug is fixed" | regression test passes |
58
+
59
+ ### 2. Run the command fresh
60
+
61
+ * Run against current working tree, not a cached summary.
62
+ * PHP projects inside Docker: run inside the container (see
63
+ [`docker`](../docker/SKILL.md) and [`tests-execute`](../tests-execute/SKILL.md)).
64
+ * Use targeted runs during iteration (`--filter=`, `--testNamePattern`).
65
+ Run full suite only in the final verification pass.
66
+
67
+ ### 3. Read the full output
68
+
69
+ * Check the exit code.
70
+ * Count failures, errors, warnings.
71
+ * Do not rely on the last line — scroll through the output for
72
+ deprecations, skipped tests, silent retries.
73
+
74
+ ### 4. Match output against the claim
75
+
76
+ Ask: *"Does this output actually support what I am about to say?"*
77
+
78
+ * 248/250 tests passed with 2 skipped → do not say "all green"; name the skips.
79
+ * PHPStan exit 0 but only analyzed one file → do not say "no static
80
+ errors"; name the scope that was checked.
81
+ * `curl` returned 200 → check the body, not just the status.
82
+
83
+ ### 5. Only then make the claim
84
+
85
+ Reference the evidence: *"Tests: 250/250 passed. PHPStan: level 8, 0
86
+ errors on `app/Services/`."* — not *"everything looks good"*.
87
+
88
+ ## The end-of-work sequence (PHP projects)
89
+
90
+ When all code changes are done and ready to report completion:
91
+
92
+ 1. **Targeted tests** — test(s) covering the changed code pass
93
+ 2. **Full test suite** — only after targeted pass is green
94
+ 3. **PHPStan** → **Rector --dry-run** → **ECS** → **PHPStan** (second pass
95
+ catches issues Rector / ECS introduced)
96
+ 4. Fix any output from steps 1–3 and restart the sequence
97
+ 5. Only then: claim completion or suggest `/commit`, push, or PR
98
+
99
+ Do not run the full quality pipeline between intermediate edits — burns
100
+ time and tokens. Use it once, at the end.
101
+
102
+ See [`quality-tools`](../quality-tools/SKILL.md) for exact commands per
103
+ tool.
104
+
105
+ ## Minimum evidence per task type
106
+
107
+ | Task type | Required evidence |
108
+ |---|---|
109
+ | Code change (logic) | Targeted tests + PHPStan on changed scope |
110
+ | New feature | Tests (new + suite) + PHPStan + smoke check (curl/UI) |
111
+ | Bug fix | Regression test (RED → GREEN) + full suite |
112
+ | Refactoring | Full suite + PHPStan + Rector dry-run |
113
+ | Config / env change | Relevant command or service output (not just file diff) |
114
+ | Migration | Migration run output + rollback dry-run + tests |
115
+ | API endpoint | HTTP response body + status + content-type |
116
+ | Frontend component | Rendered state (Playwright or manual) + unit tests |
117
+ | Documentation only | No verification needed |
118
+
119
+ **Never accept** as proof: "should work", "looks correct", "the logic
120
+ is sound", "compiles" (unless compilation itself is the contract).
121
+
122
+ ## Output format
123
+
124
+ When reporting completion to the user:
125
+
126
+ 1. **What was changed** — one line summary per changed file / component
127
+ 2. **Verification run** — exact command and its exit code
128
+ 3. **Result** — numeric breakdown (tests passed/failed/skipped, errors,
129
+ warnings)
130
+ 4. **Caveats** — anything the output flagged but you chose to accept
131
+ 5. **Next step** — e.g. "Ready for `/commit`" or "Awaiting review"
132
+
133
+ ## Gotchas
134
+
135
+ * "No output" from a linter is not proof it ran — check exit code and
136
+ analyzed-file count.
137
+ * Silencing a warning with `@phpstan-ignore-next-line` or `// @ts-expect-error`
138
+ without a reason code passes the linter but defers the real problem.
139
+ * Running tests with `--stop-on-failure` then reporting "passed" — only
140
+ ran until the first failure; the green streak after is unexamined.
141
+ * Cached static-analysis results (`--cache` directories) can report
142
+ clean after you broke something; clear the cache for large changes.
143
+ * Running the test suite on the wrong branch (forgot to switch or
144
+ rebase) — verify `git status` and `git log -1` before the final gate.
145
+ * A previously green PHPStan run in the same conversation is stale as
146
+ soon as any edit lands. Run it again.
147
+
148
+ ## Red flags — STOP and run the gate
149
+
150
+ * About to write "done", "ready", "works", "passes" without a
151
+ command-output reference in the same message
152
+ * About to suggest `/commit` / push / PR without a verification block
153
+ * Relying on an earlier-in-conversation test run
154
+ * Partial evidence (tests green, PHPStan not run — or vice versa)
155
+ * "The failing test is unrelated, let me skip it" — verify first, then
156
+ decide
157
+ * Reporting a green run by paraphrasing instead of quoting exit code
158
+ and counts
159
+
160
+ ## Do NOT
161
+
162
+ * Do NOT claim completion without running the mapping command in this
163
+ message
164
+ * Do NOT trust a summary written earlier in the conversation
165
+ * Do NOT suppress warnings or skip tests to pass the gate
166
+ * Do NOT report only the last line of output — read the whole thing
167
+ * Do NOT run the full quality pipeline between intermediate edits —
168
+ run once at the end
169
+
170
+ ## When to hand over to another skill
171
+
172
+ * Exact PHPStan / Rector / ECS commands → [`quality-tools`](../quality-tools/SKILL.md)
173
+ * Running tests inside Docker → [`tests-execute`](../tests-execute/SKILL.md)
174
+ * Writing the regression test the gate requires →
175
+ [`test-driven-development`](../test-driven-development/SKILL.md)
176
+ * Diagnosing why the gate failed → [`systematic-debugging`](../systematic-debugging/SKILL.md)
177
+ * Committing once the gate is green → [`git-workflow`](../git-workflow/SKILL.md)
178
+
179
+ ## Validation checklist
180
+
181
+ Before sending a completion message:
182
+
183
+ * [ ] Every claim maps to a command run in this turn
184
+ * [ ] Exit code of each command is read and matches the claim
185
+ * [ ] Output is quoted with numeric counts, not paraphrased
186
+ * [ ] No warnings or skips are hidden
187
+ * [ ] Targeted tests green → full suite green → quality pipeline clean
188
+ * [ ] `git status` reflects only the intended change set
@@ -0,0 +1,75 @@
1
+ ---
2
+ name: websocket
3
+ description: "Use when building real-time features — WebSocket broadcasting, live updates, presence channels, connection state — even when the user just says 'push this to the client live'."
4
+ source: package
5
+ ---
6
+
7
+ # websocket
8
+
9
+ ## When to use
10
+
11
+ Use when implementing real-time features — WebSockets, Broadcasting, or persistent connections.
12
+
13
+ Do NOT use when:
14
+ - REST API endpoints (use `api-design` skill)
15
+ - Reverb server setup/deployment (use `laravel-reverb` skill)
16
+
17
+ ## Procedure: Create a broadcast event
18
+
19
+ ### Step 0: Inspect
20
+
21
+ 1. Check `config/broadcasting.php` for driver (Reverb, Pusher, Ably).
22
+ 2. Check existing broadcast events — match patterns.
23
+ 3. Check `routes/channels.php` for channel authorization.
24
+
25
+ ### Step 1: Create event class
26
+
27
+ 1. Implement `ShouldBroadcast`.
28
+ 2. Define `broadcastOn()` with appropriate channel type (public/private/presence).
29
+ 3. Define `broadcastAs()` for event name.
30
+ 4. Define `broadcastWith()` — small payload (IDs + changed fields only).
31
+
32
+ ### Step 2: Authorize channel
33
+
34
+ Add authorization in `routes/channels.php` for private/presence channels.
35
+
36
+ ### Step 3: Client setup
37
+
38
+ Use Laravel Echo to listen on the channel. Wire up reconnection with exponential backoff.
39
+
40
+ ## Conventions
41
+
42
+ → See guideline `php/websocket.md` for broadcasting setup, channel types, connection management, Echo.
43
+
44
+ ### Validate
45
+
46
+ - Verify private/presence channels have authorization in `routes/channels.php`.
47
+ - Confirm event implements `ShouldBroadcast` (or `ShouldBroadcastNow`).
48
+ - Check that no sensitive data is broadcast on public channels.
49
+ - Test client receives event — use browser console or Echo debug mode.
50
+
51
+ ## Output format
52
+
53
+ 1. Event class with broadcastOn() and channel definitions
54
+ 2. Client-side listener integration code
55
+
56
+ ## Gotcha
57
+
58
+ - Connections are stateful — don't assume they persist after page navigation.
59
+ - Always implement reconnection with exponential backoff.
60
+ - Don't broadcast sensitive data on public channels — use private/presence.
61
+
62
+ ## Do NOT
63
+
64
+ - Do NOT send entire model objects — select only needed fields.
65
+ - Do NOT skip channel authorization for user-specific data.
66
+ - Do NOT rely on WebSocket delivery — use acknowledgments for critical messages.
67
+
68
+ ## Auto-trigger keywords
69
+
70
+ - WebSocket
71
+ - real-time
72
+ - broadcasting
73
+ - Laravel Echo
74
+ - channel authorization
75
+ - ShouldBroadcast
@@ -0,0 +1,146 @@
1
+ # {{project_name}}
2
+
3
+ <!--
4
+ AGENTS.md — entry point for AI coding agents working on this project.
5
+
6
+ This file was installed by `event4u/agent-config` as a starting template.
7
+ Fill in the placeholders below (or run `/copilot-agents-init` to do it
8
+ interactively) and then delete this HTML comment.
9
+
10
+ Keep it short. Detailed conventions belong in `.augment/` (read-only from
11
+ the shared package) or in `agents/overrides/` (project-specific).
12
+ -->
13
+
14
+ {{project_description}}
15
+
16
+ ## Agent Infrastructure
17
+
18
+ | Layer | Location | Purpose |
19
+ |---|---|---|
20
+ | **Shared package** | `.augment/` | Skills, rules, commands, guidelines, templates — read-only |
21
+ | **Project overrides** | `agents/overrides/` | Customizations of shared resources |
22
+ | **Project docs** | `agents/` | Architecture, features, roadmaps, sessions, contexts |
23
+ | **Agent settings** | `.agent-settings.yml` | Project-specific config consumed by skills (YAML) |
24
+
25
+ ### Key References
26
+
27
+ | What | Where |
28
+ |---|---|
29
+ | Behavior rules (always active) | `.augment/rules/` |
30
+ | Coding guidelines | `.augment/guidelines/` |
31
+ | Skills (on-demand expertise) | `.augment/skills/` |
32
+ | Commands (workflows) | `.augment/commands/` |
33
+ | Copilot instructions | `.github/copilot-instructions.md` |
34
+
35
+ ### Recommended entry flow
36
+
37
+ For most tickets — feature, bug fix, or refactor — start with
38
+ [`/implement-ticket`](.augment/commands/implement-ticket.md). It drives the
39
+ linear flow `refine → memory → analyze → plan → implement → test → verify →
40
+ report` with block-on-ambiguity semantics and no auto-git. Persona comes from
41
+ `.agent-settings.yml` (`roles.active_role`). Use `/commit` and `/create-pr`
42
+ explicitly after the delivery report.
43
+
44
+ ### Multi-Agent Support
45
+
46
+ | Tool | Rules | Skills | How |
47
+ |---|---|---|---|
48
+ | **Augment Code** | `.augment/rules/` | `.augment/skills/` | Native (source) |
49
+ | **Claude Code** | `.claude/rules/` | `.claude/skills/` | Symlinks + Agent Skills standard |
50
+ | **Cursor** | `.cursor/rules/` | — | Symlinks |
51
+ | **Cline** | `.clinerules/` | — | Symlinks |
52
+ | **Windsurf** | `.windsurfrules` | — | Concatenated file |
53
+ | **Gemini CLI** | `GEMINI.md` | — | Symlink → AGENTS.md |
54
+
55
+ Regenerate: `task generate-tools` · Clean: `task clean-tools`
56
+ (Requires the `task` binary; see https://taskfile.dev if missing.)
57
+
58
+ ---
59
+
60
+ ## Tech Stack
61
+
62
+ <!-- Replace with your actual stack. Examples:
63
+ - Framework: Laravel 11 (PHP ^8.2) / Next.js 15 / Rails 7 / Django 5
64
+ - Database: PostgreSQL / MySQL / MariaDB / SQLite
65
+ - Queue: Redis / RabbitMQ / SQS
66
+ - Testing: Pest / PHPUnit / Jest / Vitest / pytest
67
+ - Code style / linters: ECS / PHPStan / Ruff / ESLint
68
+ -->
69
+
70
+ - **Language:** {{primary_language}}
71
+ - **Framework:** {{framework}}
72
+ - **Database:** {{database}}
73
+ - **Testing:** {{test_framework}}
74
+ - **Code style:** {{code_style_tool}}
75
+
76
+ ---
77
+
78
+ ## Development Setup
79
+
80
+ <!-- Replace with your project's actual setup commands. Examples:
81
+ - `make start` / `make console` / `make test`
82
+ - `docker compose up` / `docker compose exec app bash`
83
+ - `npm run dev` / `npm test`
84
+ - `php artisan serve` / `php artisan test`
85
+ -->
86
+
87
+ ```bash
88
+ {{dev_start_command}}
89
+ {{dev_test_command}}
90
+ ```
91
+
92
+ ### Environment files
93
+
94
+ | File | Purpose |
95
+ |---|---|
96
+ | `.env` | Main environment |
97
+ | `.env.local` | Local overrides |
98
+ | `.env.testing` | Testing environment |
99
+
100
+ ---
101
+
102
+ ## Project Structure
103
+
104
+ <!-- Document your directory conventions:
105
+ - Where new features go
106
+ - Module/component boundaries
107
+ - Namespace conventions
108
+ -->
109
+
110
+ {{project_structure_notes}}
111
+
112
+ ---
113
+
114
+ ## Testing
115
+
116
+ <!-- Document:
117
+ - Test framework and its quirks
118
+ - How to run all tests / targeted tests
119
+ - Test data strategy (seeders, factories, fixtures)
120
+ - Performance-critical tests or suites
121
+ -->
122
+
123
+ {{testing_notes}}
124
+
125
+ ---
126
+
127
+ ## Quality Tools
128
+
129
+ <!-- Document:
130
+ - Which linters/formatters run
131
+ - Whether they auto-fix or report only
132
+ - CI enforcement level
133
+ -->
134
+
135
+ {{quality_tools_notes}}
136
+
137
+ ---
138
+
139
+ ## Additional Documentation
140
+
141
+ | Document | Topic |
142
+ |---|---|
143
+ | `.github/copilot-instructions.md` | Coding standards for GitHub Copilot (self-contained) |
144
+ | `agents/` | Project-specific architecture docs and roadmaps |
145
+ | `.augment/contexts/` | Shared cross-cutting concepts from the package |
146
+ | `.agent-settings.yml` | Project-specific agent configuration (YAML) |
@@ -0,0 +1,256 @@
1
+ # Agent Settings Template
2
+
3
+ User-specific agent settings stored in `.agent-settings.yml` (project root,
4
+ git-ignored). This file is **not committed** — each developer has their own
5
+ settings.
6
+
7
+ ## File format
8
+
9
+ **YAML**, with a single top-level scalar (`cost_profile`) plus one level of
10
+ grouped sections (`personal`, `project`, `github`, `eloquent`, `pipelines`,
11
+ `subagents`). Comments with `#`.
12
+
13
+ Keep the format regular — 2-space indent, no tabs, no lists, one nesting
14
+ level only. The installer's YAML handler is a restricted stdlib parser, not
15
+ a full YAML engine. Run `/config-agent-settings` to normalize after manual
16
+ edits.
17
+
18
+ ### Migration from the legacy `.agent-settings` (key=value)
19
+
20
+ If a project still has the old flat `.agent-settings` file, the next run of
21
+ `scripts/install` migrates it automatically:
22
+
23
+ 1. Reads `.agent-settings` (key=value)
24
+ 2. Maps each key into its new nested path (see Rename-Map below)
25
+ 3. Writes `.agent-settings.yml` (YAML with sections)
26
+ 4. Leaves a one-shot backup `.agent-settings.backup.key-value`
27
+ 5. Deletes the old `.agent-settings`
28
+
29
+ The migration runs exactly once. On subsequent runs the YAML file already
30
+ exists and is the source of truth.
31
+
32
+ ## Template
33
+
34
+ This block defines the personal and project-level settings that
35
+ `/config-agent-settings` (and `bin/install.php` via
36
+ `config/agent-settings.template.yml`) writes to `.agent-settings.yml`.
37
+
38
+ ```yaml
39
+ # Agent Settings
40
+ # This file is git-ignored. Each developer has their own settings.
41
+ # Run /config-agent-settings to create or update this file.
42
+
43
+ # --- Cost profile ---
44
+ #
45
+ # Controls which agent surfaces are active. See `docs/customization.md` for
46
+ # the authoritative description.
47
+ #
48
+ # minimal = rules, skills, and commands only (zero extra surface, default)
49
+ # balanced = + runtime dispatcher for skills that declare a shell command
50
+ # full = + tool adapters (GitHub / Jira, read-only, opt-in)
51
+ # custom = ignore profile — every matrix value must be set explicitly
52
+ cost_profile: minimal
53
+
54
+ # --- Personal preferences ---
55
+ personal:
56
+ # IDE to use for opening files (code, phpstorm, cursor)
57
+ ide: ""
58
+
59
+ # Automatically open edited files in the IDE (true, false)
60
+ open_edited_files: false
61
+
62
+ # User's first name — used to address the user personally
63
+ user_name: ""
64
+
65
+ # rtk (Rust Token Killer) installed for output filtering (true, false)
66
+ # Agent will auto-detect and ask once, then store the result
67
+ rtk_installed: false
68
+
69
+ # Minimal output mode (true, false)
70
+ # true = short bullet points during work, concise summary at the end
71
+ # false = verbose explanations and reasoning
72
+ minimal_output: true
73
+
74
+ # Play-by-play mode (true, false)
75
+ # true = briefly share intermediate findings as you go
76
+ # false = silently investigate, only report the conclusion
77
+ play_by_play: false
78
+
79
+ # --- Project / team preferences ---
80
+ project:
81
+ # Prefix PR comment replies with a bot icon 🤖 (true, false)
82
+ pr_comment_bot_icon: false
83
+
84
+ # Path to the PR template file (relative to project root)
85
+ pr_template: .github/pull_request_template.md
86
+
87
+ # Target repository for universal improvement PRs (e.g. org/agent-config)
88
+ upstream_repo: ""
89
+
90
+ # Branch prefix for improvement PRs
91
+ improvement_pr_branch_prefix: "improve/agent-"
92
+
93
+ # --- GitHub integration ---
94
+ github:
95
+ # API method for replying to PR review comments
96
+ # replies_endpoint = POST /pulls/comments/{id}/replies (preferred)
97
+ # create_review_comment = POST /pulls/{number}/reviews (fallback)
98
+ # auto = detect on first use and update this setting
99
+ pr_reply_method: create_review_comment
100
+
101
+ # --- Eloquent (Laravel) ---
102
+ eloquent:
103
+ # Model property access style
104
+ # getters_setters = strict typed getters/setters, getAttribute() only inside model
105
+ # get_attribute = use getAttribute()/setAttribute() everywhere
106
+ # magic_properties = use $model->column_name (Laravel default)
107
+ access_style: getters_setters
108
+
109
+ # --- Optional pipelines ---
110
+ pipelines:
111
+ # Skill improvement pipeline (true, false)
112
+ # true = after meaningful tasks, propose learning capture and improvements
113
+ # false = silent, no post-task analysis
114
+ skill_improvement: false
115
+
116
+ # --- Subagent orchestration ---
117
+ subagents:
118
+ # Model for implementer subagents (empty = same tier as the session model)
119
+ implementer_model: ""
120
+
121
+ # Model for judge subagents
122
+ # (empty = one tier above implementer: opus if sonnet, sonnet if haiku)
123
+ judge_model: ""
124
+
125
+ # Maximum number of parallel subagent invocations (integer, default 3)
126
+ # Set to 1 to serialize. Hard cap enforced by runtime.
127
+ max_parallel: 3
128
+
129
+ # --- Role modes (see guidelines/agent-infra/role-contracts.md) ---
130
+ roles:
131
+ # Role the agent defaults to at the start of a session.
132
+ # Allowed: "" (no default), developer, reviewer, tester, po, incident, planner
133
+ default_role: ""
134
+
135
+ # Role currently active. Set by /mode <name>; cleared by /mode none.
136
+ # The rule `role-mode-adherence` (auto-triggered when non-empty)
137
+ # requires every closing output to match the mode's contract.
138
+ active_role: ""
139
+
140
+ # --- Personas (developer-local override of team default lens) ---
141
+ #
142
+ # Personas are reusable review lenses (see .augment/personas/README.md).
143
+ # The team default cast lives in `.agent-project-settings.yml` under
144
+ # `personas.default`. This block lets a developer narrow or widen the
145
+ # local cast without touching the team file. Ignored if the project
146
+ # locks `personas.default` via `locked_keys`.
147
+ personas:
148
+ # Override the effective default cast for THIS developer. Empty =
149
+ # inherit team default. Provide a full list (not a diff) to replace
150
+ # the team cast entirely for local runs.
151
+ override: []
152
+
153
+ # Drop specific persona ids from the default cast without replacing
154
+ # the whole list. Ignored personas stay invokable explicitly via
155
+ # `--personas=<id>`. Mirrors `.augmentignore` semantics.
156
+ ignore: []
157
+ ```
158
+
159
+ ## Settings Reference
160
+
161
+ Personal and project-level settings (written by `/config-agent-settings` and
162
+ `bin/install.php`). **Key paths use dot-notation** to denote nesting:
163
+ `personal.user_name` lives under `personal:` in YAML.
164
+
165
+ | Key path | Values | Default | Description |
166
+ |---|---|---|---|
167
+ | `cost_profile` | `minimal`, `balanced`, `full`, `custom` | `minimal` | Selects which agent surfaces are active. See [Cost profiles](#cost-profiles). |
168
+ | `personal.ide` | `code`, `phpstorm`, `cursor` | _(empty)_ | CLI command to open files in the IDE |
169
+ | `personal.open_edited_files` | `true`, `false` | `false` | Auto-open edited files in the IDE after edits |
170
+ | `personal.user_name` | first name | _(empty)_ | User's first name. Agent asks on first interaction if empty, then addresses user by name. |
171
+ | `personal.rtk_installed` | `true`, `false` | `false` | Whether rtk (Rust Token Killer) is installed. Agent auto-detects once and stores the result. |
172
+ | `personal.minimal_output` | `true`, `false` | `true` | When `true`: short bullet points during work, concise summary at end. When `false`: verbose explanations. |
173
+ | `personal.play_by_play` | `true`, `false` | `false` | When `true`: share intermediate findings during investigation. When `false`: work silently, report only the conclusion. |
174
+ | `project.pr_comment_bot_icon` | `true`, `false` | `false` | Prefix PR comment replies with 🤖 to indicate bot-authored replies |
175
+ | `project.pr_template` | file path | `.github/pull_request_template.md` | Path to PR template file. Read this instead of searching for it. |
176
+ | `project.upstream_repo` | `org/repo` | _(empty)_ | Target repository for universal improvement PRs (e.g., `org/agent-config`). |
177
+ | `project.improvement_pr_branch_prefix` | string | `improve/agent-` | Branch prefix for agent improvement PRs. |
178
+ | `github.pr_reply_method` | `replies_endpoint`, `create_review_comment`, `auto` | `create_review_comment` | GitHub API method for replying to PR review comments. `auto` detects on first use. |
179
+ | `eloquent.access_style` | `getters_setters`, `get_attribute`, `magic_properties` | `getters_setters` | How to access Eloquent model attributes. See `eloquent` skill for details. |
180
+ | `pipelines.skill_improvement` | `true`, `false` | `false` | When `true`: propose learning capture after meaningful tasks. When `false`: silent. |
181
+ | `subagents.implementer_model` | model alias or empty | _(empty)_ | Model for implementer subagents. Empty = same tier as session model. See [subagent-configuration](../contexts/subagent-configuration.md). |
182
+ | `subagents.judge_model` | model alias or empty | _(empty)_ | Model for judge subagents. Empty = one tier above implementer (opus if sonnet, sonnet if haiku). |
183
+ | `subagents.max_parallel` | integer | `3` | Maximum parallel subagent invocations. `1` serializes. |
184
+ | `roles.default_role` | `""`, `developer`, `reviewer`, `tester`, `po`, `incident`, `planner` | _(empty)_ | Role the agent defaults to at the start of a session. See [`role-contracts`](../guidelines/agent-infra/role-contracts.md). |
185
+ | `roles.active_role` | same as `default_role` | _(empty)_ | Role currently active; set by `/mode <name>`, cleared by `/mode none`. Enables the `role-mode-adherence` rule. |
186
+ | `personas.override` | list of persona ids | `[]` | Developer-local override of the team default lens cast. Empty = inherit `personas.default` from `.agent-project-settings.yml`. See [`layered-settings`](../guidelines/agent-infra/layered-settings.md). |
187
+ | `personas.ignore` | list of persona ids | `[]` | Persona ids dropped from the default cast locally. Ignored personas stay invokable via `--personas=<id>`. |
188
+
189
+ ### Rename-Map (migration)
190
+
191
+ Applied automatically when `scripts/install` finds a legacy `.agent-settings`
192
+ (key=value) and writes the new `.agent-settings.yml`:
193
+
194
+ | Legacy flat key | New YAML path |
195
+ |---|---|
196
+ | `cost_profile` | `cost_profile` |
197
+ | `ide` | `personal.ide` |
198
+ | `open_edited_files` | `personal.open_edited_files` |
199
+ | `user_name` | `personal.user_name` |
200
+ | `rtk_installed` | `personal.rtk_installed` |
201
+ | `minimal_output` | `personal.minimal_output` |
202
+ | `play_by_play` | `personal.play_by_play` |
203
+ | `pr_comment_bot_icon` | `project.pr_comment_bot_icon` |
204
+ | `pr_template` | `project.pr_template` |
205
+ | `upstream_repo` | `project.upstream_repo` |
206
+ | `improvement_pr_branch_prefix` | `project.improvement_pr_branch_prefix` |
207
+ | `github_pr_reply_method` | `github.pr_reply_method` |
208
+ | `eloquent_access_style` | `eloquent.access_style` |
209
+ | `skill_improvement_pipeline` | `pipelines.skill_improvement` |
210
+ | `subagent_implementer_model` | `subagents.implementer_model` |
211
+ | `subagent_judge_model` | `subagents.judge_model` |
212
+ | `subagent_max_parallel` | `subagents.max_parallel` |
213
+
214
+ Unknown keys in the legacy file are preserved under a `_legacy:` section
215
+ so nothing is silently dropped; the migration log points them out.
216
+
217
+ ## Cost profiles
218
+
219
+ The `cost_profile` setting selects which agent surfaces are active. See
220
+ `docs/customization.md` for the authoritative description.
221
+
222
+ | Profile | Description |
223
+ |---|---|
224
+ | `minimal` | Rules, skills, and commands only. Zero extra surface. Default. |
225
+ | `balanced` | + Runtime dispatcher for skills that declare a shell command. |
226
+ | `full` | + Tool adapters (GitHub / Jira, read-only, opt-in). |
227
+ | `custom` | Ignore profile — every matrix value must be set explicitly. |
228
+
229
+ The only cross-profile toggle written to `.agent-settings.yml` today is
230
+ `pipelines.skill_improvement`. Other per-feature toggles may be added in
231
+ future releases; when they land, they ship with a live consumer in code
232
+ and get documented here, not before.
233
+
234
+ ## Sync rules
235
+
236
+ When new settings are added to this template:
237
+
238
+ 1. The `/config-agent-settings` command detects missing keys (dot-paths) in
239
+ the user's `.agent-settings.yml`.
240
+ 2. Missing keys are added with their **default value** from this template,
241
+ inside the correct section.
242
+ 3. Existing keys keep their **current value** — never overwritten.
243
+ 4. The **order** of keys follows this template — existing values are
244
+ reordered to match.
245
+ 5. Comments from the template are preserved in the output.
246
+
247
+ ## Adding new settings
248
+
249
+ When adding a new setting:
250
+
251
+ 1. Add the key with its default value to the template block above, inside
252
+ the right section (or create a new section if it is a new domain).
253
+ 2. Add a row to the Settings Reference table using the full dot-path.
254
+ 3. Update the relevant skill or command that reads this setting.
255
+ 4. The next time `/config-agent-settings` runs, it will add the new key
256
+ automatically.
@@ -0,0 +1,16 @@
1
+ # Agent memory — append-only JSONL, union-merged.
2
+ # Append this block to the consumer project's root .gitattributes.
3
+ # See: agents/roadmaps/road-to-memory-merge-safety.md
4
+
5
+ # Intake layer — agent-written, append-only. Union merge concats both
6
+ # sides on conflict instead of failing. Reader deduplicates by id.
7
+ agents/memory/intake/*.jsonl merge=union eol=lf
8
+
9
+ # Curated memory — content-addressed drop-ins. One file per entry.
10
+ # Normal merge is fine; filename collisions are content-identity.
11
+ agents/memory/ownership/*.yml text eol=lf
12
+ agents/memory/historical-patterns/*.yml text eol=lf
13
+ agents/memory/domain-invariants/*.yml text eol=lf
14
+ agents/memory/architecture-decisions/*.yml text eol=lf
15
+ agents/memory/incident-learnings/*.yml text eol=lf
16
+ agents/memory/product-rules/*.yml text eol=lf