@event4u/agent-config 1.20.0 → 1.22.0

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 (268) hide show
  1. package/.agent-src/commands/agents.md +1 -1
  2. package/.agent-src/commands/bug-fix.md +2 -1
  3. package/.agent-src/commands/bug-investigate.md +3 -2
  4. package/.agent-src/commands/challenge-me/vision.md +348 -0
  5. package/.agent-src/commands/challenge-me/with-docs.md +333 -0
  6. package/.agent-src/commands/challenge-me.md +61 -0
  7. package/.agent-src/commands/chat-history/import.md +60 -64
  8. package/.agent-src/commands/compress.md +12 -0
  9. package/.agent-src/commands/context/create.md +2 -2
  10. package/.agent-src/commands/context.md +1 -1
  11. package/.agent-src/commands/copilot-agents.md +1 -1
  12. package/.agent-src/commands/council/default.md +69 -10
  13. package/.agent-src/commands/council.md +1 -1
  14. package/.agent-src/commands/create-pr.md +7 -3
  15. package/.agent-src/commands/e2e-heal.md +1 -1
  16. package/.agent-src/commands/e2e-plan.md +1 -1
  17. package/.agent-src/commands/feature/dev.md +3 -3
  18. package/.agent-src/commands/feature.md +1 -1
  19. package/.agent-src/commands/fix/seeder.md +2 -2
  20. package/.agent-src/commands/fix.md +1 -1
  21. package/.agent-src/commands/grill-me.md +38 -0
  22. package/.agent-src/commands/jira-ticket.md +1 -1
  23. package/.agent-src/commands/judge/steps.md +1 -1
  24. package/.agent-src/commands/judge.md +2 -2
  25. package/.agent-src/commands/memory.md +1 -1
  26. package/.agent-src/commands/mode.md +5 -5
  27. package/.agent-src/commands/module.md +1 -1
  28. package/.agent-src/commands/onboard.md +4 -4
  29. package/.agent-src/commands/optimize/augmentignore.md +1 -1
  30. package/.agent-src/commands/optimize-prompt.md +61 -0
  31. package/.agent-src/commands/optimize.md +1 -1
  32. package/.agent-src/commands/override.md +1 -1
  33. package/.agent-src/commands/review-changes.md +1 -1
  34. package/.agent-src/commands/review-routing.md +1 -1
  35. package/.agent-src/commands/roadmap/ai-council.md +183 -0
  36. package/.agent-src/commands/roadmap/create.md +6 -1
  37. package/.agent-src/commands/roadmap/process-full.md +58 -0
  38. package/.agent-src/commands/roadmap/process-phase.md +69 -0
  39. package/.agent-src/commands/roadmap/process-step.md +57 -0
  40. package/.agent-src/commands/roadmap.md +45 -17
  41. package/.agent-src/commands/set-cost-profile.md +3 -3
  42. package/.agent-src/commands/sync-agent-settings.md +2 -2
  43. package/.agent-src/commands/tests/create.md +2 -2
  44. package/.agent-src/commands/tests.md +1 -1
  45. package/.agent-src/commands/threat-model.md +5 -4
  46. package/.agent-src/contexts/augment-infrastructure.md +1 -1
  47. package/.agent-src/contexts/authority/commit-mechanics.md +14 -1
  48. package/.agent-src/contexts/authority/destructive-mechanics.md +14 -1
  49. package/.agent-src/contexts/authority/scope-mechanics.md +5 -0
  50. package/.agent-src/contexts/communication/rules-auto/guidelines-mechanics.md +76 -0
  51. package/.agent-src/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md +54 -19
  52. package/.agent-src/contexts/communication/rules-auto/think-before-action-mechanics.md +98 -0
  53. package/.agent-src/contexts/communication/rules-auto/token-efficiency-mechanics.md +93 -0
  54. package/.agent-src/contexts/communication/rules-auto/user-interaction-mechanics.md +128 -5
  55. package/.agent-src/contexts/execution/autonomy-mechanics.md +44 -0
  56. package/.agent-src/contexts/execution/roadmap-process-loop.md +125 -0
  57. package/.agent-src/contexts/model-recommendations.md +2 -2
  58. package/.agent-src/contexts/override-system.md +1 -1
  59. package/.agent-src/contexts/skills-and-commands.md +1 -1
  60. package/.agent-src/personas/product-owner.md +2 -2
  61. package/.agent-src/personas/qa.md +1 -1
  62. package/.agent-src/rules/agent-authority.md +5 -6
  63. package/.agent-src/rules/agent-docs.md +11 -53
  64. package/.agent-src/rules/analysis-skill-routing.md +10 -40
  65. package/.agent-src/rules/architecture.md +6 -1
  66. package/.agent-src/rules/artifact-drafting-protocol.md +5 -0
  67. package/.agent-src/rules/artifact-engagement-recording.md +23 -59
  68. package/.agent-src/rules/ask-when-uncertain.md +24 -47
  69. package/.agent-src/rules/augment-portability.md +14 -62
  70. package/.agent-src/rules/augment-source-of-truth.md +10 -1
  71. package/.agent-src/rules/autonomous-execution.md +17 -98
  72. package/.agent-src/rules/capture-learnings.md +9 -80
  73. package/.agent-src/rules/cli-output-handling.md +12 -42
  74. package/.agent-src/rules/command-suggestion-policy.md +25 -73
  75. package/.agent-src/rules/commit-conventions.md +9 -58
  76. package/.agent-src/rules/commit-policy.md +16 -47
  77. package/.agent-src/rules/context-hygiene.md +5 -0
  78. package/.agent-src/rules/direct-answers.md +21 -50
  79. package/.agent-src/rules/docker-commands.md +11 -45
  80. package/.agent-src/rules/docs-sync.md +10 -56
  81. package/.agent-src/rules/downstream-changes.md +5 -0
  82. package/.agent-src/rules/e2e-testing.md +9 -44
  83. package/.agent-src/rules/guidelines.md +13 -75
  84. package/.agent-src/rules/improve-before-implement.md +11 -2
  85. package/.agent-src/rules/invite-challenge.md +71 -0
  86. package/.agent-src/rules/language-and-tone.md +41 -106
  87. package/.agent-src/rules/laravel-translations.md +11 -40
  88. package/.agent-src/rules/markdown-safe-codeblocks.md +4 -0
  89. package/.agent-src/rules/minimal-safe-diff.md +4 -0
  90. package/.agent-src/rules/missing-tool-handling.md +4 -0
  91. package/.agent-src/rules/model-recommendation.md +9 -61
  92. package/.agent-src/rules/no-attribution-footers.md +5 -0
  93. package/.agent-src/rules/no-cheap-questions.md +11 -27
  94. package/.agent-src/rules/no-council-references.md +76 -0
  95. package/.agent-src/rules/no-roadmap-references.md +7 -0
  96. package/.agent-src/rules/non-destructive-by-default.md +13 -43
  97. package/.agent-src/rules/onboarding-gate.md +9 -117
  98. package/.agent-src/rules/package-ci-checks.md +10 -37
  99. package/.agent-src/rules/php-coding.md +10 -55
  100. package/.agent-src/rules/preservation-guard.md +9 -0
  101. package/.agent-src/rules/review-routing-awareness.md +9 -97
  102. package/.agent-src/rules/reviewer-awareness.md +8 -83
  103. package/.agent-src/rules/roadmap-progress-sync.md +7 -170
  104. package/.agent-src/rules/role-mode-adherence.md +6 -2
  105. package/.agent-src/rules/rule-type-governance.md +8 -66
  106. package/.agent-src/rules/runtime-safety.md +5 -0
  107. package/.agent-src/rules/scope-control.md +17 -62
  108. package/.agent-src/rules/security-sensitive-stop.md +7 -1
  109. package/.agent-src/rules/size-enforcement.md +6 -1
  110. package/.agent-src/rules/skill-improvement-trigger.md +9 -49
  111. package/.agent-src/rules/skill-quality.md +7 -113
  112. package/.agent-src/rules/slash-command-routing-policy.md +11 -63
  113. package/.agent-src/rules/think-before-action.md +22 -87
  114. package/.agent-src/rules/token-efficiency.md +10 -74
  115. package/.agent-src/rules/token-optimizer-maintenance.md +68 -0
  116. package/.agent-src/rules/tool-safety.md +4 -0
  117. package/.agent-src/rules/ui-audit-gate.md +25 -61
  118. package/.agent-src/rules/upstream-proposal.md +9 -67
  119. package/.agent-src/rules/user-interaction.md +22 -108
  120. package/.agent-src/rules/verify-before-complete.md +1 -1
  121. package/.agent-src/skills/adversarial-review/SKILL.md +1 -0
  122. package/.agent-src/skills/agent-docs-writing/SKILL.md +1 -1
  123. package/.agent-src/skills/ai-council/SKILL.md +197 -8
  124. package/.agent-src/skills/analysis-autonomous-mode/SKILL.md +1 -1
  125. package/.agent-src/skills/analysis-skill-router/SKILL.md +3 -3
  126. package/.agent-src/skills/artisan-commands/SKILL.md +2 -2
  127. package/.agent-src/skills/authz-review/SKILL.md +1 -1
  128. package/.agent-src/skills/aws-infrastructure/SKILL.md +5 -5
  129. package/.agent-src/skills/blast-radius-analyzer/SKILL.md +8 -8
  130. package/.agent-src/skills/bug-analyzer/SKILL.md +6 -5
  131. package/.agent-src/skills/code-refactoring/SKILL.md +4 -4
  132. package/.agent-src/skills/code-review/SKILL.md +2 -2
  133. package/.agent-src/skills/command-writing/SKILL.md +11 -0
  134. package/.agent-src/skills/composer-packages/SKILL.md +2 -2
  135. package/.agent-src/skills/context-authoring/SKILL.md +11 -0
  136. package/.agent-src/skills/context-document/SKILL.md +1 -1
  137. package/.agent-src/skills/copilot-agents-optimization/SKILL.md +23 -0
  138. package/.agent-src/skills/copilot-config/SKILL.md +1 -1
  139. package/.agent-src/skills/dependency-upgrade/SKILL.md +2 -2
  140. package/.agent-src/skills/devcontainer/SKILL.md +2 -2
  141. package/.agent-src/skills/developer-like-execution/SKILL.md +1 -1
  142. package/.agent-src/skills/docker/SKILL.md +1 -1
  143. package/.agent-src/skills/dto-creator/SKILL.md +1 -1
  144. package/.agent-src/skills/estimate-ticket/SKILL.md +2 -2
  145. package/.agent-src/skills/fe-design/SKILL.md +4 -4
  146. package/.agent-src/skills/feature-planning/SKILL.md +5 -5
  147. package/.agent-src/skills/funnel-analysis/SKILL.md +1 -1
  148. package/.agent-src/skills/laravel/SKILL.md +1 -1
  149. package/.agent-src/skills/laravel-notifications/SKILL.md +5 -5
  150. package/.agent-src/skills/laravel-pennant/SKILL.md +1 -1
  151. package/.agent-src/skills/laravel-pulse/SKILL.md +4 -4
  152. package/.agent-src/skills/laravel-reverb/SKILL.md +2 -2
  153. package/.agent-src/skills/laravel-scheduling/SKILL.md +1 -1
  154. package/.agent-src/skills/migration-creator/SKILL.md +7 -7
  155. package/.agent-src/skills/multi-tenancy/SKILL.md +8 -8
  156. package/.agent-src/skills/performance-analysis/SKILL.md +3 -3
  157. package/.agent-src/skills/pest-testing/SKILL.md +6 -6
  158. package/.agent-src/skills/php-service/SKILL.md +2 -2
  159. package/.agent-src/skills/project-analysis-hypothesis-driven/SKILL.md +3 -3
  160. package/.agent-src/skills/project-analysis-react/SKILL.md +1 -1
  161. package/.agent-src/skills/project-analysis-symfony/SKILL.md +1 -1
  162. package/.agent-src/skills/project-analysis-zend-laminas/SKILL.md +2 -2
  163. package/.agent-src/skills/project-analyzer/SKILL.md +4 -4
  164. package/.agent-src/skills/prompt-optimizer/SKILL.md +108 -0
  165. package/.agent-src/skills/readme-reviewer/SKILL.md +1 -1
  166. package/.agent-src/skills/roadmap-management/SKILL.md +7 -7
  167. package/.agent-src/skills/rule-writing/SKILL.md +33 -0
  168. package/.agent-src/skills/sentry-integration/SKILL.md +1 -1
  169. package/.agent-src/skills/skill-writing/SKILL.md +14 -0
  170. package/.agent-src/skills/systematic-debugging/SKILL.md +22 -2
  171. package/.agent-src/skills/technical-specification/SKILL.md +58 -1
  172. package/.agent-src/skills/terraform/SKILL.md +2 -2
  173. package/.agent-src/skills/terragrunt/SKILL.md +8 -8
  174. package/.agent-src/skills/test-performance/SKILL.md +5 -5
  175. package/.agent-src/skills/threat-modeling/SKILL.md +3 -2
  176. package/.agent-src/skills/token-optimizer/SKILL.md +110 -0
  177. package/.agent-src/skills/universal-project-analysis/SKILL.md +1 -1
  178. package/.agent-src/templates/AGENTS.md +1 -1
  179. package/.agent-src/templates/agent-settings.md +35 -19
  180. package/.agent-src/templates/command.md +17 -1
  181. package/.agent-src/templates/contexts/tenant-boundaries.md +2 -2
  182. package/.agent-src/templates/contexts.md +1 -1
  183. package/.agent-src/templates/copilot-instructions.md +21 -0
  184. package/.agent-src/templates/copilot-review-instructions.md +76 -0
  185. package/.agent-src/templates/features.md +1 -1
  186. package/.agent-src/templates/roadmaps.md +10 -2
  187. package/.agent-src/templates/rule.md +129 -0
  188. package/.agent-src/templates/skill.md +17 -0
  189. package/.claude-plugin/marketplace.json +12 -2
  190. package/AGENTS.md +32 -5
  191. package/CHANGELOG.md +107 -3
  192. package/README.md +22 -21
  193. package/config/agent-settings.template.yml +66 -10
  194. package/config/gitignore-block.txt +7 -0
  195. package/docs/architecture.md +86 -5
  196. package/docs/catalog.md +16 -6
  197. package/docs/contracts/agent-memory-contract.md +1 -1
  198. package/docs/contracts/command-clusters.md +45 -1
  199. package/docs/contracts/context-paths.md +2 -1
  200. package/docs/contracts/file-ownership-matrix.json +354 -500
  201. package/docs/contracts/iron-law-overrides.txt +25 -0
  202. package/docs/contracts/kernel-membership.md +273 -0
  203. package/docs/contracts/load-context-schema.md +26 -11
  204. package/docs/contracts/pilot/agent-authority.md +24 -0
  205. package/docs/contracts/pilot/direct-answers.md +70 -0
  206. package/docs/contracts/pilot/language-and-tone.md +63 -0
  207. package/docs/contracts/rule-classification.md +170 -0
  208. package/docs/contracts/rule-router.md +153 -0
  209. package/docs/customization.md +17 -6
  210. package/docs/decisions/ADR-001-kernel-swap-deferred.md +109 -0
  211. package/docs/decisions/ADR-002-kernel-bucket-overrides.md +124 -0
  212. package/docs/decisions/ADR-003-flat-cluster-subs-and-colon-syntax.md +126 -0
  213. package/docs/decisions/ADR-rule-kernel-and-router.md +122 -0
  214. package/docs/getting-started.md +2 -2
  215. package/docs/guidelines/agent-infra/naming.md +1 -1
  216. package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +176 -0
  217. package/docs/guidelines/agent-infra/rule-type-governance.md +73 -0
  218. package/docs/guidelines/agent-infra/size-and-scope.md +13 -2
  219. package/docs/guidelines/agent-infra/skill-quality-checklist.md +119 -0
  220. package/docs/guidelines/augment-portability-patterns.md +68 -0
  221. package/docs/guidelines/php/php-coding-patterns.md +62 -0
  222. package/package.json +1 -1
  223. package/scripts/_p43_bodies.py +235 -0
  224. package/scripts/_p43_compress.py +118 -0
  225. package/scripts/_p4_migrate.py +199 -0
  226. package/scripts/_phase2_shim_helper.py +1 -1
  227. package/scripts/_pilot_council_question.py +57 -0
  228. package/scripts/_pilot_measure.py +53 -0
  229. package/scripts/ai_council/session.py +107 -5
  230. package/scripts/build_linear_digest.py +3 -5
  231. package/scripts/check_always_budget.py +39 -6
  232. package/scripts/check_compressed_paths.py +213 -0
  233. package/scripts/check_compression.py +15 -0
  234. package/scripts/check_context_paths.py +1 -0
  235. package/scripts/check_council_layout.py +105 -0
  236. package/scripts/check_council_references.py +145 -0
  237. package/scripts/check_portability.py +2 -0
  238. package/scripts/check_references.py +2 -0
  239. package/scripts/check_token_optimizer_freshness.py +131 -0
  240. package/scripts/compile_router.py +148 -0
  241. package/scripts/compress.py +219 -11
  242. package/scripts/council_cli.py +132 -11
  243. package/scripts/council_prune.py +81 -0
  244. package/scripts/count_token_optimizer_usage.sh +54 -0
  245. package/scripts/install.sh +44 -2
  246. package/scripts/iron_law_sha.py +98 -0
  247. package/scripts/lint_load_context.py +35 -5
  248. package/scripts/measure_rule_budget.py +314 -0
  249. package/scripts/migrate_command_suggestions.py +2 -2
  250. package/scripts/prototype_lint_contradictions.py +150 -0
  251. package/scripts/schemas/command.schema.json +5 -0
  252. package/scripts/schemas/rule.schema.json +60 -6
  253. package/scripts/schemas/skill.schema.json +5 -0
  254. package/scripts/skill_linter.py +197 -7
  255. package/scripts/smoke_path_resolution.py +93 -0
  256. package/scripts/validate_frontmatter.py +41 -1
  257. package/.agent-src/commands/roadmap/execute.md +0 -109
  258. package/.agent-src/contexts/communication/rules-auto/artifact-engagement-recording-mechanics.md +0 -72
  259. package/.agent-src/contexts/communication/rules-auto/augment-portability-mechanics.md +0 -79
  260. package/.agent-src/contexts/communication/rules-auto/cli-output-handling-mechanics.md +0 -87
  261. package/.agent-src/contexts/communication/rules-auto/command-suggestion-policy-mechanics.md +0 -62
  262. package/.agent-src/contexts/communication/rules-auto/docs-sync-mechanics.md +0 -78
  263. package/.agent-src/contexts/communication/rules-auto/package-ci-checks-mechanics.md +0 -85
  264. package/.agent-src/contexts/communication/rules-auto/review-routing-awareness-mechanics.md +0 -65
  265. package/.agent-src/contexts/communication/rules-auto/roadmap-progress-sync-mechanics.md +0 -78
  266. package/.agent-src/contexts/communication/rules-auto/ui-audit-gate-mechanics.md +0 -53
  267. /package/{docs → .agent-src/contexts}/contracts/artifact-engagement-flow.md +0 -0
  268. /package/{docs → .agent-src/contexts}/contracts/command-suggestion-flow.md +0 -0
