shmakk 1.1.0 → 1.2.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 (450) hide show
  1. package/README.md +16 -1
  2. package/package.json +6 -3
  3. package/scripts/import-skills.js +536 -0
  4. package/scripts/install-skills.js +64 -0
  5. package/skills/ai-elements.md +482 -0
  6. package/skills/architecture.md +151 -0
  7. package/skills/backend-adapter-aws-lambda.md +204 -0
  8. package/skills/backend-adapter-express.md +177 -0
  9. package/skills/backend-adapter-fastify.md +222 -0
  10. package/skills/backend-adapter-fetch.md +200 -0
  11. package/skills/backend-api-docs.md +22 -0
  12. package/skills/backend-aspire.md +232 -0
  13. package/skills/backend-aspnet-core.md +62 -0
  14. package/skills/backend-build-chatgpt-app.md +321 -0
  15. package/skills/backend-build-mcp-app.md +393 -0
  16. package/skills/backend-build-mcp-server.md +222 -0
  17. package/skills/backend-build-mcpb.md +200 -0
  18. package/skills/backend-building-ai-agent-on-cloudflare.md +401 -0
  19. package/skills/backend-caching.md +206 -0
  20. package/skills/backend-chatgpt-app-submission.md +157 -0
  21. package/skills/backend-chatgpt-apps.md +321 -0
  22. package/skills/backend-client-setup.md +318 -0
  23. package/skills/backend-containerize-aspnet-framework.md +455 -0
  24. package/skills/backend-create-spring-boot-java-project.md +164 -0
  25. package/skills/backend-create-spring-boot-kotlin-project.md +148 -0
  26. package/skills/backend-csharp-async.md +50 -0
  27. package/skills/backend-csharp-docs.md +63 -0
  28. package/skills/backend-csharp-mcp-server-generator.md +60 -0
  29. package/skills/backend-dotenv.md +201 -0
  30. package/skills/backend-dotenvx.md +119 -0
  31. package/skills/backend-env-vars.md +259 -0
  32. package/skills/backend-error-handling.md +254 -0
  33. package/skills/backend-fastapi.md +437 -0
  34. package/skills/backend-go-mcp-server-generator.md +335 -0
  35. package/skills/backend-java-mcp-server-generator.md +757 -0
  36. package/skills/backend-kotlin-mcp-server-generator.md +450 -0
  37. package/skills/backend-middlewares.md +243 -0
  38. package/skills/backend-multi-stage-dockerfile.md +47 -0
  39. package/skills/backend-nestjs.md +192 -0
  40. package/skills/backend-next-forge.md +375 -0
  41. package/skills/backend-nextjs.md +746 -0
  42. package/skills/backend-openapi-to-application-code.md +113 -0
  43. package/skills/backend-php-mcp-server-generator.md +523 -0
  44. package/skills/backend-python-mcp-server-generator.md +106 -0
  45. package/skills/backend-routing-middleware.md +251 -0
  46. package/skills/backend-ruby-mcp-server-generator.md +661 -0
  47. package/skills/backend-rust-mcp-server-generator.md +578 -0
  48. package/skills/backend-semantic-kernel.md +57 -0
  49. package/skills/backend-server-setup.md +379 -0
  50. package/skills/backend-server-side-calls.md +250 -0
  51. package/skills/backend-subscriptions.md +407 -0
  52. package/skills/backend-swift-mcp-server-generator.md +670 -0
  53. package/skills/backend-trpc-router.md +152 -0
  54. package/skills/backend-typescript-mcp-server-generator.md +91 -0
  55. package/skills/backend-validators.md +229 -0
  56. package/skills/backend.md +76 -0
  57. package/skills/backup.md +165 -0
  58. package/skills/budget.md +140 -0
  59. package/skills/business-gtm-0-to-1-launch.md +322 -0
  60. package/skills/business-gtm-operating-cadence.md +421 -0
  61. package/skills/business-gtm-positioning-strategy.md +439 -0
  62. package/skills/business-gtm-product-led-growth.md +340 -0
  63. package/skills/calendar.md +95 -0
  64. package/skills/code-review.md +130 -0
  65. package/skills/compliance.md +168 -0
  66. package/skills/contracts.md +130 -0
  67. package/skills/daily-job-run.md +46 -0
  68. package/skills/daily-webdesign.md +187 -0
  69. package/skills/database-bigquery-pipeline-audit.md +130 -0
  70. package/skills/database-cosmosdb-datamodeling.md +1046 -0
  71. package/skills/database-durable-objects.md +187 -0
  72. package/skills/database-ef-core.md +76 -0
  73. package/skills/database-fabric-lakehouse.md +107 -0
  74. package/skills/database-neon-postgres-egress-optimizer.md +213 -0
  75. package/skills/database-neon-postgres.md +218 -0
  76. package/skills/database-postgresql-code-review.md +213 -0
  77. package/skills/database-postgresql-optimization.md +405 -0
  78. package/skills/database-sql-code-review.md +302 -0
  79. package/skills/database-sql-optimization.md +297 -0
  80. package/skills/dependency-audit.md +165 -0
  81. package/skills/design-kami-landing.md +234 -0
  82. package/skills/design.md +221 -0
  83. package/skills/dev-acquire-codebase-knowledge.md +175 -0
  84. package/skills/dev-add-educational-comments.md +129 -0
  85. package/skills/dev-add-model-descriptions.md +74 -0
  86. package/skills/dev-adr-review.md +56 -0
  87. package/skills/dev-boost-prompt.md +26 -0
  88. package/skills/dev-build-run-debug.md +130 -0
  89. package/skills/dev-chunk.md +49 -0
  90. package/skills/dev-claude-md-improver.md +180 -0
  91. package/skills/dev-code-exemplars-blueprint-generator.md +127 -0
  92. package/skills/dev-code-tour.md +434 -0
  93. package/skills/dev-comment-code-generate-a-tutorial.md +27 -0
  94. package/skills/dev-commit.md +81 -0
  95. package/skills/dev-context-map.md +53 -0
  96. package/skills/dev-conventional-commit.md +73 -0
  97. package/skills/dev-create-architectural-decision-record.md +98 -0
  98. package/skills/dev-create-draft-pr.md +17 -0
  99. package/skills/dev-create-pr.md +17 -0
  100. package/skills/dev-create-readme.md +22 -0
  101. package/skills/dev-csharp-mstest.md +479 -0
  102. package/skills/dev-csharp-nunit.md +72 -0
  103. package/skills/dev-csharp-tunit.md +101 -0
  104. package/skills/dev-csharp-xunit.md +69 -0
  105. package/skills/dev-debug-failing-test.md +90 -0
  106. package/skills/dev-diff-analyze.md +32 -0
  107. package/skills/dev-diffs.md +24 -0
  108. package/skills/dev-dotnet-best-practices.md +86 -0
  109. package/skills/dev-dotnet-design-pattern-review.md +43 -0
  110. package/skills/dev-dotnet-timezone.md +110 -0
  111. package/skills/dev-dotnet-upgrade.md +117 -0
  112. package/skills/dev-doublecheck.md +278 -0
  113. package/skills/dev-explain-error.md +15 -0
  114. package/skills/dev-finding-discovery.md +164 -0
  115. package/skills/dev-fix-finding.md +111 -0
  116. package/skills/dev-full-file-edit.md +25 -0
  117. package/skills/dev-git-commit.md +125 -0
  118. package/skills/dev-git-flow-branch-creator.md +293 -0
  119. package/skills/dev-git-workflow.md +46 -0
  120. package/skills/dev-github-automation.md +64 -0
  121. package/skills/dev-github-code-review.md +1140 -0
  122. package/skills/dev-github-issues.md +202 -0
  123. package/skills/dev-gpt-5-4-prompting.md +55 -0
  124. package/skills/dev-investigation-mode.md +277 -0
  125. package/skills/dev-java-add-graalvm-native-image-support.md +450 -0
  126. package/skills/dev-java-docs.md +24 -0
  127. package/skills/dev-java-refactoring-extract-method.md +105 -0
  128. package/skills/dev-java-refactoring-remove-parameter.md +85 -0
  129. package/skills/dev-merge.md +73 -0
  130. package/skills/dev-migrate-create.md +36 -0
  131. package/skills/dev-migrate-validate.md +36 -0
  132. package/skills/dev-my-issues.md +9 -0
  133. package/skills/dev-my-pull-requests.md +15 -0
  134. package/skills/dev-planning-oracle-to-postgres-migration-integration-testing.md +45 -0
  135. package/skills/dev-playwright-generate-test.md +18 -0
  136. package/skills/dev-playwright.md +148 -0
  137. package/skills/dev-prompt-builder.md +142 -0
  138. package/skills/dev-pytest-coverage.md +29 -0
  139. package/skills/dev-python-manager-discovery.md +330 -0
  140. package/skills/dev-python-pypi-package-builder.md +445 -0
  141. package/skills/dev-readme-blueprint-generator.md +79 -0
  142. package/skills/dev-refactor-method-complexity-reduce.md +99 -0
  143. package/skills/dev-refactor-plan.md +66 -0
  144. package/skills/dev-refactor.md +646 -0
  145. package/skills/dev-review-and-refactor.md +16 -0
  146. package/skills/dev-reviewing-oracle-to-postgres-migration.md +68 -0
  147. package/skills/dev-ruff-recursive-fix.md +201 -0
  148. package/skills/dev-run-e2e-tests.md +126 -0
  149. package/skills/dev-run-pre-commit-checks.md +133 -0
  150. package/skills/dev-run-smoke-tests.md +127 -0
  151. package/skills/dev-scaffolding-oracle-to-postgres-migration-test-project.md +55 -0
  152. package/skills/dev-spring-boot-testing.md +190 -0
  153. package/skills/dev-sync-upstream.md +32 -0
  154. package/skills/dev-sync.md +74 -0
  155. package/skills/dev-tdd-workflow.md +23 -0
  156. package/skills/dev-terraform-azurerm-set-diff-analyzer.md +49 -0
  157. package/skills/dev-test-driven-development.md +372 -0
  158. package/skills/dev-test-gaps.md +18 -0
  159. package/skills/dev-test-triage.md +55 -0
  160. package/skills/dev-typer.md +267 -0
  161. package/skills/dev-typescript-setup.md +25 -0
  162. package/skills/dev-unified-diff-edit.md +16 -0
  163. package/skills/dev-unit-test-vue-pinia.md +198 -0
  164. package/skills/dev-using-git-worktrees.md +216 -0
  165. package/skills/dev-validation.md +99 -0
  166. package/skills/dev-verification.md +168 -0
  167. package/skills/dev-webapp-testing.md +134 -0
  168. package/skills/dev-write-coding-standards-from-file.md +317 -0
  169. package/skills/dev-write-tests.md +16 -0
  170. package/skills/devops-appinsights-instrumentation.md +49 -0
  171. package/skills/devops-az-cost-optimize.md +306 -0
  172. package/skills/devops-chronicle.md +154 -0
  173. package/skills/devops-deployments-cicd.md +331 -0
  174. package/skills/devops-devops-rollout-plan.md +118 -0
  175. package/skills/devops-geistdocs.md +276 -0
  176. package/skills/devops-observability.md +774 -0
  177. package/skills/devops-observe-metrics.md +35 -0
  178. package/skills/devops-observe-trace.md +30 -0
  179. package/skills/devops-phoenix-cli.md +163 -0
  180. package/skills/devops-phoenix-tracing.md +140 -0
  181. package/skills/devops-publish-to-pages.md +108 -0
  182. package/skills/devops-telemetry.md +87 -0
  183. package/skills/devops-update-avm-modules-in-bicep.md +61 -0
  184. package/skills/devops.md +81 -0
  185. package/skills/diagrams-canvas.md +204 -0
  186. package/skills/diagrams-draw-io-diagram-generator.md +463 -0
  187. package/skills/diagrams-excalidraw-diagram-generator.md +614 -0
  188. package/skills/diagrams-graphify.md +1277 -0
  189. package/skills/docs-bear-notes.md +108 -0
  190. package/skills/docs-create-llms.md +211 -0
  191. package/skills/docs-doc-gen.md +20 -0
  192. package/skills/docs-documentation-writer.md +46 -0
  193. package/skills/docs-llm-config.md +33 -0
  194. package/skills/docs-mkdocs-translations.md +109 -0
  195. package/skills/docs-obsidian-vault-maintainer.md +14 -0
  196. package/skills/docs-obsidian.md +82 -0
  197. package/skills/docs-prose.md +324 -0
  198. package/skills/docs-update-llms.md +217 -0
  199. package/skills/docs-update-markdown-file-index.md +77 -0
  200. package/skills/docs-wiki-maintainer.md +20 -0
  201. package/skills/documents.md +120 -0
  202. package/skills/email.md +113 -0
  203. package/skills/expenses.md +140 -0
  204. package/skills/file-ops.md +149 -0
  205. package/skills/files-convert-plaintext-to-md.md +363 -0
  206. package/skills/files-doc.md +81 -0
  207. package/skills/files-docx.md +594 -0
  208. package/skills/files-markdown-to-html.md +917 -0
  209. package/skills/files-nano-pdf.md +39 -0
  210. package/skills/files-pdf.md +315 -0
  211. package/skills/files-pdftk-server.md +163 -0
  212. package/skills/files-pptx-html-fidelity-audit.md +255 -0
  213. package/skills/files-pptx.md +231 -0
  214. package/skills/files-xlsx.md +301 -0
  215. package/skills/find-jobs.md +78 -0
  216. package/skills/format-conversion.md +157 -0
  217. package/skills/frontend-ai-elements.md +483 -0
  218. package/skills/frontend-ai-gateway.md +563 -0
  219. package/skills/frontend-ai-generation-persistence.md +242 -0
  220. package/skills/frontend-ai-sdk.md +799 -0
  221. package/skills/frontend-ai-visibility.md +127 -0
  222. package/skills/frontend-angular-developer.md +130 -0
  223. package/skills/frontend-aspnet-minimal-api-openapi.md +42 -0
  224. package/skills/frontend-bencium-innovative-ux-designer.md +719 -0
  225. package/skills/frontend-chat-sdk.md +666 -0
  226. package/skills/frontend-chrome-devtools.md +98 -0
  227. package/skills/frontend-frontend-app-builder.md +186 -0
  228. package/skills/frontend-frontend-design.md +43 -0
  229. package/skills/frontend-frontend-testing-debugging.md +143 -0
  230. package/skills/frontend-gsap-framer-scroll-animation.md +152 -0
  231. package/skills/frontend-internal-linking.md +109 -0
  232. package/skills/frontend-json-render.md +335 -0
  233. package/skills/frontend-keyword-clustering.md +118 -0
  234. package/skills/frontend-next-intl-add-language.md +20 -0
  235. package/skills/frontend-on-page-seo.md +112 -0
  236. package/skills/frontend-premium-frontend-ui.md +114 -0
  237. package/skills/frontend-react-best-practices.md +143 -0
  238. package/skills/frontend-schema-markup.md +160 -0
  239. package/skills/frontend-seo-audit.md +110 -0
  240. package/skills/frontend-swr.md +215 -0
  241. package/skills/frontend-technical-seo.md +162 -0
  242. package/skills/frontend-use-dom.md +418 -0
  243. package/skills/frontend-web-coder.md +564 -0
  244. package/skills/frontend-web-design-reviewer.md +369 -0
  245. package/skills/frontend-web-perf.md +202 -0
  246. package/skills/frontend.md +125 -0
  247. package/skills/general-adapter-standalone.md +199 -0
  248. package/skills/general-auth.md +356 -0
  249. package/skills/general-containerize-aspnetcore.md +393 -0
  250. package/skills/general-create-technical-spike.md +231 -0
  251. package/skills/general-cron-jobs.md +72 -0
  252. package/skills/general-ddd-aggregate.md +52 -0
  253. package/skills/general-ddd-context.md +46 -0
  254. package/skills/general-ddd-validate.md +51 -0
  255. package/skills/general-dependency-check.md +26 -0
  256. package/skills/general-email-marketing.md +86 -0
  257. package/skills/general-healthcheck.md +246 -0
  258. package/skills/general-import-infrastructure-as-code.md +368 -0
  259. package/skills/general-init.md +49 -0
  260. package/skills/general-java-junit.md +64 -0
  261. package/skills/general-java-springboot.md +66 -0
  262. package/skills/general-javascript-typescript-jest.md +45 -0
  263. package/skills/general-kotlin-springboot.md +71 -0
  264. package/skills/general-make-repo-contribution.md +91 -0
  265. package/skills/general-market-research.md +78 -0
  266. package/skills/general-marketplace.md +468 -0
  267. package/skills/general-model-recommendation.md +673 -0
  268. package/skills/general-payments.md +352 -0
  269. package/skills/general-quality-playbook.md +480 -0
  270. package/skills/general-run-integration-tests.md +113 -0
  271. package/skills/general-superjson.md +274 -0
  272. package/skills/general-swiftpm-macos.md +51 -0
  273. package/skills/general-threat-model.md +61 -0
  274. package/skills/invoices.md +167 -0
  275. package/skills/licenses.md +159 -0
  276. package/skills/logs.md +156 -0
  277. package/skills/marketing.md +139 -0
  278. package/skills/media-image-manipulation-image-magick.md +253 -0
  279. package/skills/media-imagegen.md +357 -0
  280. package/skills/media-openai-whisper-api.md +63 -0
  281. package/skills/media-openai-whisper.md +39 -0
  282. package/skills/media-peekaboo.md +191 -0
  283. package/skills/media-screenshot.md +268 -0
  284. package/skills/media-speech.md +145 -0
  285. package/skills/media-transcribe.md +82 -0
  286. package/skills/media-video-frames.md +47 -0
  287. package/skills/mobile-android-emulator-qa.md +81 -0
  288. package/skills/mobile-android-performance.md +280 -0
  289. package/skills/mobile-building-mcp-server-on-cloudflare.md +267 -0
  290. package/skills/mobile-building-native-ui.md +322 -0
  291. package/skills/mobile-expo-api-routes.md +369 -0
  292. package/skills/mobile-expo-cicd-workflows.md +92 -0
  293. package/skills/mobile-expo-deployment.md +191 -0
  294. package/skills/mobile-expo-dev-client.md +165 -0
  295. package/skills/mobile-expo-module.md +177 -0
  296. package/skills/mobile-expo-tailwind-setup.md +481 -0
  297. package/skills/mobile-expo-ui-jetpack-compose.md +41 -0
  298. package/skills/mobile-expo-ui-swift-ui.md +40 -0
  299. package/skills/mobile-ios-app-intents.md +78 -0
  300. package/skills/mobile-ios-debugger-agent.md +52 -0
  301. package/skills/mobile-ios-ettrace-performance.md +198 -0
  302. package/skills/mobile-ios-memgraph-leaks.md +77 -0
  303. package/skills/mobile-native-data-fetching.md +508 -0
  304. package/skills/mobile-packaging-notarization.md +48 -0
  305. package/skills/mobile-react-native-architecture.md +672 -0
  306. package/skills/mobile-react-native-mobile-design.md +438 -0
  307. package/skills/mobile-signing-entitlements.md +59 -0
  308. package/skills/mobile-swiftui-liquid-glass.md +91 -0
  309. package/skills/mobile-swiftui-patterns.md +210 -0
  310. package/skills/mobile-swiftui-performance-audit.md +108 -0
  311. package/skills/mobile-swiftui-ui-patterns.md +97 -0
  312. package/skills/mobile-swiftui-view-refactor.md +204 -0
  313. package/skills/mobile-upgrading-expo.md +134 -0
  314. package/skills/mobile.md +183 -0
  315. package/skills/notes.md +106 -0
  316. package/skills/planning-adr-create.md +62 -0
  317. package/skills/planning-adr-index.md +67 -0
  318. package/skills/planning-architecture-blueprint-generator.md +323 -0
  319. package/skills/planning-brainstorming.md +165 -0
  320. package/skills/planning-breakdown-epic-arch.md +67 -0
  321. package/skills/planning-breakdown-epic-pm.md +59 -0
  322. package/skills/planning-breakdown-feature-implementation.md +129 -0
  323. package/skills/planning-breakdown-feature-prd.md +62 -0
  324. package/skills/planning-breakdown-plan.md +510 -0
  325. package/skills/planning-breakdown-test.md +366 -0
  326. package/skills/planning-cloud-design-patterns.md +63 -0
  327. package/skills/planning-content-brief.md +128 -0
  328. package/skills/planning-content-strategy.md +138 -0
  329. package/skills/planning-content-translation.md +143 -0
  330. package/skills/planning-create-github-action-workflow-specification.md +277 -0
  331. package/skills/planning-create-github-issues-feature-from-implementation-plan.md +29 -0
  332. package/skills/planning-create-github-issues-for-unmet-specification-requirements.md +36 -0
  333. package/skills/planning-create-github-pull-request-from-specification.md +25 -0
  334. package/skills/planning-create-implementation-plan.md +158 -0
  335. package/skills/planning-create-specification.md +128 -0
  336. package/skills/planning-first-ask.md +31 -0
  337. package/skills/planning-folder-structure-blueprint-generator.md +406 -0
  338. package/skills/planning-gen-specs-as-issues.md +166 -0
  339. package/skills/planning-generate-snapshot.md +144 -0
  340. package/skills/planning-generate-status-report.md +336 -0
  341. package/skills/planning-metric-pack-designer.md +27 -0
  342. package/skills/planning-pm-spec.md +53 -0
  343. package/skills/planning-prd.md +144 -0
  344. package/skills/planning-project-assessment.md +182 -0
  345. package/skills/planning-project-setup-info-local.md +128 -0
  346. package/skills/planning-project-workflow-analysis-blueprint-generator.md +294 -0
  347. package/skills/planning-service-oriented-architecture.md +248 -0
  348. package/skills/planning-spec-to-backlog.md +544 -0
  349. package/skills/planning-technology-stack-blueprint-generator.md +243 -0
  350. package/skills/planning-update-implementation-plan.md +158 -0
  351. package/skills/planning-update-specification.md +128 -0
  352. package/skills/planning-what-context-needed.md +40 -0
  353. package/skills/planning-writing-plans.md +153 -0
  354. package/skills/prepare-application.md +81 -0
  355. package/skills/productivity-apple-notes.md +78 -0
  356. package/skills/productivity-apple-reminders.md +119 -0
  357. package/skills/productivity-capture-tasks-from-meeting-notes.md +680 -0
  358. package/skills/productivity-daily-prep.md +156 -0
  359. package/skills/productivity-email-drafter.md +101 -0
  360. package/skills/productivity-hr-onboarding.md +53 -0
  361. package/skills/productivity-things-mac.md +87 -0
  362. package/skills/productivity-update.md +169 -0
  363. package/skills/reminders.md +109 -0
  364. package/skills/research-dossier-collect.md +71 -0
  365. package/skills/research-kg-extract.md +37 -0
  366. package/skills/research-openai-docs.md +89 -0
  367. package/skills/research-research-add-items.md +31 -0
  368. package/skills/research-research-report.md +94 -0
  369. package/skills/research-research-synthesize.md +63 -0
  370. package/skills/research-summarize.md +88 -0
  371. package/skills/research-transformers-js.md +635 -0
  372. package/skills/research.md +119 -0
  373. package/skills/security-ai-prompt-engineering-safety-review.md +231 -0
  374. package/skills/security-attack-path-analysis.md +182 -0
  375. package/skills/security-gdpr-compliant.md +284 -0
  376. package/skills/security-mcp-security-audit.md +279 -0
  377. package/skills/security-pii-detect.md +31 -0
  378. package/skills/security-secret-scanning.md +243 -0
  379. package/skills/security-security-best-practices.md +87 -0
  380. package/skills/security-security-ownership-map.md +207 -0
  381. package/skills/security-security-review.md +169 -0
  382. package/skills/security-security-scan.md +138 -0
  383. package/skills/security-security-threat-model.md +82 -0
  384. package/skills/security-threat-model-analyst.md +76 -0
  385. package/skills/sysmon.md +181 -0
  386. package/skills/system-arch-linux-triage.md +32 -0
  387. package/skills/system-centos-linux-triage.md +32 -0
  388. package/skills/system-debian-linux-triage.md +32 -0
  389. package/skills/system-fedora-linux-triage.md +32 -0
  390. package/skills/system-geofeed-tuner.md +865 -0
  391. package/skills/system-iot-anomalies.md +15 -0
  392. package/skills/system-iot-firmware.md +16 -0
  393. package/skills/system-iot-fleet.md +14 -0
  394. package/skills/system-iot-register.md +19 -0
  395. package/skills/system-iot-witness-verify.md +15 -0
  396. package/skills/system-tmux.md +171 -0
  397. package/skills/system-window-management.md +228 -0
  398. package/skills/task-management.md +90 -0
  399. package/skills/tasks.md +102 -0
  400. package/skills/test-coverage.md +188 -0
  401. package/skills/ux-ui.md +128 -0
  402. package/skills/web.md +186 -0
  403. package/skills/workflow-act-on-feedback.md +15 -0
  404. package/skills/workflow-automate-this.md +245 -0
  405. package/skills/workflow-autoresearch.md +276 -0
  406. package/skills/workflow-coding-agent.md +317 -0
  407. package/skills/workflow-deep-research.md +44 -0
  408. package/skills/workflow-dispatching-parallel-agents.md +183 -0
  409. package/skills/workflow-eval-driven-dev.md +148 -0
  410. package/skills/workflow-executing-plans.md +71 -0
  411. package/skills/workflow-mentoring-juniors.md +311 -0
  412. package/skills/workflow-receiving-code-review.md +214 -0
  413. package/skills/workflow-repo-story-time.md +155 -0
  414. package/skills/workflow-requesting-code-review.md +104 -0
  415. package/skills/workflow-session-report.md +43 -0
  416. package/skills/workflow-structured-autonomy-generate.md +126 -0
  417. package/skills/workflow-subagent-driven-development.md +280 -0
  418. package/skills/writing.md +106 -0
  419. package/src/agent.js +0 -0
  420. package/src/browser.js +297 -0
  421. package/src/cli.js +25 -4
  422. package/src/code-reviewer.js +119 -0
  423. package/src/completions.js +1 -1
  424. package/src/control.js +222 -30
  425. package/src/coordinator.js +303 -0
  426. package/src/correction.js +29 -8
  427. package/src/edit-tracker.js +21 -0
  428. package/src/edit-viewer.js +414 -0
  429. package/src/endpoints.js +64 -15
  430. package/src/index.js +45 -11
  431. package/src/llm.js +86 -2
  432. package/src/mcp-client.js +416 -0
  433. package/src/memory.js +182 -0
  434. package/src/planner.js +216 -0
  435. package/src/rules.js +90 -0
  436. package/src/self-commands.js +757 -0
  437. package/src/services/voice.js +10 -7
  438. package/src/session-search.js +427 -0
  439. package/src/session.js +487 -99
  440. package/src/shmakk-server.js +91 -0
  441. package/src/skills.js +410 -3
  442. package/src/subagent.js +4 -1
  443. package/src/system-prompt.js +13 -5
  444. package/src/task-file.js +114 -0
  445. package/src/taskClassifier.js +246 -0
  446. package/src/team.js +752 -0
  447. package/src/tools.js +142 -21
  448. package/src/web.js +35 -5
  449. package/src/workflows.js +261 -0
  450. package/src/workspace-index.js +25 -6
