@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,376 @@
1
+ # Installation
2
+
3
+ **Principle:** Project-installed by default, plugin-enhanced when available.
4
+ No Task, no Make, no build tools required for installation.
5
+
6
+ > **Primary installer:** `scripts/install` — a small bash orchestrator that
7
+ > runs the two real installer stages in order:
8
+ >
9
+ > 1. `scripts/install.sh` — payload sync (copy rules, symlink skills and
10
+ > commands, create tool-specific directories).
11
+ > 2. `scripts/install.py` — bridge files (`.agent-settings.yml`, VSCode /
12
+ > Augment / Copilot JSON descriptors).
13
+ >
14
+ > `bin/install.php` and `scripts/postinstall.sh` are thin wrappers that
15
+ > delegate to `scripts/install`. Both underlying stages remain callable
16
+ > directly for advanced use; see their `--help`.
17
+ >
18
+ > Python 3.10+ is required for bridges. If it is missing, the orchestrator
19
+ > prints a warning and continues with the payload sync only.
20
+
21
+ | Mode | Best for | Scope |
22
+ |---|---|---|
23
+ | **Project-installed** (recommended) | Teams, shared standards | Repository-wide |
24
+ | **Plugin-installed** | Individual users, global use | User-wide |
25
+
26
+ ---
27
+
28
+ ## Project-installed mode (recommended for teams)
29
+
30
+ Install once in the project — available to everyone working on it.
31
+ The package is versioned with the project. Settings are committed once.
32
+
33
+ ### Composer (PHP projects)
34
+
35
+ ```bash
36
+ composer require --dev event4u/agent-config
37
+ php vendor/bin/install.php
38
+ ```
39
+
40
+ Composer does **not** run a post-install hook for this package — the
41
+ installer is an explicit step. `bin/install.php` is a thin wrapper that
42
+ calls `scripts/install` (the bash orchestrator). To pick a non-default
43
+ profile:
44
+
45
+ ```bash
46
+ php vendor/bin/install.php --profile=balanced
47
+ ```
48
+
49
+ The `--profile` flag controls the initial `cost_profile` value written
50
+ to `.agent-settings.yml`.
51
+
52
+ ### npm (JavaScript/TypeScript projects)
53
+
54
+ ```bash
55
+ npm install --save-dev @event4u/agent-config
56
+ ```
57
+
58
+ npm runs `scripts/postinstall.sh` automatically, which invokes
59
+ `scripts/install` — the same orchestrator every other entry point uses.
60
+
61
+ If your setup disables install scripts (`npm config set ignore-scripts
62
+ true` or similar), nothing happens and the command prints no warning.
63
+ Re-run the installer manually in that case:
64
+
65
+ ```bash
66
+ bash node_modules/@event4u/agent-config/scripts/install
67
+ ```
68
+
69
+ ### Installer orchestrator (`scripts/install`)
70
+
71
+ The orchestrator chains payload sync and bridge generation:
72
+
73
+ ```bash
74
+ bash scripts/install # defaults to cost_profile=minimal
75
+ bash scripts/install --profile=balanced
76
+ bash scripts/install --force # overwrite existing bridges
77
+ bash scripts/install --skip-bridges # payload only
78
+ bash scripts/install --skip-sync # bridges only
79
+ bash scripts/install --dry-run # show payload sync plan, skip bridges
80
+ ```
81
+
82
+ PHP users can use the Composer wrapper, which forwards all flags:
83
+
84
+ ```bash
85
+ php vendor/bin/install.php --profile=balanced
86
+ ```
87
+
88
+ Under the hood:
89
+
90
+ - `scripts/install.sh` — payload sync (callable directly for sync-only runs).
91
+ - `scripts/install.py` — bridge files (callable directly for bridge-only runs).
92
+
93
+ A full run creates:
94
+
95
+ - `.agent-settings.yml` — profile configuration (YAML)
96
+ - `.vscode/settings.json` — VS Code / Copilot plugin discovery
97
+ - `.augment/settings.json` — Augment plugin activation
98
+ - `.github/plugin/marketplace.json` — Copilot CLI marketplace
99
+ - `.augment/`, `.claude/`, `.cursor/`, `.clinerules/`, `.windsurfrules`, `GEMINI.md`
100
+ - `AGENTS.md`, `.github/copilot-instructions.md` (only if missing)
101
+
102
+ No Task, no Make, no build tools required. **Python 3** (standard library only)
103
+ is required for bridges — it is pre-installed on macOS 12.3+ and virtually
104
+ every Linux distribution. If Python 3 is missing, the orchestrator warns,
105
+ runs the payload sync anyway, and asks you to re-run `scripts/install`
106
+ after installing Python.
107
+
108
+ ### What happens after install
109
+
110
+ `scripts/install` creates project-local content for all supported tools:
111
+ - `.augment/rules/`, `.augment/skills/`, `.augment/commands/` — for Augment
112
+ - `.cursor/rules/` — for Cursor
113
+ - `.clinerules/` — for Cline
114
+ - `.windsurfrules` — for Windsurf
115
+ - `.claude/rules/`, `.claude/skills/` — for Claude Code
116
+ - `AGENTS.md`, `GEMINI.md` — for Copilot and Gemini CLI
117
+ - `.github/copilot-instructions.md` — for GitHub Copilot
118
+
119
+ This means: **every developer who opens the project gets the same agent behavior,
120
+ regardless of which AI tool they use.** No per-developer plugin installation needed.
121
+
122
+ ### What the team commits
123
+
124
+ After initial setup, commit these files:
125
+
126
+ ```
127
+ .agent-settings.yml ← shared profile (e.g., cost_profile: minimal)
128
+ .augment/ ← rules, skills, commands (symlinks)
129
+ .cursor/rules/ ← Cursor rules (symlinks)
130
+ .claude/ ← Claude rules, skills (symlinks)
131
+ AGENTS.md ← Copilot/Gemini instructions
132
+ .github/copilot-instructions.md ← GitHub Copilot instructions
133
+ ```
134
+
135
+ New team members: run `composer install` (or `npm install`) → open editor → done.
136
+
137
+ ---
138
+
139
+ ## Plugin-installed mode (optional, for individual use)
140
+
141
+ Install directly in your agent for global, cross-project use.
142
+ This is additional to project-installed mode, not a replacement.
143
+
144
+ ### Augment CLI
145
+
146
+ ```bash
147
+ auggie plugin install agent-config@event4u-agent-config
148
+ ```
149
+
150
+ ### Claude Code
151
+
152
+ ```bash
153
+ claude plugin install agent-config@event4u-agent-config
154
+ ```
155
+
156
+ ### Copilot CLI
157
+
158
+ ```bash
159
+ copilot plugin install agent-config@event4u-agent-config
160
+ ```
161
+
162
+ ### When to use plugin mode
163
+
164
+ - You want agent-config behavior in ALL projects (not just one)
165
+ - You want auto-updates via marketplace
166
+ - You want plugin-specific features (hooks, MCP servers)
167
+
168
+ ### Team auto-setup for plugins
169
+
170
+ To auto-recommend the plugin for your team, add the marketplace to project settings.
171
+ See [`templates/consumer-settings/`](../templates/consumer-settings/) for ready-to-use config templates per tool.
172
+
173
+ For marketplace registration (required once before `plugin install`):
174
+
175
+ ```bash
176
+ # Augment CLI
177
+ auggie marketplace add event4u-app/agent-config
178
+
179
+ # Claude Code
180
+ claude marketplace add event4u-app/agent-config
181
+
182
+ # Copilot CLI
183
+ copilot marketplace add event4u-app/agent-config
184
+ ```
185
+
186
+ ---
187
+
188
+ ## Alternative install methods
189
+
190
+ These are fallbacks when the recommended paths above don't work.
191
+
192
+ ### Git Submodule
193
+
194
+ ```bash
195
+ git submodule add git@github.com:event4u-app/agent-config.git .agent-config
196
+ bash .agent-config/scripts/install --target .
197
+ ```
198
+
199
+ ### Manual
200
+
201
+ ```bash
202
+ bash path/to/agent-config/scripts/install --target /path/to/your/project
203
+ ```
204
+
205
+ ### Install from Git URL (VS Code / Copilot)
206
+
207
+ VS Code can install plugins directly from a Git repository URL.
208
+ Point it to `https://github.com/event4u-app/agent-config`.
209
+
210
+ > **Note:** `.augment/` content depends on the package manager having been executed.
211
+ > After a fresh clone, run `composer install` or `npm install` first.
212
+
213
+ ---
214
+
215
+ ## After installation: choose a profile
216
+
217
+ The system works immediately with sensible defaults. Optionally, create `.agent-settings.yml`
218
+ to choose a profile:
219
+
220
+ ```yaml
221
+ cost_profile: minimal
222
+ ```
223
+
224
+ | Profile | What's active | For whom |
225
+ |---|---|---|
226
+ | `minimal` (default) | Rules + Skills only, zero overhead | New users, solo devs |
227
+ | `balanced` | + Runtime dispatcher + shell handler | Most teams |
228
+ | `full` | + Tool adapters (GitHub, Jira) | Platform teams |
229
+
230
+ No profile configured = `minimal` behavior. → [Full profile details](customization.md)
231
+
232
+ ---
233
+
234
+ ## First test
235
+
236
+ After installation, try these 3 prompts with your agent:
237
+
238
+ 1. `"Refactor this function"` → agent should analyze first, not jump into code
239
+ 2. `"Add caching to this"` → agent should ask clarifying questions
240
+ 3. `"Implement this feature"` → agent should respect your existing codebase
241
+
242
+ If the agent behaves differently than before — it's working.
243
+
244
+ **Optional:** Run `task first-run` for a guided walkthrough (requires [Task](https://taskfile.dev/)).
245
+
246
+ → [Full getting started guide](getting-started.md)
247
+
248
+ ---
249
+
250
+ ## How the installer works
251
+
252
+ ### Two-stage pipeline
253
+
254
+ `scripts/install` runs these stages in order:
255
+
256
+ | Stage | Script | Output |
257
+ |---|---|---|
258
+ | 1. Payload sync | `scripts/install.sh` | `.augment/`, `.claude/`, `.cursor/`, `.clinerules/`, `.windsurfrules`, `GEMINI.md` |
259
+ | 2. Bridges | `scripts/install.py` | `.agent-settings.yml`, `.vscode/settings.json`, `.augment/settings.json`, `.github/plugin/marketplace.json` |
260
+
261
+ Either stage can be skipped (`--skip-sync`, `--skip-bridges`) or invoked
262
+ directly. Stage 2 is gracefully skipped when Python 3 is unavailable.
263
+
264
+ ### Hybrid sync strategy (stage 1)
265
+
266
+ | Directory | Method | Reason |
267
+ |---|---|---|
268
+ | `.augment/rules/` | **Copy** | Augment Code cannot load symlinked rules |
269
+ | Everything else | **Symlink** | Auto-updates on package update, saves disk |
270
+
271
+ ### What gets created
272
+
273
+ ```
274
+ your-project/
275
+ ├── .augment/
276
+ │ ├── rules/ ← copies (Augment Code requirement)
277
+ │ ├── skills/ ← symlinks → package
278
+ │ ├── commands/ ← symlinks → package
279
+ │ ├── guidelines/ ← symlinks → package
280
+ │ ├── templates/ ← symlinks → package
281
+ │ └── contexts/ ← symlinks → package
282
+ ├── .claude/
283
+ │ ├── rules/ ← symlinks → .augment/rules/
284
+ │ └── skills/ ← symlinks → .augment/skills/
285
+ ├── .cursor/rules/ ← symlinks → .augment/rules/
286
+ ├── .clinerules/ ← symlinks → .augment/rules/
287
+ ├── .windsurfrules ← generated (concatenated rules)
288
+ ├── GEMINI.md ← symlink → AGENTS.md
289
+ └── AGENTS.md ← project-specific (copied if missing)
290
+ ```
291
+
292
+ ### CLI options
293
+
294
+ ```
295
+ bash scripts/install [OPTIONS]
296
+
297
+ Options:
298
+ --source <dir> Package source directory (default: auto-detect)
299
+ --target <dir> Target project root (default: $PROJECT_ROOT or cwd)
300
+ --profile <name> Cost profile for bridges (minimal|balanced|full)
301
+ --force Overwrite existing bridge files
302
+ --dry-run Show payload sync plan; skip bridges
303
+ --verbose Detailed payload sync output
304
+ --quiet Suppress non-error output
305
+ --skip-sync Skip payload sync (install.sh)
306
+ --skip-bridges Skip bridge files (install.py)
307
+ --help, -h Show this help
308
+ ```
309
+
310
+ The underlying stages keep their own CLI surfaces:
311
+ `bash scripts/install.sh --help` and `python3 scripts/install.py --help`.
312
+
313
+ ---
314
+
315
+ ## Updating
316
+
317
+ When a new version of the package is published:
318
+
319
+ ```bash
320
+ composer update event4u/agent-config
321
+ php vendor/bin/install.php # refresh bridges + symlinks
322
+ ```
323
+
324
+ Or for npm projects:
325
+
326
+ ```bash
327
+ npm update @event4u/agent-config
328
+ bash node_modules/@event4u/agent-config/scripts/install
329
+ ```
330
+
331
+ The installer is idempotent — re-running it after an update refreshes
332
+ the symlinks and regenerates derived files (`.windsurfrules`,
333
+ `.github/copilot-instructions.md`). It does **not** overwrite
334
+ `AGENTS.md` or anything in `agents/overrides/`.
335
+
336
+ ---
337
+
338
+ ## Windows
339
+
340
+ Native Windows is not a first-class target. Use one of the following:
341
+
342
+ - **WSL2** (recommended): clone and install inside a WSL distribution.
343
+ - **Git Bash**: works for installation but symlinks require Windows
344
+ Developer Mode or admin privileges. Re-run the installer after each
345
+ update to refresh file copies if symlinks aren't available.
346
+ - **PowerShell / cmd**: not supported.
347
+
348
+ If you need full native Windows support, please open an issue — we
349
+ cannot validate changes without access to a Windows setup.
350
+
351
+ ---
352
+
353
+ ## Uninstalling
354
+
355
+ There is no dedicated uninstall command yet. To remove the package:
356
+
357
+ ```bash
358
+ # 1. Remove the dependency
359
+ composer remove event4u/agent-config
360
+ # or
361
+ npm uninstall @event4u/agent-config
362
+
363
+ # 2. Remove generated project-local content
364
+ rm -rf .augment .claude .cursor .clinerules .windsurfrules GEMINI.md
365
+ rm -f .agent-settings .agent-settings.yml .agent-settings.backup.key-value
366
+ rm -f .github/copilot-instructions.md
367
+ ```
368
+
369
+ Remove the `# event4u/agent-config` block from `.gitignore` manually.
370
+ Keep `AGENTS.md` if you customized it — it is yours, not the package's.
371
+
372
+ See also: [docs/troubleshooting.md](troubleshooting.md).
373
+
374
+ ---
375
+
376
+ ← [Back to README](../README.md)
package/docs/mcp.md ADDED
@@ -0,0 +1,133 @@
1
+ # MCP config generation
2
+
3
+ One `mcp.json` at your repo root, one `task mcp:render`, three tools configured.
4
+ No hand-editing Claude Desktop, Cursor, and Windsurf files in parallel. No
5
+ secrets committed.
6
+
7
+ ## What this solves
8
+
9
+ MCP servers are configured per tool today: `.cursor/mcp.json`, a Windsurf
10
+ equivalent, and `~/.config/claude-desktop/claude_desktop_config.json`. Each
11
+ file has the same server list, duplicated. Secrets land in plaintext if you
12
+ commit them, out of reach if you don't.
13
+
14
+ The renderer fixes both:
15
+
16
+ - One source of truth (`mcp.json`) → three target files.
17
+ - `${env:VAR}` placeholders resolved at render time from the environment.
18
+ - Missing `${env:VAR}` → non-zero exit, no partial files written.
19
+
20
+ ## Schema
21
+
22
+ `mcp.json` at the repo root:
23
+
24
+ ```json
25
+ {
26
+ "servers": {
27
+ "<server-name>": {
28
+ "command": "string",
29
+ "args": ["string", "..."],
30
+ "env": { "KEY": "string" },
31
+ "cwd": "string"
32
+ }
33
+ }
34
+ }
35
+ ```
36
+
37
+ - `command` and `args` are required per server.
38
+ - `env` and `cwd` are optional.
39
+ - Every string value accepts `${env:VAR_NAME}` placeholders. The renderer
40
+ replaces them with the value of `VAR_NAME` from the process environment.
41
+ - `${env:VAR}` may appear anywhere in a string; multiple placeholders per
42
+ string are supported.
43
+ - The source file uses `servers` as the top-level key; the renderer emits
44
+ `mcpServers` because that is what all three targets expect.
45
+
46
+ Internal references like `${ref:path.to.value}` are **not** supported. Keep
47
+ values literal, or resolve them from the environment.
48
+
49
+ ## Usage
50
+
51
+ ```bash
52
+ task mcp:render # write in-project targets
53
+ task mcp:render -- --claude-desktop # also write user-scope Claude Desktop
54
+ task mcp:check # dry-run; exit 1 if targets are stale
55
+ ```
56
+
57
+ Or invoke the script directly:
58
+
59
+ ```bash
60
+ python3 scripts/mcp_render.py [--source PATH] [--claude-desktop] [--check]
61
+ ```
62
+
63
+ Default output paths:
64
+
65
+ | Target | Path | Scope |
66
+ |-----------------|-----------------------------------------------------------|----------------|
67
+ | Cursor | `.cursor/mcp.json` | repo, commit it |
68
+ | Windsurf | `.windsurf/mcp.json` | repo, commit it |
69
+ | Claude Desktop | `~/.config/claude-desktop/claude_desktop_config.json` | user, opt-in |
70
+
71
+ ## Worked example
72
+
73
+ `mcp.json`:
74
+
75
+ ```json
76
+ {
77
+ "servers": {
78
+ "github": {
79
+ "command": "npx",
80
+ "args": ["-y", "@modelcontextprotocol/server-github"],
81
+ "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "${env:GH_TOKEN}" }
82
+ },
83
+ "jira": {
84
+ "command": "docker",
85
+ "args": ["run", "--rm", "-i", "mcp/jira:latest"],
86
+ "env": {
87
+ "JIRA_TOKEN": "${env:JIRA_TOKEN}",
88
+ "JIRA_HOST": "example.atlassian.net"
89
+ }
90
+ }
91
+ }
92
+ }
93
+ ```
94
+
95
+ Then:
96
+
97
+ ```bash
98
+ export GH_TOKEN=ghp_xxx
99
+ export JIRA_TOKEN=jira_yyy
100
+ task mcp:render
101
+ ```
102
+
103
+ Produces `.cursor/mcp.json` and `.windsurf/mcp.json` with the secrets
104
+ substituted inline and the root key renamed to `mcpServers`.
105
+
106
+ ## Failure modes
107
+
108
+ - **Missing `mcp.json`** — exit 1, message naming the expected path.
109
+ - **Invalid JSON** — exit 1, message with the parser error.
110
+ - **Missing `servers` key** — exit 1, shape rejected at load time.
111
+ - **Unresolved `${env:VAR}`** — exit 1, grouped report listing every missing
112
+ variable and every path in the config where it is used. **No target file
113
+ is written**, not even a partial one. Set the variable(s) and re-run.
114
+ - **`task mcp:check` disagrees with on-disk targets** — exit 1; run
115
+ `task mcp:render` to regenerate.
116
+
117
+ ## What this is not
118
+
119
+ The renderer is one-way: `mcp.json` → tool configs. It does not read or diff
120
+ pre-existing tool configs. Remove stale entries from your source file and
121
+ re-render.
122
+
123
+ Keychain backends (`security`, `secret-tool`, Bitwarden CLI) are **out of
124
+ scope**. The environment is the only secret surface. Pipe from whatever
125
+ secret tool you already use into the process environment before you run
126
+ `task mcp:render`.
127
+
128
+ ## Related
129
+
130
+ - [`.agent-src.uncompressed/skills/mcp/SKILL.md`](../.agent-src.uncompressed/skills/mcp/SKILL.md) — MCP server
131
+ selection and usage patterns.
132
+ - [`agents/roadmaps/archive/road-to-mcp.md`](../agents/roadmaps/archive/road-to-mcp.md) — archived roadmap that produced this feature.
133
+ - Reference substitution implementation: [`kdcllc/agents_config`](https://github.com/kdcllc/agents_config/blob/master/app/agents_config/base.py).
@@ -0,0 +1,98 @@
1
+ # Quality & CI
2
+
3
+ ## CI Pipeline
4
+
5
+ Run all checks before pushing:
6
+
7
+ ```bash
8
+ task ci
9
+ ```
10
+
11
+ This runs, in order:
12
+
13
+ 1. **Sync check** — `.agent-src/` matches `.agent-src.uncompressed/` (non-`.md` files)
14
+ 2. **Compression hashes** — Compressed `.md` hashes match source
15
+ 3. **Reference check** — No broken cross-references between files
16
+ 4. **Portability check** — No project-specific paths in shared files
17
+ 5. **Schema validation** — Frontmatter of every skill/rule/command/persona matches its JSON-Schema contract
18
+ 6. **Skill linter** — All skills, rules, commands pass structural validation
19
+ 7. **README linter** — README passes quality checks
20
+ 8. **Tests** — All bash + Python tests pass
21
+ 9. **Consistency** — No uncommitted changes from generated outputs
22
+
23
+ ---
24
+
25
+ ## Skill Linter
26
+
27
+ The linter (`scripts/skill_linter.py`) validates:
28
+
29
+ - **Required structure** — YAML frontmatter, description, triggers
30
+ - **Frontmatter schema** — Each artefact type has a JSON-Schema in `scripts/schemas/`; violations surface as `schema_<rule>` errors (see [frontmatter contract](../agents/docs/frontmatter-contract.md))
31
+ - **Anti-patterns** — Procedural rules in behavior rules, overlong skills, scope creep
32
+ - **Compression quality** — Key sections preserved after compression
33
+
34
+ Schema validation also runs standalone via `task validate-schema` — fast
35
+ fail before the full linter.
36
+
37
+ ### Quality levels
38
+
39
+ | Level | Meaning |
40
+ |---|---|
41
+ | **PASS** | Meets all requirements |
42
+ | **WARN** | Advisory — may need attention but not blocking |
43
+ | **FAIL** | Must be fixed before merge |
44
+
45
+ ### CI integration
46
+
47
+ - GitHub Actions runs the linter on every PR
48
+ - Results are posted as PR comments with quality counts
49
+ - **0 FAIL required** — no merge with failures
50
+
51
+ ---
52
+
53
+ ## Compression System
54
+
55
+ Content flows from verbose (`.agent-src.uncompressed/`) to compressed (`.agent-src/`),
56
+ which is then projected into `.augment/` for Augment Code.
57
+
58
+ ### Rules
59
+
60
+ - Source of truth is **always** `.agent-src.uncompressed/`
61
+ - Never edit `.agent-src/` or `.augment/` directly
62
+ - The `/compress` command produces token-efficient output
63
+ - Compression hashes track which files have been compressed
64
+
65
+ ### Verification
66
+
67
+ ```bash
68
+ task sync-check # Non-.md files in sync?
69
+ task sync-check-hashes # .md hashes current?
70
+ task check-compression # Compression quality OK?
71
+ task lint-skills-pairs # Source vs compressed comparison
72
+ ```
73
+
74
+ ### Fixing
75
+
76
+ ```bash
77
+ task sync # Copy non-.md files
78
+ task sync-mark-all-done # Mark all hashes as current (after manual compress)
79
+ task consistency-fix # Regenerate ALL derived outputs
80
+ ```
81
+
82
+ ---
83
+
84
+ ## Runtime artifacts
85
+
86
+ Skills dispatched via `scripts/runtime_dispatcher.py run --skill NAME --output FILE`
87
+ write a typed `ExecutionResult` JSON (exit code, stdout, stderr, duration,
88
+ artifacts) to the given path. In CI, the two pilot skills `lint-skills`
89
+ and `check-refs` write to `agents/reports/runs/` and
90
+ `scripts/ci_summary.py` renders them into the GitHub Step Summary so
91
+ failures are visible on the PR page.
92
+
93
+ No data is auto-injected into agent context and no persistent metrics,
94
+ feedback, or audit logs are collected.
95
+
96
+ ---
97
+
98
+ ← [Back to README](../README.md)