@rubix0270/arboris 1.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 (451) hide show
  1. package/README.md +151 -0
  2. package/cli/manifest.json +323 -0
  3. package/dist/cli.mjs +376 -0
  4. package/package.json +81 -0
  5. package/prisma/skills/accessibility/SKILL.md +147 -0
  6. package/prisma/skills/agent-architecture-audit/SKILL.md +257 -0
  7. package/prisma/skills/agent-eval/SKILL.md +146 -0
  8. package/prisma/skills/agent-harness-construction/SKILL.md +74 -0
  9. package/prisma/skills/agent-introspection-debugging/SKILL.md +154 -0
  10. package/prisma/skills/agent-payment-x402/SKILL.md +225 -0
  11. package/prisma/skills/agent-self-evaluation/SKILL.md +182 -0
  12. package/prisma/skills/agent-self-evaluation/examples/high-score-example.md +87 -0
  13. package/prisma/skills/agent-self-evaluation/examples/low-score-example.md +86 -0
  14. package/prisma/skills/agent-self-evaluation/references/evaluation-criteria.md +71 -0
  15. package/prisma/skills/agent-self-evaluation/references/hook-integration.md +64 -0
  16. package/prisma/skills/agent-self-evaluation/scripts/evaluate.py +408 -0
  17. package/prisma/skills/agent-self-evaluation/templates/evaluation-report.md +86 -0
  18. package/prisma/skills/agent-sort/SKILL.md +216 -0
  19. package/prisma/skills/agentic-engineering/SKILL.md +64 -0
  20. package/prisma/skills/agentic-os/SKILL.md +388 -0
  21. package/prisma/skills/ai-first-engineering/SKILL.md +52 -0
  22. package/prisma/skills/ai-regression-testing/SKILL.md +386 -0
  23. package/prisma/skills/android-clean-architecture/SKILL.md +340 -0
  24. package/prisma/skills/angular-developer/SKILL.md +155 -0
  25. package/prisma/skills/angular-developer/references/angular-animations.md +160 -0
  26. package/prisma/skills/angular-developer/references/angular-aria.md +410 -0
  27. package/prisma/skills/angular-developer/references/cli.md +86 -0
  28. package/prisma/skills/angular-developer/references/component-harnesses.md +59 -0
  29. package/prisma/skills/angular-developer/references/component-styling.md +91 -0
  30. package/prisma/skills/angular-developer/references/components.md +117 -0
  31. package/prisma/skills/angular-developer/references/creating-services.md +97 -0
  32. package/prisma/skills/angular-developer/references/data-resolvers.md +69 -0
  33. package/prisma/skills/angular-developer/references/define-routes.md +67 -0
  34. package/prisma/skills/angular-developer/references/defining-providers.md +72 -0
  35. package/prisma/skills/angular-developer/references/di-fundamentals.md +120 -0
  36. package/prisma/skills/angular-developer/references/e2e-testing.md +56 -0
  37. package/prisma/skills/angular-developer/references/effects.md +83 -0
  38. package/prisma/skills/angular-developer/references/hierarchical-injectors.md +43 -0
  39. package/prisma/skills/angular-developer/references/host-elements.md +80 -0
  40. package/prisma/skills/angular-developer/references/injection-context.md +63 -0
  41. package/prisma/skills/angular-developer/references/inputs.md +101 -0
  42. package/prisma/skills/angular-developer/references/linked-signal.md +59 -0
  43. package/prisma/skills/angular-developer/references/loading-strategies.md +61 -0
  44. package/prisma/skills/angular-developer/references/mcp.md +108 -0
  45. package/prisma/skills/angular-developer/references/navigate-to-routes.md +69 -0
  46. package/prisma/skills/angular-developer/references/outputs.md +86 -0
  47. package/prisma/skills/angular-developer/references/reactive-forms.md +122 -0
  48. package/prisma/skills/angular-developer/references/rendering-strategies.md +44 -0
  49. package/prisma/skills/angular-developer/references/resource.md +77 -0
  50. package/prisma/skills/angular-developer/references/route-animations.md +56 -0
  51. package/prisma/skills/angular-developer/references/route-guards.md +52 -0
  52. package/prisma/skills/angular-developer/references/router-lifecycle.md +45 -0
  53. package/prisma/skills/angular-developer/references/router-testing.md +87 -0
  54. package/prisma/skills/angular-developer/references/show-routes-with-outlets.md +68 -0
  55. package/prisma/skills/angular-developer/references/signal-forms.md +795 -0
  56. package/prisma/skills/angular-developer/references/signals-overview.md +94 -0
  57. package/prisma/skills/angular-developer/references/tailwind-css.md +69 -0
  58. package/prisma/skills/angular-developer/references/template-driven-forms.md +114 -0
  59. package/prisma/skills/angular-developer/references/testing-fundamentals.md +65 -0
  60. package/prisma/skills/api-connector-builder/SKILL.md +121 -0
  61. package/prisma/skills/api-design/SKILL.md +524 -0
  62. package/prisma/skills/architecture-decision-records/SKILL.md +180 -0
  63. package/prisma/skills/article-writing/SKILL.md +80 -0
  64. package/prisma/skills/automation-audit-ops/SKILL.md +143 -0
  65. package/prisma/skills/autonomous-agent-harness/SKILL.md +274 -0
  66. package/prisma/skills/autonomous-loops/SKILL.md +611 -0
  67. package/prisma/skills/backend-patterns/SKILL.md +562 -0
  68. package/prisma/skills/benchmark/SKILL.md +94 -0
  69. package/prisma/skills/benchmark-methodology/SKILL.md +190 -0
  70. package/prisma/skills/benchmark-optimization-loop/SKILL.md +70 -0
  71. package/prisma/skills/blender-motion-state-inspection/SKILL.md +165 -0
  72. package/prisma/skills/blueprint/SKILL.md +106 -0
  73. package/prisma/skills/brand-discovery/SKILL.md +145 -0
  74. package/prisma/skills/brand-discovery/references/10_purpose-why.md +40 -0
  75. package/prisma/skills/brand-discovery/references/20_positioning.md +44 -0
  76. package/prisma/skills/brand-discovery/references/30_audience-niche.md +52 -0
  77. package/prisma/skills/brand-discovery/references/40_personality-archetype.md +57 -0
  78. package/prisma/skills/brand-discovery/references/50_voice-tone.md +59 -0
  79. package/prisma/skills/brand-discovery/references/60_narrative-story.md +50 -0
  80. package/prisma/skills/brand-discovery/references/70_founder-tension.md +49 -0
  81. package/prisma/skills/brand-discovery/references/90_SYNTHESIS.md +133 -0
  82. package/prisma/skills/brand-voice/SKILL.md +98 -0
  83. package/prisma/skills/brand-voice/references/voice-profile-schema.md +55 -0
  84. package/prisma/skills/browser-qa/SKILL.md +105 -0
  85. package/prisma/skills/bun-runtime/SKILL.md +85 -0
  86. package/prisma/skills/canary-watch/SKILL.md +108 -0
  87. package/prisma/skills/carrier-relationship-management/SKILL.md +212 -0
  88. package/prisma/skills/cisco-ios-patterns/SKILL.md +164 -0
  89. package/prisma/skills/ck/SKILL.md +148 -0
  90. package/prisma/skills/ck/commands/forget.mjs +44 -0
  91. package/prisma/skills/ck/commands/info.mjs +24 -0
  92. package/prisma/skills/ck/commands/init.mjs +143 -0
  93. package/prisma/skills/ck/commands/list.mjs +40 -0
  94. package/prisma/skills/ck/commands/migrate.mjs +202 -0
  95. package/prisma/skills/ck/commands/resume.mjs +36 -0
  96. package/prisma/skills/ck/commands/save.mjs +210 -0
  97. package/prisma/skills/ck/commands/shared.mjs +387 -0
  98. package/prisma/skills/ck/hooks/session-start.mjs +224 -0
  99. package/prisma/skills/claude-devfleet/SKILL.md +112 -0
  100. package/prisma/skills/click-path-audit/SKILL.md +245 -0
  101. package/prisma/skills/clickhouse-io/SKILL.md +440 -0
  102. package/prisma/skills/code-tour/SKILL.md +254 -0
  103. package/prisma/skills/codebase-onboarding/SKILL.md +234 -0
  104. package/prisma/skills/codehealth-mcp/SKILL.md +167 -0
  105. package/prisma/skills/coding-standards/SKILL.md +551 -0
  106. package/prisma/skills/competitive-platform-analysis/SKILL.md +214 -0
  107. package/prisma/skills/competitive-report-structure/SKILL.md +162 -0
  108. package/prisma/skills/compose-multiplatform-patterns/SKILL.md +300 -0
  109. package/prisma/skills/config-gc/SKILL.md +120 -0
  110. package/prisma/skills/configure-ecc/SKILL.md +385 -0
  111. package/prisma/skills/connections-optimizer/SKILL.md +190 -0
  112. package/prisma/skills/content-engine/SKILL.md +132 -0
  113. package/prisma/skills/content-hash-cache-pattern/SKILL.md +162 -0
  114. package/prisma/skills/context-budget/SKILL.md +136 -0
  115. package/prisma/skills/continuous-agent-loop/SKILL.md +46 -0
  116. package/prisma/skills/continuous-learning/SKILL.md +132 -0
  117. package/prisma/skills/continuous-learning/config.json +18 -0
  118. package/prisma/skills/continuous-learning/evaluate-session.sh +69 -0
  119. package/prisma/skills/continuous-learning-v2/SKILL.md +361 -0
  120. package/prisma/skills/continuous-learning-v2/agents/observer-loop.sh +359 -0
  121. package/prisma/skills/continuous-learning-v2/agents/observer.md +189 -0
  122. package/prisma/skills/continuous-learning-v2/agents/session-guardian.sh +150 -0
  123. package/prisma/skills/continuous-learning-v2/agents/start-observer.sh +248 -0
  124. package/prisma/skills/continuous-learning-v2/config.json +8 -0
  125. package/prisma/skills/continuous-learning-v2/hooks/observe.sh +585 -0
  126. package/prisma/skills/continuous-learning-v2/scripts/detect-project.sh +322 -0
  127. package/prisma/skills/continuous-learning-v2/scripts/instinct-cli.py +1956 -0
  128. package/prisma/skills/continuous-learning-v2/scripts/lib/homunculus-dir.sh +31 -0
  129. package/prisma/skills/continuous-learning-v2/scripts/migrate-homunculus.sh +68 -0
  130. package/prisma/skills/continuous-learning-v2/scripts/test_parse_instinct.py +1421 -0
  131. package/prisma/skills/cost-aware-llm-pipeline/SKILL.md +184 -0
  132. package/prisma/skills/cost-tracking/SKILL.md +97 -0
  133. package/prisma/skills/council/SKILL.md +204 -0
  134. package/prisma/skills/cpp-coding-standards/SKILL.md +724 -0
  135. package/prisma/skills/cpp-testing/SKILL.md +325 -0
  136. package/prisma/skills/crosspost/SKILL.md +112 -0
  137. package/prisma/skills/csharp-testing/SKILL.md +322 -0
  138. package/prisma/skills/customer-billing-ops/SKILL.md +141 -0
  139. package/prisma/skills/customs-trade-compliance/SKILL.md +263 -0
  140. package/prisma/skills/dart-flutter-patterns/SKILL.md +564 -0
  141. package/prisma/skills/dashboard-builder/SKILL.md +109 -0
  142. package/prisma/skills/data-scraper-agent/SKILL.md +765 -0
  143. package/prisma/skills/data-throughput-accelerator/SKILL.md +73 -0
  144. package/prisma/skills/database-migrations/SKILL.md +430 -0
  145. package/prisma/skills/deep-research/SKILL.md +160 -0
  146. package/prisma/skills/defi-amm-security/SKILL.md +167 -0
  147. package/prisma/skills/delivery-gate/SKILL.md +126 -0
  148. package/prisma/skills/delivery-gate/hooks/quality-gate.py +220 -0
  149. package/prisma/skills/deployment-patterns/SKILL.md +428 -0
  150. package/prisma/skills/design-system/SKILL.md +83 -0
  151. package/prisma/skills/django-celery/SKILL.md +458 -0
  152. package/prisma/skills/django-patterns/SKILL.md +735 -0
  153. package/prisma/skills/django-security/SKILL.md +644 -0
  154. package/prisma/skills/django-tdd/SKILL.md +730 -0
  155. package/prisma/skills/django-verification/SKILL.md +470 -0
  156. package/prisma/skills/dmux-workflows/SKILL.md +192 -0
  157. package/prisma/skills/docker-patterns/SKILL.md +365 -0
  158. package/prisma/skills/documentation-lookup/SKILL.md +91 -0
  159. package/prisma/skills/dotnet-patterns/SKILL.md +322 -0
  160. package/prisma/skills/dynamic-workflow-mode/SKILL.md +124 -0
  161. package/prisma/skills/e2e-testing/SKILL.md +327 -0
  162. package/prisma/skills/ecc-guide/SKILL.md +190 -0
  163. package/prisma/skills/ecc-recipes/SKILL.md +149 -0
  164. package/prisma/skills/ecc-tools-cost-audit/SKILL.md +161 -0
  165. package/prisma/skills/email-ops/SKILL.md +122 -0
  166. package/prisma/skills/energy-procurement/SKILL.md +228 -0
  167. package/prisma/skills/enterprise-agent-ops/SKILL.md +51 -0
  168. package/prisma/skills/error-handling/SKILL.md +377 -0
  169. package/prisma/skills/eval-harness/SKILL.md +271 -0
  170. package/prisma/skills/evm-token-decimals/SKILL.md +131 -0
  171. package/prisma/skills/exa-search/SKILL.md +108 -0
  172. package/prisma/skills/fal-ai-media/SKILL.md +289 -0
  173. package/prisma/skills/fastapi-patterns/SKILL.md +514 -0
  174. package/prisma/skills/finance-billing-ops/SKILL.md +128 -0
  175. package/prisma/skills/flox-environments/SKILL.md +497 -0
  176. package/prisma/skills/flutter-dart-code-review/SKILL.md +436 -0
  177. package/prisma/skills/foundation-models-on-device/SKILL.md +243 -0
  178. package/prisma/skills/frontend-a11y/SKILL.md +446 -0
  179. package/prisma/skills/frontend-design-direction/SKILL.md +93 -0
  180. package/prisma/skills/frontend-patterns/SKILL.md +657 -0
  181. package/prisma/skills/frontend-slides/SKILL.md +185 -0
  182. package/prisma/skills/frontend-slides/STYLE_PRESETS.md +330 -0
  183. package/prisma/skills/frontend-slides/animation-patterns.md +122 -0
  184. package/prisma/skills/frontend-slides/html-template.md +419 -0
  185. package/prisma/skills/frontend-slides/scripts/export-pdf.sh +418 -0
  186. package/prisma/skills/frontend-slides/scripts/extract-pptx.py +96 -0
  187. package/prisma/skills/frontend-slides/viewport-base.css +153 -0
  188. package/prisma/skills/fsharp-testing/SKILL.md +281 -0
  189. package/prisma/skills/gan-style-harness/SKILL.md +279 -0
  190. package/prisma/skills/gateguard/SKILL.md +133 -0
  191. package/prisma/skills/generating-python-installer/SKILL.md +820 -0
  192. package/prisma/skills/git-workflow/SKILL.md +716 -0
  193. package/prisma/skills/github-ops/SKILL.md +145 -0
  194. package/prisma/skills/golang-patterns/SKILL.md +675 -0
  195. package/prisma/skills/golang-testing/SKILL.md +721 -0
  196. package/prisma/skills/google-workspace-ops/SKILL.md +96 -0
  197. package/prisma/skills/growth-log/SKILL.md +128 -0
  198. package/prisma/skills/healthcare-cdss-patterns/SKILL.md +246 -0
  199. package/prisma/skills/healthcare-emr-patterns/SKILL.md +160 -0
  200. package/prisma/skills/healthcare-eval-harness/SKILL.md +208 -0
  201. package/prisma/skills/healthcare-phi-compliance/SKILL.md +146 -0
  202. package/prisma/skills/hermes-imports/SKILL.md +89 -0
  203. package/prisma/skills/hexagonal-architecture/SKILL.md +277 -0
  204. package/prisma/skills/hipaa-compliance/SKILL.md +79 -0
  205. package/prisma/skills/homelab-network-readiness/SKILL.md +170 -0
  206. package/prisma/skills/homelab-network-setup/SKILL.md +130 -0
  207. package/prisma/skills/homelab-pihole-dns/SKILL.md +275 -0
  208. package/prisma/skills/homelab-vlan-segmentation/SKILL.md +312 -0
  209. package/prisma/skills/homelab-wireguard-vpn/SKILL.md +306 -0
  210. package/prisma/skills/hookify-rules/SKILL.md +128 -0
  211. package/prisma/skills/inherit-legacy-style/SKILL.md +157 -0
  212. package/prisma/skills/intent-driven-development/SKILL.md +360 -0
  213. package/prisma/skills/inventory-demand-planning/SKILL.md +247 -0
  214. package/prisma/skills/investor-materials/SKILL.md +97 -0
  215. package/prisma/skills/investor-outreach/SKILL.md +92 -0
  216. package/prisma/skills/ios-icon-gen/SKILL.md +158 -0
  217. package/prisma/skills/ios-icon-gen/scripts/generate_icons.swift +258 -0
  218. package/prisma/skills/ios-icon-gen/scripts/iconify_gen.sh +235 -0
  219. package/prisma/skills/iterative-retrieval/SKILL.md +212 -0
  220. package/prisma/skills/ito-basket-compare/SKILL.md +64 -0
  221. package/prisma/skills/ito-data-atlas-agent/SKILL.md +64 -0
  222. package/prisma/skills/ito-market-intelligence/SKILL.md +61 -0
  223. package/prisma/skills/ito-trade-planner/SKILL.md +68 -0
  224. package/prisma/skills/java-coding-standards/SKILL.md +384 -0
  225. package/prisma/skills/jira-integration/SKILL.md +303 -0
  226. package/prisma/skills/jpa-patterns/SKILL.md +152 -0
  227. package/prisma/skills/knowledge-ops/SKILL.md +155 -0
  228. package/prisma/skills/kotlin-coroutines-flows/SKILL.md +285 -0
  229. package/prisma/skills/kotlin-exposed-patterns/SKILL.md +720 -0
  230. package/prisma/skills/kotlin-ktor-patterns/SKILL.md +690 -0
  231. package/prisma/skills/kotlin-patterns/SKILL.md +712 -0
  232. package/prisma/skills/kotlin-testing/SKILL.md +825 -0
  233. package/prisma/skills/kubernetes-patterns/SKILL.md +756 -0
  234. package/prisma/skills/laravel-patterns/SKILL.md +416 -0
  235. package/prisma/skills/laravel-plugin-discovery/SKILL.md +230 -0
  236. package/prisma/skills/laravel-security/SKILL.md +948 -0
  237. package/prisma/skills/laravel-tdd/SKILL.md +675 -0
  238. package/prisma/skills/laravel-verification/SKILL.md +180 -0
  239. package/prisma/skills/latency-critical-systems/SKILL.md +74 -0
  240. package/prisma/skills/lead-intelligence/SKILL.md +322 -0
  241. package/prisma/skills/lead-intelligence/agents/enrichment-agent.md +85 -0
  242. package/prisma/skills/lead-intelligence/agents/mutual-mapper.md +75 -0
  243. package/prisma/skills/lead-intelligence/agents/outreach-drafter.md +98 -0
  244. package/prisma/skills/lead-intelligence/agents/signal-scorer.md +60 -0
  245. package/prisma/skills/liquid-glass-design/SKILL.md +279 -0
  246. package/prisma/skills/llm-trading-agent-security/SKILL.md +147 -0
  247. package/prisma/skills/logistics-exception-management/SKILL.md +222 -0
  248. package/prisma/skills/loop-design-check/SKILL.md +143 -0
  249. package/prisma/skills/mailtrap-email-integration/SKILL.md +77 -0
  250. package/prisma/skills/make-interfaces-feel-better/SKILL.md +152 -0
  251. package/prisma/skills/manim-video/SKILL.md +90 -0
  252. package/prisma/skills/manim-video/assets/network_graph_scene.py +52 -0
  253. package/prisma/skills/market-research/SKILL.md +76 -0
  254. package/prisma/skills/marketing-campaign/SKILL.md +114 -0
  255. package/prisma/skills/mcp-server-patterns/SKILL.md +70 -0
  256. package/prisma/skills/messages-ops/SKILL.md +105 -0
  257. package/prisma/skills/ml-adoption-playbook/SKILL.md +57 -0
  258. package/prisma/skills/mle-workflow/SKILL.md +347 -0
  259. package/prisma/skills/motion-advanced/SKILL.md +596 -0
  260. package/prisma/skills/motion-foundations/SKILL.md +299 -0
  261. package/prisma/skills/motion-patterns/SKILL.md +434 -0
  262. package/prisma/skills/motion-ui/SKILL.md +576 -0
  263. package/prisma/skills/mysql-patterns/SKILL.md +413 -0
  264. package/prisma/skills/nanoclaw-repl/SKILL.md +34 -0
  265. package/prisma/skills/nestjs-patterns/SKILL.md +231 -0
  266. package/prisma/skills/netmiko-ssh-automation/SKILL.md +174 -0
  267. package/prisma/skills/network-bgp-diagnostics/SKILL.md +168 -0
  268. package/prisma/skills/network-config-validation/SKILL.md +211 -0
  269. package/prisma/skills/network-interface-health/SKILL.md +153 -0
  270. package/prisma/skills/nextjs-turbopack/SKILL.md +58 -0
  271. package/prisma/skills/nodejs-keccak256/SKILL.md +103 -0
  272. package/prisma/skills/nutrient-document-processing/SKILL.md +168 -0
  273. package/prisma/skills/nuxt4-patterns/SKILL.md +101 -0
  274. package/prisma/skills/openclaw-persona-forge/SKILL.md +289 -0
  275. package/prisma/skills/openclaw-persona-forge/gacha.py +224 -0
  276. package/prisma/skills/openclaw-persona-forge/gacha.sh +5 -0
  277. package/prisma/skills/openclaw-persona-forge/references/avatar-style.md +124 -0
  278. package/prisma/skills/openclaw-persona-forge/references/boundary-rules.md +53 -0
  279. package/prisma/skills/openclaw-persona-forge/references/error-handling.md +53 -0
  280. package/prisma/skills/openclaw-persona-forge/references/identity-tension.md +48 -0
  281. package/prisma/skills/openclaw-persona-forge/references/naming-system.md +39 -0
  282. package/prisma/skills/openclaw-persona-forge/references/output-template.md +166 -0
  283. package/prisma/skills/opensource-pipeline/SKILL.md +256 -0
  284. package/prisma/skills/orch-add-feature/SKILL.md +45 -0
  285. package/prisma/skills/orch-build-mvp/SKILL.md +49 -0
  286. package/prisma/skills/orch-change-feature/SKILL.md +43 -0
  287. package/prisma/skills/orch-fix-defect/SKILL.md +43 -0
  288. package/prisma/skills/orch-pipeline/SKILL.md +121 -0
  289. package/prisma/skills/orch-refine-code/SKILL.md +44 -0
  290. package/prisma/skills/parallel-execution-optimizer/SKILL.md +73 -0
  291. package/prisma/skills/perl-patterns/SKILL.md +505 -0
  292. package/prisma/skills/perl-security/SKILL.md +504 -0
  293. package/prisma/skills/perl-testing/SKILL.md +476 -0
  294. package/prisma/skills/plan-orchestrate/SKILL.md +263 -0
  295. package/prisma/skills/plankton-code-quality/SKILL.md +237 -0
  296. package/prisma/skills/postgres-patterns/SKILL.md +148 -0
  297. package/prisma/skills/prediction-market-oracle-research/SKILL.md +64 -0
  298. package/prisma/skills/prediction-market-risk-review/SKILL.md +61 -0
  299. package/prisma/skills/prisma-patterns/SKILL.md +401 -0
  300. package/prisma/skills/product-capability/SKILL.md +142 -0
  301. package/prisma/skills/product-lens/SKILL.md +93 -0
  302. package/prisma/skills/production-audit/SKILL.md +207 -0
  303. package/prisma/skills/production-scheduling/SKILL.md +238 -0
  304. package/prisma/skills/project-flow-ops/SKILL.md +112 -0
  305. package/prisma/skills/prompt-optimizer/SKILL.md +398 -0
  306. package/prisma/skills/python-patterns/SKILL.md +751 -0
  307. package/prisma/skills/python-testing/SKILL.md +817 -0
  308. package/prisma/skills/pytorch-patterns/SKILL.md +397 -0
  309. package/prisma/skills/quality-nonconformance/SKILL.md +260 -0
  310. package/prisma/skills/quarkus-patterns/SKILL.md +723 -0
  311. package/prisma/skills/quarkus-security/SKILL.md +468 -0
  312. package/prisma/skills/quarkus-tdd/SKILL.md +812 -0
  313. package/prisma/skills/quarkus-verification/SKILL.md +480 -0
  314. package/prisma/skills/ralphinho-rfc-pipeline/SKILL.md +68 -0
  315. package/prisma/skills/react-native-patterns/SKILL.md +326 -0
  316. package/prisma/skills/react-patterns/SKILL.md +342 -0
  317. package/prisma/skills/react-performance/SKILL.md +575 -0
  318. package/prisma/skills/react-testing/SKILL.md +424 -0
  319. package/prisma/skills/recsys-pipeline-architect/SKILL.md +115 -0
  320. package/prisma/skills/recursive-decision-ledger/SKILL.md +80 -0
  321. package/prisma/skills/redis-patterns/SKILL.md +404 -0
  322. package/prisma/skills/regex-vs-llm-structured-text/SKILL.md +221 -0
  323. package/prisma/skills/remotion-video-creation/SKILL.md +43 -0
  324. package/prisma/skills/remotion-video-creation/rules/3d.md +86 -0
  325. package/prisma/skills/remotion-video-creation/rules/animations.md +29 -0
  326. package/prisma/skills/remotion-video-creation/rules/assets/charts-bar-chart.tsx +173 -0
  327. package/prisma/skills/remotion-video-creation/rules/assets/text-animations-typewriter.tsx +100 -0
  328. package/prisma/skills/remotion-video-creation/rules/assets/text-animations-word-highlight.tsx +108 -0
  329. package/prisma/skills/remotion-video-creation/rules/assets.md +78 -0
  330. package/prisma/skills/remotion-video-creation/rules/audio.md +172 -0
  331. package/prisma/skills/remotion-video-creation/rules/calculate-metadata.md +104 -0
  332. package/prisma/skills/remotion-video-creation/rules/can-decode.md +75 -0
  333. package/prisma/skills/remotion-video-creation/rules/charts.md +58 -0
  334. package/prisma/skills/remotion-video-creation/rules/compositions.md +146 -0
  335. package/prisma/skills/remotion-video-creation/rules/display-captions.md +126 -0
  336. package/prisma/skills/remotion-video-creation/rules/extract-frames.md +229 -0
  337. package/prisma/skills/remotion-video-creation/rules/fonts.md +152 -0
  338. package/prisma/skills/remotion-video-creation/rules/get-audio-duration.md +58 -0
  339. package/prisma/skills/remotion-video-creation/rules/get-video-dimensions.md +68 -0
  340. package/prisma/skills/remotion-video-creation/rules/get-video-duration.md +58 -0
  341. package/prisma/skills/remotion-video-creation/rules/gifs.md +138 -0
  342. package/prisma/skills/remotion-video-creation/rules/images.md +130 -0
  343. package/prisma/skills/remotion-video-creation/rules/import-srt-captions.md +67 -0
  344. package/prisma/skills/remotion-video-creation/rules/lottie.md +67 -0
  345. package/prisma/skills/remotion-video-creation/rules/measuring-dom-nodes.md +34 -0
  346. package/prisma/skills/remotion-video-creation/rules/measuring-text.md +143 -0
  347. package/prisma/skills/remotion-video-creation/rules/sequencing.md +106 -0
  348. package/prisma/skills/remotion-video-creation/rules/tailwind.md +11 -0
  349. package/prisma/skills/remotion-video-creation/rules/text-animations.md +20 -0
  350. package/prisma/skills/remotion-video-creation/rules/timing.md +179 -0
  351. package/prisma/skills/remotion-video-creation/rules/transcribe-captions.md +19 -0
  352. package/prisma/skills/remotion-video-creation/rules/transitions.md +122 -0
  353. package/prisma/skills/remotion-video-creation/rules/trimming.md +52 -0
  354. package/prisma/skills/remotion-video-creation/rules/videos.md +171 -0
  355. package/prisma/skills/repo-scan/SKILL.md +79 -0
  356. package/prisma/skills/research-ops/SKILL.md +113 -0
  357. package/prisma/skills/returns-reverse-logistics/SKILL.md +240 -0
  358. package/prisma/skills/rules-distill/SKILL.md +265 -0
  359. package/prisma/skills/rules-distill/scripts/scan-rules.sh +58 -0
  360. package/prisma/skills/rules-distill/scripts/scan-skills.sh +129 -0
  361. package/prisma/skills/rust-patterns/SKILL.md +500 -0
  362. package/prisma/skills/rust-testing/SKILL.md +501 -0
  363. package/prisma/skills/safety-guard/SKILL.md +76 -0
  364. package/prisma/skills/santa-method/SKILL.md +307 -0
  365. package/prisma/skills/scientific-db-pubmed-database/SKILL.md +176 -0
  366. package/prisma/skills/scientific-db-uspto-database/SKILL.md +178 -0
  367. package/prisma/skills/scientific-pkg-gget/SKILL.md +167 -0
  368. package/prisma/skills/scientific-thinking-literature-review/SKILL.md +193 -0
  369. package/prisma/skills/scientific-thinking-scholar-evaluation/SKILL.md +161 -0
  370. package/prisma/skills/search-first/SKILL.md +183 -0
  371. package/prisma/skills/security-bounty-hunter/SKILL.md +100 -0
  372. package/prisma/skills/security-review/SKILL.md +504 -0
  373. package/prisma/skills/security-review/cloud-infrastructure-security.md +361 -0
  374. package/prisma/skills/security-scan/SKILL.md +166 -0
  375. package/prisma/skills/seo/SKILL.md +155 -0
  376. package/prisma/skills/skill-comply/SKILL.md +59 -0
  377. package/prisma/skills/skill-comply/fixtures/compliant_trace.jsonl +5 -0
  378. package/prisma/skills/skill-comply/fixtures/noncompliant_trace.jsonl +3 -0
  379. package/prisma/skills/skill-comply/fixtures/tdd_spec.yaml +44 -0
  380. package/prisma/skills/skill-comply/prompts/classifier.md +24 -0
  381. package/prisma/skills/skill-comply/prompts/scenario_generator.md +62 -0
  382. package/prisma/skills/skill-comply/prompts/spec_generator.md +42 -0
  383. package/prisma/skills/skill-comply/pyproject.toml +15 -0
  384. package/prisma/skills/skill-comply/scripts/__init__.py +0 -0
  385. package/prisma/skills/skill-comply/scripts/classifier.py +85 -0
  386. package/prisma/skills/skill-comply/scripts/grader.py +124 -0
  387. package/prisma/skills/skill-comply/scripts/parser.py +107 -0
  388. package/prisma/skills/skill-comply/scripts/report.py +170 -0
  389. package/prisma/skills/skill-comply/scripts/run.py +127 -0
  390. package/prisma/skills/skill-comply/scripts/runner.py +194 -0
  391. package/prisma/skills/skill-comply/scripts/scenario_generator.py +70 -0
  392. package/prisma/skills/skill-comply/scripts/spec_generator.py +72 -0
  393. package/prisma/skills/skill-comply/scripts/utils.py +13 -0
  394. package/prisma/skills/skill-comply/tests/test_grader.py +197 -0
  395. package/prisma/skills/skill-comply/tests/test_parser.py +90 -0
  396. package/prisma/skills/skill-comply/tests/test_runner.py +172 -0
  397. package/prisma/skills/skill-scout/SKILL.md +141 -0
  398. package/prisma/skills/skill-stocktake/SKILL.md +195 -0
  399. package/prisma/skills/skill-stocktake/scripts/quick-diff.sh +87 -0
  400. package/prisma/skills/skill-stocktake/scripts/save-results.sh +56 -0
  401. package/prisma/skills/skill-stocktake/scripts/scan.sh +170 -0
  402. package/prisma/skills/social-graph-ranker/SKILL.md +155 -0
  403. package/prisma/skills/social-publisher/SKILL.md +130 -0
  404. package/prisma/skills/springboot-patterns/SKILL.md +315 -0
  405. package/prisma/skills/springboot-security/SKILL.md +273 -0
  406. package/prisma/skills/springboot-tdd/SKILL.md +159 -0
  407. package/prisma/skills/springboot-verification/SKILL.md +232 -0
  408. package/prisma/skills/strategic-compact/SKILL.md +136 -0
  409. package/prisma/skills/swift-actor-persistence/SKILL.md +144 -0
  410. package/prisma/skills/swift-concurrency-6-2/SKILL.md +216 -0
  411. package/prisma/skills/swift-protocol-di-testing/SKILL.md +191 -0
  412. package/prisma/skills/swiftui-patterns/SKILL.md +259 -0
  413. package/prisma/skills/taste/SKILL.md +264 -0
  414. package/prisma/skills/taste/references/genre-taxonomy.md +87 -0
  415. package/prisma/skills/tdd-workflow/SKILL.md +583 -0
  416. package/prisma/skills/team-agent-orchestration/SKILL.md +111 -0
  417. package/prisma/skills/team-builder/SKILL.md +169 -0
  418. package/prisma/skills/terminal-ops/SKILL.md +110 -0
  419. package/prisma/skills/tinystruct-patterns/SKILL.md +279 -0
  420. package/prisma/skills/tinystruct-patterns/references/architecture.md +90 -0
  421. package/prisma/skills/tinystruct-patterns/references/data-handling.md +60 -0
  422. package/prisma/skills/tinystruct-patterns/references/database.md +99 -0
  423. package/prisma/skills/tinystruct-patterns/references/routing.md +64 -0
  424. package/prisma/skills/tinystruct-patterns/references/system-usage.md +97 -0
  425. package/prisma/skills/tinystruct-patterns/references/testing.md +72 -0
  426. package/prisma/skills/token-budget-advisor/SKILL.md +134 -0
  427. package/prisma/skills/ui-demo/SKILL.md +466 -0
  428. package/prisma/skills/ui-to-vue/SKILL.md +135 -0
  429. package/prisma/skills/uncloud/SKILL.md +344 -0
  430. package/prisma/skills/unified-notifications-ops/SKILL.md +188 -0
  431. package/prisma/skills/verification-loop/SKILL.md +127 -0
  432. package/prisma/skills/video-editing/SKILL.md +311 -0
  433. package/prisma/skills/videodb/SKILL.md +375 -0
  434. package/prisma/skills/videodb/reference/api-reference.md +550 -0
  435. package/prisma/skills/videodb/reference/capture-reference.md +407 -0
  436. package/prisma/skills/videodb/reference/capture.md +101 -0
  437. package/prisma/skills/videodb/reference/editor.md +443 -0
  438. package/prisma/skills/videodb/reference/generative.md +331 -0
  439. package/prisma/skills/videodb/reference/rtstream-reference.md +564 -0
  440. package/prisma/skills/videodb/reference/rtstream.md +65 -0
  441. package/prisma/skills/videodb/reference/search.md +230 -0
  442. package/prisma/skills/videodb/reference/streaming.md +406 -0
  443. package/prisma/skills/videodb/reference/use-cases.md +118 -0
  444. package/prisma/skills/videodb/scripts/ws_listener.py +282 -0
  445. package/prisma/skills/visa-doc-translate/README.md +86 -0
  446. package/prisma/skills/visa-doc-translate/SKILL.md +117 -0
  447. package/prisma/skills/vite-patterns/SKILL.md +450 -0
  448. package/prisma/skills/vue-patterns/SKILL.md +471 -0
  449. package/prisma/skills/windows-desktop-e2e/SKILL.md +888 -0
  450. package/prisma/skills/workspace-surface-audit/SKILL.md +126 -0
  451. package/prisma/skills/x-api/SKILL.md +235 -0
