@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,115 @@
1
+ ---
2
+ name: threat-model
3
+ skills: [threat-modeling, authz-review, security-sensitive-stop]
4
+ description: Run a pre-implementation threat model on a proposed change — enumerates abuse cases, trust boundaries, and authorization gaps before the first line of code is written
5
+ disable-model-invocation: true
6
+ ---
7
+
8
+ # threat-model
9
+
10
+ ## Instructions
11
+
12
+ Produce a structured threat model for the proposed change **before any code
13
+ is written**. Dispatches to [`threat-modeling`](../skills/threat-modeling/SKILL.md)
14
+ for abuse-case and trust-boundary analysis, and to
15
+ [`authz-review`](../skills/authz-review/SKILL.md) whenever the change touches
16
+ authorization, tenancy, or identity.
17
+
18
+ ### 1. Gather the context
19
+
20
+ Collect, from the user or from the current branch:
21
+
22
+ - **Change description** — what is being added or modified, in plain language
23
+ - **Entry points** — routes, commands, queue handlers, webhooks that receive
24
+ the input
25
+ - **Data touched** — tables, columns, storage, external APIs that are read
26
+ or written
27
+ - **Actor** — who invokes this (authenticated user, tenant-scoped user, admin,
28
+ anonymous, service account, cron)
29
+
30
+ If any of the four is missing, **ask the user** — do not guess. A threat model
31
+ built on assumed context is worse than no threat model.
32
+
33
+ ### 2. Decide which skills to dispatch
34
+
35
+ | Change touches | Skills to run |
36
+ |---|---|
37
+ | Any new or modified surface (default) | [`threat-modeling`](../skills/threat-modeling/SKILL.md) |
38
+ | Permission checks, tenancy, ownership, role logic | + [`authz-review`](../skills/authz-review/SKILL.md) |
39
+ | Secrets, tokens, credentials, signing keys | + [`security-audit`](../skills/security-audit/SKILL.md) |
40
+
41
+ `threat-modeling` is always mandatory. `authz-review` is mandatory when the
42
+ change crosses an authorization boundary — when in doubt, run it.
43
+
44
+ ### 3. Dispatch mode
45
+
46
+ - **Sequential** (default) — `threat-modeling` first, then `authz-review` if
47
+ applicable. The authz findings often reference abuse cases from step 1.
48
+ - **Parallel** — allowed only if `subagents.max_parallel` ≥ 2 in
49
+ `.agent-settings.yml` and both skills are available as subagents. Merge their
50
+ reports in step 4.
51
+
52
+ Each skill produces its own structured output (abuse-case table, trust
53
+ boundary list, authorization matrix). Do not rewrite those blocks — pass
54
+ them through verbatim.
55
+
56
+ ### 4. Consolidate
57
+
58
+ Produce one combined report with these sections, in order:
59
+
60
+ 1. **Change summary** — the four context items from step 1, restated as the
61
+ agent understood them
62
+ 2. **Abuse cases** — from `threat-modeling`, severity-sorted (🔴 → 🟡 → 🟢)
63
+ 3. **Trust boundaries** — entry points and what is trusted vs. untrusted at
64
+ each one
65
+ 4. **Authorization findings** — from `authz-review` if it ran, else a single
66
+ line: `authz-review skipped — change does not cross an authorization boundary`
67
+ 5. **Required controls** — the minimum set of validations, authorization
68
+ checks, logging, and negative tests that must exist before the change ships
69
+ 6. **Open questions** — anything the skills flagged as uncertain and the user
70
+ must answer before implementation starts
71
+
72
+ ### 5. Decide next step
73
+
74
+ After the report, ask:
75
+
76
+ ```
77
+ > 1. Looks right — proceed to implementation against this threat model
78
+ > 2. Something is wrong or missing — I'll revise the context and re-run
79
+ > 3. Stop here — threat model is the deliverable, no implementation yet
80
+ ```
81
+
82
+ - On **1**: hand off to the implementation flow (e.g., `feature-plan`,
83
+ `bug-fix`, or direct edit) with the required-controls list pinned
84
+ - On **2**: re-gather context and re-dispatch
85
+ - On **3**: save the report as the deliverable, stop
86
+
87
+ ## Use this command when
88
+
89
+ - Starting a feature that touches authentication, authorization, tenancy,
90
+ secrets, external input, or sensitive data
91
+ - The [`security-sensitive-stop`](../rules/security-sensitive-stop.md) rule
92
+ fired and the user asks for the structured analysis
93
+ - A PR reviewer asks for a threat model as a prerequisite
94
+ - Before a change to a trust boundary (API endpoint, webhook, queue consumer,
95
+ middleware, policy)
96
+
97
+ ## Do NOT
98
+
99
+ - NEVER skip `threat-modeling` — it is the entrypoint, not optional
100
+ - NEVER produce a threat model on guessed context — ask for the four items
101
+ in step 1 if any is missing
102
+ - NEVER merge `threat-modeling` and `authz-review` outputs into a single
103
+ block — each skill owns its format
104
+ - NEVER write production code in the same turn as this command — the
105
+ deliverable is the report; implementation is a separate step
106
+ - NEVER mark the change "safe" if any 🔴 abuse case has no control
107
+
108
+ ## See also
109
+
110
+ - [`threat-modeling`](../skills/threat-modeling/SKILL.md) — abuse cases, trust boundaries
111
+ - [`authz-review`](../skills/authz-review/SKILL.md) — end-to-end authorization analysis
112
+ - [`data-flow-mapper`](../skills/data-flow-mapper/SKILL.md) — trace specific data through the change
113
+ - [`blast-radius-analyzer`](../skills/blast-radius-analyzer/SKILL.md) — enumerate affected call sites
114
+ - [`security-sensitive-stop`](../rules/security-sensitive-stop.md) — the trigger rule
115
+ - [`minimal-safe-diff`](../rules/minimal-safe-diff.md) — keep the implementation scoped
@@ -0,0 +1,189 @@
1
+ ---
2
+ name: update-form-request-messages
3
+ skills: [laravel-validation]
4
+ description: Sync the messages() method of a FormRequest class — add missing entries, link them to language keys, and clean up stale ones
5
+ disable-model-invocation: true
6
+ ---
7
+
8
+ # update-form-request-messages
9
+
10
+ ## Trigger
11
+
12
+ `/update-form-request-messages [ClassName or file path]`
13
+
14
+ ---
15
+
16
+ ## Step 1: Resolve the FormRequest class
17
+
18
+ **If the user attached a file or mentioned a class name explicitly** → use it.
19
+
20
+ **Otherwise, ask:**
21
+
22
+ > Which FormRequest class should I update?
23
+ > Please provide the class name (e.g. `UpdateSuperUserRequest`), its namespace, or the file path.
24
+
25
+ Once provided, locate the file:
26
+ - Try `codebase-retrieval` or a `find` command to resolve the file path.
27
+ - If multiple matches exist, list them and ask the user to pick one (numbered options).
28
+ - If no match is found, tell the user and stop.
29
+
30
+ Read the full file content.
31
+
32
+ ---
33
+
34
+ ## Step 2: Check for rules()
35
+
36
+ Scan the file for a `rules()` method.
37
+
38
+ - **If no `rules()` method exists** → inform the user:
39
+
40
+ > ⚠️ No `rules()` method found in `{ClassName}`. Nothing was changed.
41
+
42
+ Stop here.
43
+
44
+ ---
45
+
46
+ ## Step 3: Parse rules()
47
+
48
+ Extract every `field → rules` pair from the `rules()` array.
49
+
50
+ For each field, collect all rules and resolve their **rule names**:
51
+
52
+ | Rule type | Example | Extracted name |
53
+ |---|---|---|
54
+ | String rule | `'required'` | `required` |
55
+ | String rule with arg | `'max:250'` | `max` |
56
+ | `Rule::` static call | `Rule::unique(...)` | `unique` |
57
+ | `Rule::` static call | `Rule::exists(...)` | `exists` |
58
+ | New object instance | `new Enum(...)` | `enum` (class basename, lowercased) |
59
+ | Closure / `fn()` | `function(...) {}` | **skip** — closures call `$fail()` themselves |
60
+
61
+ **Also skip these modifier rules** that never produce validation errors:
62
+ `nullable`, `sometimes`, `bail`
63
+
64
+ Build a flat list of `(field, rule_name)` pairs:
65
+ e.g. `[('username', 'required'), ('username', 'string'), ('username', 'unique'), ...]`
66
+
67
+ ---
68
+
69
+ ## Step 4: Determine the language key domain prefix
70
+
71
+ Derive the domain prefix from the class name:
72
+ 1. Strip common verb prefixes: `Create`, `Update`, `Delete`, `List`, `Get`, `Send`, `Show`, `Store`, `Filter`, `Index`
73
+ 2. Strip the `Request` suffix
74
+ 3. Convert to `snake_case`
75
+
76
+ Example: `UpdateSuperUserRequest` → `SuperUser` → `super_user`
77
+
78
+ Present the result and ask to confirm:
79
+
80
+ > The language key prefix will be `{derived_prefix}` (e.g. `validation.{derived_prefix}.field.rule`).
81
+ > 1. Use `{derived_prefix}` ✓
82
+ > 2. Enter a different prefix
83
+
84
+ Wait for confirmation before continuing.
85
+
86
+ ---
87
+
88
+ ## Step 5: Build the required message entries
89
+
90
+ For each `(field, rule_name)` pair:
91
+
92
+ - **messages() key:** `{field}.{rule_name}` (e.g. `'username.required'`)
93
+ - **Lang key:** `validation.{domain}.{field}.{rule_name}`
94
+ - Wildcard fields keep their notation: `recipients.*.user_id.required`
95
+ - Example: `validation.super_user.username.required`
96
+
97
+ ---
98
+
99
+ ## Step 6: Read existing messages() method (if any)
100
+
101
+ - If a `messages()` method exists, parse all its `key => __('...')` entries.
102
+ - Keep track of which `(field.rule_name)` keys are already covered.
103
+ - Note the lang key referenced in each existing `__('...')` call.
104
+
105
+ ---
106
+
107
+ ## Step 7: Add missing message entries
108
+
109
+ For each required `(field, rule_name)` pair **not yet covered** by an existing messages() entry:
110
+
111
+ 1. **Check if the lang key already exists** in both `lang/de/validation.php` and `lang/en/validation.php`.
112
+ 2. If missing in either → generate a meaningful message:
113
+ - **English:** e.g. `'The email address is required.'` or `'The email address has already been taken.'`
114
+ - **German:** e.g. `'Die E-Mail-Adresse ist erforderlich.'` oder `'Diese E-Mail-Adresse ist bereits vergeben.'`
115
+ - Do **not** write `{field_label}` or `{rule_name}` literally into the lang file — replace them with the actual derived values.
116
+ - You may use Laravel's standard placeholders (`:attribute`, `:max`, `:min`, etc.) instead of embedding the label directly.
117
+ - Adapt the message text to fit the specific rule (e.g. `required` → "is required", `unique` → "has already been taken", `max` → "may not exceed :max characters")
118
+ - Use sensible human-readable field labels (derive from the field name: `snake_case` → "Title Case")
119
+ 3. Add the new lang key to `lang/de/validation.php` and `lang/en/validation.php` following the flat dot-notation format from `laravel-translations` rule.
120
+ - If a domain section comment exists for `{domain}`, insert near it. Otherwise append at the end.
121
+ 4. Add the entry to the `messages()` method: `'{field}.{rule_name}' => __('validation.{domain}.{field}.{rule_name}'),`
122
+
123
+ ---
124
+
125
+ ## Step 8: Clean up stale messages() entries
126
+
127
+ Find all keys in `messages()` where `{field}.{rule_name}` is **no longer valid**:
128
+ - The field no longer exists in `rules()`, OR
129
+ - The rule no longer applies to that field
130
+
131
+ For each stale entry:
132
+ 1. Extract the lang key from the `__('...')` call.
133
+ 2. **Search the relevant source directories** for that exact lang key string, excluding `vendor/` and `node_modules/` (e.g. `grep -r "validation.super_user.username.old_rule" app lang resources routes config`).
134
+ 3. If the lang key is **used nowhere else** → remove it from both `lang/de/validation.php` and `lang/en/validation.php`.
135
+ 4. Remove the stale key from `messages()`.
136
+
137
+ ---
138
+
139
+ ## Step 9: Write the messages() method
140
+
141
+ If `messages()` did not exist → add it after `rules()`:
142
+
143
+ ```php
144
+ /** @return array<string, string> */
145
+ public function messages(): array
146
+ {
147
+ return [
148
+ '{field}.{rule}' => __('validation.{domain}.{field}.{rule}'),
149
+ // ...
150
+ ];
151
+ }
152
+ ```
153
+
154
+ If it existed → update it in-place (keep existing entries that are still valid, add new ones, remove stale ones).
155
+
156
+ Keep any spread array entries (e.g. `...parent::messages()`) at the top of the array in their original order. Below them, sort only the keyed entries by field name, then rule name within the same field.
157
+
158
+ ---
159
+
160
+ ## Step 10: Summary
161
+
162
+ Print a summary table of what changed:
163
+
164
+ ```
165
+ FormRequest: UpdateSuperUserRequest
166
+
167
+ ADDED TO messages():
168
+ username.required → validation.super_user.username.required
169
+
170
+ REMOVED FROM messages():
171
+ email.old_rule (lang key removed from both lang files)
172
+
173
+ UNCHANGED:
174
+ username.string, username.unique, ...
175
+
176
+ LANG FILES UPDATED:
177
+ lang/en/validation.php — +1 added, -1 removed
178
+ lang/de/validation.php — +1 added, -1 removed
179
+ ```
180
+
181
+ ---
182
+
183
+ ## Rules
184
+
185
+ - **Never hardcode message strings** in the FormRequest — always use `__('validation.key')`.
186
+ - **Always update both** `lang/de/validation.php` AND `lang/en/validation.php`. One without the other is a bug.
187
+ - **Lang keys use flat dot-notation** — never nested arrays in lang files.
188
+ - **Do NOT commit or push.** Only apply local changes.
189
+ - **Do NOT remove lang keys** that are still referenced anywhere else in the codebase.
@@ -0,0 +1,171 @@
1
+ ---
2
+ name: upstream-contribute
3
+ skills: [upstream-contribute, skill-writing, learning-to-rule-or-skill]
4
+ description: Contribute a learning, skill, rule, or fix from a consumer project back to the shared agent-config package
5
+ disable-model-invocation: true
6
+ ---
7
+
8
+ # /upstream-contribute
9
+
10
+ ## Input
11
+
12
+ The user may provide:
13
+
14
+ - A file path to a new or improved skill/rule/command
15
+ - A description of what should be contributed
16
+ - Nothing (auto-detect from recent work)
17
+
18
+ ## Steps
19
+
20
+ ### 1. Identify what to contribute
21
+
22
+ If the user provided a file path → read it.
23
+ If not → check for recent overrides or new skills:
24
+
25
+ ```bash
26
+ ls agents/overrides/ 2>/dev/null
27
+ find .augment/skills -name 'SKILL.md' -newer .augment/rules -maxdepth 3 2>/dev/null
28
+ git diff --name-only HEAD~5 -- agents/overrides/ .augment/skills/ 2>/dev/null
29
+ ```
30
+
31
+ Ask the user to confirm what should be contributed:
32
+
33
+ ```
34
+ > Found these candidates for upstream contribution:
35
+ >
36
+ > 1. {file1} — {brief description}
37
+ > 2. {file2} — {brief description}
38
+ > 3. Something else — I'll describe it
39
+ >
40
+ > Which one?
41
+ ```
42
+
43
+ ### 2. Check universality
44
+
45
+ Before proceeding, verify the content is package-worthy:
46
+
47
+ - [ ] No project-specific references (domain names, local paths, FQDNs, project-specific classes)
48
+ - [ ] Benefits ALL consumers, not just this project
49
+ - [ ] Learning occurred 2+ times OR is clearly generalizable
50
+
51
+ If project-specific content is found, ask:
52
+
53
+ ```
54
+ > ⚠️ Found project-specific references: {examples}
55
+ >
56
+ > 1. Remove them — make it universal
57
+ > 2. Cancel — keep as project-only override
58
+ ```
59
+
60
+ ### 3. Determine contribution type and target path
61
+
62
+ | Type | Uncompressed target | Compressed target |
63
+ |---|---|---|
64
+ | **Skill** | `.agent-src.uncompressed/skills/{name}/SKILL.md` | `.agent-src/skills/{name}/SKILL.md` |
65
+ | **Rule** | `.agent-src.uncompressed/rules/{name}.md` | `.agent-src/rules/{name}.md` |
66
+ | **Command** | `.agent-src.uncompressed/commands/{name}.md` | `.agent-src/commands/{name}.md` |
67
+ | **Guideline** | `.agent-src.uncompressed/guidelines/{cat}/{name}.md` | `.agent-src/guidelines/{cat}/{name}.md` |
68
+
69
+ ### 4. Get access to the package repo
70
+
71
+ ```
72
+ > I need to create files in the agent-config package repo.
73
+ >
74
+ > 1. I have it cloned locally — I'll give you the path
75
+ > 2. Clone it for me into /tmp/agent-config-upstream
76
+ > 3. Just output the files — I'll handle it manually
77
+ ```
78
+
79
+ **Option 1:** User provides path → verify it's the right repo:
80
+
81
+ ```bash
82
+ cd {path} && git remote get-url origin
83
+ # Must contain event4u-app/agent-config
84
+ ```
85
+
86
+ **Option 2:**
87
+
88
+ ```bash
89
+ git clone git@github.com:event4u-app/agent-config.git /tmp/agent-config-upstream
90
+ cd /tmp/agent-config-upstream
91
+ ```
92
+
93
+ **Option 3:** Skip to Step 7 (output files only).
94
+
95
+ ### 5. Create branch and write files
96
+
97
+ ```bash
98
+ cd {package-repo}
99
+ git checkout main && git pull
100
+ git checkout -b {type}/{name} # e.g. feat/skills/php-container-discovery
101
+ ```
102
+
103
+ Write the **uncompressed version** (full, verbose, human-readable).
104
+ Write the **compressed version** (token-efficient, 40-60% shorter for skills; 1:1 for rules/commands).
105
+
106
+ Compressed version MUST preserve:
107
+
108
+ - All code blocks (byte-for-byte)
109
+ - YAML frontmatter (verbatim)
110
+ - All headings
111
+ - Validation rules, gotchas, "Do NOT" sections
112
+
113
+ Frontmatter must have `source: package`.
114
+
115
+ ### 6. Run quality gates
116
+
117
+ ```bash
118
+ task lint-skills # 0 FAIL required
119
+ task check-compression # No 🔴 errors for this file
120
+ task generate-tools # Regenerate symlinks
121
+ task consistency # Everything clean
122
+ ```
123
+
124
+ Fix any issues before continuing.
125
+
126
+ ### 7. Present result
127
+
128
+ **If Option 1 or 2** (working in package repo):
129
+
130
+ ```
131
+ > ✅ Files created in {package-repo}:
132
+ >
133
+ > - `.agent-src.uncompressed/{type}/{name}` (uncompressed)
134
+ > - `.agent-src/{type}/{name}` (compressed)
135
+ >
136
+ > Quality gates: {pass/fail summary}
137
+ >
138
+ > 1. Commit and push — I'll create the PR
139
+ > 2. Commit only — I'll push later
140
+ > 3. Review the files first
141
+ ```
142
+
143
+ **If Option 3** (manual):
144
+
145
+ Show both file contents in copyable fenced blocks with full paths as headers.
146
+
147
+ ### 8. Create PR (if user chose Option 1 in Step 7)
148
+
149
+ ```bash
150
+ git add .
151
+ git commit -m "{type}({scope}): add {name}
152
+
153
+ {brief description of what it does and why it's universal}"
154
+ git push -u origin {branch}
155
+ ```
156
+
157
+ Create PR via GitHub API with the package's PR template.
158
+ Fill in all gates (Promotion, Quality, Universality, Completeness).
159
+
160
+ ### 9. Remind about local override cleanup
161
+
162
+ ```
163
+ > 📝 After the PR is merged and you update the package in this project:
164
+ >
165
+ > ```bash
166
+ > rm agents/overrides/{type}/{name}.md
167
+ > composer update event4u/agent-config # or: npm update
168
+ > ```
169
+ >
170
+ > The shared version will then replace your local override.
171
+ ```
@@ -0,0 +1,181 @@
1
+ # Context: Augment Infrastructure
2
+
3
+ > The complete `.augment/` directory structure — what it contains, how it's organized, and how agents use it.
4
+
5
+ **Type:** Infrastructure
6
+ **Created:** 2026-03-20
7
+ **Last Updated:** 2026-03-25
8
+
9
+ ## Overview
10
+
11
+ The `.augment/` directory is a **shared Composer package** (read-only at project level) that provides
12
+ the agent infrastructure for all projects. It contains reusable skills, rules, commands,
13
+ guidelines, templates, and contexts that define how AI agents behave across the entire organization.
14
+
15
+ Projects customize this shared behavior through `agents/overrides/` — never by editing `.augment/` directly.
16
+
17
+ ## Directory Structure
18
+
19
+ ```
20
+ .augment/
21
+ ├── rules/ ← Always-active behavior rules (auto-loaded by Augment)
22
+ ├── skills/ ← Reusable skill definitions (loaded on-demand by topic)
23
+ ├── commands/ ← Slash commands (interactive workflows)
24
+ ├── guidelines/ ← Coding guidelines organized by language
25
+ │ └── php/ ← PHP-specific guidelines and patterns
26
+ │ └── patterns/
27
+ ├── templates/ ← Document templates (features, roadmaps, contexts, overrides)
28
+ │ └── overrides/ ← Templates for creating override files
29
+ └── contexts/ ← Shared context documents about the .augment/ system itself
30
+ ```
31
+
32
+ ## Component Types
33
+
34
+ ### Rules (`.augment/rules/`)
35
+
36
+ **Always active.** Loaded automatically for every conversation.
37
+ Define hard constraints: coding standards, Docker usage, language preferences, scope control.
38
+
39
+ **Always-active:**
40
+
41
+ | Rule | Purpose |
42
+ |---|---|
43
+ | `php-coding.md` | PHP coding standards (strict types, Math helper, comparisons) |
44
+ | `token-efficiency.md` | Redirect tool output to files, read only summaries, minimal output |
45
+ | `verify-before-complete.md` | Run verification before claiming completion |
46
+ | `user-interaction.md` | Numbered options, progress indicators |
47
+ | `model-recommendation.md` | Detect model, suggest switch for task type (opus/sonnet/gpt) |
48
+ | `language-and-tone.md` | German "Du", English code comments, icon spacing |
49
+ | `ask-when-uncertain.md` | When in doubt, ask the user — never guess or assume |
50
+ | `scope-control.md` | Stay within scope, no commit/push without permission |
51
+ | `guidelines.md` | Check coding guidelines before writing code |
52
+ | `commands.md` | Execute slash commands immediately — no questions, no opinions |
53
+
54
+ **Auto-loaded by topic:**
55
+
56
+ | Rule | Purpose |
57
+ |---|---|
58
+ | `quality-workflow.md` | PHP (PHPStan → Rector → PHPStan) and JS/TS pipelines |
59
+ | `downstream-changes.md` | After every edit, find and update ALL callers, tests, imports |
60
+ | `docs-sync.md` | Keep docs in sync when skills/rules change |
61
+ | `context-hygiene.md` | 3-failure rule, state dumps |
62
+ | `architecture.md` | Architecture principles, file placement |
63
+ | `docker-commands.md` | All PHP commands run inside Docker containers |
64
+ | `commit-conventions.md` | Conventional Commits format |
65
+ | `dev-efficiency.md` | Running CLI commands with verbose output — git, tests, linters, docker, build tools |
66
+ | `e2e-testing.md` | Playwright E2E tests — locators, assertions, Page Objects, CI |
67
+ | `lang-files.md` | Laravel lang files, both de/ and en/ always in sync |
68
+ | `rtk.md` | Using rtk for token-efficient CLI output filtering |
69
+ | `agent-docs.md` | When to read/create/update documentation |
70
+ | `augment-portability.md` | Everything in `.augment/` must be project-agnostic |
71
+ | `roadmap-progress-sync.md` | Checkbox edits in `agents/roadmaps/*.md` must trigger `task roadmap-progress` in the same response |
72
+
73
+ ### Skills (`.augment/skills/`)
74
+
75
+ **On-demand.** Loaded when the agent needs specific expertise.
76
+ Each skill is a directory with a `SKILL.md` file defining behavior, patterns, and rules.
77
+
78
+ Skills organized by domain:
79
+
80
+ | Category | Skills |
81
+ |---|---|
82
+ | **PHP/Laravel** | `php`, `php-coder`, `laravel`, `eloquent`, `laravel-validation`, `php-service`, `dto-creator`, `artisan-commands`, `laravel-horizon`, `laravel-mail`, `laravel-middleware`, `laravel-notifications`, `laravel-pennant`, `laravel-pulse`, `laravel-reverb`, `laravel-scheduling` |
83
+ | **API** | `api-endpoint`, `api-design`, `api-versioning`, `api-testing`, `openapi` |
84
+ | **Analysis** | `analysis-autonomous-mode`, `universal-project-analysis`, `project-analysis-laravel`, `bug-analyzer`, `security-audit`, `performance-analysis` |
85
+ | **Testing** | `pest-testing`, `test-generator`, `test-performance`, `php-debugging`, `playwright-testing` |
86
+ | **Frontend** | `javascript`, `typescript`, `vue`, `react`, `nextjs`, `nuxt`, `tailwind`, `livewire`, `flux`, `blade-ui`, `fe-design` |
87
+ | **Infrastructure** | `docker`, `aws-infrastructure`, `terraform`, `terragrunt`, `devcontainer`, `github-ci`, `cloudflare-workers`, `traefik` |
88
+ | **Data** | `database`, `migration-creator`, `multi-tenancy`, `performance`, `sql-writing` |
89
+ | **Jobs/Events** | `jobs-events`, `logging-monitoring`, `grafana`, `websocket` |
90
+ | **Packages** | `composer`, `composer-packages`, `npm`, `npm-packages` |
91
+ | **Design** | `dashboard-design`, `design-review`, `fe-design` |
92
+ | **Agent System** | `agent-docs-writing`, `agents-audit`, `context-create`, `commands`, `copilot-config`, `copilot-agents-optimization`, `feature-planning`, `file-editor`, `guidelines`, `mcp`, `override-management`, `project-docs`, `roadmap-management`, `module-management`, `naming`, `project-analyzer`, `sequential-thinking`, `skill-reviewer` |
93
+ | **Workflow** | `git-workflow`, `merge-conflicts`, `code-review`, `code-refactoring`, `bug-analyzer`, `security`, `adversarial-review`, `dependency-upgrade`, `quality-tools` |
94
+ | **Other** | `graphql`, `jira-integration`, `mobile`, `sentry-integration`, `wordpress`, `microservices`, `technical-specification` |
95
+
96
+ ### Commands (`.augment/commands/`)
97
+
98
+ **Interactive workflows.** Triggered by the user or other commands.
99
+ Each command is a `.md` file with a step-by-step flow.
100
+
101
+ Commands organized by workflow:
102
+
103
+ | Category | Commands |
104
+ |---|---|
105
+ | **Features** | `feature-dev`, `feature-plan`, `feature-explore`, `feature-refactor`, `feature-roadmap` |
106
+ | **Bugs** | `bug-investigate`, `bug-fix` |
107
+ | **Contexts** | `context-create`, `context-refactor` |
108
+ | **Modules** | `module-create`, `module-explore` |
109
+ | **Roadmaps** | `roadmap-create`, `roadmap-execute` |
110
+ | **Quality** | `quality-fix`, `review-changes`, `prepare-for-review`, `update-form-request-messages`, `fix-seeder` |
111
+ | **CI/PR** | `fix-ci`, `create-pr`, `create-pr-description`, `fix-pr-comments`, `fix-pr-bot-comments`, `fix-pr-developer-comments` |
112
+ | **Testing** | `tests-create`, `tests-execute` |
113
+ | **E2E** | `e2e-plan`, `e2e-heal` |
114
+ | **Agents** | `agents-prepare`, `agents-audit`, `agents-cleanup`, `copilot-agents-optimize`, `agent-handoff`, `agent-status`, `optimize-agents`, `optimize-augmentignore`, `optimize-skills`, `optimize-rtk-filters` |
115
+ | **Overrides** | `override-create`, `override-manage` |
116
+ | **Config** | `config-agent-settings`, `commit` |
117
+ | **Packages** | `package-test`, `package-reset` |
118
+ | **Project** | `project-analyze`, `project-health`, `jira-ticket` |
119
+
120
+ ### Guidelines (`.augment/guidelines/`)
121
+
122
+ **Coding conventions** organized by language/domain. PHP and E2E testing.
123
+
124
+ ```
125
+ guidelines/php/
126
+ ├── php.md ← General PHP conventions
127
+ ├── controllers.md ← Single-action controllers, OpenAPI
128
+ ├── eloquent.md ← Getter/setter pattern, casts
129
+ ├── validations.md ← FormRequest conventions
130
+ ├── resources.md ← API Resource versioning (v1/v2)
131
+ ├── jobs.md ← Queue jobs, Horizon tags
132
+ ├── git.md ← Branch naming, commit messages
133
+ ├── patterns.md ← Pattern index (links to patterns/)
134
+ └── patterns/ ← 9 design pattern guides
135
+ ├── service-layer.md
136
+ ├── repositories.md
137
+ ├── dtos.md
138
+ ├── dependency-injection.md
139
+ ├── strategy.md
140
+ ├── factory.md
141
+ ├── policies.md
142
+ ├── events.md
143
+ └── pipelines.md
144
+ guidelines/e2e/
145
+ └── playwright.md ← Playwright E2E best practices
146
+ ```
147
+
148
+ Each guideline has a consistent header with **Related Skills**, **Related Rules**, and **Related Guidelines**.
149
+
150
+ ### Templates (`.augment/templates/`)
151
+
152
+ **Document structure definitions** for features, roadmaps, contexts, and overrides.
153
+
154
+ | Template | Creates files in |
155
+ |---|---|
156
+ | `features.md` | `agents/features/` or module `agents/features/` |
157
+ | `roadmaps.md` | `agents/roadmaps/` or module `agents/roadmaps/` |
158
+ | `contexts.md` | `agents/contexts/` or module `agents/contexts/` |
159
+ | `overrides/rule.md` | `agents/overrides/rules/` |
160
+ | `overrides/skill.md` | `agents/overrides/skills/` |
161
+ | `overrides/command.md` | `agents/overrides/commands/` |
162
+ | `overrides/guideline.md` | `agents/overrides/guidelines/` |
163
+ | `overrides/template.md` | `agents/overrides/templates/` |
164
+
165
+ ### Contexts (`.augment/contexts/`)
166
+
167
+ **Shared context documents** about the `.augment/` system itself.
168
+ These help agents understand the infrastructure they operate in.
169
+
170
+ Unlike project contexts (`agents/contexts/`), these are part of the shared package
171
+ and describe the agent system, not the project's business domain.
172
+
173
+ ## Key Principles
174
+
175
+ 1. **`.augment/` is read-only** — it's a shared resource across all projects
176
+ 2. **Project customization via `agents/overrides/`** — extend or replace shared behavior
177
+ 3. **Rules are always active**, skills are on-demand, commands are user-triggered
178
+ 4. **Guidelines have cross-references** — each links to related skills and rules
179
+ 5. **Templates are the single source of truth** for document structure
180
+ 6. **All content in English** — code comments, documentation, agent files
181
+