@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,125 @@
1
+ ---
2
+ type: "auto"
3
+ description: "When routing reviewers or flagging risk hotspots — consult ownership-map and historical-bug-patterns before suggesting reviewers or claiming a change is safe"
4
+ source: package
5
+ ---
6
+
7
+ # Review Routing Awareness
8
+
9
+ Before suggesting reviewers or declaring a change safe, the agent consults
10
+ two project-local data sources — if they exist — to ground the routing in
11
+ the consumer's actual organizational memory:
12
+
13
+ 1. **Ownership map** — which roles/teams own which paths, with per-path
14
+ risk notes.
15
+ 2. **Historical bug patterns** — recurring failure modes or technical debt
16
+ the project has paid for before.
17
+
18
+ Both live in the consumer repository (never in package-shipped files) and
19
+ are optional. Absence is not an error — the agent falls back to
20
+ generic, role-based suggestions from [`reviewer-awareness`](reviewer-awareness.md).
21
+
22
+ ## When this rule applies
23
+
24
+ - The agent is classifying PR risk, suggesting reviewers, writing a PR
25
+ description, or producing a review plan.
26
+ - The agent is reviewing its own diff before asking for human review.
27
+ - The change modifies more than a trivial amount of code (≥ 1 file
28
+ outside docs).
29
+
30
+ ## Required behavior
31
+
32
+ ### 1. Check for project data
33
+
34
+ Look, in order, for:
35
+
36
+ - `.github/ownership-map.yml` (or `agents/ownership-map.yml`)
37
+ - `.github/historical-bug-patterns.yml` (or
38
+ `agents/historical-bug-patterns.yml`)
39
+
40
+ If neither exists, fall back to engineering-memory via
41
+ [`memory-access`](../guidelines/agent-infra/memory-access.md):
42
+
43
+ ```python
44
+ from scripts.memory_lookup import retrieve
45
+ extra = retrieve(
46
+ types=["ownership", "historical-patterns"],
47
+ keys=<changed file paths>,
48
+ limit=5,
49
+ )
50
+ ```
51
+
52
+ Curated memory (`agents/memory/ownership.yml`,
53
+ `agents/memory/historical-patterns.yml`) shares the schema with the
54
+ project-local YAMLs and is merged into the routing output. If both
55
+ memory and project YAMLs are absent, skip this rule and rely on
56
+ [`reviewer-awareness`](reviewer-awareness.md) defaults. **Do not invent
57
+ owners or patterns** from context.
58
+
59
+ ### 2. Match the diff
60
+
61
+ For every changed file, collect:
62
+
63
+ - **Matching ownership entries** — each yields a role, optional focus
64
+ note, and optional risk hint.
65
+ - **Matching historical patterns** — each yields a named prior failure
66
+ mode and the minimum control or test the project expects.
67
+
68
+ Matching uses glob patterns (see
69
+ [`review-routing-data-format`](../guidelines/review-routing-data-format.md)
70
+ for the schema).
71
+
72
+ ### 3. Surface findings
73
+
74
+ When producing a review plan, include:
75
+
76
+ - **Owner-mapped roles** — explicitly preferred over generic roles. If
77
+ the ownership map says `app/Billing/**` is owned by `finance-engineering
78
+ + security`, use those, not "backend + security".
79
+ - **Historical-pattern warnings** — list every matched pattern with a
80
+ short label and the required control, e.g. _"Pattern: N+1 on tenant
81
+ listings → add an eager-load regression test"_.
82
+ - **Confidence note** — if the ownership map is stale (last updated > 6
83
+ months ago per the `updated` field), say so. Ownership maps rot.
84
+
85
+ ### 4. Do NOT overreach
86
+
87
+ - **Never rename paths** or add ownership entries as a side effect of a
88
+ code change. Ownership map edits are a separate, explicit task.
89
+ - **Never mark a change safe** only because no pattern matched. Pattern
90
+ absence means "no known hit", not "no risk".
91
+ - **Never copy historical-pattern names into the diff** as code comments
92
+ or commit messages — they are routing metadata, not commentary.
93
+
94
+ ## Interaction with other rules
95
+
96
+ - Feeds [`reviewer-awareness`](reviewer-awareness.md) — this rule
97
+ **resolves** owners; reviewer-awareness **formats** them.
98
+ - Extends [`verify-before-complete`](verify-before-complete.md) — if a
99
+ historical pattern demands a regression test, the verification gate
100
+ requires that test before completion is claimed.
101
+ - Does not override [`minimal-safe-diff`](minimal-safe-diff.md) — a
102
+ matched pattern is a reason to **add a test**, never a reason to
103
+ expand scope into unrelated refactors.
104
+
105
+ ## Anti-patterns — reject them
106
+
107
+ - Suggesting owners "because this looks like billing code" without
108
+ consulting the ownership map when one exists.
109
+ - Inventing historical patterns from general knowledge — patterns must
110
+ come from the project's own registry.
111
+ - Downgrading a matched high-severity pattern because "the author said
112
+ it's fine" — the pattern was registered because it bit before.
113
+ - Treating an out-of-date map as absent. Flag staleness; do not silently
114
+ skip.
115
+
116
+ ## See also
117
+
118
+ - [`reviewer-awareness`](reviewer-awareness.md) — formatting reviewer
119
+ suggestions.
120
+ - [`review-routing-data-format`](../guidelines/review-routing-data-format.md)
121
+ — YAML schemas for ownership-map and historical-bug-patterns.
122
+ - [`review-routing`](../skills/review-routing/SKILL.md) — the skill
123
+ that produces the merged routing report.
124
+ - [`judge-test-coverage`](../skills/judge-test-coverage/SKILL.md) —
125
+ consumes the "required test" output from historical patterns.
@@ -0,0 +1,92 @@
1
+ ---
2
+ type: "auto"
3
+ description: "When suggesting reviewers for a change — anchor the choice in paths and risk, never prestige or seniority; require primary + secondary role for medium/high risk"
4
+ source: package
5
+ ---
6
+
7
+ # Reviewer Awareness
8
+
9
+ When a change is medium- or high-risk, the agent suggests reviewer **roles**
10
+ (not individuals) based on what the diff actually touches — not who is
11
+ loudest, most senior, or who "usually reviews this kind of thing".
12
+
13
+ ## When this rule applies
14
+
15
+ - The agent is asked to suggest reviewers, draft a PR description, or
16
+ consolidate a review plan.
17
+ - The change is classified medium or high risk by
18
+ [`review-routing`](../skills/review-routing/SKILL.md), the
19
+ `pr_risk_review.py` script, or explicit user judgment.
20
+ - For **low-risk** changes, reviewer suggestions are optional and may be
21
+ omitted.
22
+
23
+ ## Required behavior
24
+
25
+ 1. **Anchor every suggestion in the diff.** Name the path or change that
26
+ triggered the role — "backend because `app/Services/PaymentGateway.php`
27
+ changed", not "backend because it's a code change".
28
+ 2. **Two roles minimum for medium/high risk** — one **primary** (the
29
+ domain most at risk) and one **secondary** (cross-cutting sanity:
30
+ security, infra, domain owner).
31
+ 3. **Explain the focus area** for each reviewer — what they should look
32
+ at, not just that they should look. "security: confirm the new
33
+ authorization boundary actually denies cross-tenant reads".
34
+ 4. **Prefer ownership-mapped owners** when an ownership map exists
35
+ (see [`review-routing-awareness`](review-routing-awareness.md)). Fall
36
+ back to generic roles only when no mapping matches.
37
+ 5. **Never name individual reviewers** in package-shipped artifacts.
38
+ The consumer repo's CODEOWNERS or ownership map does the mapping
39
+ role → person.
40
+
41
+ ## Reviewer roles
42
+
43
+ The reference set — extend per project, but keep these as the common
44
+ vocabulary:
45
+
46
+ | Role | Typical focus |
47
+ |---|---|
48
+ | `backend` | business logic, validation, side effects, data integrity |
49
+ | `frontend` | UX, accessibility, client-side state, rendering |
50
+ | `security` | authz, secrets, trust boundaries, data exposure |
51
+ | `infra` / `ops` | rollout, migration safety, observability, retries |
52
+ | `database` | schema changes, indexes, query plans, rollback realism |
53
+ | `domain owner` | business invariants, policy intent, edge-case correctness |
54
+ | `qa` | test coverage, regression scenarios, flake risk |
55
+
56
+ ## Anti-patterns — reject them
57
+
58
+ - "Reviewers: @alice, @bob" inside a shared package artifact — individuals
59
+ live in the consumer's CODEOWNERS, not in package output.
60
+ - "Any senior engineer" — prestige is not a review strategy.
61
+ - "Whoever reviewed this last time" — selection by habit, not by
62
+ current risk.
63
+ - One role for a 🔴 high-risk change — single-reviewer risk, especially
64
+ when the change crosses an authorization or tenancy boundary.
65
+ - Suggesting reviewers without naming what they should look at — a
66
+ rubber-stamp invitation.
67
+
68
+ ## Format
69
+
70
+ When the agent proposes reviewers, use this block:
71
+
72
+ ```
73
+ Suggested reviewers (role-based):
74
+ • primary: <role> — focus: <one line, anchored in diff>
75
+ • secondary: <role> — focus: <one line, anchored in diff>
76
+ (optional) additional: <role> — focus: …
77
+ ```
78
+
79
+ ## Rationale
80
+
81
+ The right reviewer reduces blind spots more than the loudest reviewer.
82
+ Blind-spot reduction comes from role diversity (different angles on the
83
+ same diff), not from seniority.
84
+
85
+ ## See also
86
+
87
+ - [`review-routing-awareness`](review-routing-awareness.md) — how
88
+ ownership maps and historical patterns feed reviewer selection.
89
+ - [`review-routing`](../skills/review-routing/SKILL.md) — the skill that
90
+ produces the reviewer block.
91
+ - [`requesting-code-review`](../skills/requesting-code-review/SKILL.md) —
92
+ PR preparation and self-review before asking for reviewers.
@@ -0,0 +1,56 @@
1
+ ---
2
+ type: "auto"
3
+ description: "Editing checkboxes in agents/roadmaps/*.md — [x], [~], [-], or add/rename/remove phases — must run task roadmap-progress in the SAME response; a roadmap that hits 0 open items must also be archived in the SAME response"
4
+ alwaysApply: false
5
+ source: package
6
+ ---
7
+
8
+ # Roadmap Progress Sync
9
+
10
+ ## Rule
11
+
12
+ **CRITICAL — ZERO TOLERANCE:** Whenever you change checkbox state in a
13
+ roadmap file (`agents/roadmaps/*.md`, module or package equivalents)
14
+ you MUST run `task roadmap-progress` **in the same response** — not
15
+ later, not batched across sessions, not "at the end of the roadmap".
16
+
17
+ `agents/roadmaps-progress.md` is the read-only dashboard. Every
18
+ unsynced edit makes it lie to the next reader.
19
+
20
+ **Completion = archival, same response.** When the edit takes a
21
+ roadmap to `count_open == 0` (every item is `[x]`, `[~]`, or `[-]`),
22
+ `git mv` it into `agents/roadmaps/archive/` (or `skipped/` if no
23
+ `[x]` at all) **before** regenerating. A 100%-complete roadmap left
24
+ in `agents/roadmaps/` is a rule violation. See `roadmap-management`
25
+ for the archive vs skipped decision table.
26
+
27
+ ## Triggers
28
+
29
+ | Edit | Must run, same response |
30
+ |---|---|
31
+ | Mark step `[x]`, `[~]`, `[-]`, or unmark back to `[ ]` | `task roadmap-progress` |
32
+ | Add, rename, or remove a phase | `task roadmap-progress` |
33
+ | Create a new roadmap file | `task roadmap-progress` |
34
+ | **Last `[ ]` flips** — roadmap reaches `count_open == 0` | `git mv` → `archive/` (or `skipped/`) **then** `task roadmap-progress` |
35
+ | Move roadmap between `roadmaps/` ↔ `archive/` ↔ `skipped/` | `task roadmap-progress` |
36
+
37
+ **Batching:** multiple checkbox edits in one response → a **single**
38
+ `task roadmap-progress` call at the end is enough. If one closes a
39
+ roadmap, archive it first, then run the single regen. But the
40
+ response must not end without it.
41
+
42
+ ## Why a rule, not just a skill tip
43
+
44
+ The `roadmap-management` skill documents the command in several
45
+ places, but skill body text is easy to miss under procedure pressure.
46
+ A rule collapses the constraint into one line the model cannot skip:
47
+ "checkbox edit → `task roadmap-progress` — same response".
48
+
49
+ ## Do NOT
50
+
51
+ - Do NOT edit `agents/roadmaps-progress.md` by hand — always regenerate.
52
+ - Do NOT defer regen to "next commit" or "before push" — same response.
53
+ - Do NOT rely on `task ci` / `task roadmap-progress-check` as first line of defence — CI is last-line, not real-time.
54
+ - Do NOT skip regen because "only one checkbox changed" — the dashboard aggregates counts and phase percentages that shift on single edits.
55
+ - Do NOT leave a 100%-complete roadmap in `agents/roadmaps/` "for review" — archive same response, ask the user afterwards if needed, not before.
56
+ - Do NOT regenerate the dashboard before the `git mv` when a roadmap closes — otherwise it reappears in "Open roadmaps".
@@ -0,0 +1,54 @@
1
+ ---
2
+ type: "auto"
3
+ description: "When roles.active_role is set in .agent-settings.yml — closing outputs must match the mode's contract and emit the structured mode marker"
4
+ alwaysApply: false
5
+ source: package
6
+ ---
7
+
8
+ # Role Mode Adherence
9
+
10
+ Auto-activates when `.agent-settings.yml` sets `roles.active_role` to
11
+ one of the six modes defined in
12
+ [`role-contracts`](../guidelines/agent-infra/role-contracts.md):
13
+ `developer`, `reviewer`, `tester`, `po`, `incident`, `planner`.
14
+
15
+ Read `roles.active_role` from `.agent-settings.yml` at session start.
16
+ Empty or missing → rule is inert. Do NOT guess a mode.
17
+
18
+ When active, every closing output MUST:
19
+
20
+ 1. Use the contract fields in the declared order. No invented fields.
21
+ Missing evidence → single question (per `ask-when-uncertain`), never
22
+ a fabricated value.
23
+ 2. End with the structured mode marker:
24
+
25
+ ```
26
+ <!-- role-mode: <active_role> | contract: <kebab-case-fields> -->
27
+ ```
28
+
29
+ 3. Refuse work the contract forbids:
30
+ - `reviewer` — NEVER ships implementation; verdict + blockers only.
31
+ - `developer` — NEVER writes a review verdict on own change.
32
+ - `incident` — NEVER expands scope beyond the stated symptom.
33
+
34
+ Forbidden work → numbered prompt (per `user-interaction`): switch
35
+ mode, narrow scope, or clear mode.
36
+
37
+ ## Interactions
38
+
39
+ - `scope-control` — adherence is stricter (mode may forbid work
40
+ scope-control would allow).
41
+ - `verify-before-complete` — gate runs BEFORE the mode marker.
42
+
43
+ ## What this rule does NOT do
44
+
45
+ Infer the mode (Phase-3 router does that). Modify `.agent-settings.yml`
46
+ (only `/mode` writes). Change the contracts (guideline is source of truth).
47
+
48
+ ## See also
49
+
50
+ - [`role-contracts`](../guidelines/agent-infra/role-contracts.md)
51
+ - [`/mode`](../commands/mode.md)
52
+ - [`ask-when-uncertain`](ask-when-uncertain.md)
53
+ - [`scope-control`](scope-control.md)
54
+ - [`verify-before-complete`](verify-before-complete.md)
@@ -0,0 +1,46 @@
1
+ ---
2
+ type: "auto"
3
+ description: "Creating or editing rules, or auditing rule types — decides when a rule should be always vs auto"
4
+ alwaysApply: false
5
+ source: package
6
+ ---
7
+
8
+ # rule-type-governance
9
+
10
+ ## `always` = loaded every conversation
11
+
12
+ Use ONLY when the rule applies to virtually every interaction:
13
+
14
+ - Universal agent behavior (language, tone, interaction style)
15
+ - Safety constraints (scope control, verification before completion)
16
+ - Token/efficiency constraints
17
+ - First-message checks that cannot wait for auto-trigger
18
+
19
+ ## `auto` = loaded on demand by description match
20
+
21
+ Use for everything else:
22
+
23
+ - Language-specific rules (PHP, JS, SQL)
24
+ - Tool-specific rules (Docker, Git, quality tools)
25
+ - Workflow-specific rules (commands, skill creation, E2E testing)
26
+ - Domain-specific rules (translations, architecture)
27
+
28
+ ## Decision test
29
+
30
+ > "Does this rule need to be active when the user asks a simple question, reviews a PR, or discusses architecture?"
31
+
32
+ - Yes → `always`
33
+ - No → `auto` with a clear trigger description
34
+
35
+ ## Auto description quality
36
+
37
+ The `description` field IS the trigger. It must describe **when** the rule applies, not **what** it contains.
38
+
39
+ - ❌ `"PHP coding standards"` — too vague, won't match reliably
40
+ - ✅ `"Writing or reviewing PHP code — strict types, naming, Eloquent conventions"`
41
+
42
+ ## Hard constraint
43
+
44
+ - Default to `auto`. Justify `always`.
45
+ - If >50% of conversations don't need a rule → it must be `auto`.
46
+ - `optimize-agents` command checks this and suggests changes.
@@ -0,0 +1,42 @@
1
+ ---
2
+ type: auto
3
+ source: package
4
+ description: "When a skill declares execution metadata — enforce safety constraints for assisted and automated execution types"
5
+ ---
6
+
7
+ # Runtime Safety
8
+
9
+ ## Core principle
10
+
11
+ Execution is an extension of skills, not a replacement for reasoning or review.
12
+
13
+ ## Constraints
14
+
15
+ - Default execution type is `manual` — skills without an execution block are instructional only
16
+ - `assisted` execution must produce a proposal, never execute silently
17
+ - `automated` execution requires:
18
+ - `handler` ≠ `none`
19
+ - `safety_mode: strict`
20
+ - Explicit `allowed_tools` declaration (can be empty `[]`)
21
+ - A verification step defined in the skill's steps
22
+ - No arbitrary code execution — handlers are allowlisted values only
23
+ - No bypass of rules, linter, or reviewer standards
24
+ - No execution without declared intent in frontmatter
25
+
26
+ ## Allowed handler values
27
+
28
+ `none`, `shell`, `php`, `node`, `internal`
29
+
30
+ Any other value is a linter error.
31
+
32
+ ## Escalation
33
+
34
+ If a skill's execution type or handler is unclear:
35
+ 1. Default to `manual`
36
+ 2. Ask the user before assuming `assisted` or `automated`
37
+
38
+ ## What this rule does NOT cover
39
+
40
+ - Tool registry and permissions (see tool-integration roadmap)
41
+ - Runtime hooks and error handling (see runtime hooks PR)
42
+ - Async execution (not in scope for this phase)
@@ -0,0 +1,40 @@
1
+ ---
2
+ type: "always"
3
+ description: "Scope control — no unsolicited architectural changes, refactors, or library replacements"
4
+ alwaysApply: true
5
+ source: package
6
+ ---
7
+
8
+ # Scope Control
9
+
10
+ - Do NOT introduce architectural changes unless explicitly requested.
11
+ - Do NOT replace existing patterns with alternatives.
12
+ - Do NOT refactor existing code solely to comply with current rules.
13
+ - Do NOT suggest new libraries unless explicitly requested.
14
+ - Existing code should only be modified if directly related to the current change, required for bug fixes, security, or explicitly requested.
15
+ - New or newly modified code MUST follow all coding rules.
16
+ - Stay within the established project structure and conventions.
17
+ - When unsure about the scope, ask the user.
18
+
19
+ ## Git operations — permission-gated
20
+
21
+ The user decides the git shape of the work.
22
+
23
+ - NEVER commit, push, merge, rebase, or force-push without explicit user permission.
24
+ - NEVER create, switch, or delete a branch without explicit user permission.
25
+ Includes spike, scratch, throwaway, worktree branches.
26
+ - NEVER create, close, reopen, or retarget a pull request without explicit
27
+ user permission.
28
+ - NEVER push a tag or create a release without explicit user permission.
29
+ - If a task seems to need a separate branch or PR, STOP and **brief
30
+ first, ask second**. The brief MUST cover, in order:
31
+ 1. **Why** — what the new branch solves that the current one cannot.
32
+ 2. **What** — files touched, experiments run, expected duration.
33
+ 3. **How it continues** — merge back, cherry-pick, throwaway, PR
34
+ target, how the current branch is protected meanwhile.
35
+ Then present numbered options with "stay on current branch" as
36
+ default. User decides. Do NOT branch first and explain later.
37
+
38
+ "Explicit permission" = the user said so this turn or gave a standing
39
+ instruction they have not revoked. Earlier permission for another op
40
+ does not carry over.
@@ -0,0 +1,77 @@
1
+ ---
2
+ type: "auto"
3
+ alwaysApply: false
4
+ description: "Security-sensitive code paths — authentication, authorization, billing, tenant boundaries, secrets, file uploads, external integrations, webhooks, public endpoints — stop and run threat analysis BEFORE editing"
5
+ source: package
6
+ ---
7
+
8
+ # Security-Sensitive Stop Rule
9
+
10
+ Before editing any file that matches a security-sensitive surface, **stop and
11
+ run a threat analysis first**. Shipping a security-sensitive change without a
12
+ prior threat pass is the #1 driver of authorization and data-exposure bugs.
13
+
14
+ ## What counts as security-sensitive
15
+
16
+ A file or planned change is security-sensitive when **any** of the following
17
+ is true:
18
+
19
+ | Surface | Examples |
20
+ |---|---|
21
+ | Authentication | login, session, token issuance, password reset, 2FA, SSO |
22
+ | Authorization | policies, gates, voters, middleware that gates actions, admin checks |
23
+ | Tenancy | tenant scope / `tenant_id` / row-level security / per-tenant keys |
24
+ | Billing / money | charge, refund, subscription, invoice, balance, credit |
25
+ | Secrets | API keys, tokens, signing keys, `.env`, vault, KMS, OAuth client secrets |
26
+ | File uploads | any endpoint that accepts user files or URLs for files |
27
+ | External integrations | outbound HTTP to third parties, webhooks, queue consumers from external sources |
28
+ | Public endpoints | any route with no auth gate (including health/status) |
29
+ | Data exposure | API resources, serializers, exception renderers, log channels, admin panels |
30
+
31
+ If the change touches any of these, the rule fires.
32
+
33
+ ## What to do when it fires
34
+
35
+ STOP writing code. Run the matching analysis skill first:
36
+
37
+ | Change type | Analysis skill |
38
+ |---|---|
39
+ | New or modified permission / tenant check | `authz-review` |
40
+ | New feature touching any surface above | `threat-modeling` |
41
+ | Data flows to logs / API / external | `data-flow-mapper` |
42
+ | Wide refactor of security-sensitive code | `blast-radius-analyzer` |
43
+
44
+ **Before the analysis, consult memory for prior incidents** on this
45
+ surface. Via [`memory-access`](../guidelines/agent-infra/memory-access.md):
46
+
47
+ ```python
48
+ from scripts.memory_lookup import retrieve
49
+ priors = retrieve(
50
+ types=["incident-learnings", "historical-patterns"],
51
+ keys=<touched file paths>,
52
+ limit=3,
53
+ )
54
+ ```
55
+
56
+ A prior security incident on the same path is the cheapest input to a
57
+ threat pass — cite any matching `id` so the required control or
58
+ regression test ships with the fix.
59
+
60
+ Capture the analysis output (abuse cases, missing controls, required
61
+ negative tests) — implement against that list, not your first instinct.
62
+ Never silently fall back to editing without the analysis; if blocked,
63
+ ask the user.
64
+
65
+ ## When NOT to fire
66
+
67
+ Typo/comment-only edits · test-only edits without behavior change · automated
68
+ tooling output (lockfile, generated code) the user explicitly requested.
69
+ These still deserve review, but do not require a full threat pass.
70
+
71
+ ## Rationale
72
+
73
+ Authorization and tenancy bugs are often invisible in logs and fire silently
74
+ until an auditor or attacker finds them. The cheapest moment to catch them
75
+ is before the first edit — this rule makes that the default path.
76
+
77
+ See also: `threat-modeling` · `authz-review` · `data-flow-mapper` · `minimal-safe-diff` · `think-before-action`.
@@ -0,0 +1,29 @@
1
+ ---
2
+ type: "auto"
3
+ description: "Creating or editing rules, skills, commands, guidelines, AGENTS.md, or copilot-instructions.md — enforce size and scope limits"
4
+ alwaysApply: false
5
+ source: package
6
+ ---
7
+
8
+ # size-enforcement
9
+
10
+ - Split by responsibility, not by length.
11
+
12
+ - Rules must stay short, constraint-only, and easy to scan.
13
+ - Skills must remain executable with clear workflow and validation.
14
+ - Commands must orchestrate, not implement detailed workflows.
15
+ - Guidelines must not replace skill execution.
16
+ - AGENTS.md must stay high-level and not contain workflows.
17
+ - copilot-instructions.md must stay short and behavioral.
18
+
19
+ - If a component grows too large, mixes responsibilities, or becomes hard to scan → split or refactor.
20
+
21
+ - Prefer small files:
22
+ - Rules and system instructions should stay well below 200 lines
23
+ - Smaller (≈60 lines) is strongly preferred
24
+
25
+ → Size limits and details: `.augment/guidelines/agent-infra/size-and-scope.md`
26
+
27
+ → Frontmatter contract (required/optional keys per type):
28
+ [`agents/docs/frontmatter-contract.md`](../../../agents/docs/frontmatter-contract.md).
29
+ Schemas live in `scripts/schemas/` and are enforced by `task validate-schema`.
@@ -0,0 +1,58 @@
1
+ ---
2
+ type: "auto"
3
+ description: "After completing a meaningful task — trigger post-task learning capture if pipelines.skill_improvement is enabled"
4
+ alwaysApply: false
5
+ source: package
6
+ ---
7
+
8
+ # Skill Improvement Trigger
9
+
10
+ ## When to activate
11
+
12
+ Read `pipelines.skill_improvement` from `.agent-settings.yml`.
13
+
14
+ - **If `false` or missing** → do nothing. Stop here.
15
+ - **If `true`** → continue.
16
+
17
+ ## What counts as "meaningful task"
18
+
19
+ Trigger after completing tasks that involve:
20
+ - Debugging a non-trivial bug (root cause wasn't obvious)
21
+ - Implementing a feature that required learning something new
22
+ - A pattern that worked well and should be remembered
23
+ - A mistake that cost >5 minutes to diagnose
24
+ - A workaround for a tool limitation
25
+
26
+ ## What does NOT trigger
27
+
28
+ - Config changes, typos, docs-only edits
29
+ - Routine tasks with no surprises
30
+ - Tasks where the agent is just following instructions step by step
31
+ - Tasks shorter than 3 messages
32
+
33
+ ## Trigger behavior
34
+
35
+ After completing a qualifying task, do a **quick mental check** (not a full workflow):
36
+
37
+ 1. Was there a concrete, actionable learning?
38
+ 2. Is it generalizable (not project-specific one-off)?
39
+ 3. Is it NOT already covered by an existing rule or skill?
40
+
41
+ If all 3 are YES → propose to the user:
42
+
43
+ ```
44
+ > 💡 Learning detected: "{one-sentence summary}"
45
+ >
46
+ > 1. Capture & improve — run the improvement pipeline
47
+ > 2. Skip — not worth capturing
48
+ ```
49
+
50
+ If user picks 1 → invoke the `skill-improvement-pipeline` skill.
51
+ If user picks 2 → stop, do not ask again for this task.
52
+
53
+ ## Important
54
+
55
+ - **Never auto-run the pipeline** — always ask first.
56
+ - **Max 1 trigger per task** — don't ask repeatedly.
57
+ - **Be honest** — if the learning is vague ("be more careful"), skip it silently.
58
+ - **Do not interrupt the user's flow** — only trigger AFTER the task is done.