@@ -56,7 +56,7 @@ Run grep/search for the exact symbol, column, or event name. Enumerate:
56
56
  | DB references | Foreign keys, indexes, views, triggers on the column |
57
57
  | Config / docs | YAML, JSON, Markdown that name the symbol |
58
58
 
59
- ### 3. Inspect indirect dependencies
59
+ ### 3. Inspect indirect deps
60
60
 
61
61
  For each direct dependency, identify second-order fan-out:
62
62
 
@@ -91,7 +91,7 @@ keys=<changed paths + changed symbol>, limit=5)`. Surface:
91
91
  the direct grep had no result.
92
92
 
93
93
  Memory entries are supplementary, never authoritative: a grep miss is
94
- still a grep miss. Do not infer dependencies from memory alone.
94
+ still a grep miss. Do not infer deps from memory alone.
95
95
 
96
96
  ## Validation
97
97
 
@@ -102,8 +102,8 @@ Before finalizing the report, confirm:
102
102
  3. Second-order fan-out is bounded — any runaway chain is flagged, not expanded
103
103
  4. Every `external` reach has at least one named owner hint or an explicit
104
104
  "owner unknown — ask"
105
- 5. You have NOT invented dependencies that grep did not find
106
- 6. You have NOT merged direct and indirect dependencies — they are listed separately
105
+ 5. You have NOT invented deps that grep did not find
106
+ 6. You have NOT merged direct and indirect deps — they are listed separately
107
107
 
108
108
  ## Output format
109
109
 
@@ -143,10 +143,10 @@ Open questions:
143
143
  Required fields (ordered):
144
144
 
145
145
  1. **Skill** and **Change** — one-line edit summary
146
- 2. **Direct dependencies** — grouped by class, each with file:line citations and exact counts
147
- 3. **Indirect dependencies** — 2nd-order only, bounded
146
+ 2. **Direct deps** — grouped by class, each with file:line citations and exact counts
147
+ 3. **Indirect deps** — 2nd-order only, bounded
148
148
  4. **Reach summary** — counts per reach level
149
- 5. **Risk surfaces** — dependencies grouped by risk type
149
+ 5. **Risk surfaces** — deps grouped by risk type
150
150
  6. **Open questions** — unresolved items with grep evidence
151
151
 
152
152
  Runtime confirmation (e.g. *"actually run the test suite to see what breaks"*,
@@ -172,7 +172,7 @@ does not execute code, run tests, or touch the network**.
172
172
  * NEVER return `safe` out of politeness when external reach exists — mark it clearly
173
173
  * NEVER silently fall back to "module-level impact" when grep shows cross-module callers
174
174
  * NEVER claim a dependency without a file:line citation from grep output
175
- * NEVER chase dependencies past 2nd order without explicit scope approval — flag and stop
175
+ * NEVER chase deps past 2nd order without explicit scope approval — flag and stop
176
176
 
177
177
  ## References
178
178
 
@@ -2,6 +2,7 @@
2
2
  name: bug-analyzer
3
3
  description: "Use when the user shares a Sentry error, Jira bug ticket, or error description and wants root cause analysis. Also for proactive bug hunting and code audits for hidden bugs."
4
4
  source: package
5
+ council_depth: deep
5
6
  ---
6
7
 
7
8
  # bug-analyzer
@@ -116,7 +117,7 @@ This is especially important for:
116
117
 
117
118
  - Find **working examples** of similar code paths in the codebase.
118
119
  - Compare the broken path against the working reference.
119
- - Identify the **specific difference** that causes the failure.
120
+ - Identify the **specific difference** that the failure.
120
121
  - Check if the issue is isolated or part of a broader pattern.
121
122
 
122
123
  ### Phase 3: Hypothesis and Testing
@@ -129,11 +130,11 @@ This is especially important for:
129
130
  - Each fix reveals new shared state or coupling in a different place.
130
131
  - Fixes require "massive refactoring" to implement.
131
132
  - Each fix creates new symptoms elsewhere.
132
- - Common root causes in this project:
133
+ - Common root in this project:
133
134
  - **Missing validation** on external sync data (CSV, XML, JSON imports).
134
135
  - **Null values** from optional DB columns not handled.
135
136
  - **Type mismatches** between legacy DB columns and PHP code.
136
- - **Race conditions** in multi-tenant database switching.
137
+ - **Race conditions** in multi-tenant DB switching.
137
138
  - **Missing fallbacks** when external services are unavailable.
138
139
 
139
140
  ### Phase 4: Implementation
@@ -221,10 +222,10 @@ Focus on the "Bug fixes" attack questions: Is this the root cause or a symptom?
221
222
  |---|---|
222
223
  | "Should work now" | RUN the verification — confidence ≠ evidence |
223
224
  | "It's probably X, let me fix that" | "Probably" = guessing. Complete Phase 1 first |
224
- | "Quick fix for now" | Quick fixes mask root causes and create technical debt |
225
+ | "Quick fix for now" | Quick fixes mask root and create technical debt |
225
226
  | "I'll investigate later" | Later never comes. Investigate now |
226
227
  | "One more fix attempt" (after 2+) | 3+ failures = architectural problem. Stop and discuss |
227
- | "Issue is simple, don't need process" | Simple issues have root causes too. Process is fast for simple bugs |
228
+ | "Issue is simple, don't need process" | Simple issues have root too. Process is fast for simple bugs |
228
229
  | "Emergency, no time for process" | Systematic debugging is FASTER than guess-and-check thrashing |
229
230
 
230
231
  ## Output format
@@ -33,7 +33,7 @@ Do NOT use when:
33
33
  - Rename, extract, move, or restructure the target code.
34
34
  - Keep the change minimal and focused.
35
35
 
36
- ### Step 2: Update all downstream dependencies
36
+ ### Step 2: Update all downstream deps
37
37
 
38
38
  For each affected file (from the impact analysis):
39
39
 
@@ -141,9 +141,9 @@ After the code changes are verified, update all affected documentation:
141
141
  1. Update controller + request + resource + OpenAPI schemas + route → present test changes →
142
142
  update docs (`agents/docs/controller.md`, `agents/docs/api-resources.md`) → run PHPStan → run tests.
143
143
 
144
- ### Replace implementation (e.g. switch service)
145
- 1. Create new implementation → update binding → find all direct references → update → present test
146
- changes → update docs → run PHPStan → run tests → remove old implementation.
144
+ ### Replace impl (e.g. switch service)
145
+ 1. Create new impl → update binding → find all direct references → update → present test
146
+ changes → update docs → run PHPStan → run tests → remove old impl.
147
147
 
148
148
  ### Move/restructure module
149
149
  1. Move files → update namespaces → update `ModuleServiceProvider` if needed → update module routes →
@@ -113,7 +113,7 @@ When receiving code review feedback, follow this sequence:
113
113
  6. **IMPLEMENT** — One item at a time, test each.
114
114
 
115
115
  If **any item is unclear**, STOP — do not implement anything yet. Items may be related;
116
- partial understanding leads to wrong implementation.
116
+ partial understanding wrong impl.
117
117
 
118
118
  ### No performative agreement
119
119
 
@@ -131,7 +131,7 @@ partial understanding leads to wrong implementation.
131
131
  **External / Copilot / bot feedback** (less context):
132
132
  - Check: Technically correct for THIS codebase?
133
133
  - Check: Does it break existing functionality?
134
- - Check: Is there a reason for the current implementation?
134
+ - Check: Is there a reason for the current impl?
135
135
  - Check: Does the reviewer understand the full context?
136
136
  - **YAGNI check:** If the reviewer suggests "implementing properly", grep the codebase
137
137
  for actual usage. If unused → suggest removing (YAGNI).
@@ -114,6 +114,17 @@ Required sections in this order:
114
114
  * If the command calls external APIs, list required keys / permissions.
115
115
  * If the command edits agent files, target `.agent-src.uncompressed/` only.
116
116
 
117
+ ### 3b. Path conventions in command body
118
+
119
+ Body links to guidelines / contracts use the verbatim relative form
120
+ (`../../docs/guidelines/...`, `../../docs/contracts/...`); the
121
+ compress-time rewriter handles depth. Do not pre-rewrite in source. Do
122
+ not write `.agent-src.uncompressed/` in any markdown link target — the
123
+ file ships into `.augment/commands/` and the prefix breaks consumer
124
+ resolution. The only legitimate `.agent-src.uncompressed/` strings in a
125
+ command file are prose mentions and step instructions about where to
126
+ edit (per § 2 above). Canonical reference: `rule-writing` § 3b.
127
+
117
128
  ### 4. Enforce the size budget
118
129
 
119
130
  Normative source: [`size-enforcement`](../../rules/size-enforcement.md) +
@@ -148,7 +148,7 @@ Packages are published to a private Composer registry. Check the organization's
148
148
  ## Output format
149
149
 
150
150
  1. Package files following standard Composer structure
151
- 2. Updated composer.json with correct autoloading and dependencies
151
+ 2. Updated composer.json with correct autoloading and deps
152
152
  3. Service provider and config publishing (if Laravel package)
153
153
 
154
154
  ## Auto-trigger keywords
@@ -167,6 +167,6 @@ Packages are published to a private Composer registry. Check the organization's
167
167
 
168
168
  - Do NOT use `*` version constraints in library packages.
169
169
  - Do NOT require specific patch versions — use `^` or `||` ranges.
170
- - Do NOT include dev dependencies in `require` — use `require-dev`.
170
+ - Do NOT include dev deps in `require` — use `require-dev`.
171
171
  - Do NOT forget to run `composer validate` before publishing.
172
172
  - Do NOT publish without updating the changelog and tagging.
@@ -145,6 +145,17 @@ has to confirm or correct, not invent from scratch.
145
145
  `tenant-boundaries.md` SHOULD be deleted, not stubbed — the checklist
146
146
  explicitly says so at the top of the file.
147
147
 
148
+ ## Path conventions when a context cites another context
149
+
150
+ If the context file declares its own `load_context:` (chain reasoning),
151
+ use logical names rooted at the source — `contexts/<area>/<file>.md`
152
+ for package material or `agents/contexts/<file>.md` for project-local
153
+ material. The `.agent-src.uncompressed/` prefix is rejected by the
154
+ schema regex and by `scripts/lint_load_context.py`. Body links to
155
+ `docs/guidelines/...` use the verbatim `../../docs/...` relative form.
156
+ Canonical reference: `rule-writing` § 3b and
157
+ `docs/contracts/load-context-schema.md`.
158
+
148
159
  ## Do NOT
149
160
 
150
161
  - Do NOT copy content between projects. Every context file is local to its
@@ -59,7 +59,7 @@ app/Modules/{Module}/agents/contexts/ # Module-scoped contexts
59
59
  |---|---|---|
60
60
  | **Module** | Single module's structure and purpose | `client-software.md` |
61
61
  | **Domain** | Business domain across modules | `import-pipeline.md` |
62
- | **Service** | Complex service with its dependencies | `customer-service.md` |
62
+ | **Service** | Complex service with its deps | `customer-service.md` |
63
63
  | **Integration** | External API/system integration | `probaus-api.md` |
64
64
  | **Infrastructure** | DevOps or infrastructure concern | `queue-system.md` |
65
65
 
@@ -169,10 +169,33 @@ When the drift is severe (whole sections are wrong), recommend
169
169
  `/copilot-agents-init` to scaffold a clean replacement rather than
170
170
  patching forever.
171
171
 
172
+ ## agent-config Path Conventions — Preserve, Don't "Fix"
173
+
174
+ `copilot-instructions.md` ships a "Known False Positives" section that
175
+ tells Copilot Code Review not to flag agent-config path patterns as
176
+ broken. When optimizing, **keep that section intact** — never delete
177
+ it as "redundant" and never trim its bullets. The patterns it covers:
178
+
179
+ - Relative cross-references inside `.augment/` rules / skills
180
+ (`../docs/guidelines/foo.md`, `../contexts/bar.md`) — paths resolve
181
+ from the file's delivered location, not from the symlink in
182
+ `.claude/rules/` etc. (per `road-to-path-fixes.md` Strategy A).
183
+ - `path_prefix:` triggers containing `.agent-src.uncompressed/` —
184
+ literal match patterns, not file refs (per Modified Option 1,
185
+ P2.2).
186
+ - Symlinked rule files under `.claude/rules/`, `.cursor/rules/`,
187
+ `.clinerules/` — targets resolve into `.augment/rules/`.
188
+
189
+ If the consumer project's `copilot-instructions.md` is missing the
190
+ section, **add it** during optimization using the canonical block
191
+ from `.augment/templates/copilot-instructions.md`. Surfaces include
192
+ `/copilot-agents init` and `/copilot-agents optimize`.
193
+
172
194
  ## Optimization Checklist
173
195
 
174
196
  When optimizing either file, check:
175
197
 
198
+ - [ ] "Known False Positives" section present and unmodified?
176
199
  - [ ] No identifiers from other projects (FORBIDDEN_IDENTIFIERS blocklist)?
177
200
  - [ ] Tech stack claims match actual project dependencies?
178
201
  - [ ] All referenced commands/targets exist (Makefile, composer scripts, artisan, task)?
@@ -187,7 +187,7 @@ Copilot and Augment complement each other:
187
187
  ## Gotcha
188
188
 
189
189
  - copilot-instructions.md is for GitHub Copilot, NOT for Augment — don't mix audiences.
190
- - Don't duplicate .augment/ content into copilot-instructions.md — it bloats the file and causes drift.
190
+ - Don't duplicate .augment/ content into copilot-instructions.md — it bloats the file and drift.
191
191
  - Copilot reads the ENTIRE instructions file on every request — keep it under 500 lines.
192
192
 
193
193
  ## Do NOT
@@ -11,7 +11,7 @@ source: package
11
11
  Use this skill when upgrading Composer packages, npm packages, or any project dependency.
12
12
 
13
13
  Do NOT use when:
14
- - Installing new dependencies for the first time
14
+ - Installing new deps for the first time
15
15
  - Routine code changes unrelated to package versions
16
16
 
17
17
  ## Procedure: Upgrade a dependency
@@ -164,7 +164,7 @@ npm audit
164
164
  |---|---|---|
165
165
  | **Known CVEs** | `composer audit` / `npm audit` | Direct vulnerabilities |
166
166
  | **Maintenance status** | GitHub: last commit, open issues | Abandoned packages are a risk |
167
- | **Dependency tree** | `composer show -t vendor/pkg` / `npm ls new-package` | Transitive dependencies may conflict |
167
+ | **Dependency tree** | `composer show -t vendor/pkg` / `npm ls new-package` | Transitive deps may conflict |
168
168
  | **License compatibility** | `composer licenses` / check `package.json` | Legal compliance |
169
169
  | **Bundle size** (npm) | `npx bundlephobia new-package` | Impact on frontend bundle |
170
170
 
@@ -18,7 +18,7 @@ Do NOT use when:
18
18
 
19
19
  1. **Gather context** — read `.devcontainer/devcontainer.json`, check `.devcontainer/` for env files and docs, check `agents/overrides/skills/devcontainer.md` for project-specific overrides.
20
20
  2. **Identify change type** — classify: image change, feature addition, secret addition, extension change, or env var change.
21
- 3. **Make the change** — edit `devcontainer.json` (or related files). Follow conventions below for secrets, features, and environment variables.
21
+ 3. **Make the change** — edit `devcontainer.json` (or related files). Follow conventions below for secrets, features, and env variables.
22
22
  4. **Build and verify** — run `devcontainer build` to confirm the container builds. Check that extensions load and ports forward correctly.
23
23
  5. **Document** — if adding a new secret or dependency, update the onboarding docs in `.devcontainer/`.
24
24
 
@@ -92,7 +92,7 @@ Read `devcontainer.json` for the actual secret definitions and requirements.
92
92
 
93
93
  - DevContainer
94
94
  - Codespaces
95
- - dev environment
95
+ - dev env
96
96
  - container setup
97
97
 
98
98
  ### Validate
@@ -217,7 +217,7 @@ Never load full output into context when a filter gives you the answer.
217
217
 
218
218
  Tests are mandatory when behavior changes or bugs are fixed.
219
219
 
220
- Prefer: failing test first → implementation → passing test.
220
+ Prefer: failing test first → impl → passing test.
221
221
 
222
222
  Test types: unit (isolated logic), feature/integration (behavior), UI (frontend), regression (bugs).
223
223
 
@@ -227,7 +227,7 @@ RUN --mount=type=cache,target=/root/.npm \
227
227
 
228
228
  - All PHP commands (artisan, composer, phpunit) must run INSIDE the PHP container — never on the host.
229
229
  - The fast container and Xdebug container share the same codebase but have different PHP configs — don't confuse them.
230
- - `docker compose down -v` destroys volumes including the database — use `down` without `-v` unless you mean it.
230
+ - `docker compose down -v` destroys volumes including the DB — use `down` without `-v` unless you mean it.
231
231
  - The model forgets to use `docker compose exec -T` (no TTY) when running in scripts or CI.
232
232
 
233
233
  ## Do NOT
@@ -101,7 +101,7 @@ Always check `composer.json` for DTO-related packages before choosing the approa
101
101
 
102
102
  - DTOs must extend `SimpleDto` — don't create plain PHP classes as DTOs.
103
103
  - The model forgets to add the model linkage (`$modelClass`) when the DTO maps to an Eloquent model.
104
- - Attribute names in the DTO must match the database column names (snake_case), not the PHP property names.
104
+ - Attribute names in the DTO must match the DB column names (snake_case), not the PHP property names.
105
105
 
106
106
  ## Do NOT
107
107
 
@@ -65,7 +65,7 @@ Before producing numbers, check:
65
65
  - Is there a rollback plan implied?
66
66
 
67
67
  If the ticket scores low on estimability (vague AC, no out-of-scope,
68
- no mention of dependencies), set `uncertainty = Underspecified` and
68
+ no mention of deps), set `uncertainty = Underspecified` and
69
69
  emit a single-line redirect to `/refine-ticket` at the top of the output.
70
70
 
71
71
  ### 3. Apply sizing heuristics
@@ -166,7 +166,7 @@ copy-paste instructions if missing.
166
166
  - Estimators default to optimism. Every size must cite evidence for at least one of the four axes — not "feels like M".
167
167
  - `Underspecified` is not a safe default. Use it only when estimability actually fails; otherwise pick a size and state the risk.
168
168
  - `Split: Yes` without concrete split points is useless. Name the slices or drop the recommendation.
169
- - Persona voices drift into general feedback. Each sentence must be about **sizing** — developer talks implementation size, stakeholder talks timeline fit, etc.
169
+ - Persona voices drift into general feedback. Each sentence must be about **sizing** — developer talks impl size, stakeholder talks timeline fit, etc.
170
170
  - Story-point mapping (`S=2 / M=3 / L=5 / XL=8`) is the default; projects may override — do NOT hardcode their scale into this skill.
171
171
 
172
172
  ## Do NOT
@@ -40,7 +40,7 @@ Do NOT use this skill to:
40
40
  `directives/ui/design.py` produces the design brief (layout, components,
41
41
  states, microcopy, a11y). The brief picks heuristics from this reference
42
42
  when the audit doesn't already pin a project pattern. Stack-specific
43
- choices come from the dispatched implementation skill, not from here.
43
+ choices come from the dispatched impl skill, not from here.
44
44
 
45
45
  ## Component Architecture
46
46
 
@@ -203,7 +203,7 @@ When `directives/ui/design.py` (or any caller) cites this skill:
203
203
  1. **Confirm the audit ran first** — `state.ui_audit` from [`existing-ui-audit`](../existing-ui-audit/SKILL.md) is mandatory. Stop and request the audit if missing.
204
204
  2. **Pick the smallest matching section** — Component Architecture, Form Design, Table Design, Responsive Strategy, Accessibility, or UX Principles. Cite by H2/H3 heading, never paste the whole skill.
205
205
  3. **Defer to audit findings** — when the audit pins a project pattern (token, primitive, layout convention), use it. The heuristics here are fallbacks for gaps, not overrides.
206
- 4. **Defer to the stack apply skill** — Blade vs. Livewire vs. Flux vs. React-shadcn choices come from the dispatched implementation skill, never from this reference.
206
+ 4. **Defer to the stack apply skill** — Blade vs. Livewire vs. Flux vs. React-shadcn choices come from the dispatched impl skill, never from this reference.
207
207
  5. **Surface conflicts** — if a heuristic here contradicts an audit finding or stack convention, name both and let the caller decide; do not silently pick.
208
208
 
209
209
  ## Output format
@@ -220,8 +220,8 @@ When this skill's content is folded into a design brief or review:
220
220
  - **Orchestrator:** [`directives/ui/`](../../templates/scripts/work_engine/directives/ui/) — owns the UI flow
221
221
  - **Pre-step (mandatory):** [`existing-ui-audit`](../existing-ui-audit/SKILL.md) — inventory before design
222
222
  - **Stack apply skills (dispatched, not standalone):**
223
- - [`blade-ui`](../blade-ui/SKILL.md) — Blade template implementation
224
- - [`livewire`](../livewire/SKILL.md) — Livewire component implementation
223
+ - [`blade-ui`](../blade-ui/SKILL.md) — Blade template impl
224
+ - [`livewire`](../livewire/SKILL.md) — Livewire component impl
225
225
  - [`flux`](../flux/SKILL.md) — Flux component library usage
226
226
  - [`react-shadcn-ui`](../react-shadcn-ui/SKILL.md) — React + shadcn primitives
227
227
  - **Adjacent reference:** [`dashboard-design`](../dashboard-design/SKILL.md) — monitoring dashboard design (different domain)
@@ -100,7 +100,7 @@ Discovery → Exploration → Questions → Architecture → Implementation →
100
100
  - **Wait for answers before proceeding.**
101
101
 
102
102
  #### Phase 4: Architecture Design
103
- - Design 2-3 implementation approaches with different tradeoffs:
103
+ - Design 2-3 impl approaches with different tradeoffs:
104
104
  - **Minimal changes** — smallest change, maximum reuse.
105
105
  - **Clean architecture** — maintainability, elegant abstractions.
106
106
  - **Pragmatic balance** — speed + quality.
@@ -114,7 +114,7 @@ Discovery → Exploration → Questions → Architecture → Implementation →
114
114
  - Track progress via task list or roadmap.
115
115
 
116
116
  #### Phase 6: Quality Review
117
- - Review the implementation for:
117
+ - Review the impl for:
118
118
  - Simplicity, DRY, elegance.
119
119
  - Bugs and correctness.
120
120
  - Convention adherence.
@@ -183,7 +183,7 @@ module's `agents/` directory:
183
183
  Before creating a feature plan, always:
184
184
  1. **Search the codebase** for related code, existing patterns, and affected areas.
185
185
  2. **Read module docs** if the feature touches a specific module.
186
- 3. **Check existing features** in `agents/features/` for overlap or dependencies.
186
+ 3. **Check existing features** in `agents/features/` for overlap or deps.
187
187
 
188
188
  ### Be collaborative
189
189
 
@@ -194,7 +194,7 @@ Before creating a feature plan, always:
194
194
 
195
195
  ### Keep it navigational
196
196
 
197
- Feature plans are decision documents, not implementation guides.
197
+ Feature plans are decision documents, not impl guides.
198
198
  Implementation details belong in roadmaps.
199
199
 
200
200
  ## Output format
@@ -221,6 +221,6 @@ Implementation details belong in roadmaps.
221
221
 
222
222
  - Do NOT create feature plans without user input — always collaborate.
223
223
  - Do NOT skip codebase research — always check what exists.
224
- - Do NOT put implementation steps in the feature plan — that's the roadmap's job.
224
+ - Do NOT put impl steps in the feature plan — that's the roadmap's job.
225
225
  - Do NOT commit or push without permission.
226
226
  - Do NOT duplicate information from `AGENTS.md` or module docs.
@@ -97,4 +97,4 @@ Do NOT use for ranking features, valuation, or OKR decomposition (see Related Sk
97
97
 
98
98
  1. **`funnel-table.md`** — 5-stage funnel with cohort rates, 95% CI, and 12-week trend (sparkline or compact ASCII). One row per cohort week or month.
99
99
  2. **`segment-breakdown.md`** — table of the broken stage segmented by channel · device · plan · geo. Rates with CIs. Suspect segments highlighted.
100
- 3. **`hypothesis-list.md`** — top 3 causes for the broken segment-stage with cheapest-falsification experiment per cause and an explicit prediction for the next measurement.
100
+ 3. **`hypothesis-list.md`** — top 3 for the broken segment-stage with cheapest-falsification experiment per cause and an explicit prediction for the next measurement.
@@ -123,7 +123,7 @@ Then add these **Laravel-specific** checks:
123
123
  ## Config and environment
124
124
 
125
125
  - Read configuration from config files, not directly from `env()` outside config files.
126
- - Do not introduce new environment variables unless necessary.
126
+ - Do not introduce new env variables unless necessary.
127
127
  - Reuse existing config structure and naming patterns.
128
128
 
129
129
  ## Database interaction
@@ -9,7 +9,7 @@ source: package
9
9
  ## When to use
10
10
 
11
11
  Use this skill when sending notifications to users or external systems:
12
- - Email, Slack, SMS, or database notifications
12
+ - Email, Slack, SMS, or DB notifications
13
13
  - Custom notification channels
14
14
  - On-demand notifications (to non-user recipients)
15
15
  - Notification preferences and opt-out logic
@@ -19,7 +19,7 @@ For **Mailables** (complex email templates, attachments), see [laravel-mail](../
19
19
  ## Procedure: Create a notification
20
20
 
21
21
  1. **Generate class** — `php artisan make:notification InvoiceCreated`.
22
- 2. **Choose channels** — Mail, database, Slack, or custom. Implement `via()`.
22
+ 2. **Choose channels** — Mail, DB, Slack, or custom. Implement `via()`.
23
23
  3. **Build content** — Implement `toMail()`, `toArray()`, etc. for each channel.
24
24
  4. **Queue it** — Add `ShouldQueue` interface for non-blocking delivery.
25
25
  5. **Verify** — Send test notification, confirm delivery on all channels.
@@ -154,15 +154,15 @@ public function via(object $notifiable): array
154
154
  - Notifiable
155
155
  - MailMessage
156
156
  - SlackMessage
157
- - database notification
157
+ - DB notification
158
158
 
159
159
  ## Gotcha
160
160
 
161
161
  - Don't send notifications synchronously in request lifecycle — always queue them.
162
- - The model forgets to implement `toArray()` for database notifications — it throws silently.
162
+ - The model forgets to implement `toArray()` for DB notifications — it throws silently.
163
163
  - `via()` method must return an array even for a single channel — `return ['mail']`, not `return 'mail'`.
164
164
 
165
165
  ## Do NOT
166
166
 
167
- - Do NOT store large objects in database notification `data` — use IDs and fetch on read.
167
+ - Do NOT store large objects in DB notification `data` — use IDs and fetch on read.
168
168
  - Do NOT use notifications for complex emails — use [Mailables](../laravel-mail/SKILL.md) instead.
@@ -176,7 +176,7 @@ Feature::for($users)->load(['new-dashboard', 'advanced-reporting']);
176
176
 
177
177
  ## Gotcha
178
178
 
179
- - Feature flags in database driver require migration — don't forget `php artisan pennant:purge` for cleanup.
179
+ - Feature flags in DB driver require migration — don't forget `php artisan pennant:purge` for cleanup.
180
180
  - The model tends to check flags without a scope — always pass the authenticated user or a default scope.
181
181
  - Don't nest feature flag checks — it makes the logic impossible to reason about.
182
182
 
@@ -126,9 +126,9 @@ Pulse::record('api_call', 'stripe', 250) // type, key, value
126
126
 
127
127
  ## Core rules
128
128
 
129
- - **Trim old data** — configure retention to prevent database bloat.
129
+ - **Trim old data** — configure retention to prevent DB bloat.
130
130
  - **Use sample rates** in production — not every request needs recording.
131
- - **Separate database** — consider a dedicated DB connection for Pulse data.
131
+ - **Separate DB** — consider a dedicated DB connection for Pulse data.
132
132
  - **Restrict access** — always gate the dashboard behind authentication.
133
133
  - **Monitor what matters** — don't enable all recorders if you don't need them.
134
134
 
@@ -148,7 +148,7 @@ Pulse::record('api_call', 'stripe', 250) // type, key, value
148
148
 
149
149
  ## Gotcha
150
150
 
151
- - Pulse stores data in the same database by default — configure a separate connection for production.
151
+ - Pulse stores data in the same DB by default — configure a separate connection for production.
152
152
  - The model forgets that Pulse data is sampled, not exact — don't use it for billing or exact counts.
153
153
  - Custom recorders must be registered in a service provider — they don't auto-discover.
154
154
 
@@ -157,4 +157,4 @@ Pulse::record('api_call', 'stripe', 250) // type, key, value
157
157
  - Do NOT expose the Pulse dashboard without authentication.
158
158
  - Do NOT set sample rate to 1.0 on high-traffic production — use 0.1 or lower.
159
159
  - Do NOT forget to run `pulse:check` for server metrics.
160
- - Do NOT store Pulse data in the main application database on large apps.
160
+ - Do NOT store Pulse data in the main application DB on large apps.
@@ -20,7 +20,7 @@ and Laravel Echo client setup, see the [websocket](../websocket/SKILL.md) skill.
20
20
  ## Procedure: Set up Reverb
21
21
 
22
22
  1. **Install** — `php artisan install:broadcasting` or manual setup (see below).
23
- 2. **Configure** — Set environment variables for Reverb host, port, app credentials.
23
+ 2. **Configure** — Set env variables for Reverb host, port, app credentials.
24
24
  3. **Start server** — `php artisan reverb:start`.
25
25
  4. **Connect client** — Configure Laravel Echo with Reverb credentials.
26
26
  5. **Verify** — Confirm WebSocket connection in browser console, test event delivery.
@@ -194,7 +194,7 @@ location /app {
194
194
  ## Gotcha
195
195
 
196
196
  - Reverb requires a persistent process — it's not compatible with serverless deployments.
197
- - The model forgets to configure the `REVERB_HOST` and `REVERB_PORT` environment variables.
197
+ - The model forgets to configure the `REVERB_HOST` and `REVERB_PORT` env variables.
198
198
  - WebSocket connections bypass middleware — don't rely on session auth for channel authorization.
199
199
 
200
200
  ## Do NOT
@@ -164,4 +164,4 @@ Schedule::command('reports:weekly')->weeklyOn(1, '07:00');
164
164
  - Do NOT add multiple cron entries — use Laravel's scheduler for everything.
165
165
  - Do NOT schedule heavy work directly — dispatch a queued job instead.
166
166
  - Do NOT forget `withoutOverlapping()` for tasks that may run longer than their interval.
167
- - Do NOT hardcode times — use environment-based config when schedules vary per environment.
167
+ - Do NOT hardcode times — use environment-based config when schedules vary per env.
@@ -26,9 +26,9 @@ Use this skill when the user asks to create a database migration, add a column,
26
26
 
27
27
  ## Laravel projects
28
28
 
29
- ### Multi-database architecture
29
+ ### Multi-DB architecture
30
30
 
31
- Some projects use multiple database connections. Check `config/database.php` for connections.
31
+ Some projects use multiple DB connections. Check `config/database.php` for connections.
32
32
 
33
33
  | Check | How |
34
34
  |---|---|
@@ -36,9 +36,9 @@ Some projects use multiple database connections. Check `config/database.php` for
36
36
  | Migration directories | `database/migrations/` (default), check for additional directories |
37
37
  | Custom migrate commands | `php artisan list migrate` — look for project-specific commands |
38
38
 
39
- **Always determine which database the table belongs to before creating a migration.**
39
+ **Always determine which DB the table belongs to before creating a migration.**
40
40
 
41
- ### API database migration
41
+ ### API DB migration
42
42
 
43
43
  ```bash
