@event4u/agent-config 5.10.1 → 6.0.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 (2226) hide show
  1. package/.claude-plugin/marketplace.json +233 -229
  2. package/AGENTS.md +6 -6
  3. package/CHANGELOG.md +453 -0
  4. package/CONTRIBUTING.md +27 -15
  5. package/MIGRATION.md +102 -0
  6. package/README.md +48 -19
  7. package/dist/agent-src/README.md +64 -0
  8. package/dist/agent-src/commands/agent-handoff.md +124 -0
  9. package/dist/agent-src/commands/agent-status.md +140 -0
  10. package/dist/agent-src/commands/agents/audit.md +158 -0
  11. package/dist/agent-src/commands/agents/init.md +192 -0
  12. package/dist/agent-src/commands/agents/optimize.md +187 -0
  13. package/dist/agent-src/commands/agents/user/accept.md +123 -0
  14. package/dist/agent-src/commands/agents/user/init.md +163 -0
  15. package/dist/agent-src/commands/agents/user/review.md +113 -0
  16. package/dist/agent-src/commands/agents/user/show.md +115 -0
  17. package/dist/agent-src/commands/agents/user/update.md +103 -0
  18. package/dist/agent-src/commands/agents/user.md +71 -0
  19. package/dist/agent-src/commands/agents.md +66 -0
  20. package/dist/agent-src/commands/analytics/prune.md +71 -0
  21. package/dist/agent-src/commands/analytics/show.md +100 -0
  22. package/dist/agent-src/commands/analytics.md +77 -0
  23. package/dist/agent-src/commands/analyze-reference-repo.md +204 -0
  24. package/dist/agent-src/commands/bug-fix.md +193 -0
  25. package/dist/agent-src/commands/bug-investigate.md +186 -0
  26. package/dist/agent-src/commands/challenge-me/vision.md +354 -0
  27. package/dist/agent-src/commands/challenge-me/with-docs.md +339 -0
  28. package/dist/agent-src/commands/challenge-me.md +68 -0
  29. package/dist/agent-src/commands/chat-history/import.md +172 -0
  30. package/dist/agent-src/commands/chat-history/learn.md +184 -0
  31. package/dist/agent-src/commands/chat-history/show.md +113 -0
  32. package/dist/agent-src/commands/chat-history.md +60 -0
  33. package/dist/agent-src/commands/check-current-md.md +143 -0
  34. package/dist/agent-src/commands/commit/in-chunks.md +147 -0
  35. package/dist/agent-src/commands/commit.md +195 -0
  36. package/dist/agent-src/commands/condense.md +239 -0
  37. package/dist/agent-src/commands/context/create.md +181 -0
  38. package/dist/agent-src/commands/context/refactor.md +183 -0
  39. package/dist/agent-src/commands/context.md +52 -0
  40. package/dist/agent-src/commands/cost-report.md +131 -0
  41. package/dist/agent-src/commands/council/analysis.md +147 -0
  42. package/dist/agent-src/commands/council/debate.md +134 -0
  43. package/dist/agent-src/commands/council/default.md +289 -0
  44. package/dist/agent-src/commands/council/design.md +107 -0
  45. package/dist/agent-src/commands/council/optimize.md +123 -0
  46. package/dist/agent-src/commands/council/pr.md +130 -0
  47. package/dist/agent-src/commands/council.md +111 -0
  48. package/dist/agent-src/commands/e2e-heal.md +110 -0
  49. package/dist/agent-src/commands/e2e-plan.md +97 -0
  50. package/dist/agent-src/commands/estimate-ticket.md +92 -0
  51. package/dist/agent-src/commands/evals/agent-handoff.json +34 -0
  52. package/dist/agent-src/commands/evals/agent-status.json +34 -0
  53. package/dist/agent-src/commands/evals/agents.json +34 -0
  54. package/dist/agent-src/commands/evals/commit.json +34 -0
  55. package/dist/agent-src/commands/evals/condense.json +34 -0
  56. package/dist/agent-src/commands/evals/council.json +34 -0
  57. package/dist/agent-src/commands/evals/create-pr.json +34 -0
  58. package/dist/agent-src/commands/evals/estimate-ticket.json +34 -0
  59. package/dist/agent-src/commands/evals/feature.json +34 -0
  60. package/dist/agent-src/commands/evals/fix.json +34 -0
  61. package/dist/agent-src/commands/evals/implement-ticket.json +34 -0
  62. package/dist/agent-src/commands/evals/jira-ticket.json +34 -0
  63. package/dist/agent-src/commands/evals/judge.json +34 -0
  64. package/dist/agent-src/commands/evals/memory.json +34 -0
  65. package/dist/agent-src/commands/evals/mode.json +34 -0
  66. package/dist/agent-src/commands/evals/optimize.json +34 -0
  67. package/dist/agent-src/commands/evals/refine-ticket.json +34 -0
  68. package/dist/agent-src/commands/evals/review-changes.json +34 -0
  69. package/dist/agent-src/commands/evals/roadmap.json +34 -0
  70. package/dist/agent-src/commands/evals/work.json +34 -0
  71. package/dist/agent-src/commands/feature/dev.md +124 -0
  72. package/dist/agent-src/commands/feature/explore.md +191 -0
  73. package/dist/agent-src/commands/feature/plan.md +333 -0
  74. package/dist/agent-src/commands/feature/refactor.md +194 -0
  75. package/dist/agent-src/commands/feature/roadmap.md +222 -0
  76. package/dist/agent-src/commands/feature.md +63 -0
  77. package/dist/agent-src/commands/fix/ci.md +59 -0
  78. package/dist/agent-src/commands/fix/portability.md +108 -0
  79. package/dist/agent-src/commands/fix/pr-bot-comments.md +157 -0
  80. package/dist/agent-src/commands/fix/pr-comments.md +69 -0
  81. package/dist/agent-src/commands/fix/pr-developer-comments.md +163 -0
  82. package/dist/agent-src/commands/fix/refs.md +105 -0
  83. package/dist/agent-src/commands/fix/seeder.md +158 -0
  84. package/dist/agent-src/commands/fix.md +88 -0
  85. package/dist/agent-src/commands/ghostwriter/delete.md +124 -0
  86. package/dist/agent-src/commands/ghostwriter/fetch.md +190 -0
  87. package/dist/agent-src/commands/ghostwriter/list.md +108 -0
  88. package/dist/agent-src/commands/ghostwriter/show.md +119 -0
  89. package/dist/agent-src/commands/ghostwriter/write.md +165 -0
  90. package/dist/agent-src/commands/ghostwriter.md +101 -0
  91. package/dist/agent-src/commands/grill-me.md +45 -0
  92. package/dist/agent-src/commands/image/analyse.md +52 -0
  93. package/dist/agent-src/commands/image/create.md +54 -0
  94. package/dist/agent-src/commands/image/verify.md +49 -0
  95. package/dist/agent-src/commands/image.md +70 -0
  96. package/dist/agent-src/commands/implement-ticket.md +169 -0
  97. package/dist/agent-src/commands/jira-ticket.md +84 -0
  98. package/dist/agent-src/commands/judge/on-diff.md +124 -0
  99. package/dist/agent-src/commands/judge/solo.md +96 -0
  100. package/dist/agent-src/commands/judge/steps.md +94 -0
  101. package/dist/agent-src/commands/judge.md +86 -0
  102. package/dist/agent-src/commands/knowledge/cross-repo.md +72 -0
  103. package/dist/agent-src/commands/knowledge/forget.md +97 -0
  104. package/dist/agent-src/commands/knowledge/ingest.md +115 -0
  105. package/dist/agent-src/commands/knowledge/list.md +95 -0
  106. package/dist/agent-src/commands/knowledge.md +70 -0
  107. package/dist/agent-src/commands/memory/add.md +147 -0
  108. package/dist/agent-src/commands/memory/learn-low-impact.md +148 -0
  109. package/dist/agent-src/commands/memory/load.md +176 -0
  110. package/dist/agent-src/commands/memory/mine-session.md +157 -0
  111. package/dist/agent-src/commands/memory/promote.md +195 -0
  112. package/dist/agent-src/commands/memory/propose.md +122 -0
  113. package/dist/agent-src/commands/memory.md +61 -0
  114. package/dist/agent-src/commands/mode.md +133 -0
  115. package/dist/agent-src/commands/module/create.md +144 -0
  116. package/dist/agent-src/commands/module/explore.md +198 -0
  117. package/dist/agent-src/commands/module.md +52 -0
  118. package/dist/agent-src/commands/optimize/agents-dir.md +119 -0
  119. package/dist/agent-src/commands/optimize/augmentignore.md +312 -0
  120. package/dist/agent-src/commands/optimize/rtk.md +161 -0
  121. package/dist/agent-src/commands/optimize/skills.md +132 -0
  122. package/dist/agent-src/commands/optimize-prompt.md +67 -0
  123. package/dist/agent-src/commands/optimize.md +61 -0
  124. package/dist/agent-src/commands/orchestrate.md +129 -0
  125. package/dist/agent-src/commands/override/create.md +108 -0
  126. package/dist/agent-src/commands/override/manage.md +107 -0
  127. package/dist/agent-src/commands/override.md +72 -0
  128. package/dist/agent-src/commands/package-reset.md +163 -0
  129. package/dist/agent-src/commands/package-test.md +239 -0
  130. package/dist/agent-src/commands/post-as/ghostwriter.md +72 -0
  131. package/dist/agent-src/commands/post-as/me.md +130 -0
  132. package/dist/agent-src/commands/post-as.md +63 -0
  133. package/dist/agent-src/commands/pr/create/description-only.md +161 -0
  134. package/dist/agent-src/commands/pr/create.md +254 -0
  135. package/dist/agent-src/commands/prediction-pool.md +235 -0
  136. package/dist/agent-src/commands/prepare-for-review.md +107 -0
  137. package/dist/agent-src/commands/profile/activate.md +82 -0
  138. package/dist/agent-src/commands/profile/deactivate.md +69 -0
  139. package/dist/agent-src/commands/profile/show.md +80 -0
  140. package/dist/agent-src/commands/profile.md +69 -0
  141. package/dist/agent-src/commands/project-analyze.md +321 -0
  142. package/dist/agent-src/commands/project-health.md +106 -0
  143. package/dist/agent-src/commands/quality-fix.md +145 -0
  144. package/dist/agent-src/commands/refine-ticket.md +98 -0
  145. package/dist/agent-src/commands/research/deep.md +155 -0
  146. package/dist/agent-src/commands/research/report.md +140 -0
  147. package/dist/agent-src/commands/research.md +179 -0
  148. package/dist/agent-src/commands/review-changes.md +213 -0
  149. package/dist/agent-src/commands/review-routing.md +125 -0
  150. package/dist/agent-src/commands/roadmap/ai-council.md +189 -0
  151. package/dist/agent-src/commands/roadmap/create.md +214 -0
  152. package/dist/agent-src/commands/roadmap/process-full.md +109 -0
  153. package/dist/agent-src/commands/roadmap/process-phase.md +75 -0
  154. package/dist/agent-src/commands/roadmap/process-step.md +63 -0
  155. package/dist/agent-src/commands/roadmap.md +83 -0
  156. package/dist/agent-src/commands/rule-compliance-audit.md +156 -0
  157. package/dist/agent-src/commands/set-cost-profile.md +118 -0
  158. package/dist/agent-src/commands/skill/preview.md +68 -0
  159. package/dist/agent-src/commands/skill.md +49 -0
  160. package/dist/agent-src/commands/skills/discover.md +77 -0
  161. package/dist/agent-src/commands/skills.md +57 -0
  162. package/dist/agent-src/commands/sync-agent-settings.md +141 -0
  163. package/dist/agent-src/commands/sync-gitignore/fix.md +149 -0
  164. package/dist/agent-src/commands/sync-gitignore.md +140 -0
  165. package/dist/agent-src/commands/tests/create.md +91 -0
  166. package/dist/agent-src/commands/tests/execute.md +85 -0
  167. package/dist/agent-src/commands/tests.md +76 -0
  168. package/dist/agent-src/commands/threat-model.md +126 -0
  169. package/dist/agent-src/commands/update-form-request-messages.md +200 -0
  170. package/dist/agent-src/commands/upstream-contribute.md +182 -0
  171. package/dist/agent-src/commands/video/from-script.md +158 -0
  172. package/dist/agent-src/commands/video/from-song.md +490 -0
  173. package/dist/agent-src/commands/video/scene.md +130 -0
  174. package/dist/agent-src/commands/video/stitch.md +88 -0
  175. package/dist/agent-src/commands/video/storyboard.md +100 -0
  176. package/dist/agent-src/commands/video.md +74 -0
  177. package/dist/agent-src/commands/work.md +175 -0
  178. package/dist/agent-src/contexts/authority/commit-mechanics.md +93 -0
  179. package/dist/agent-src/contexts/communication/rules-auto/source-of-truth-mechanics.md +99 -0
  180. package/dist/agent-src/contexts/contracts/artifact-engagement-flow.md +259 -0
  181. package/dist/agent-src/contexts/contracts/consumer-agents-md-guide.md +127 -0
  182. package/dist/agent-src/contexts/contracts/emergency-triage-block.md +53 -0
  183. package/dist/agent-src/contexts/execution/non-interactive-contract.md +132 -0
  184. package/dist/agent-src/contexts/execution/toolchain-resolver.md +113 -0
  185. package/dist/agent-src/personas/README.md +114 -0
  186. package/dist/agent-src/profiles/agency.yml +36 -0
  187. package/dist/agent-src/profiles/content_creator.yml +34 -0
  188. package/dist/agent-src/profiles/developer.yml +31 -0
  189. package/dist/agent-src/profiles/finance.yml +30 -0
  190. package/dist/agent-src/profiles/founder.yml +33 -0
  191. package/dist/agent-src/profiles/ops.yml +33 -0
  192. package/dist/agent-src/rules/ask-when-uncertain.md +70 -0
  193. package/dist/agent-src/rules/augment-edit-discipline.md +31 -0
  194. package/dist/agent-src/rules/commit-policy.md +59 -0
  195. package/dist/agent-src/rules/direct-answers.md +64 -0
  196. package/dist/agent-src/rules/domain-adoption-policy.md +160 -0
  197. package/dist/agent-src/rules/language-and-tone.md +64 -0
  198. package/dist/agent-src/rules/linked-projects-onboarding-gate.md +38 -0
  199. package/dist/agent-src/rules/media-governance-routing.md +85 -0
  200. package/dist/agent-src/rules/missing-tool-handling.md +22 -0
  201. package/dist/agent-src/rules/model-recommendation.md +25 -0
  202. package/dist/agent-src/rules/no-attribution-footers.md +57 -0
  203. package/dist/agent-src/rules/no-cheap-questions.md +75 -0
  204. package/dist/agent-src/rules/no-pr-progress-comments.md +109 -0
  205. package/dist/agent-src/rules/no-roadmap-references.md +141 -0
  206. package/dist/agent-src/rules/non-destructive-by-default.md +58 -0
  207. package/dist/agent-src/rules/persona-governance.md +93 -0
  208. package/dist/agent-src/rules/preservation-guard.md +97 -0
  209. package/dist/agent-src/rules/provider-lifecycle-discipline.md +78 -0
  210. package/dist/agent-src/rules/roadmap-progress-sync.md +114 -0
  211. package/dist/agent-src/rules/scope-control.md +68 -0
  212. package/dist/agent-src/rules/source-of-truth.md +80 -0
  213. package/dist/agent-src/rules/user-interrupt-priority.md +49 -0
  214. package/dist/agent-src/rules/verify-before-complete.md +78 -0
  215. package/dist/agent-src/scripts/update_roadmap_progress.py +537 -0
  216. package/dist/agent-src/skills/accessibility-auditor/SKILL.md +147 -0
  217. package/dist/agent-src/skills/accessibility-auditor/data/aria-patterns.csv +13 -0
  218. package/dist/agent-src/skills/accessibility-auditor/data/manifest.json +34 -0
  219. package/dist/agent-src/skills/agents-md-thin-root/SKILL.md +143 -0
  220. package/dist/agent-src/skills/api-design/SKILL.md +120 -0
  221. package/dist/agent-src/skills/api-design/data/api-patterns.csv +13 -0
  222. package/dist/agent-src/skills/api-design/data/manifest.json +34 -0
  223. package/dist/agent-src/skills/api-endpoint/SKILL.md +100 -0
  224. package/dist/agent-src/skills/authz-review/SKILL.md +188 -0
  225. package/dist/agent-src/skills/blade-ui/SKILL.md +135 -0
  226. package/dist/agent-src/skills/character-consistency/SKILL.md +192 -0
  227. package/dist/agent-src/skills/check-refs/SKILL.md +96 -0
  228. package/dist/agent-src/skills/code-review/SKILL.md +224 -0
  229. package/dist/agent-src/skills/command-writing/SKILL.md +301 -0
  230. package/dist/agent-src/skills/condense-memory/SKILL.md +123 -0
  231. package/dist/agent-src/skills/context-document/SKILL.md +160 -0
  232. package/dist/agent-src/skills/corpus-grounding/SKILL.md +205 -0
  233. package/dist/agent-src/skills/corpus-grounding/evals/triggers.json +16 -0
  234. package/dist/agent-src/skills/corpus-grounding/scripts/bm25_search.py +212 -0
  235. package/dist/agent-src/skills/corpus-grounding/scripts/decision_engine.py +438 -0
  236. package/dist/agent-src/skills/corpus-grounding/scripts/ground.py +166 -0
  237. package/dist/agent-src/skills/corpus-grounding/scripts/schema_validator.py +160 -0
  238. package/dist/agent-src/skills/dashboard-design/SKILL.md +129 -0
  239. package/dist/agent-src/skills/database/SKILL.md +111 -0
  240. package/dist/agent-src/skills/database/data/manifest.json +35 -0
  241. package/dist/agent-src/skills/database/data/query-tuning.csv +13 -0
  242. package/dist/agent-src/skills/deep-reading-analyst/SKILL.md +188 -0
  243. package/dist/agent-src/skills/design-intelligence/ATTRIBUTION.md +54 -0
  244. package/dist/agent-src/skills/design-intelligence/LICENSE.apache-2.0.txt +202 -0
  245. package/dist/agent-src/skills/design-intelligence/SKILL.md +177 -0
  246. package/dist/agent-src/skills/design-intelligence/data/app-interface.csv +31 -0
  247. package/dist/agent-src/skills/design-intelligence/data/charts.csv +26 -0
  248. package/dist/agent-src/skills/design-intelligence/data/colors.csv +162 -0
  249. package/dist/agent-src/skills/design-intelligence/data/design-languages/academia.txt +120 -0
  250. package/dist/agent-src/skills/design-intelligence/data/design-languages/bauhaus.txt +140 -0
  251. package/dist/agent-src/skills/design-intelligence/data/design-languages/bold-typography.txt +107 -0
  252. package/dist/agent-src/skills/design-intelligence/data/design-languages/claymorphism.txt +76 -0
  253. package/dist/agent-src/skills/design-intelligence/data/design-languages/cyberpunk.txt +157 -0
  254. package/dist/agent-src/skills/design-intelligence/data/design-languages/enterprise.txt +89 -0
  255. package/dist/agent-src/skills/design-intelligence/data/design-languages/flat-design.txt +66 -0
  256. package/dist/agent-src/skills/design-intelligence/data/design-languages/kinetic.txt +98 -0
  257. package/dist/agent-src/skills/design-intelligence/data/design-languages/material-design.txt +133 -0
  258. package/dist/agent-src/skills/design-intelligence/data/design-languages/modern-dark.txt +123 -0
  259. package/dist/agent-src/skills/design-intelligence/data/design-languages/monochrome.txt +216 -0
  260. package/dist/agent-src/skills/design-intelligence/data/design-languages/neo-brutalism.txt +65 -0
  261. package/dist/agent-src/skills/design-intelligence/data/design-languages/neumorphism.txt +75 -0
  262. package/dist/agent-src/skills/design-intelligence/data/design-languages/saas.txt +109 -0
  263. package/dist/agent-src/skills/design-intelligence/data/design-languages/sketch.txt +83 -0
  264. package/dist/agent-src/skills/design-intelligence/data/design-languages/terminal.txt +80 -0
  265. package/dist/agent-src/skills/design-intelligence/data/icons.csv +106 -0
  266. package/dist/agent-src/skills/design-intelligence/data/landing.csv +35 -0
  267. package/dist/agent-src/skills/design-intelligence/data/manifest.json +500 -0
  268. package/dist/agent-src/skills/design-intelligence/data/products.csv +162 -0
  269. package/dist/agent-src/skills/design-intelligence/data/react-performance.csv +45 -0
  270. package/dist/agent-src/skills/design-intelligence/data/stacks/angular.csv +51 -0
  271. package/dist/agent-src/skills/design-intelligence/data/stacks/astro.csv +54 -0
  272. package/dist/agent-src/skills/design-intelligence/data/stacks/flutter.csv +53 -0
  273. package/dist/agent-src/skills/design-intelligence/data/stacks/html-tailwind.csv +56 -0
  274. package/dist/agent-src/skills/design-intelligence/data/stacks/jetpack-compose.csv +53 -0
  275. package/dist/agent-src/skills/design-intelligence/data/stacks/laravel.csv +51 -0
  276. package/dist/agent-src/skills/design-intelligence/data/stacks/nextjs.csv +53 -0
  277. package/dist/agent-src/skills/design-intelligence/data/stacks/nuxt-ui.csv +51 -0
  278. package/dist/agent-src/skills/design-intelligence/data/stacks/nuxtjs.csv +59 -0
  279. package/dist/agent-src/skills/design-intelligence/data/stacks/react-native.csv +52 -0
  280. package/dist/agent-src/skills/design-intelligence/data/stacks/react.csv +54 -0
  281. package/dist/agent-src/skills/design-intelligence/data/stacks/shadcn.csv +61 -0
  282. package/dist/agent-src/skills/design-intelligence/data/stacks/svelte.csv +54 -0
  283. package/dist/agent-src/skills/design-intelligence/data/stacks/swiftui.csv +51 -0
  284. package/dist/agent-src/skills/design-intelligence/data/stacks/threejs.csv +54 -0
  285. package/dist/agent-src/skills/design-intelligence/data/stacks/vue.csv +50 -0
  286. package/dist/agent-src/skills/design-intelligence/data/styles.csv +85 -0
  287. package/dist/agent-src/skills/design-intelligence/data/typography.csv +74 -0
  288. package/dist/agent-src/skills/design-intelligence/data/ui-reasoning.csv +162 -0
  289. package/dist/agent-src/skills/design-intelligence/data/ux-guidelines.csv +100 -0
  290. package/dist/agent-src/skills/design-intelligence/evals/triggers.json +16 -0
  291. package/dist/agent-src/skills/design-intelligence/references/design-languages.md +45 -0
  292. package/dist/agent-src/skills/design-intelligence/references/design-rules-checklist.md +268 -0
  293. package/dist/agent-src/skills/design-review/SKILL.md +233 -0
  294. package/dist/agent-src/skills/design-tokens/SKILL.md +135 -0
  295. package/dist/agent-src/skills/design-tokens/evals/triggers.json +16 -0
  296. package/dist/agent-src/skills/design-tokens/scripts/tokens.py +296 -0
  297. package/dist/agent-src/skills/design-tokens/templates/design-tokens-starter.json +143 -0
  298. package/dist/agent-src/skills/existing-ui-audit/SKILL.md +217 -0
  299. package/dist/agent-src/skills/fe-design/SKILL.md +265 -0
  300. package/dist/agent-src/skills/feature-planning/SKILL.md +271 -0
  301. package/dist/agent-src/skills/flux/SKILL.md +126 -0
  302. package/dist/agent-src/skills/jira-integration/SKILL.md +187 -0
  303. package/dist/agent-src/skills/lint-skills/SKILL.md +95 -0
  304. package/dist/agent-src/skills/livewire/SKILL.md +139 -0
  305. package/dist/agent-src/skills/md-language-check/SKILL.md +130 -0
  306. package/dist/agent-src/skills/merge-conflicts/SKILL.md +195 -0
  307. package/dist/agent-src/skills/motion-choreographer/SKILL.md +197 -0
  308. package/dist/agent-src/skills/persona-writing/SKILL.md +158 -0
  309. package/dist/agent-src/skills/prompt-validator/SKILL.md +167 -0
  310. package/dist/agent-src/skills/prompt-validator/evals/triggers.json +16 -0
  311. package/dist/agent-src/skills/react-shadcn-ui/SKILL.md +235 -0
  312. package/dist/agent-src/skills/react-shadcn-ui/scripts/shadcn_add.py +299 -0
  313. package/dist/agent-src/skills/readme-reviewer/SKILL.md +242 -0
  314. package/dist/agent-src/skills/readme-writing/SKILL.md +240 -0
  315. package/dist/agent-src/skills/readme-writing-package/SKILL.md +350 -0
  316. package/dist/agent-src/skills/roadmap-management/SKILL.md +461 -0
  317. package/dist/agent-src/skills/rule-refactor/SKILL.md +149 -0
  318. package/dist/agent-src/skills/rule-writing/SKILL.md +277 -0
  319. package/dist/agent-src/skills/scene-expander/SKILL.md +158 -0
  320. package/dist/agent-src/skills/scene-expander/scene-blueprint.schema.yaml +114 -0
  321. package/dist/agent-src/skills/script-writing/SKILL.md +231 -0
  322. package/dist/agent-src/skills/sentry-integration/SKILL.md +175 -0
  323. package/dist/agent-src/skills/song-to-script/SKILL.md +303 -0
  324. package/dist/agent-src/skills/sql-writing/SKILL.md +85 -0
  325. package/dist/agent-src/skills/tailwind-engineer/SKILL.md +154 -0
  326. package/dist/agent-src/skills/tailwind-engineer/scripts/tailwind_config_gen.py +463 -0
  327. package/dist/agent-src/skills/technical-specification/SKILL.md +251 -0
  328. package/dist/agent-src/skills/threat-modeling/SKILL.md +207 -0
  329. package/dist/agent-src/skills/threat-modeling/data/manifest.json +83 -0
  330. package/dist/agent-src/skills/threat-modeling/data/reasoning.csv +10 -0
  331. package/dist/agent-src/skills/threat-modeling/data/surfaces.csv +10 -0
  332. package/dist/agent-src/skills/threat-modeling/data/threats.csv +16 -0
  333. package/dist/agent-src/skills/upstream-contribute/SKILL.md +261 -0
  334. package/dist/agent-src/templates/AGENTS.md +34 -0
  335. package/dist/agent-src/templates/agents/agent-project-settings.example.yml +286 -0
  336. package/dist/agent-src/templates/agents/proposal.example.md +155 -0
  337. package/dist/agent-src/templates/command.md +105 -0
  338. package/dist/agent-src/templates/copilot-instructions.md +167 -0
  339. package/dist/agent-src/templates/github-workflows/proposal-drift.yml +118 -0
  340. package/dist/agent-src/templates/hooks/pre-commit-frontmatter +66 -0
  341. package/dist/agent-src/templates/hooks/pre-commit-roadmap-progress +99 -0
  342. package/dist/agent-src/templates/persona.md +99 -0
  343. package/dist/agent-src/templates/rule.md +135 -0
  344. package/dist/agent-src/templates/scripts/work_engine/directives/ui/polish.py +513 -0
  345. package/dist/agent-src/templates/scripts/work_engine/directives/ui/review.py +471 -0
  346. package/dist/agent-src/templates/scripts/work_engine/orchestration.py +193 -0
  347. package/dist/agent-src/templates/scripts/work_engine/stack/runner.py +481 -0
  348. package/dist/agent-src/user-types/README.md +124 -0
  349. package/dist/cli/agent-config.js +51 -3
  350. package/dist/cli/agent-config.js.map +1 -1
  351. package/dist/cli/commands/commands.js +152 -0
  352. package/dist/cli/commands/commands.js.map +1 -0
  353. package/dist/cli/commands/mcpServer.js +54 -0
  354. package/dist/cli/commands/mcpServer.js.map +1 -0
  355. package/dist/cli/commands/packs.js +1 -1
  356. package/dist/cli/commands/packs.js.map +1 -1
  357. package/dist/cli/commands/profiles.js +77 -0
  358. package/dist/cli/commands/profiles.js.map +1 -0
  359. package/dist/cli/commands/profiles.test.js +88 -0
  360. package/dist/cli/commands/profiles.test.js.map +1 -0
  361. package/dist/cli/commands/workspaces.js +1 -1
  362. package/dist/cli/commands/workspaces.js.map +1 -1
  363. package/dist/cli/discovery/loadManifest.js.map +1 -1
  364. package/dist/cli/mcp/content.js +127 -0
  365. package/dist/cli/mcp/content.js.map +1 -0
  366. package/dist/cli/mcp/content.test.js +54 -0
  367. package/dist/cli/mcp/content.test.js.map +1 -0
  368. package/dist/cli/mcp/dispatch.js +167 -0
  369. package/dist/cli/mcp/dispatch.js.map +1 -0
  370. package/dist/cli/mcp/dispatch.test.js +108 -0
  371. package/dist/cli/mcp/dispatch.test.js.map +1 -0
  372. package/dist/cli/mcp/stdio.js +69 -0
  373. package/dist/cli/mcp/stdio.js.map +1 -0
  374. package/dist/cli/paths.js +8 -2
  375. package/dist/cli/paths.js.map +1 -1
  376. package/dist/cli/registry.js +2 -0
  377. package/dist/cli/registry.js.map +1 -1
  378. package/dist/discovery/deprecation-report.md +1 -1
  379. package/dist/discovery/discovery-manifest.json +2885 -2056
  380. package/dist/discovery/discovery-manifest.json.sha256 +1 -1
  381. package/dist/discovery/discovery-manifest.summary.md +8 -6
  382. package/dist/discovery/orphan-report.md +1 -1
  383. package/dist/discovery/packs.json +689 -466
  384. package/dist/discovery/trust-report.md +5 -5
  385. package/dist/discovery/workspaces.json +495 -477
  386. package/dist/install/detect.js +2 -2
  387. package/dist/install/detect.js.map +1 -1
  388. package/dist/install/wizard-plan.js +18 -18
  389. package/dist/install/wizard-plan.js.map +1 -1
  390. package/dist/mcp/registry-manifest.json +4 -4
  391. package/dist/router.json +1 -1
  392. package/dist/server/io/substituteTemplate.js +5 -5
  393. package/dist/server/io/substituteTemplate.js.map +1 -1
  394. package/dist/server/routes/settings.js +2 -2
  395. package/dist/server/routes/settings.js.map +1 -1
  396. package/dist/server/routes/userMd.js +1 -1
  397. package/dist/server/routes/userMd.js.map +1 -1
  398. package/dist/server/routes/wizard.js +27 -13
  399. package/dist/server/routes/wizard.js.map +1 -1
  400. package/dist/server/routes/workspace.js +556 -117
  401. package/dist/server/routes/workspace.js.map +1 -1
  402. package/dist/server/schemas/settings.js +7 -2
  403. package/dist/server/schemas/settings.js.map +1 -1
  404. package/dist/shared/userMd/formAdapter.js +2 -2
  405. package/dist/ui/assets/index-CoQo90sz.js +40 -0
  406. package/dist/ui/assets/index-CoQo90sz.js.map +1 -0
  407. package/dist/ui/index.html +1 -1
  408. package/docs/DISTRIBUTION_CHECKLIST.md +2 -2
  409. package/docs/adrs/cost/0001-hard-stop-hook.md +5 -5
  410. package/docs/adrs/memory/0001-consumer-side-snapshot.md +4 -4
  411. package/docs/adrs/router/0001-three-tier-routing.md +3 -3
  412. package/docs/adrs/schema/0001-json-schema-frontmatter.md +6 -6
  413. package/docs/adrs/smoke/0001-per-tier-smoke-scripts.md +6 -6
  414. package/docs/architecture/augment-projection.md +10 -10
  415. package/docs/architecture/claude-bundle.md +5 -5
  416. package/docs/architecture/current-onboard-baseline.md +4 -4
  417. package/docs/architecture/current-safety-behavior.md +16 -16
  418. package/docs/architecture/multi-tool-projection.md +8 -8
  419. package/docs/architecture/source-projection.md +11 -11
  420. package/docs/architecture.md +11 -11
  421. package/docs/archive/CHANGELOG-pre-2.17.0.md +1 -1
  422. package/docs/archive/CHANGELOG-pre-2.2.0.md +7 -7
  423. package/docs/archive/CHANGELOG-pre-2.20.0.md +1 -1
  424. package/docs/archive/CHANGELOG-pre-2.25.0.md +1 -1
  425. package/docs/archive/CHANGELOG-pre-2.7.0.md +1 -1
  426. package/docs/archive/CHANGELOG-pre-3.0.0.md +1 -1
  427. package/docs/archive/CHANGELOG-pre-3.1.0.md +1 -1
  428. package/docs/archive/CHANGELOG-pre-3.2.0.md +1 -1
  429. package/docs/archive/CHANGELOG-pre-4.5.0.md +1 -1
  430. package/docs/archive/CHANGELOG-pre-5.4.0.md +1 -1
  431. package/docs/archive/CHANGELOG-pre-5.9.0.md +1 -1
  432. package/docs/artefact-census.md +71 -0
  433. package/docs/case-studies/frontend-design-vs-ui-ux-pro-max.md +86 -0
  434. package/docs/catalog.md +463 -454
  435. package/docs/command-flows.md +232 -0
  436. package/docs/contracts/CHANGELOG-conventions.md +2 -2
  437. package/docs/contracts/STABILITY.md +1 -1
  438. package/docs/contracts/adoption-signal-floor.md +2 -2
  439. package/docs/contracts/adr-architectural-consensus-mechanism.md +1 -1
  440. package/docs/contracts/adr-chat-history-split.md +1 -1
  441. package/docs/contracts/adr-gtm-context-spine.md +2 -2
  442. package/docs/contracts/adr-install-user-type-axis.md +3 -3
  443. package/docs/contracts/adr-layout.md +3 -3
  444. package/docs/contracts/adr-mcp-runtime.md +8 -8
  445. package/docs/contracts/adr-prompt-driven-execution.md +1 -1
  446. package/docs/contracts/adr-settings-sync-engine.md +3 -3
  447. package/docs/contracts/adr-user-types-axis.md +2 -2
  448. package/docs/contracts/adr-wing4-context-spine.md +2 -2
  449. package/docs/contracts/agent-user-schema.md +6 -6
  450. package/docs/contracts/agents-md-tech-stack.md +2 -2
  451. package/docs/contracts/ai-council-config.md +4 -4
  452. package/docs/contracts/at-rest-encryption.md +48 -7
  453. package/docs/contracts/audit-log-v1.md +3 -3
  454. package/docs/contracts/benchmark-ab-contract.md +6 -1
  455. package/docs/contracts/benchmark-corpus-spec.md +2 -2
  456. package/docs/contracts/benchmark-report-schema.md +4 -4
  457. package/docs/contracts/branch-protection-policy.md +5 -0
  458. package/docs/contracts/capability-packs.md +217 -0
  459. package/docs/contracts/ci-cost-budget.md +6 -1
  460. package/docs/contracts/ci-green-floor.md +1 -1
  461. package/docs/contracts/command-category-governance.md +79 -0
  462. package/docs/contracts/command-clusters.md +42 -4
  463. package/docs/contracts/config-presets.md +1 -1
  464. package/docs/contracts/cost-dashboard.md +1 -1
  465. package/docs/contracts/cost-profile-defaults.md +2 -2
  466. package/docs/contracts/cost-summary-schema.md +4 -4
  467. package/docs/contracts/creative-pack-boundary.md +58 -0
  468. package/docs/contracts/daily-workspace.md +8 -3
  469. package/docs/contracts/discovery-manifest.md +5 -5
  470. package/docs/contracts/discovery-manifest.schema.json +14 -3
  471. package/docs/contracts/evidence-based-pruning.md +101 -0
  472. package/docs/contracts/explain-modes.md +37 -0
  473. package/docs/contracts/file-ownership-matrix.json +1804 -4620
  474. package/docs/contracts/frontmatter-contract.md +6 -6
  475. package/docs/contracts/ghostwriter-schema.md +1 -1
  476. package/docs/contracts/gui-wizard.md +1 -1
  477. package/docs/contracts/harness-expectations.md +5 -0
  478. package/docs/contracts/hook-architecture-v1.md +1 -1
  479. package/docs/contracts/host-agent-protocol.md +19 -1
  480. package/docs/contracts/install-scopes.md +7 -2
  481. package/docs/contracts/installed-tools-lockfile.md +2 -2
  482. package/docs/contracts/linear-ai-rules-inclusion.md +2 -2
  483. package/docs/contracts/linear-ai-three-layers.md +1 -1
  484. package/docs/contracts/linter-structural-model.md +2 -2
  485. package/docs/contracts/load-context-budget-model.md +1 -1
  486. package/docs/contracts/load-context-schema.md +1 -1
  487. package/docs/contracts/local-analytics.md +9 -1
  488. package/docs/contracts/low-impact-corpus-format.md +1 -1
  489. package/docs/contracts/mcp-cloud-scope.md +6 -6
  490. package/docs/contracts/mcp-phase-1-scope.md +5 -5
  491. package/docs/contracts/measurement-baseline.md +5 -5
  492. package/docs/contracts/migrate-command.md +44 -8
  493. package/docs/contracts/multi-tool-projection-fidelity.md +3 -3
  494. package/docs/contracts/namespace.md +1 -1
  495. package/docs/contracts/orchestration-dsl-v1.md +2 -2
  496. package/docs/contracts/package-self-orientation.md +17 -17
  497. package/docs/contracts/pilot/language-and-tone.md +1 -1
  498. package/docs/contracts/plain-language-surface.md +2 -2
  499. package/docs/contracts/profile-system.md +26 -1
  500. package/docs/contracts/provider-lifecycle.md +3 -3
  501. package/docs/contracts/release-pr-gating.md +5 -0
  502. package/docs/contracts/release-trunk-sync.md +3 -3
  503. package/docs/contracts/review-lens-schema.md +59 -0
  504. package/docs/contracts/role-experience.md +10 -6
  505. package/docs/contracts/router-blending.md +2 -2
  506. package/docs/contracts/rule-classification.md +1 -1
  507. package/docs/contracts/rule-router.md +3 -3
  508. package/docs/contracts/safety-model.md +2 -2
  509. package/docs/contracts/session-profile-overlay.md +40 -3
  510. package/docs/contracts/settings-api.md +3 -3
  511. package/docs/contracts/settings-sync-yaml-subset.md +4 -4
  512. package/docs/contracts/skill-bundled-assets.md +62 -0
  513. package/docs/contracts/skill-discovery.md +1 -1
  514. package/docs/contracts/skill-distribution-channels.md +6 -1
  515. package/docs/contracts/skill-dry-run.md +2 -2
  516. package/docs/contracts/skill-family-map.yml +915 -0
  517. package/docs/contracts/smoke-contracts.md +4 -4
  518. package/docs/contracts/telegraph-telemetry.md +2 -2
  519. package/docs/contracts/trust-and-safety.md +3 -3
  520. package/docs/contracts/universal-skills.md +16 -16
  521. package/docs/contracts/value-dashboard-spec.md +21 -21
  522. package/docs/contracts/value-report-schema.md +8 -8
  523. package/docs/customization.md +8 -8
  524. package/docs/decisions/ADR-006-skill-tools-python-pilot.md +2 -2
  525. package/docs/decisions/ADR-007-agent-discovery-scopes.md +1 -1
  526. package/docs/decisions/ADR-008-installed-tools-manifest.md +1 -1
  527. package/docs/decisions/ADR-009-event4u-namespace.md +3 -3
  528. package/docs/decisions/ADR-013-discovery-frontmatter-contract.md +27 -8
  529. package/docs/decisions/ADR-015-discovery-manifest-contract.md +5 -5
  530. package/docs/decisions/ADR-017-monorepo-physical-layout.md +5 -5
  531. package/docs/decisions/ADR-018-trust-and-safety-layer.md +2 -2
  532. package/docs/decisions/ADR-019-router-json-dist-location.md +2 -2
  533. package/docs/decisions/ADR-020-global-only-consumer-scope.md +27 -2
  534. package/docs/decisions/ADR-022-daily-workspace-decomposition.md +2 -2
  535. package/docs/decisions/ADR-024-workspace-v0-feature-floor.md +1 -1
  536. package/docs/decisions/ADR-028-root-layout.md +1 -1
  537. package/docs/decisions/ADR-030-claude-code-command-projection.md +2 -2
  538. package/docs/decisions/ADR-038-canonical-settings-path.md +20 -0
  539. package/docs/decisions/ADR-041-controlled-command-verbs.md +133 -0
  540. package/docs/decisions/ADR-042-runtime-resolver-decision-gate.md +113 -0
  541. package/docs/decisions/ADR-043-monorepo-collapse-to-src-domains.md +128 -0
  542. package/docs/decisions/ADR-044-command-naming-scheme-hyphenated.md +250 -0
  543. package/docs/decisions/ADR-045-src-source-layout-and-profiles-as-views.md +111 -0
  544. package/docs/decisions/ADR-046-thin-command-principle.md +93 -0
  545. package/docs/decisions/ADR-047-framework-neutral-stack-adaptive-commands.md +94 -0
  546. package/docs/decisions/ADR-048-command-justification-rule.md +106 -0
  547. package/docs/decisions/ADR-049-configuration-trust-boundary.md +114 -0
  548. package/docs/decisions/ADR-050-workspace-vs-package-root-boundary.md +121 -0
  549. package/docs/decisions/ADR-051-uncondensed-source-container-relocation.md +114 -0
  550. package/docs/decisions/ADR-052-packages-removal-and-pack-home-migration.md +86 -0
  551. package/docs/decisions/ADR-053-agents-namespace-dual-role-resolution.md +132 -0
  552. package/docs/decisions/ADR-054-rule-adherence-decay-triggered-restate.md +143 -0
  553. package/docs/decisions/ADR-055-flow-layer-data-model.md +235 -0
  554. package/docs/decisions/ADR-056-unvalidated-video-adapters-disposition.md +124 -0
  555. package/docs/decisions/ADR-057-consolidation-evidence-gate-outcomes.md +135 -0
  556. package/docs/decisions/ADR-058-condensed-output-relocation-to-dist.md +94 -0
  557. package/docs/decisions/ADR-059-render-resume-filesystem-as-state.md +161 -0
  558. package/docs/decisions/ADR-060-comfyui-sandbox-model.md +154 -0
  559. package/docs/decisions/ADR-061-corpus-grounding-layer.md +170 -0
  560. package/docs/decisions/ADR-062-encrypt-at-rest-store-architecture.md +121 -0
  561. package/docs/decisions/ADR-063-append-jsonl-encryption-deferred.md +83 -0
  562. package/docs/decisions/ADR-064-append-jsonl-per-record-encryption.md +113 -0
  563. package/docs/decisions/ADR-065-tier3-inbox-handoff-v0.md +86 -0
  564. package/docs/decisions/ADR-066-skill-body-prerendering.md +93 -0
  565. package/docs/decisions/ADR-067-glama-registry-listing.md +259 -0
  566. package/docs/decisions/ADR-068-host-tier-detection.md +90 -0
  567. package/docs/decisions/ADR-069-prompt-renderer.md +97 -0
  568. package/docs/decisions/ADR-070-tier1-drive-loop.md +94 -0
  569. package/docs/decisions/ADR-071-launch-drive-integration.md +95 -0
  570. package/docs/decisions/ADR-072-codex-gemini-drive-configs.md +90 -0
  571. package/docs/decisions/ADR-073-drive-health-kill-switch.md +81 -0
  572. package/docs/decisions/ADR-074-drive-kill-switch-auto-recovery.md +84 -0
  573. package/docs/decisions/ADR-075-workspace-gui-drive.md +83 -0
  574. package/docs/decisions/ADR-076-workspace-multi-turn.md +92 -0
  575. package/docs/decisions/ADR-077-workspace-followup-gui.md +70 -0
  576. package/docs/decisions/ADR-078-drive-health-panel.md +70 -0
  577. package/docs/decisions/ADR-079-workspace-host-picker.md +81 -0
  578. package/docs/decisions/ADR-080-host-session-expired-410.md +92 -0
  579. package/docs/decisions/ADR-081-drive-health-reset-and-410-affordance.md +71 -0
  580. package/docs/decisions/ADR-082-410-one-click-relaunch.md +58 -0
  581. package/docs/decisions/ADR-083-session-thread-and-arbitrary-continuation.md +85 -0
  582. package/docs/decisions/ADR-084-drive-health-refresh-on-drive.md +52 -0
  583. package/docs/decisions/ADR-085-mcp-stdio-end-user-distribution-shape.md +158 -0
  584. package/docs/decisions/ADR-086-read-only-cross-agent-mcp-discovery-helper.md +171 -0
  585. package/docs/decisions/ADR-087-installer-e2e-test-strategy.md +111 -0
  586. package/docs/decisions/ADR-088-no-external-runtime-federation.md +145 -0
  587. package/docs/decisions/ADR-089-lean-local-plugin-install.md +111 -0
  588. package/docs/decisions/INDEX.md +49 -0
  589. package/docs/deploy/small-team-recipe.md +1 -1
  590. package/docs/deploy/team-deployment-posture.md +1 -1
  591. package/docs/development.md +6 -6
  592. package/docs/distribution/public-install-smoke.md +1 -1
  593. package/docs/distribution/registries.md +5 -5
  594. package/docs/distribution/registry-submissions.md +2 -2
  595. package/docs/end-to-end-walkthroughs.md +10 -10
  596. package/docs/experiences/agency.md +49 -0
  597. package/docs/experiences/content_creator.md +47 -0
  598. package/docs/experiences/developer.md +49 -0
  599. package/docs/experiences/finance.md +48 -0
  600. package/docs/experiences/founder.md +47 -0
  601. package/docs/experiences/ops.md +47 -0
  602. package/docs/featured-commands.md +12 -12
  603. package/docs/featured-skills.md +32 -32
  604. package/docs/flows.md +67 -0
  605. package/docs/getting-started-by-role.md +41 -41
  606. package/docs/getting-started-laravel.md +26 -26
  607. package/docs/getting-started-local-stdio.md +77 -0
  608. package/docs/getting-started.md +2 -2
  609. package/docs/governance.md +96 -0
  610. package/docs/guidelines/agent-infra/asking-and-brevity-examples.md +6 -6
  611. package/docs/guidelines/agent-infra/comparison-matrix.md +179 -0
  612. package/docs/guidelines/agent-infra/corpus-grounding-authoring.md +91 -0
  613. package/docs/guidelines/agent-infra/direct-answers-demos.md +23 -26
  614. package/docs/guidelines/agent-infra/language-and-tone-examples.md +29 -2
  615. package/docs/guidelines/agent-infra/layered-settings.md +3 -3
  616. package/docs/guidelines/agent-infra/linked-projects-onboarding-gate.md +80 -0
  617. package/docs/guidelines/agent-infra/missing-tool-handling.md +66 -0
  618. package/docs/guidelines/agent-infra/model-recommendation.md +72 -0
  619. package/docs/guidelines/agent-infra/roadmap-progress-mechanics.md +1 -1
  620. package/docs/guidelines/agent-infra/self-improvement-pipeline.md +1 -1
  621. package/docs/guidelines/agent-infra/verify-before-complete-demos.md +1 -1
  622. package/docs/guidelines/augment-portability-patterns.md +1 -1
  623. package/docs/guides/local-analytics.md +1 -1
  624. package/docs/guides/local-knowledge.md +3 -3
  625. package/docs/hook-payload-capture.md +5 -5
  626. package/docs/installation.md +3 -3
  627. package/docs/mcp-registries.md +94 -0
  628. package/docs/mcp-server.md +4 -4
  629. package/docs/mcp.md +3 -0
  630. package/docs/parity/ruflo.md +7 -7
  631. package/docs/personas.md +3 -3
  632. package/docs/profiles.md +15 -11
  633. package/docs/quality.md +3 -3
  634. package/docs/setup/mcp-client-config.md +134 -9
  635. package/docs/setup/mcp-server-docker.md +9 -7
  636. package/docs/setup/per-ide/claude-code.md +3 -3
  637. package/docs/setup/per-ide/claude-desktop.md +1 -1
  638. package/docs/setup/per-ide/cursor.md +2 -2
  639. package/docs/setup/per-ide/windsurf.md +1 -1
  640. package/docs/showcase.md +12 -12
  641. package/docs/skill-duplication-findings.md +91 -0
  642. package/docs/skills-catalog.md +228 -224
  643. package/docs/skills-taxonomy.md +90 -0
  644. package/docs/ui-track-mental-model.md +2 -2
  645. package/docs/value.md +50 -50
  646. package/docs/walkthroughs/assets/workspace-role-grid.png +0 -0
  647. package/docs/walkthroughs/assets/workspace-session-started.png +0 -0
  648. package/docs/walkthroughs/assets/workspace-task-picker.png +0 -0
  649. package/docs/walkthroughs/daily-workspace.md +127 -0
  650. package/llms.txt +18 -14
  651. package/package.json +10 -9
  652. package/src/config/agent-settings.template.yml +612 -0
  653. package/src/config/discovery/command-verbs.yml +56 -0
  654. package/src/config/discovery/packs.yml +255 -0
  655. package/src/config/discovery/workspaces.yml +72 -0
  656. package/src/scripts/__pycache__/validate_frontmatter.cpython-312.pyc +0 -0
  657. package/src/scripts/_archive/README.md +59 -0
  658. package/src/scripts/_archive/_bootstrap_tier_frontmatter.py +151 -0
  659. package/src/scripts/_archive/_p43_bodies.py +235 -0
  660. package/src/scripts/_archive/_p43_condense.py +118 -0
  661. package/src/scripts/_archive/_p4_migrate.py +199 -0
  662. package/src/scripts/_cli/cmd_doctor.py +1583 -0
  663. package/src/scripts/_cli/cmd_export.py +157 -0
  664. package/src/scripts/_cli/cmd_migrate.py +524 -0
  665. package/src/scripts/_cli/cmd_refresh.py +179 -0
  666. package/src/scripts/_cli/cmd_settings_migrate.py +147 -0
  667. package/src/scripts/_cli/cmd_update.py +279 -0
  668. package/src/scripts/_cli/cmd_upgrade.py +172 -0
  669. package/src/scripts/_cli/cmd_versions.py +160 -0
  670. package/src/scripts/_dispatch.bash +1129 -0
  671. package/src/scripts/_lib/__pycache__/__init__.cpython-312.pyc +0 -0
  672. package/src/scripts/_lib/__pycache__/agent_src.cpython-312.pyc +0 -0
  673. package/src/scripts/_lib/agent_src.py +491 -0
  674. package/src/scripts/_lib/bench_ab_cache.py +162 -0
  675. package/src/scripts/_lib/changelog_eras.py +330 -0
  676. package/src/scripts/_lib/claude_desktop_bundler.py +238 -0
  677. package/src/scripts/_lib/cli_wrapper.py +64 -0
  678. package/src/scripts/_lib/global_deploy_inventory.py +282 -0
  679. package/src/scripts/_lib/install_regenerator.py +134 -0
  680. package/src/scripts/_lib/installed_lock.py +256 -0
  681. package/src/scripts/_lib/model_tier.py +52 -0
  682. package/src/scripts/_lib/scope_guard.sh +163 -0
  683. package/src/scripts/_lib/value_ladder.py +696 -0
  684. package/src/scripts/_lib/value_report.py +455 -0
  685. package/src/scripts/_phase4_bucket.py +210 -0
  686. package/src/scripts/_pilot_measure.py +53 -0
  687. package/src/scripts/adoption_report.py +195 -0
  688. package/src/scripts/adoption_snapshot.py +219 -0
  689. package/src/scripts/adoption_status.py +166 -0
  690. package/src/scripts/agent-config +57 -0
  691. package/src/scripts/ai-video/adapters/comfyui.sh +392 -0
  692. package/src/scripts/ai-video/adapters/fal.sh +311 -0
  693. package/src/scripts/ai-video/adapters/gemini-veo.sh +246 -0
  694. package/src/scripts/ai-video/adapters/higgsfield.sh +310 -0
  695. package/src/scripts/ai-video/adapters/kling.sh +248 -0
  696. package/src/scripts/ai-video/adapters/musetalk.sh +120 -0
  697. package/src/scripts/ai-video/adapters/openai-images.sh +147 -0
  698. package/src/scripts/ai-video/adapters/replicate.sh +289 -0
  699. package/src/scripts/ai-video/adapters/sora.sh +207 -0
  700. package/src/scripts/ai-video/adapters/syncso.sh +200 -0
  701. package/src/scripts/ai-video/audio-adapters/allin1.sh +115 -0
  702. package/src/scripts/ai-video/audio-adapters/whisperx.sh +128 -0
  703. package/src/scripts/ai-video/lib/adapter-common.sh +231 -0
  704. package/src/scripts/ai-video/lib/adapter-contract.md +329 -0
  705. package/src/scripts/ai-video/lib/audio-adapter-contract.md +210 -0
  706. package/src/scripts/ai-video/lib/comfyui-nodes.allowlist.json +21 -0
  707. package/src/scripts/ai-video/lib/comfyui-templates/ltx-2.json +79 -0
  708. package/src/scripts/ai-video/lib/comfyui-templates/wan22-ti2v-5b.json +78 -0
  709. package/src/scripts/ai-video/lib/embed-provenance.sh +194 -0
  710. package/src/scripts/ai-video/lib/fixtures/allin1/analysis.json +13 -0
  711. package/src/scripts/ai-video/lib/fixtures/comfyui/result.json +1 -0
  712. package/src/scripts/ai-video/lib/fixtures/fal/result.json +1 -0
  713. package/src/scripts/ai-video/lib/fixtures/fal/scene-0001.mp4 +1 -0
  714. package/src/scripts/ai-video/lib/fixtures/gemini-veo/result.json +1 -0
  715. package/src/scripts/ai-video/lib/fixtures/higgsfield/result.json +1 -0
  716. package/src/scripts/ai-video/lib/fixtures/kling/result.json +1 -0
  717. package/src/scripts/ai-video/lib/fixtures/kling/scene-0001.mp4 +1 -0
  718. package/src/scripts/ai-video/lib/fixtures/musetalk/lipsync-0001.mp4 +1 -0
  719. package/src/scripts/ai-video/lib/fixtures/musetalk/result.json +1 -0
  720. package/src/scripts/ai-video/lib/fixtures/openai-images/result.json +1 -0
  721. package/src/scripts/ai-video/lib/fixtures/replicate/result.json +1 -0
  722. package/src/scripts/ai-video/lib/fixtures/replicate/scene-0001.mp4 +1 -0
  723. package/src/scripts/ai-video/lib/fixtures/sora/result.json +1 -0
  724. package/src/scripts/ai-video/lib/fixtures/syncso/lipsync-0001.mp4 +1 -0
  725. package/src/scripts/ai-video/lib/fixtures/syncso/result.json +1 -0
  726. package/src/scripts/ai-video/lib/fixtures/whisperx/transcript.json +26 -0
  727. package/src/scripts/ai-video/lib/ingest-song.sh +89 -0
  728. package/src/scripts/ai-video/lib/load-config.sh +180 -0
  729. package/src/scripts/ai-video/lib/model-capabilities/README.md +82 -0
  730. package/src/scripts/ai-video/lib/model-capabilities/comfyui.json +31 -0
  731. package/src/scripts/ai-video/lib/model-capabilities/fal.json +77 -0
  732. package/src/scripts/ai-video/lib/model-capabilities/musetalk.json +24 -0
  733. package/src/scripts/ai-video/lib/model-capabilities/replicate.json +82 -0
  734. package/src/scripts/ai-video/lib/model-capabilities/syncso.json +23 -0
  735. package/src/scripts/ai-video/lib/resume-scan.sh +212 -0
  736. package/src/scripts/ai-video/lib/telemetry.sh +115 -0
  737. package/src/scripts/ai-video/lib/validate-deps.sh +132 -0
  738. package/src/scripts/ai-video/lib/validate-vocal-map.sh +121 -0
  739. package/src/scripts/ai-video/smoke-trace.sh +179 -0
  740. package/src/scripts/ai-video/stitch.sh +161 -0
  741. package/src/scripts/ai-video/test-pipeline.sh +169 -0
  742. package/src/scripts/ai_council/advisors.py +148 -0
  743. package/src/scripts/ai_council/clients.py +1385 -0
  744. package/src/scripts/ai_council/compile_corpus.py +179 -0
  745. package/src/scripts/ai_council/events_log.py +141 -0
  746. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_2a4_acceptance.py +208 -0
  747. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_budget_v2_audit.py +206 -0
  748. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_context_layer_v1_estimate.py +67 -0
  749. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_context_layer_v1_review.py +292 -0
  750. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_followups_review.py +259 -0
  751. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_nondestructive_inline_audit.py +209 -0
  752. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_phase4_dispatch_latency.py +108 -0
  753. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_phase6_trigger_jaccard.py +92 -0
  754. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_phase_2a_budget_rebalance.py +257 -0
  755. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_phase_2a_post_revert.py +197 -0
  756. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_rebalancing_audit.py +149 -0
  757. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_roundtrip.py +111 -0
  758. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_rule_hardening_v1.py +251 -0
  759. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_silent_taskfiles.py +98 -0
  760. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_open_questions.py +232 -0
  761. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_optimization.py +144 -0
  762. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_v3_gaps.py +252 -0
  763. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_v3_review.py +240 -0
  764. package/src/scripts/ai_council/one_off_archive/2026-05/_one_off_tier_retrofit.py +180 -0
  765. package/src/scripts/ai_council/pricing.py +215 -0
  766. package/src/scripts/ai_council/session.py +366 -0
  767. package/src/scripts/annotate_discovery.py +149 -0
  768. package/src/scripts/apply_modules_config.py +290 -0
  769. package/src/scripts/audit_adr_coverage.py +175 -0
  770. package/src/scripts/audit_auto_rules.py +175 -0
  771. package/src/scripts/audit_cloud_compatibility.py +362 -0
  772. package/src/scripts/audit_command_surface.py +669 -0
  773. package/src/scripts/audit_initial_context.py +237 -0
  774. package/src/scripts/audit_likelihood.py +148 -0
  775. package/src/scripts/audit_mcp_tools.py +146 -0
  776. package/src/scripts/audit_overlap.py +145 -0
  777. package/src/scripts/audit_skill_overlap.py +207 -0
  778. package/src/scripts/audit_user_type_axis.py +140 -0
  779. package/src/scripts/backfill_model_tier.py +184 -0
  780. package/src/scripts/bench_ab_cache_dispatch.py +68 -0
  781. package/src/scripts/bench_ab_clone.py +170 -0
  782. package/src/scripts/bench_ab_diff.py +220 -0
  783. package/src/scripts/bench_ab_integrity.py +143 -0
  784. package/src/scripts/bench_ab_run.py +235 -0
  785. package/src/scripts/bench_ab_task_runner.py +369 -0
  786. package/src/scripts/bench_ab_tracka_run.py +202 -0
  787. package/src/scripts/bench_baseline_ready.py +108 -0
  788. package/src/scripts/bench_condense_memory.py +168 -0
  789. package/src/scripts/bench_drift_check.py +151 -0
  790. package/src/scripts/bench_per_tool.py +216 -0
  791. package/src/scripts/bench_rtk_savings.py +320 -0
  792. package/src/scripts/bench_run.py +272 -0
  793. package/src/scripts/bench_runner.py +158 -0
  794. package/src/scripts/build_cloud_bundle.py +458 -0
  795. package/src/scripts/build_discovery_manifest.py +747 -0
  796. package/src/scripts/build_linear_digest.py +260 -0
  797. package/src/scripts/build_mcp_registry_manifest.py +181 -0
  798. package/src/scripts/build_rule_trigger_matrix.py +350 -0
  799. package/src/scripts/capture_showcase_session.py +361 -0
  800. package/src/scripts/check_always_budget.py +532 -0
  801. package/src/scripts/check_artefact_checksums.py +111 -0
  802. package/src/scripts/check_augment_description_cap.py +79 -0
  803. package/src/scripts/check_augmentignore.py +72 -0
  804. package/src/scripts/check_beta_review_markers.py +127 -0
  805. package/src/scripts/check_cluster_patterns.py +206 -0
  806. package/src/scripts/check_command_count_messaging.py +152 -0
  807. package/src/scripts/check_condensation.py +375 -0
  808. package/src/scripts/check_condensed_paths.py +231 -0
  809. package/src/scripts/check_context_paths.py +202 -0
  810. package/src/scripts/check_council_references.py +228 -0
  811. package/src/scripts/check_discovery_determinism.py +70 -0
  812. package/src/scripts/check_gate_paths.py +128 -0
  813. package/src/scripts/check_module_management_neutral.py +147 -0
  814. package/src/scripts/check_no_new_legacy_path.py +100 -0
  815. package/src/scripts/check_no_roadmap_refs.py +155 -0
  816. package/src/scripts/check_one_off_location.py +81 -0
  817. package/src/scripts/check_overlay_cascade_subdirs.py +129 -0
  818. package/src/scripts/check_portability.py +574 -0
  819. package/src/scripts/check_public_catalog_links.py +125 -0
  820. package/src/scripts/check_public_links.py +185 -0
  821. package/src/scripts/check_references.py +557 -0
  822. package/src/scripts/check_release_includes_discovery.py +61 -0
  823. package/src/scripts/check_release_pr_shape.py +123 -0
  824. package/src/scripts/check_release_published.py +145 -0
  825. package/src/scripts/check_reply_consistency.py +169 -0
  826. package/src/scripts/check_roadmap_trackable.py +114 -0
  827. package/src/scripts/check_role_doc_links.py +110 -0
  828. package/src/scripts/check_safety_floor_untouched.py +125 -0
  829. package/src/scripts/check_skill_requires.py +147 -0
  830. package/src/scripts/check_template_pin_drift.py +129 -0
  831. package/src/scripts/check_test_coverage_diff.py +180 -0
  832. package/src/scripts/check_token_optimizer_freshness.py +146 -0
  833. package/src/scripts/check_update_banner.py +86 -0
  834. package/src/scripts/ci_time_ratio.py +168 -0
  835. package/src/scripts/compile_router.py +232 -0
  836. package/src/scripts/condense.py +1919 -0
  837. package/src/scripts/condense_memory.py +178 -0
  838. package/src/scripts/config/packs.py +157 -0
  839. package/src/scripts/config/profile_explain.py +89 -0
  840. package/src/scripts/config/profiles.py +191 -0
  841. package/src/scripts/config/session_profiles.py +542 -0
  842. package/src/scripts/cost_by_conversation.py +78 -0
  843. package/src/scripts/cost_summary.py +97 -0
  844. package/src/scripts/council_cli.py +2557 -0
  845. package/src/scripts/cross_repo_retrieve.py +172 -0
  846. package/src/scripts/discovery_stats.py +70 -0
  847. package/src/scripts/extract_audit_patterns.py +202 -0
  848. package/src/scripts/first_run_gate_hook.py +179 -0
  849. package/src/scripts/gen_discovery_baseline.py +127 -0
  850. package/src/scripts/generate_catalog.py +116 -0
  851. package/src/scripts/generate_command_flows.py +191 -0
  852. package/src/scripts/generate_index.py +303 -0
  853. package/src/scripts/generate_ownership_matrix.py +378 -0
  854. package/src/scripts/generate_pack_manifests.py +340 -0
  855. package/src/scripts/hook_manifest.yaml +243 -0
  856. package/src/scripts/hooks/dispatch_hook.py +461 -0
  857. package/src/scripts/hooks/replay_hook.py +144 -0
  858. package/src/scripts/hooks_doctor.py +223 -0
  859. package/src/scripts/hooks_status.py +157 -0
  860. package/src/scripts/install +425 -0
  861. package/src/scripts/install-hooks.sh +204 -0
  862. package/src/scripts/install.py +5183 -0
  863. package/src/scripts/install.sh +1156 -0
  864. package/src/scripts/inventory_abstraction_budget.py +622 -0
  865. package/src/scripts/inventory_frontmatter.py +164 -0
  866. package/src/scripts/inventory_meta_layers.py +288 -0
  867. package/src/scripts/iron_law_sha.py +107 -0
  868. package/src/scripts/linked_projects_list.py +91 -0
  869. package/src/scripts/lint_agent_skill_names.py +150 -0
  870. package/src/scripts/lint_agents_layout.py +197 -0
  871. package/src/scripts/lint_agents_md.py +210 -0
  872. package/src/scripts/lint_archived_skills.py +159 -0
  873. package/src/scripts/lint_artefact_frontmatter.py +188 -0
  874. package/src/scripts/lint_bench_ab.py +172 -0
  875. package/src/scripts/lint_bench_corpus.py +255 -0
  876. package/src/scripts/lint_command_flow_coverage.py +132 -0
  877. package/src/scripts/lint_command_routing.py +160 -0
  878. package/src/scripts/lint_command_tiers.py +175 -0
  879. package/src/scripts/lint_command_verbs.py +206 -0
  880. package/src/scripts/lint_commit_subjects.py +139 -0
  881. package/src/scripts/lint_context_spine_usage.py +137 -0
  882. package/src/scripts/lint_discovery_manifest.py +176 -0
  883. package/src/scripts/lint_discovery_vocabulary.py +220 -0
  884. package/src/scripts/lint_examples.py +102 -0
  885. package/src/scripts/lint_explain_trace.py +80 -0
  886. package/src/scripts/lint_featured_skills.py +144 -0
  887. package/src/scripts/lint_flows.py +215 -0
  888. package/src/scripts/lint_framework_leakage.py +375 -0
  889. package/src/scripts/lint_framework_leakage_allowlist.json +575 -0
  890. package/src/scripts/lint_frontmatter_boilerplate.py +77 -0
  891. package/src/scripts/lint_ghostwriter_source.py +242 -0
  892. package/src/scripts/lint_handoffs.py +217 -0
  893. package/src/scripts/lint_hook_concern_budget.py +207 -0
  894. package/src/scripts/lint_hook_manifest.py +217 -0
  895. package/src/scripts/lint_load_context.py +196 -0
  896. package/src/scripts/lint_marketplace.py +180 -0
  897. package/src/scripts/lint_marketplace_install_completeness.py +198 -0
  898. package/src/scripts/lint_mcp_registry_manifest.py +69 -0
  899. package/src/scripts/lint_media_policy_linkage.py +140 -0
  900. package/src/scripts/lint_model_tier_coverage.py +73 -0
  901. package/src/scripts/lint_namespace.py +135 -0
  902. package/src/scripts/lint_namespace_collisions.py +103 -0
  903. package/src/scripts/lint_new_skill_gate.py +144 -0
  904. package/src/scripts/lint_no_new_atomic_commands.py +180 -0
  905. package/src/scripts/lint_one_off_age.py +184 -0
  906. package/src/scripts/lint_orchestration_dsl.py +217 -0
  907. package/src/scripts/lint_orchestrator_auto_detect.py +111 -0
  908. package/src/scripts/lint_pack_boundaries.py +147 -0
  909. package/src/scripts/lint_pack_dependencies.py +137 -0
  910. package/src/scripts/lint_pack_first_win.py +121 -0
  911. package/src/scripts/lint_persona_governance.py +164 -0
  912. package/src/scripts/lint_positioning.py +143 -0
  913. package/src/scripts/lint_profile_overlay_set_only.py +179 -0
  914. package/src/scripts/lint_regression.py +251 -0
  915. package/src/scripts/lint_roadmap_ci_steps.py +186 -0
  916. package/src/scripts/lint_roadmap_complexity.py +220 -0
  917. package/src/scripts/lint_role_experiences.py +255 -0
  918. package/src/scripts/lint_rule_interactions.py +170 -0
  919. package/src/scripts/lint_rule_tiers.py +90 -0
  920. package/src/scripts/lint_showcase_sessions.py +148 -0
  921. package/src/scripts/lint_skill_tools.py +168 -0
  922. package/src/scripts/lint_topics_yaml.py +89 -0
  923. package/src/scripts/lint_trust_coherence.py +212 -0
  924. package/src/scripts/lint_value_dashboard.py +218 -0
  925. package/src/scripts/mcp_parity_smoke.py +316 -0
  926. package/src/scripts/mcp_registry_submit.sh +187 -0
  927. package/src/scripts/mcp_server/__init__.py +19 -0
  928. package/src/scripts/mcp_server/consumer_tool_catalog.json +276 -0
  929. package/src/scripts/mcp_server/prompts.py +442 -0
  930. package/src/scripts/mcp_server/resources.py +201 -0
  931. package/src/scripts/mcp_server/tools.py +950 -0
  932. package/src/scripts/measure_augment_budget.py +214 -0
  933. package/src/scripts/measure_density.py +232 -0
  934. package/src/scripts/measure_frugality_savings.py +164 -0
  935. package/src/scripts/measure_markitdown_lift.py +127 -0
  936. package/src/scripts/measure_patterns.py +376 -0
  937. package/src/scripts/measure_projection_bytes.py +159 -0
  938. package/src/scripts/measure_rule_budget.py +347 -0
  939. package/src/scripts/measure_skill_reduction.py +102 -0
  940. package/src/scripts/migrate_command_suggestions.py +151 -0
  941. package/src/scripts/migrate_frontmatter_defaults.py +245 -0
  942. package/src/scripts/mine_session.py +279 -0
  943. package/src/scripts/move_artefact.py +143 -0
  944. package/src/scripts/new_skill.py +148 -0
  945. package/src/scripts/pack_dependency_allowlist.json +70 -0
  946. package/src/scripts/pack_mcp_content.py +293 -0
  947. package/src/scripts/plan_physical_move.py +353 -0
  948. package/src/scripts/print_required_checks.py +196 -0
  949. package/src/scripts/probe_projection_fidelity.py +202 -0
  950. package/src/scripts/profile_staleness_hook.py +69 -0
  951. package/src/scripts/profile_use.py +164 -0
  952. package/src/scripts/project_thin_rules.py +168 -0
  953. package/src/scripts/prototype_lint_contradictions.py +150 -0
  954. package/src/scripts/prove_pack_extractable.py +187 -0
  955. package/src/scripts/recruit_preflight.sh +152 -0
  956. package/src/scripts/refine_ticket_detect.py +646 -0
  957. package/src/scripts/release.py +1091 -0
  958. package/src/scripts/render_benchmark_md.py +312 -0
  959. package/src/scripts/render_value_md.py +347 -0
  960. package/src/scripts/repro/repro_marketplace_install_gap.sh +161 -0
  961. package/src/scripts/roadmap_progress_hook.py +274 -0
  962. package/src/scripts/router_telemetry.py +470 -0
  963. package/src/scripts/run_skill_evals.py +185 -0
  964. package/src/scripts/runtime_registry.py +166 -0
  965. package/src/scripts/schemas/command.schema.json +219 -0
  966. package/src/scripts/schemas/flow.schema.json +59 -0
  967. package/src/scripts/schemas/pack.schema.json +95 -0
  968. package/src/scripts/schemas/rule.schema.json +145 -0
  969. package/src/scripts/score_skill_selection.py +198 -0
  970. package/src/scripts/skill_collision_clusters.py +162 -0
  971. package/src/scripts/skill_discovery.py +254 -0
  972. package/src/scripts/skill_linter.py +3694 -0
  973. package/src/scripts/skill_overlap.py +204 -0
  974. package/src/scripts/skill_preview.py +179 -0
  975. package/src/scripts/skill_tools/audit_persona_coverage.py +147 -0
  976. package/src/scripts/skill_tools/audit_user_type_coverage.py +148 -0
  977. package/src/scripts/skill_tools/run_block_d_eval.py +129 -0
  978. package/src/scripts/skill_tools/score_skill_relevance.py +169 -0
  979. package/src/scripts/skill_tools/suggest_skill_for_task.py +113 -0
  980. package/src/scripts/skill_trigger_eval.py +682 -0
  981. package/src/scripts/skill_usage_collect.py +191 -0
  982. package/src/scripts/skill_usage_report.py +162 -0
  983. package/src/scripts/smoke/kernel.sh +107 -0
  984. package/src/scripts/smoke/router.sh +148 -0
  985. package/src/scripts/smoke/schema.sh +78 -0
  986. package/src/scripts/smoke/skills.sh +112 -0
  987. package/src/scripts/smoke_path_resolution.py +93 -0
  988. package/src/scripts/smoke_quickstart.py +144 -0
  989. package/src/scripts/snapshot_agent_outputs.py +144 -0
  990. package/src/scripts/spotcheck_thin_root.py +134 -0
  991. package/src/scripts/sync_agent_settings.py +180 -0
  992. package/src/scripts/sync_github_metadata.py +147 -0
  993. package/src/scripts/sync_gitignore.py +291 -0
  994. package/src/scripts/telegraph_stats.py +119 -0
  995. package/src/scripts/trigger_coverage.py +129 -0
  996. package/src/scripts/update_counts.py +199 -0
  997. package/src/scripts/update_prices.py +125 -0
  998. package/src/scripts/validate_agent_settings.py +124 -0
  999. package/src/scripts/validate_decision_engine.py +136 -0
  1000. package/src/scripts/validate_discovery_manifest.py +94 -0
  1001. package/src/scripts/validate_frontmatter.py +647 -0
  1002. package/src/scripts/validate_pack_yaml.py +179 -0
  1003. package/src/scripts/verify_physical_move.py +185 -0
  1004. package/src/scripts/wrapper_freshness_hook.py +86 -0
  1005. package/.agent-src/README.md +0 -64
  1006. package/.agent-src/commands/agent-handoff.md +0 -120
  1007. package/.agent-src/commands/agent-status.md +0 -136
  1008. package/.agent-src/commands/agents/audit.md +0 -157
  1009. package/.agent-src/commands/agents/init.md +0 -191
  1010. package/.agent-src/commands/agents/optimize.md +0 -186
  1011. package/.agent-src/commands/agents/user/accept.md +0 -121
  1012. package/.agent-src/commands/agents/user/init.md +0 -161
  1013. package/.agent-src/commands/agents/user/review.md +0 -111
  1014. package/.agent-src/commands/agents/user/show.md +0 -113
  1015. package/.agent-src/commands/agents/user/update.md +0 -102
  1016. package/.agent-src/commands/agents/user.md +0 -70
  1017. package/.agent-src/commands/agents.md +0 -61
  1018. package/.agent-src/commands/analytics/prune.md +0 -70
  1019. package/.agent-src/commands/analytics/show.md +0 -99
  1020. package/.agent-src/commands/analytics.md +0 -56
  1021. package/.agent-src/commands/analyze-reference-repo.md +0 -203
  1022. package/.agent-src/commands/bug-fix.md +0 -192
  1023. package/.agent-src/commands/bug-investigate.md +0 -185
  1024. package/.agent-src/commands/challenge-me/vision.md +0 -353
  1025. package/.agent-src/commands/challenge-me/with-docs.md +0 -338
  1026. package/.agent-src/commands/challenge-me.md +0 -67
  1027. package/.agent-src/commands/chat-history/import.md +0 -171
  1028. package/.agent-src/commands/chat-history/learn.md +0 -183
  1029. package/.agent-src/commands/chat-history/show.md +0 -111
  1030. package/.agent-src/commands/chat-history.md +0 -58
  1031. package/.agent-src/commands/check-current-md.md +0 -142
  1032. package/.agent-src/commands/commit/in-chunks.md +0 -145
  1033. package/.agent-src/commands/commit.md +0 -190
  1034. package/.agent-src/commands/condense.md +0 -235
  1035. package/.agent-src/commands/context/create.md +0 -180
  1036. package/.agent-src/commands/context/refactor.md +0 -182
  1037. package/.agent-src/commands/context.md +0 -50
  1038. package/.agent-src/commands/cost-report.md +0 -130
  1039. package/.agent-src/commands/council/analysis.md +0 -146
  1040. package/.agent-src/commands/council/debate.md +0 -133
  1041. package/.agent-src/commands/council/default.md +0 -288
  1042. package/.agent-src/commands/council/design.md +0 -106
  1043. package/.agent-src/commands/council/optimize.md +0 -122
  1044. package/.agent-src/commands/council/pr.md +0 -129
  1045. package/.agent-src/commands/council.md +0 -106
  1046. package/.agent-src/commands/create-pr/description-only.md +0 -159
  1047. package/.agent-src/commands/create-pr.md +0 -249
  1048. package/.agent-src/commands/e2e-heal.md +0 -109
  1049. package/.agent-src/commands/e2e-plan.md +0 -96
  1050. package/.agent-src/commands/estimate-ticket.md +0 -88
  1051. package/.agent-src/commands/feature/dev.md +0 -123
  1052. package/.agent-src/commands/feature/explore.md +0 -190
  1053. package/.agent-src/commands/feature/plan.md +0 -332
  1054. package/.agent-src/commands/feature/refactor.md +0 -193
  1055. package/.agent-src/commands/feature/roadmap.md +0 -221
  1056. package/.agent-src/commands/feature.md +0 -58
  1057. package/.agent-src/commands/fix/ci.md +0 -58
  1058. package/.agent-src/commands/fix/portability.md +0 -106
  1059. package/.agent-src/commands/fix/pr-bot-comments.md +0 -156
  1060. package/.agent-src/commands/fix/pr-comments.md +0 -68
  1061. package/.agent-src/commands/fix/pr-developer-comments.md +0 -162
  1062. package/.agent-src/commands/fix/refs.md +0 -103
  1063. package/.agent-src/commands/fix/seeder.md +0 -157
  1064. package/.agent-src/commands/fix.md +0 -60
  1065. package/.agent-src/commands/ghostwriter/delete.md +0 -122
  1066. package/.agent-src/commands/ghostwriter/fetch.md +0 -189
  1067. package/.agent-src/commands/ghostwriter/list.md +0 -106
  1068. package/.agent-src/commands/ghostwriter/show.md +0 -117
  1069. package/.agent-src/commands/ghostwriter/write.md +0 -164
  1070. package/.agent-src/commands/ghostwriter.md +0 -100
  1071. package/.agent-src/commands/grill-me.md +0 -44
  1072. package/.agent-src/commands/image/analyse.md +0 -51
  1073. package/.agent-src/commands/image/create.md +0 -53
  1074. package/.agent-src/commands/image/verify.md +0 -48
  1075. package/.agent-src/commands/image.md +0 -69
  1076. package/.agent-src/commands/implement-ticket.md +0 -165
  1077. package/.agent-src/commands/jira-ticket.md +0 -80
  1078. package/.agent-src/commands/judge/on-diff.md +0 -123
  1079. package/.agent-src/commands/judge/solo.md +0 -95
  1080. package/.agent-src/commands/judge/steps.md +0 -93
  1081. package/.agent-src/commands/judge.md +0 -60
  1082. package/.agent-src/commands/knowledge/cross-repo.md +0 -71
  1083. package/.agent-src/commands/knowledge/forget.md +0 -96
  1084. package/.agent-src/commands/knowledge/ingest.md +0 -114
  1085. package/.agent-src/commands/knowledge/list.md +0 -94
  1086. package/.agent-src/commands/knowledge.md +0 -69
  1087. package/.agent-src/commands/memory/add.md +0 -146
  1088. package/.agent-src/commands/memory/learn-low-impact.md +0 -147
  1089. package/.agent-src/commands/memory/load.md +0 -175
  1090. package/.agent-src/commands/memory/mine-session.md +0 -156
  1091. package/.agent-src/commands/memory/promote.md +0 -194
  1092. package/.agent-src/commands/memory/propose.md +0 -121
  1093. package/.agent-src/commands/memory.md +0 -56
  1094. package/.agent-src/commands/mode.md +0 -129
  1095. package/.agent-src/commands/module/create.md +0 -143
  1096. package/.agent-src/commands/module/explore.md +0 -197
  1097. package/.agent-src/commands/module.md +0 -50
  1098. package/.agent-src/commands/optimize/agents-dir.md +0 -118
  1099. package/.agent-src/commands/optimize/augmentignore.md +0 -311
  1100. package/.agent-src/commands/optimize/rtk.md +0 -160
  1101. package/.agent-src/commands/optimize/skills.md +0 -131
  1102. package/.agent-src/commands/optimize-prompt.md +0 -66
  1103. package/.agent-src/commands/optimize.md +0 -56
  1104. package/.agent-src/commands/orchestrate.md +0 -128
  1105. package/.agent-src/commands/override/create.md +0 -107
  1106. package/.agent-src/commands/override/manage.md +0 -106
  1107. package/.agent-src/commands/override.md +0 -50
  1108. package/.agent-src/commands/package-reset.md +0 -162
  1109. package/.agent-src/commands/package-test.md +0 -238
  1110. package/.agent-src/commands/post-as/ghostwriter.md +0 -70
  1111. package/.agent-src/commands/post-as/me.md +0 -128
  1112. package/.agent-src/commands/post-as.md +0 -62
  1113. package/.agent-src/commands/prediction-pool.md +0 -234
  1114. package/.agent-src/commands/prepare-for-review.md +0 -106
  1115. package/.agent-src/commands/profile/activate.md +0 -81
  1116. package/.agent-src/commands/profile/deactivate.md +0 -68
  1117. package/.agent-src/commands/profile/show.md +0 -70
  1118. package/.agent-src/commands/profile.md +0 -68
  1119. package/.agent-src/commands/project-analyze.md +0 -320
  1120. package/.agent-src/commands/project-health.md +0 -105
  1121. package/.agent-src/commands/quality-fix.md +0 -137
  1122. package/.agent-src/commands/refine-ticket.md +0 -94
  1123. package/.agent-src/commands/research/deep.md +0 -154
  1124. package/.agent-src/commands/research/report.md +0 -139
  1125. package/.agent-src/commands/research.md +0 -177
  1126. package/.agent-src/commands/review-changes.md +0 -205
  1127. package/.agent-src/commands/review-routing.md +0 -117
  1128. package/.agent-src/commands/roadmap/ai-council.md +0 -188
  1129. package/.agent-src/commands/roadmap/create.md +0 -213
  1130. package/.agent-src/commands/roadmap/process-full.md +0 -108
  1131. package/.agent-src/commands/roadmap/process-phase.md +0 -74
  1132. package/.agent-src/commands/roadmap/process-step.md +0 -62
  1133. package/.agent-src/commands/roadmap.md +0 -78
  1134. package/.agent-src/commands/rule-compliance-audit.md +0 -148
  1135. package/.agent-src/commands/set-cost-profile.md +0 -117
  1136. package/.agent-src/commands/skill/preview.md +0 -67
  1137. package/.agent-src/commands/skill.md +0 -48
  1138. package/.agent-src/commands/skills/discover.md +0 -76
  1139. package/.agent-src/commands/skills.md +0 -56
  1140. package/.agent-src/commands/sync-agent-settings.md +0 -139
  1141. package/.agent-src/commands/sync-gitignore/fix.md +0 -147
  1142. package/.agent-src/commands/sync-gitignore.md +0 -138
  1143. package/.agent-src/commands/tests/create.md +0 -83
  1144. package/.agent-src/commands/tests/execute.md +0 -67
  1145. package/.agent-src/commands/tests.md +0 -50
  1146. package/.agent-src/commands/threat-model.md +0 -125
  1147. package/.agent-src/commands/update-form-request-messages.md +0 -199
  1148. package/.agent-src/commands/upstream-contribute.md +0 -181
  1149. package/.agent-src/commands/video/from-script.md +0 -127
  1150. package/.agent-src/commands/video/from-song.md +0 -351
  1151. package/.agent-src/commands/video/scene.md +0 -96
  1152. package/.agent-src/commands/video/stitch.md +0 -87
  1153. package/.agent-src/commands/video/storyboard.md +0 -99
  1154. package/.agent-src/commands/video.md +0 -73
  1155. package/.agent-src/commands/work.md +0 -166
  1156. package/.agent-src/contexts/authority/commit-mechanics.md +0 -93
  1157. package/.agent-src/contexts/communication/rules-auto/augment-source-of-truth-mechanics.md +0 -98
  1158. package/.agent-src/contexts/contracts/artifact-engagement-flow.md +0 -259
  1159. package/.agent-src/contexts/contracts/consumer-agents-md-guide.md +0 -127
  1160. package/.agent-src/contexts/contracts/emergency-triage-block.md +0 -53
  1161. package/.agent-src/personas/README.md +0 -114
  1162. package/.agent-src/profiles/agency.yml +0 -27
  1163. package/.agent-src/profiles/content_creator.yml +0 -30
  1164. package/.agent-src/profiles/developer.yml +0 -26
  1165. package/.agent-src/profiles/finance.yml +0 -24
  1166. package/.agent-src/profiles/founder.yml +0 -25
  1167. package/.agent-src/profiles/ops.yml +0 -25
  1168. package/.agent-src/rules/ask-when-uncertain.md +0 -70
  1169. package/.agent-src/rules/augment-edit-discipline.md +0 -31
  1170. package/.agent-src/rules/augment-source-of-truth.md +0 -75
  1171. package/.agent-src/rules/commit-policy.md +0 -59
  1172. package/.agent-src/rules/direct-answers.md +0 -64
  1173. package/.agent-src/rules/domain-adoption-policy.md +0 -160
  1174. package/.agent-src/rules/language-and-tone.md +0 -64
  1175. package/.agent-src/rules/linked-projects-onboarding-gate.md +0 -79
  1176. package/.agent-src/rules/media-governance-routing.md +0 -85
  1177. package/.agent-src/rules/missing-tool-handling.md +0 -76
  1178. package/.agent-src/rules/model-recommendation.md +0 -85
  1179. package/.agent-src/rules/no-attribution-footers.md +0 -57
  1180. package/.agent-src/rules/no-cheap-questions.md +0 -75
  1181. package/.agent-src/rules/no-pr-progress-comments.md +0 -109
  1182. package/.agent-src/rules/no-roadmap-references.md +0 -141
  1183. package/.agent-src/rules/non-destructive-by-default.md +0 -58
  1184. package/.agent-src/rules/persona-governance.md +0 -93
  1185. package/.agent-src/rules/preservation-guard.md +0 -97
  1186. package/.agent-src/rules/provider-lifecycle-discipline.md +0 -78
  1187. package/.agent-src/rules/roadmap-progress-sync.md +0 -99
  1188. package/.agent-src/rules/scope-control.md +0 -68
  1189. package/.agent-src/rules/user-interrupt-priority.md +0 -49
  1190. package/.agent-src/rules/verify-before-complete.md +0 -78
  1191. package/.agent-src/scripts/update_roadmap_progress.py +0 -416
  1192. package/.agent-src/skills/accessibility-auditor/SKILL.md +0 -136
  1193. package/.agent-src/skills/agents-md-thin-root/SKILL.md +0 -143
  1194. package/.agent-src/skills/api-design/SKILL.md +0 -112
  1195. package/.agent-src/skills/api-endpoint/SKILL.md +0 -94
  1196. package/.agent-src/skills/authz-review/SKILL.md +0 -180
  1197. package/.agent-src/skills/blade-ui/SKILL.md +0 -129
  1198. package/.agent-src/skills/character-consistency/SKILL.md +0 -141
  1199. package/.agent-src/skills/check-refs/SKILL.md +0 -96
  1200. package/.agent-src/skills/code-review/SKILL.md +0 -224
  1201. package/.agent-src/skills/command-writing/SKILL.md +0 -282
  1202. package/.agent-src/skills/condense-memory/SKILL.md +0 -123
  1203. package/.agent-src/skills/context-document/SKILL.md +0 -160
  1204. package/.agent-src/skills/dashboard-design/SKILL.md +0 -123
  1205. package/.agent-src/skills/database/SKILL.md +0 -103
  1206. package/.agent-src/skills/deep-reading-analyst/SKILL.md +0 -198
  1207. package/.agent-src/skills/design-review/SKILL.md +0 -233
  1208. package/.agent-src/skills/existing-ui-audit/SKILL.md +0 -209
  1209. package/.agent-src/skills/fe-design/SKILL.md +0 -255
  1210. package/.agent-src/skills/feature-planning/SKILL.md +0 -271
  1211. package/.agent-src/skills/flux/SKILL.md +0 -121
  1212. package/.agent-src/skills/jira-integration/SKILL.md +0 -187
  1213. package/.agent-src/skills/lint-skills/SKILL.md +0 -95
  1214. package/.agent-src/skills/livewire/SKILL.md +0 -134
  1215. package/.agent-src/skills/md-language-check/SKILL.md +0 -130
  1216. package/.agent-src/skills/merge-conflicts/SKILL.md +0 -195
  1217. package/.agent-src/skills/motion-choreographer/SKILL.md +0 -171
  1218. package/.agent-src/skills/persona-writing/SKILL.md +0 -158
  1219. package/.agent-src/skills/react-shadcn-ui/SKILL.md +0 -213
  1220. package/.agent-src/skills/readme-reviewer/SKILL.md +0 -242
  1221. package/.agent-src/skills/readme-writing/SKILL.md +0 -240
  1222. package/.agent-src/skills/readme-writing-package/SKILL.md +0 -350
  1223. package/.agent-src/skills/roadmap-management/SKILL.md +0 -461
  1224. package/.agent-src/skills/rule-refactor/SKILL.md +0 -149
  1225. package/.agent-src/skills/rule-writing/SKILL.md +0 -277
  1226. package/.agent-src/skills/scene-expander/SKILL.md +0 -147
  1227. package/.agent-src/skills/scene-expander/scene-blueprint.schema.yaml +0 -108
  1228. package/.agent-src/skills/script-writing/SKILL.md +0 -231
  1229. package/.agent-src/skills/sentry-integration/SKILL.md +0 -175
  1230. package/.agent-src/skills/song-to-script/SKILL.md +0 -216
  1231. package/.agent-src/skills/sql-writing/SKILL.md +0 -79
  1232. package/.agent-src/skills/tailwind-engineer/SKILL.md +0 -148
  1233. package/.agent-src/skills/technical-specification/SKILL.md +0 -251
  1234. package/.agent-src/skills/threat-modeling/SKILL.md +0 -197
  1235. package/.agent-src/skills/upstream-contribute/SKILL.md +0 -261
  1236. package/.agent-src/templates/AGENTS.md +0 -34
  1237. package/.agent-src/templates/agents/agent-project-settings.example.yml +0 -286
  1238. package/.agent-src/templates/agents/proposal.example.md +0 -155
  1239. package/.agent-src/templates/command.md +0 -105
  1240. package/.agent-src/templates/copilot-instructions.md +0 -167
  1241. package/.agent-src/templates/github-workflows/proposal-drift.yml +0 -118
  1242. package/.agent-src/templates/hooks/pre-commit-frontmatter +0 -66
  1243. package/.agent-src/templates/hooks/pre-commit-roadmap-progress +0 -99
  1244. package/.agent-src/templates/persona.md +0 -99
  1245. package/.agent-src/templates/rule.md +0 -135
  1246. package/.agent-src/templates/scripts/work_engine/directives/ui/polish.py +0 -510
  1247. package/.agent-src/templates/scripts/work_engine/directives/ui/review.py +0 -468
  1248. package/.agent-src/templates/scripts/work_engine/orchestration.py +0 -182
  1249. package/.agent-src/user-types/README.md +0 -124
  1250. package/config/agent-settings.template.yml +0 -578
  1251. package/config/discovery/packs.yml +0 -181
  1252. package/config/discovery/workspaces.yml +0 -72
  1253. package/dist/ui/assets/index-DcAWIwwY.js +0 -40
  1254. package/dist/ui/assets/index-DcAWIwwY.js.map +0 -1
  1255. package/scripts/__pycache__/validate_frontmatter.cpython-312.pyc +0 -0
  1256. package/scripts/_archive/README.md +0 -59
  1257. package/scripts/_archive/_bootstrap_tier_frontmatter.py +0 -151
  1258. package/scripts/_archive/_p43_bodies.py +0 -235
  1259. package/scripts/_archive/_p43_condense.py +0 -118
  1260. package/scripts/_archive/_p4_migrate.py +0 -199
  1261. package/scripts/_cli/cmd_doctor.py +0 -1583
  1262. package/scripts/_cli/cmd_export.py +0 -157
  1263. package/scripts/_cli/cmd_migrate.py +0 -437
  1264. package/scripts/_cli/cmd_refresh.py +0 -179
  1265. package/scripts/_cli/cmd_settings_migrate.py +0 -147
  1266. package/scripts/_cli/cmd_update.py +0 -279
  1267. package/scripts/_cli/cmd_upgrade.py +0 -172
  1268. package/scripts/_cli/cmd_versions.py +0 -160
  1269. package/scripts/_dispatch.bash +0 -1126
  1270. package/scripts/_lib/__pycache__/__init__.cpython-312.pyc +0 -0
  1271. package/scripts/_lib/__pycache__/agent_src.cpython-312.pyc +0 -0
  1272. package/scripts/_lib/agent_src.py +0 -187
  1273. package/scripts/_lib/bench_ab_cache.py +0 -162
  1274. package/scripts/_lib/changelog_eras.py +0 -330
  1275. package/scripts/_lib/claude_desktop_bundler.py +0 -238
  1276. package/scripts/_lib/cli_wrapper.py +0 -64
  1277. package/scripts/_lib/install_regenerator.py +0 -129
  1278. package/scripts/_lib/installed_lock.py +0 -256
  1279. package/scripts/_lib/scope_guard.sh +0 -162
  1280. package/scripts/_lib/value_ladder.py +0 -696
  1281. package/scripts/_lib/value_report.py +0 -455
  1282. package/scripts/_phase4_bucket.py +0 -210
  1283. package/scripts/_pilot_measure.py +0 -53
  1284. package/scripts/adoption_report.py +0 -195
  1285. package/scripts/adoption_snapshot.py +0 -219
  1286. package/scripts/adoption_status.py +0 -166
  1287. package/scripts/agent-config +0 -57
  1288. package/scripts/ai-video/adapters/gemini-veo.sh +0 -62
  1289. package/scripts/ai-video/adapters/higgsfield.sh +0 -245
  1290. package/scripts/ai-video/adapters/kling.sh +0 -59
  1291. package/scripts/ai-video/adapters/openai-images.sh +0 -143
  1292. package/scripts/ai-video/adapters/sora.sh +0 -60
  1293. package/scripts/ai-video/lib/adapter-common.sh +0 -116
  1294. package/scripts/ai-video/lib/adapter-contract.md +0 -163
  1295. package/scripts/ai-video/lib/fixtures/gemini-veo/result.json +0 -1
  1296. package/scripts/ai-video/lib/fixtures/higgsfield/result.json +0 -1
  1297. package/scripts/ai-video/lib/fixtures/kling/result.json +0 -1
  1298. package/scripts/ai-video/lib/fixtures/openai-images/result.json +0 -1
  1299. package/scripts/ai-video/lib/fixtures/sora/result.json +0 -1
  1300. package/scripts/ai-video/lib/load-config.sh +0 -140
  1301. package/scripts/ai-video/lib/validate-deps.sh +0 -132
  1302. package/scripts/ai-video/stitch.sh +0 -154
  1303. package/scripts/ai-video/test-pipeline.sh +0 -169
  1304. package/scripts/ai_council/advisors.py +0 -148
  1305. package/scripts/ai_council/clients.py +0 -1385
  1306. package/scripts/ai_council/compile_corpus.py +0 -179
  1307. package/scripts/ai_council/events_log.py +0 -141
  1308. package/scripts/ai_council/one_off_archive/2026-05/_one_off_2a4_acceptance.py +0 -208
  1309. package/scripts/ai_council/one_off_archive/2026-05/_one_off_budget_v2_audit.py +0 -206
  1310. package/scripts/ai_council/one_off_archive/2026-05/_one_off_context_layer_v1_estimate.py +0 -67
  1311. package/scripts/ai_council/one_off_archive/2026-05/_one_off_context_layer_v1_review.py +0 -292
  1312. package/scripts/ai_council/one_off_archive/2026-05/_one_off_followups_review.py +0 -259
  1313. package/scripts/ai_council/one_off_archive/2026-05/_one_off_nondestructive_inline_audit.py +0 -209
  1314. package/scripts/ai_council/one_off_archive/2026-05/_one_off_phase4_dispatch_latency.py +0 -108
  1315. package/scripts/ai_council/one_off_archive/2026-05/_one_off_phase6_trigger_jaccard.py +0 -92
  1316. package/scripts/ai_council/one_off_archive/2026-05/_one_off_phase_2a_budget_rebalance.py +0 -257
  1317. package/scripts/ai_council/one_off_archive/2026-05/_one_off_phase_2a_post_revert.py +0 -197
  1318. package/scripts/ai_council/one_off_archive/2026-05/_one_off_rebalancing_audit.py +0 -149
  1319. package/scripts/ai_council/one_off_archive/2026-05/_one_off_roundtrip.py +0 -111
  1320. package/scripts/ai_council/one_off_archive/2026-05/_one_off_rule_hardening_v1.py +0 -251
  1321. package/scripts/ai_council/one_off_archive/2026-05/_one_off_silent_taskfiles.py +0 -98
  1322. package/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_open_questions.py +0 -232
  1323. package/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_optimization.py +0 -144
  1324. package/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_v3_gaps.py +0 -252
  1325. package/scripts/ai_council/one_off_archive/2026-05/_one_off_structural_v3_review.py +0 -240
  1326. package/scripts/ai_council/one_off_archive/2026-05/_one_off_tier_retrofit.py +0 -180
  1327. package/scripts/ai_council/pricing.py +0 -215
  1328. package/scripts/ai_council/session.py +0 -366
  1329. package/scripts/annotate_discovery.py +0 -149
  1330. package/scripts/apply_modules_config.py +0 -290
  1331. package/scripts/audit_adr_coverage.py +0 -175
  1332. package/scripts/audit_auto_rules.py +0 -175
  1333. package/scripts/audit_cloud_compatibility.py +0 -362
  1334. package/scripts/audit_command_surface.py +0 -374
  1335. package/scripts/audit_initial_context.py +0 -234
  1336. package/scripts/audit_likelihood.py +0 -148
  1337. package/scripts/audit_mcp_tools.py +0 -146
  1338. package/scripts/audit_overlap.py +0 -145
  1339. package/scripts/audit_user_type_axis.py +0 -140
  1340. package/scripts/backfill_model_tier.py +0 -182
  1341. package/scripts/bench_ab_cache_dispatch.py +0 -68
  1342. package/scripts/bench_ab_clone.py +0 -170
  1343. package/scripts/bench_ab_diff.py +0 -220
  1344. package/scripts/bench_ab_integrity.py +0 -143
  1345. package/scripts/bench_ab_run.py +0 -235
  1346. package/scripts/bench_ab_task_runner.py +0 -369
  1347. package/scripts/bench_ab_tracka_run.py +0 -202
  1348. package/scripts/bench_baseline_ready.py +0 -108
  1349. package/scripts/bench_condense_memory.py +0 -168
  1350. package/scripts/bench_drift_check.py +0 -151
  1351. package/scripts/bench_per_tool.py +0 -216
  1352. package/scripts/bench_rtk_savings.py +0 -320
  1353. package/scripts/bench_run.py +0 -272
  1354. package/scripts/bench_runner.py +0 -158
  1355. package/scripts/build_cloud_bundle.py +0 -458
  1356. package/scripts/build_discovery_manifest.py +0 -679
  1357. package/scripts/build_linear_digest.py +0 -260
  1358. package/scripts/build_mcp_registry_manifest.py +0 -181
  1359. package/scripts/build_rule_trigger_matrix.py +0 -350
  1360. package/scripts/capture_showcase_session.py +0 -361
  1361. package/scripts/check_always_budget.py +0 -532
  1362. package/scripts/check_artefact_checksums.py +0 -111
  1363. package/scripts/check_augment_description_cap.py +0 -79
  1364. package/scripts/check_augmentignore.py +0 -72
  1365. package/scripts/check_beta_review_markers.py +0 -127
  1366. package/scripts/check_cluster_patterns.py +0 -175
  1367. package/scripts/check_command_count_messaging.py +0 -158
  1368. package/scripts/check_condensation.py +0 -375
  1369. package/scripts/check_condensed_paths.py +0 -221
  1370. package/scripts/check_context_paths.py +0 -202
  1371. package/scripts/check_council_references.py +0 -228
  1372. package/scripts/check_discovery_determinism.py +0 -70
  1373. package/scripts/check_gate_paths.py +0 -117
  1374. package/scripts/check_module_management_neutral.py +0 -149
  1375. package/scripts/check_no_roadmap_refs.py +0 -155
  1376. package/scripts/check_one_off_location.py +0 -81
  1377. package/scripts/check_overlay_cascade_subdirs.py +0 -129
  1378. package/scripts/check_portability.py +0 -574
  1379. package/scripts/check_public_catalog_links.py +0 -125
  1380. package/scripts/check_public_links.py +0 -185
  1381. package/scripts/check_references.py +0 -541
  1382. package/scripts/check_release_includes_discovery.py +0 -61
  1383. package/scripts/check_release_pr_shape.py +0 -119
  1384. package/scripts/check_release_published.py +0 -145
  1385. package/scripts/check_reply_consistency.py +0 -169
  1386. package/scripts/check_roadmap_trackable.py +0 -114
  1387. package/scripts/check_role_doc_links.py +0 -110
  1388. package/scripts/check_safety_floor_untouched.py +0 -125
  1389. package/scripts/check_skill_requires.py +0 -143
  1390. package/scripts/check_template_pin_drift.py +0 -129
  1391. package/scripts/check_test_coverage_diff.py +0 -180
  1392. package/scripts/check_token_optimizer_freshness.py +0 -146
  1393. package/scripts/check_update_banner.py +0 -86
  1394. package/scripts/ci_time_ratio.py +0 -168
  1395. package/scripts/compile_router.py +0 -232
  1396. package/scripts/condense.py +0 -1649
  1397. package/scripts/condense_memory.py +0 -178
  1398. package/scripts/config/profiles.py +0 -188
  1399. package/scripts/config/session_profiles.py +0 -492
  1400. package/scripts/cost_by_conversation.py +0 -78
  1401. package/scripts/cost_summary.py +0 -97
  1402. package/scripts/council_cli.py +0 -2544
  1403. package/scripts/cross_repo_retrieve.py +0 -172
  1404. package/scripts/discovery_stats.py +0 -70
  1405. package/scripts/extract_audit_patterns.py +0 -202
  1406. package/scripts/first_run_gate_hook.py +0 -178
  1407. package/scripts/gen_discovery_baseline.py +0 -127
  1408. package/scripts/generate_catalog.py +0 -116
  1409. package/scripts/generate_index.py +0 -302
  1410. package/scripts/generate_ownership_matrix.py +0 -378
  1411. package/scripts/generate_pack_manifests.py +0 -183
  1412. package/scripts/hook_manifest.yaml +0 -243
  1413. package/scripts/hooks/dispatch_hook.py +0 -461
  1414. package/scripts/hooks/replay_hook.py +0 -144
  1415. package/scripts/hooks_doctor.py +0 -223
  1416. package/scripts/hooks_status.py +0 -157
  1417. package/scripts/install +0 -424
  1418. package/scripts/install-hooks.sh +0 -185
  1419. package/scripts/install.py +0 -5027
  1420. package/scripts/install.sh +0 -1140
  1421. package/scripts/inventory_abstraction_budget.py +0 -621
  1422. package/scripts/inventory_frontmatter.py +0 -164
  1423. package/scripts/inventory_meta_layers.py +0 -288
  1424. package/scripts/iron_law_sha.py +0 -107
  1425. package/scripts/linked_projects_list.py +0 -91
  1426. package/scripts/lint_agents_layout.py +0 -191
  1427. package/scripts/lint_agents_md.py +0 -208
  1428. package/scripts/lint_archived_skills.py +0 -159
  1429. package/scripts/lint_artefact_frontmatter.py +0 -180
  1430. package/scripts/lint_bench_ab.py +0 -172
  1431. package/scripts/lint_bench_corpus.py +0 -255
  1432. package/scripts/lint_command_tiers.py +0 -128
  1433. package/scripts/lint_commit_subjects.py +0 -139
  1434. package/scripts/lint_context_spine_usage.py +0 -137
  1435. package/scripts/lint_discovery_manifest.py +0 -136
  1436. package/scripts/lint_discovery_vocabulary.py +0 -156
  1437. package/scripts/lint_examples.py +0 -102
  1438. package/scripts/lint_explain_trace.py +0 -80
  1439. package/scripts/lint_featured_skills.py +0 -139
  1440. package/scripts/lint_framework_leakage.py +0 -375
  1441. package/scripts/lint_framework_leakage_allowlist.json +0 -575
  1442. package/scripts/lint_frontmatter_boilerplate.py +0 -77
  1443. package/scripts/lint_ghostwriter_source.py +0 -240
  1444. package/scripts/lint_handoffs.py +0 -217
  1445. package/scripts/lint_hook_concern_budget.py +0 -207
  1446. package/scripts/lint_hook_manifest.py +0 -217
  1447. package/scripts/lint_load_context.py +0 -196
  1448. package/scripts/lint_marketplace.py +0 -180
  1449. package/scripts/lint_marketplace_install_completeness.py +0 -188
  1450. package/scripts/lint_mcp_registry_manifest.py +0 -69
  1451. package/scripts/lint_media_policy_linkage.py +0 -140
  1452. package/scripts/lint_model_tier_coverage.py +0 -73
  1453. package/scripts/lint_namespace.py +0 -135
  1454. package/scripts/lint_no_new_atomic_commands.py +0 -180
  1455. package/scripts/lint_one_off_age.py +0 -184
  1456. package/scripts/lint_orchestration_dsl.py +0 -217
  1457. package/scripts/lint_pack_boundaries.py +0 -147
  1458. package/scripts/lint_pack_first_win.py +0 -103
  1459. package/scripts/lint_persona_governance.py +0 -164
  1460. package/scripts/lint_positioning.py +0 -143
  1461. package/scripts/lint_regression.py +0 -232
  1462. package/scripts/lint_roadmap_ci_steps.py +0 -186
  1463. package/scripts/lint_roadmap_complexity.py +0 -220
  1464. package/scripts/lint_role_experiences.py +0 -237
  1465. package/scripts/lint_rule_interactions.py +0 -170
  1466. package/scripts/lint_rule_tiers.py +0 -90
  1467. package/scripts/lint_showcase_sessions.py +0 -148
  1468. package/scripts/lint_skill_tools.py +0 -168
  1469. package/scripts/lint_topics_yaml.py +0 -89
  1470. package/scripts/lint_trust_coherence.py +0 -212
  1471. package/scripts/lint_value_dashboard.py +0 -218
  1472. package/scripts/mcp_parity_smoke.py +0 -164
  1473. package/scripts/mcp_registry_submit.sh +0 -187
  1474. package/scripts/mcp_server/__init__.py +0 -19
  1475. package/scripts/mcp_server/consumer_tool_catalog.json +0 -275
  1476. package/scripts/mcp_server/prompts.py +0 -441
  1477. package/scripts/mcp_server/resources.py +0 -201
  1478. package/scripts/mcp_server/tools.py +0 -838
  1479. package/scripts/measure_augment_budget.py +0 -214
  1480. package/scripts/measure_density.py +0 -232
  1481. package/scripts/measure_frugality_savings.py +0 -164
  1482. package/scripts/measure_markitdown_lift.py +0 -127
  1483. package/scripts/measure_patterns.py +0 -376
  1484. package/scripts/measure_projection_bytes.py +0 -159
  1485. package/scripts/measure_rule_budget.py +0 -347
  1486. package/scripts/measure_skill_reduction.py +0 -102
  1487. package/scripts/migrate_command_suggestions.py +0 -151
  1488. package/scripts/migrate_frontmatter_defaults.py +0 -245
  1489. package/scripts/mine_session.py +0 -279
  1490. package/scripts/move_artefact.py +0 -143
  1491. package/scripts/new_skill.py +0 -148
  1492. package/scripts/pack_mcp_content.py +0 -288
  1493. package/scripts/plan_physical_move.py +0 -353
  1494. package/scripts/print_required_checks.py +0 -196
  1495. package/scripts/probe_projection_fidelity.py +0 -202
  1496. package/scripts/profile_staleness_hook.py +0 -69
  1497. package/scripts/profile_use.py +0 -125
  1498. package/scripts/project_thin_rules.py +0 -168
  1499. package/scripts/prototype_lint_contradictions.py +0 -150
  1500. package/scripts/recruit_preflight.sh +0 -152
  1501. package/scripts/refine_ticket_detect.py +0 -646
  1502. package/scripts/release.py +0 -1049
  1503. package/scripts/render_benchmark_md.py +0 -312
  1504. package/scripts/render_value_md.py +0 -347
  1505. package/scripts/repro/repro_marketplace_install_gap.sh +0 -161
  1506. package/scripts/roadmap_progress_hook.py +0 -274
  1507. package/scripts/router_telemetry.py +0 -470
  1508. package/scripts/run_skill_evals.py +0 -185
  1509. package/scripts/runtime_registry.py +0 -166
  1510. package/scripts/schemas/command.schema.json +0 -178
  1511. package/scripts/schemas/rule.schema.json +0 -145
  1512. package/scripts/score_skill_selection.py +0 -198
  1513. package/scripts/skill_collision_clusters.py +0 -162
  1514. package/scripts/skill_discovery.py +0 -254
  1515. package/scripts/skill_linter.py +0 -3686
  1516. package/scripts/skill_overlap.py +0 -204
  1517. package/scripts/skill_preview.py +0 -179
  1518. package/scripts/skill_tools/audit_persona_coverage.py +0 -147
  1519. package/scripts/skill_tools/audit_user_type_coverage.py +0 -148
  1520. package/scripts/skill_tools/run_block_d_eval.py +0 -129
  1521. package/scripts/skill_tools/score_skill_relevance.py +0 -169
  1522. package/scripts/skill_tools/suggest_skill_for_task.py +0 -113
  1523. package/scripts/skill_trigger_eval.py +0 -682
  1524. package/scripts/skill_usage_collect.py +0 -191
  1525. package/scripts/skill_usage_report.py +0 -162
  1526. package/scripts/smoke/kernel.sh +0 -107
  1527. package/scripts/smoke/router.sh +0 -148
  1528. package/scripts/smoke/schema.sh +0 -71
  1529. package/scripts/smoke/skills.sh +0 -112
  1530. package/scripts/smoke_path_resolution.py +0 -93
  1531. package/scripts/smoke_quickstart.py +0 -144
  1532. package/scripts/snapshot_agent_outputs.py +0 -144
  1533. package/scripts/spotcheck_thin_root.py +0 -134
  1534. package/scripts/sync_agent_settings.py +0 -180
  1535. package/scripts/sync_github_metadata.py +0 -147
  1536. package/scripts/sync_gitignore.py +0 -291
  1537. package/scripts/telegraph_stats.py +0 -119
  1538. package/scripts/trigger_coverage.py +0 -129
  1539. package/scripts/update_counts.py +0 -195
  1540. package/scripts/update_prices.py +0 -125
  1541. package/scripts/validate_agent_settings.py +0 -124
  1542. package/scripts/validate_decision_engine.py +0 -136
  1543. package/scripts/validate_discovery_manifest.py +0 -94
  1544. package/scripts/validate_frontmatter.py +0 -571
  1545. package/scripts/verify_physical_move.py +0 -185
  1546. package/scripts/wrapper_freshness_hook.py +0 -86
  1547. /package/{.agent-src → dist/agent-src}/contexts/augment-infrastructure.md +0 -0
  1548. /package/{.agent-src → dist/agent-src}/contexts/authority/destructive-mechanics.md +0 -0
  1549. /package/{.agent-src → dist/agent-src}/contexts/authority/kernel-rule-edits.md +0 -0
  1550. /package/{.agent-src → dist/agent-src}/contexts/authority/scope-mechanics.md +0 -0
  1551. /package/{.agent-src → dist/agent-src}/contexts/communication/rules-auto/guidelines-mechanics.md +0 -0
  1552. /package/{.agent-src → dist/agent-src}/contexts/communication/rules-auto/skill-quality-mechanics.md +0 -0
  1553. /package/{.agent-src → dist/agent-src}/contexts/communication/rules-auto/slash-command-routing-policy-mechanics.md +0 -0
  1554. /package/{.agent-src → dist/agent-src}/contexts/communication/rules-auto/think-before-action-mechanics.md +0 -0
  1555. /package/{.agent-src → dist/agent-src}/contexts/communication/rules-auto/token-efficiency-mechanics.md +0 -0
  1556. /package/{.agent-src → dist/agent-src}/contexts/communication/rules-auto/user-interaction-mechanics.md +0 -0
  1557. /package/{.agent-src → dist/agent-src}/contexts/contracts/agents-md-anatomy.md +0 -0
  1558. /package/{.agent-src → dist/agent-src}/contexts/contracts/command-suggestion-flow.md +0 -0
  1559. /package/{.agent-src → dist/agent-src}/contexts/contracts/frugality-charter.md +0 -0
  1560. /package/{.agent-src → dist/agent-src}/contexts/contracts/research-schema.md +0 -0
  1561. /package/{.agent-src → dist/agent-src}/contexts/documentation-hierarchy.md +0 -0
  1562. /package/{.agent-src → dist/agent-src}/contexts/execution/autonomy-detection.md +0 -0
  1563. /package/{.agent-src → dist/agent-src}/contexts/execution/autonomy-examples.md +0 -0
  1564. /package/{.agent-src → dist/agent-src}/contexts/execution/autonomy-mechanics.md +0 -0
  1565. /package/{.agent-src → dist/agent-src}/contexts/execution/cheap-question-mechanics.md +0 -0
  1566. /package/{.agent-src → dist/agent-src}/contexts/execution/interrupt-examples.md +0 -0
  1567. /package/{.agent-src → dist/agent-src}/contexts/execution/roadmap-process-loop.md +0 -0
  1568. /package/{.agent-src → dist/agent-src}/contexts/execution/verification-mechanics.md +0 -0
  1569. /package/{.agent-src → dist/agent-src}/contexts/judges/no-consolidate-rationale.md +0 -0
  1570. /package/{.agent-src → dist/agent-src}/contexts/judges/persona-voice-rubric.md +0 -0
  1571. /package/{.agent-src → dist/agent-src}/contexts/model-recommendations.md +0 -0
  1572. /package/{.agent-src → dist/agent-src}/contexts/override-system.md +0 -0
  1573. /package/{.agent-src → dist/agent-src}/contexts/skills-and-commands.md +0 -0
  1574. /package/{.agent-src → dist/agent-src}/contexts/subagent-configuration.md +0 -0
  1575. /package/{.agent-src → dist/agent-src}/ghostwriter/README.md +0 -0
  1576. /package/{.agent-src → dist/agent-src}/ghostwriter/fictional-fixture-v1.md +0 -0
  1577. /package/{.agent-src → dist/agent-src}/packs/README.md +0 -0
  1578. /package/{.agent-src → dist/agent-src}/packs/agency-delivery.yml +0 -0
  1579. /package/{.agent-src → dist/agent-src}/packs/content-engine.yml +0 -0
  1580. /package/{.agent-src → dist/agent-src}/packs/founder-mvp.yml +0 -0
  1581. /package/{.agent-src → dist/agent-src}/personas/_template-specialist/persona.md +0 -0
  1582. /package/{.agent-src → dist/agent-src}/personas/advisors/contrarian.md +0 -0
  1583. /package/{.agent-src → dist/agent-src}/personas/advisors/executor.md +0 -0
  1584. /package/{.agent-src → dist/agent-src}/personas/advisors/expansionist.md +0 -0
  1585. /package/{.agent-src → dist/agent-src}/personas/advisors/first-principles.md +0 -0
  1586. /package/{.agent-src → dist/agent-src}/personas/advisors/outsider.md +0 -0
  1587. /package/{.agent-src → dist/agent-src}/personas/ai-agent.md +0 -0
  1588. /package/{.agent-src → dist/agent-src}/personas/ai-video-technical-director.md +0 -0
  1589. /package/{.agent-src → dist/agent-src}/personas/backend-architect.md +0 -0
  1590. /package/{.agent-src → dist/agent-src}/personas/cmo.md +0 -0
  1591. /package/{.agent-src → dist/agent-src}/personas/critical-challenger.md +0 -0
  1592. /package/{.agent-src → dist/agent-src}/personas/customer-success-lead.md +0 -0
  1593. /package/{.agent-src → dist/agent-src}/personas/developer.md +0 -0
  1594. /package/{.agent-src → dist/agent-src}/personas/discovery-lead.md +0 -0
  1595. /package/{.agent-src → dist/agent-src}/personas/eloquent-tamer.md +0 -0
  1596. /package/{.agent-src → dist/agent-src}/personas/engineering-manager.md +0 -0
  1597. /package/{.agent-src → dist/agent-src}/personas/finance-partner.md +0 -0
  1598. /package/{.agent-src → dist/agent-src}/personas/frontend-engineer.md +0 -0
  1599. /package/{.agent-src → dist/agent-src}/personas/growth-pm.md +0 -0
  1600. /package/{.agent-src → dist/agent-src}/personas/hollywood-director.md +0 -0
  1601. /package/{.agent-src → dist/agent-src}/personas/people-strategist.md +0 -0
  1602. /package/{.agent-src → dist/agent-src}/personas/product-owner.md +0 -0
  1603. /package/{.agent-src → dist/agent-src}/personas/qa.md +0 -0
  1604. /package/{.agent-src → dist/agent-src}/personas/revops-maintainer.md +0 -0
  1605. /package/{.agent-src → dist/agent-src}/personas/revops.md +0 -0
  1606. /package/{.agent-src → dist/agent-src}/personas/security-engineer.md +0 -0
  1607. /package/{.agent-src → dist/agent-src}/personas/senior-engineer.md +0 -0
  1608. /package/{.agent-src → dist/agent-src}/personas/stakeholder.md +0 -0
  1609. /package/{.agent-src → dist/agent-src}/personas/strategist.md +0 -0
  1610. /package/{.agent-src → dist/agent-src}/personas/tech-writer.md +0 -0
  1611. /package/{.agent-src → dist/agent-src}/presets/README.md +0 -0
  1612. /package/{.agent-src → dist/agent-src}/presets/balanced.yml +0 -0
  1613. /package/{.agent-src → dist/agent-src}/presets/fast.yml +0 -0
  1614. /package/{.agent-src → dist/agent-src}/presets/strict.yml +0 -0
  1615. /package/{.agent-src → dist/agent-src}/profiles/README.md +0 -0
  1616. /package/{.agent-src → dist/agent-src}/rules/agent-authority.md +0 -0
  1617. /package/{.agent-src → dist/agent-src}/rules/analysis-skill-routing.md +0 -0
  1618. /package/{.agent-src → dist/agent-src}/rules/architecture.md +0 -0
  1619. /package/{.agent-src → dist/agent-src}/rules/artifact-drafting-protocol.md +0 -0
  1620. /package/{.agent-src → dist/agent-src}/rules/artifact-engagement-recording.md +0 -0
  1621. /package/{.agent-src → dist/agent-src}/rules/autonomous-execution.md +0 -0
  1622. /package/{.agent-src → dist/agent-src}/rules/cli-output-handling.md +0 -0
  1623. /package/{.agent-src → dist/agent-src}/rules/command-suggestion-policy.md +0 -0
  1624. /package/{.agent-src → dist/agent-src}/rules/commit-conventions.md +0 -0
  1625. /package/{.agent-src → dist/agent-src}/rules/context-hygiene.md +0 -0
  1626. /package/{.agent-src → dist/agent-src}/rules/copilot-routing.md +0 -0
  1627. /package/{.agent-src → dist/agent-src}/rules/devcontainer-routing.md +0 -0
  1628. /package/{.agent-src → dist/agent-src}/rules/docker-commands.md +0 -0
  1629. /package/{.agent-src → dist/agent-src}/rules/domain-safety-disclaimer.md +0 -0
  1630. /package/{.agent-src → dist/agent-src}/rules/domain-safety-pii.md +0 -0
  1631. /package/{.agent-src → dist/agent-src}/rules/domain-safety-retention.md +0 -0
  1632. /package/{.agent-src → dist/agent-src}/rules/downstream-changes.md +0 -0
  1633. /package/{.agent-src → dist/agent-src}/rules/engineering-safety-floor.md +0 -0
  1634. /package/{.agent-src → dist/agent-src}/rules/external-reference-deep-dive.md +0 -0
  1635. /package/{.agent-src → dist/agent-src}/rules/fast-path-marker-visibility.md +0 -0
  1636. /package/{.agent-src → dist/agent-src}/rules/finance-safety-floor.md +0 -0
  1637. /package/{.agent-src → dist/agent-src}/rules/framework-neutrality-in-generic-skills.md +0 -0
  1638. /package/{.agent-src → dist/agent-src}/rules/git-history-discipline.md +0 -0
  1639. /package/{.agent-src → dist/agent-src}/rules/guidelines.md +0 -0
  1640. /package/{.agent-src → dist/agent-src}/rules/improve-before-implement.md +0 -0
  1641. /package/{.agent-src → dist/agent-src}/rules/invite-challenge.md +0 -0
  1642. /package/{.agent-src → dist/agent-src}/rules/laravel-routing.md +0 -0
  1643. /package/{.agent-src → dist/agent-src}/rules/laravel-translations.md +0 -0
  1644. /package/{.agent-src → dist/agent-src}/rules/low-impact-corpus-privacy-floor.md +0 -0
  1645. /package/{.agent-src → dist/agent-src}/rules/markdown-safe-codeblocks.md +0 -0
  1646. /package/{.agent-src → dist/agent-src}/rules/media-sync-ground-truth.md +0 -0
  1647. /package/{.agent-src → dist/agent-src}/rules/minimal-safe-diff.md +0 -0
  1648. /package/{.agent-src → dist/agent-src}/rules/no-decorative-emojis-in-git-surfaces.md +0 -0
  1649. /package/{.agent-src → dist/agent-src}/rules/onboarding-gate.md +0 -0
  1650. /package/{.agent-src → dist/agent-src}/rules/package-ci-checks.md +0 -0
  1651. /package/{.agent-src → dist/agent-src}/rules/php-coding.md +0 -0
  1652. /package/{.agent-src → dist/agent-src}/rules/reviewer-awareness.md +0 -0
  1653. /package/{.agent-src → dist/agent-src}/rules/roadmap-ci-steps-policy.md +0 -0
  1654. /package/{.agent-src → dist/agent-src}/rules/role-mode-adherence.md +0 -0
  1655. /package/{.agent-src → dist/agent-src}/rules/rule-type-governance.md +0 -0
  1656. /package/{.agent-src → dist/agent-src}/rules/runtime-safety.md +0 -0
  1657. /package/{.agent-src → dist/agent-src}/rules/security-sensitive-stop.md +0 -0
  1658. /package/{.agent-src → dist/agent-src}/rules/size-enforcement.md +0 -0
  1659. /package/{.agent-src → dist/agent-src}/rules/skill-improvement-trigger.md +0 -0
  1660. /package/{.agent-src → dist/agent-src}/rules/skill-quality.md +0 -0
  1661. /package/{.agent-src → dist/agent-src}/rules/slash-command-routing-policy.md +0 -0
  1662. /package/{.agent-src → dist/agent-src}/rules/strategy-safety-floor.md +0 -0
  1663. /package/{.agent-src → dist/agent-src}/rules/symfony-routing.md +0 -0
  1664. /package/{.agent-src → dist/agent-src}/rules/telegraph-speak.md +0 -0
  1665. /package/{.agent-src → dist/agent-src}/rules/think-before-action.md +0 -0
  1666. /package/{.agent-src → dist/agent-src}/rules/token-efficiency.md +0 -0
  1667. /package/{.agent-src → dist/agent-src}/rules/token-optimizer-maintenance.md +0 -0
  1668. /package/{.agent-src → dist/agent-src}/rules/tool-safety.md +0 -0
  1669. /package/{.agent-src → dist/agent-src}/rules/ui-audit-gate.md +0 -0
  1670. /package/{.agent-src → dist/agent-src}/rules/upstream-proposal.md +0 -0
  1671. /package/{.agent-src → dist/agent-src}/rules/user-interaction.md +0 -0
  1672. /package/{.agent-src → dist/agent-src}/scripts/scan-seeder-violations.php +0 -0
  1673. /package/{.agent-src → dist/agent-src}/skills/activation-design/SKILL.md +0 -0
  1674. /package/{.agent-src → dist/agent-src}/skills/adr-create/SKILL.md +0 -0
  1675. /package/{.agent-src → dist/agent-src}/skills/adversarial-review/SKILL.md +0 -0
  1676. /package/{.agent-src → dist/agent-src}/skills/agent-docs-writing/SKILL.md +0 -0
  1677. /package/{.agent-src → dist/agent-src}/skills/ai-council/SKILL.md +0 -0
  1678. /package/{.agent-src → dist/agent-src}/skills/analysis-autonomous-mode/SKILL.md +0 -0
  1679. /package/{.agent-src → dist/agent-src}/skills/analysis-skill-router/SKILL.md +0 -0
  1680. /package/{.agent-src → dist/agent-src}/skills/api-testing/SKILL.md +0 -0
  1681. /package/{.agent-src → dist/agent-src}/skills/architecture-review-lens/SKILL.md +0 -0
  1682. /package/{.agent-src → dist/agent-src}/skills/artisan-commands/SKILL.md +0 -0
  1683. /package/{.agent-src → dist/agent-src}/skills/async-python-patterns/SKILL.md +0 -0
  1684. /package/{.agent-src → dist/agent-src}/skills/aws-infrastructure/SKILL.md +0 -0
  1685. /package/{.agent-src → dist/agent-src}/skills/blast-radius-analyzer/SKILL.md +0 -0
  1686. /package/{.agent-src → dist/agent-src}/skills/bug-analyzer/SKILL.md +0 -0
  1687. /package/{.agent-src → dist/agent-src}/skills/build-buy-partner/SKILL.md +0 -0
  1688. /package/{.agent-src → dist/agent-src}/skills/canvas-design/SKILL.md +0 -0
  1689. /package/{.agent-src → dist/agent-src}/skills/canvas-design/evals/triggers.json +0 -0
  1690. /package/{.agent-src → dist/agent-src}/skills/churn-prevention/SKILL.md +0 -0
  1691. /package/{.agent-src → dist/agent-src}/skills/code-refactoring/SKILL.md +0 -0
  1692. /package/{.agent-src → dist/agent-src}/skills/command-routing/SKILL.md +0 -0
  1693. /package/{.agent-src → dist/agent-src}/skills/comp-banding/SKILL.md +0 -0
  1694. /package/{.agent-src → dist/agent-src}/skills/competitive-moat-analysis/SKILL.md +0 -0
  1695. /package/{.agent-src → dist/agent-src}/skills/competitive-positioning/SKILL.md +0 -0
  1696. /package/{.agent-src → dist/agent-src}/skills/composer-packages/SKILL.md +0 -0
  1697. /package/{.agent-src → dist/agent-src}/skills/content-funnel-design/SKILL.md +0 -0
  1698. /package/{.agent-src → dist/agent-src}/skills/context-authoring/SKILL.md +0 -0
  1699. /package/{.agent-src → dist/agent-src}/skills/contracts-cognition/SKILL.md +0 -0
  1700. /package/{.agent-src → dist/agent-src}/skills/conventional-commits-writing/SKILL.md +0 -0
  1701. /package/{.agent-src → dist/agent-src}/skills/copilot-agents-optimization/SKILL.md +0 -0
  1702. /package/{.agent-src → dist/agent-src}/skills/copilot-config/SKILL.md +0 -0
  1703. /package/{.agent-src → dist/agent-src}/skills/customer-research/SKILL.md +0 -0
  1704. /package/{.agent-src → dist/agent-src}/skills/data-flow-mapper/SKILL.md +0 -0
  1705. /package/{.agent-src → dist/agent-src}/skills/data-handling-judgment/SKILL.md +0 -0
  1706. /package/{.agent-src → dist/agent-src}/skills/dcf-modeling/SKILL.md +0 -0
  1707. /package/{.agent-src → dist/agent-src}/skills/deal-qualification-meddic/SKILL.md +0 -0
  1708. /package/{.agent-src → dist/agent-src}/skills/decision-record/SKILL.md +0 -0
  1709. /package/{.agent-src → dist/agent-src}/skills/defense-in-depth/SKILL.md +0 -0
  1710. /package/{.agent-src → dist/agent-src}/skills/dependency-upgrade/SKILL.md +0 -0
  1711. /package/{.agent-src → dist/agent-src}/skills/description-assist/SKILL.md +0 -0
  1712. /package/{.agent-src → dist/agent-src}/skills/devcontainer/SKILL.md +0 -0
  1713. /package/{.agent-src → dist/agent-src}/skills/developer-like-execution/SKILL.md +0 -0
  1714. /package/{.agent-src → dist/agent-src}/skills/discovery-interview/SKILL.md +0 -0
  1715. /package/{.agent-src → dist/agent-src}/skills/doc-coauthoring/SKILL.md +0 -0
  1716. /package/{.agent-src → dist/agent-src}/skills/doc-coauthoring/evals/triggers.json +0 -0
  1717. /package/{.agent-src → dist/agent-src}/skills/docker/SKILL.md +0 -0
  1718. /package/{.agent-src → dist/agent-src}/skills/editorial-calendar/SKILL.md +0 -0
  1719. /package/{.agent-src → dist/agent-src}/skills/eloquent/SKILL.md +0 -0
  1720. /package/{.agent-src → dist/agent-src}/skills/eloquent/evals/triggers.json +0 -0
  1721. /package/{.agent-src → dist/agent-src}/skills/error-handling-patterns/SKILL.md +0 -0
  1722. /package/{.agent-src → dist/agent-src}/skills/estimate-ticket/SKILL.md +0 -0
  1723. /package/{.agent-src → dist/agent-src}/skills/estimate-ticket/evals/output-schema.yml +0 -0
  1724. /package/{.agent-src → dist/agent-src}/skills/estimate-ticket/evals/triggers.json +0 -0
  1725. /package/{.agent-src → dist/agent-src}/skills/expansion-playbook/SKILL.md +0 -0
  1726. /package/{.agent-src → dist/agent-src}/skills/file-editor/SKILL.md +0 -0
  1727. /package/{.agent-src → dist/agent-src}/skills/finishing-a-development-branch/SKILL.md +0 -0
  1728. /package/{.agent-src → dist/agent-src}/skills/forecast-accuracy/SKILL.md +0 -0
  1729. /package/{.agent-src → dist/agent-src}/skills/forecasting/SKILL.md +0 -0
  1730. /package/{.agent-src → dist/agent-src}/skills/form-handler/SKILL.md +0 -0
  1731. /package/{.agent-src → dist/agent-src}/skills/fundraising-narrative/SKILL.md +0 -0
  1732. /package/{.agent-src → dist/agent-src}/skills/funnel-analysis/SKILL.md +0 -0
  1733. /package/{.agent-src → dist/agent-src}/skills/git-workflow/SKILL.md +0 -0
  1734. /package/{.agent-src → dist/agent-src}/skills/github-ci/SKILL.md +0 -0
  1735. /package/{.agent-src → dist/agent-src}/skills/grafana/SKILL.md +0 -0
  1736. /package/{.agent-src → dist/agent-src}/skills/gtm-launch/SKILL.md +0 -0
  1737. /package/{.agent-src → dist/agent-src}/skills/guideline-writing/SKILL.md +0 -0
  1738. /package/{.agent-src → dist/agent-src}/skills/hiring-loop-design/SKILL.md +0 -0
  1739. /package/{.agent-src → dist/agent-src}/skills/image-analyser/SKILL.md +0 -0
  1740. /package/{.agent-src → dist/agent-src}/skills/image-analyser/canon-spec.md +0 -0
  1741. /package/{.agent-src → dist/agent-src}/skills/image-analyser/evals/triggers.json +0 -0
  1742. /package/{.agent-src → dist/agent-src}/skills/image-creator/SKILL.md +0 -0
  1743. /package/{.agent-src → dist/agent-src}/skills/image-creator/evals/triggers.json +0 -0
  1744. /package/{.agent-src → dist/agent-src}/skills/incident-commander/SKILL.md +0 -0
  1745. /package/{.agent-src → dist/agent-src}/skills/jobs-events/SKILL.md +0 -0
  1746. /package/{.agent-src → dist/agent-src}/skills/judge-bug-hunter/SKILL.md +0 -0
  1747. /package/{.agent-src → dist/agent-src}/skills/judge-code-quality/SKILL.md +0 -0
  1748. /package/{.agent-src → dist/agent-src}/skills/judge-security-auditor/SKILL.md +0 -0
  1749. /package/{.agent-src → dist/agent-src}/skills/judge-test-coverage/SKILL.md +0 -0
  1750. /package/{.agent-src → dist/agent-src}/skills/laravel/SKILL.md +0 -0
  1751. /package/{.agent-src → dist/agent-src}/skills/laravel-api-endpoint/SKILL.md +0 -0
  1752. /package/{.agent-src → dist/agent-src}/skills/laravel-dto/SKILL.md +0 -0
  1753. /package/{.agent-src → dist/agent-src}/skills/laravel-horizon/SKILL.md +0 -0
  1754. /package/{.agent-src → dist/agent-src}/skills/laravel-mail/SKILL.md +0 -0
  1755. /package/{.agent-src → dist/agent-src}/skills/laravel-middleware/SKILL.md +0 -0
  1756. /package/{.agent-src → dist/agent-src}/skills/laravel-migration/SKILL.md +0 -0
  1757. /package/{.agent-src → dist/agent-src}/skills/laravel-notifications/SKILL.md +0 -0
  1758. /package/{.agent-src → dist/agent-src}/skills/laravel-pennant/SKILL.md +0 -0
  1759. /package/{.agent-src → dist/agent-src}/skills/laravel-pulse/SKILL.md +0 -0
  1760. /package/{.agent-src → dist/agent-src}/skills/laravel-reverb/SKILL.md +0 -0
  1761. /package/{.agent-src → dist/agent-src}/skills/laravel-scheduling/SKILL.md +0 -0
  1762. /package/{.agent-src → dist/agent-src}/skills/laravel-validation/SKILL.md +0 -0
  1763. /package/{.agent-src → dist/agent-src}/skills/laravel-websocket/SKILL.md +0 -0
  1764. /package/{.agent-src → dist/agent-src}/skills/launch-readiness/SKILL.md +0 -0
  1765. /package/{.agent-src → dist/agent-src}/skills/learning-to-rule-or-skill/SKILL.md +0 -0
  1766. /package/{.agent-src → dist/agent-src}/skills/livewire-architect/SKILL.md +0 -0
  1767. /package/{.agent-src → dist/agent-src}/skills/logging-monitoring/SKILL.md +0 -0
  1768. /package/{.agent-src → dist/agent-src}/skills/market-entry-analysis/SKILL.md +0 -0
  1769. /package/{.agent-src → dist/agent-src}/skills/markitdown/SKILL.md +0 -0
  1770. /package/{.agent-src → dist/agent-src}/skills/mcp/SKILL.md +0 -0
  1771. /package/{.agent-src → dist/agent-src}/skills/mcp-builder/SKILL.md +0 -0
  1772. /package/{.agent-src → dist/agent-src}/skills/memory-consolidation/SKILL.md +0 -0
  1773. /package/{.agent-src → dist/agent-src}/skills/messaging-architecture/SKILL.md +0 -0
  1774. /package/{.agent-src → dist/agent-src}/skills/migration-architect/SKILL.md +0 -0
  1775. /package/{.agent-src → dist/agent-src}/skills/mobile-e2e-strategy/SKILL.md +0 -0
  1776. /package/{.agent-src → dist/agent-src}/skills/module-detect-on-the-fly/SKILL.md +0 -0
  1777. /package/{.agent-src → dist/agent-src}/skills/module-management/SKILL.md +0 -0
  1778. /package/{.agent-src → dist/agent-src}/skills/multi-tenancy/SKILL.md +0 -0
  1779. /package/{.agent-src → dist/agent-src}/skills/nextjs-patterns/SKILL.md +0 -0
  1780. /package/{.agent-src → dist/agent-src}/skills/okr-tree-modeling/SKILL.md +0 -0
  1781. /package/{.agent-src → dist/agent-src}/skills/onboarding-design/SKILL.md +0 -0
  1782. /package/{.agent-src → dist/agent-src}/skills/onboarding-program/SKILL.md +0 -0
  1783. /package/{.agent-src → dist/agent-src}/skills/one-on-one-cadence/SKILL.md +0 -0
  1784. /package/{.agent-src → dist/agent-src}/skills/openapi/SKILL.md +0 -0
  1785. /package/{.agent-src → dist/agent-src}/skills/org-design/SKILL.md +0 -0
  1786. /package/{.agent-src → dist/agent-src}/skills/override-management/SKILL.md +0 -0
  1787. /package/{.agent-src → dist/agent-src}/skills/perf-feedback-craft/SKILL.md +0 -0
  1788. /package/{.agent-src → dist/agent-src}/skills/performance/SKILL.md +0 -0
  1789. /package/{.agent-src → dist/agent-src}/skills/performance-analysis/SKILL.md +0 -0
  1790. /package/{.agent-src → dist/agent-src}/skills/pest-testing/SKILL.md +0 -0
  1791. /package/{.agent-src → dist/agent-src}/skills/php-coder/SKILL.md +0 -0
  1792. /package/{.agent-src → dist/agent-src}/skills/php-coder/evals/triggers.json +0 -0
  1793. /package/{.agent-src → dist/agent-src}/skills/php-debugging/SKILL.md +0 -0
  1794. /package/{.agent-src → dist/agent-src}/skills/php-service/SKILL.md +0 -0
  1795. /package/{.agent-src → dist/agent-src}/skills/pipeline-strategy/SKILL.md +0 -0
  1796. /package/{.agent-src → dist/agent-src}/skills/pixar-storyteller/SKILL.md +0 -0
  1797. /package/{.agent-src → dist/agent-src}/skills/playwright-architect/SKILL.md +0 -0
  1798. /package/{.agent-src → dist/agent-src}/skills/playwright-testing/SKILL.md +0 -0
  1799. /package/{.agent-src → dist/agent-src}/skills/po-discovery/SKILL.md +0 -0
  1800. /package/{.agent-src → dist/agent-src}/skills/positioning-strategy/SKILL.md +0 -0
  1801. /package/{.agent-src → dist/agent-src}/skills/prediction-pool-optimizer/SKILL.md +0 -0
  1802. /package/{.agent-src → dist/agent-src}/skills/prediction-pool-optimizer/evals/triggers.json +0 -0
  1803. /package/{.agent-src → dist/agent-src}/skills/prediction-pool-optimizer/reference/ev-fixtures.md +0 -0
  1804. /package/{.agent-src → dist/agent-src}/skills/prediction-pool-optimizer/reference/odds-and-bonus.md +0 -0
  1805. /package/{.agent-src → dist/agent-src}/skills/privacy-review/SKILL.md +0 -0
  1806. /package/{.agent-src → dist/agent-src}/skills/project-analysis-core/SKILL.md +0 -0
  1807. /package/{.agent-src → dist/agent-src}/skills/project-analysis-hypothesis-driven/SKILL.md +0 -0
  1808. /package/{.agent-src → dist/agent-src}/skills/project-analysis-laravel/SKILL.md +0 -0
  1809. /package/{.agent-src → dist/agent-src}/skills/project-analysis-nextjs/SKILL.md +0 -0
  1810. /package/{.agent-src → dist/agent-src}/skills/project-analysis-node-express/SKILL.md +0 -0
  1811. /package/{.agent-src → dist/agent-src}/skills/project-analysis-react/SKILL.md +0 -0
  1812. /package/{.agent-src → dist/agent-src}/skills/project-analysis-symfony/SKILL.md +0 -0
  1813. /package/{.agent-src → dist/agent-src}/skills/project-analysis-zend-laminas/SKILL.md +0 -0
  1814. /package/{.agent-src → dist/agent-src}/skills/project-analyzer/SKILL.md +0 -0
  1815. /package/{.agent-src → dist/agent-src}/skills/project-docs/SKILL.md +0 -0
  1816. /package/{.agent-src → dist/agent-src}/skills/prompt-engineering-patterns/SKILL.md +0 -0
  1817. /package/{.agent-src → dist/agent-src}/skills/prompt-optimizer/SKILL.md +0 -0
  1818. /package/{.agent-src → dist/agent-src}/skills/quality-tools/SKILL.md +0 -0
  1819. /package/{.agent-src → dist/agent-src}/skills/react-native-setup/SKILL.md +0 -0
  1820. /package/{.agent-src → dist/agent-src}/skills/receiving-code-review/SKILL.md +0 -0
  1821. /package/{.agent-src → dist/agent-src}/skills/refine-prompt/SKILL.md +0 -0
  1822. /package/{.agent-src → dist/agent-src}/skills/refine-ticket/SKILL.md +0 -0
  1823. /package/{.agent-src → dist/agent-src}/skills/refine-ticket/detection-map.yml +0 -0
  1824. /package/{.agent-src → dist/agent-src}/skills/refine-ticket/evals/output-schema.yml +0 -0
  1825. /package/{.agent-src → dist/agent-src}/skills/refine-ticket/evals/triggers.json +0 -0
  1826. /package/{.agent-src → dist/agent-src}/skills/release-comms/SKILL.md +0 -0
  1827. /package/{.agent-src → dist/agent-src}/skills/repomix-packer/SKILL.md +0 -0
  1828. /package/{.agent-src → dist/agent-src}/skills/requesting-code-review/SKILL.md +0 -0
  1829. /package/{.agent-src → dist/agent-src}/skills/retention-loops/SKILL.md +0 -0
  1830. /package/{.agent-src → dist/agent-src}/skills/review-routing/SKILL.md +0 -0
  1831. /package/{.agent-src → dist/agent-src}/skills/rice-prioritization/SKILL.md +0 -0
  1832. /package/{.agent-src → dist/agent-src}/skills/risk-officer/SKILL.md +0 -0
  1833. /package/{.agent-src → dist/agent-src}/skills/roadmap-writing/SKILL.md +0 -0
  1834. /package/{.agent-src → dist/agent-src}/skills/rtk-output-filtering/SKILL.md +0 -0
  1835. /package/{.agent-src → dist/agent-src}/skills/runway-cognition/SKILL.md +0 -0
  1836. /package/{.agent-src → dist/agent-src}/skills/scenario-modeling/SKILL.md +0 -0
  1837. /package/{.agent-src → dist/agent-src}/skills/secrets-management/SKILL.md +0 -0
  1838. /package/{.agent-src → dist/agent-src}/skills/security/SKILL.md +0 -0
  1839. /package/{.agent-src → dist/agent-src}/skills/security-audit/SKILL.md +0 -0
  1840. /package/{.agent-src → dist/agent-src}/skills/sequential-thinking/SKILL.md +0 -0
  1841. /package/{.agent-src → dist/agent-src}/skills/skill-improvement-pipeline/SKILL.md +0 -0
  1842. /package/{.agent-src → dist/agent-src}/skills/skill-management/SKILL.md +0 -0
  1843. /package/{.agent-src → dist/agent-src}/skills/skill-reviewer/SKILL.md +0 -0
  1844. /package/{.agent-src → dist/agent-src}/skills/skill-writing/SKILL.md +0 -0
  1845. /package/{.agent-src → dist/agent-src}/skills/skill-writing/evals/triggers.json +0 -0
  1846. /package/{.agent-src → dist/agent-src}/skills/stakeholder-tradeoff/SKILL.md +0 -0
  1847. /package/{.agent-src → dist/agent-src}/skills/subagent-orchestration/SKILL.md +0 -0
  1848. /package/{.agent-src → dist/agent-src}/skills/subagent-orchestration/prompts/README.md +0 -0
  1849. /package/{.agent-src → dist/agent-src}/skills/subagent-orchestration/prompts/do-and-judge-two-stage.md +0 -0
  1850. /package/{.agent-src → dist/agent-src}/skills/subagent-orchestration/prompts/do-and-judge.md +0 -0
  1851. /package/{.agent-src → dist/agent-src}/skills/subagent-orchestration/prompts/do-competitively.md +0 -0
  1852. /package/{.agent-src → dist/agent-src}/skills/subagent-orchestration/prompts/do-in-parallel.md +0 -0
  1853. /package/{.agent-src → dist/agent-src}/skills/subagent-orchestration/prompts/do-in-steps.md +0 -0
  1854. /package/{.agent-src → dist/agent-src}/skills/subagent-orchestration/prompts/do-in-worktrees.md +0 -0
  1855. /package/{.agent-src → dist/agent-src}/skills/subagent-orchestration/prompts/judge-with-debate.md +0 -0
  1856. /package/{.agent-src → dist/agent-src}/skills/subagent-orchestration/schemas/subagent-status.json +0 -0
  1857. /package/{.agent-src → dist/agent-src}/skills/symfony-workflow/SKILL.md +0 -0
  1858. /package/{.agent-src → dist/agent-src}/skills/systematic-debugging/SKILL.md +0 -0
  1859. /package/{.agent-src → dist/agent-src}/skills/tech-debt-tracker/SKILL.md +0 -0
  1860. /package/{.agent-src → dist/agent-src}/skills/terraform/SKILL.md +0 -0
  1861. /package/{.agent-src → dist/agent-src}/skills/terragrunt/SKILL.md +0 -0
  1862. /package/{.agent-src → dist/agent-src}/skills/test-driven-development/SKILL.md +0 -0
  1863. /package/{.agent-src → dist/agent-src}/skills/test-performance/SKILL.md +0 -0
  1864. /package/{.agent-src → dist/agent-src}/skills/testing-anti-patterns/SKILL.md +0 -0
  1865. /package/{.agent-src → dist/agent-src}/skills/testing-anti-patterns/process-anti-patterns.md +0 -0
  1866. /package/{.agent-src → dist/agent-src}/skills/throughput-vs-morale-tradeoff/SKILL.md +0 -0
  1867. /package/{.agent-src → dist/agent-src}/skills/token-optimizer/SKILL.md +0 -0
  1868. /package/{.agent-src → dist/agent-src}/skills/traefik/SKILL.md +0 -0
  1869. /package/{.agent-src → dist/agent-src}/skills/ui-component-architect/SKILL.md +0 -0
  1870. /package/{.agent-src → dist/agent-src}/skills/unit-economics-modeling/SKILL.md +0 -0
  1871. /package/{.agent-src → dist/agent-src}/skills/universal-project-analysis/SKILL.md +0 -0
  1872. /package/{.agent-src → dist/agent-src}/skills/using-git-worktrees/SKILL.md +0 -0
  1873. /package/{.agent-src → dist/agent-src}/skills/validate-feature-fit/SKILL.md +0 -0
  1874. /package/{.agent-src → dist/agent-src}/skills/verify-completion-evidence/SKILL.md +0 -0
  1875. /package/{.agent-src → dist/agent-src}/skills/video-director/SKILL.md +0 -0
  1876. /package/{.agent-src → dist/agent-src}/skills/vision-articulation/SKILL.md +0 -0
  1877. /package/{.agent-src → dist/agent-src}/skills/voc-extract/SKILL.md +0 -0
  1878. /package/{.agent-src → dist/agent-src}/skills/voice-and-tone-design/SKILL.md +0 -0
  1879. /package/{.agent-src → dist/agent-src}/templates/agent-settings.md +0 -0
  1880. /package/{.agent-src → dist/agent-src}/templates/agents/.gitattributes.fragment +0 -0
  1881. /package/{.agent-src → dist/agent-src}/templates/agents/memory/architecture-decisions.example.yml +0 -0
  1882. /package/{.agent-src → dist/agent-src}/templates/agents/memory/domain-invariants.example.yml +0 -0
  1883. /package/{.agent-src → dist/agent-src}/templates/agents/memory/historical-patterns.example.yml +0 -0
  1884. /package/{.agent-src → dist/agent-src}/templates/agents/memory/incident-learnings.example.yml +0 -0
  1885. /package/{.agent-src → dist/agent-src}/templates/agents/memory/ownership.example.yml +0 -0
  1886. /package/{.agent-src → dist/agent-src}/templates/agents/memory/product-rules.example.yml +0 -0
  1887. /package/{.agent-src → dist/agent-src}/templates/contexts/auth-model.md +0 -0
  1888. /package/{.agent-src → dist/agent-src}/templates/contexts/data-sensitivity.md +0 -0
  1889. /package/{.agent-src → dist/agent-src}/templates/contexts/deployment-order.md +0 -0
  1890. /package/{.agent-src → dist/agent-src}/templates/contexts/observability.md +0 -0
  1891. /package/{.agent-src → dist/agent-src}/templates/contexts/tenant-boundaries.md +0 -0
  1892. /package/{.agent-src → dist/agent-src}/templates/contexts.md +0 -0
  1893. /package/{.agent-src → dist/agent-src}/templates/features.md +0 -0
  1894. /package/{.agent-src → dist/agent-src}/templates/github-workflows/memory-hygiene.yml +0 -0
  1895. /package/{.agent-src → dist/agent-src}/templates/github-workflows/pr-risk-review.yml +0 -0
  1896. /package/{.agent-src → dist/agent-src}/templates/github-workflows/roadmap-progress-check.yml +0 -0
  1897. /package/{.agent-src → dist/agent-src}/templates/overrides/command.md +0 -0
  1898. /package/{.agent-src → dist/agent-src}/templates/overrides/guideline.md +0 -0
  1899. /package/{.agent-src → dist/agent-src}/templates/overrides/rule.md +0 -0
  1900. /package/{.agent-src → dist/agent-src}/templates/overrides/skill.md +0 -0
  1901. /package/{.agent-src → dist/agent-src}/templates/overrides/template.md +0 -0
  1902. /package/{.agent-src → dist/agent-src}/templates/roadmaps.md +0 -0
  1903. /package/{.agent-src → dist/agent-src}/templates/scripts/README.md +0 -0
  1904. /package/{.agent-src → dist/agent-src}/templates/scripts/check_memory.py +0 -0
  1905. /package/{.agent-src → dist/agent-src}/templates/scripts/check_memory_proposal.py +0 -0
  1906. /package/{.agent-src → dist/agent-src}/templates/scripts/historical-bug-patterns.example.yml +0 -0
  1907. /package/{.agent-src → dist/agent-src}/templates/scripts/implement_ticket/__init__.py +0 -0
  1908. /package/{.agent-src → dist/agent-src}/templates/scripts/implement_ticket/__main__.py +0 -0
  1909. /package/{.agent-src → dist/agent-src}/templates/scripts/memory_hash.py +0 -0
  1910. /package/{.agent-src → dist/agent-src}/templates/scripts/memory_lookup.py +0 -0
  1911. /package/{.agent-src → dist/agent-src}/templates/scripts/memory_report.py +0 -0
  1912. /package/{.agent-src → dist/agent-src}/templates/scripts/memory_signal.py +0 -0
  1913. /package/{.agent-src → dist/agent-src}/templates/scripts/memory_status.py +0 -0
  1914. /package/{.agent-src → dist/agent-src}/templates/scripts/ownership-map.example.yml +0 -0
  1915. /package/{.agent-src → dist/agent-src}/templates/scripts/pr-risk-config.example.yml +0 -0
  1916. /package/{.agent-src → dist/agent-src}/templates/scripts/pr_review_routing.py +0 -0
  1917. /package/{.agent-src → dist/agent-src}/templates/scripts/pr_risk_review.py +0 -0
  1918. /package/{.agent-src → dist/agent-src}/templates/scripts/telemetry/__init__.py +0 -0
  1919. /package/{.agent-src → dist/agent-src}/templates/scripts/telemetry/aggregator.py +0 -0
  1920. /package/{.agent-src → dist/agent-src}/templates/scripts/telemetry/boundary.py +0 -0
  1921. /package/{.agent-src → dist/agent-src}/templates/scripts/telemetry/engagement.py +0 -0
  1922. /package/{.agent-src → dist/agent-src}/templates/scripts/telemetry/report_renderer.py +0 -0
  1923. /package/{.agent-src → dist/agent-src}/templates/scripts/telemetry/settings.py +0 -0
  1924. /package/{.agent-src → dist/agent-src}/templates/scripts/telemetry_record.py +0 -0
  1925. /package/{.agent-src → dist/agent-src}/templates/scripts/telemetry_report.py +0 -0
  1926. /package/{.agent-src → dist/agent-src}/templates/scripts/telemetry_status.py +0 -0
  1927. /package/{.agent-src → dist/agent-src}/templates/scripts/tier_usage_report.py +0 -0
  1928. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/__init__.py +0 -0
  1929. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/__main__.py +0 -0
  1930. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/_lib/__init__.py +0 -0
  1931. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/_lib/agent_settings.py +0 -0
  1932. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/_lib/user_global_paths.py +0 -0
  1933. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/cli.py +0 -0
  1934. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/cli_args.py +0 -0
  1935. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/delivery_state.py +0 -0
  1936. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/__init__.py +0 -0
  1937. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/backend/__init__.py +0 -0
  1938. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/backend/analyze.py +0 -0
  1939. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/backend/implement.py +0 -0
  1940. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/backend/memory.py +0 -0
  1941. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/backend/plan.py +0 -0
  1942. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/backend/refine.py +0 -0
  1943. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/backend/report.py +0 -0
  1944. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/backend/test.py +0 -0
  1945. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/backend/verify.py +0 -0
  1946. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/mixed/__init__.py +0 -0
  1947. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/mixed/contract.py +0 -0
  1948. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/mixed/stitch.py +0 -0
  1949. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/mixed/ui.py +0 -0
  1950. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/ui/__init__.py +0 -0
  1951. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/ui/_passthrough.py +0 -0
  1952. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/ui/apply.py +0 -0
  1953. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/ui/audit.py +0 -0
  1954. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/ui/design.py +0 -0
  1955. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/ui_trivial/__init__.py +0 -0
  1956. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/ui_trivial/_skipped.py +0 -0
  1957. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/ui_trivial/apply.py +0 -0
  1958. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/ui_trivial/refine.py +0 -0
  1959. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/ui_trivial/report.py +0 -0
  1960. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/directives/ui_trivial/test.py +0 -0
  1961. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/dispatcher.py +0 -0
  1962. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/emitters.py +0 -0
  1963. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/errors.py +0 -0
  1964. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hook_bootstrap.py +0 -0
  1965. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/__init__.py +0 -0
  1966. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/builtin/__init__.py +0 -0
  1967. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/builtin/_chat_history_base.py +0 -0
  1968. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/builtin/chat_history_append.py +0 -0
  1969. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/builtin/chat_history_halt_append.py +0 -0
  1970. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/builtin/decision_gate.py +0 -0
  1971. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/builtin/decision_trace.py +0 -0
  1972. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/builtin/directive_set_guard.py +0 -0
  1973. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/builtin/halt_surface_audit.py +0 -0
  1974. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/builtin/memory_visibility.py +0 -0
  1975. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/builtin/state_shape_validation.py +0 -0
  1976. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/builtin/trace.py +0 -0
  1977. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/context.py +0 -0
  1978. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/events.py +0 -0
  1979. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/exceptions.py +0 -0
  1980. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/registry.py +0 -0
  1981. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/runner.py +0 -0
  1982. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/hooks/settings.py +0 -0
  1983. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/input_builders.py +0 -0
  1984. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/intent/__init__.py +0 -0
  1985. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/intent/classify.py +0 -0
  1986. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/migration/__init__.py +0 -0
  1987. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/migration/v0_to_v1.py +0 -0
  1988. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/persona_policy.py +0 -0
  1989. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/resolvers/__init__.py +0 -0
  1990. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/resolvers/diff.py +0 -0
  1991. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/resolvers/file.py +0 -0
  1992. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/resolvers/prompt.py +0 -0
  1993. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/scoring/__init__.py +0 -0
  1994. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/scoring/confidence.py +0 -0
  1995. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/scoring/decision_engine.py +0 -0
  1996. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/scoring/decision_trace.py +0 -0
  1997. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/scoring/memory_visibility.py +0 -0
  1998. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/stack/__init__.py +0 -0
  1999. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/stack/detect.py +0 -0
  2000. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/state.py +0 -0
  2001. /package/{.agent-src → dist/agent-src}/templates/scripts/work_engine/state_io.py +0 -0
  2002. /package/{.agent-src → dist/agent-src}/templates/skill-archive-note.md +0 -0
  2003. /package/{.agent-src → dist/agent-src}/templates/skill.md +0 -0
  2004. /package/{.agent-src → dist/agent-src}/user-types/_template/user-type.md +0 -0
  2005. /package/{.agent-src → dist/agent-src}/user-types/galabau-field-crew.md +0 -0
  2006. /package/{.agent-src → dist/agent-src}/user-types/metalworking-shop.md +0 -0
  2007. /package/{.agent-src → dist/agent-src}/user-types/truck-driver.md +0 -0
  2008. /package/{config → src/config}/discovery/session-profiles.yml +0 -0
  2009. /package/{config → src/config}/discovery/unassigned-artefacts.yml +0 -0
  2010. /package/{config → src/config}/gitignore-block.txt +0 -0
  2011. /package/{config → src/config}/profiles/balanced.ini +0 -0
  2012. /package/{config → src/config}/profiles/full.ini +0 -0
  2013. /package/{config → src/config}/profiles/minimal.ini +0 -0
  2014. /package/{scripts → src/scripts}/_archive/_backfill_skill_domains.py +0 -0
  2015. /package/{scripts → src/scripts}/_archive/_phase2_shim_helper.py +0 -0
  2016. /package/{scripts → src/scripts}/_archive/_pilot_council_question.py +0 -0
  2017. /package/{scripts → src/scripts}/_cli/__init__.py +0 -0
  2018. /package/{scripts → src/scripts}/_cli/cmd_explain.py +0 -0
  2019. /package/{scripts → src/scripts}/_cli/cmd_prune.py +0 -0
  2020. /package/{scripts → src/scripts}/_cli/cmd_settings_check.py +0 -0
  2021. /package/{scripts → src/scripts}/_cli/cmd_sync.py +0 -0
  2022. /package/{scripts → src/scripts}/_cli/cmd_uninstall.py +0 -0
  2023. /package/{scripts → src/scripts}/_cli/cmd_validate.py +0 -0
  2024. /package/{scripts → src/scripts}/_cli/explain_last/__init__.py +0 -0
  2025. /package/{scripts → src/scripts}/_cli/explain_last/assumptions.py +0 -0
  2026. /package/{scripts → src/scripts}/_cli/explain_last/council.py +0 -0
  2027. /package/{scripts → src/scripts}/_cli/explain_last/halt.py +0 -0
  2028. /package/{scripts → src/scripts}/_cli/explain_last/inputs.py +0 -0
  2029. /package/{scripts → src/scripts}/_cli/explain_last/memory.py +0 -0
  2030. /package/{scripts → src/scripts}/_cli/explain_last/provider.py +0 -0
  2031. /package/{scripts → src/scripts}/_cli/explain_last/render.py +0 -0
  2032. /package/{scripts → src/scripts}/_cli/explain_last/route.py +0 -0
  2033. /package/{scripts → src/scripts}/_cli/explain_last/scrubber.py +0 -0
  2034. /package/{scripts → src/scripts}/_cli/explain_last/sections/__init__.py +0 -0
  2035. /package/{scripts → src/scripts}/_cli/explain_last/sections/assumptions.py +0 -0
  2036. /package/{scripts → src/scripts}/_cli/explain_last/sections/council.py +0 -0
  2037. /package/{scripts → src/scripts}/_cli/explain_last/sections/halt.py +0 -0
  2038. /package/{scripts → src/scripts}/_cli/explain_last/sections/header.py +0 -0
  2039. /package/{scripts → src/scripts}/_cli/explain_last/sections/inputs.py +0 -0
  2040. /package/{scripts → src/scripts}/_cli/explain_last/sections/memory.py +0 -0
  2041. /package/{scripts → src/scripts}/_cli/explain_last/sections/pack.py +0 -0
  2042. /package/{scripts → src/scripts}/_cli/explain_last/sections/provider.py +0 -0
  2043. /package/{scripts → src/scripts}/_cli/explain_last/sections/route.py +0 -0
  2044. /package/{scripts → src/scripts}/_cli/explain_last/state_loader.py +0 -0
  2045. /package/{scripts → src/scripts}/_emit_domain_table.py +0 -0
  2046. /package/{scripts → src/scripts}/_lib/__init__.py +0 -0
  2047. /package/{scripts → src/scripts}/_lib/agent_settings.py +0 -0
  2048. /package/{scripts → src/scripts}/_lib/agents_overlay.py +0 -0
  2049. /package/{scripts → src/scripts}/_lib/bench_ab_scoring.py +0 -0
  2050. /package/{scripts → src/scripts}/_lib/bench_cost.py +0 -0
  2051. /package/{scripts → src/scripts}/_lib/bench_quality.py +0 -0
  2052. /package/{scripts → src/scripts}/_lib/bench_report.py +0 -0
  2053. /package/{scripts → src/scripts}/_lib/bench_telegraph.py +0 -0
  2054. /package/{scripts → src/scripts}/_lib/bench_telegraph_report.py +0 -0
  2055. /package/{scripts → src/scripts}/_lib/fs_atomic.py +0 -0
  2056. /package/{scripts → src/scripts}/_lib/installed_tools.py +0 -0
  2057. /package/{scripts → src/scripts}/_lib/json_pointers.py +0 -0
  2058. /package/{scripts → src/scripts}/_lib/linked_projects.py +0 -0
  2059. /package/{scripts → src/scripts}/_lib/module_detection.py +0 -0
  2060. /package/{scripts → src/scripts}/_lib/pin_resolver.py +0 -0
  2061. /package/{scripts → src/scripts}/_lib/script_output.py +0 -0
  2062. /package/{scripts → src/scripts}/_lib/token_count.py +0 -0
  2063. /package/{scripts → src/scripts}/_lib/update_check.py +0 -0
  2064. /package/{scripts → src/scripts}/_lib/user_global_paths.py +0 -0
  2065. /package/{scripts → src/scripts}/_tmp_scan_framework_leakage.py +0 -0
  2066. /package/{scripts → src/scripts}/adr/regenerate_index.py +0 -0
  2067. /package/{scripts/ai-video/lib/fixtures/kling → src/scripts/ai-video/lib/fixtures/comfyui}/scene-0001.mp4 +0 -0
  2068. /package/{scripts → src/scripts}/ai-video/lib/fixtures/gemini-veo/scene-0001.mp4 +0 -0
  2069. /package/{scripts → src/scripts}/ai-video/lib/fixtures/higgsfield/scene-0001.mp4 +0 -0
  2070. /package/{scripts → src/scripts}/ai-video/lib/fixtures/openai-images/scene-0001.png +0 -0
  2071. /package/{scripts → src/scripts}/ai-video/lib/fixtures/sora/scene-0001.mp4 +0 -0
  2072. /package/{scripts → src/scripts}/ai-video/lib/operator-pick.sh +0 -0
  2073. /package/{scripts → src/scripts}/ai-video/lib/parse-blueprint.sh +0 -0
  2074. /package/{scripts → src/scripts}/ai-video/lib/probe-audio.sh +0 -0
  2075. /package/{scripts → src/scripts}/ai-video/lib/redact.sh +0 -0
  2076. /package/{scripts → src/scripts}/ai_council/__init__.py +0 -0
  2077. /package/{scripts → src/scripts}/ai_council/_default_prices.py +0 -0
  2078. /package/{scripts → src/scripts}/ai_council/airgap.py +0 -0
  2079. /package/{scripts → src/scripts}/ai_council/budget_guard.py +0 -0
  2080. /package/{scripts → src/scripts}/ai_council/bundler.py +0 -0
  2081. /package/{scripts → src/scripts}/ai_council/cli_hints.py +0 -0
  2082. /package/{scripts → src/scripts}/ai_council/confidence_gate.py +0 -0
  2083. /package/{scripts → src/scripts}/ai_council/config.py +0 -0
  2084. /package/{scripts → src/scripts}/ai_council/consensus.py +0 -0
  2085. /package/{scripts → src/scripts}/ai_council/learn_low_impact_preview.py +0 -0
  2086. /package/{scripts → src/scripts}/ai_council/low_impact.py +0 -0
  2087. /package/{scripts → src/scripts}/ai_council/low_impact_corpus.py +0 -0
  2088. /package/{scripts → src/scripts}/ai_council/low_impact_intake.py +0 -0
  2089. /package/{scripts → src/scripts}/ai_council/modes.py +0 -0
  2090. /package/{scripts → src/scripts}/ai_council/necessity.py +0 -0
  2091. /package/{scripts → src/scripts}/ai_council/one_off_archive/2026-05/README.md +0 -0
  2092. /package/{scripts → src/scripts}/ai_council/one_off_archive/2026-05/_one_off_add_quiet.py +0 -0
  2093. /package/{scripts → src/scripts}/ai_council/one_off_archive/2026-05/_one_off_inject_quiet_flag.py +0 -0
  2094. /package/{scripts → src/scripts}/ai_council/one_off_archive/2026-05/_one_off_measure_v2.sh +0 -0
  2095. /package/{scripts → src/scripts}/ai_council/one_off_archive/2026-05/_one_off_measure_verbosity.sh +0 -0
  2096. /package/{scripts → src/scripts}/ai_council/one_off_archive/2026-05/_one_off_per_task.sh +0 -0
  2097. /package/{scripts → src/scripts}/ai_council/orchestrator.py +0 -0
  2098. /package/{scripts → src/scripts}/ai_council/probation_gate.py +0 -0
  2099. /package/{scripts → src/scripts}/ai_council/project_context.py +0 -0
  2100. /package/{scripts → src/scripts}/ai_council/prompts.py +0 -0
  2101. /package/{scripts → src/scripts}/ai_council/redact_low_impact_entry.py +0 -0
  2102. /package/{scripts → src/scripts}/ai_council/replay.py +0 -0
  2103. /package/{scripts → src/scripts}/ai_council/shadow_dispatch.py +0 -0
  2104. /package/{scripts → src/scripts}/ai_council/solo_dispatch.py +0 -0
  2105. /package/{scripts → src/scripts}/audit_skill_descriptions.py +0 -0
  2106. /package/{scripts → src/scripts}/bootstrap.sh +0 -0
  2107. /package/{scripts → src/scripts}/chat_history.py +0 -0
  2108. /package/{scripts → src/scripts}/check_bite_sized_granularity.py +0 -0
  2109. /package/{scripts → src/scripts}/check_council_layout.py +0 -0
  2110. /package/{scripts → src/scripts}/check_iron_law_prominence.py +0 -0
  2111. /package/{scripts → src/scripts}/check_kernel_rule_bundle.py +0 -0
  2112. /package/{scripts → src/scripts}/check_md_language.py +0 -0
  2113. /package/{scripts → src/scripts}/check_memory.py +0 -0
  2114. /package/{scripts → src/scripts}/check_memory_proposal.py +0 -0
  2115. /package/{scripts → src/scripts}/check_no_local_settings_committed.py +0 -0
  2116. /package/{scripts → src/scripts}/check_proposal.py +0 -0
  2117. /package/{scripts → src/scripts}/check_release_trunk_sync.py +0 -0
  2118. /package/{scripts → src/scripts}/ci_status.py +0 -0
  2119. /package/{scripts → src/scripts}/ci_summary.py +0 -0
  2120. /package/{scripts → src/scripts}/cleanup_other_scope.sh +0 -0
  2121. /package/{scripts → src/scripts}/command_suggester/__init__.py +0 -0
  2122. /package/{scripts → src/scripts}/command_suggester/cooldown.py +0 -0
  2123. /package/{scripts → src/scripts}/command_suggester/loader.py +0 -0
  2124. /package/{scripts → src/scripts}/command_suggester/match.py +0 -0
  2125. /package/{scripts → src/scripts}/command_suggester/rank.py +0 -0
  2126. /package/{scripts → src/scripts}/command_suggester/render.py +0 -0
  2127. /package/{scripts → src/scripts}/command_suggester/sanitize.py +0 -0
  2128. /package/{scripts → src/scripts}/command_suggester/settings.py +0 -0
  2129. /package/{scripts → src/scripts}/command_suggester/types.py +0 -0
  2130. /package/{scripts → src/scripts}/condense.sh +0 -0
  2131. /package/{scripts → src/scripts}/config/__init__.py +0 -0
  2132. /package/{scripts → src/scripts}/config/presets.py +0 -0
  2133. /package/{scripts → src/scripts}/context_hygiene_hook.py +0 -0
  2134. /package/{scripts → src/scripts}/cost/budget.mjs +0 -0
  2135. /package/{scripts → src/scripts}/cost/preflight.mjs +0 -0
  2136. /package/{scripts → src/scripts}/cost/track.mjs +0 -0
  2137. /package/{scripts → src/scripts}/council_prune.py +0 -0
  2138. /package/{scripts → src/scripts}/count_token_optimizer_usage.sh +0 -0
  2139. /package/{scripts → src/scripts}/expected_perms.json +0 -0
  2140. /package/{scripts → src/scripts}/first-run.sh +0 -0
  2141. /package/{scripts → src/scripts}/ghostwriter_fixture_allowlist.txt +0 -0
  2142. /package/{scripts → src/scripts}/hermetic-install.sh +0 -0
  2143. /package/{scripts → src/scripts}/hooks/__init__.py +0 -0
  2144. /package/{scripts → src/scripts}/hooks/augment-chat-history.sh +0 -0
  2145. /package/{scripts → src/scripts}/hooks/augment-context-hygiene.sh +0 -0
  2146. /package/{scripts → src/scripts}/hooks/augment-dispatcher.sh +0 -0
  2147. /package/{scripts → src/scripts}/hooks/augment-onboarding-gate.sh +0 -0
  2148. /package/{scripts → src/scripts}/hooks/augment-roadmap-progress.sh +0 -0
  2149. /package/{scripts → src/scripts}/hooks/cline-dispatcher.sh +0 -0
  2150. /package/{scripts → src/scripts}/hooks/cowork-dispatcher.sh +0 -0
  2151. /package/{scripts → src/scripts}/hooks/cursor-dispatcher.sh +0 -0
  2152. /package/{scripts → src/scripts}/hooks/dispatch_issues.py +0 -0
  2153. /package/{scripts → src/scripts}/hooks/envelope.py +0 -0
  2154. /package/{scripts → src/scripts}/hooks/gemini-dispatcher.sh +0 -0
  2155. /package/{scripts → src/scripts}/hooks/state_io.py +0 -0
  2156. /package/{scripts → src/scripts}/hooks/windsurf-dispatcher.sh +0 -0
  2157. /package/{scripts → src/scripts}/install_anthropic_key.sh +0 -0
  2158. /package/{scripts → src/scripts}/install_openai_key.sh +0 -0
  2159. /package/{scripts → src/scripts}/lint_global_paths.py +0 -0
  2160. /package/{scripts → src/scripts}/lint_readme_jargon.py +0 -0
  2161. /package/{scripts → src/scripts}/lint_readme_size.py +0 -0
  2162. /package/{scripts → src/scripts}/mcp_render.py +0 -0
  2163. /package/{scripts → src/scripts}/mcp_server/__main__.py +0 -0
  2164. /package/{scripts → src/scripts}/mcp_server/catalog.py +0 -0
  2165. /package/{scripts → src/scripts}/mcp_server/metadata.py +0 -0
  2166. /package/{scripts → src/scripts}/mcp_server/requirements.txt +0 -0
  2167. /package/{scripts → src/scripts}/mcp_server/server.py +0 -0
  2168. /package/{scripts → src/scripts}/mcp_server/telemetry.py +0 -0
  2169. /package/{scripts → src/scripts}/mcp_setup.sh +0 -0
  2170. /package/{scripts → src/scripts}/mcp_telemetry_health.py +0 -0
  2171. /package/{scripts → src/scripts}/mcp_telemetry_query.py +0 -0
  2172. /package/{scripts → src/scripts}/mcp_telemetry_store.py +0 -0
  2173. /package/{scripts → src/scripts}/memory_hash.py +0 -0
  2174. /package/{scripts → src/scripts}/memory_lookup.py +0 -0
  2175. /package/{scripts → src/scripts}/memory_report.py +0 -0
  2176. /package/{scripts → src/scripts}/memory_signal.py +0 -0
  2177. /package/{scripts → src/scripts}/memory_status.py +0 -0
  2178. /package/{scripts → src/scripts}/minimal_safe_diff_hook.py +0 -0
  2179. /package/{scripts → src/scripts}/onboarding_gate_hook.py +0 -0
  2180. /package/{scripts → src/scripts}/prediction-pool/adapters/_schema.md +0 -0
  2181. /package/{scripts → src/scripts}/prediction-pool/adapters/kicktipp.yml +0 -0
  2182. /package/{scripts → src/scripts}/prediction-pool/poisson_sim.py +0 -0
  2183. /package/{scripts → src/scripts}/prediction-pool/pool_winsim.py +0 -0
  2184. /package/{scripts → src/scripts}/prediction-pool/score_ev.py +0 -0
  2185. /package/{scripts → src/scripts}/prepack-check.mjs +0 -0
  2186. /package/{scripts → src/scripts}/probe_skill_registration.py +0 -0
  2187. /package/{scripts → src/scripts}/propose_modules_config.py +0 -0
  2188. /package/{scripts → src/scripts}/readme_linter.py +0 -0
  2189. /package/{scripts → src/scripts}/redact_hook_capture.py +0 -0
  2190. /package/{scripts → src/scripts}/requirements-evals.txt +0 -0
  2191. /package/{scripts → src/scripts}/runtime_dispatcher.py +0 -0
  2192. /package/{scripts → src/scripts}/runtime_handler.py +0 -0
  2193. /package/{scripts → src/scripts}/schemas/agent-settings.schema.json +0 -0
  2194. /package/{scripts → src/scripts}/schemas/persona.schema.json +0 -0
  2195. /package/{scripts → src/scripts}/schemas/skill.schema.json +0 -0
  2196. /package/{scripts → src/scripts}/schemas/user-type-axis.schema.json +0 -0
  2197. /package/{scripts → src/scripts}/schemas/user-type.schema.json +0 -0
  2198. /package/{scripts → src/scripts}/setup_eval_venv.sh +0 -0
  2199. /package/{scripts → src/scripts}/skill_tools/__init__.py +0 -0
  2200. /package/{scripts → src/scripts}/sync_yaml_rt.py +0 -0
  2201. /package/{scripts → src/scripts}/tool_registry.py +0 -0
  2202. /package/{scripts → src/scripts}/tools/__init__.py +0 -0
  2203. /package/{scripts → src/scripts}/tools/adapter_errors.py +0 -0
  2204. /package/{scripts → src/scripts}/tools/base_adapter.py +0 -0
  2205. /package/{scripts → src/scripts}/tools/github_adapter.py +0 -0
  2206. /package/{scripts → src/scripts}/tools/jira_adapter.py +0 -0
  2207. /package/{scripts → src/scripts}/update-github-metadata.sh +0 -0
  2208. /package/{scripts → src/scripts}/validate_safe_paths.py +0 -0
  2209. /package/{scripts → src/scripts}/validate_telegraph_carveouts.py +0 -0
  2210. /package/{scripts → src/scripts}/verify_before_complete_hook.py +0 -0
  2211. /package/{templates → src/templates}/agent-config-wrapper.sh +0 -0
  2212. /package/{templates → src/templates}/agent-user.md +0 -0
  2213. /package/{templates → src/templates}/agent-user.yml +0 -0
  2214. /package/{templates → src/templates}/claude_desktop_config.json.template +0 -0
  2215. /package/{templates → src/templates}/consumer-settings/ONBOARDING.md +0 -0
  2216. /package/{templates → src/templates}/consumer-settings/README.md +0 -0
  2217. /package/{templates → src/templates}/consumer-settings/augment-cli-hooks.json +0 -0
  2218. /package/{templates → src/templates}/consumer-settings/augment-settings.json +0 -0
  2219. /package/{templates → src/templates}/consumer-settings/claude-settings.json +0 -0
  2220. /package/{templates → src/templates}/consumer-settings/copilot-settings.json +0 -0
  2221. /package/{templates → src/templates}/cursor-rule.mdc.j2 +0 -0
  2222. /package/{templates → src/templates}/marketing-copy.yml +0 -0
  2223. /package/{templates → src/templates}/minimal/.agent-settings.yml +0 -0
  2224. /package/{templates → src/templates}/minimal/agents-overrides-readme.md +0 -0
  2225. /package/{templates → src/templates}/minimal/overrides-gitkeep +0 -0
  2226. /package/{templates → src/templates}/windsurf-rule.md.j2 +0 -0
