cue-ai 0.9.0 → 0.9.2

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 (310) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/README.md +82 -33
  3. package/bin/cue-review-progress +107 -0
  4. package/bin/cue-review-watch +98 -0
  5. package/dist/cue.js +7352 -3744
  6. package/package.json +16 -5
  7. package/profiles/_types.ts +9 -0
  8. package/profiles/backend/profile.yaml +2 -0
  9. package/profiles/blog-writer/profile.yaml +10 -0
  10. package/profiles/browser/profile.yaml +9 -2
  11. package/profiles/builder/profile.yaml +3 -6
  12. package/profiles/career/profile.yaml +13 -2
  13. package/profiles/claude-api/profile.yaml +1 -1
  14. package/profiles/commerce/profile.yaml +27 -3
  15. package/profiles/core/logo.png +0 -0
  16. package/profiles/core/profile.yaml +62 -2
  17. package/profiles/dash-merge-test/profile.yaml +109 -0
  18. package/profiles/designer/profile.yaml +2 -0
  19. package/profiles/designer-medusa-next/profile.yaml +4 -1
  20. package/profiles/designer-medusa-vite/profile.yaml +4 -1
  21. package/profiles/docs-writer/profile.yaml +3 -1
  22. package/profiles/eu-tender-research/README.md +48 -0
  23. package/profiles/eu-tender-research/logo.png +0 -0
  24. package/profiles/eu-tender-research/profile.yaml +108 -0
  25. package/profiles/finance/logo.png +0 -0
  26. package/profiles/finance/profile.yaml +46 -0
  27. package/profiles/frontend/profile.yaml +5 -9
  28. package/profiles/growth/profile.yaml +2 -3
  29. package/profiles/gstack/profile.yaml +15 -0
  30. package/profiles/higgsfield/profile.yaml +3 -0
  31. package/profiles/hyperframes/logo.png +0 -0
  32. package/profiles/hyperframes/profile.yaml +59 -0
  33. package/profiles/improver/profile.yaml +88 -0
  34. package/profiles/marketing/profile.yaml +0 -3
  35. package/profiles/medusa-dev/profile.yaml +2 -0
  36. package/profiles/medusa-next/profile.yaml +2 -3
  37. package/profiles/medusa-vite/profile.yaml +2 -3
  38. package/profiles/n8n/logo.png +0 -0
  39. package/profiles/n8n/profile.yaml +50 -0
  40. package/profiles/nextjs/profile.yaml +2 -3
  41. package/profiles/ops/profile.yaml +2 -0
  42. package/profiles/postizz/profile.yaml +13 -3
  43. package/profiles/python/profile.yaml +3 -0
  44. package/profiles/research/profile.yaml +3 -1
  45. package/profiles/schema.json +10 -0
  46. package/profiles/secops/profile.yaml +2 -0
  47. package/profiles/seo/profile.yaml +56 -0
  48. package/profiles/skill-writer/profile.yaml +8 -0
  49. package/profiles/ssh/profile.yaml +32 -0
  50. package/profiles/strapi/logo.png +0 -0
  51. package/profiles/strapi/profile.yaml +45 -0
  52. package/profiles/stripe/logo.png +0 -0
  53. package/profiles/stripe/profile.yaml +1 -0
  54. package/profiles/supabase/logo.png +0 -0
  55. package/profiles/supabase/profile.yaml +85 -0
  56. package/profiles/vercel/logo.png +0 -0
  57. package/profiles/vercel/profile.yaml +25 -1
  58. package/profiles/vite/profile.yaml +4 -3
  59. package/profiles/web-frontend-base/profile.yaml +5 -4
  60. package/profiles/webshop/profile.yaml +23 -5
  61. package/profiles/x-growth-bot/profile.yaml +44 -0
  62. package/resources/icons/generate-icons.py +128 -2
  63. package/resources/mcps/configs/claude.sanitized.json +42 -0
  64. package/resources/mcps/configs/codex.sanitized.json +7 -0
  65. package/resources/skills/skills/career/resume-version-manager/SKILL.md +351 -0
  66. package/resources/skills/skills/career/salary-negotiation-prep/SKILL.md +378 -0
  67. package/resources/skills/skills/content/pdf/SKILL.md +2 -0
  68. package/resources/skills/skills/content/postiz-cards/SKILL.md +48 -0
  69. package/resources/skills/skills/content/postiz-cards/scripts/analytics.sh +38 -0
  70. package/resources/skills/skills/content/postiz-cards/scripts/card.sh +42 -0
  71. package/resources/skills/skills/content/postiz-cards/scripts/lint.py +38 -0
  72. package/resources/skills/skills/design/headless-gif-demo/SKILL.md +1 -1
  73. package/resources/skills/skills/design/readme-svg-design/SKILL.md +1 -1
  74. package/resources/skills/skills/eu-funding/grant-outreach/SKILL.md +70 -0
  75. package/resources/skills/skills/eu-funding/hu-grant-finder/SKILL.md +114 -0
  76. package/resources/skills/skills/eu-funding/hu-grant-finder/evals.md +26 -0
  77. package/resources/skills/skills/eu-funding/ted-tender-search/SKILL.md +80 -0
  78. package/resources/skills/skills/eu-funding/ted-tender-search/evals.md +26 -0
  79. package/resources/skills/skills/eu-funding/ted-tender-search/scripts/ted-search.sh +46 -0
  80. package/resources/skills/skills/event-design/wedding-invitations/SKILL.md +1 -1
  81. package/resources/skills/skills/github/gx-agents/SKILL.md +96 -0
  82. package/resources/skills/skills/gstack/design-shotgun/SKILL.md +1 -1
  83. package/resources/skills/skills/marketing/ab-test-analyzer/SKILL.md +1 -1
  84. package/resources/skills/skills/marketing/ab-test-setup-and-analysis/SKILL.md +1 -1
  85. package/resources/skills/skills/marketing/account-structure-review/SKILL.md +1 -1
  86. package/resources/skills/skills/marketing/ad-copy-variant-generator/SKILL.md +1 -1
  87. package/resources/skills/skills/marketing/ad-extension-audit/SKILL.md +1 -1
  88. package/resources/skills/skills/marketing/ad-spend-allocator/SKILL.md +1 -1
  89. package/resources/skills/skills/marketing/anomaly-detection/SKILL.md +1 -1
  90. package/resources/skills/skills/marketing/attribution-model-comparison/SKILL.md +1 -1
  91. package/resources/skills/skills/marketing/audience-overlap-analysis/SKILL.md +7 -1
  92. package/resources/skills/skills/marketing/bid-strategy-recommendations/SKILL.md +7 -1
  93. package/resources/skills/skills/marketing/budget-scenario-planner/SKILL.md +6 -1
  94. package/resources/skills/skills/marketing/campaign-naming-convention-builder/SKILL.md +7 -1
  95. package/resources/skills/skills/marketing/channel-mix-optimizer/SKILL.md +7 -1
  96. package/resources/skills/skills/marketing/client-report-narratives/SKILL.md +6 -1
  97. package/resources/skills/skills/marketing/competitor-creative-analysis/SKILL.md +1 -1
  98. package/resources/skills/skills/marketing/competitor-teardown/SKILL.md +1 -1
  99. package/resources/skills/skills/marketing/content-repurposer/SKILL.md +1 -1
  100. package/resources/skills/skills/marketing/conversion-path-analysis/SKILL.md +1 -1
  101. package/resources/skills/skills/marketing/cpa-diagnostics/SKILL.md +1 -1
  102. package/resources/skills/skills/marketing/creative-fatigue-detection/SKILL.md +1 -1
  103. package/resources/skills/skills/marketing/day-hour-performance-breakdown/SKILL.md +1 -1
  104. package/resources/skills/skills/marketing/device-performance-split/SKILL.md +1 -1
  105. package/resources/skills/skills/marketing/e2e-seo-assistant/SKILL.md +1 -1
  106. package/resources/skills/skills/marketing/email-sequence-writer/SKILL.md +1 -1
  107. package/resources/skills/skills/marketing/frequency-cap-recommendations/SKILL.md +1 -1
  108. package/resources/skills/skills/marketing/geo-performance-analysis/SKILL.md +1 -1
  109. package/resources/skills/skills/marketing/google-ads-audit/SKILL.md +1 -1
  110. package/resources/skills/skills/marketing/icp-research-assistant/SKILL.md +1 -1
  111. package/resources/skills/skills/marketing/keyword-cannibalization-check/SKILL.md +1 -1
  112. package/resources/skills/skills/marketing/landing-page-audit/SKILL.md +1 -1
  113. package/resources/skills/skills/marketing/landing-page-audit-quick/SKILL.md +1 -1
  114. package/resources/skills/skills/marketing/linkedin-ads-audit/SKILL.md +1 -1
  115. package/resources/skills/skills/marketing/meta-ads-audit/SKILL.md +1 -1
  116. package/resources/skills/skills/marketing/pacing-monitor/SKILL.md +1 -1
  117. package/resources/skills/skills/marketing/performance-benchmarking/SKILL.md +1 -1
  118. package/resources/skills/skills/marketing/programmatic-seo-builder/SKILL.md +1 -1
  119. package/resources/skills/skills/marketing/quality-score-breakdown/SKILL.md +1 -1
  120. package/resources/skills/skills/marketing/reddit-ads-audit/SKILL.md +1 -1
  121. package/resources/skills/skills/marketing/retargeting-window-analysis/SKILL.md +1 -1
  122. package/resources/skills/skills/marketing/roas-forecasting/SKILL.md +1 -1
  123. package/resources/skills/skills/marketing/search-term-mining/SKILL.md +1 -1
  124. package/resources/skills/skills/marketing/utm-tracking-generator/SKILL.md +1 -1
  125. package/resources/skills/skills/marketing/wasted-spend-finder/SKILL.md +1 -1
  126. package/resources/skills/skills/marketing/weekly-account-summary/SKILL.md +1 -1
  127. package/resources/skills/skills/meta/awesome-list-submit/SKILL.md +4 -4
  128. package/resources/skills/skills/meta/cue-dashboard/SKILL.md +109 -0
  129. package/resources/skills/skills/meta/cue-developer/SKILL.md +161 -0
  130. package/resources/skills/skills/meta/cue-developer/evals/evals.json +57 -0
  131. package/resources/skills/skills/meta/cue-developer/references/architecture.md +65 -0
  132. package/resources/skills/skills/meta/cue-developer/references/build_and_test.md +72 -0
  133. package/resources/skills/skills/meta/cue-developer/references/contributing.md +75 -0
  134. package/resources/skills/skills/meta/cue-developer/references/conventions.md +57 -0
  135. package/resources/skills/skills/meta/cue-developer/references/first_time_setup.md +51 -0
  136. package/resources/skills/skills/meta/cue-developer/references/skill_and_mcp_authoring.md +84 -0
  137. package/resources/skills/skills/meta/cue-developer/references/troubleshooting.md +42 -0
  138. package/resources/skills/skills/meta/delegation-check/SKILL.md +148 -0
  139. package/resources/skills/skills/meta/delegation-check/specs/scan-algorithm.md +125 -0
  140. package/resources/skills/skills/meta/delegation-check/specs/separation-rules.md +190 -0
  141. package/resources/skills/skills/meta/focus/SKILL.md +62 -0
  142. package/resources/skills/skills/meta/help/SKILL.md +1 -1
  143. package/resources/skills/skills/meta/integrity-tags/SKILL.md +2 -0
  144. package/resources/skills/skills/meta/next-steps/SKILL.md +124 -0
  145. package/resources/skills/skills/meta/next-steps/evals/eval-set.json +92 -0
  146. package/resources/skills/skills/meta/profile-from-docs/SKILL.md +141 -0
  147. package/resources/skills/skills/meta/ralph-loop/SKILL.md +83 -0
  148. package/resources/skills/skills/meta/ralph-loop/scripts/loop.sh +73 -0
  149. package/resources/skills/skills/meta/skill-simplify/SKILL.md +136 -0
  150. package/resources/skills/skills/meta/skill-simplify/phases/01-analysis.md +173 -0
  151. package/resources/skills/skills/meta/skill-simplify/phases/02-optimize.md +104 -0
  152. package/resources/skills/skills/meta/skill-simplify/phases/03-check.md +145 -0
  153. package/resources/skills/skills/meta/smart-loader/scripts/smart-lookup.sh +13 -4
  154. package/resources/skills/skills/meta/verify-council/SKILL.md +182 -0
  155. package/resources/skills/skills/meta/verify-council/references/lane-prompts.md +103 -0
  156. package/resources/skills/skills/meta/verify-council/references/workflow.js +217 -0
  157. package/resources/skills/skills/nvidia/aiq-research/SKILL.md +1 -1
  158. package/resources/skills/skills/nvidia/cuopt-developer/SKILL.md +16 -1
  159. package/resources/skills/skills/nvidia/cuopt-developer/resources/contributing.md +2 -2
  160. package/resources/skills/skills/nvidia/cuopt-developer/resources/numerical_debugging.md +128 -0
  161. package/resources/skills/skills/nvidia/cuopt-developer/resources/python_bindings.md +2 -9
  162. package/resources/skills/skills/nvidia/cuopt-developer/resources/vrp_skills.md +166 -0
  163. package/resources/skills/skills/nvidia/cuopt-install/SKILL.md +2 -10
  164. package/resources/skills/skills/nvidia/cuopt-numerical-optimization-api-c/SKILL.md +3 -23
  165. package/resources/skills/skills/nvidia/cuopt-numerical-optimization-api-c/resources/examples.md +40 -20
  166. package/resources/skills/skills/nvidia/cuopt-numerical-optimization-api-python/SKILL.md +5 -1
  167. package/resources/skills/skills/nvidia/skill-evolution/SKILL.md +4 -5
  168. package/resources/skills/skills/research/trendradar/SKILL.md +1 -1
  169. package/resources/skills/skills/ssh/ssh-config/SKILL.md +94 -0
  170. package/resources/skills/skills/ssh/ssh-copy/SKILL.md +92 -0
  171. package/resources/skills/skills/ssh/ssh-harden/SKILL.md +108 -0
  172. package/resources/skills/skills/ssh/ssh-keys/SKILL.md +82 -0
  173. package/resources/skills/skills/ssh/ssh-paste-image/LICENSE +28 -0
  174. package/resources/skills/skills/ssh/ssh-paste-image/SKILL.md +149 -0
  175. package/resources/skills/skills/ssh/ssh-paste-image/scripts/build.sh +29 -0
  176. package/resources/skills/skills/ssh/ssh-paste-image/scripts/client/go.mod +3 -0
  177. package/resources/skills/skills/ssh/ssh-paste-image/scripts/client/main.go +79 -0
  178. package/resources/skills/skills/ssh/ssh-paste-image/scripts/daemon/ccimgd.service +12 -0
  179. package/resources/skills/skills/ssh/ssh-paste-image/scripts/daemon/com.ccimgd.plist +20 -0
  180. package/resources/skills/skills/ssh/ssh-paste-image/scripts/daemon/go.mod +3 -0
  181. package/resources/skills/skills/ssh/ssh-paste-image/scripts/daemon/main.go +98 -0
  182. package/resources/skills/skills/ssh/ssh-tunnel/SKILL.md +96 -0
  183. package/resources/skills/skills/strapi/building-with-strapi/SKILL.md +112 -0
  184. package/resources/skills/skills/strapi/strapi-cli/SKILL.md +93 -0
  185. package/resources/skills/skills/strapi/strapi-content-api/SKILL.md +115 -0
  186. package/resources/skills/skills/strapi/strapi-deploy/SKILL.md +89 -0
  187. package/resources/skills/skills/strapi/strapi-mcp-setup/SKILL.md +101 -0
  188. package/resources/skills/skills/strapi/strapi-plugins/SKILL.md +97 -0
  189. package/resources/skills/skills/tools/context7/SKILL.md +101 -0
  190. package/resources/skills/skills/tools/opensrc/SKILL.md +1 -1
  191. package/resources/skills/skills/tools/portless/SKILL.md +186 -0
  192. package/resources/skills/skills/xbot/operate/SKILL.md +229 -0
  193. package/src/commands/_index.ts +8 -0
  194. package/src/commands/ai-score.e2e.test.ts +11 -4
  195. package/src/commands/ai.ts +3 -4
  196. package/src/commands/auto-detect.ts +1 -1
  197. package/src/commands/cli.test.ts +1 -2
  198. package/src/commands/cli.ts +1 -1
  199. package/src/commands/cloud.ts +1 -1
  200. package/src/commands/current.ts +1 -4
  201. package/src/commands/dash.test.ts +110 -0
  202. package/src/commands/dash.ts +194 -0
  203. package/src/commands/dashboard.ts +26 -0
  204. package/src/commands/diff.ts +1 -1
  205. package/src/commands/discover.test.ts +1 -1
  206. package/src/commands/discover.ts +90 -40
  207. package/src/commands/doctor.test.ts +58 -0
  208. package/src/commands/doctor.ts +79 -3
  209. package/src/commands/eval-behavior.ts +1 -1
  210. package/src/commands/eval.ts +2 -2
  211. package/src/commands/evolve.ts +4 -3
  212. package/src/commands/failures.test.ts +1 -1
  213. package/src/commands/features-batch1.test.ts +6 -1
  214. package/src/commands/icon.ts +1 -5
  215. package/src/commands/import-profile.ts +1 -1
  216. package/src/commands/init.ts +50 -7
  217. package/src/commands/install-sh.e2e.test.ts +65 -0
  218. package/src/commands/launch-handoff.e2e.test.ts +88 -0
  219. package/src/commands/launch.e2e.test.ts +8 -1
  220. package/src/commands/launch.test.ts +29 -0
  221. package/src/commands/launch.ts +185 -131
  222. package/src/commands/lock.ts +0 -1
  223. package/src/commands/marketplace.ts +0 -4
  224. package/src/commands/materialize.ts +1 -1
  225. package/src/commands/mem.ts +341 -0
  226. package/src/commands/optimizer.ts +0 -3
  227. package/src/commands/playground.ts +1 -2
  228. package/src/commands/profile-draft-skill.ts +1 -1
  229. package/src/commands/replay-whatif.ts +1 -6
  230. package/src/commands/score.ts +2 -2
  231. package/src/commands/security.test.ts +88 -0
  232. package/src/commands/security.ts +74 -28
  233. package/src/commands/shell.test.ts +65 -4
  234. package/src/commands/shell.ts +67 -7
  235. package/src/commands/skills-test.ts +0 -1
  236. package/src/commands/skills.ts +28 -2
  237. package/src/commands/sources.ts +1 -2
  238. package/src/commands/status.ts +2 -6
  239. package/src/commands/submit-profile.ts +1 -1
  240. package/src/commands/suggest.ts +35 -10
  241. package/src/commands/trigger-gaps.test.ts +50 -0
  242. package/src/commands/trigger-gaps.ts +63 -29
  243. package/src/commands/update.ts +1 -1
  244. package/src/commands/validate.ts +16 -4
  245. package/src/commands/watch-live.ts +1 -1
  246. package/src/commands/workspace.ts +1 -1
  247. package/src/index.ts +26 -10
  248. package/src/lib/active-sessions.ts +1 -1
  249. package/src/lib/agent-adapters.test.ts +100 -0
  250. package/src/lib/agent-adapters.ts +2 -2
  251. package/src/lib/analytics.test.ts +88 -0
  252. package/src/lib/analytics.ts +82 -1
  253. package/src/lib/auto-detect.test.ts +10 -4
  254. package/src/lib/auto-detect.ts +19 -23
  255. package/src/lib/brand-icons.ts +0 -1
  256. package/src/lib/cache.ts +2 -3
  257. package/src/lib/claude-mem-env.test.ts +148 -0
  258. package/src/lib/claude-mem-env.ts +172 -0
  259. package/src/lib/combo-history.test.ts +53 -0
  260. package/src/lib/combo-history.ts +83 -0
  261. package/src/lib/companion-detect.test.ts +108 -0
  262. package/src/lib/companion-detect.ts +140 -0
  263. package/src/lib/companion-fetch.ts +4 -6
  264. package/src/lib/conditional-skills.test.ts +1 -1
  265. package/src/lib/config-paths.test.ts +53 -0
  266. package/src/lib/config-paths.ts +33 -0
  267. package/src/lib/dashboard-server.test.ts +351 -0
  268. package/src/lib/dashboard-server.ts +1476 -27
  269. package/src/lib/debug-log.test.ts +66 -0
  270. package/src/lib/debug-log.ts +45 -0
  271. package/src/lib/mcp-catalog.test.ts +102 -0
  272. package/src/lib/mcp-catalog.ts +193 -0
  273. package/src/lib/pair-suggestions.test.ts +111 -0
  274. package/src/lib/pair-suggestions.ts +98 -5
  275. package/src/lib/permissions.test.ts +76 -0
  276. package/src/lib/permissions.ts +125 -0
  277. package/src/lib/picker.test.ts +1106 -1
  278. package/src/lib/picker.ts +1230 -142
  279. package/src/lib/plugin-discovery.ts +126 -0
  280. package/src/lib/pr-poster.ts +1 -1
  281. package/src/lib/pr-throttle.ts +2 -6
  282. package/src/lib/profile-linter.test.ts +67 -1
  283. package/src/lib/profile-linter.ts +59 -14
  284. package/src/lib/profile-loader.test.ts +21 -0
  285. package/src/lib/profile-loader.ts +22 -3
  286. package/src/lib/profile-metrics.ts +2 -6
  287. package/src/lib/profile-names.test.ts +58 -0
  288. package/src/lib/repos.test.ts +57 -0
  289. package/src/lib/repos.ts +167 -0
  290. package/src/lib/resolver-npx.ts +10 -1
  291. package/src/lib/runtime-materializer.test.ts +200 -3
  292. package/src/lib/runtime-materializer.ts +129 -20
  293. package/src/lib/shared-profiles.ts +2 -3
  294. package/src/lib/skill-clis.test.ts +113 -0
  295. package/src/lib/skill-clis.ts +232 -0
  296. package/src/lib/skill-dependencies.ts +9 -1
  297. package/src/lib/skill-deps.ts +1 -1
  298. package/src/lib/skill-linter.ts +1 -1
  299. package/src/lib/skill-quality.ts +0 -1
  300. package/src/lib/skill-sandbox.test.ts +1 -1
  301. package/src/lib/skills-lock.test.ts +1 -1
  302. package/src/lib/telemetry-consent.ts +3 -5
  303. package/src/lib/telemetry-report.test.ts +2 -2
  304. package/src/lib/token-budget.ts +111 -0
  305. package/src/lib/trigger-gaps.test.ts +70 -0
  306. package/src/lib/trigger-gaps.ts +48 -6
  307. package/src/lib/tui/data.ts +1 -5
  308. package/src/lib/workflow-store.ts +150 -0
  309. package/src/lib/workspace-secrets.ts +0 -4
  310. package/src/lib/workspaces.ts +1 -1