44
44
  php artisan make:migration create_example_table
@@ -72,13 +72,13 @@ return new class extends Migration {
72
72
  };
73
73
  ```
74
74
 
75
- ### Customer database migration
75
+ ### Customer DB migration
76
76
 
77
77
  ```bash
78
78
  php artisan make:migration:customer AddWeatherColumn --table=cl_lv_weather
79
79
  ```
80
80
 
81
- Customer database tables use the `cl_` prefix (e.g. `cl_user`, `cl_lv_weather`).
81
+ Customer DB tables use the `cl_` prefix (e.g. `cl_user`, `cl_lv_weather`).
82
82
 
83
83
  ### Adding a column (with explicit connection)
84
84
 
@@ -152,7 +152,7 @@ Focus on the "Database migrations" attack questions: Can this destroy data? Is r
152
152
 
153
153
  ## Auto-trigger keywords
154
154
 
155
- - database migration
155
+ - DB migration
156
156
  - create migration
157
157
  - table prefix
158
158
  - column naming
@@ -8,11 +8,11 @@ source: package
8
8
 
9
9
  ## When to use
10
10
 
11
- Use this skill when working with tenant-specific data, customer database connections, or any code that touches the dual-database architecture.
11
+ Use this skill when working with tenant-specific data, customer database connections, or any code that touches the dual-DB architecture.
12
12
 
13
13
 
14
14
  Do NOT use when:
15
- - Single-database applications
15
+ - Single-DB applications
16
16
  - Frontend-only changes
17
17
 
18
18
  ## Procedure: Work with multi-tenancy
@@ -32,7 +32,7 @@ Request → Identify Tenant (JWT / subdomain / API key)
32
32
  → All tenant queries use tenant connection
33
33
  ```