@@ -0,0 +1,56 @@
1
+ No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL
2
+ 1,Animation,Use Tailwind animate utilities,Built-in animations are optimized and respect reduced-motion,Use animate-pulse animate-spin animate-ping,Custom @keyframes for simple effects,animate-pulse,@keyframes pulse {...},Medium,https://tailwindcss.com/docs/animation
3
+ 2,Animation,Limit bounce animations,Continuous bounce is distracting and causes motion sickness,Use animate-bounce sparingly on CTAs only,Multiple bounce animations on page,Single CTA with animate-bounce,5+ elements with animate-bounce,High,
4
+ 3,Animation,Transition duration,Use appropriate transition speeds for UI feedback,duration-150 to duration-300 for UI,duration-1000 or longer for UI elements,transition-all duration-200,transition-all duration-1000,Medium,https://tailwindcss.com/docs/transition-duration
5
+ 4,Animation,Hover transitions,Add smooth transitions on hover state changes,Add transition class with hover states,Instant hover changes without transition,hover:bg-gray-100 transition-colors,hover:bg-gray-100 (no transition),Low,
6
+ 5,Z-Index,Use Tailwind z-* scale,Consistent stacking context with predefined scale,z-0 z-10 z-20 z-30 z-40 z-50,Arbitrary z-index values,z-50 for modals,z-[9999],Medium,https://tailwindcss.com/docs/z-index
7
+ 6,Z-Index,Fixed elements z-index,Fixed navigation and modals need explicit z-index,z-50 for nav z-40 for dropdowns,Relying on DOM order for stacking,fixed top-0 z-50,fixed top-0 (no z-index),High,
8
+ 7,Z-Index,Negative z-index for backgrounds,Use negative z-index for decorative backgrounds,z-[-1] for background elements,Positive z-index for backgrounds,-z-10 for decorative,z-10 for background,Low,
9
+ 8,Layout,Container max-width,Limit content width for readability,max-w-7xl mx-auto for main content,Full-width content on large screens,max-w-7xl mx-auto px-4,w-full (no max-width),Medium,https://tailwindcss.com/docs/container
10
+ 9,Layout,Responsive padding,Adjust padding for different screen sizes,px-4 md:px-6 lg:px-8,Same padding all sizes,px-4 sm:px-6 lg:px-8,px-8 (same all sizes),Medium,
11
+ 10,Layout,Grid gaps,Use consistent gap utilities for spacing,gap-4 gap-6 gap-8,Margins on individual items,grid gap-6,grid with mb-4 on each item,Medium,https://tailwindcss.com/docs/gap
12
+ 11,Layout,Flexbox alignment,Use flex utilities for alignment,items-center justify-between,Multiple nested wrappers,flex items-center justify-between,Nested divs for alignment,Low,
13
+ 12,Images,Aspect ratio,Maintain consistent image aspect ratios,aspect-video aspect-square,No aspect ratio on containers,aspect-video rounded-lg,No aspect control,Medium,https://tailwindcss.com/docs/aspect-ratio
14
+ 13,Images,Object fit,Control image scaling within containers,object-cover object-contain,Stretched distorted images,object-cover w-full h-full,No object-fit,Medium,https://tailwindcss.com/docs/object-fit
15
+ 14,Images,Lazy loading,Defer loading of off-screen images,loading='lazy' on images,All images eager load,<img loading='lazy'>,<img> without lazy,High,
16
+ 15,Images,Responsive images,Serve appropriate image sizes,srcset and sizes attributes,Same large image all devices,srcset with multiple sizes,4000px image everywhere,High,
17
+ 16,Typography,Prose plugin,Use @tailwindcss/typography for rich text,prose prose-lg for article content,Custom styles for markdown,prose prose-lg max-w-none,Custom text styling,Medium,https://tailwindcss.com/docs/typography-plugin
18
+ 17,Typography,Line height,Use appropriate line height for readability,leading-relaxed for body text,Default tight line height,leading-relaxed (1.625),leading-none or leading-tight,Medium,https://tailwindcss.com/docs/line-height
19
+ 18,Typography,Font size scale,Use consistent text size scale,text-sm text-base text-lg text-xl,Arbitrary font sizes,text-lg,text-[17px],Low,https://tailwindcss.com/docs/font-size
20
+ 19,Typography,Text truncation,Handle long text gracefully,truncate or line-clamp-*,Overflow breaking layout,line-clamp-2,No overflow handling,Medium,https://tailwindcss.com/docs/text-overflow
21
+ 20,Colors,Opacity utilities,Use color opacity utilities,bg-black/50 text-white/80,Separate opacity class,bg-black/50,bg-black opacity-50,Low,https://tailwindcss.com/docs/background-color
22
+ 21,Colors,Dark mode,Support dark mode with dark: prefix,dark:bg-gray-900 dark:text-white,No dark mode support,dark:bg-gray-900,Only light theme,Medium,https://tailwindcss.com/docs/dark-mode
23
+ 22,Colors,Semantic colors,Use semantic color naming in config,primary secondary danger success,Generic color names in components,bg-primary,bg-blue-500 everywhere,Medium,
24
+ 23,Spacing,Consistent spacing scale,Use Tailwind spacing scale consistently,p-4 m-6 gap-8,Arbitrary pixel values,p-4 (1rem),p-[15px],Low,https://tailwindcss.com/docs/customizing-spacing
25
+ 24,Spacing,Negative margins,Use sparingly for overlapping effects,-mt-4 for overlapping elements,Negative margins for layout fixing,-mt-8 for card overlap,-m-2 to fix spacing issues,Medium,
26
+ 25,Spacing,Space between,Use space-y-* for vertical lists,space-y-4 on flex/grid column,Margin on each child,space-y-4,Each child has mb-4,Low,https://tailwindcss.com/docs/space
27
+ 26,Forms,Focus states,Always show focus indicators,focus:ring-2 focus:ring-blue-500,Remove focus outline,focus:ring-2 focus:ring-offset-2,focus:outline-none (no replacement),High,
28
+ 27,Forms,Input sizing,Consistent input dimensions,h-10 px-3 for inputs,Inconsistent input heights,h-10 w-full px-3,Various heights per input,Medium,
29
+ 28,Forms,Disabled states,Clear disabled styling,disabled:opacity-50 disabled:cursor-not-allowed,No disabled indication,disabled:opacity-50,Same style as enabled,Medium,
30
+ 29,Forms,Placeholder styling,Style placeholder text appropriately,placeholder:text-gray-400,Dark placeholder text,placeholder:text-gray-400,Default dark placeholder,Low,
31
+ 30,Responsive,Mobile-first approach,Start with mobile styles and add breakpoints,Default mobile + md: lg: xl:,Desktop-first approach,text-sm md:text-base,text-base max-md:text-sm,Medium,https://tailwindcss.com/docs/responsive-design
32
+ 31,Responsive,Breakpoint testing,Test at standard breakpoints,320 375 768 1024 1280 1536,Only test on development device,Test all breakpoints,Single device testing,High,
33
+ 32,Responsive,Hidden/shown utilities,Control visibility per breakpoint,hidden md:block,Different content per breakpoint,hidden md:flex,Separate mobile/desktop components,Low,https://tailwindcss.com/docs/display
34
+ 33,Buttons,Button sizing,Consistent button dimensions,px-4 py-2 or px-6 py-3,Inconsistent button sizes,px-4 py-2 text-sm,Various padding per button,Medium,
35
+ 34,Buttons,Touch targets,Minimum 44px touch target on mobile,min-h-[44px] on mobile,Small buttons on mobile,min-h-[44px] min-w-[44px],h-8 w-8 on mobile,High,
36
+ 35,Buttons,Loading states,Show loading feedback,disabled + spinner icon,Clickable during loading,<Button disabled><Spinner/></Button>,Button without loading state,High,
37
+ 36,Buttons,Icon buttons,Accessible icon-only buttons,aria-label on icon buttons,Icon button without label,<button aria-label='Close'><XIcon/></button>,<button><XIcon/></button>,High,
38
+ 37,Cards,Card structure,Consistent card styling,rounded-lg shadow-md p-6,Inconsistent card styles,rounded-2xl shadow-lg p-6,Mixed card styling,Low,
39
+ 38,Cards,Card hover states,Interactive cards should have hover feedback,hover:shadow-lg transition-shadow,No hover on clickable cards,hover:shadow-xl transition-shadow,Static cards that are clickable,Medium,
40
+ 39,Cards,Card spacing,Consistent internal card spacing,space-y-4 for card content,Inconsistent internal spacing,space-y-4 or p-6,Mixed mb-2 mb-4 mb-6,Low,
41
+ 40,Accessibility,Screen reader text,Provide context for screen readers,sr-only for hidden labels,Missing context for icons,<span class='sr-only'>Close menu</span>,No label for icon button,High,https://tailwindcss.com/docs/screen-readers
42
+ 41,Accessibility,Focus visible,Show focus only for keyboard users,focus-visible:ring-2,Focus on all interactions,focus-visible:ring-2,focus:ring-2 (shows on click too),Medium,
43
+ 42,Accessibility,Reduced motion,Respect user motion preferences,motion-reduce:animate-none,Ignore motion preferences,motion-reduce:transition-none,No reduced motion support,High,https://tailwindcss.com/docs/hover-focus-and-other-states#prefers-reduced-motion
44
+ 43,Performance,Configure content paths,Tailwind needs to know where classes are used,Use 'content' array in config,Use deprecated 'purge' option (v2),"content: ['./src/**/*.{js,ts,jsx,tsx}']",purge: [...],High,https://tailwindcss.com/docs/content-configuration
45
+ 44,Performance,JIT mode,Use JIT for faster builds and smaller bundles,JIT enabled (default in v3),Full CSS in development,Tailwind v3 defaults,Tailwind v2 without JIT,Medium,
46
+ 45,Performance,Avoid @apply bloat,Use @apply sparingly,Direct utilities in HTML,Heavy @apply usage,class='px-4 py-2 rounded',@apply px-4 py-2 rounded;,Low,https://tailwindcss.com/docs/reusing-styles
47
+ 46,Plugins,Official plugins,Use official Tailwind plugins,@tailwindcss/forms typography aspect-ratio,Custom implementations,@tailwindcss/forms,Custom form reset CSS,Medium,https://tailwindcss.com/docs/plugins
48
+ 47,Plugins,Custom utilities,Create utilities for repeated patterns,Custom utility in config,Repeated arbitrary values,Custom shadow utility,"shadow-[0_4px_20px_rgba(0,0,0,0.1)] everywhere",Medium,
49
+ 48,Layout,Container Queries,Use @container for component-based responsiveness,Use @container and @lg: etc.,Media queries for component internals,@container @lg:grid-cols-2,@media (min-width: ...) inside component,Medium,https://github.com/tailwindlabs/tailwindcss-container-queries
50
+ 49,Interactivity,Group and Peer,Style based on parent/sibling state,group-hover peer-checked,JS for simple state interactions,group-hover:text-blue-500,onMouseEnter={() => setHover(true)},Low,https://tailwindcss.com/docs/hover-focus-and-other-states#styling-based-on-parent-state
51
+ 50,Customization,Arbitrary Values,Use [] for one-off values,w-[350px] for specific needs,Creating config for single use,top-[117px] (if strictly needed),style={{ top: '117px' }},Low,https://tailwindcss.com/docs/adding-custom-styles#using-arbitrary-values
52
+ 51,Colors,Theme color variables,Define colors in Tailwind theme and use directly,bg-primary text-success border-cta,bg-[var(--color-primary)] text-[var(--color-success)],bg-primary,bg-[var(--color-primary)],Medium,https://tailwindcss.com/docs/customizing-colors
53
+ 52,Colors,Use bg-linear-to-* for gradients,Tailwind v4 uses bg-linear-to-* syntax for gradients,bg-linear-to-r bg-linear-to-b,bg-gradient-to-* (deprecated in v4),bg-linear-to-r from-blue-500 to-purple-500,bg-gradient-to-r from-blue-500 to-purple-500,Medium,https://tailwindcss.com/docs/background-image
54
+ 53,Layout,Use shrink-0 shorthand,Shorter class name for flex-shrink-0,shrink-0 shrink,flex-shrink-0 flex-shrink,shrink-0,flex-shrink-0,Low,https://tailwindcss.com/docs/flex-shrink
55
+ 54,Layout,Use size-* for square dimensions,Single utility for equal width and height,size-4 size-8 size-12,Separate h-* w-* for squares,size-6,h-6 w-6,Low,https://tailwindcss.com/docs/size
56
+ 55,Images,SVG explicit dimensions,Add width/height attributes to SVGs to prevent layout shift before CSS loads,<svg class='size-6' width='24' height='24'>,SVG without explicit dimensions,<svg class='size-6' width='24' height='24'>,<svg class='size-6'>,High,
@@ -0,0 +1,53 @@
1
+ No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL
2
+ 1,Composable,Pure UI composables,Composable functions should only render UI,Accept state and callbacks,Calling usecase/repo,Pure UI composable,Business logic in UI,High,https://developer.android.com/jetpack/compose/mental-model
3
+ 2,Composable,Small composables,Each composable has single responsibility,Split into components,Huge composable,Reusable UI,Monolithic UI,Medium,
4
+ 3,Composable,Stateless by default,Prefer stateless composables,Hoist state,Local mutable state,Stateless UI,Hidden state,High,https://developer.android.com/jetpack/compose/state#state-hoisting
5
+ 4,State,Single source of truth,UI state comes from one source,StateFlow from VM,Multiple states,Unified UiState,Scattered state,High,https://developer.android.com/topic/architecture/ui-layer
6
+ 5,State,Model UI State,Use sealed interface/data class,UiState.Loading,Boolean flags,Explicit state,Flag hell,High,
7
+ 6,State,remember only UI state,remember for UI-only state,"Scroll, animation",Business state,Correct remember,Misuse remember,High,https://developer.android.com/jetpack/compose/state
8
+ 7,State,rememberSaveable,Persist state across config,rememberSaveable,remember,State survives,State lost,High,https://developer.android.com/jetpack/compose/state#restore-ui-state
9
+ 8,State,derivedStateOf,Optimize recomposition,derivedStateOf,Recompute always,Optimized,Jank,Medium,https://developer.android.com/jetpack/compose/performance
10
+ 9,SideEffect,LaunchedEffect keys,Use correct keys,LaunchedEffect(id),LaunchedEffect(Unit),Scoped effect,Infinite loop,High,https://developer.android.com/jetpack/compose/side-effects
11
+ 10,SideEffect,rememberUpdatedState,Avoid stale lambdas,rememberUpdatedState,Capture directly,Safe callback,Stale state,Medium,https://developer.android.com/jetpack/compose/side-effects
12
+ 11,SideEffect,DisposableEffect,Clean up resources,onDispose,No cleanup,No leak,Memory leak,High,
13
+ 12,Architecture,Unidirectional data flow,UI → VM → State,onEvent,Two-way binding,Predictable flow,Hard debug,High,https://developer.android.com/topic/architecture
14
+ 13,Architecture,No business logic in UI,Logic belongs to VM,Collect state,Call repo,Clean UI,Fat UI,High,
15
+ 14,Architecture,Expose immutable state,Expose StateFlow,asStateFlow,Mutable exposed,Safe API,State mutation,High,
16
+ 15,Lifecycle,Lifecycle-aware collect,Use collectAsStateWithLifecycle,Lifecycle aware,collectAsState,No leak,Leak,High,https://developer.android.com/jetpack/compose/lifecycle
17
+ 16,Navigation,Event-based navigation,VM emits navigation event,"VM: Channel + receiveAsFlow(), V: Collect with Dispatchers.Main.immediate",Nav in UI,Decoupled nav,Using State / SharedFlow for navigation -> event is replayed and navigation fires again (StateFlow),High,https://developer.android.com/jetpack/compose/navigation
18
+ 17,Navigation,Typed routes,Use sealed routes,sealed class Route,String routes,Type-safe,Runtime crash,Medium,
19
+ 18,Performance,Stable parameters,Prefer immutable/stable params,@Immutable,Mutable params,Stable recomposition,Extra recomposition,High,https://developer.android.com/jetpack/compose/performance
20
+ 19,Performance,Use key in Lazy,Provide stable keys,key=id,No key,Stable list,Item jump,High,
21
+ 20,Performance,Avoid heavy work,No heavy computation in UI,Precompute in VM,Compute in UI,Smooth UI,Jank,High,
22
+ 21,Performance,Remember expensive objects,remember heavy objects,remember,Recreate each recomposition,Efficient,Wasteful,Medium,
23
+ 22,Theming,Design system,Centralized theme,Material3 tokens,Hardcoded values,Consistent UI,Inconsistent,High,https://developer.android.com/jetpack/compose/themes
24
+ 23,Theming,Dark mode support,Theme-based colors,colorScheme,Fixed color,Adaptive UI,Broken dark,Medium,
25
+ 24,Layout,Prefer Modifier over extra layouts,Use Modifier to adjust layout instead of adding wrapper composables,Use Modifier.padding(),Wrap content with extra Box,Padding via modifier,Box just for padding,High,https://developer.android.com/jetpack/compose/modifiers
26
+ 25,Layout,Avoid deep layout nesting,Deep layout trees increase measure & layout cost,Keep layout flat,Box ? Column ? Box ? Row,Flat hierarchy,Deep nested tree,High,
27
+ 26,Layout,Use Row/Column for linear layout,Linear layouts are simpler and more performant,Use Row / Column,Custom layout for simple cases,Row/Column usage,Over-engineered layout,High,
28
+ 27,Layout,Use Box only for overlapping content,Box should be used only when children overlap,Stack elements,Use Box as Column,Proper overlay,Misused Box,Medium,
29
+ 28,Layout,Prefer LazyColumn over Column scroll,Lazy layouts are virtualized and efficient,LazyColumn,Column.verticalScroll(),Lazy list,Scrollable Column,High,https://developer.android.com/jetpack/compose/lists
30
+ 29,Layout,Avoid nested scroll containers,Nested scrolling causes UX & performance issues,Single scroll container,Scroll inside scroll,One scroll per screen,Nested scroll,High,
31
+ 30,Layout,Avoid fillMaxSize by default,fillMaxSize may break parent constraints,Use exact size,Fill max everywhere,Constraint-aware size,Overfilled layout,Medium,
32
+ 31,Layout,Avoid intrinsic size unless necessary,Intrinsic measurement is expensive,Explicit sizing,IntrinsicSize.Min,Predictable layout,Expensive measure,High,https://developer.android.com/jetpack/compose/layout/intrinsics
33
+ 32,Layout,Use Arrangement and Alignment APIs,Declare layout intent explicitly,Use Arrangement / Alignment,Manual spacing hacks,Declarative spacing,Magic spacing,High,
34
+ 33,Layout,Extract reusable layout patterns,Repeated layouts should be shared,Create layout composable,Copy-paste layouts,Reusable scaffold,Duplicated layout,High,
35
+ 34,Theming,No hardcoded text style,Use typography,MaterialTheme.typography,Hardcode sp,Scalable,Inconsistent,Medium,
36
+ 35,Testing,Stateless UI testing,Composable easy to test,Pass state,Hidden state,Testable,Hard test,High,https://developer.android.com/jetpack/compose/testing
37
+ 36,Testing,Use testTag,Stable UI selectors,Modifier.testTag,Find by text,Stable tests,Flaky tests,Medium,
38
+ 37,Preview,Multiple previews,Preview multiple states,@Preview,Single preview,Better dev UX,Misleading,Low,https://developer.android.com/jetpack/compose/tooling/preview
39
+ 38,DI,Inject VM via Hilt,Use hiltViewModel,@HiltViewModel,Manual VM,Clean DI,Coupling,High,https://developer.android.com/training/dependency-injection/hilt-jetpack
40
+ 39,DI,No DI in UI,Inject in VM,Constructor inject,Inject composable,Proper scope,Wrong scope,High,
41
+ 40,Accessibility,Content description,Accessible UI,contentDescription,Ignore a11y,Inclusive,A11y fail,Medium,https://developer.android.com/jetpack/compose/accessibility
42
+ 41,Accessibility,Semantics,Use semantics API,Modifier.semantics,None,Testable a11y,Invisible,Medium,
43
+ 42,Animation,Compose animation APIs,Use animate*AsState,AnimatedVisibility,Manual anim,Smooth,Jank,Medium,https://developer.android.com/jetpack/compose/animation
44
+ 43,Animation,Avoid animation logic in VM,Animation is UI concern,Animate in UI,Animate in VM,Correct layering,Mixed concern,Low,
45
+ 44,Modularization,Feature-based UI modules,UI per feature,:feature:ui,God module,Scalable,Tight coupling,High,https://developer.android.com/topic/modularization
46
+ 45,Modularization,Public UI contracts,Expose minimal UI API,Interface/Route,Expose impl,Encapsulated,Leaky module,Medium,
47
+ 46,State,Snapshot state only,Use Compose state,mutableStateOf,Custom observable,Compose aware,Buggy UI,Medium,
48
+ 47,State,Avoid mutable collections,Immutable list/map,PersistentList,MutableList,Stable UI,Silent bug,High,
49
+ 48,Lifecycle,RememberCoroutineScope usage,Only for UI jobs,UI coroutine,Long jobs,Scoped job,Leak,Medium,https://developer.android.com/jetpack/compose/side-effects#remembercoroutinescope
50
+ 49,Interop,Interop View carefully,Use AndroidView,Isolated usage,Mix everywhere,Safe interop,Messy UI,Low,https://developer.android.com/jetpack/compose/interop
51
+ 50,Interop,Avoid legacy patterns,No LiveData in UI,StateFlow,LiveData,Modern stack,Legacy debt,Medium,
52
+ 51,Debug,Use layout inspector,Inspect recomposition,Tools,Blind debug,Fast debug,Guessing,Low,https://developer.android.com/studio/debug/layout-inspector
53
+ 52,Debug,Enable recomposition counts,Track recomposition,Debug flags,Ignore,Performance aware,Hidden jank,Low,
@@ -0,0 +1,51 @@
1
+ No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL
2
+ 1,Blade Templates,Use Blade components for reusable UI,Extract repeated markup into named Blade components,Use x-* components with @props for all reusable UI,Duplicate HTML blocks across views,<x-card :title="$title">{{ $slot }}</x-card>,@include('card' ['title' => $title]),High,https://laravel.com/docs/blade#components
3
+ 2,Blade Templates,Use layouts with @extends and @section,Define one master layout and extend it per page,@extends layout with named @section blocks,Duplicate header/footer HTML in every view,@extends('layouts.app') @section('content'),Full HTML in every view file,High,https://laravel.com/docs/blade#layouts-using-template-inheritance
4
+ 3,Blade Templates,Use @props for component type-safety,Declare accepted props inside components with @props,@props with defaults to document component API,Pass arbitrary variables without declaration,@props(['title' => '' 'variant' => 'primary']),No @props declaration in component,Medium,https://laravel.com/docs/blade#component-data-and-attributes
5
+ 4,Blade Templates,Use conditional CSS classes with @class,Build class strings conditionally without ternary noise,@class directive for conditional class binding,String concatenation or nested ternaries,@class(['btn' 'btn-primary' => $primary 'btn-disabled' => $disabled]),class="btn {{ $primary ? 'btn-primary' : '' }}",Medium,https://laravel.com/docs/blade#conditional-classes-and-styles
6
+ 5,Blade Templates,Use named slots for flexible layouts,Named slots let callers inject content into specific regions,@slot('header') and $slot for flexible component APIs,Hard-code all sub-sections inside components,"<x-modal><x-slot:header>Title</x-slot>Body</x-modal>",<x-modal title="Title">Body with no slot control</x-modal>,Medium,https://laravel.com/docs/blade#slots
7
+ 6,Blade Templates,Use Blade directives instead of raw PHP,Blade directives are readable and IDE-supported,@if @foreach @forelse @empty instead of <?php ?>,Raw PHP tags inside Blade templates,@forelse($items as $item) ... @empty <p>None</p> @endforelse,<?php foreach($items as $item): ?>,High,https://laravel.com/docs/blade#blade-directives
8
+ 7,Blade Templates,Escape output with {{ }},Use double curly braces for XSS-safe output,{{ }} for all user-supplied or dynamic text,{!! !!} for untrusted data,{{ $user->name }},{!! $user->name !!},High,https://laravel.com/docs/blade#displaying-data
9
+ 8,Blade Templates,Use @vite for asset loading,Vite integration handles cache busting and HMR automatically,@vite(['resources/css/app.css' 'resources/js/app.js']),Manual script/link tags with hardcoded paths,@vite(['resources/css/app.css' 'resources/js/app.js']),<link href="/css/app.css?v=123">,High,https://laravel.com/docs/vite
10
+ 9,Livewire,Bind inputs with wire:model,Two-way data binding keeps component state in sync,wire:model for all form inputs managed by Livewire,Manual JavaScript listeners syncing to component,<input wire:model="email">,<input @change="$wire.email = $event.target.value">,High,https://livewire.laravel.com/docs/properties
11
+ 10,Livewire,Use wire:model.live for real-time validation,Validate on input rather than only on submit,wire:model.live + #[Validate] for instant feedback,Only validate on form submit,<input wire:model.live="email"> with #[Validate('email')],<input wire:model="email"> with validate() on submit only,Medium,https://livewire.laravel.com/docs/validation
12
+ 11,Livewire,Use wire:click for actions,Bind UI events to component methods cleanly,wire:click for buttons and interactive elements,JavaScript fetch calls replicating Livewire actions,<button wire:click="save">Save</button>,<button onclick="fetch('/save')">Save</button>,High,https://livewire.laravel.com/docs/actions
13
+ 12,Livewire,Use lifecycle hooks appropriately,mount() for init; updated() for reactive side effects,mount() for initialization updatedFoo() for property changes,Heavy logic in render() or __construct(),public function mount(): void { $this->items = Item::all(); },public function render(): View { $this->items = Item::all(); },Medium,https://livewire.laravel.com/docs/lifecycle-hooks
14
+ 13,Livewire,Use lazy loading for heavy components,Defer render of expensive components until visible,wire:init or lazy attribute on components,Load all Livewire components on page load,<livewire:analytics-chart lazy />,<livewire:analytics-chart /> with heavy DB queries on mount,Medium,https://livewire.laravel.com/docs/lazy
15
+ 14,Livewire,Integrate Alpine.js for local UI state,Use Alpine.js for UI-only state that doesn't need server round-trips,x-data / x-show / x-transition for tooltips dropdowns,Livewire server calls for purely visual toggle state,<div x-data="{ open: false }"><button @click="open = !open">,<button wire:click="toggleDropdown"> for a local dropdown,Medium,https://livewire.laravel.com/docs/alpine
16
+ 15,Livewire,Use wire:loading for feedback,Always indicate to users when a server action is in progress,wire:loading.attr="disabled" and wire:loading elements,Provide no feedback while Livewire request is in flight,<button wire:click="save" wire:loading.attr="disabled">Save</button>,<button wire:click="save">Save</button> with no loading state,High,https://livewire.laravel.com/docs/wire-loading
17
+ 16,Livewire,Handle file uploads with WithFileUploads,Livewire's trait manages chunked upload and temp storage,WithFileUploads trait + wire:model for file inputs,Manual multipart form submissions for Livewire pages,use WithFileUploads; public $photo; <input wire:model="photo" type="file">,<form action="/upload" method="POST" enctype="multipart/form-data">,Medium,https://livewire.laravel.com/docs/uploads
18
+ 17,Inertia.js,Use Inertia page components as route endpoints,Each page is a Vue/React component rendered server-side via Inertia::render(),Inertia::render('Dashboard' ['data' => $data]) in controllers,Return JSON and fetch from JavaScript,return Inertia::render('Users/Index' ['users' => $users]);,return response()->json($users); with client-side fetch,High,https://inertiajs.com/responses
19
+ 18,Inertia.js,Share global data via HandleInertiaRequests,Middleware share() provides auth user and flash to every page,Share auth/flash in HandleInertiaRequests middleware,Pass auth to every Inertia::render() call,public function share(Request $r): array { return ['auth' => ['user' => $r->user()]]; },Inertia::render('Page' ['auth' => auth()->user()]) every controller,High,https://inertiajs.com/shared-data
20
+ 19,Inertia.js,Use <Link> for client-side navigation,Inertia Link intercepts clicks for SPA-like transitions,<Link href="/dashboard"> instead of <a href>,Regular <a> tags for internal navigation,<Link href={route('dashboard')}>Dashboard</Link>,<a href="/dashboard">Dashboard</a>,High,https://inertiajs.com/links
21
+ 20,Inertia.js,Use useForm for form state and submission,Inertia's useForm manages progress errors and transforms,"useForm for all page-level forms, form.post() for submit",Axios/fetch for form submissions on Inertia pages,"const form = useForm({ name: '' }); form.post('/users');","axios.post('/users', { name });",High,https://inertiajs.com/forms
22
+ 21,Inertia.js,Use persistent layouts to preserve state,Wrap pages in a persistent layout so header/sidebar don't remount,layout property on page component for persistent UI,Re-render full layout on every page visit,MyPage.layout = (page) => <AppLayout>{page}</AppLayout>,No layout — full page reload feel on navigation,Medium,https://inertiajs.com/pages#persistent-layouts
23
+ 22,Inertia.js,Enable SSR for public pages,Server-side rendering improves SEO and first paint,Enable Inertia SSR for marketing and public pages,Client-only rendering for all pages including public,php artisan inertia:start-ssr with @inertiaHead,No SSR on pages requiring good SEO,Medium,https://inertiajs.com/server-side-rendering
24
+ 23,Styling,Set up Tailwind CSS via Vite,Use Vite + tailwindcss plugin for fast HMR and optimized builds,Install tailwindcss @tailwindcss/vite and configure vite.config.js,Laravel Mix or manual PostCSS pipeline for new projects,plugins: [tailwindcss()] in vite.config.js + @import 'tailwindcss' in app.css,Laravel Mix with require('tailwindcss') in webpack,High,https://tailwindcss.com/docs/installation/framework-guides
25
+ 24,Styling,Purge unused styles via content config,Tailwind scans Blade and JS files to tree-shake unused classes,content: ['./resources/views/**/*.blade.php' './resources/js/**/*.{js,vue}'],No content config — ship all 3MB of CSS,content: ['./resources/**/*.blade.php' './resources/**/*.js'],content: [],High,https://tailwindcss.com/docs/content-configuration
26
+ 25,Styling,Use dark mode class strategy,class-based dark mode integrates with server-rendered preference,darkMode: 'class' with a toggle that sets class on <html>,Media query only — no user override possible,darkMode: 'class'; document.documentElement.classList.toggle('dark'),darkMode: 'media' — no programmatic control,Medium,https://tailwindcss.com/docs/dark-mode
27
+ 26,Styling,Use @apply sparingly in component CSS,Extract only truly repeated multi-class patterns,@apply for BEM base classes shared across many components,@apply for every single element — defeats Tailwind's purpose,@apply flex items-center gap-2 (shared button base),@apply text-sm for a single use,Low,https://tailwindcss.com/docs/functions-and-directives#apply
28
+ 27,Styling,Configure custom design tokens in CSS,Define brand colors spacing fonts as CSS variables consumed by Tailwind,Custom @theme tokens matched to brand guidelines,Magic color hex codes scattered across Blade templates,@theme { --color-brand: oklch(0.6 0.2 250); },bg-[#1a2b3c] inline throughout templates,Medium,https://tailwindcss.com/docs/theme
29
+ 28,Components,Use anonymous Blade components for UI primitives,Blade files in resources/views/components/ auto-register as x-* components,Anonymous components for buttons alerts badges cards,Blade @includes for anything reusable,<x-badge variant="success">Active</x-badge>,@include('partials.badge' ['variant' => 'success']),Medium,https://laravel.com/docs/blade#anonymous-components
30
+ 29,Components,Use class-based components for complex logic,PHP class components can inject services and pre-process data,app/View/Components/ class when component needs PHP logic,Blade @php blocks for business logic inside templates,class AlertComponent { public function __construct(public string $type) {} },@php $color = $type === 'error' ? 'red' : 'green'; @endphp,Medium,https://laravel.com/docs/blade#components
31
+ 30,Components,Forward extra attributes with $attributes,Pass through HTML attributes like class id aria to root element,$attributes->merge() on root element of components,Ignore caller-provided HTML attributes silently,<div {{ $attributes->merge(['class' => 'btn']) }}>,<div class="btn"> — drops extra class/id from caller,High,https://laravel.com/docs/blade#component-attributes
32
+ 31,Components,Separate variant logic from templates,Keep variant/size/color logic in a PHP class or helper not in Blade,Variant class or match() expression in component class,Long @if chains for variants inside Blade templates,"public function classes(): string { return match($this->variant) { 'primary' => 'bg-blue-600', } }","@if($variant === 'primary') bg-blue-600 @elseif($variant === 'secondary')...",Medium,https://laravel.com/docs/blade#components
33
+ 32,Components,Provide default slot content,Use {{ $slot ?? '' }} or named slot defaults so components are usable empty,Default content in slots for optional regions,Require every slot to be filled — throws errors on empty usage,{{ $icon ?? '' }} in component Blade file,{{ $icon }} — fatal if caller omits slot,Low,https://laravel.com/docs/blade#slots
34
+ 33,Components,Use component namespacing for packages,Prefix third-party or module components to avoid collisions,Register custom prefix via Blade::componentNamespace(),Mix first-party and package component names with no prefix,Blade::componentNamespace('Modules\\Shop\\Views' 'shop'); <x-shop::product-card />,<x-product-card /> colliding with first-party card,Low,https://laravel.com/docs/blade#manually-registering-components
35
+ 34,Forms,Validate with Form Request classes,Move validation rules out of controllers into dedicated FormRequest classes,php artisan make:request and define rules() + authorize(),Inline validate() in controller actions,class StorePostRequest extends FormRequest { public function rules() { return ['title' => 'required|max:255']; } },public function store(Request $r) { $r->validate(['title' => 'required']); },High,https://laravel.com/docs/validation#form-request-validation
36
+ 35,Forms,Preserve old input on validation failure,Use old() to repopulate form fields after server-side error redirect,old('field') as default value on all form inputs,Empty form fields when validation fails,<input name="email" value="{{ old('email') }}">,<input name="email">,High,https://laravel.com/docs/validation#repopulating-forms
37
+ 36,Forms,Display validation errors with @error,Use the @error directive for inline field-level error messages,@error('field') to show per-field messages,Dump $errors->all() in one block at top of form,@error('email') <p class="text-red-500">{{ $message }}</p> @enderror,@foreach($errors->all() as $e) {{ $e }} @endforeach,Medium,https://laravel.com/docs/validation#quick-displaying-the-validation-errors
38
+ 37,Forms,Use CSRF token on all forms,CSRF protection is enabled by default — include @csrf in every form,@csrf in every POST/PUT/PATCH/DELETE form,Disable VerifyCsrfToken middleware for convenience,<form method="POST">@csrf ...,<form method="POST"> without @csrf,High,https://laravel.com/docs/csrf
39
+ 38,Forms,Use method spoofing for PUT/PATCH/DELETE,HTML forms only support GET/POST — use @method for REST actions,@method('PUT') inside form for update/delete routes,Route::post for all mutations including updates,"<form method=""POST"">@csrf @method('PUT')",<form method="POST" action="/users/update">,Medium,https://laravel.com/docs/routing#form-method-spoofing
40
+ 39,Forms,Display flash messages consistently,Flash success/error in controller; read in layout with session(),session('status') in layout for global flash display,Re-query DB or pass flash from every controller individually,@if(session('success')) <div class="alert">{{ session('success') }}</div> @endif,if($user) return back()->with(['user' => $user]);,Medium,https://laravel.com/docs/session#flash-data
41
+ 40,Performance,Eager load relationships to prevent N+1,Always eager load related models used in views with with(),with() in queries before passing collections to views,Lazy-load relations inside Blade loops,User::with('posts' 'avatar')->get(),User::all() then @foreach $user->posts in Blade,High,https://laravel.com/docs/eloquent-relationships#eager-loading
42
+ 41,Performance,Cache rendered Blade fragments,Use cache() helper to wrap expensive rendered partials,cache() around slow partials that change infrequently,Re-render identical content on every request,@php echo cache()->remember('sidebar' 3600 fn() => view('sidebar')->render()); @endphp,{{ view('sidebar')->render() }} on every page load,Medium,https://laravel.com/docs/cache
43
+ 42,Performance,Paginate large data sets,Always paginate collections in list views,->paginate() or ->simplePaginate() with {{ $items->links() }},->get() for large tables in views,User::paginate(20) with <x-pagination :links="$users" />,User::all() passed to Blade,High,https://laravel.com/docs/pagination
44
+ 43,Performance,Queue slow background tasks,Offload emails notifications and heavy processing to queues,Dispatch jobs for anything taking >200ms,Block HTTP request with slow operations,ProcessImage::dispatch($file); return back();,Storage::put(); Mail::send(); Image::resize(); in controller,High,https://laravel.com/docs/queues
45
+ 44,Performance,Use route model binding,Laravel resolves models automatically — avoids manual find(),Type-hint model in controller method,Manual User::findOrFail($id) in every method,public function show(User $user): View { return view('users.show' compact('user')); },public function show($id) { $user = User::findOrFail($id); },Medium,https://laravel.com/docs/routing#route-model-binding
46
+ 45,Performance,Enable HTTP response caching for static content,Cache control headers for pages that rarely change,Cache-Control headers via middleware for public pages,No caching — serve every response fresh,response()->view('home')->header('Cache-Control' 'public, max-age=3600'),No cache headers on marketing pages,Medium,https://laravel.com/docs/responses#response-headers
47
+ 46,Security,Escape all output in Blade,{{ }} auto-escapes HTML — never use {!! !!} on user data,{{ }} for all untrusted or dynamic content,{!! !!} for user-controlled strings,{{ $comment->body }},{!! $comment->body !!},High,https://laravel.com/docs/blade#displaying-data
48
+ 47,Security,Protect routes with Gate and Policy,Use policies for authorization — never inline permission checks in views,@can / Gate::allows() for UI visibility; policy()->authorize() for actions,Hardcode role checks inline across templates,@can('update' $post) <a href="{{ route('posts.edit' $post) }}">Edit</a> @endcan,@if(auth()->user()->role === 'admin') <a href="/edit">,High,https://laravel.com/docs/authorization#policies
49
+ 48,Security,Validate and authorize file uploads,Check MIME type size and store outside public root,Store in storage/app/private + validate mimes and max,Store raw upload in public/ without validation,"'avatar' => ['required' 'image' 'mimes:jpg,png' 'max:2048']",'avatar' => 'required' with no MIME or size check,High,https://laravel.com/docs/filesystem#file-uploads
50
+ 49,Security,Use signed URLs for temporary links,Generate expiring URLs for private downloads or email confirmations,URL::signedRoute() or temporarySignedRoute(),Expose sequential IDs in download URLs without auth,URL::temporarySignedRoute('file.download' now()->addMinutes(30) ['file' => $id]),route('file.download' $id) with no expiry or signature,High,https://laravel.com/docs/urls#signed-urls
51
+ 50,Security,Set a strict Content Security Policy,CSP headers prevent XSS injection of external scripts,spatie/laravel-csp or custom middleware to emit CSP header,No CSP — browser runs any injected script,Header: Content-Security-Policy: default-src 'self'; script-src 'self',No Content-Security-Policy header on responses,Medium,https://laravel.com/docs/middleware
@@ -0,0 +1,53 @@
1
+ No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL
2
+ 1,Routing,Use App Router for new projects,App Router is the recommended approach in Next.js 14+,app/ directory with page.tsx,pages/ for new projects,app/dashboard/page.tsx,pages/dashboard.tsx,Medium,https://nextjs.org/docs/app
3
+ 2,Routing,Use file-based routing,Create routes by adding files in app directory,page.tsx for routes layout.tsx for layouts,Manual route configuration,app/blog/[slug]/page.tsx,Custom router setup,Medium,https://nextjs.org/docs/app/building-your-application/routing
4
+ 3,Routing,Colocate related files,Keep components styles tests with their routes,Component files alongside page.tsx,Separate components folder,app/dashboard/_components/,components/dashboard/,Low,
5
+ 4,Routing,Use route groups for organization,Group routes without affecting URL,Parentheses for route groups,Nested folders affecting URL,(marketing)/about/page.tsx,marketing/about/page.tsx,Low,https://nextjs.org/docs/app/building-your-application/routing/route-groups
6
+ 5,Routing,Handle loading states,Use loading.tsx for route loading UI,loading.tsx alongside page.tsx,Manual loading state management,app/dashboard/loading.tsx,useState for loading in page,Medium,https://nextjs.org/docs/app/building-your-application/routing/loading-ui-and-streaming
7
+ 6,Routing,Handle errors with error.tsx,Catch errors at route level,error.tsx with reset function,try/catch in every component,app/dashboard/error.tsx,try/catch in page component,High,https://nextjs.org/docs/app/building-your-application/routing/error-handling
8
+ 7,Rendering,Use Server Components by default,Server Components reduce client JS bundle,Keep components server by default,Add 'use client' unnecessarily,export default function Page(),('use client') for static content,High,https://nextjs.org/docs/app/building-your-application/rendering/server-components
9
+ 8,Rendering,Mark Client Components explicitly,'use client' for interactive components,Add 'use client' only when needed,Server Component with hooks/events,('use client') for onClick useState,No directive with useState,High,https://nextjs.org/docs/app/building-your-application/rendering/client-components
10
+ 9,Rendering,Push Client Components down,Keep Client Components as leaf nodes,Client wrapper for interactive parts only,Mark page as Client Component,<InteractiveButton/> in Server Page,('use client') on page.tsx,High,
11
+ 10,Rendering,Use streaming for better UX,Stream content with Suspense boundaries,Suspense for slow data fetches,Wait for all data before render,<Suspense><SlowComponent/></Suspense>,await allData then render,Medium,https://nextjs.org/docs/app/building-your-application/routing/loading-ui-and-streaming
12
+ 11,Rendering,Choose correct rendering strategy,SSG for static SSR for dynamic ISR for semi-static,generateStaticParams for known paths,SSR for static content,export const revalidate = 3600,fetch without cache config,Medium,
13
+ 12,DataFetching,Fetch data in Server Components,Fetch directly in async Server Components,async function Page() { const data = await fetch() },useEffect for initial data,const data = await fetch(url),useEffect(() => fetch(url)),High,https://nextjs.org/docs/app/building-your-application/data-fetching
14
+ 13,DataFetching,Configure caching explicitly (Next.js 15+),Next.js 15 changed defaults to uncached for fetch,Explicitly set cache: 'force-cache' for static data,Assume default is cached (it's not in Next.js 15),fetch(url { cache: 'force-cache' }),fetch(url) // Uncached in v15,High,https://nextjs.org/docs/app/building-your-application/upgrading/version-15
15
+ 14,DataFetching,Deduplicate fetch requests,React and Next.js dedupe same requests,Same fetch call in multiple components,Manual request deduplication,Multiple components fetch same URL,Custom cache layer,Low,
16
+ 15,DataFetching,Use Server Actions for mutations,Server Actions for form submissions,action={serverAction} in forms,API route for every mutation,<form action={createPost}>,<form onSubmit={callApiRoute}>,Medium,https://nextjs.org/docs/app/building-your-application/data-fetching/server-actions-and-mutations
17
+ 16,DataFetching,Revalidate data appropriately,Use revalidatePath/revalidateTag after mutations,Revalidate after Server Action,'use client' with manual refetch,revalidatePath('/posts'),router.refresh() everywhere,Medium,https://nextjs.org/docs/app/building-your-application/caching#revalidating
18
+ 17,Images,Use next/image for optimization,Automatic image optimization and lazy loading,<Image> component for all images,<img> tags directly,<Image src={} alt={} width={} height={}>,<img src={}/>,High,https://nextjs.org/docs/app/building-your-application/optimizing/images
19
+ 18,Images,Provide width and height,Prevent layout shift with dimensions,width and height props or fill,Missing dimensions,<Image width={400} height={300}/>,<Image src={url}/>,High,
20
+ 19,Images,Use fill for responsive images,Fill container with object-fit,fill prop with relative parent,Fixed dimensions for responsive,"<Image fill className=""object-cover""/>",<Image width={window.width}/>,Medium,
21
+ 20,Images,Configure remote image domains,Whitelist external image sources,remotePatterns in next.config.js,Allow all domains,remotePatterns: [{ hostname: 'cdn.example.com' }],domains: ['*'],High,https://nextjs.org/docs/app/api-reference/components/image#remotepatterns
22
+ 21,Images,Use priority for LCP images,Mark above-fold images as priority,priority prop on hero images,All images with priority,<Image priority src={hero}/>,<Image priority/> on every image,Medium,
23
+ 22,Fonts,Use next/font for fonts,Self-hosted fonts with zero layout shift,next/font/google or next/font/local,External font links,import { Inter } from 'next/font/google',"<link href=""fonts.googleapis.com""/>",Medium,https://nextjs.org/docs/app/building-your-application/optimizing/fonts
24
+ 23,Fonts,Apply font to layout,Set font in root layout for consistency,className on body in layout.tsx,Font in individual pages,<body className={inter.className}>,Each page imports font,Low,
25
+ 24,Fonts,Use variable fonts,Variable fonts reduce bundle size,Single variable font file,Multiple font weights as files,Inter({ subsets: ['latin'] }),Inter_400 Inter_500 Inter_700,Low,
26
+ 25,Metadata,Use generateMetadata for dynamic,Generate metadata based on params,export async function generateMetadata(),Hardcoded metadata everywhere,generateMetadata({ params }),export const metadata = {},Medium,https://nextjs.org/docs/app/building-your-application/optimizing/metadata
27
+ 26,Metadata,Include OpenGraph images,Add OG images for social sharing,opengraph-image.tsx or og property,Missing social preview images,opengraph: { images: ['/og.png'] },No OG configuration,Medium,
28
+ 27,Metadata,Use metadata API,Export metadata object for static metadata,export const metadata = {},Manual head tags,export const metadata = { title: 'Page' },<head><title>Page</title></head>,Medium,
29
+ 28,API,Use Route Handlers for APIs,app/api routes for API endpoints,app/api/users/route.ts,pages/api for new projects,export async function GET(request),export default function handler,Medium,https://nextjs.org/docs/app/building-your-application/routing/route-handlers
30
+ 29,API,Return proper Response objects,Use NextResponse for API responses,NextResponse.json() for JSON,Plain objects or res.json(),return NextResponse.json({ data }),return { data },Medium,
31
+ 30,API,Handle HTTP methods explicitly,Export named functions for methods,Export GET POST PUT DELETE,Single handler for all methods,export async function POST(),switch(req.method),Low,
32
+ 31,API,Validate request body,Validate input before processing,Zod or similar for validation,Trust client input,const body = schema.parse(await req.json()),const body = await req.json(),High,
33
+ 32,Middleware,Use middleware for auth,Protect routes with middleware.ts,middleware.ts at root,Auth check in every page,export function middleware(request),if (!session) redirect in page,Medium,https://nextjs.org/docs/app/building-your-application/routing/middleware
34
+ 33,Middleware,Match specific paths,Configure middleware matcher,config.matcher for specific routes,Run middleware on all routes,matcher: ['/dashboard/:path*'],No matcher config,Medium,
35
+ 34,Middleware,Keep middleware edge-compatible,Middleware runs on Edge runtime,Edge-compatible code only,Node.js APIs in middleware,Edge-compatible auth check,fs.readFile in middleware,High,
36
+ 35,Environment,Use NEXT_PUBLIC prefix,Client-accessible env vars need prefix,NEXT_PUBLIC_ for client vars,Server vars exposed to client,NEXT_PUBLIC_API_URL,API_SECRET in client code,High,https://nextjs.org/docs/app/building-your-application/configuring/environment-variables
37
+ 36,Environment,Validate env vars,Check required env vars exist,Validate on startup,Undefined env at runtime,if (!process.env.DATABASE_URL) throw,process.env.DATABASE_URL (might be undefined),High,
38
+ 37,Environment,Use .env.local for secrets,Local env file for development secrets,.env.local gitignored,Secrets in .env committed,.env.local with secrets,.env with DATABASE_PASSWORD,High,
39
+ 38,Performance,Analyze bundle size,Use @next/bundle-analyzer,Bundle analyzer in dev,Ship large bundles blindly,ANALYZE=true npm run build,No bundle analysis,Medium,https://nextjs.org/docs/app/building-your-application/optimizing/bundle-analyzer
40
+ 39,Performance,Use dynamic imports,Code split with next/dynamic,dynamic() for heavy components,Import everything statically,const Chart = dynamic(() => import('./Chart')),import Chart from './Chart',Medium,https://nextjs.org/docs/app/building-your-application/optimizing/lazy-loading
41
+ 40,Performance,Avoid layout shifts,Reserve space for dynamic content,Skeleton loaders aspect ratios,Content popping in,"<Skeleton className=""h-48""/>",No placeholder for async content,High,
42
+ 41,Performance,Use Partial Prerendering,Combine static and dynamic in one route,Static shell with Suspense holes,Full dynamic or static pages,Static header + dynamic content,Entire page SSR,Low,https://nextjs.org/docs/app/building-your-application/rendering/partial-prerendering
43
+ 42,Link,Use next/link for navigation,Client-side navigation with prefetching,"<Link href=""""> for internal links",<a> for internal navigation,"<Link href=""/about"">About</Link>","<a href=""/about"">About</a>",High,https://nextjs.org/docs/app/api-reference/components/link
44
+ 43,Link,Prefetch strategically,Control prefetching behavior,prefetch={false} for low-priority,Prefetch all links,<Link prefetch={false}>,Default prefetch on every link,Low,
45
+ 44,Link,Use scroll option appropriately,Control scroll behavior on navigation,scroll={false} for tabs pagination,Always scroll to top,<Link scroll={false}>,Manual scroll management,Low,
46
+ 45,Config,Use next.config.js correctly,Configure Next.js behavior,Proper config options,Deprecated or wrong options,images: { remotePatterns: [] },images: { domains: [] },Medium,https://nextjs.org/docs/app/api-reference/next-config-js
47
+ 46,Config,Enable strict mode,Catch potential issues early,reactStrictMode: true,Strict mode disabled,reactStrictMode: true,reactStrictMode: false,Medium,
48
+ 47,Config,Configure redirects and rewrites,Use config for URL management,redirects() rewrites() in config,Manual redirect handling,redirects: async () => [...],res.redirect in pages,Medium,https://nextjs.org/docs/app/api-reference/next-config-js/redirects
49
+ 48,Deployment,Use Vercel for easiest deploy,Vercel optimized for Next.js,Deploy to Vercel,Self-host without knowledge,vercel deploy,Complex Docker setup for simple app,Low,https://nextjs.org/docs/app/building-your-application/deploying
50
+ 49,Deployment,Configure output for self-hosting,Set output option for deployment target,output: 'standalone' for Docker,Default output for containers,output: 'standalone',No output config for Docker,Medium,https://nextjs.org/docs/app/building-your-application/deploying#self-hosting
51
+ 50,Security,Sanitize user input,Never trust user input,Escape sanitize validate all input,Direct interpolation of user data,DOMPurify.sanitize(userInput),dangerouslySetInnerHTML={{ __html: userInput }},High,
52
+ 51,Security,Use CSP headers,Content Security Policy for XSS protection,Configure CSP in next.config.js,No security headers,headers() with CSP,No CSP configuration,High,https://nextjs.org/docs/app/building-your-application/configuring/content-security-policy
53
+ 52,Security,Validate Server Action input,Server Actions are public endpoints,Validate and authorize in Server Action,Trust Server Action input,Auth check + validation in action,Direct database call without check,High,
@@ -0,0 +1,51 @@
1
+ No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL
2
+ 1,Installation,Add Nuxt UI module,Install and configure Nuxt UI in your Nuxt project,pnpm add @nuxt/ui and add to modules,Manual component imports,"modules: ['@nuxt/ui']","import { UButton } from '@nuxt/ui'",High,https://ui.nuxt.com/docs/getting-started/installation/nuxt
3
+ 2,Installation,Import Tailwind and Nuxt UI CSS,Required CSS imports in main.css file,@import tailwindcss and @import @nuxt/ui,Skip CSS imports,"@import ""tailwindcss""; @import ""@nuxt/ui"";",No CSS imports,High,https://ui.nuxt.com/docs/getting-started/installation/nuxt
4
+ 3,Installation,Wrap app with UApp component,UApp provides global configs for Toast Tooltip and overlays,<UApp> wrapper in app.vue,Skip UApp wrapper,<UApp><NuxtPage/></UApp>,<NuxtPage/> without wrapper,High,https://ui.nuxt.com/docs/components/app
5
+ 4,Components,Use U prefix for components,All Nuxt UI components use U prefix by default,UButton UInput UModal,Button Input Modal,<UButton>Click</UButton>,<Button>Click</Button>,Medium,https://ui.nuxt.com/docs/getting-started/installation/nuxt
6
+ 5,Components,Use semantic color props,Use semantic colors like primary secondary error,color="primary" color="error",Hardcoded colors,"<UButton color=""primary"">","<UButton class=""bg-green-500"">",Medium,https://ui.nuxt.com/docs/getting-started/theme/design-system
7
+ 6,Components,Use variant prop for styling,Nuxt UI provides solid outline soft subtle ghost link variants,variant="soft" variant="outline",Custom button classes,"<UButton variant=""soft"">","<UButton class=""border bg-transparent"">",Medium,https://ui.nuxt.com/docs/components/button
8
+ 7,Components,Use size prop consistently,Components support xs sm md lg xl sizes,size="sm" size="lg",Arbitrary sizing classes,"<UButton size=""lg"">","<UButton class=""text-xl px-6"">",Low,https://ui.nuxt.com/docs/components/button
9
+ 8,Icons,Use icon prop with Iconify format,Nuxt UI supports Iconify icons via icon prop,icon="lucide:home" icon="heroicons:user",i-lucide-home format,"<UButton icon=""lucide:home"">","<UButton icon=""i-lucide-home"">",Medium,https://ui.nuxt.com/docs/getting-started/integrations/icons/nuxt
10
+ 9,Icons,Use leadingIcon and trailingIcon,Position icons with dedicated props for clarity,leadingIcon="lucide:plus" trailingIcon="lucide:arrow-right",Manual icon positioning,"<UButton leadingIcon=""lucide:plus"">","<UButton><Icon name=""lucide:plus""/>Add</UButton>",Low,https://ui.nuxt.com/docs/components/button
11
+ 10,Theming,Configure colors in app.config.ts,Runtime color configuration without restart,ui.colors.primary in app.config.ts,Hardcoded colors in components,"defineAppConfig({ ui: { colors: { primary: 'blue' } } })","<UButton class=""bg-blue-500"">",High,https://ui.nuxt.com/docs/getting-started/theme/design-system
12
+ 11,Theming,Use @theme directive for custom colors,Define design tokens in CSS with Tailwind @theme,@theme { --color-brand-500: #xxx },Inline color definitions,@theme { --color-brand-500: #ef4444; },:style="{ color: '#ef4444' }",Medium,https://ui.nuxt.com/docs/getting-started/theme/design-system
13
+ 12,Theming,Extend semantic colors in nuxt.config,Register new colors like tertiary in theme.colors,theme.colors array in ui config,Use undefined colors,"ui: { theme: { colors: ['primary', 'tertiary'] } }","<UButton color=""tertiary""> without config",Medium,https://ui.nuxt.com/docs/getting-started/theme/design-system
14
+ 13,Forms,Use UForm with schema validation,UForm supports Zod Yup Joi Valibot schemas,:schema prop with validation schema,Manual form validation,"<UForm :schema=""schema"" :state=""state"">",Manual @blur validation,High,https://ui.nuxt.com/docs/components/form
15
+ 14,Forms,Use UFormField for field wrapper,Provides label error message and validation display,UFormField with name prop,Manual error handling,"<UFormField name=""email"" label=""Email"">",<div><label>Email</label><UInput/><span>error</span></div>,Medium,https://ui.nuxt.com/docs/components/form-field
16
+ 15,Forms,Handle form submit with @submit,UForm emits submit event with validated data,@submit handler on UForm,@click on submit button,"<UForm @submit=""onSubmit"">","<UButton @click=""onSubmit"">",Medium,https://ui.nuxt.com/docs/components/form
17
+ 16,Forms,Use validateOn prop for validation timing,Control when validation triggers (blur change input),validateOn="['blur']" for performance,Always validate on input,"<UForm :validateOn=""['blur', 'change']"">","<UForm> (validates on every keystroke)",Low,https://ui.nuxt.com/docs/components/form
18
+ 17,Overlays,Use v-model:open for overlay control,Modal Slideover Drawer use v-model:open,v-model:open for controlled state,Manual show/hide logic,"<UModal v-model:open=""isOpen"">",<UModal v-if="isOpen">,Medium,https://ui.nuxt.com/docs/components/modal
19
+ 18,Overlays,Use useOverlay composable for programmatic overlays,Open overlays programmatically without template refs,useOverlay().open(MyModal),Template ref and manual control,"const overlay = useOverlay(); overlay.open(MyModal, { props })","const modal = ref(); modal.value.open()",Medium,https://ui.nuxt.com/docs/components/modal
20
+ 19,Overlays,Use title and description props,Built-in header support for overlays,title="Confirm" description="Are you sure?",Manual header content,"<UModal title=""Confirm"" description=""Are you sure?"">","<UModal><template #header><h2>Confirm</h2></template>",Low,https://ui.nuxt.com/docs/components/modal
21
+ 20,Dashboard,Use UDashboardSidebar for navigation,Provides collapsible resizable sidebar with mobile support,UDashboardSidebar with header default footer slots,Custom sidebar implementation,<UDashboardSidebar><template #header>...</template></UDashboardSidebar>,<aside class="w-64 border-r">,Medium,https://ui.nuxt.com/docs/components/dashboard-sidebar
22
+ 21,Dashboard,Use UDashboardGroup for layout,Wraps dashboard components with sidebar state management,UDashboardGroup > UDashboardSidebar + UDashboardPanel,Manual layout flex containers,<UDashboardGroup><UDashboardSidebar/><UDashboardPanel/></UDashboardGroup>,"<div class=""flex""><aside/><main/></div>",Medium,https://ui.nuxt.com/docs/components/dashboard-group
23
+ 22,Dashboard,Use UDashboardNavbar for top navigation,Responsive navbar with mobile menu support,UDashboardNavbar in dashboard layout,Custom navbar implementation,<UDashboardNavbar :links="navLinks"/>,<nav class="border-b">,Low,https://ui.nuxt.com/docs/components/dashboard-navbar
24
+ 23,Tables,Use UTable with data and columns props,Powered by TanStack Table with built-in features,:data and :columns props,Manual table markup,"<UTable :data=""users"" :columns=""columns""/>","<table><tr v-for=""user in users"">",High,https://ui.nuxt.com/docs/components/table
25
+ 24,Tables,Define columns with accessorKey,Column definitions use accessorKey for data binding,accessorKey: 'email' in column def,String column names only,"{ accessorKey: 'email', header: 'Email' }","['name', 'email']",Medium,https://ui.nuxt.com/docs/components/table
26
+ 25,Tables,Use cell slot for custom rendering,Customize cell content with scoped slots,#cell-columnName slot,Override entire table,<template #cell-status="{ row }">,Manual column render function,Medium,https://ui.nuxt.com/docs/components/table
27
+ 26,Tables,Enable sorting with sortable column option,Add sortable: true to column definition,sortable: true in column,Manual sort implementation,"{ accessorKey: 'name', sortable: true }",@click="sortBy('name')",Low,https://ui.nuxt.com/docs/components/table
28
+ 27,Navigation,Use UNavigationMenu for nav links,Horizontal or vertical navigation with dropdown support,UNavigationMenu with items array,Manual nav with v-for,"<UNavigationMenu :items=""navItems""/>","<nav><a v-for=""item in items"">",Medium,https://ui.nuxt.com/docs/components/navigation-menu
29
+ 28,Navigation,Use UBreadcrumb for page hierarchy,Automatic breadcrumb with NuxtLink support,:items array with label and to,Manual breadcrumb links,"<UBreadcrumb :items=""breadcrumbs""/>","<nav><span v-for=""crumb in crumbs"">",Low,https://ui.nuxt.com/docs/components/breadcrumb
30
+ 29,Navigation,Use UTabs for tabbed content,Tab navigation with content panels,UTabs with items containing slot content,Manual tab state,"<UTabs :items=""tabs""/>","<div><button @click=""tab=1"">",Medium,https://ui.nuxt.com/docs/components/tabs
31
+ 30,Feedback,Use useToast for notifications,Composable for toast notifications,useToast().add({ title description }),Alert components for toasts,"const toast = useToast(); toast.add({ title: 'Saved' })",<UAlert v-if="showSuccess">,High,https://ui.nuxt.com/docs/components/toast
32
+ 31,Feedback,Use UAlert for inline messages,Static alert messages with icon and actions,UAlert with title description color,Toast for static messages,"<UAlert title=""Warning"" color=""warning""/>",useToast for inline alerts,Medium,https://ui.nuxt.com/docs/components/alert
33
+ 32,Feedback,Use USkeleton for loading states,Placeholder content during data loading,USkeleton with appropriate size,Spinner for content loading,<USkeleton class="h-4 w-32"/>,<UIcon name="lucide:loader" class="animate-spin"/>,Low,https://ui.nuxt.com/docs/components/skeleton
34
+ 33,Color Mode,Use UColorModeButton for theme toggle,Built-in light/dark mode toggle button,UColorModeButton component,Manual color mode logic,<UColorModeButton/>,"<button @click=""toggleColorMode"">",Low,https://ui.nuxt.com/docs/components/color-mode-button
35
+ 34,Color Mode,Use UColorModeSelect for theme picker,Dropdown to select system light or dark mode,UColorModeSelect component,Custom select for theme,<UColorModeSelect/>,"<USelect v-model=""colorMode"" :items=""modes""/>",Low,https://ui.nuxt.com/docs/components/color-mode-select
36
+ 35,Customization,Use ui prop for component styling,Override component styles via ui prop,ui prop with slot class overrides,Global CSS overrides,"<UButton :ui=""{ base: 'rounded-full' }""/>",<UButton class="!rounded-full"/>,Medium,https://ui.nuxt.com/docs/getting-started/theme/components
37
+ 36,Customization,Configure default variants in nuxt.config,Set default color and size for all components,theme.defaultVariants in ui config,Repeat props on every component,"ui: { theme: { defaultVariants: { color: 'neutral' } } }","<UButton color=""neutral""> everywhere",Medium,https://ui.nuxt.com/docs/getting-started/installation/nuxt
38
+ 37,Customization,Use app.config.ts for theme overrides,Runtime theme customization,defineAppConfig with ui key,nuxt.config for runtime values,"defineAppConfig({ ui: { button: { defaultVariants: { size: 'sm' } } } })","nuxt.config ui.button.size: 'sm'",Medium,https://ui.nuxt.com/docs/getting-started/theme/components
39
+ 38,Performance,Enable component detection,Tree-shake unused component CSS,experimental.componentDetection: true,Include all component CSS,"ui: { experimental: { componentDetection: true } }","ui: {} (includes all CSS)",Low,https://ui.nuxt.com/docs/getting-started/installation/nuxt
40
+ 39,Performance,Use UTable virtualize for large data,Enable virtualization for 1000+ rows,:virtualize prop on UTable,Render all rows,"<UTable :data=""largeData"" virtualize/>","<UTable :data=""largeData""/>",Medium,https://ui.nuxt.com/docs/components/table
41
+ 40,Accessibility,Use semantic component props,Components have built-in ARIA support,Use title description label props,Skip accessibility props,"<UModal title=""Settings"">","<UModal><h2>Settings</h2>",Medium,https://ui.nuxt.com/docs/components/modal
42
+ 41,Accessibility,Use UFormField for form accessibility,Automatic label-input association,UFormField wraps inputs,Manual id and for attributes,"<UFormField label=""Email""><UInput/></UFormField>","<label for=""email"">Email</label><UInput id=""email""/>",High,https://ui.nuxt.com/docs/components/form-field
43
+ 42,Content,Use UContentToc for table of contents,Automatic TOC with active heading highlight,UContentToc with :links,Manual TOC implementation,"<UContentToc :links=""toc""/>","<nav><a v-for=""heading in headings"">",Low,https://ui.nuxt.com/docs/components/content-toc
44
+ 43,Content,Use UContentSearch for docs search,Command palette for documentation search,UContentSearch with Nuxt Content,Custom search implementation,<UContentSearch/>,<UCommandPalette :groups="searchResults"/>,Low,https://ui.nuxt.com/docs/components/content-search
45
+ 44,AI/Chat,Use UChatMessages for chat UI,Designed for Vercel AI SDK integration,UChatMessages with messages array,Custom chat message list,"<UChatMessages :messages=""messages""/>","<div v-for=""msg in messages"">",Medium,https://ui.nuxt.com/docs/components/chat-messages
46
+ 45,AI/Chat,Use UChatPrompt for input,Enhanced textarea for AI prompts,UChatPrompt with v-model,Basic textarea,<UChatPrompt v-model="prompt"/>,<UTextarea v-model="prompt"/>,Medium,https://ui.nuxt.com/docs/components/chat-prompt
47
+ 46,Editor,Use UEditor for rich text,TipTap-based editor with toolbar support,UEditor with v-model:content,Custom TipTap setup,"<UEditor v-model:content=""content""/>",Manual TipTap initialization,Medium,https://ui.nuxt.com/docs/components/editor
48
+ 47,Links,Use to prop for navigation,UButton and ULink support NuxtLink to prop,to="/dashboard" for internal links,href for internal navigation,"<UButton to=""/dashboard"">","<UButton href=""/dashboard"">",Medium,https://ui.nuxt.com/docs/components/button
49
+ 48,Links,Use external prop for outside links,Explicitly mark external links,target="_blank" with external URLs,Forget rel="noopener","<UButton to=""https://example.com"" target=""_blank"">","<UButton href=""https://..."">",Low,https://ui.nuxt.com/docs/components/link
50
+ 49,Loading,Use loadingAuto on buttons,Automatic loading state from @click promise,loadingAuto prop on UButton,Manual loading state,"<UButton loadingAuto @click=""async () => await save()"">","<UButton :loading=""isLoading"" @click=""save"">",Low,https://ui.nuxt.com/docs/components/button
51
+ 50,Loading,Use UForm loadingAuto,Auto-disable form during submit,loadingAuto on UForm (default true),Manual form disabled state,"<UForm @submit=""handleSubmit"">","<UForm :disabled=""isSubmitting"">",Low,https://ui.nuxt.com/docs/components/form
@@ -0,0 +1,59 @@
1
+ No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL
2
+ 1,Routing,Use file-based routing,Create routes by adding files in pages directory,pages/ directory with index.vue,Manual route configuration,pages/dashboard/index.vue,Custom router setup,Medium,https://nuxt.com/docs/getting-started/routing
3
+ 2,Routing,Use dynamic route parameters,Create dynamic routes with bracket syntax,[id].vue for dynamic params,Hardcoded routes for dynamic content,pages/posts/[id].vue,pages/posts/post1.vue,Medium,https://nuxt.com/docs/getting-started/routing
4
+ 3,Routing,Use catch-all routes,Handle multiple path segments with [...slug],[...slug].vue for catch-all,Multiple nested dynamic routes,pages/[...slug].vue,pages/[a]/[b]/[c].vue,Low,https://nuxt.com/docs/getting-started/routing
5
+ 4,Routing,Define page metadata with definePageMeta,Set page-level configuration and middleware,definePageMeta for layout middleware title,Manual route meta configuration,"definePageMeta({ layout: 'admin', middleware: 'auth' })",router.beforeEach for page config,High,https://nuxt.com/docs/api/utils/define-page-meta
6
+ 5,Routing,Use validate for route params,Validate dynamic route parameters before rendering,validate function in definePageMeta,Manual validation in setup,"definePageMeta({ validate: (route) => /^\d+$/.test(route.params.id) })",if (!valid) navigateTo('/404'),Medium,https://nuxt.com/docs/api/utils/define-page-meta
7
+ 6,Rendering,Use SSR by default,Server-side rendering is enabled by default,Keep ssr: true (default),Disable SSR unnecessarily,ssr: true (default),ssr: false for all pages,High,https://nuxt.com/docs/guide/concepts/rendering
8
+ 7,Rendering,Use .client suffix for client-only components,Mark components to render only on client,ComponentName.client.vue suffix,v-if with process.client check,Comments.client.vue,<div v-if="process.client"><Comments/></div>,Medium,https://nuxt.com/docs/guide/directory-structure/components
9
+ 8,Rendering,Use .server suffix for server-only components,Mark components to render only on server,ComponentName.server.vue suffix,Manual server check,HeavyMarkdown.server.vue,v-if="process.server",Low,https://nuxt.com/docs/guide/directory-structure/components
10
+ 9,DataFetching,Use useFetch for simple data fetching,Wrapper around useAsyncData for URL fetching,useFetch for API calls,$fetch in onMounted,"const { data } = await useFetch('/api/posts')","onMounted(async () => { data.value = await $fetch('/api/posts') })",High,https://nuxt.com/docs/api/composables/use-fetch
11
+ 10,DataFetching,Use useAsyncData for complex fetching,Fine-grained control over async data,useAsyncData for CMS or custom fetching,useFetch for non-URL data sources,"const { data } = await useAsyncData('posts', () => cms.getPosts())","const { data } = await useFetch(() => cms.getPosts())",Medium,https://nuxt.com/docs/api/composables/use-async-data
12
+ 11,DataFetching,Use $fetch for non-reactive requests,$fetch for event handlers and non-component code,$fetch in event handlers or server routes,useFetch in click handlers,"async function submit() { await $fetch('/api/submit', { method: 'POST' }) }","async function submit() { await useFetch('/api/submit') }",High,https://nuxt.com/docs/api/utils/dollarfetch
13
+ 12,DataFetching,Use lazy option for non-blocking fetch,Defer data fetching for better initial load,lazy: true for below-fold content,Blocking fetch for non-critical data,"useFetch('/api/comments', { lazy: true })",await useFetch('/api/comments') for footer,Medium,https://nuxt.com/docs/api/composables/use-fetch
14
+ 13,DataFetching,Use server option to control fetch location,Choose where data is fetched,server: false for client-only data,Server fetch for user-specific client data,"useFetch('/api/user-preferences', { server: false })",useFetch for localStorage-dependent data,Medium,https://nuxt.com/docs/api/composables/use-fetch
15
+ 14,DataFetching,Use pick to reduce payload size,Select only needed fields from response,pick option for large responses,Fetching entire objects when few fields needed,"useFetch('/api/user', { pick: ['id', 'name'] })",useFetch('/api/user') then destructure,Low,https://nuxt.com/docs/api/composables/use-fetch
16
+ 15,DataFetching,Use transform for data manipulation,Transform data before storing in state,transform option for data shaping,Manual transformation after fetch,"useFetch('/api/posts', { transform: (posts) => posts.map(p => p.title) })",const titles = data.value.map(p => p.title),Low,https://nuxt.com/docs/api/composables/use-fetch
17
+ 16,DataFetching,Handle loading and error states,Always handle pending and error states,Check status pending error refs,Ignoring loading states,"<div v-if=""status === 'pending'"">Loading...</div>",No loading indicator,High,https://nuxt.com/docs/getting-started/data-fetching
18
+ 17,Lifecycle,Avoid side effects in script setup root,Move side effects to lifecycle hooks,Side effects in onMounted,setInterval in root script setup,"onMounted(() => { interval = setInterval(...) })","<script setup>setInterval(...)</script>",High,https://nuxt.com/docs/guide/concepts/nuxt-lifecycle
19
+ 18,Lifecycle,Use onMounted for DOM access,Access DOM only after component is mounted,onMounted for DOM manipulation,Direct DOM access in setup,"onMounted(() => { document.getElementById('el') })","<script setup>document.getElementById('el')</script>",High,https://nuxt.com/docs/api/composables/on-mounted
20
+ 19,Lifecycle,Use nextTick for post-render access,Wait for DOM updates before accessing elements,await nextTick() after state changes,Immediate DOM access after state change,"count.value++; await nextTick(); el.value.focus()","count.value++; el.value.focus()",Medium,https://nuxt.com/docs/api/utils/next-tick
21
+ 20,Lifecycle,Use onPrehydrate for pre-hydration logic,Run code before Nuxt hydrates the page,onPrehydrate for client setup,onMounted for hydration-critical code,"onPrehydrate(() => { console.log(window) })",onMounted for pre-hydration needs,Low,https://nuxt.com/docs/api/composables/on-prehydrate
22
+ 21,Server,Use server/api for API routes,Create API endpoints in server/api directory,server/api/users.ts for /api/users,Manual Express setup,server/api/hello.ts -> /api/hello,app.get('/api/hello'),High,https://nuxt.com/docs/guide/directory-structure/server
23
+ 22,Server,Use defineEventHandler for handlers,Define server route handlers,defineEventHandler for all handlers,export default function,"export default defineEventHandler((event) => { return { hello: 'world' } })","export default function(req, res) {}",High,https://nuxt.com/docs/guide/directory-structure/server
24
+ 23,Server,Use server/routes for non-api routes,Routes without /api prefix,server/routes for custom paths,server/api for non-api routes,server/routes/sitemap.xml.ts,server/api/sitemap.xml.ts,Medium,https://nuxt.com/docs/guide/directory-structure/server
25
+ 24,Server,Use getQuery and readBody for input,Access query params and request body,getQuery(event) readBody(event),Direct event access,"const { id } = getQuery(event)",event.node.req.query,Medium,https://nuxt.com/docs/guide/directory-structure/server
26
+ 25,Server,Validate server input,Always validate input in server handlers,Zod or similar for validation,Trust client input,"const body = await readBody(event); schema.parse(body)",const body = await readBody(event),High,https://nuxt.com/docs/guide/directory-structure/server
27
+ 26,State,Use useState for shared reactive state,SSR-friendly shared state across components,useState for cross-component state,ref for shared state,"const count = useState('count', () => 0)",const count = ref(0) in composable,High,https://nuxt.com/docs/api/composables/use-state
28
+ 27,State,Use unique keys for useState,Prevent state conflicts with unique keys,Descriptive unique keys for each state,Generic or duplicate keys,"useState('user-preferences', () => ({}))",useState('data') in multiple places,Medium,https://nuxt.com/docs/api/composables/use-state
29
+ 28,State,Use Pinia for complex state,Pinia for advanced state management,@pinia/nuxt for complex apps,Custom state management,useMainStore() with Pinia,Custom reactive store implementation,Medium,https://nuxt.com/docs/getting-started/state-management
30
+ 29,State,Use callOnce for one-time async operations,Ensure async operations run only once,callOnce for store initialization,Direct await in component,"await callOnce(store.fetch)",await store.fetch() on every render,Medium,https://nuxt.com/docs/api/utils/call-once
31
+ 30,SEO,Use useSeoMeta for SEO tags,Type-safe SEO meta tag management,useSeoMeta for meta tags,useHead for simple meta,"useSeoMeta({ title: 'Home', ogTitle: 'Home', description: '...' })","useHead({ meta: [{ name: 'description', content: '...' }] })",High,https://nuxt.com/docs/api/composables/use-seo-meta
32
+ 31,SEO,Use reactive values in useSeoMeta,Dynamic SEO tags with refs or getters,Computed getters for dynamic values,Static values for dynamic content,"useSeoMeta({ title: () => post.value.title })","useSeoMeta({ title: post.value.title })",Medium,https://nuxt.com/docs/api/composables/use-seo-meta
33
+ 32,SEO,Use useHead for non-meta head elements,Scripts styles links in head,useHead for scripts and links,useSeoMeta for scripts,"useHead({ script: [{ src: '/analytics.js' }] })","useSeoMeta({ script: '...' })",Medium,https://nuxt.com/docs/api/composables/use-head
34
+ 33,SEO,Include OpenGraph tags,Add OG tags for social sharing,ogTitle ogDescription ogImage,Missing social preview,"useSeoMeta({ ogImage: '/og.png', twitterCard: 'summary_large_image' })",No OG configuration,Medium,https://nuxt.com/docs/api/composables/use-seo-meta
35
+ 34,Middleware,Use defineNuxtRouteMiddleware,Define route middleware properly,defineNuxtRouteMiddleware wrapper,export default function,"export default defineNuxtRouteMiddleware((to, from) => {})","export default function(to, from) {}",High,https://nuxt.com/docs/guide/directory-structure/middleware
36
+ 35,Middleware,Use navigateTo for redirects,Redirect in middleware with navigateTo,return navigateTo('/login'),router.push in middleware,"if (!auth) return navigateTo('/login')","if (!auth) router.push('/login')",High,https://nuxt.com/docs/api/utils/navigate-to
37
+ 36,Middleware,Reference middleware in definePageMeta,Apply middleware to specific pages,middleware array in definePageMeta,Global middleware for page-specific,definePageMeta({ middleware: ['auth'] }),Global auth check for one page,Medium,https://nuxt.com/docs/guide/directory-structure/middleware
38
+ 37,Middleware,Use .global suffix for global middleware,Apply middleware to all routes,auth.global.ts for app-wide auth,Manual middleware on every page,middleware/auth.global.ts,middleware: ['auth'] on every page,Medium,https://nuxt.com/docs/guide/directory-structure/middleware
39
+ 38,ErrorHandling,Use createError for errors,Create errors with proper status codes,createError with statusCode,throw new Error,"throw createError({ statusCode: 404, statusMessage: 'Not Found' })",throw new Error('Not Found'),High,https://nuxt.com/docs/api/utils/create-error
40
+ 39,ErrorHandling,Use NuxtErrorBoundary for local errors,Handle errors within component subtree,NuxtErrorBoundary for component errors,Global error page for local errors,"<NuxtErrorBoundary @error=""log""><template #error=""{ error }"">",error.vue for component errors,Medium,https://nuxt.com/docs/getting-started/error-handling
41
+ 40,ErrorHandling,Use clearError to recover from errors,Clear error state and optionally redirect,clearError({ redirect: '/' }),Manual error state reset,clearError({ redirect: '/home' }),error.value = null,Medium,https://nuxt.com/docs/api/utils/clear-error
42
+ 41,ErrorHandling,Use short statusMessage,Keep statusMessage brief for security,Short generic messages,Detailed error info in statusMessage,"createError({ statusCode: 400, statusMessage: 'Bad Request' })","createError({ statusMessage: 'Invalid user ID: 123' })",High,https://nuxt.com/docs/getting-started/error-handling
43
+ 42,Link,Use NuxtLink for internal navigation,Client-side navigation with prefetching,<NuxtLink to> for internal links,<a href> for internal links,<NuxtLink to="/about">About</NuxtLink>,<a href="/about">About</a>,High,https://nuxt.com/docs/api/components/nuxt-link
44
+ 43,Link,Configure prefetch behavior,Control when prefetching occurs,prefetchOn for interaction-based,Default prefetch for low-priority,"<NuxtLink prefetch-on=""interaction"">",Always default prefetch,Low,https://nuxt.com/docs/api/components/nuxt-link
45
+ 44,Link,Use useRouter for programmatic navigation,Navigate programmatically,useRouter().push() for navigation,Direct window.location,"const router = useRouter(); router.push('/dashboard')",window.location.href = '/dashboard',Medium,https://nuxt.com/docs/api/composables/use-router
46
+ 45,Link,Use navigateTo in composables,Navigate outside components,navigateTo() in middleware or plugins,useRouter in non-component code,return navigateTo('/login'),router.push in middleware,Medium,https://nuxt.com/docs/api/utils/navigate-to
47
+ 46,AutoImports,Leverage auto-imports,Use auto-imported composables directly,Direct use of ref computed useFetch,Manual imports for Nuxt composables,"const count = ref(0)","import { ref } from 'vue'; const count = ref(0)",Medium,https://nuxt.com/docs/guide/concepts/auto-imports
48
+ 47,AutoImports,Use #imports for explicit imports,Explicit imports when needed,#imports for clarity or disabled auto-imports,"import from 'vue' when auto-import enabled","import { ref } from '#imports'","import { ref } from 'vue'",Low,https://nuxt.com/docs/guide/concepts/auto-imports
49
+ 48,AutoImports,Configure third-party auto-imports,Add external package auto-imports,imports.presets in nuxt.config,Manual imports everywhere,"imports: { presets: [{ from: 'vue-i18n', imports: ['useI18n'] }] }",import { useI18n } everywhere,Low,https://nuxt.com/docs/guide/concepts/auto-imports
50
+ 49,Plugins,Use defineNuxtPlugin,Define plugins properly,defineNuxtPlugin wrapper,export default function,"export default defineNuxtPlugin((nuxtApp) => {})","export default function(ctx) {}",High,https://nuxt.com/docs/guide/directory-structure/plugins
51
+ 50,Plugins,Use provide for injection,Provide helpers across app,return { provide: {} } for type safety,nuxtApp.provide without types,"return { provide: { hello: (name) => `Hello ${name}!` } }","nuxtApp.provide('hello', fn)",Medium,https://nuxt.com/docs/guide/directory-structure/plugins
52
+ 51,Plugins,Use .client or .server suffix,Control plugin execution environment,plugin.client.ts for client-only,if (process.client) checks,analytics.client.ts,"if (process.client) { // analytics }",Medium,https://nuxt.com/docs/guide/directory-structure/plugins
53
+ 52,Environment,Use runtimeConfig for env vars,Access environment variables safely,runtimeConfig in nuxt.config,process.env directly,"runtimeConfig: { apiSecret: '', public: { apiBase: '' } }",process.env.API_SECRET in components,High,https://nuxt.com/docs/guide/going-further/runtime-config
54
+ 53,Environment,Use NUXT_ prefix for env override,Override config with environment variables,NUXT_API_SECRET NUXT_PUBLIC_API_BASE,Custom env var names,NUXT_PUBLIC_API_BASE=https://api.example.com,API_BASE=https://api.example.com,High,https://nuxt.com/docs/guide/going-further/runtime-config
55
+ 54,Environment,Access public config with useRuntimeConfig,Get public config in components,useRuntimeConfig().public,Direct process.env access,const config = useRuntimeConfig(); config.public.apiBase,process.env.NUXT_PUBLIC_API_BASE,High,https://nuxt.com/docs/api/composables/use-runtime-config
56
+ 55,Environment,Keep secrets in private config,Server-only secrets in runtimeConfig root,runtimeConfig.apiSecret (server only),Secrets in public config,runtimeConfig: { dbPassword: '' },runtimeConfig: { public: { dbPassword: '' } },High,https://nuxt.com/docs/guide/going-further/runtime-config
57
+ 56,Performance,Use Lazy prefix for code splitting,Lazy load components with Lazy prefix,<LazyComponent> for below-fold,Eager load all components,<LazyMountainsList v-if="show"/>,<MountainsList/> for hidden content,Medium,https://nuxt.com/docs/guide/directory-structure/components
58
+ 57,Performance,Use useLazyFetch for non-blocking data,Alias for useFetch with lazy: true,useLazyFetch for secondary data,useFetch for all requests,"const { data } = useLazyFetch('/api/comments')",await useFetch for comments section,Medium,https://nuxt.com/docs/api/composables/use-lazy-fetch
59
+ 58,Performance,Use lazy hydration for interactivity,Delay component hydration until needed,LazyComponent with hydration strategy,Immediate hydration for all,<LazyModal hydrate-on-visible/>,<Modal/> in footer,Low,https://nuxt.com/docs/guide/going-further/experimental-features
@@ -0,0 +1,52 @@
1
+ No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL
2
+ 1,Components,Use functional components,Hooks-based components are standard,Functional components with hooks,Class components,const App = () => { },class App extends Component,Medium,https://reactnative.dev/docs/intro-react
3
+ 2,Components,Keep components small,Single responsibility principle,Split into smaller components,Large monolithic components,<Header /><Content /><Footer />,500+ line component,Medium,
4
+ 3,Components,Use TypeScript,Type safety for props and state,TypeScript for new projects,JavaScript without types,const Button: FC<Props> = () => { },const Button = (props) => { },Medium,
5
+ 4,Components,Colocate component files,Keep related files together,Component folder with styles,Flat structure,components/Button/index.tsx styles.ts,components/Button.tsx styles/button.ts,Low,
6
+ 5,Styling,Use StyleSheet.create,Optimized style objects,StyleSheet for all styles,Inline style objects,StyleSheet.create({ container: {} }),style={{ margin: 10 }},High,https://reactnative.dev/docs/stylesheet
7
+ 6,Styling,Avoid inline styles,Prevent object recreation,Styles in StyleSheet,Inline style objects in render,style={styles.container},"style={{ margin: 10, padding: 5 }}",Medium,
8
+ 7,Styling,Use flexbox for layout,React Native uses flexbox,flexDirection alignItems justifyContent,Absolute positioning everywhere,flexDirection: 'row',position: 'absolute' everywhere,Medium,https://reactnative.dev/docs/flexbox
9
+ 8,Styling,Handle platform differences,Platform-specific styles,Platform.select or .ios/.android files,Same styles for both platforms,"Platform.select({ ios: {}, android: {} })",Hardcoded iOS values,Medium,https://reactnative.dev/docs/platform-specific-code
10
+ 9,Styling,Use responsive dimensions,Scale for different screens,Dimensions or useWindowDimensions,Fixed pixel values,useWindowDimensions(),width: 375,Medium,
11
+ 10,Navigation,Use React Navigation,Standard navigation library,React Navigation for routing,Manual navigation management,createStackNavigator(),Custom navigation state,Medium,https://reactnavigation.org/
12
+ 11,Navigation,Type navigation params,Type-safe navigation,Typed navigation props,Untyped navigation,"navigation.navigate<RootStackParamList>('Home', { id })","navigation.navigate('Home', { id })",Medium,
13
+ 12,Navigation,Use deep linking,Support URL-based navigation,Configure linking prop,No deep link support,linking: { prefixes: [] },No linking configuration,Medium,https://reactnavigation.org/docs/deep-linking/
14
+ 13,Navigation,Handle back button,Android back button handling,useFocusEffect with BackHandler,Ignore back button,BackHandler.addEventListener,No back handler,High,
15
+ 14,State,Use useState for local state,Simple component state,useState for UI state,Class component state,"const [count, setCount] = useState(0)",this.state = { count: 0 },Medium,
16
+ 15,State,Use useReducer for complex state,Complex state logic,useReducer for related state,Multiple useState for related values,useReducer(reducer initialState),5+ useState calls,Medium,
17
+ 16,State,Use context sparingly,Context for global state,Context for theme auth locale,Context for frequently changing data,ThemeContext for app theme,Context for list item data,Medium,
18
+ 17,State,Consider Zustand or Redux,External state management,Zustand for simple Redux for complex,useState for global state,create((set) => ({ })),Prop drilling global state,Medium,
19
+ 18,Lists,Use FlatList for long lists,Virtualized list rendering,FlatList for 50+ items,ScrollView with map,<FlatList data={items} />,<ScrollView>{items.map()}</ScrollView>,High,https://reactnative.dev/docs/flatlist
20
+ 19,Lists,Provide keyExtractor,Unique keys for list items,keyExtractor with stable ID,Index as key,keyExtractor={(item) => item.id},"keyExtractor={(_, index) => index}",High,
21
+ 20,Lists,Optimize renderItem,Memoize list item components,React.memo for list items,Inline render function,renderItem={({ item }) => <MemoizedItem item={item} />},renderItem={({ item }) => <View>...</View>},High,
22
+ 21,Lists,Use getItemLayout for fixed height,Skip measurement for performance,getItemLayout when height known,Dynamic measurement for fixed items,"getItemLayout={(_, index) => ({ length: 50, offset: 50 * index, index })}",No getItemLayout for fixed height,Medium,
23
+ 22,Lists,Implement windowSize,Control render window,Smaller windowSize for memory,Default windowSize for large lists,windowSize={5},windowSize={21} for huge lists,Medium,
24
+ 23,Performance,Use React.memo,Prevent unnecessary re-renders,memo for pure components,No memoization,export default memo(MyComponent),export default MyComponent,Medium,
25
+ 24,Performance,Use useCallback for handlers,Stable function references,useCallback for props,New function on every render,"useCallback(() => {}, [deps])",() => handlePress(),Medium,
26
+ 25,Performance,Use useMemo for expensive ops,Cache expensive calculations,useMemo for heavy computations,Recalculate every render,"useMemo(() => expensive(), [deps])",const result = expensive(),Medium,
27
+ 26,Performance,Avoid anonymous functions in JSX,Prevent re-renders,Named handlers or useCallback,Inline arrow functions,onPress={handlePress},onPress={() => doSomething()},Medium,
28
+ 27,Performance,Use Hermes engine,Improved startup and memory,Enable Hermes in build,JavaScriptCore for new projects,hermes_enabled: true,hermes_enabled: false,Medium,https://reactnative.dev/docs/hermes
29
+ 28,Images,Use expo-image,Modern performant image component for React Native,"Use expo-image for caching, blurring, and performance",Use default Image for heavy lists or unmaintained libraries,<Image source={url} cachePolicy='memory-disk' /> (expo-image),<FastImage source={url} />,Medium,https://docs.expo.dev/versions/latest/sdk/image/
30
+ 29,Images,Specify image dimensions,Prevent layout shifts,width and height for remote images,No dimensions for network images,<Image style={{ width: 100 height: 100 }} />,<Image source={{ uri }} /> no size,High,
31
+ 30,Images,Use resizeMode,Control image scaling,resizeMode cover contain,Stretch images,"resizeMode=""cover""",No resizeMode,Low,
32
+ 31,Forms,Use controlled inputs,State-controlled form fields,value + onChangeText,Uncontrolled inputs,<TextInput value={text} onChangeText={setText} />,<TextInput defaultValue={text} />,Medium,
33
+ 32,Forms,Handle keyboard,Manage keyboard visibility,KeyboardAvoidingView,Content hidden by keyboard,"<KeyboardAvoidingView behavior=""padding"">",No keyboard handling,High,https://reactnative.dev/docs/keyboardavoidingview
34
+ 33,Forms,Use proper keyboard types,Appropriate keyboard for input,keyboardType for input type,Default keyboard for all,"keyboardType=""email-address""","keyboardType=""default"" for email",Low,
35
+ 34,Touch,Use Pressable,Modern touch handling,Pressable for touch interactions,TouchableOpacity for new code,<Pressable onPress={} />,<TouchableOpacity onPress={} />,Low,https://reactnative.dev/docs/pressable
36
+ 35,Touch,Provide touch feedback,Visual feedback on press,Ripple or opacity change,No feedback on press,android_ripple={{ color: 'gray' }},No press feedback,Medium,
37
+ 36,Touch,Set hitSlop for small targets,Increase touch area,hitSlop for icons and small buttons,Tiny touch targets,hitSlop={{ top: 10 bottom: 10 }},44x44 with no hitSlop,Medium,
38
+ 37,Animation,Use Reanimated,High-performance animations,react-native-reanimated,Animated API for complex,useSharedValue useAnimatedStyle,Animated.timing for gesture,Medium,https://docs.swmansion.com/react-native-reanimated/
39
+ 38,Animation,Run on UI thread,worklets for smooth animation,Run animations on UI thread,JS thread animations,runOnUI(() => {}),Animated on JS thread,High,
40
+ 39,Animation,Use gesture handler,Native gesture recognition,react-native-gesture-handler,JS-based gesture handling,<GestureDetector>,<View onTouchMove={} />,Medium,https://docs.swmansion.com/react-native-gesture-handler/
41
+ 40,Async,Handle loading states,Show loading indicators,ActivityIndicator during load,Empty screen during load,{isLoading ? <ActivityIndicator /> : <Content />},No loading state,Medium,
42
+ 41,Async,Handle errors gracefully,Error boundaries and fallbacks,Error UI for failed requests,Crash on error,{error ? <ErrorView /> : <Content />},No error handling,High,
43
+ 42,Async,Cancel async operations,Cleanup on unmount,AbortController or cleanup,Memory leaks from async,useEffect cleanup,No cleanup for subscriptions,High,
44
+ 43,Accessibility,Add accessibility labels,Describe UI elements,accessibilityLabel for all interactive,Missing labels,"accessibilityLabel=""Submit form""",<Pressable> without label,High,https://reactnative.dev/docs/accessibility
45
+ 44,Accessibility,Use accessibility roles,Semantic meaning,accessibilityRole for elements,Wrong roles,"accessibilityRole=""button""",No role for button,Medium,
46
+ 45,Accessibility,Support screen readers,Test with TalkBack/VoiceOver,Test with screen readers,Skip accessibility testing,Regular TalkBack testing,No screen reader testing,High,
47
+ 46,Testing,Use React Native Testing Library,Component testing,render and fireEvent,Enzyme or manual testing,render(<Component />),shallow(<Component />),Medium,https://callstack.github.io/react-native-testing-library/
48
+ 47,Testing,Test on real devices,Real device behavior,Test on iOS and Android devices,Simulator only,Device testing in CI,Simulator only testing,High,
49
+ 48,Testing,Use Detox for E2E,End-to-end testing,Detox for critical flows,Manual E2E testing,detox test,Manual testing only,Medium,https://wix.github.io/Detox/
50
+ 49,Native,Use native modules carefully,Bridge has overhead,Batch native calls,Frequent bridge crossing,Batch updates,Call native on every keystroke,High,
51
+ 50,Native,Use Expo when possible,Simplified development,Expo for standard features,Bare RN for simple apps,expo install package,react-native link package,Low,https://docs.expo.dev/
52
+ 51,Native,Handle permissions,Request permissions properly,Check and request permissions,Assume permissions granted,PermissionsAndroid.request(),Access without permission check,High,https://reactnative.dev/docs/permissionsandroid