@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,89 @@
1
+ # Role Mode Router
2
+
3
+ Maps common entry signals to the correct role mode defined in
4
+ [`role-contracts`](role-contracts.md). The router is advisory —
5
+ it proposes a mode, the user can veto with `/mode none`.
6
+
7
+ ## Entry signal → mode
8
+
9
+ | Signal pattern | Inferred mode |
10
+ |---|---|
11
+ | "implement X", "add feature", `/jira-ticket`, `/bug-fix` | `developer` |
12
+ | `/review-changes`, `/judge`, "review this PR", PR open on active branch | `reviewer` |
13
+ | "add tests", "why does X fail", test output pasted in context | `tester` |
14
+ | "I want a feature", `/feature-explore`, `/feature-plan`, "what should it do" | `po` |
15
+ | "production is down", `break-glass: true`, hotfix branch, live incident framing | `incident` |
16
+ | "what's the strategy", `/feature-roadmap`, multi-step work with unclear order | `planner` |
17
+
18
+ The signals are **non-exclusive**. When two patterns match, prefer the
19
+ narrower one (`incident` > `developer`; `reviewer` > `tester`).
20
+
21
+ ## Surfacing the inferred switch
22
+
23
+ Before doing any work, the agent emits **one line** in the user's
24
+ language (per `language-and-tone`):
25
+
26
+ ```
27
+ > entering {mode} mode — contract: {goal-field} / {constraints-field} / {output-field}
28
+ ```
29
+
30
+ This is the only announcement. Do not narrate the reasoning for the
31
+ mode choice. If the user is silent, proceed; if they reply
32
+ `/mode none` or `/mode <other>`, switch immediately.
33
+
34
+ ## When NOT to infer
35
+
36
+ - `roles.active_role` is already non-empty in `.agent-settings.yml` —
37
+ respect the explicit setting; do not second-guess it.
38
+ - `roles.default_role` is set and matches the inferred mode — still
39
+ surface the announcement (it reassures the user the frame loaded).
40
+ - No signal matches — **do NOT guess**. Stay mode-less and let
41
+ `ask-when-uncertain` handle the scope question.
42
+
43
+ ## Precedence
44
+
45
+ 1. Explicit `/mode <name>` in the current message — wins absolutely.
46
+ 2. `roles.active_role` from `.agent-settings.yml` — sticky within session.
47
+ 3. Router inference from the entry signal table above.
48
+ 4. `roles.default_role` fallback — only when no signal matches.
49
+ 5. No mode — rule `role-mode-adherence` stays inert.
50
+
51
+ ## Veto path
52
+
53
+ ```
54
+ > 1. Switch to {mode-b} — run /mode {mode-b}
55
+ > 2. Stay in {mode-a}
56
+ > 3. Clear mode — run /mode none
57
+ ```
58
+
59
+ The agent MUST use numbered options (per `user-interaction`) and accept
60
+ both the number and the spelled-out slash command.
61
+
62
+ ## Interactions
63
+
64
+ - [`role-contracts`](role-contracts.md) — the contracts this router targets.
65
+ - [`role-mode-adherence`](../../rules/role-mode-adherence.md) — enforces
66
+ the contract once a mode is active.
67
+ - [`ask-when-uncertain`](../../rules/ask-when-uncertain.md) — the
68
+ fallback when no signal matches.
69
+ - [`/mode`](../../commands/mode.md) — user-facing override.
70
+
71
+ ## Signal table maintenance
72
+
73
+ The table lives here, not in `role-contracts.md`. Commands and rules
74
+ reference modes by slug only — the routing layer is the single place
75
+ that maps free-form intent to a slug. Add a signal only when:
76
+
77
+ - ≥3 real sessions in `agents/sessions/` have surfaced the same pattern.
78
+ - The pattern does not collide with an existing row (check neighbours).
79
+ - The inferred mode is one of the six — never invent a seventh.
80
+
81
+ Signals captured but not yet promoted live in a scratch list at the
82
+ bottom of this file (delete when promoted).
83
+
84
+ ## Scratch list (candidates)
85
+
86
+ <!-- Add `{signal} → {mode}` lines here; promote to the table above
87
+ only after the criteria in the previous section are met. -->
88
+
89
+ _None yet._
@@ -0,0 +1,89 @@
1
+ # Runtime Layer
2
+
3
+ Guideline for defining and using execution metadata on skills.
4
+
5
+ ## Execution block
6
+
7
+ Skills can optionally declare an `execution` block in YAML frontmatter:
8
+
9
+ ```yaml
10
+ execution:
11
+ type: manual | assisted | automated
12
+ handler: none | shell | php | node | internal
13
+ timeout_seconds: 30
14
+ safety_mode: strict
15
+ allowed_tools: []
16
+ ```
17
+
18
+ ## Execution types
19
+
20
+ | Type | Meaning | Default |
21
+ |---|---|---|
22
+ | `manual` | Skill is instructional only — no automated actions | ✅ default |
23
+ | `assisted` | Skill prepares actions for human confirmation | |
24
+ | `automated` | Skill can execute safely without confirmation | |
25
+
26
+ If no `execution` block is present, the skill is treated as `manual`.
27
+
28
+ ## Handler types
29
+
30
+ | Handler | When to use |
31
+ |---|---|
32
+ | `none` | No handler needed (manual skills) |
33
+ | `shell` | Executes shell commands (e.g., linting, testing) |
34
+ | `php` | Executes PHP code (e.g., artisan commands) |
35
+ | `node` | Executes Node.js scripts |
36
+ | `internal` | Uses internal agent capabilities only |
37
+
38
+ ## Safety mode
39
+
40
+ | Mode | Meaning |
41
+ |---|---|
42
+ | `strict` | All safety checks enforced, no bypass allowed |
43
+
44
+ Only `strict` is allowed in this phase. Future phases may introduce `relaxed` for trusted environments.
45
+
46
+ ## Allowed tools
47
+
48
+ An explicit list of external tool identifiers the skill may access during execution.
49
+ Empty list (`[]`) means no external tools.
50
+
51
+ ```yaml
52
+ allowed_tools:
53
+ - github
54
+ - jira
55
+ ```
56
+
57
+ Tool names must match entries in the tool registry (see tool-integration roadmap).
58
+
59
+ ## Rules for authors
60
+
61
+ 1. **Default is manual** — omitting the execution block means the skill is manual.
62
+ 2. **Assisted before automated** — prefer `assisted` unless the skill is provably safe.
63
+ 3. **Handler must match type** — `automated` requires a handler other than `none`.
64
+ 4. **Safety mode is mandatory for automated** — `automated` without `safety_mode: strict` is invalid.
65
+ 5. **Allowed tools must be declared** — undeclared tool usage is a linter error.
66
+ 6. **Timeout is advisory** — used for planning, not hard enforcement in this phase.
67
+
68
+ ## Migration
69
+
70
+ Existing skills without an execution block remain valid.
71
+ No migration is required — the execution block is purely additive.
72
+
73
+ ## Validation
74
+
75
+ The skill linter validates:
76
+
77
+ - `execution.type` must be one of: `manual`, `assisted`, `automated`
78
+ - `execution.handler` must be one of: `none`, `shell`, `php`, `node`, `internal`
79
+ - `automated` type requires `handler` ≠ `none`
80
+ - `automated` type requires `safety_mode: strict`
81
+ - `allowed_tools` entries must be strings
82
+ - Unknown fields inside `execution` block produce warnings
83
+
84
+ ## Anti-patterns
85
+
86
+ - Adding `automated` to skills that modify files without verification
87
+ - Using `shell` handler without specifying which commands are safe
88
+ - Declaring `allowed_tools` without a matching tool registry entry
89
+ - Setting `timeout_seconds: 0` (use a positive value or omit)
@@ -0,0 +1,135 @@
1
+ # Self-Improvement Pipeline
2
+
3
+ Five-stage flow that turns real project experience into reviewed
4
+ rule / skill / command / guideline changes. No autonomous self-edits;
5
+ every upstream change ships via a human-reviewed PR.
6
+
7
+ Referenced by `road-to-curated-self-improvement.md`. Consumed by the
8
+ existing skills `capture-learnings`, `learning-to-rule-or-skill`,
9
+ `skill-improvement-pipeline`, and `upstream-contribute` — each becomes
10
+ a stage, not a standalone invocation.
11
+
12
+ ## The five stages
13
+
14
+ ```
15
+ Project event ── capture ── classify ── propose ── gate ── upstream
16
+ │ │ │ │ │ │
17
+ (bug, learning- scope: proposal human upstream-
18
+ success, to-rule-or- project- doc review contribute
19
+ review skill vs- (full +gate PR
20
+ pattern) package evidence) script
21
+ ```
22
+
23
+ Each stage has a fixed input and a fixed output so the flow is
24
+ resumable and auditable. A stage that cannot produce its output
25
+ blocks — it does not hand a half-filled doc to the next stage.
26
+
27
+ ### Stage 1 — Capture
28
+
29
+ - **Trigger:** a rule-worthy event. Bug pattern repeats, review
30
+ finding recurs, a successful pattern is worth codifying.
31
+ The existing `capture-learnings` rule signals the event.
32
+ - **Input:** raw observation (PR link, log line, review comment).
33
+ - **Output:** learning note at `agents/learnings/<date>-<slug>.md`
34
+ with frontmatter `source`, `evidence[]` (≥1 link), `stage: captured`.
35
+ - **Guardrails:** nothing is written into `.agent-src/` at this stage.
36
+ Learnings live in the consumer repo until promoted.
37
+
38
+ ### Stage 2 — Classify
39
+
40
+ - **Trigger:** explicit invocation or pipeline progression.
41
+ - **Input:** learning note from Stage 1.
42
+ - **Output:** same file, frontmatter extended with:
43
+ - `scope: project | package`
44
+ - `type: rule | skill | command | guideline`
45
+ - `stage: classified`
46
+ - **Guardrails:** classification is reversible. A `package`-scoped
47
+ learning with single-repo evidence is auto-demoted to `project`
48
+ at the gate.
49
+
50
+ ### Stage 3 — Propose
51
+
52
+ - **Trigger:** classified learning enters the drafter.
53
+ - **Executor:** `learning-to-rule-or-skill` skill drafts the artefact
54
+ body; `skill-improvement-pipeline` refines it.
55
+ - **Input:** classified learning + any referenced existing artefact.
56
+ - **Output:** proposal doc at
57
+ `agents/proposals/<proposal_id>.md` following
58
+ [`proposal.example.md`](../../templates/agents/proposal.example.md).
59
+ Frontmatter `stage: proposed`.
60
+ - **Guardrails:** the draft body and the proposal doc are a single
61
+ file. An artefact draft without its proposal wrapper is rejected.
62
+
63
+ ### Stage 4 — Gate
64
+
65
+ - **Trigger:** proposal doc committed or staged.
66
+ - **Executor:** `scripts/check_proposal.py`.
67
+ - **Input:** proposal doc from Stage 3.
68
+ - **Output:** verdict recorded in the proposal doc section 9
69
+ (`pass | request changes | block`). Frontmatter `stage: gated`
70
+ only after a `pass`.
71
+ - **Gate checks (all must pass):**
72
+ 1. At least **2 independent evidence** entries (distinct PRs,
73
+ issues, or incidents).
74
+ 2. `skill_linter` zero errors on the draft body.
75
+ 3. `check_portability` zero violations (no project identifiers
76
+ on `package`-scoped proposals).
77
+ 4. `check_references` resolves every link.
78
+ 5. `size-enforcement` within the budget for the artefact type.
79
+ 6. `preservation-guard` justifies any replacement (section 6 of
80
+ the proposal doc).
81
+ - **Guardrails:** the gate is not a rubber stamp. A `block` verdict
82
+ stays in the proposal as history; the pipeline restarts at
83
+ Stage 3 if the author wants to revise.
84
+
85
+ ### Stage 5 — Upstream
86
+
87
+ - **Trigger:** gate passed AND a human approver signed off.
88
+ - **Executor:** `upstream-contribute` skill. Refuses invocation if
89
+ the proposal frontmatter is not `stage: gated`.
90
+ - **Input:** gated proposal doc.
91
+ - **Output:** PR against `event4u/agent-config` carrying the
92
+ proposal doc as the PR body. Standard package CI runs.
93
+ Frontmatter `stage: upstream` and `upstream_pr_url` set.
94
+ - **Guardrails:** no `upstream-contribute` invocation ever edits
95
+ `.agent-src.uncompressed/` in the consumer repo. Writes happen
96
+ in the fork / PR branch of the package repo only.
97
+
98
+ ## Stage ownership
99
+
100
+ | Stage | Human role | Automation |
101
+ |---|---|---|
102
+ | 1 Capture | Any contributor | `capture-learnings` rule auto-triggers |
103
+ | 2 Classify | Drafter | `learning-to-rule-or-skill` suggests |
104
+ | 3 Propose | Drafter + reviewer | `skill-improvement-pipeline` refines |
105
+ | 4 Gate | Gate script | fully automated, block is final |
106
+ | 5 Upstream | Approver | `upstream-contribute` opens the PR |
107
+
108
+ ## When to skip stages
109
+
110
+ - **Typo / wording fix** — direct PR, no proposal needed. Pipeline
111
+ is for behaviour-changing proposals.
112
+ - **Documentation-only fix** — direct PR.
113
+ - **Adding a missing example** — direct PR if the rule semantics
114
+ do not change.
115
+
116
+ When in doubt, run the pipeline. Overhead is bounded; churn from
117
+ unreviewed upstream changes is not.
118
+
119
+ ## Anti-patterns
120
+
121
+ - **Do NOT** open an upstream PR without a proposal doc. Reviewers
122
+ need the evidence in one place.
123
+ - **Do NOT** promote a learning with one piece of evidence. Two
124
+ independent sources is the minimum; the gate enforces it.
125
+ - **Do NOT** edit `.agent-src.uncompressed/` directly in a consumer
126
+ project "just to try it out". Drafts live in `agents/proposals/`.
127
+ - **Do NOT** treat a `block` verdict as a personal rejection. The
128
+ gate checks structural shape, not author intent.
129
+
130
+ ## See also
131
+
132
+ - [`road-to-curated-self-improvement.md`](../../../agents/roadmaps/road-to-curated-self-improvement.md) — roadmap this guideline implements
133
+ - [`proposal.example.md`](../../templates/agents/proposal.example.md) — the template every proposal derives from
134
+ - [`artifact-drafting-protocol`](../../rules/artifact-drafting-protocol.md) — Understand → Research → Draft sequence used inside Stage 3
135
+ - [`preservation-guard`](../../rules/preservation-guard.md) — invoked by the gate to check replacement proposals
@@ -0,0 +1,189 @@
1
+ # size-and-scope-guidelines
2
+
3
+ ## Purpose
4
+
5
+ Ensure all system components stay:
6
+
7
+ - readable
8
+ - maintainable
9
+ - executable
10
+ - non-redundant
11
+
12
+ Prevent:
13
+ - oversized rules
14
+ - bloated skills
15
+ - command overreach
16
+ - duplicated knowledge
17
+
18
+ ---
19
+
20
+ # Core principle
21
+
22
+ > Split by responsibility, NOT by length.
23
+
24
+ Size is a signal — not the goal.
25
+
26
+ ---
27
+
28
+ # Golden size rules
29
+
30
+ ## Rules & system instructions
31
+
32
+ - Ideal: **< 60 lines**
33
+ - Acceptable: **< 100–120 lines**
34
+ - Hard limit: **< 200 lines**
35
+
36
+ Reason:
37
+ - Loaded frequently
38
+ - Must be reliably followed
39
+ - Large files get partially ignored
40
+
41
+ ---
42
+
43
+ ## Skills
44
+
45
+ - Target: **300–900 words**
46
+ - Warning: **>1200 words**
47
+ - Strong split signal: **>1500 words**
48
+
49
+ Focus:
50
+ - scanability
51
+ - one responsibility
52
+ - executable workflow
53
+
54
+ ---
55
+
56
+ ## Commands
57
+
58
+ - Target: **200–600 words**
59
+ - Acceptable: **up to ~1000 words**
60
+
61
+ Commands orchestrate — not implement.
62
+
63
+ ---
64
+
65
+ ## AGENTS.md
66
+
67
+ - Target: **200–800 words**
68
+ - Acceptable: **up to ~1200 words**
69
+
70
+ High-level only.
71
+
72
+ ---
73
+
74
+ ## copilot-instructions.md
75
+
76
+ - Ideal: **< 60 lines**
77
+ - Acceptable: **< 100–150 lines**
78
+
79
+ Must stay lightweight.
80
+
81
+ ---
82
+
83
+ ## Guidelines
84
+
85
+ - Target: **400–1500 words**
86
+ - Can exceed if needed
87
+
88
+ Guidelines are reference — not execution.
89
+
90
+ ---
91
+
92
+ # Component responsibilities
93
+
94
+ ## Rules
95
+
96
+ - constraints only
97
+ - no workflows
98
+ - no long explanations
99
+
100
+ ---
101
+
102
+ ## Skills
103
+
104
+ Must contain:
105
+
106
+ - When to use
107
+ - Procedure
108
+ - Validation
109
+ - Output format
110
+ - Gotchas
111
+ - Do NOT
112
+
113
+ ---
114
+
115
+ ## Commands
116
+
117
+ - orchestrate workflows
118
+ - delegate to skills
119
+ - do not contain deep logic
120
+
121
+ ---
122
+
123
+ ## Guidelines
124
+
125
+ - define conventions
126
+ - support skills
127
+ - must NOT replace workflows
128
+
129
+ ---
130
+
131
+ ## AGENTS.md
132
+
133
+ - entrypoint
134
+ - system overview
135
+ - interaction model
136
+
137
+ ---
138
+
139
+ ## copilot-instructions.md
140
+
141
+ - behavioral hints
142
+ - style guidance
143
+
144
+ ---
145
+
146
+ # Anti-patterns
147
+
148
+ ## Too large
149
+
150
+ - skill solves multiple problems
151
+ - rule explains instead of constraining
152
+ - command contains implementation
153
+ - AGENTS.md becomes documentation dump
154
+
155
+ ---
156
+
157
+ ## Too small
158
+
159
+ - skill has no real workflow
160
+ - rule is just a suggestion
161
+ - command adds no value
162
+
163
+ ---
164
+
165
+ # Boundary rule (critical)
166
+
167
+ > A skill must remain usable WITHOUT opening a guideline.
168
+
169
+ If not → the skill is too weak.
170
+
171
+ ---
172
+
173
+ # Decision checklist
174
+
175
+ Before creating or modifying:
176
+
177
+ 1. Is this a constraint → Rule
178
+ 2. Is this a workflow → Skill
179
+ 3. Is this orchestration → Command
180
+ 4. Is this reference → Guideline
181
+ 5. Is this entrypoint → AGENTS.md
182
+ 6. Is this behavior hint → copilot-instructions.md
183
+
184
+ ---
185
+
186
+ # Final principle
187
+
188
+ > Small enough to understand quickly
189
+ > Large enough to be useful
@@ -0,0 +1,73 @@
1
+ # Tool Integration
2
+
3
+ Guideline for declaring and using external tool integrations in skills.
4
+
5
+ ## Core principle
6
+
7
+ Tools are permissions, not abilities. Every tool access must be declared, allowlisted, and auditable.
8
+
9
+ ## Tool declaration in skills
10
+
11
+ Skills declare tool usage in the `execution.allowed_tools` field:
12
+
13
+ ```yaml
14
+ execution:
15
+ type: assisted
16
+ handler: internal
17
+ allowed_tools:
18
+ - github
19
+ - jira
20
+ ```
21
+
22
+ ## Permission model
23
+
24
+ | Rule | Description |
25
+ |---|---|
26
+ | Deny by default | No tool access unless explicitly declared |
27
+ | Allowlist only | Only registered tools can be used |
28
+ | Read-first | Prefer read-only actions; write actions require explicit approval |
29
+ | No hidden credentials | Tools must not embed or assume credentials |
30
+
31
+ ## Tool permissions
32
+
33
+ Skills can declare fine-grained permissions per tool:
34
+
35
+ ```yaml
36
+ tool_permissions:
37
+ github:
38
+ actions:
39
+ - read_pr
40
+ - create_pr
41
+ jira:
42
+ actions:
43
+ - read_ticket
44
+ - search_tickets
45
+ ```
46
+
47
+ ## Supported tools
48
+
49
+ | Tool | Available actions | Default |
50
+ |---|---|---|
51
+ | `github` | read_pr, read_issue, create_pr, list_files | read-only |
52
+ | `jira` | read_ticket, search_tickets, add_comment | read-only |
53
+
54
+ New tools require:
55
+ 1. An adapter implementation in `scripts/tools/`
56
+ 2. Registration in the tool registry
57
+ 3. Documentation in `agents/docs/tools/`
58
+
59
+ ## Validation rules (linter)
60
+
61
+ | Condition | Severity |
62
+ |---|---|
63
+ | Undeclared tool in allowed_tools | error |
64
+ | Tool listed but not in registry | warning |
65
+ | Automated execution with undeclared tools | error |
66
+ | Permission block missing for restricted tool | warning |
67
+
68
+ ## Anti-patterns
69
+
70
+ - Using tools without declaring them in `allowed_tools`
71
+ - Assuming credentials are available in the environment
72
+ - Mixing read and write actions without explicit separation
73
+ - Adding tools to a skill that doesn't need them