@@ -0,0 +1,200 @@
1
+ ---
2
+ name: build-mcpb
3
+ description: This skill should be used when the user wants to "package an MCP server", "bundle an MCP", "make an MCPB", "ship a local MCP server", "distribute a local MCP", discusses ".mcpb files", mentions bundling a Node or Python runtime with their MCP server, or needs an MCP server that interacts with the local filesystem, desktop apps, or OS and must be installable without the user having Node/Python set up.
4
+ version: 0.1.0
5
+ category: backend
6
+ ---
7
+
8
+ # Build an MCPB (Bundled Local MCP Server)
9
+
10
+ MCPB is a local MCP server **packaged with its runtime**. The user installs one file; it runs without needing Node, Python, or any toolchain on their machine. It's the sanctioned way to distribute local MCP servers.
11
+
12
+ > MCPB is the **secondary** distribution path. Anthropic recommends remote MCP servers for directory listing — see https://claude.com/docs/connectors/building/what-to-build.
13
+
14
+ **Use MCPB when the server must run on the user's machine** — reading local files, driving a desktop app, talking to localhost services, OS-level APIs. If your server only hits cloud APIs, you almost certainly want a remote HTTP server instead (see `build-mcp-server`). Don't pay the MCPB packaging tax for something that could be a URL.
15
+
16
+ ---
17
+
18
+ ## What an MCPB bundle contains
19
+
20
+ ```
21
+ my-server.mcpb (zip archive)
22
+ ├── manifest.json ← identity, entry point, config schema, compatibility
23
+ ├── server/ ← your MCP server code
24
+ │ ├── index.js
25
+ │ └── node_modules/ ← bundled dependencies (or vendored)
26
+ └── icon.png
27
+ ```
28
+
29
+ The host reads `manifest.json`, launches `server.mcp_config.command` as a **stdio** MCP server, and pipes messages. From your code's perspective it's identical to a local stdio server — the only difference is packaging.
30
+
31
+ ---
32
+
33
+ ## Manifest
34
+
35
+ ```json
36
+ {
37
+ "$schema": "https://raw.githubusercontent.com/anthropics/mcpb/main/schemas/mcpb-manifest-v0.4.schema.json",
38
+ "manifest_version": "0.4",
39
+ "name": "local-files",
40
+ "version": "0.1.0",
41
+ "description": "Read, search, and watch files on the local filesystem.",
42
+ "author": { "name": "Your Name" },
43
+ "server": {
44
+ "type": "node",
45
+ "entry_point": "server/index.js",
46
+ "mcp_config": {
47
+ "command": "node",
48
+ "args": ["${__dirname}/server/index.js"],
49
+ "env": {
50
+ "ROOT_DIR": "${user_config.rootDir}"
51
+ }
52
+ }
53
+ },
54
+ "user_config": {
55
+ "rootDir": {
56
+ "type": "directory",
57
+ "title": "Root directory",
58
+ "description": "Directory to expose. Defaults to ~/Documents.",
59
+ "default": "${HOME}/Documents",
60
+ "required": true
61
+ }
62
+ },
63
+ "compatibility": {
64
+ "claude_desktop": ">=1.0.0",
65
+ "platforms": ["darwin", "win32", "linux"]
66
+ }
67
+ }
68
+ ```
69
+
70
+ **`server.type`** — `node`, `python`, or `binary`. Informational; the actual launch comes from `mcp_config`.
71
+
72
+ **`server.mcp_config`** — the literal command/args/env to spawn. Use `${__dirname}` for bundle-relative paths and `${user_config.<key>}` to substitute install-time config. **There's no auto-prefix** — the env var names your server reads are exactly what you put in `env`.
73
+
74
+ **`user_config`** — install-time settings surfaced in the host's UI. `type: "directory"` renders a native folder picker. `sensitive: true` stores in OS keychain. See `references/manifest-schema.md` for all fields.
75
+
76
+ ---
77
+
78
+ ## Server code: same as local stdio
79
+
80
+ The server itself is a standard stdio MCP server. Nothing MCPB-specific in the tool logic.
81
+
82
+ ```typescript
83
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
84
+ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
85
+ import { z } from "zod";
86
+ import { readFile, readdir } from "node:fs/promises";
87
+ import { join } from "node:path";
88
+ import { homedir } from "node:os";
89
+
90
+ // ROOT_DIR comes from what you put in manifest's server.mcp_config.env — no auto-prefix
91
+ const ROOT = (process.env.ROOT_DIR ?? join(homedir(), "Documents"));
92
+
93
+ const server = new McpServer({ name: "local-files", version: "0.1.0" });
94
+
95
+ server.registerTool(
96
+ "list_files",
97
+ {
98
+ description: "List files in a directory under the configured root.",
99
+ inputSchema: { path: z.string().default(".") },
100
+ annotations: { readOnlyHint: true },
101
+ },
102
+ async ({ path }) => {
103
+ const entries = await readdir(join(ROOT, path), { withFileTypes: true });
104
+ const list = entries.map(e => ({ name: e.name, dir: e.isDirectory() }));
105
+ return { content: [{ type: "text", text: JSON.stringify(list, null, 2) }] };
106
+ },
107
+ );
108
+
109
+ server.registerTool(
110
+ "read_file",
111
+ {
112
+ description: "Read a file's contents. Path is relative to the configured root.",
113
+ inputSchema: { path: z.string() },
114
+ annotations: { readOnlyHint: true },
115
+ },
116
+ async ({ path }) => {
117
+ const text = await readFile(join(ROOT, path), "utf8");
118
+ return { content: [{ type: "text", text }] };
119
+ },
120
+ );
121
+
122
+ const transport = new StdioServerTransport();
123
+ await server.connect(transport);
124
+ ```
125
+
126
+ **Sandboxing is entirely your job.** There is no manifest-level sandbox — the process runs with full user privileges. Validate paths, refuse to escape `ROOT`, allowlist spawns. See `references/local-security.md`.
127
+
128
+ Before hardcoding `ROOT` from a config env var, check if the host supports `roots/list` — the spec-native way to get user-approved directories. See `references/local-security.md` for the pattern.
129
+
130
+ ---
131
+
132
+ ## Build pipeline
133
+
134
+ ### Node
135
+
136
+ ```bash
137
+ npm install
138
+ npx esbuild src/index.ts --bundle --platform=node --outfile=server/index.js
139
+ # or: copy node_modules wholesale if native deps resist bundling
140
+ npx @anthropic-ai/mcpb pack
141
+ ```
142
+
143
+ `mcpb pack` zips the directory and validates `manifest.json` against the schema.
144
+
145
+ ### Python
146
+
147
+ ```bash
148
+ pip install -t server/vendor -r requirements.txt
149
+ npx @anthropic-ai/mcpb pack
150
+ ```
151
+
152
+ Vendor dependencies into a subdirectory and prepend it to `sys.path` in your entry script. Native extensions (numpy, etc.) must be built for each target platform — avoid native deps if you can.
153
+
154
+ ---
155
+
156
+ ## MCPB has no sandbox — security is on you
157
+
158
+ Unlike mobile app stores, MCPB does NOT enforce permissions. The manifest has no `permissions` block — the server runs with full user privileges. `references/local-security.md` is mandatory reading, not optional. Every path must be validated, every spawn must be allowlisted, because nothing stops you at the platform level.
159
+
160
+ If you came here expecting filesystem/network scoping from the manifest: it doesn't exist. Build it yourself in tool handlers.
161
+
162
+ If your server's only job is hitting a cloud API, stop — that's a remote server wearing an MCPB costume. The user gains nothing from running it locally, and you're taking on local-security burden for no reason.
163
+
164
+ ---
165
+
166
+ ## MCPB + UI widgets
167
+
168
+ MCPB servers can serve UI resources exactly like remote MCP apps — the widget mechanism is transport-agnostic. A local file picker that browses the actual disk, a dialog that controls a native app, etc.
169
+
170
+ Widget authoring is covered in the **`build-mcp-app`** skill; it works the same here. The only difference is where the server runs.
171
+
172
+ ---
173
+
174
+ ## Testing
175
+
176
+ ```bash
177
+ # Interactive manifest creation (first time)
178
+ npx @anthropic-ai/mcpb init
179
+
180
+ # Run the server directly over stdio, poke it with the inspector
181
+ npx @modelcontextprotocol/inspector node server/index.js
182
+
183
+ # Validate manifest against schema, then pack
184
+ npx @anthropic-ai/mcpb validate
185
+ npx @anthropic-ai/mcpb pack
186
+
187
+ # Sign for distribution
188
+ npx @anthropic-ai/mcpb sign dist/local-files.mcpb
189
+
190
+ # Install: drag the .mcpb file onto Claude Desktop
191
+ ```
192
+
193
+ Test on a machine **without** your dev toolchain before shipping. "Works on my machine" failures in MCPB almost always trace to a dependency that wasn't actually bundled.
194
+
195
+ ---
196
+
197
+ ## Reference files
198
+
199
+ - `references/manifest-schema.md` — full `manifest.json` field reference
200
+ - `references/local-security.md` — path traversal, sandboxing, least privilege
@@ -0,0 +1,401 @@
1
+ ---
2
+ name: building-ai-agent-on-cloudflare
3
+ description: |
4
+ Builds AI agents on Cloudflare using the Agents SDK with state management,
5
+ real-time WebSockets, scheduled tasks, tool integration, and chat capabilities.
6
+ Generates production-ready agent code deployed to Workers.
7
+
8
+ Use when: user wants to "build an agent", "AI agent", "chat agent", "stateful
9
+ agent", mentions "Agents SDK", needs "real-time AI", "WebSocket AI", or asks
10
+ about agent "state management", "scheduled tasks", or "tool calling".
11
+ Biases towards retrieval from Cloudflare docs over pre-trained knowledge.
12
+ category: backend
13
+ ---
14
+
15
+ # Building Cloudflare Agents
16
+
17
+ Your knowledge of the Agents SDK may be outdated. **Prefer retrieval over pre-training** for any agent-building task.
18
+
19
+ ## Retrieval Sources
20
+
21
+ | Source | How to retrieve | Use for |
22
+ |--------|----------------|---------|
23
+ | Agents SDK docs | `https://github.com/cloudflare/agents/tree/main/docs` | SDK API, state, routing, scheduling |
24
+ | Cloudflare Agents docs | `https://developers.cloudflare.com/agents/` | Platform integration, deployment |
25
+ | Workers docs | Search tool or `https://developers.cloudflare.com/workers/` | Runtime APIs, bindings, config |
26
+
27
+ ## When to Use
28
+
29
+ - User wants to build an AI agent or chatbot
30
+ - User needs stateful, real-time AI interactions
31
+ - User asks about the Cloudflare Agents SDK
32
+ - User wants scheduled tasks or background AI work
33
+ - User needs WebSocket-based AI communication
34
+
35
+ ## Prerequisites
36
+
37
+ - Cloudflare account with Workers enabled
38
+ - Node.js 18+ and npm/pnpm/yarn
39
+ - Wrangler CLI (`npm install -g wrangler`)
40
+
41
+ ## Quick Start
42
+
43
+ ```bash
44
+ npm create cloudflare@latest -- my-agent --template=cloudflare/agents-starter
45
+ cd my-agent
46
+ npm start
47
+ ```
48
+
49
+ Agent runs at `http://localhost:8787`
50
+
51
+ ## Core Concepts
52
+
53
+ ### What is an Agent?
54
+
55
+ An Agent is a stateful, persistent AI service that:
56
+ - Maintains state across requests and reconnections
57
+ - Communicates via WebSockets or HTTP
58
+ - Runs on Cloudflare's edge via Durable Objects
59
+ - Can schedule tasks and call tools
60
+ - Scales horizontally (each user/session gets own instance)
61
+
62
+ ### Agent Lifecycle
63
+
64
+ ```
65
+ Client connects → Agent.onConnect() → Agent processes messages
66
+ → Agent.onMessage()
67
+ → Agent.setState() (persists + syncs)
68
+ Client disconnects → State persists → Client reconnects → State restored
69
+ ```
70
+
71
+ ## Basic Agent Structure
72
+
73
+ ```typescript
74
+ import { Agent, Connection } from "agents";
75
+
76
+ interface Env {
77
+ AI: Ai; // Workers AI binding
78
+ }
79
+
80
+ interface State {
81
+ messages: Array<{ role: string; content: string }>;
82
+ preferences: Record<string, string>;
83
+ }
84
+
85
+ export class MyAgent extends Agent<Env, State> {
86
+ // Initial state for new instances
87
+ initialState: State = {
88
+ messages: [],
89
+ preferences: {},
90
+ };
91
+
92
+ // Called when agent starts or resumes
93
+ async onStart() {
94
+ console.log("Agent started with state:", this.state);
95
+ }
96
+
97
+ // Handle WebSocket connections
98
+ async onConnect(connection: Connection) {
99
+ connection.send(JSON.stringify({
100
+ type: "welcome",
101
+ history: this.state.messages,
102
+ }));
103
+ }
104
+
105
+ // Handle incoming messages
106
+ async onMessage(connection: Connection, message: string) {
107
+ const data = JSON.parse(message);
108
+
109
+ if (data.type === "chat") {
110
+ await this.handleChat(connection, data.content);
111
+ }
112
+ }
113
+
114
+ // Handle disconnections
115
+ async onClose(connection: Connection) {
116
+ console.log("Client disconnected");
117
+ }
118
+
119
+ // React to state changes
120
+ onStateUpdate(state: State, source: string) {
121
+ console.log("State updated by:", source);
122
+ }
123
+
124
+ private async handleChat(connection: Connection, userMessage: string) {
125
+ // Add user message to history
126
+ const messages = [
127
+ ...this.state.messages,
128
+ { role: "user", content: userMessage },
129
+ ];
130
+
131
+ // Call AI
132
+ const response = await this.env.AI.run("@cf/meta/llama-3-8b-instruct", {
133
+ messages,
134
+ });
135
+
136
+ // Update state (persists and syncs to all clients)
137
+ this.setState({
138
+ ...this.state,
139
+ messages: [
140
+ ...messages,
141
+ { role: "assistant", content: response.response },
142
+ ],
143
+ });
144
+
145
+ // Send response
146
+ connection.send(JSON.stringify({
147
+ type: "response",
148
+ content: response.response,
149
+ }));
150
+ }
151
+ }
152
+ ```
153
+
154
+ ## Entry Point Configuration
155
+
156
+ ```typescript
157
+ // src/index.ts
158
+ import { routeAgentRequest } from "agents";
159
+ import { MyAgent } from "./agent";
160
+
161
+ export default {
162
+ async fetch(request: Request, env: Env) {
163
+ // routeAgentRequest handles routing to /agents/:class/:name
164
+ return (
165
+ (await routeAgentRequest(request, env)) ||
166
+ new Response("Not found", { status: 404 })
167
+ );
168
+ },
169
+ };
170
+
171
+ export { MyAgent };
172
+ ```
173
+
174
+ Clients connect via: `wss://my-agent.workers.dev/agents/MyAgent/session-id`
175
+
176
+ ## Wrangler Configuration
177
+
178
+ ```toml
179
+ name = "my-agent"
180
+ main = "src/index.ts"
181
+ compatibility_date = "2024-12-01"
182
+
183
+ [ai]
184
+ binding = "AI"
185
+
186
+ [durable_objects]
187
+ bindings = [{ name = "AGENT", class_name = "MyAgent" }]
188
+
189
+ [[migrations]]
190
+ tag = "v1"
191
+ new_classes = ["MyAgent"]
192
+ ```
193
+
194
+ ## State Management
195
+
196
+ ### Reading State
197
+
198
+ ```typescript
199
+ // Current state is always available
200
+ const currentMessages = this.state.messages;
201
+ const userPrefs = this.state.preferences;
202
+ ```
203
+
204
+ ### Updating State
205
+
206
+ ```typescript
207
+ // setState persists AND syncs to all connected clients
208
+ this.setState({
209
+ ...this.state,
210
+ messages: [...this.state.messages, newMessage],
211
+ });
212
+
213
+ // Partial updates work too
214
+ this.setState({
215
+ preferences: { ...this.state.preferences, theme: "dark" },
216
+ });
217
+ ```
218
+
219
+ ### SQL Storage
220
+
221
+ For complex queries, use the embedded SQLite database:
222
+
223
+ ```typescript
224
+ // Create tables
225
+ await this.sql`
226
+ CREATE TABLE IF NOT EXISTS documents (
227
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
228
+ title TEXT NOT NULL,
229
+ content TEXT,
230
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP
231
+ )
232
+ `;
233
+
234
+ // Insert
235
+ await this.sql`
236
+ INSERT INTO documents (title, content)
237
+ VALUES (${title}, ${content})
238
+ `;
239
+
240
+ // Query
241
+ const docs = await this.sql`
242
+ SELECT * FROM documents WHERE title LIKE ${`%${search}%`}
243
+ `;
244
+ ```
245
+
246
+ ## Scheduled Tasks
247
+
248
+ Agents can schedule future work:
249
+
250
+ ```typescript
251
+ async onMessage(connection: Connection, message: string) {
252
+ const data = JSON.parse(message);
253
+
254
+ if (data.type === "schedule_reminder") {
255
+ // Schedule task for 1 hour from now
256
+ const { id } = await this.schedule(3600, "sendReminder", {
257
+ message: data.reminderText,
258
+ userId: data.userId,
259
+ });
260
+
261
+ connection.send(JSON.stringify({ type: "scheduled", taskId: id }));
262
+ }
263
+ }
264
+
265
+ // Called when scheduled task fires
266
+ async sendReminder(data: { message: string; userId: string }) {
267
+ // Send notification, email, etc.
268
+ console.log(`Reminder for ${data.userId}: ${data.message}`);
269
+
270
+ // Can also update state
271
+ this.setState({
272
+ ...this.state,
273
+ lastReminder: new Date().toISOString(),
274
+ });
275
+ }
276
+ ```
277
+
278
+ ### Schedule Options
279
+
280
+ ```typescript
281
+ // Delay in seconds
282
+ await this.schedule(60, "taskMethod", { data });
283
+
284
+ // Specific date
285
+ await this.schedule(new Date("2025-01-01T00:00:00Z"), "taskMethod", { data });
286
+
287
+ // Cron expression (recurring)
288
+ await this.schedule("0 9 * * *", "dailyTask", {}); // 9 AM daily
289
+ await this.schedule("*/5 * * * *", "everyFiveMinutes", {}); // Every 5 min
290
+
291
+ // Manage schedules
292
+ const schedules = await this.getSchedules();
293
+ await this.cancelSchedule(taskId);
294
+ ```
295
+
296
+ ## Chat Agent (AI-Powered)
297
+
298
+ For chat-focused agents, extend `AIChatAgent`:
299
+
300
+ ```typescript
301
+ import { AIChatAgent } from "agents/ai-chat-agent";
302
+
303
+ export class ChatBot extends AIChatAgent<Env> {
304
+ // Called for each user message
305
+ async onChatMessage(message: string) {
306
+ const response = await this.env.AI.run("@cf/meta/llama-3-8b-instruct", {
307
+ messages: [
308
+ { role: "system", content: "You are a helpful assistant." },
309
+ ...this.messages, // Automatic history management
310
+ { role: "user", content: message },
311
+ ],
312
+ stream: true,
313
+ });
314
+
315
+ // Stream response back to client
316
+ return response;
317
+ }
318
+ }
319
+ ```
320
+
321
+ Features included:
322
+ - Automatic message history
323
+ - Resumable streaming (survives disconnects)
324
+ - Built-in `saveMessages()` for persistence
325
+
326
+ ## Client Integration
327
+
328
+ ### React Hook
329
+
330
+ ```tsx
331
+ import { useAgent } from "agents/react";
332
+
333
+ function Chat() {
334
+ const { state, send, connected } = useAgent({
335
+ agent: "my-agent",
336
+ name: userId, // Agent instance ID
337
+ });
338
+
339
+ const sendMessage = (text: string) => {
340
+ send(JSON.stringify({ type: "chat", content: text }));
341
+ };
342
+
343
+ return (
344
+ <div>
345
+ {state.messages.map((msg, i) => (
346
+ <div key={i}>{msg.role}: {msg.content}</div>
347
+ ))}
348
+ <input onKeyDown={(e) => e.key === "Enter" && sendMessage(e.target.value)} />
349
+ </div>
350
+ );
351
+ }
352
+ ```
353
+
354
+ ### Vanilla JavaScript
355
+
356
+ ```javascript
357
+ const ws = new WebSocket("wss://my-agent.workers.dev/agents/MyAgent/user123");
358
+
359
+ ws.onopen = () => {
360
+ console.log("Connected to agent");
361
+ };
362
+
363
+ ws.onmessage = (event) => {
364
+ const data = JSON.parse(event.data);
365
+ console.log("Received:", data);
366
+ };
367
+
368
+ ws.send(JSON.stringify({ type: "chat", content: "Hello!" }));
369
+ ```
370
+
371
+ ## Common Patterns
372
+
373
+ See [references/agent-patterns.md](references/agent-patterns.md) for:
374
+ - Tool calling and function execution
375
+ - Multi-agent orchestration
376
+ - RAG (Retrieval Augmented Generation)
377
+ - Human-in-the-loop workflows
378
+
379
+ ## Deployment
380
+
381
+ ```bash
382
+ # Deploy
383
+ npx wrangler deploy
384
+
385
+ # View logs
386
+ wrangler tail
387
+
388
+ # Test endpoint
389
+ curl https://my-agent.workers.dev/agents/MyAgent/test-user
390
+ ```
391
+
392
+ ## Troubleshooting
393
+
394
+ See [references/troubleshooting.md](references/troubleshooting.md) for common issues.
395
+
396
+ ## References
397
+
398
+ - [references/examples.md](references/examples.md) — Official templates and production examples
399
+ - [references/agent-patterns.md](references/agent-patterns.md) — Advanced patterns
400
+ - [references/state-patterns.md](references/state-patterns.md) — State management strategies
401
+ - [references/troubleshooting.md](references/troubleshooting.md) — Error solutions