@@ -0,0 +1,93 @@
1
+ ---
2
+ name: strapi-cli
3
+ description: 'Use when user says "Strapi CLI", "create a Strapi app", "strapi develop", "build/start Strapi", or "export/import Strapi data". Scaffold and run a Strapi v5 project.'
4
+ tags: [strapi, cli, cms, scaffolding, headless-cms]
5
+ ---
6
+
7
+ # Strapi CLI
8
+
9
+ Scaffold, run, and manage a Strapi v5 project from the command line.
10
+
11
+ ## Use This Skill For
12
+
13
+ - Creating a new Strapi project
14
+ - Running the dev server, building, and starting in production
15
+ - Exporting / importing / transferring content between environments
16
+ - Generating APIs, types, and listing routes/services
17
+ - Managing admin users from the terminal
18
+
19
+ ## Prerequisites
20
+
21
+ - Node.js LTS and a package manager (`yarn` recommended; `npm` works but
22
+ hides prompts for interactive commands like `admin:create-user`)
23
+ - Scaffolder: `create-strapi` (run via `npx`, no global install)
24
+ - In-project CLI: `@strapi/strapi`, invoked as `npm run strapi`,
25
+ `yarn strapi`, or `npx strapi`
26
+
27
+ ## Create a Project
28
+
29
+ ```bash
30
+ npx create-strapi@latest my-strapi-project
31
+ cd my-strapi-project
32
+ npm run develop # admin panel → http://localhost:1337/admin
33
+ ```
34
+
35
+ `strapi new`, `strapi install`, and `strapi watch-admin` from v4 were
36
+ removed in v5. Use `create-strapi` to scaffold and `develop` for watch mode.
37
+
38
+ ## Command Reference
39
+
40
+ The local `strapi` binary takes a category of subcommands. Prefix with your
41
+ package manager (`npm run strapi <cmd>` / `yarn strapi <cmd>`).
42
+
43
+ ### Development
44
+
45
+ | Command | What it does |
46
+ |---|---|
47
+ | `strapi develop` | Dev server with file watcher + auto-restart. Content-Type Builder is available here. Add `--no-watch-admin` to disable admin hot reload. |
48
+ | `strapi start` | Production-style run. Content-Type Builder is disabled (no restarts). |
49
+ | `strapi build` | Build the admin panel for production. |
50
+ | `strapi console` | Open a REPL with the `strapi` instance loaded. |
51
+
52
+ ### Data management
53
+
54
+ | Command | What it does |
55
+ |---|---|
56
+ | `strapi export` | Export content + config to `.tar` (optionally `.gz`, `.enc`). |
57
+ | `strapi import` | Import an export archive or unpacked directory (`-f <file>`). |
58
+ | `strapi transfer` | Stream data directly between two Strapi instances. |
59
+
60
+ ### Code generation
61
+
62
+ | Command | What it does |
63
+ |---|---|
64
+ | `strapi generate` | Interactive generator: API, controller, service, content-type, plugin, policy, middleware. |
65
+ | `strapi ts:generate-types` | Regenerate TypeScript types from the schema. |
66
+ | `strapi openapi generate` | Emit an OpenAPI spec for your content API. |
67
+
68
+ ### Cloud
69
+
70
+ | Command | What it does |
71
+ |---|---|
72
+ | `strapi login` / `logout` | Authenticate with Strapi Cloud. |
73
+ | `strapi deploy` | Deploy the project to Strapi Cloud. |
74
+
75
+ ### Listing & admin
76
+
77
+ - `strapi routes:list`, `policies:list`, `middlewares:list`,
78
+ `content-types:list`, `controllers:list`, `services:list`
79
+ - `strapi admin:create-user`, `admin:reset-user-password`,
80
+ `admin:list-users` (use `yarn`, not `npm`, so prompts render)
81
+
82
+ ## Rules
83
+
84
+ - Use `develop` while modeling content; `start` for production runs only.
85
+ - Run interactive admin commands with `yarn`, never `npm` (npm swallows the
86
+ prompts).
87
+ - Treat exports as backups before a risky migration or upgrade.
88
+ - Never commit the generated `.env`, `APP_KEYS`, or admin tokens.
89
+
90
+ ## Next Step
91
+
92
+ After the server is up, model content with `building-with-strapi`, or wire
93
+ an AI client with `strapi-mcp-setup`.
@@ -0,0 +1,115 @@
1
+ ---
2
+ name: strapi-content-api
3
+ description: 'Use when consuming a Strapi v5 backend over HTTP: REST endpoints, the populate/filters/sort/pagination params, GraphQL setup, API tokens, and permissions.'
4
+ tags: [strapi, rest-api, graphql, content-api, headless-cms]
5
+ ---
6
+
7
+ # Strapi Content API
8
+
9
+ Query a Strapi v5 backend from a storefront, app, or script over REST or
10
+ GraphQL.
11
+
12
+ ## Use This Skill For
13
+
14
+ - Calling the auto-generated REST endpoints
15
+ - Shaping responses with `populate`, `fields`, `filters`, `sort`, pagination
16
+ - Setting up and querying GraphQL
17
+ - Authenticating with API tokens and granting the right permissions
18
+
19
+ ## Prerequisites
20
+
21
+ - A running Strapi instance (default `http://localhost:1337`)
22
+ - For protected data: an API token from admin → Settings → API Tokens
23
+ - For GraphQL: the `@strapi/plugin-graphql` package installed
24
+
25
+ ## REST Endpoints
26
+
27
+ Strapi generates REST routes per content-type. Use the `pluralApiId` for
28
+ collection types and `singularApiId` for single types.
29
+
30
+ | Method | Collection route | Action |
31
+ |---|---|---|
32
+ | GET | `/api/:pluralApiId` | List documents |
33
+ | POST | `/api/:pluralApiId` | Create a document |
34
+ | GET | `/api/:pluralApiId/:documentId` | Get one document |
35
+ | PUT | `/api/:pluralApiId/:documentId` | Update a document |
36
+ | DELETE | `/api/:pluralApiId/:documentId` | Delete a document |
37
+
38
+ Single types drop the `documentId` segment (e.g. `GET /api/homepage`).
39
+ Entries are addressed by their 24-char `documentId`, not numeric `id`.
40
+
41
+ ```bash
42
+ # list, then fetch one
43
+ curl http://localhost:1337/api/restaurants
44
+ curl http://localhost:1337/api/restaurants/abc123documentid
45
+ ```
46
+
47
+ A list response wraps results in `{ data, meta }`, where `meta.pagination`
48
+ carries page info.
49
+
50
+ ## Query Parameters
51
+
52
+ Nothing populates by default; relations, media, components, and dynamic
53
+ zones come back only when you ask, and only if the role has find permission
54
+ on them.
55
+
56
+ ```bash
57
+ # populate relations + pick fields
58
+ curl "http://localhost:1337/api/restaurants?populate=*"
59
+ curl "http://localhost:1337/api/restaurants?populate[chef][fields][0]=name&fields[0]=title"
60
+
61
+ # filter, sort, paginate
62
+ curl "http://localhost:1337/api/restaurants?filters[city][\$eq]=Paris"
63
+ curl "http://localhost:1337/api/restaurants?sort=title:asc&pagination[page]=1&pagination[pageSize]=10"
64
+
65
+ # draft & publish
66
+ curl "http://localhost:1337/api/restaurants?status=published"
67
+ ```
68
+
69
+ Common filter operators: `$eq`, `$ne`, `$lt`, `$gt`, `$contains`,
70
+ `$containsi`, `$in`, `$null`. Combine with `$and` / `$or`.
71
+
72
+ ## GraphQL
73
+
74
+ ```bash
75
+ yarn add @strapi/plugin-graphql # or: npm install @strapi/plugin-graphql
76
+ ```
77
+
78
+ One endpoint serves everything: `/graphql` (default). The playground is at
79
+ the same URL in dev. Dynamic zones are union types, so query their fields
80
+ with inline fragments (`... on ComponentCategoryName`).
81
+
82
+ ```graphql
83
+ query {
84
+ restaurants(filters: { city: { eq: "Paris" } }, sort: "title:asc") {
85
+ documentId
86
+ title
87
+ chef { name }
88
+ }
89
+ }
90
+ ```
91
+
92
+ ## Authentication & Permissions
93
+
94
+ - **Public role**: grant find/findOne per content-type in admin → Settings
95
+ → Users & Permissions → Roles for unauthenticated reads.
96
+ - **API tokens**: send `Authorization: Bearer <token>` for read-only,
97
+ full-access, or custom-scoped server-to-server calls.
98
+
99
+ ```bash
100
+ curl -H "Authorization: Bearer $STRAPI_TOKEN" http://localhost:1337/api/orders
101
+ ```
102
+
103
+ ## Rules
104
+
105
+ - Address entries by `documentId`.
106
+ - Add `populate`/`fields` explicitly and grant matching permissions, or
107
+ relations return empty.
108
+ - Never ship a full-access token to a browser client; use the public role or
109
+ a narrowly scoped read-only token.
110
+ - URL-encode filter operators (`$eq`) in shells.
111
+
112
+ ## Next Step
113
+
114
+ For AI clients that manage content directly instead of raw HTTP, set up
115
+ `strapi-mcp-setup`.
@@ -0,0 +1,89 @@
1
+ ---
2
+ name: strapi-deploy
3
+ description: 'Use when deploying a Strapi v5 backend: Strapi Cloud via the CLI, or self-hosting with NODE_ENV=production build/start, pm2, env vars, and a production database.'
4
+ tags: [strapi, deployment, strapi-cloud, self-host, pm2]
5
+ ---
6
+
7
+ # Strapi Deploy
8
+
9
+ Deploy a Strapi v5 project to Strapi Cloud or your own server.
10
+
11
+ ## Use This Skill For
12
+
13
+ - Deploying to Strapi Cloud from the CLI
14
+ - Self-hosting: production build, start, process management, env config
15
+ - Moving content between environments
16
+
17
+ ## Prerequisites
18
+
19
+ - A built project (`npm run build`) that runs locally
20
+ - For Cloud: a Strapi Cloud account and the project-local `strapi` CLI
21
+ - For self-host: Node.js LTS on the server, a production database, and a
22
+ process manager (`pm2` recommended)
23
+
24
+ ## Option A: Strapi Cloud
25
+
26
+ ```bash
27
+ npm run strapi login # or: yarn strapi login
28
+ npm run strapi deploy
29
+ ```
30
+
31
+ Cloud handles the build, database, and hosting. Use this when you want the
32
+ fastest path and do not need to manage infrastructure.
33
+
34
+ ## Option B: Self-Host
35
+
36
+ ### 1. Configure for production
37
+
38
+ Set production env vars (never commit them): `NODE_ENV=production`,
39
+ `APP_KEYS`, `API_TOKEN_SALT`, `ADMIN_JWT_SECRET`, `JWT_SECRET`, and the
40
+ database connection (`DATABASE_*`). Point `config/database.ts` at a real
41
+ database (PostgreSQL/MySQL), not SQLite, for production.
42
+
43
+ ### 2. Build
44
+
45
+ ```bash
46
+ NODE_ENV=production npm run build # or: yarn build
47
+ ```
48
+
49
+ On Windows, wrap with cross-env: `cross-env NODE_ENV=production npm run build`.
50
+
51
+ ### 3. Start
52
+
53
+ ```bash
54
+ NODE_ENV=production npm run start # or: yarn start
55
+ ```
56
+
57
+ ### 4. Keep it running with pm2
58
+
59
+ ```bash
60
+ npm install -g pm2
61
+ pm2 start npm --name strapi -- run start
62
+ pm2 save
63
+ pm2 startup # generate the boot script
64
+ ```
65
+
66
+ Put a reverse proxy (nginx/Traefik) in front for TLS. If you self-host on
67
+ Coolify, the `coolify` skill covers the container + proxy + env workflow.
68
+
69
+ ## Moving Content Between Environments
70
+
71
+ ```bash
72
+ # back up before deploy
73
+ npm run strapi export -- --file backup.tar.gz
74
+
75
+ # or stream straight to another instance
76
+ npm run strapi transfer -- --to https://prod.example.com/admin
77
+ ```
78
+
79
+ ## Rules
80
+
81
+ - Production runs with `NODE_ENV=production`; SQLite is for local dev only.
82
+ - All secrets come from env on the server, never the repo.
83
+ - Build before start; a stale or missing admin build serves a broken panel.
84
+ - Export (or transfer) as a backup before every production deploy.
85
+
86
+ ## Next Step
87
+
88
+ After deploy, verify the live API with `strapi-content-api`, or wire the
89
+ production MCP endpoint with `strapi-mcp-setup`.
@@ -0,0 +1,101 @@
1
+ ---
2
+ name: strapi-mcp-setup
3
+ description: 'Use when connecting an AI client to Strapi over MCP: the built-in content-management MCP server and the Kapa-powered Strapi Docs MCP server. Covers enabling, tokens, wiring.'
4
+ tags: [strapi, mcp, ai, content-management, claude-code]
5
+ ---
6
+
7
+ # Strapi MCP Setup
8
+
9
+ Wire an AI client (Claude Code, Cursor, Claude Desktop) to Strapi's two MCP
10
+ servers.
11
+
12
+ ## The Two Servers
13
+
14
+ | Server | Purpose | Auth | Endpoint |
15
+ |---|---|---|---|
16
+ | **strapi-mcp** | Create/read/update/delete/publish content in *your* Strapi | Admin API token | `<your-strapi>/mcp` |
17
+ | **strapi-docs** | Query the Strapi documentation for accurate, current answers | None | `https://strapi-docs.mcp.kapa.ai` |
18
+
19
+ The `strapi` cue profile wires both already (`mcps: [strapi-docs, strapi-mcp]`).
20
+ This skill covers turning them on and authenticating.
21
+
22
+ ## Prerequisites
23
+
24
+ - For **strapi-mcp**: a running Strapi **v5.47.0+** instance and an Admin API
25
+ token. The content tools available depend on that token's permissions.
26
+ - For **strapi-docs**: nothing, it is hosted and unauthenticated.
27
+ - Optional manual wiring uses `npx mcp-remote`.
28
+
29
+ ## strapi-mcp (content management)
30
+
31
+ ### 1. Enable the server
32
+
33
+ Add the `mcp` block to your Strapi server config and restart:
34
+
35
+ ```ts title="config/server.ts"
36
+ export default ({ env }) => ({
37
+ host: env('HOST', '0.0.0.0'),
38
+ port: env.int('PORT', 1337),
39
+ app: { keys: env.array('APP_KEYS') },
40
+ mcp: { enabled: true },
41
+ });
42
+ ```
43
+
44
+ The endpoint becomes available at `/mcp` (e.g. `http://localhost:1337/mcp`).
45
+ It uses Streamable HTTP, is stateless, and only accepts POST (GET/DELETE
46
+ return 405).
47
+
48
+ ### 2. Create an Admin token
49
+
50
+ Admin panel → **Settings → API Tokens → Create new token**. Scope it to the
51
+ content actions you want the AI to perform. Copy the value once.
52
+
53
+ ### 3. Connect Claude Code
54
+
55
+ ```bash
56
+ claude mcp add strapi-mcp --transport http http://localhost:1337/mcp \
57
+ -H "Authorization: Bearer YOUR_ADMIN_TOKEN"
58
+ ```
59
+
60
+ Restart Claude Code, then run `/mcp` to confirm `strapi-mcp` is connected.
61
+
62
+ ### Via the cue profile
63
+
64
+ The profile's registry entry reads two env vars. Set them (profile `env:` or
65
+ your shell) before materializing:
66
+
67
+ ```bash
68
+ export STRAPI_URL="http://localhost:1337"
69
+ export STRAPI_ADMIN_TOKEN="paste-admin-token-here"
70
+ ```
71
+
72
+ The entry expands to an HTTP server at `${STRAPI_URL}/mcp` with the bearer
73
+ header. Permission changes (revoking/editing the token) take effect on the
74
+ next request, there is no session to restart.
75
+
76
+ ## strapi-docs (documentation)
77
+
78
+ Zero-config. The cue profile wires it as an HTTP MCP at
79
+ `https://strapi-docs.mcp.kapa.ai`. To add it elsewhere manually:
80
+
81
+ ```json title=".cursor/mcp.json or .vscode/mcp.json (servers→type http)"
82
+ { "mcpServers": { "strapi-docs": { "url": "https://strapi-docs.mcp.kapa.ai" } } }
83
+ ```
84
+
85
+ Tip: prefix doc questions with `Use the strapi-docs MCP server to answer:` so
86
+ the model queries live docs instead of stale training data.
87
+
88
+ ## Rules
89
+
90
+ - Scope the Admin token to the minimum actions the AI needs; it gates every
91
+ content tool.
92
+ - Never commit the Admin token; pass it through env (`STRAPI_ADMIN_TOKEN`).
93
+ - strapi-mcp needs the server running and v5.47+; until then it errors,
94
+ strapi-docs still works standalone.
95
+ - The content MCP is Beta; verify destructive actions (delete/unpublish)
96
+ before letting an agent run them unattended.
97
+
98
+ ## Next Step
99
+
100
+ Once connected, use `building-with-strapi` for the data model the MCP tools
101
+ operate on, or `strapi-content-api` to consume the same content over HTTP.
@@ -0,0 +1,97 @@
1
+ ---
2
+ name: strapi-plugins
3
+ description: 'Use when developing a Strapi v5 plugin: scaffolding with @strapi/sdk-plugin, the server + admin panel structure, registering it, and building/publishing.'
4
+ tags: [strapi, plugins, sdk-plugin, backend, admin-panel]
5
+ ---
6
+
7
+ # Strapi Plugins
8
+
9
+ Build a Strapi v5 plugin to extend the server, the admin panel, or both.
10
+
11
+ ## Use This Skill For
12
+
13
+ - Scaffolding a new plugin with the Plugin SDK
14
+ - Understanding the server-side vs admin-side structure
15
+ - Registering a local plugin and building it for publish
16
+
17
+ ## Prerequisites
18
+
19
+ - A Strapi v5 project to host the plugin during development
20
+ - The Plugin SDK: `@strapi/sdk-plugin` (run via `npx` / `yarn dlx`)
21
+ - For installing community plugins instead of writing one, use the
22
+ Marketplace npx command shown on each plugin's page
23
+
24
+ ## Scaffold
25
+
26
+ ```bash
27
+ npx @strapi/sdk-plugin@latest init my-strapi-plugin
28
+ # or: yarn dlx @strapi/sdk-plugin init my-strapi-plugin
29
+ ```
30
+
31
+ This generates a plugin package with separate server and admin entry points.
32
+ Keep each concern in its own folder (the generated layout) rather than one
33
+ entry file.
34
+
35
+ ```
36
+ my-strapi-plugin/
37
+ ├── admin/src/ admin panel UI (React) — index.ts register()/bootstrap()
38
+ ├── server/src/ controllers, services, routes, content-types, register/bootstrap
39
+ ├── strapi-server.ts server entry
40
+ ├── strapi-admin.ts admin entry
41
+ └── package.json
42
+ ```
43
+
44
+ ## Plugin SDK Commands
45
+
46
+ | Command | What it does |
47
+ |---|---|
48
+ | `@strapi/sdk-plugin init <name>` | Scaffold a new plugin package |
49
+ | `strapi-plugin build` | Build the plugin for publishing |
50
+ | `strapi-plugin watch` | Rebuild on change during development |
51
+ | `strapi-plugin verify` | Check the package is publish-ready |
52
+
53
+ You can also scaffold individual pieces inside a host project with
54
+ `strapi generate plugin`.
55
+
56
+ ## Register a Local Plugin
57
+
58
+ Enable the plugin in the host project's plugins config:
59
+
60
+ ```ts title="config/plugins.ts"
61
+ export default {
62
+ 'my-plugin': {
63
+ enabled: true,
64
+ resolve: './src/plugins/my-strapi-plugin', // local path
65
+ },
66
+ };
67
+ ```
68
+
69
+ Server code reaches Strapi through `strapi` (e.g.
70
+ `strapi.documents(...)`, `strapi.plugin('my-plugin').service('x')`). Admin
71
+ code registers menu links, settings pages, and injection zones in
72
+ `admin/src/index.ts`.
73
+
74
+ ## Build & Publish
75
+
76
+ ```bash
77
+ cd my-strapi-plugin
78
+ npm run build # strapi-plugin build
79
+ npm publish # to NPM, then optionally submit to the Marketplace
80
+ ```
81
+
82
+ Upgrading the SDK across majors (e.g. v5 → v6) can change config; check the
83
+ plugin's create-a-plugin guide before bumping.
84
+
85
+ ## Rules
86
+
87
+ - Split server and admin concerns into their folders; do not cram everything
88
+ into one entry file.
89
+ - Use the Document Service from server code, not raw DB access, unless you
90
+ need the lower level.
91
+ - `enabled: true` plus a `resolve` path is required for local plugins to load.
92
+ - Run `verify` before publishing to catch a malformed package.
93
+
94
+ ## Next Step
95
+
96
+ Model the content your plugin operates on with `building-with-strapi`, or ship
97
+ the project with `strapi-deploy`.
@@ -0,0 +1,101 @@
1
+ ---
2
+ name: context7
3
+ description: Fetch up-to-date, version-specific library/API docs to avoid outdated or hallucinated APIs. Use when the user says "use context7", "latest docs for X", or codes against a fast-moving library.
4
+ allowed-tools: Bash(ctx7:*), Bash(npx:*)
5
+ category: tools
6
+ tags: [tools, documentation, context7, mcp, libraries]
7
+ metadata:
8
+ version: 1.0.0
9
+ homepage: https://context7.com
10
+ ---
11
+
12
+ # Up-to-date library docs with Context7
13
+
14
+ Context7 pulls version-specific documentation and real code examples from a
15
+ library's source and drops them into context. It kills the two failure modes of
16
+ training-data answers: outdated APIs, and hallucinated methods that don't exist.
17
+
18
+ Two surfaces, same data. Use whichever is wired:
19
+
20
+ - **MCP** (`context7` server, ships in `core`): call `resolve-library-id`, then
21
+ `query-docs`. No shell needed.
22
+ - **CLI** (`ctx7`): same lookups from the terminal.
23
+
24
+ ## Prerequisites
25
+
26
+ The `context7` MCP ships in cue's `core` profile (no API key needed). For the
27
+ standalone CLI:
28
+
29
+ ```bash
30
+ npm install -g ctx7 # or run on demand with: npx ctx7 <cmd>
31
+ ```
32
+
33
+ For higher rate limits, get a free key at https://context7.com/dashboard and set
34
+ `CONTEXT7_API_KEY` in your environment.
35
+
36
+ ## When to reach for it
37
+
38
+ Pull docs before writing code against any library whose API may have moved since
39
+ your training cutoff: frameworks (Next.js, Remix), SDKs (Supabase, Stripe,
40
+ OpenAI), infra (Cloudflare Workers, Vercel), CSS (Tailwind). If the user names a
41
+ version like "Next.js 15 middleware", Context7 matches that version.
42
+
43
+ ## Step 1: Resolve the library id
44
+
45
+ A Context7 id looks like `/vercel/next.js` or `/supabase/supabase`. If the user
46
+ already gave one, skip to Step 2.
47
+
48
+ Via MCP: call `resolve-library-id` with the library name plus the question.
49
+
50
+ Via CLI:
51
+
52
+ ```bash
53
+ ctx7 library "next.js" "app router middleware"
54
+ ```
55
+
56
+ ## Step 2: Fetch the docs
57
+
58
+ Via MCP: call `query-docs` with the resolved `libraryId` plus the question.
59
+
60
+ Via CLI:
61
+
62
+ ```bash
63
+ ctx7 docs /vercel/next.js "add middleware that checks a JWT cookie"
64
+ ```
65
+
66
+ Read the returned snippets, then write the implementation against them, not
67
+ against memory.
68
+
69
+ ## Example
70
+
71
+ User: "Show me the Supabase email/password sign-up API. use context7"
72
+
73
+ ```bash
74
+ # Step 1 — resolve (skip if the id is known)
75
+ ctx7 library "supabase" "email password sign-up"
76
+ # → /supabase/supabase
77
+
78
+ # Step 2 — fetch version-specific docs
79
+ ctx7 docs /supabase/supabase "email and password sign-up"
80
+ ```
81
+
82
+ Then write the `supabase.auth.signUp(...)` call straight from the returned
83
+ snippet.
84
+
85
+ ## Rules
86
+
87
+ - **Resolve before querying.** A bare library name needs `resolve-library-id`
88
+ first; `query-docs` takes a Context7 id, not a name.
89
+ - **Pass the version when the user gives one.** "Next.js 14" and "Next.js 15"
90
+ return different docs; include it in the query.
91
+ - **Prefer the MCP when it is loaded** (it is in `core`); fall back to the
92
+ `ctx7` CLI only when the MCP tools are not available.
93
+ - **Quote, do not paraphrase from memory.** The point of Context7 is the fetched
94
+ snippet; write code against what it returns, not what you recall.
95
+ - **No key is fine.** It works unauthenticated at lower rate limits; only add
96
+ `CONTEXT7_API_KEY` if you hit limits.
97
+
98
+ ## Next step
99
+
100
+ Name the library plus task ("Supabase email/password sign-up", "Cloudflare
101
+ Worker caching JSON for 5 min") and run Step 1 to resolve its id.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: opensrc
3
- description: Fetch dependency source code to give AI agents deeper implementation context. Use when the agent needs to understand how a library works internally, read source code for a package, fetch implementation details for a dependency, or explore how an npm/PyPI/crates.io package is built. Triggers include "fetch source for", "read the source of", "how does X work internally", "get the implementation of", "opensrc path", or any task requiring access to dependency source code beyond types and docs.
3
+ description: Fetch dependency source code so agents read real implementations, not just types and docs clones npm/PyPI/crates.io/GitHub packages at the right version and caches them locally. Use when the user says "fetch source for", "read the source of", "get the implementation of", "how does X work internally", or "opensrc path", or whenever a task needs to inspect a dependency's actual code beyond its public types.
4
4
  allowed-tools: Bash(opensrc:*)
5
5
  category: tools
6
6
  tags: [tools, source-fetching, dependencies, npm, pypi, crates]