@@ -0,0 +1,416 @@
1
+ ---
2
+ name: laravel-patterns
3
+ description: Laravel architecture patterns, routing/controllers, Eloquent ORM, service layers, queues, events, caching, and API resources for production apps.
4
+ metadata:
5
+ origin: ECC
6
+ ---
7
+
8
+ # Laravel Development Patterns
9
+
10
+ Production-grade Laravel architecture patterns for scalable, maintainable applications.
11
+
12
+ ## When to Use
13
+
14
+ - Building Laravel web applications or APIs
15
+ - Structuring controllers, services, and domain logic
16
+ - Working with Eloquent models and relationships
17
+ - Designing APIs with resources and pagination
18
+ - Adding queues, events, caching, and background jobs
19
+
20
+ ## How It Works
21
+
22
+ - Structure the app around clear boundaries (controllers -> services/actions -> models).
23
+ - Use explicit bindings and scoped bindings to keep routing predictable; still enforce authorization for access control.
24
+ - Favor typed models, casts, and scopes to keep domain logic consistent.
25
+ - Keep IO-heavy work in queues and cache expensive reads.
26
+ - Centralize config in `config/*` and keep environments explicit.
27
+
28
+ ## Examples
29
+
30
+ ### Project Structure
31
+
32
+ Use a conventional Laravel layout with clear layer boundaries (HTTP, services/actions, models).
33
+
34
+ ### Recommended Layout
35
+
36
+ ```
37
+ app/
38
+ ├── Actions/ # Single-purpose use cases
39
+ ├── Console/
40
+ ├── Events/
41
+ ├── Exceptions/
42
+ ├── Http/
43
+ │ ├── Controllers/
44
+ │ ├── Middleware/
45
+ │ ├── Requests/ # Form request validation
46
+ │ └── Resources/ # API resources
47
+ ├── Jobs/
48
+ ├── Models/
49
+ ├── Policies/
50
+ ├── Providers/
51
+ ├── Services/ # Coordinating domain services
52
+ └── Support/
53
+ config/
54
+ database/
55
+ ├── factories/
56
+ ├── migrations/
57
+ └── seeders/
58
+ resources/
59
+ ├── views/
60
+ └── lang/
61
+ routes/
62
+ ├── api.php
63
+ ├── web.php
64
+ └── console.php
65
+ ```
66
+
67
+ ### Controllers -> Services -> Actions
68
+
69
+ Keep controllers thin. Put orchestration in services and single-purpose logic in actions.
70
+
71
+ ```php
72
+ final class CreateOrderAction
73
+ {
74
+ public function __construct(private OrderRepository $orders) {}
75
+
76
+ public function handle(CreateOrderData $data): Order
77
+ {
78
+ return $this->orders->create($data);
79
+ }
80
+ }
81
+
82
+ final class OrdersController extends Controller
83
+ {
84
+ public function __construct(private CreateOrderAction $createOrder) {}
85
+
86
+ public function store(StoreOrderRequest $request): JsonResponse
87
+ {
88
+ $order = $this->createOrder->handle($request->toDto());
89
+
90
+ return response()->json([
91
+ 'success' => true,
92
+ 'data' => OrderResource::make($order),
93
+ 'error' => null,
94
+ 'meta' => null,
95
+ ], 201);
96
+ }
97
+ }
98
+ ```
99
+
100
+ ### Routing and Controllers
101
+
102
+ Prefer route-model binding and resource controllers for clarity.
103
+
104
+ ```php
105
+ use Illuminate\Support\Facades\Route;
106
+
107
+ Route::middleware('auth:sanctum')->group(function () {
108
+ Route::apiResource('projects', ProjectController::class);
109
+ });
110
+ ```
111
+
112
+ ### Route Model Binding (Scoped)
113
+
114
+ Use scoped bindings to prevent cross-tenant access.
115
+
116
+ ```php
117
+ Route::scopeBindings()->group(function () {
118
+ Route::get('/accounts/{account}/projects/{project}', [ProjectController::class, 'show']);
119
+ });
120
+ ```
121
+
122
+ ### Nested Routes and Binding Names
123
+
124
+ - Keep prefixes and paths consistent to avoid double nesting (e.g., `conversation` vs `conversations`).
125
+ - Use a single parameter name that matches the bound model (e.g., `{conversation}` for `Conversation`).
126
+ - Prefer scoped bindings when nesting to enforce parent-child relationships.
127
+
128
+ ```php
129
+ use App\Http\Controllers\Api\ConversationController;
130
+ use App\Http\Controllers\Api\MessageController;
131
+ use Illuminate\Support\Facades\Route;
132
+
133
+ Route::middleware('auth:sanctum')->prefix('conversations')->group(function () {
134
+ Route::post('/', [ConversationController::class, 'store'])->name('conversations.store');
135
+
136
+ Route::scopeBindings()->group(function () {
137
+ Route::get('/{conversation}', [ConversationController::class, 'show'])
138
+ ->name('conversations.show');
139
+
140
+ Route::post('/{conversation}/messages', [MessageController::class, 'store'])
141
+ ->name('conversation-messages.store');
142
+
143
+ Route::get('/{conversation}/messages/{message}', [MessageController::class, 'show'])
144
+ ->name('conversation-messages.show');
145
+ });
146
+ });
147
+ ```
148
+
149
+ If you want a parameter to resolve to a different model class, define explicit binding. For custom binding logic, use `Route::bind()` or implement `resolveRouteBinding()` on the model.
150
+
151
+ ```php
152
+ use App\Models\AiConversation;
153
+ use Illuminate\Support\Facades\Route;
154
+
155
+ Route::model('conversation', AiConversation::class);
156
+ ```
157
+
158
+ ### Service Container Bindings
159
+
160
+ Bind interfaces to implementations in a service provider for clear dependency wiring.
161
+
162
+ ```php
163
+ use App\Repositories\EloquentOrderRepository;
164
+ use App\Repositories\OrderRepository;
165
+ use Illuminate\Support\ServiceProvider;
166
+
167
+ final class AppServiceProvider extends ServiceProvider
168
+ {
169
+ public function register(): void
170
+ {
171
+ $this->app->bind(OrderRepository::class, EloquentOrderRepository::class);
172
+ }
173
+ }
174
+ ```
175
+
176
+ ### Eloquent Model Patterns
177
+
178
+ ### Model Configuration
179
+
180
+ ```php
181
+ final class Project extends Model
182
+ {
183
+ use HasFactory;
184
+
185
+ protected $fillable = ['name', 'owner_id', 'status'];
186
+
187
+ protected $casts = [
188
+ 'status' => ProjectStatus::class,
189
+ 'archived_at' => 'datetime',
190
+ ];
191
+
192
+ public function owner(): BelongsTo
193
+ {
194
+ return $this->belongsTo(User::class, 'owner_id');
195
+ }
196
+
197
+ public function scopeActive(Builder $query): Builder
198
+ {
199
+ return $query->whereNull('archived_at');
200
+ }
201
+ }
202
+ ```
203
+
204
+ ### Custom Casts and Value Objects
205
+
206
+ Use enums or value objects for strict typing.
207
+
208
+ ```php
209
+ use Illuminate\Database\Eloquent\Casts\Attribute;
210
+
211
+ protected $casts = [
212
+ 'status' => ProjectStatus::class,
213
+ ];
214
+ ```
215
+
216
+ ```php
217
+ protected function budgetCents(): Attribute
218
+ {
219
+ return Attribute::make(
220
+ get: fn (int $value) => Money::fromCents($value),
221
+ set: fn (Money $money) => $money->toCents(),
222
+ );
223
+ }
224
+ ```
225
+
226
+ ### Eager Loading to Avoid N+1
227
+
228
+ ```php
229
+ $orders = Order::query()
230
+ ->with(['customer', 'items.product'])
231
+ ->latest()
232
+ ->paginate(25);
233
+ ```
234
+
235
+ ### Query Objects for Complex Filters
236
+
237
+ ```php
238
+ final class ProjectQuery
239
+ {
240
+ public function __construct(private Builder $query) {}
241
+
242
+ public function ownedBy(int $userId): self
243
+ {
244
+ $query = clone $this->query;
245
+
246
+ return new self($query->where('owner_id', $userId));
247
+ }
248
+
249
+ public function active(): self
250
+ {
251
+ $query = clone $this->query;
252
+
253
+ return new self($query->whereNull('archived_at'));
254
+ }
255
+
256
+ public function builder(): Builder
257
+ {
258
+ return $this->query;
259
+ }
260
+ }
261
+ ```
262
+
263
+ ### Global Scopes and Soft Deletes
264
+
265
+ Use global scopes for default filtering and `SoftDeletes` for recoverable records.
266
+ Use either a global scope or a named scope for the same filter, not both, unless you intend layered behavior.
267
+
268
+ ```php
269
+ use Illuminate\Database\Eloquent\SoftDeletes;
270
+ use Illuminate\Database\Eloquent\Builder;
271
+
272
+ final class Project extends Model
273
+ {
274
+ use SoftDeletes;
275
+
276
+ protected static function booted(): void
277
+ {
278
+ static::addGlobalScope('active', function (Builder $builder): void {
279
+ $builder->whereNull('archived_at');
280
+ });
281
+ }
282
+ }
283
+ ```
284
+
285
+ ### Query Scopes for Reusable Filters
286
+
287
+ ```php
288
+ use Illuminate\Database\Eloquent\Builder;
289
+
290
+ final class Project extends Model
291
+ {
292
+ public function scopeOwnedBy(Builder $query, int $userId): Builder
293
+ {
294
+ return $query->where('owner_id', $userId);
295
+ }
296
+ }
297
+
298
+ // In service, repository etc.
299
+ $projects = Project::ownedBy($user->id)->get();
300
+ ```
301
+
302
+ ### Transactions for Multi-Step Updates
303
+
304
+ ```php
305
+ use Illuminate\Support\Facades\DB;
306
+
307
+ DB::transaction(function (): void {
308
+ $order->update(['status' => 'paid']);
309
+ $order->items()->update(['paid_at' => now()]);
310
+ });
311
+ ```
312
+
313
+ ### Migrations
314
+
315
+ ### Naming Convention
316
+
317
+ - File names use timestamps: `YYYY_MM_DD_HHMMSS_create_users_table.php`
318
+ - Migrations use anonymous classes (no named class); the filename communicates intent
319
+ - Table names are `snake_case` and plural by default
320
+
321
+ ### Example Migration
322
+
323
+ ```php
324
+ use Illuminate\Database\Migrations\Migration;
325
+ use Illuminate\Database\Schema\Blueprint;
326
+ use Illuminate\Support\Facades\Schema;
327
+
328
+ return new class extends Migration
329
+ {
330
+ public function up(): void
331
+ {
332
+ Schema::create('orders', function (Blueprint $table): void {
333
+ $table->id();
334
+ $table->foreignId('customer_id')->constrained()->cascadeOnDelete();
335
+ $table->string('status', 32)->index();
336
+ $table->unsignedInteger('total_cents');
337
+ $table->timestamps();
338
+ });
339
+ }
340
+
341
+ public function down(): void
342
+ {
343
+ Schema::dropIfExists('orders');
344
+ }
345
+ };
346
+ ```
347
+
348
+ ### Form Requests and Validation
349
+
350
+ Keep validation in form requests and transform inputs to DTOs.
351
+
352
+ ```php
353
+ use App\Models\Order;
354
+
355
+ final class StoreOrderRequest extends FormRequest
356
+ {
357
+ public function authorize(): bool
358
+ {
359
+ return $this->user()?->can('create', Order::class) ?? false;
360
+ }
361
+
362
+ public function rules(): array
363
+ {
364
+ return [
365
+ 'customer_id' => ['required', 'integer', 'exists:customers,id'],
366
+ 'items' => ['required', 'array', 'min:1'],
367
+ 'items.*.sku' => ['required', 'string'],
368
+ 'items.*.quantity' => ['required', 'integer', 'min:1'],
369
+ ];
370
+ }
371
+
372
+ public function toDto(): CreateOrderData
373
+ {
374
+ return new CreateOrderData(
375
+ customerId: (int) $this->validated('customer_id'),
376
+ items: $this->validated('items'),
377
+ );
378
+ }
379
+ }
380
+ ```
381
+
382
+ ### API Resources
383
+
384
+ Keep API responses consistent with resources and pagination.
385
+
386
+ ```php
387
+ $projects = Project::query()->active()->paginate(25);
388
+
389
+ return response()->json([
390
+ 'success' => true,
391
+ 'data' => ProjectResource::collection($projects->items()),
392
+ 'error' => null,
393
+ 'meta' => [
394
+ 'page' => $projects->currentPage(),
395
+ 'per_page' => $projects->perPage(),
396
+ 'total' => $projects->total(),
397
+ ],
398
+ ]);
399
+ ```
400
+
401
+ ### Events, Jobs, and Queues
402
+
403
+ - Emit domain events for side effects (emails, analytics)
404
+ - Use queued jobs for slow work (reports, exports, webhooks)
405
+ - Prefer idempotent handlers with retries and backoff
406
+
407
+ ### Caching
408
+
409
+ - Cache read-heavy endpoints and expensive queries
410
+ - Invalidate caches on model events (created/updated/deleted)
411
+ - Use tags when caching related data for easy invalidation
412
+
413
+ ### Configuration and Environments
414
+
415
+ - Keep secrets in `.env` and config in `config/*.php`
416
+ - Use per-environment config overrides and `config:cache` in production
@@ -0,0 +1,230 @@
1
+ ---
2
+ name: laravel-plugin-discovery
3
+ description: Discover and evaluate Laravel packages via LaraPlugins.io MCP. Use when the user wants to find plugins, check package health, or assess Laravel/PHP compatibility.
4
+ metadata:
5
+ origin: ECC
6
+ ---
7
+
8
+ # Laravel Plugin Discovery
9
+
10
+ Find, evaluate, and choose healthy Laravel packages using the LaraPlugins.io MCP server.
11
+
12
+ ## When to Use
13
+
14
+ - User wants to find Laravel packages for a specific feature (e.g. "auth", "permissions", "admin panel")
15
+ - User asks "what package should I use for..." or "is there a Laravel package for..."
16
+ - User wants to check if a package is actively maintained
17
+ - User needs to verify Laravel version compatibility
18
+ - User wants to assess package health before adding to a project
19
+
20
+ ## MCP Requirement
21
+
22
+ LaraPlugins MCP server must be configured. Add to your `~/.claude.json` mcpServers:
23
+
24
+ ```json
25
+ "laraplugins": {
26
+ "type": "http",
27
+ "url": "https://laraplugins.io/mcp/plugins"
28
+ }
29
+ ```
30
+
31
+ No API key required — the server is free for the Laravel community.
32
+
33
+ ## MCP Tools
34
+
35
+ The LaraPlugins MCP provides two primary tools:
36
+
37
+ ### SearchPluginTool
38
+
39
+ Search packages by keyword, health score, vendor, and version compatibility.
40
+
41
+ **Parameters:**
42
+ - `text_search` (string, optional): Keyword to search (e.g. "permission", "admin", "api")
43
+ - `health_score` (string, optional): Filter by health band — `Healthy`, `Medium`, `Unhealthy`, or `Unrated`
44
+ - `laravel_compatibility` (string, optional): Filter by Laravel version — `"5"`, `"6"`, `"7"`, `"8"`, `"9"`, `"10"`, `"11"`, `"12"`, `"13"`
45
+ - `php_compatibility` (string, optional): Filter by PHP version — `"7.4"`, `"8.0"`, `"8.1"`, `"8.2"`, `"8.3"`, `"8.4"`, `"8.5"`
46
+ - `vendor_filter` (string, optional): Filter by vendor name (e.g. "spatie", "laravel")
47
+ - `page` (number, optional): Page number for pagination
48
+
49
+ ### GetPluginDetailsTool
50
+
51
+ Fetch detailed metrics, readme content, and version history for a specific package.
52
+
53
+ **Parameters:**
54
+ - `package` (string, required): Full Composer package name (e.g. "spatie/laravel-permission")
55
+ - `include_versions` (boolean, optional): Include version history in response
56
+
57
+ ---
58
+
59
+ ## How It Works
60
+
61
+ ### Finding Packages
62
+
63
+ When the user wants to discover packages for a feature:
64
+
65
+ 1. Use `SearchPluginTool` with relevant keywords
66
+ 2. Apply filters for health score, Laravel version, or PHP version
67
+ 3. Review the results with package names, descriptions, and health indicators
68
+
69
+ ### Evaluating Packages
70
+
71
+ When the user wants to assess a specific package:
72
+
73
+ 1. Use `GetPluginDetailsTool` with the package name
74
+ 2. Review health score, last updated date, Laravel version support
75
+ 3. Check vendor reputation and risk indicators
76
+
77
+ ### Checking Compatibility
78
+
79
+ When the user needs Laravel or PHP version compatibility:
80
+
81
+ 1. Search with `laravel_compatibility` filter set to their version
82
+ 2. Or get details on a specific package to see its supported versions
83
+
84
+ ---
85
+
86
+ ## Examples
87
+
88
+ ### Example: Find Authentication Packages
89
+
90
+ ```
91
+ SearchPluginTool({
92
+ text_search: "authentication",
93
+ health_score: "Healthy"
94
+ })
95
+ ```
96
+
97
+ Returns packages matching "authentication" with healthy status:
98
+ - spatie/laravel-permission
99
+ - laravel/breeze
100
+ - laravel/passport
101
+ - etc.
102
+
103
+ ### Example: Find Laravel 12 Compatible Packages
104
+
105
+ ```
106
+ SearchPluginTool({
107
+ text_search: "admin panel",
108
+ laravel_compatibility: "12"
109
+ })
110
+ ```
111
+
112
+ Returns packages compatible with Laravel 12.
113
+
114
+ ### Example: Get Package Details
115
+
116
+ ```
117
+ GetPluginDetailsTool({
118
+ package: "spatie/laravel-permission",
119
+ include_versions: true
120
+ })
121
+ ```
122
+
123
+ Returns:
124
+ - Health score and last activity
125
+ - Laravel/PHP version support
126
+ - Vendor reputation (risk score)
127
+ - Version history
128
+ - Brief description
129
+
130
+ ### Example: Find Packages by Vendor
131
+
132
+ ```
133
+ SearchPluginTool({
134
+ vendor_filter: "spatie",
135
+ health_score: "Healthy"
136
+ })
137
+ ```
138
+
139
+ Returns all healthy packages from vendor "spatie".
140
+
141
+ ---
142
+
143
+ ## Filtering Best Practices
144
+
145
+ ### By Health Score
146
+
147
+ | Health Band | Meaning |
148
+ |-------------|---------|
149
+ | `Healthy` | Active maintenance, recent updates |
150
+ | `Medium` | Occasional updates, may need attention |
151
+ | `Unhealthy` | Abandoned or infrequently maintained |
152
+ | `Unrated` | Not yet assessed |
153
+
154
+ **Recommendation**: Prefer `Healthy` packages for production applications.
155
+
156
+ ### By Laravel Version
157
+
158
+ | Version | Notes |
159
+ |---------|-------|
160
+ | `13` | Latest Laravel |
161
+ | `12` | Current stable |
162
+ | `11` | Still widely used |
163
+ | `10` | Legacy but common |
164
+ | `5`-`9` | Deprecated |
165
+
166
+ **Recommendation**: Match the target project's Laravel version.
167
+
168
+ ### Combining Filters
169
+
170
+ ```typescript
171
+ // Find healthy, Laravel 12 compatible packages for permissions
172
+ SearchPluginTool({
173
+ text_search: "permission",
174
+ health_score: "Healthy",
175
+ laravel_compatibility: "12"
176
+ })
177
+ ```
178
+
179
+ ---
180
+
181
+ ## Response Interpretation
182
+
183
+ ### Search Results
184
+
185
+ Each result includes:
186
+ - Package name (e.g. `spatie/laravel-permission`)
187
+ - Brief description
188
+ - Health status indicator
189
+ - Laravel version support badges
190
+
191
+ ### Package Details
192
+
193
+ The detailed response includes:
194
+ - **Health Score**: Numeric or band indicator
195
+ - **Last Activity**: When the package was last updated
196
+ - **Laravel Support**: Version compatibility matrix
197
+ - **PHP Support**: PHP version compatibility
198
+ - **Risk Score**: Vendor trust indicators
199
+ - **Version History**: Recent release timeline
200
+
201
+ ---
202
+
203
+ ## Common Use Cases
204
+
205
+ | Scenario | Recommended Approach |
206
+ |----------|---------------------|
207
+ | "What package for auth?" | Search "auth" with healthy filter |
208
+ | "Is spatie/package still maintained?" | Get details, check health score |
209
+ | "Need Laravel 12 packages" | Search with laravel_compatibility: "12" |
210
+ | "Find admin panel packages" | Search "admin panel", review results |
211
+ | "Check vendor reputation" | Search by vendor, check details |
212
+
213
+ ---
214
+
215
+ ## Best Practices
216
+
217
+ 1. **Always filter by health** — Use `health_score: "Healthy"` for production projects
218
+ 2. **Match Laravel version** — Always check `laravel_compatibility` matches the target project
219
+ 3. **Check vendor reputation** — Prefer packages from known vendors (spatie, laravel, etc.)
220
+ 4. **Review before recommending** — Use GetPluginDetailsTool for a comprehensive assessment
221
+ 5. **No API key needed** — The MCP is free, no authentication required
222
+
223
+ ---
224
+
225
+ ## Related Skills
226
+
227
+ - `laravel-patterns` — Laravel architecture and patterns
228
+ - `laravel-tdd` — Test-driven development for Laravel
229
+ - `laravel-security` — Laravel security best practices
230
+ - `documentation-lookup` — General library documentation lookup (Context7)