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,114 @@
1
+ // Task file management — reads and writes TASKS.md in the workspace root.
2
+ // Used during plan execution to track progress visibly in the project.
3
+ //
4
+ // Format:
5
+ // # Tasks
6
+ // ## Active
7
+ // - [ ] **Title** — description
8
+ // ## Done
9
+ // - [x] ~~**Title**~~ (date)
10
+
11
+ const fs = require('fs');
12
+ const path = require('path');
13
+
14
+ const TEMPLATE = `# Tasks
15
+
16
+ ## Active
17
+
18
+ ## Waiting On
19
+
20
+ ## Someday
21
+
22
+ ## Done
23
+ `;
24
+
25
+ function taskFilePath(root) {
26
+ return path.join(root, 'TASKS.md');
27
+ }
28
+
29
+ function ensureTaskFile(root) {
30
+ const p = taskFilePath(root);
31
+ if (!fs.existsSync(p)) {
32
+ try { fs.writeFileSync(p, TEMPLATE, 'utf8'); } catch {}
33
+ }
34
+ return p;
35
+ }
36
+
37
+ function readContent(root) {
38
+ const p = taskFilePath(root);
39
+ try {
40
+ return fs.existsSync(p) ? fs.readFileSync(p, 'utf8') : TEMPLATE;
41
+ } catch { return TEMPLATE; }
42
+ }
43
+
44
+ function writeContent(root, content) {
45
+ try { fs.writeFileSync(taskFilePath(root), content, 'utf8'); } catch {}
46
+ }
47
+
48
+ // Write all plan tasks into the Active section.
49
+ // Creates TASKS.md if it doesn't exist.
50
+ function addPlanTasks(root, plan) {
51
+ ensureTaskFile(root);
52
+ let content = readContent(root);
53
+
54
+ const lines = [
55
+ `\n**${plan.title}**`,
56
+ ...plan.tasks.map((t) => `- [ ] **${t.title}**${t.description ? ` — ${t.description}` : ''}`),
57
+ '',
58
+ ].join('\n');
59
+
60
+ // Insert after the ## Active heading (or append if not found)
61
+ if (/^## Active$/m.test(content)) {
62
+ content = content.replace(/^(## Active)$/m, `$1\n${lines}`);
63
+ } else {
64
+ content += `\n## Active\n${lines}`;
65
+ }
66
+
67
+ writeContent(root, content);
68
+ }
69
+
70
+ // Move a task from Active to Done (strikethrough + date).
71
+ function markTaskComplete(root, taskTitle, completedAt) {
72
+ let content = readContent(root);
73
+ if (!content) return;
74
+
75
+ const date = completedAt
76
+ ? new Date(completedAt).toLocaleDateString('en-US', { month: 'short', day: 'numeric' })
77
+ : new Date().toLocaleDateString('en-US', { month: 'short', day: 'numeric' });
78
+
79
+ // Escape regex special chars in title
80
+ const esc = taskTitle.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
81
+ const activeRe = new RegExp(`^- \\[ \\] \\*\\*${esc}\\*\\*.*$`, 'm');
82
+ const doneEntry = `- [x] ~~**${taskTitle}**~~ (${date})`;
83
+
84
+ if (!activeRe.test(content)) return;
85
+
86
+ // Remove from Active
87
+ content = content.replace(activeRe, '');
88
+
89
+ // Add to Done section (or append)
90
+ if (/^## Done$/m.test(content)) {
91
+ content = content.replace(/^(## Done)$/m, `$1\n${doneEntry}`);
92
+ } else {
93
+ content += `\n## Done\n${doneEntry}\n`;
94
+ }
95
+
96
+ // Clean up double blank lines
97
+ content = content.replace(/\n{3,}/g, '\n\n');
98
+ writeContent(root, content);
99
+ }
100
+
101
+ // Mark a task as skipped (note inline, leave in Active).
102
+ function markTaskSkipped(root, taskTitle) {
103
+ let content = readContent(root);
104
+ if (!content) return;
105
+
106
+ const esc = taskTitle.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
107
+ content = content.replace(
108
+ new RegExp(`^(- \\[ \\] \\*\\*${esc}\\*\\*.*)$`, 'm'),
109
+ `$1 ~~skipped~~`,
110
+ );
111
+ writeContent(root, content);
112
+ }
113
+
114
+ module.exports = { addPlanTasks, markTaskComplete, markTaskSkipped, taskFilePath, ensureTaskFile };
@@ -0,0 +1,246 @@
1
+ // Task classifier — matches makkorch's classification to ensure consistent routing.
2
+ // Analyzes message content to detect task type (architecture, implementation, debugging, etc).
3
+
4
+ function normalizeContent(content) {
5
+ if (typeof content === 'string') {
6
+ return content;
7
+ }
8
+
9
+ if (Array.isArray(content)) {
10
+ return content
11
+ .map((part) => {
12
+ if (typeof part === 'string') {
13
+ return part;
14
+ }
15
+ if (part && typeof part === 'object' && 'text' in part && typeof part.text === 'string') {
16
+ return part.text;
17
+ }
18
+ return '';
19
+ })
20
+ .filter(Boolean)
21
+ .join('\n');
22
+ }
23
+
24
+ if (content && typeof content === 'object' && 'text' in content && typeof content.text === 'string') {
25
+ return content.text;
26
+ }
27
+
28
+ return '';
29
+ }
30
+
31
+ function messagesToText(messages) {
32
+ if (!Array.isArray(messages)) return '';
33
+ return messages
34
+ .map((message) => normalizeContent(message?.content))
35
+ .join('\n')
36
+ .toLowerCase();
37
+ }
38
+
39
+ function countMatches(text, terms) {
40
+ return terms.reduce((count, term) => {
41
+ return count + (text.includes(term.toLowerCase()) ? 1 : 0);
42
+ }, 0);
43
+ }
44
+
45
+ function hasAny(text, terms) {
46
+ return countMatches(text, terms) > 0;
47
+ }
48
+
49
+ function hasRegex(text, patterns) {
50
+ return patterns.some((pattern) => pattern.test(text));
51
+ }
52
+
53
+ function clamp(value, min, max) {
54
+ return Math.max(min, Math.min(max, value));
55
+ }
56
+
57
+ function makeProfile(taskType, scope, reasoning, urgency, risk) {
58
+ return {
59
+ taskType,
60
+ scope: clamp(scope, 1, 5),
61
+ reasoning: clamp(reasoning, 1, 5),
62
+ urgency: clamp(urgency, 1, 10),
63
+ risk: clamp(risk, 1, 5),
64
+ };
65
+ }
66
+
67
+ // Classify task type from messages (matches makkorch's classifyTask.ts)
68
+ function classifyTask(messages) {
69
+ const text = messagesToText(messages);
70
+
71
+ const explicitArchitecture = [
72
+ 'architecture', 'architectural', 'system design', 'design the system',
73
+ 'design a system', 'technical design', 'design doc', 'rfc', 'adr',
74
+ 'high level design', 'high-level design', 'scalability plan',
75
+ 'scalable architecture', 'distributed system', 'microservices',
76
+ 'service boundaries', 'database schema design', 'data model design',
77
+ 'infrastructure plan', 'deployment architecture', 'cloud architecture',
78
+ 'migration strategy', 'roadmap', 'tradeoffs', 'trade-offs',
79
+ 'pros and cons', 'what approach', 'which approach',
80
+ 'recommend an approach', 'plan the implementation', 'project plan',
81
+ ];
82
+
83
+ const implementationTerms = [
84
+ 'implement', 'build', 'create', 'write', 'add', 'make', 'generate',
85
+ 'code', 'component', 'function', 'class', 'api', 'endpoint', 'hook',
86
+ 'page', 'screen', 'website', 'app', 'dashboard', 'feature',
87
+ 'full file', 'complete file', 'replacement file',
88
+ 'output complete files', 'files to provide',
89
+ 'src/', '.ts', '.tsx', '.js', '.jsx', '.py', '.json', '.css', '.html',
90
+ ];
91
+
92
+ const debuggingTerms = [
93
+ 'bug', 'error', 'exception', 'stack trace', 'traceback',
94
+ 'failing', 'fails', 'failed', 'broken', 'debug', 'why does',
95
+ 'not working', 'doesn\'t work', 'crash', 'crashes', 'timeout',
96
+ 'race condition', 'memory leak', 'deadlock', 'fix this',
97
+ 'fix the error', 'type error', 'typescript error',
98
+ 'compile error', 'runtime error',
99
+ ];
100
+
101
+ const refactorTerms = [
102
+ 'refactor', 'cleanup', 'clean up', 'simplify', 'reorganize',
103
+ 'rename', 'extract', 'deduplicate', 'split into', 'make cleaner',
104
+ 'improve readability', 'without changing behavior',
105
+ 'keep behavior identical',
106
+ ];
107
+
108
+ const docsTerms = [
109
+ 'readme', 'documentation', 'docs', 'comment', 'explain',
110
+ 'write instructions', 'guide', 'tutorial', 'document this',
111
+ 'usage notes',
112
+ ];
113
+
114
+ const testingTerms = [
115
+ 'test', 'unit test', 'integration test', 'e2e', 'jest', 'vitest',
116
+ 'playwright', 'coverage', 'spec file', '.spec.', '.test.',
117
+ ];
118
+
119
+ const smallEditTerms = [
120
+ 'format', 'typo', 'small change', 'tiny', 'one line',
121
+ 'rename variable', 'fix import', 'change the text', 'change copy',
122
+ 'update label', 'only change', 'single line',
123
+ ];
124
+
125
+ const multiFileSignals = [
126
+ 'multiple files', 'several files', 'files to provide', 'complete files',
127
+ 'full files', 'src/', 'package.json', 'tsconfig', 'vite.config',
128
+ 'tailwind.config',
129
+ ];
130
+
131
+ const largeImplementationSignals = [
132
+ 'from scratch', 'entire app', 'whole app', 'complete app',
133
+ 'full app', 'complete website', 'full website', 'dashboard',
134
+ 'responsive website', 'multi-file', 'multiple files', 'files to provide',
135
+ ];
136
+
137
+ const explicitArchitectureQuestion = hasRegex(text, [
138
+ /\bhow should (i|we) design\b/,
139
+ /\bwhat architecture\b/,
140
+ /\bwhich architecture\b/,
141
+ /\bdesign an architecture\b/,
142
+ /\bplan (the|a|this) system\b/,
143
+ /\bcompare .* approaches\b/,
144
+ /\btrade-?offs?\b/,
145
+ ]);
146
+
147
+ const implementationScore =
148
+ countMatches(text, implementationTerms) * 3 +
149
+ countMatches(text, largeImplementationSignals) * 2 +
150
+ (hasRegex(text, [/```/, /\bfile:\s*[\w./-]+/]) ? 4 : 0);
151
+
152
+ const architectureScore =
153
+ countMatches(text, explicitArchitecture) * 4 + (explicitArchitectureQuestion ? 8 : 0);
154
+
155
+ const debuggingScore =
156
+ countMatches(text, debuggingTerms) * 4 +
157
+ (hasRegex(text, [/error:\s/i, /typeerror/i, /referenceerror/i, /syntaxerror/i]) ? 5 : 0);
158
+
159
+ const refactorScore = countMatches(text, refactorTerms) * 4;
160
+ const testingScore = countMatches(text, testingTerms) * 4;
161
+ const docsScore = countMatches(text, docsTerms) * 3;
162
+ const smallEditScore = countMatches(text, smallEditTerms) * 4;
163
+
164
+ const scores = [
165
+ { taskType: 'debugging', score: debuggingScore },
166
+ { taskType: 'refactor', score: refactorScore },
167
+ { taskType: 'testing', score: testingScore },
168
+ { taskType: 'docs', score: docsScore },
169
+ { taskType: 'small_edit', score: smallEditScore },
170
+ { taskType: 'architecture', score: architectureScore },
171
+ { taskType: 'implementation', score: implementationScore },
172
+ ];
173
+
174
+ scores.sort((a, b) => b.score - a.score);
175
+
176
+ const top = scores[0];
177
+ const isLikelyImplementation =
178
+ implementationScore > 0 && hasAny(text, implementationTerms);
179
+ const isExplicitArchitecture = architectureScore >= 8 || explicitArchitectureQuestion;
180
+ const multiFile = hasAny(text, multiFileSignals);
181
+ const largeImplementation = hasAny(text, largeImplementationSignals);
182
+
183
+ if (debuggingScore >= 4 && debuggingScore >= implementationScore) {
184
+ return makeProfile('debugging', multiFile ? 4 : 3, 5, 7, 4);
185
+ }
186
+
187
+ if (refactorScore >= 4 && refactorScore >= implementationScore) {
188
+ return makeProfile('refactor', multiFile ? 4 : 3, 3, 5, 3);
189
+ }
190
+
191
+ if (testingScore >= 4 && testingScore >= implementationScore) {
192
+ return makeProfile('testing', 3, 3, 5, 3);
193
+ }
194
+
195
+ if (smallEditScore >= 4 && !largeImplementation && !multiFile) {
196
+ return makeProfile('small_edit', 1, 1, 7, 1);
197
+ }
198
+
199
+ if (docsScore >= 4 && implementationScore === 0) {
200
+ return makeProfile('docs', 2, 2, 4, 1);
201
+ }
202
+
203
+ if (isExplicitArchitecture && architectureScore > implementationScore + 3) {
204
+ return makeProfile('architecture', 5, 5, 5, 4);
205
+ }
206
+
207
+ if (isLikelyImplementation) {
208
+ return makeProfile(
209
+ 'implementation',
210
+ largeImplementation || multiFile ? 4 : 3,
211
+ largeImplementation || multiFile ? 4 : 3,
212
+ 5,
213
+ largeImplementation || multiFile ? 4 : 3,
214
+ );
215
+ }
216
+
217
+ if (top && top.score > 0) {
218
+ if (top.taskType === 'architecture') {
219
+ return makeProfile('architecture', 5, 5, 5, 4);
220
+ }
221
+
222
+ if (top.taskType === 'debugging') {
223
+ return makeProfile('debugging', 3, 5, 7, 4);
224
+ }
225
+
226
+ if (top.taskType === 'refactor') {
227
+ return makeProfile('refactor', 3, 3, 5, 3);
228
+ }
229
+
230
+ if (top.taskType === 'testing') {
231
+ return makeProfile('testing', 3, 3, 5, 3);
232
+ }
233
+
234
+ if (top.taskType === 'docs') {
235
+ return makeProfile('docs', 2, 2, 4, 1);
236
+ }
237
+
238
+ if (top.taskType === 'small_edit') {
239
+ return makeProfile('small_edit', 1, 1, 7, 1);
240
+ }
241
+ }
242
+
243
+ return makeProfile('implementation', 3, 3, 5, 3);
244
+ }
245
+
246
+ module.exports = { classifyTask };