34
34
 
35
- ### Dual-database pattern
35
+ ### Dual-DB pattern
36
36
 
37
37
  | Connection type | Purpose | Scope |
38
38
  |---|---|---|
@@ -53,7 +53,7 @@ Search the codebase for the service responsible for tenant switching. Typical re
53
53
  1. Store tenant context (e.g., in Laravel Context or a singleton)
54
54
  2. Load tenant configuration
55
55
  3. Set monitoring context (tenant ID, name, domain)
56
- 4. Reconfigure the database connection with tenant credentials
56
+ 4. Reconfigure the DB connection with tenant credentials
57
57
  5. Bind tenant-specific services via the container
58
58
 
59
59
  ## Model conventions
@@ -89,7 +89,7 @@ Check the project for the actual connection names and namespace conventions.
89
89
  ## Testing with tenants
90
90
 
91
91
  - Tests use dedicated tenant seeders (check `agents/docs/` for seeder conventions).
92
- - The testing database may consolidate multiple connections into a single DB for simplicity.
92
+ - The testing DB may consolidate multiple connections into a single DB for simplicity.
93
93
  - Use `RefreshDatabase` or manual seeding — never assume a specific tenant state from previous tests.
94
94
 
95
95
  ## Common pitfalls
@@ -111,19 +111,19 @@ Check the project for the actual connection names and namespace conventions.
111
111
 
112
112
  - multi-tenant
113
113
  - tenant isolation
114
- - customer database
114
+ - customer DB
115
115
  - FQDN routing
116
116
 
117
117
  ## Gotcha
118
118
 
119
- - Always verify which database connection is active before running queries — cross-tenant data leaks are critical bugs.
119
+ - Always verify which DB connection is active before running queries — cross-tenant data leaks are critical bugs.
120
120
  - The model forgets to switch back to the main connection after tenant operations.
121
121
  - Queue jobs serialize the connection state — ensure the tenant context is restored when the job runs.
122
122
  - Don't use `DB::connection()` directly — use the tenant switching helpers.
123
123
 
124
124
  ## Do NOT
125
125
 
126
- - Do NOT hardcode database names — always use connection names.
126
+ - Do NOT hardcode DB names — always use connection names.
127
127
  - Do NOT assume `customer_database` is available in service providers or early boot.
128
128
  - Do NOT access tenant data in global middleware that runs before customer identification.
129
129
  - Do NOT store tenant DB credentials in code — they come from the `customer_databases` table.