@hasna/skills 0.1.26 → 0.1.29

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 (491) hide show
  1. package/LICENSE +1 -10
  2. package/README.md +141 -39
  3. package/bin/index.js +30122 -27575
  4. package/bin/mcp.js +22112 -18593
  5. package/dist/cli/cli.test-utils.d.ts +15 -0
  6. package/dist/cli/commands/auth.d.ts +2 -0
  7. package/dist/cli/commands/install.d.ts +1 -1
  8. package/dist/cli/commands/runtime-mcp.d.ts +4 -0
  9. package/dist/index.d.ts +9 -4
  10. package/dist/index.js +11607 -597
  11. package/dist/lib/auth-store.d.ts +13 -0
  12. package/dist/lib/installer.d.ts +58 -55
  13. package/dist/lib/mcp-contracts.d.ts +86 -0
  14. package/dist/lib/project-state.d.ts +43 -0
  15. package/dist/lib/registry-data/business-marketing.d.ts +2 -0
  16. package/dist/lib/registry-data/communication.d.ts +2 -0
  17. package/dist/lib/registry-data/content-generation.d.ts +2 -0
  18. package/dist/lib/registry-data/data-analysis.d.ts +2 -0
  19. package/dist/lib/registry-data/design-branding.d.ts +2 -0
  20. package/dist/lib/registry-data/development-tools.d.ts +2 -0
  21. package/dist/lib/registry-data/education-learning.d.ts +2 -0
  22. package/dist/lib/registry-data/event-management.d.ts +2 -0
  23. package/dist/lib/registry-data/finance-compliance.d.ts +2 -0
  24. package/dist/lib/registry-data/health-wellness.d.ts +2 -0
  25. package/dist/lib/registry-data/index.d.ts +2 -0
  26. package/dist/lib/registry-data/media-processing.d.ts +2 -0
  27. package/dist/lib/registry-data/productivity-organization.d.ts +2 -0
  28. package/dist/lib/registry-data/project-management.d.ts +2 -0
  29. package/dist/lib/registry-data/research-writing.d.ts +2 -0
  30. package/dist/lib/registry-data/science-academic.d.ts +2 -0
  31. package/dist/lib/registry-data/travel-lifestyle.d.ts +2 -0
  32. package/dist/lib/registry-data/web-browser.d.ts +2 -0
  33. package/dist/lib/registry-types.d.ts +27 -0
  34. package/dist/lib/registry.d.ts +6 -18
  35. package/dist/lib/remote-registry.d.ts +3 -0
  36. package/dist/lib/run-state.d.ts +60 -0
  37. package/dist/lib/skill-aliases.d.ts +17 -0
  38. package/dist/lib/skillinfo.d.ts +5 -1
  39. package/dist/mcp/discovery-tools.d.ts +2 -0
  40. package/dist/mcp/helpers.d.ts +26 -0
  41. package/dist/mcp/http.d.ts +10 -0
  42. package/dist/mcp/index.d.ts +3 -2
  43. package/dist/mcp/operation-tools.d.ts +2 -0
  44. package/dist/mcp/resource-meta-tools.d.ts +2 -0
  45. package/dist/mcp/schedule-tools.d.ts +2 -0
  46. package/dist/mcp/server.d.ts +4 -0
  47. package/dist/types/api.d.ts +7 -4
  48. package/package.json +23 -10
  49. package/skills/_common/http-client.ts +1 -1
  50. package/skills/_common/index.ts +2 -3
  51. package/skills/_common/install.sh +5 -110
  52. package/skills/_common/installer.ts +31 -282
  53. package/skills/_common/skill-install.ts +14 -181
  54. package/skills/ad-creative-pack/SKILL.md +45 -0
  55. package/skills/ad-creative-pack/package.json +14 -0
  56. package/skills/advanced-math/package.json +3 -1
  57. package/skills/advanced-math/src/calculators.ts +118 -0
  58. package/skills/advanced-math/src/cli.ts +130 -0
  59. package/skills/advanced-math/src/conversion.ts +90 -0
  60. package/skills/advanced-math/src/finance.ts +75 -0
  61. package/skills/advanced-math/src/formatting.ts +95 -0
  62. package/skills/advanced-math/src/index.ts +24 -702
  63. package/skills/advanced-math/src/runtime.ts +49 -0
  64. package/skills/advanced-math/src/symbolic.ts +110 -0
  65. package/skills/advanced-math/src/types.ts +36 -0
  66. package/skills/analyze-data/SKILL.md +2 -2
  67. package/skills/analyze-data/src/analysis.ts +401 -0
  68. package/skills/analyze-data/src/cli.ts +66 -0
  69. package/skills/analyze-data/src/formatters.ts +235 -0
  70. package/skills/analyze-data/src/index.ts +6 -1027
  71. package/skills/analyze-data/src/logger.ts +36 -0
  72. package/skills/analyze-data/src/parsers.ts +57 -0
  73. package/skills/analyze-data/src/stats.ts +151 -0
  74. package/skills/analyze-data/src/types.ts +85 -0
  75. package/skills/api-docs-portal/SKILL.md +46 -0
  76. package/skills/api-docs-portal/package.json +9 -0
  77. package/skills/api-test-suite/src/index.ts +13 -0
  78. package/skills/apidocs/package.json +1 -1
  79. package/skills/apidocs/src/index.ts +3 -0
  80. package/skills/audio/package.json +2 -3
  81. package/skills/audio-cleanup-lab/SKILL.md +2 -2
  82. package/skills/audio-extract/CLAUDE.md +1 -1
  83. package/skills/audio-transcript-pack/SKILL.md +43 -0
  84. package/skills/audio-transcript-pack/package.json +10 -0
  85. package/skills/blog-article/CLAUDE.md +12 -0
  86. package/skills/blog-article/SKILL.md +45 -0
  87. package/skills/{create-blog-article → blog-article}/package.json +3 -3
  88. package/skills/brand-kit/SKILL.md +45 -0
  89. package/skills/brand-kit/package.json +14 -0
  90. package/skills/brand-photo-shoot/SKILL.md +28 -0
  91. package/skills/brand-photo-shoot/package.json +10 -0
  92. package/skills/brand-style-guide/SKILL.md +2 -2
  93. package/skills/brand-style-guide/src/index.ts +0 -0
  94. package/skills/budget-variance-analyzer/SKILL.md +2 -2
  95. package/skills/businessactivity/package.json +1 -1
  96. package/skills/businessactivity/src/index.ts +3 -0
  97. package/skills/calendar-events/src/ai-parser.ts +103 -0
  98. package/skills/calendar-events/src/api.ts +157 -0
  99. package/skills/calendar-events/src/auth.ts +22 -0
  100. package/skills/calendar-events/src/config.ts +6 -0
  101. package/skills/calendar-events/src/format.ts +96 -0
  102. package/skills/calendar-events/src/help.ts +54 -0
  103. package/skills/calendar-events/src/index.ts +21 -524
  104. package/skills/calendar-events/src/logger.ts +34 -0
  105. package/skills/calendar-events/src/types.ts +67 -0
  106. package/skills/compress-video/SKILL.md +2 -2
  107. package/skills/consolelog/package.json +1 -1
  108. package/skills/consolelog/src/index.ts +3 -0
  109. package/skills/contract-review-report/SKILL.md +43 -0
  110. package/skills/contract-review-report/package.json +10 -0
  111. package/skills/convert/SKILL.md +2 -3
  112. package/skills/customer-feedback-report/SKILL.md +44 -0
  113. package/skills/customer-feedback-report/package.json +10 -0
  114. package/skills/dashboard-builder/package.json +3 -1
  115. package/skills/database-explorer/package.json +3 -1
  116. package/skills/deepresearch/README.md +4 -13
  117. package/skills/deploy/src/http-client.ts +1 -1
  118. package/skills/diff-viewer/package.json +4 -1
  119. package/skills/doc-generate/package.json +0 -1
  120. package/skills/doc-generate/src/ai.ts +50 -0
  121. package/skills/doc-generate/src/cli.ts +203 -0
  122. package/skills/doc-generate/src/dependencies.ts +44 -0
  123. package/skills/doc-generate/src/document-builder.ts +299 -0
  124. package/skills/doc-generate/src/index.ts +40 -764
  125. package/skills/doc-generate/src/markdown-parser.ts +125 -0
  126. package/skills/doc-generate/src/types.ts +68 -0
  127. package/skills/domainpurchase/SKILL.md +1 -1
  128. package/skills/domainpurchase/package.json +1 -1
  129. package/skills/domainpurchase/src/index.ts +3 -0
  130. package/skills/domainsearch/SKILL.md +1 -1
  131. package/skills/domainsearch/package.json +1 -1
  132. package/skills/domainsearch/src/index.ts +3 -0
  133. package/skills/email-sequence/SKILL.md +44 -0
  134. package/skills/email-sequence/package.json +14 -0
  135. package/skills/excel/CLAUDE.md +2 -2
  136. package/skills/experiment-power-calculator/package.json +3 -1
  137. package/skills/extract-invoice/src/cli.ts +97 -0
  138. package/skills/extract-invoice/src/extractor.ts +170 -0
  139. package/skills/extract-invoice/src/file-utils.ts +46 -0
  140. package/skills/extract-invoice/src/formatters.ts +144 -0
  141. package/skills/extract-invoice/src/index.ts +44 -629
  142. package/skills/extract-invoice/src/runtime.ts +46 -0
  143. package/skills/extract-invoice/src/types.ts +88 -0
  144. package/skills/folder-tree/package.json +3 -1
  145. package/skills/form-filler/package.json +3 -1
  146. package/skills/generate-api-client/package.json +3 -1
  147. package/skills/generate-api-client/src/generator.ts +47 -0
  148. package/skills/generate-api-client/src/index.ts +3 -777
  149. package/skills/generate-api-client/src/logger.ts +34 -0
  150. package/skills/generate-api-client/src/python-generator.ts +245 -0
  151. package/skills/generate-api-client/src/spec-loader.ts +48 -0
  152. package/skills/generate-api-client/src/type-mappers.ts +79 -0
  153. package/skills/generate-api-client/src/types.ts +76 -0
  154. package/skills/generate-api-client/src/typescript-generator.ts +247 -0
  155. package/skills/generate-book-cover/package.json +3 -1
  156. package/skills/generate-dockerfile/src/cli.ts +78 -0
  157. package/skills/generate-dockerfile/src/dockerfile-templates.ts +392 -0
  158. package/skills/generate-dockerfile/src/index.ts +12 -790
  159. package/skills/generate-dockerfile/src/logger.ts +30 -0
  160. package/skills/generate-dockerfile/src/project-detection.ts +68 -0
  161. package/skills/generate-dockerfile/src/support-files.ts +171 -0
  162. package/skills/generate-dockerfile/src/types.ts +29 -0
  163. package/skills/generate-documentation/src/ai.ts +131 -0
  164. package/skills/generate-documentation/src/cli.ts +71 -0
  165. package/skills/generate-documentation/src/code-parser.ts +300 -0
  166. package/skills/generate-documentation/src/file-processing.ts +182 -0
  167. package/skills/generate-documentation/src/index.ts +13 -753
  168. package/skills/generate-documentation/src/runtime.ts +35 -0
  169. package/skills/generate-documentation/src/types.ts +30 -0
  170. package/skills/generate-env/package.json +3 -1
  171. package/skills/generate-env/src/cli.ts +85 -0
  172. package/skills/generate-env/src/detection.ts +161 -0
  173. package/skills/generate-env/src/env-data.ts +66 -0
  174. package/skills/generate-env/src/generators.ts +240 -0
  175. package/skills/generate-env/src/index.ts +76 -676
  176. package/skills/generate-env/src/runtime.ts +30 -0
  177. package/skills/generate-env/src/types.ts +32 -0
  178. package/skills/generate-favicon/package.json +3 -1
  179. package/skills/generate-mock-data/package.json +3 -1
  180. package/skills/generate-mock-data/src/ai.ts +102 -0
  181. package/skills/generate-mock-data/src/formatters.ts +84 -0
  182. package/skills/generate-mock-data/src/generator.ts +377 -0
  183. package/skills/generate-mock-data/src/index.ts +15 -716
  184. package/skills/generate-mock-data/src/logger.ts +37 -0
  185. package/skills/generate-mock-data/src/presets.ts +110 -0
  186. package/skills/generate-mock-data/src/types.ts +21 -0
  187. package/skills/generate-pr-description/src/ai.ts +144 -0
  188. package/skills/generate-pr-description/src/cli.ts +80 -0
  189. package/skills/generate-pr-description/src/clipboard.ts +30 -0
  190. package/skills/generate-pr-description/src/formatters.ts +231 -0
  191. package/skills/generate-pr-description/src/git.ts +153 -0
  192. package/skills/generate-pr-description/src/index.ts +21 -714
  193. package/skills/generate-pr-description/src/types.ts +49 -0
  194. package/skills/generate-presentation/src/ai-clients.ts +61 -0
  195. package/skills/generate-presentation/src/cli.ts +126 -0
  196. package/skills/generate-presentation/src/index.ts +3 -751
  197. package/skills/generate-presentation/src/logger.ts +67 -0
  198. package/skills/generate-presentation/src/presentation-generator.ts +425 -0
  199. package/skills/generate-presentation/src/runtime.ts +6 -0
  200. package/skills/generate-presentation/src/security.ts +12 -0
  201. package/skills/generate-presentation/src/types.ts +28 -0
  202. package/skills/generate-qrcode/package.json +4 -1
  203. package/skills/generate-regex/package.json +3 -1
  204. package/skills/generate-resume/src/cli.ts +157 -0
  205. package/skills/generate-resume/src/index.ts +13 -917
  206. package/skills/generate-resume/src/parsers.ts +95 -0
  207. package/skills/generate-resume/src/renderers.ts +538 -0
  208. package/skills/generate-resume/src/security.ts +39 -0
  209. package/skills/generate-resume/src/types.ts +86 -0
  210. package/skills/generate-social-posts/src/ai.ts +88 -0
  211. package/skills/generate-social-posts/src/cli.ts +118 -0
  212. package/skills/generate-social-posts/src/exporters.ts +126 -0
  213. package/skills/generate-social-posts/src/generator.ts +130 -0
  214. package/skills/generate-social-posts/src/index.ts +19 -709
  215. package/skills/generate-social-posts/src/platforms.ts +39 -0
  216. package/skills/generate-social-posts/src/runtime.ts +34 -0
  217. package/skills/generate-social-posts/src/source.ts +116 -0
  218. package/skills/generate-social-posts/src/types.ts +58 -0
  219. package/skills/gif-maker/package.json +4 -1
  220. package/skills/github-manager/package.json +3 -1
  221. package/skills/gmail/CLAUDE.md +1 -1
  222. package/skills/highlight-reel-generator/src/index.ts +19 -0
  223. package/skills/hook/src/commands/create.ts +20 -845
  224. package/skills/hook/src/templates/root.ts +196 -0
  225. package/skills/hook/src/templates/source.ts +647 -0
  226. package/skills/http-server/package.json +3 -1
  227. package/skills/icon-pack/README.md +28 -0
  228. package/skills/icon-pack/SKILL.md +23 -0
  229. package/skills/icon-pack/package.json +29 -0
  230. package/skills/{audio → icon-pack}/tsconfig.json +10 -12
  231. package/skills/image/package.json +1 -2
  232. package/skills/implementation-agent/package.json +3 -1
  233. package/skills/implementation-agent/src/ai-generation.ts +225 -0
  234. package/skills/implementation-agent/src/index.ts +3 -960
  235. package/skills/implementation-agent/src/minimist.d.ts +15 -0
  236. package/skills/implementation-agent/src/templates.ts +686 -0
  237. package/skills/implementation-agent/src/types.ts +53 -0
  238. package/skills/implementation-plan/package.json +3 -1
  239. package/skills/implementation-todo/package.json +3 -1
  240. package/skills/invoice/package.json +1 -1
  241. package/skills/invoice/src/index.ts +3 -0
  242. package/skills/invoice-reconciliation/SKILL.md +42 -0
  243. package/skills/invoice-reconciliation/package.json +10 -0
  244. package/skills/landing-page-pack/SKILL.md +47 -0
  245. package/skills/landing-page-pack/package.json +14 -0
  246. package/skills/latex-table-generator/package.json +3 -1
  247. package/skills/logo-design/SKILL.md +25 -44
  248. package/skills/logo-design/package.json +3 -15
  249. package/skills/lorem-generator/package.json +3 -1
  250. package/skills/lorem-generator/src/index.ts +13 -0
  251. package/skills/managehook/package.json +1 -1
  252. package/skills/managehook/src/index.ts +3 -0
  253. package/skills/managemcp/package.json +1 -1
  254. package/skills/managemcp/src/index.ts +3 -0
  255. package/skills/manageskill/package.json +1 -1
  256. package/skills/manageskill/src/index.ts +3 -0
  257. package/skills/markdown-validator/package.json +3 -1
  258. package/skills/markdown-validator/src/index.ts +1 -4
  259. package/skills/market-research-report/SKILL.md +41 -0
  260. package/skills/market-research-report/package.json +10 -0
  261. package/skills/mcp-builder/package.json +4 -1
  262. package/skills/mcp-builder/src/ai-descriptions.ts +37 -0
  263. package/skills/mcp-builder/src/generators.ts +513 -0
  264. package/skills/mcp-builder/src/index.ts +7 -908
  265. package/skills/mcp-builder/src/minimist.d.ts +15 -0
  266. package/skills/mcp-builder/src/naming.ts +12 -0
  267. package/skills/mcp-builder/src/options.ts +170 -0
  268. package/skills/mcp-builder/src/templates.ts +149 -0
  269. package/skills/mcp-builder/src/types.ts +42 -0
  270. package/skills/meeting-pack/SKILL.md +43 -0
  271. package/skills/meeting-pack/package.json +10 -0
  272. package/skills/merge-pdfs/package.json +5 -1
  273. package/skills/migration-plan-pack/SKILL.md +45 -0
  274. package/skills/migration-plan-pack/package.json +10 -0
  275. package/skills/music/package.json +2 -3
  276. package/skills/music-album/SKILL.md +37 -0
  277. package/skills/music-album/package.json +10 -0
  278. package/skills/notion-manager/package.json +3 -1
  279. package/skills/npmpublish/CLAUDE.md +5 -8
  280. package/skills/npmpublish/README.md +5 -26
  281. package/skills/npmpublish/src/index.ts +9 -147
  282. package/skills/one-page-website/SKILL.md +46 -0
  283. package/skills/one-page-website/package.json +10 -0
  284. package/skills/one-page-website/tsconfig.json +8 -0
  285. package/skills/pdf-generate/src/cli.ts +162 -0
  286. package/skills/pdf-generate/src/html.ts +84 -0
  287. package/skills/pdf-generate/src/index.ts +11 -800
  288. package/skills/pdf-generate/src/markdown.ts +27 -0
  289. package/skills/pdf-generate/src/pdf-writer.ts +78 -0
  290. package/skills/pdf-generate/src/runtime.ts +34 -0
  291. package/skills/pdf-generate/src/security.ts +37 -0
  292. package/skills/pdf-generate/src/templates.ts +311 -0
  293. package/skills/pdf-generate/src/types.ts +28 -0
  294. package/skills/pdf-read/SKILL.md +10 -10
  295. package/skills/pdf-to-dataset/SKILL.md +45 -0
  296. package/skills/pdf-to-dataset/package.json +10 -0
  297. package/skills/pdf-to-markdown/SKILL.md +49 -0
  298. package/skills/pdf-to-markdown/package.json +10 -0
  299. package/skills/pdf-to-markdown/tsconfig.json +10 -0
  300. package/skills/performance-audit-report/SKILL.md +42 -0
  301. package/skills/performance-audit-report/package.json +10 -0
  302. package/skills/persona-based-adwriter/src/index.ts +19 -0
  303. package/skills/photo-album/SKILL.md +29 -0
  304. package/skills/photo-album/package.json +9 -0
  305. package/skills/photo-album/tsconfig.json +4 -0
  306. package/skills/pitch-deck/SKILL.md +43 -0
  307. package/skills/pitch-deck/package.json +9 -0
  308. package/skills/playlist-maker/SKILL.md +33 -0
  309. package/skills/playlist-maker/package.json +9 -0
  310. package/skills/playlist-maker/tsconfig.json +4 -0
  311. package/skills/product-mockup/SKILL.md +45 -0
  312. package/skills/product-mockup/package.json +3 -20
  313. package/skills/product-mockup/tsconfig.json +3 -5
  314. package/skills/project-retro-companion/src/index.ts +19 -0
  315. package/skills/proposal-pack/SKILL.md +45 -0
  316. package/skills/proposal-pack/package.json +10 -0
  317. package/skills/read-pdf/SKILL.md +5 -4
  318. package/skills/repo-onboarding-report/SKILL.md +42 -0
  319. package/skills/repo-onboarding-report/package.json +10 -0
  320. package/skills/sales-call-recapper/src/index.ts +20 -0
  321. package/skills/salescopy/package.json +1 -1
  322. package/skills/salescopy/src/index.ts +3 -0
  323. package/skills/scaffold-project/src/ai-detect.ts +136 -0
  324. package/skills/scaffold-project/src/file-generators.ts +292 -0
  325. package/skills/scaffold-project/src/index.ts +8 -991
  326. package/skills/scaffold-project/src/project-config.ts +338 -0
  327. package/skills/scaffold-project/src/templates.ts +173 -0
  328. package/skills/scaffold-project/src/types.ts +58 -0
  329. package/skills/scientific-figure-check/package.json +3 -1
  330. package/skills/sdk-generator/SKILL.md +45 -0
  331. package/skills/sdk-generator/package.json +10 -0
  332. package/skills/sdk-generator/tsconfig.json +8 -0
  333. package/skills/security-audit/src/index.ts +25 -6
  334. package/skills/security-audit-report/SKILL.md +40 -0
  335. package/skills/security-audit-report/package.json +10 -0
  336. package/skills/seo-content-pack/SKILL.md +44 -0
  337. package/skills/seo-content-pack/package.json +9 -0
  338. package/skills/short-video-pack/SKILL.md +30 -0
  339. package/skills/short-video-pack/package.json +10 -0
  340. package/skills/slack-assistant/package.json +3 -1
  341. package/skills/slide-deck-generator/SKILL.md +44 -0
  342. package/skills/slide-deck-generator/package.json +10 -0
  343. package/skills/sms/package.json +1 -1
  344. package/skills/sms/src/index.ts +15 -0
  345. package/skills/social-content-calendar/SKILL.md +45 -0
  346. package/skills/social-content-calendar/package.json +14 -0
  347. package/skills/split-pdf/package.json +4 -1
  348. package/skills/subtitle/package.json +2 -1
  349. package/skills/subtitle/src/index.ts +3 -0
  350. package/skills/terraform-generator/package.json +3 -1
  351. package/skills/test-suite-generator/SKILL.md +41 -0
  352. package/skills/test-suite-generator/package.json +10 -0
  353. package/skills/timesheet/package.json +1 -1
  354. package/skills/timesheet/src/index.ts +3 -0
  355. package/skills/transcript/SKILL.md +1 -8
  356. package/skills/validate-config/package.json +3 -1
  357. package/skills/video/package.json +6 -4
  358. package/skills/video-downloader/package.json +3 -1
  359. package/skills/video-highlight-pack/SKILL.md +44 -0
  360. package/skills/video-highlight-pack/package.json +10 -0
  361. package/skills/voiceover-jingle-pack/SKILL.md +28 -0
  362. package/skills/voiceover-jingle-pack/package.json +10 -0
  363. package/skills/watermark/package.json +6 -1
  364. package/skills/webcrawling/package.json +2 -1
  365. package/skills/write/SKILL.md +6 -6
  366. package/dist/server/serve.d.ts +0 -11
  367. package/skills/apidocs/.claude/settings.json +0 -5
  368. package/skills/audio/.env.example +0 -14
  369. package/skills/audio/QUICKSTART.md +0 -158
  370. package/skills/audio/README.md +0 -256
  371. package/skills/audio/src/index-local.ts +0 -206
  372. package/skills/audio/src/index.ts +0 -95
  373. package/skills/audio/src/providers/elevenlabs.ts +0 -115
  374. package/skills/audio/src/providers/google.ts +0 -116
  375. package/skills/audio/src/providers/minimax.ts +0 -83
  376. package/skills/audio/src/providers/openai.ts +0 -115
  377. package/skills/audio/src/types.ts +0 -79
  378. package/skills/audiobook-chapter-proofer/CLAUDE.md +0 -19
  379. package/skills/audiobook-chapter-proofer/package.json +0 -27
  380. package/skills/audiobook-chapter-proofer/src/index.ts +0 -285
  381. package/skills/browse/src/client.ts +0 -373
  382. package/skills/browse/src/index-local.ts +0 -430
  383. package/skills/browse/src/index.ts +0 -110
  384. package/skills/browse/src/sse-server.ts +0 -919
  385. package/skills/browse/src/types.ts +0 -104
  386. package/skills/consolelog/src/server/index.ts +0 -508
  387. package/skills/create-blog-article/CLAUDE.md +0 -19
  388. package/skills/create-blog-article/src/index.ts +0 -745
  389. package/skills/create-blog-article/tsconfig.json +0 -10
  390. package/skills/deepresearch/src/agents/query-generator.ts +0 -91
  391. package/skills/deepresearch/src/agents/synthesizer.ts +0 -111
  392. package/skills/deepresearch/src/index.ts +0 -224
  393. package/skills/deepresearch/src/research.ts +0 -166
  394. package/skills/deepresearch/src/services/anthropic.ts +0 -69
  395. package/skills/deepresearch/src/services/exa.ts +0 -108
  396. package/skills/deepresearch/src/services/firecrawl.ts +0 -88
  397. package/skills/deepresearch/src/services/openai.ts +0 -81
  398. package/skills/deepresearch/src/types.ts +0 -76
  399. package/skills/deepresearch/src/utils/file.ts +0 -111
  400. package/skills/deepresearch/src/utils/logger.ts +0 -84
  401. package/skills/domainpurchase/src/server/index.ts +0 -332
  402. package/skills/domainsearch/src/server/index.ts +0 -229
  403. package/skills/e2bswarm/README.md +0 -135
  404. package/skills/e2bswarm/SKILL.md +0 -118
  405. package/skills/e2bswarm/examples/tasks-example.json +0 -38
  406. package/skills/e2bswarm/package.json +0 -59
  407. package/skills/e2bswarm/src/commands/collect.ts +0 -135
  408. package/skills/e2bswarm/src/commands/install.ts +0 -164
  409. package/skills/e2bswarm/src/commands/kill.ts +0 -62
  410. package/skills/e2bswarm/src/commands/spawn.ts +0 -134
  411. package/skills/e2bswarm/src/commands/status.ts +0 -90
  412. package/skills/e2bswarm/src/commands/sync.ts +0 -208
  413. package/skills/e2bswarm/src/index.ts +0 -121
  414. package/skills/e2bswarm/src/lib/config.ts +0 -75
  415. package/skills/e2bswarm/src/lib/e2b.ts +0 -490
  416. package/skills/e2bswarm/src/lib/github.ts +0 -253
  417. package/skills/e2bswarm/src/lib/logger.ts +0 -41
  418. package/skills/e2bswarm/src/lib/paths.ts +0 -75
  419. package/skills/e2bswarm/src/lib/tasks.ts +0 -320
  420. package/skills/e2bswarm/src/types/index.ts +0 -107
  421. package/skills/e2bswarm/templates/codebox/e2b.Dockerfile +0 -38
  422. package/skills/e2bswarm/templates/codebox/e2b.toml +0 -3
  423. package/skills/e2bswarm/templates/setup.sh +0 -21
  424. package/skills/e2bswarm/tsconfig.json +0 -19
  425. package/skills/generate-book-cover/src/index.ts +0 -694
  426. package/skills/image/src/index-local.ts +0 -206
  427. package/skills/image/src/index.ts +0 -96
  428. package/skills/image/src/providers/google.ts +0 -79
  429. package/skills/image/src/providers/minimax.ts +0 -94
  430. package/skills/image/src/providers/openai.ts +0 -80
  431. package/skills/image/src/providers/xai.ts +0 -73
  432. package/skills/image/src/types.ts +0 -37
  433. package/skills/logo-design/CLAUDE.md +0 -30
  434. package/skills/logo-design/src/index.ts +0 -322
  435. package/skills/managehook/src/server/index.ts +0 -108
  436. package/skills/managemcp/src/server/index.ts +0 -108
  437. package/skills/manageskill/src/server/index.ts +0 -108
  438. package/skills/music/CLAUDE.md +0 -9
  439. package/skills/music/src/index.ts +0 -94
  440. package/skills/music/tsconfig.json +0 -10
  441. package/skills/pdf-read/src/index.ts +0 -320
  442. package/skills/product-mockup/CLAUDE.md +0 -19
  443. package/skills/product-mockup/src/index.ts +0 -290
  444. package/skills/read-pdf/src/index.ts +0 -388
  445. package/skills/remove-background/src/index.ts +0 -405
  446. package/skills/scaffold-project/my-app/.env.example +0 -2
  447. package/skills/scaffold-project/my-app/README.md +0 -72
  448. package/skills/scaffold-project/my-app/package.json +0 -29
  449. package/skills/scaffold-project/my-app/src/index.ts +0 -23
  450. package/skills/scaffold-project/my-app/tsconfig.json +0 -33
  451. package/skills/sound-effects/SKILL.md +0 -34
  452. package/skills/sound-effects/package.json +0 -21
  453. package/skills/sound-effects/src/index.ts +0 -172
  454. package/skills/sound-effects/tsconfig.json +0 -8
  455. package/skills/transcript/src/chunker.ts +0 -215
  456. package/skills/transcript/src/formatter.ts +0 -134
  457. package/skills/transcript/src/index-local.ts +0 -226
  458. package/skills/transcript/src/index.ts +0 -110
  459. package/skills/transcript/src/providers/elevenlabs.ts +0 -133
  460. package/skills/transcript/src/providers/gemini.ts +0 -192
  461. package/skills/transcript/src/providers/index.ts +0 -54
  462. package/skills/transcript/src/providers/openai.ts +0 -203
  463. package/skills/transcript/src/types.ts +0 -106
  464. package/skills/video/.env.example +0 -14
  465. package/skills/video/EXAMPLES.md +0 -266
  466. package/skills/video/LICENSE +0 -192
  467. package/skills/video/README.md +0 -174
  468. package/skills/video/src/cli.ts +0 -155
  469. package/skills/video/src/index-local.ts +0 -148
  470. package/skills/video/src/index.ts +0 -96
  471. package/skills/video/src/providers/google-veo.ts +0 -126
  472. package/skills/video/src/providers/index.ts +0 -22
  473. package/skills/video/src/providers/minimax.ts +0 -100
  474. package/skills/video/src/providers/openai-sora.ts +0 -164
  475. package/skills/video/src/providers/runway.ts +0 -159
  476. package/skills/video/src/types.ts +0 -35
  477. package/skills/video/tsconfig.json +0 -22
  478. package/skills/voiceover-casting-assistant/CLAUDE.md +0 -19
  479. package/skills/voiceover-casting-assistant/package.json +0 -27
  480. package/skills/voiceover-casting-assistant/src/index.ts +0 -255
  481. package/skills/voiceover-casting-assistant/tsconfig.json +0 -10
  482. package/skills/webcrawling/src/commands/config.ts +0 -34
  483. package/skills/webcrawling/src/commands/crawl.ts +0 -33
  484. package/skills/webcrawling/src/commands/scrape.ts +0 -32
  485. package/skills/webcrawling/src/commands/sessions.ts +0 -42
  486. package/skills/webcrawling/src/lib/crawler.ts +0 -174
  487. package/skills/webcrawling/src/lib/storage.ts +0 -130
  488. package/skills/webcrawling/src/types/index.ts +0 -45
  489. package/skills/webcrawling/src/utils/logger.ts +0 -30
  490. package/skills/webcrawling/src/utils/paths.ts +0 -28
  491. /package/skills/{audiobook-chapter-proofer → blog-article}/tsconfig.json +0 -0
@@ -0,0 +1,15 @@
1
+ declare module "minimist" {
2
+ export interface ParsedArgs {
3
+ _: string[];
4
+ [key: string]: any;
5
+ }
6
+
7
+ export interface Options {
8
+ string?: string[];
9
+ boolean?: string[];
10
+ default?: Record<string, unknown>;
11
+ alias?: Record<string, string | string[]>;
12
+ }
13
+
14
+ export default function minimist(args?: string[], opts?: Options): ParsedArgs;
15
+ }
@@ -0,0 +1,12 @@
1
+ export function toPascalCase(name: string): string {
2
+ return name
3
+ .split(/[-_]/)
4
+ .map((w) => w.charAt(0).toUpperCase() + w.slice(1))
5
+ .join("");
6
+ }
7
+
8
+ export function toSnakeCase(name: string): string {
9
+ return name.replace(/-/g, "_");
10
+ }
11
+
12
+ // Generate TypeScript project
@@ -0,0 +1,170 @@
1
+ import * as fs from "fs";
2
+ import minimist from "minimist";
3
+
4
+ import { TEMPLATES } from "./templates";
5
+ import type { BuildOptions, PromptDef, ResourceDef, ToolDef } from "./types";
6
+
7
+ export function parseBuildOptions(argv = process.argv.slice(2)): BuildOptions {
8
+ const args = minimist(argv, {
9
+ string: ["language", "template", "tools", "tool-file", "resources", "resource-file", "prompts", "prompt-file", "output"],
10
+ boolean: ["overwrite", "ai-descriptions", "with-tests", "with-docker", "help"],
11
+ default: {
12
+ language: "typescript",
13
+ },
14
+ alias: {
15
+ o: "output",
16
+ h: "help",
17
+ },
18
+ });
19
+
20
+ // Show help
21
+ if (args.help || args._.length === 0) {
22
+ console.log(`
23
+ MCP Builder - Generate MCP server projects
24
+
25
+ Usage:
26
+ skills run mcp-builder -- <name> [options]
27
+
28
+ Basic Options:
29
+ <name> Server name (required)
30
+ --language <lang> Language: typescript, python (default: typescript)
31
+ --template <name> Template: weather, database, api, filesystem
32
+
33
+ Tool Options:
34
+ --tools <list> Comma-separated tool names
35
+ --tool-file <path> JSON file with tool definitions
36
+
37
+ Resource Options:
38
+ --resources <list> Comma-separated resource URIs
39
+ --resource-file <path> JSON file with resource definitions
40
+
41
+ Prompt Options:
42
+ --prompts <list> Comma-separated prompt names
43
+ --prompt-file <path> JSON file with prompt definitions
44
+
45
+ Output Options:
46
+ -o, --output <path> Output directory (default: ./<name>)
47
+ --overwrite Overwrite existing files
48
+
49
+ Generation Options:
50
+ --ai-descriptions Generate descriptions with AI
51
+ --with-tests Include test files
52
+ --with-docker Include Dockerfile
53
+ -h, --help Show this help message
54
+
55
+ Examples:
56
+ skills run mcp-builder -- my-server --tools "search,fetch,analyze"
57
+ skills run mcp-builder -- weather-mcp --template weather
58
+ skills run mcp-builder -- api-server --tool-file tools.json --language python
59
+ `);
60
+ process.exit(0);
61
+ }
62
+
63
+ // Get server name
64
+ const serverName = args._[0] as string;
65
+ if (!serverName) {
66
+ console.error("Error: Server name is required");
67
+ process.exit(1);
68
+ }
69
+
70
+ // Validate name
71
+ if (!/^[a-z][a-z0-9-]*$/.test(serverName)) {
72
+ console.error("Error: Server name must start with a letter and contain only lowercase letters, numbers, and hyphens");
73
+ process.exit(1);
74
+ }
75
+
76
+ // Parse tool names into definitions
77
+ function parseToolNames(names: string): ToolDef[] {
78
+ return names.split(",").map((name) => ({
79
+ name: name.trim().replace(/\s+/g, "_"),
80
+ description: `TODO: Add description for ${name.trim()}`,
81
+ parameters: {},
82
+ }));
83
+ }
84
+
85
+ // Parse resource URIs into definitions
86
+ function parseResourceURIs(uris: string): ResourceDef[] {
87
+ return uris.split(",").map((uri) => ({
88
+ uri: uri.trim(),
89
+ name: uri.trim().split("://")[1] || uri.trim(),
90
+ description: `TODO: Add description`,
91
+ mimeType: "application/json",
92
+ }));
93
+ }
94
+
95
+ // Parse prompt names into definitions
96
+ function parsePromptNames(names: string): PromptDef[] {
97
+ return names.split(",").map((name) => ({
98
+ name: name.trim().replace(/\s+/g, "_"),
99
+ description: `TODO: Add description for ${name.trim()}`,
100
+ arguments: [],
101
+ }));
102
+ }
103
+
104
+ // Load definitions from file
105
+ function loadFromFile<T>(filePath: string): T[] {
106
+ if (!fs.existsSync(filePath)) {
107
+ console.error(`Error: File not found: ${filePath}`);
108
+ process.exit(1);
109
+ }
110
+ const content = fs.readFileSync(filePath, "utf-8");
111
+ const data = JSON.parse(content);
112
+ return Array.isArray(data) ? data : data.tools || data.resources || data.prompts || [];
113
+ }
114
+
115
+ // Build options
116
+ const options: BuildOptions = {
117
+ name: serverName,
118
+ language: args.language as BuildOptions["language"],
119
+ template: args.template || null,
120
+ tools: [],
121
+ resources: [],
122
+ prompts: [],
123
+ output: args.output || `./${serverName}`,
124
+ overwrite: args.overwrite,
125
+ aiDescriptions: args["ai-descriptions"],
126
+ withTests: args["with-tests"],
127
+ withDocker: args["with-docker"],
128
+ };
129
+
130
+ // Load template if specified
131
+ if (options.template) {
132
+ const template = TEMPLATES[options.template];
133
+ if (!template) {
134
+ console.error(`Error: Unknown template: ${options.template}`);
135
+ console.error(`Available templates: ${Object.keys(TEMPLATES).join(", ")}`);
136
+ process.exit(1);
137
+ }
138
+ options.tools = [...template.tools];
139
+ options.resources = [...template.resources];
140
+ options.prompts = [...template.prompts];
141
+ }
142
+
143
+ // Add tools from arguments
144
+ if (args.tools) {
145
+ options.tools.push(...parseToolNames(args.tools));
146
+ }
147
+ if (args["tool-file"]) {
148
+ options.tools.push(...loadFromFile<ToolDef>(args["tool-file"]));
149
+ }
150
+
151
+ // Add resources from arguments
152
+ if (args.resources) {
153
+ options.resources.push(...parseResourceURIs(args.resources));
154
+ }
155
+ if (args["resource-file"]) {
156
+ options.resources.push(...loadFromFile<ResourceDef>(args["resource-file"]));
157
+ }
158
+
159
+ // Add prompts from arguments
160
+ if (args.prompts) {
161
+ options.prompts.push(...parsePromptNames(args.prompts));
162
+ }
163
+ if (args["prompt-file"]) {
164
+ options.prompts.push(...loadFromFile<PromptDef>(args["prompt-file"]));
165
+ }
166
+
167
+ // Generate AI descriptions
168
+
169
+ return options;
170
+ }
@@ -0,0 +1,149 @@
1
+ import type { PromptDef, ResourceDef, ToolDef } from "./types";
2
+
3
+ export const TEMPLATES: Record<string, { tools: ToolDef[]; resources: ResourceDef[]; prompts: PromptDef[] }> = {
4
+ weather: {
5
+ tools: [
6
+ {
7
+ name: "get_current_weather",
8
+ description: "Get current weather conditions for a location",
9
+ parameters: {
10
+ location: { type: "string", description: "City name or coordinates", required: true },
11
+ units: { type: "string", description: "Temperature units: celsius or fahrenheit", default: "celsius" },
12
+ },
13
+ },
14
+ {
15
+ name: "get_forecast",
16
+ description: "Get weather forecast for the next few days",
17
+ parameters: {
18
+ location: { type: "string", description: "City name or coordinates", required: true },
19
+ days: { type: "number", description: "Number of days to forecast", default: 5 },
20
+ },
21
+ },
22
+ ],
23
+ resources: [{ uri: "weather://locations", name: "Saved Locations", description: "List of saved weather locations", mimeType: "application/json" }],
24
+ prompts: [{ name: "weather_summary", description: "Generate a weather summary", arguments: [{ name: "location", description: "Location to summarize", required: true }] }],
25
+ },
26
+ database: {
27
+ tools: [
28
+ {
29
+ name: "query",
30
+ description: "Execute a SQL query and return results",
31
+ parameters: {
32
+ sql: { type: "string", description: "SQL query to execute", required: true },
33
+ params: { type: "array", description: "Query parameters", items: { type: "string" } },
34
+ },
35
+ },
36
+ {
37
+ name: "insert",
38
+ description: "Insert a record into a table",
39
+ parameters: {
40
+ table: { type: "string", description: "Table name", required: true },
41
+ data: { type: "object", description: "Data to insert", required: true },
42
+ },
43
+ },
44
+ {
45
+ name: "update",
46
+ description: "Update records in a table",
47
+ parameters: {
48
+ table: { type: "string", description: "Table name", required: true },
49
+ data: { type: "object", description: "Data to update", required: true },
50
+ where: { type: "string", description: "WHERE clause", required: true },
51
+ },
52
+ },
53
+ {
54
+ name: "delete",
55
+ description: "Delete records from a table",
56
+ parameters: {
57
+ table: { type: "string", description: "Table name", required: true },
58
+ where: { type: "string", description: "WHERE clause", required: true },
59
+ },
60
+ },
61
+ ],
62
+ resources: [
63
+ { uri: "db://schema", name: "Database Schema", description: "Database schema information", mimeType: "application/json" },
64
+ { uri: "db://tables", name: "Tables List", description: "List of all tables", mimeType: "application/json" },
65
+ ],
66
+ prompts: [],
67
+ },
68
+ api: {
69
+ tools: [
70
+ {
71
+ name: "get",
72
+ description: "Make a GET request to an API endpoint",
73
+ parameters: {
74
+ url: { type: "string", description: "API endpoint URL", required: true },
75
+ headers: { type: "object", description: "Request headers" },
76
+ },
77
+ },
78
+ {
79
+ name: "post",
80
+ description: "Make a POST request to an API endpoint",
81
+ parameters: {
82
+ url: { type: "string", description: "API endpoint URL", required: true },
83
+ body: { type: "object", description: "Request body", required: true },
84
+ headers: { type: "object", description: "Request headers" },
85
+ },
86
+ },
87
+ {
88
+ name: "put",
89
+ description: "Make a PUT request to an API endpoint",
90
+ parameters: {
91
+ url: { type: "string", description: "API endpoint URL", required: true },
92
+ body: { type: "object", description: "Request body", required: true },
93
+ headers: { type: "object", description: "Request headers" },
94
+ },
95
+ },
96
+ {
97
+ name: "delete",
98
+ description: "Make a DELETE request to an API endpoint",
99
+ parameters: {
100
+ url: { type: "string", description: "API endpoint URL", required: true },
101
+ headers: { type: "object", description: "Request headers" },
102
+ },
103
+ },
104
+ ],
105
+ resources: [],
106
+ prompts: [],
107
+ },
108
+ filesystem: {
109
+ tools: [
110
+ {
111
+ name: "read_file",
112
+ description: "Read contents of a file",
113
+ parameters: {
114
+ path: { type: "string", description: "File path", required: true },
115
+ encoding: { type: "string", description: "File encoding", default: "utf-8" },
116
+ },
117
+ },
118
+ {
119
+ name: "write_file",
120
+ description: "Write contents to a file",
121
+ parameters: {
122
+ path: { type: "string", description: "File path", required: true },
123
+ content: { type: "string", description: "Content to write", required: true },
124
+ encoding: { type: "string", description: "File encoding", default: "utf-8" },
125
+ },
126
+ },
127
+ {
128
+ name: "list_directory",
129
+ description: "List contents of a directory",
130
+ parameters: {
131
+ path: { type: "string", description: "Directory path", required: true },
132
+ recursive: { type: "boolean", description: "List recursively", default: false },
133
+ },
134
+ },
135
+ {
136
+ name: "search_files",
137
+ description: "Search for files matching a pattern",
138
+ parameters: {
139
+ pattern: { type: "string", description: "Search pattern (glob)", required: true },
140
+ path: { type: "string", description: "Starting directory", default: "." },
141
+ },
142
+ },
143
+ ],
144
+ resources: [{ uri: "file://{path}", name: "File Content", description: "Content of a file", mimeType: "text/plain" }],
145
+ prompts: [],
146
+ },
147
+ };
148
+
149
+ // Parse arguments
@@ -0,0 +1,42 @@
1
+ export interface ToolDef {
2
+ name: string;
3
+ description: string;
4
+ parameters: Record<string, ParameterDef>;
5
+ }
6
+
7
+ export interface ParameterDef {
8
+ type: "string" | "number" | "boolean" | "array" | "object";
9
+ description: string;
10
+ required?: boolean;
11
+ default?: any;
12
+ items?: { type: string };
13
+ }
14
+
15
+ export interface ResourceDef {
16
+ uri: string;
17
+ name: string;
18
+ description: string;
19
+ mimeType?: string;
20
+ }
21
+
22
+ export interface PromptDef {
23
+ name: string;
24
+ description: string;
25
+ arguments?: { name: string; description: string; required?: boolean }[];
26
+ }
27
+
28
+ export interface BuildOptions {
29
+ name: string;
30
+ language: "typescript" | "python";
31
+ template: string | null;
32
+ tools: ToolDef[];
33
+ resources: ResourceDef[];
34
+ prompts: PromptDef[];
35
+ output: string;
36
+ overwrite: boolean;
37
+ aiDescriptions: boolean;
38
+ withTests: boolean;
39
+ withDocker: boolean;
40
+ }
41
+
42
+ // Templates
@@ -0,0 +1,43 @@
1
+ ---
2
+ name: meeting-pack
3
+ description: Generate premium meeting artifact packs from transcripts or notes with summaries, decisions, action items, owner/deadline tables, follow-up email, project export, timeline, and manifest metadata.
4
+ ---
5
+
6
+ # Meeting Pack
7
+
8
+ Generate a complete meeting artifact package from transcripts, notes, call summaries, or rough bullets.
9
+
10
+ ## Requirements
11
+
12
+ - Authenticate with `skills auth login`.
13
+ - This premium skill runs through the hosted Skills runtime; local installs expose only metadata and instructions.
14
+
15
+ ## Usage
16
+
17
+ ```bash
18
+ skills run meeting-pack --notes "Discussed billing launch, docs, and support owner follow-ups" --meeting "Billing Launch Sync"
19
+ skills run meeting-pack ./transcript.txt --participants "Hasna,Alex,Sam" --format executive
20
+ ```
21
+
22
+ ## Options
23
+
24
+ | Option | Description | Default |
25
+ |--------|-------------|---------|
26
+ | `--notes <text>` | Meeting transcript, rough notes, or summary. Positional text also works. | required unless `--source` is used |
27
+ | `--source <path>` | Read notes or transcript from a file. | none |
28
+ | `--meeting <text>` | Meeting title. | Meeting |
29
+ | `--participants <list>` | Comma-separated participant names. | Team |
30
+ | `--format <type>` | `project`, `executive`, `sales`, or `standup`. | project |
31
+ | `--output <dir>` | Output directory for direct local execution. Hosted runs use the run export directory. | run export dir |
32
+
33
+ ## Outputs
34
+
35
+ - `meeting-summary.md`
36
+ - `decisions.md`
37
+ - `action-items.csv`
38
+ - `follow-up-email.md`
39
+ - `project-export.json`
40
+ - `timeline.md`
41
+ - `manifest.json`
42
+
43
+ After submitting a hosted run, poll with `skills runs status <run-id>` and download outputs with `skills exports download <run-id>`.
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "meeting-pack",
3
+ "version": "0.1.0",
4
+ "private": true,
5
+ "description": "Hosted premium meeting artifact package generator",
6
+ "type": "module",
7
+ "bin": {
8
+ "meeting-pack": "./src/index.ts"
9
+ }
10
+ }
@@ -11,7 +11,11 @@
11
11
  "build": "bun build src/index.ts --outdir dist --target node",
12
12
  "typecheck": "tsc --noEmit"
13
13
  },
14
- "dependencies": {},
14
+ "dependencies": {
15
+ "pdf-lib": "^1.17.1",
16
+ "minimist": "^1.2.8",
17
+ "glob": "^11.1.0"
18
+ },
15
19
  "devDependencies": {
16
20
  "@types/bun": "latest",
17
21
  "typescript": "^5.7.0"
@@ -0,0 +1,45 @@
1
+ ---
2
+ name: migration-plan-pack
3
+ description: Generate premium migration planning packs for framework, library, database, infrastructure, or architecture upgrades with risk matrix, checklist, rollout plan, and test strategy.
4
+ ---
5
+
6
+ # Migration Plan Pack
7
+
8
+ Generate a migration package from current state, target state, system context, and operating constraints. Hosted runs can inspect richer project inputs, while local direct execution produces deterministic artifacts for validation.
9
+
10
+ ## Requirements
11
+
12
+ - Authenticate with `skills auth login`.
13
+ - This premium skill runs through the hosted Skills runtime; local installs expose only metadata and instructions.
14
+
15
+ ## Usage
16
+
17
+ ```bash
18
+ skills run migration-plan-pack --system "Acme SaaS" --from "Next.js 14, Postgres 14" --to "Next.js 16, Postgres 16"
19
+ skills run migration-plan-pack --from "single-region worker" --to "multi-region worker" --constraints "no downtime, preserve RLS"
20
+ ```
21
+
22
+ ## Options
23
+
24
+ | Option | Description | Default |
25
+ |--------|-------------|---------|
26
+ | `--system <text>` | Product, repo, app, or service being migrated. | Migration Target |
27
+ | `--from <text>` | Current framework, library, database, infrastructure, or architecture state. | current state |
28
+ | `--to <text>` | Desired target state. | target state |
29
+ | `--scope <list>` | Comma-separated systems or workstreams in scope. | app, data, deploy, tests |
30
+ | `--constraints <text>` | Risk, downtime, compliance, billing, or operational constraints. | optional |
31
+ | `--deadline <text>` | Date, release train, or migration window. | optional |
32
+ | `--strategy <type>` | `phased`, `big-bang`, or `parallel-run`. | phased |
33
+ | `--output <dir>` | Output directory for direct local execution. Hosted runs use the run export directory. | run export dir |
34
+
35
+ ## Outputs
36
+
37
+ - `migration-plan.md`
38
+ - `risk-matrix.csv`
39
+ - `ordered-checklist.md`
40
+ - `test-strategy.md`
41
+ - `dependency-map.json`
42
+ - `rollout-plan.md`
43
+ - `manifest.json`
44
+
45
+ After submitting a hosted run, poll with `skills runs status <run-id>` and download outputs with `skills exports download <run-id>`.
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "migration-plan-pack",
3
+ "version": "0.1.0",
4
+ "private": true,
5
+ "description": "Hosted premium migration planning pack generator",
6
+ "type": "module",
7
+ "bin": {
8
+ "migration-plan-pack": "./src/index.ts"
9
+ }
10
+ }
@@ -2,6 +2,7 @@
2
2
  "name": "music",
3
3
  "version": "1.0.0",
4
4
  "description": "Generate music using provider-cost AI backends",
5
+ "main": "src/index.ts",
5
6
  "type": "module",
6
7
  "bin": {
7
8
  "music": "src/index.ts"
@@ -17,10 +18,8 @@
17
18
  "gemini",
18
19
  "lyria"
19
20
  ],
20
- "dependencies": {},
21
21
  "devDependencies": {
22
- "@types/bun": "latest",
23
- "typescript": "^5.0.0"
22
+ "@types/bun": "latest"
24
23
  },
25
24
  "peerDependencies": {
26
25
  "typescript": "^5.0.0"
@@ -0,0 +1,37 @@
1
+ ---
2
+ name: music-album
3
+ description: Generate hosted music album packages with 7, 14, or 21 songs
4
+ ---
5
+
6
+ # Music Album
7
+
8
+ Create a hosted premium album package from a concept, genre, mood, or campaign brief. The hosted runtime generates a cohesive album plan, 7, 14, or 21 songs, cover art direction, track metadata, manifests, receipts, and downloadable artifacts.
9
+
10
+ ## Usage
11
+
12
+ ```bash
13
+ skills run music-album "ambient synth album for deep work" --songs 7
14
+ skills run music-album "high-energy product launch soundtrack" --songs 14 --genre "electro pop"
15
+ skills run music-album "cinematic fantasy travel album" --songs 21 --lyrics-mode instrumental
16
+ ```
17
+
18
+ ## Options
19
+
20
+ - `--songs <7|14|21>`: Album size.
21
+ - `--genre <text>`: Genre or style lane.
22
+ - `--lyrics-mode <instrumental|vocal|mixed>`: Lyric direction.
23
+ - `--cover-style <text>`: Cover art direction.
24
+ - `--reference <path-or-url>`: Optional brand, mood, or story reference.
25
+
26
+ ## Output
27
+
28
+ - `album/track-*.mp3` or provider-native audio files
29
+ - `album/cover.png`
30
+ - `album/tracklist.json`
31
+ - `album/manifest.json`
32
+ - `album/receipt.json`
33
+
34
+ ## Requirements
35
+
36
+ Hosted premium execution requires `SKILLS_API_KEY` or `skills auth login`.
37
+ Provider keys stay server-side.
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "music-album",
3
+ "version": "0.1.0",
4
+ "private": true,
5
+ "description": "Hosted premium music album package generator",
6
+ "type": "module",
7
+ "bin": {
8
+ "music-album": "./src/index.ts"
9
+ }
10
+ }
@@ -11,7 +11,9 @@
11
11
  "build": "bun build src/index.ts --outdir dist --target node",
12
12
  "typecheck": "tsc --noEmit"
13
13
  },
14
- "dependencies": {},
14
+ "dependencies": {
15
+ "@notionhq/client": "^5.4.0"
16
+ },
15
17
  "devDependencies": {
16
18
  "@types/bun": "latest",
17
19
  "typescript": "^5.7.0"
@@ -18,16 +18,13 @@ bun run src/index.ts
18
18
  ## Project Structure
19
19
 
20
20
  - `src/index.ts` - CLI entry point
21
- - `SKILL.md` - Claude Code / Codex skill definition
21
+ - `SKILL.md` - bundled skill instructions served through Skills CLI/MCP
22
22
 
23
- ## Skill Installation
23
+ ## Agent Integration
24
24
 
25
- For Claude Code:
26
- ```bash
27
- ln -s $(pwd) ~/.claude/skills/npmpublish
28
- ```
25
+ Do not copy or symlink this skill into agent-native skill folders. Register the
26
+ root Skills MCP server instead:
29
27
 
30
- For Codex:
31
28
  ```bash
32
- ln -s $(pwd) ~/.codex/skills/npmpublish
29
+ skills mcp --register all
33
30
  ```
@@ -4,7 +4,7 @@ Publish npm packages with sensible defaults:
4
4
  - **Private by default** - Sets `publishConfig.access: restricted`
5
5
  - **Patch bump by default** - Increments version by 0.0.1 (not 0.1.0)
6
6
 
7
- Works as both a **Claude Code** skill and **OpenAI Codex** skill.
7
+ Use it directly as a CLI, or expose it to agents through the root Skills MCP server.
8
8
 
9
9
  ## Installation
10
10
 
@@ -16,36 +16,15 @@ bun add -g @hasnaxyz/npmpublish
16
16
  bunx @hasnaxyz/npmpublish
17
17
  ```
18
18
 
19
- ### Claude Code Skill
19
+ ### Agent Integration
20
20
 
21
- Link to Claude Code skills directory:
22
- ```bash
23
- ln -s ~/Workspace/dev/hasnaxyz/skill/skilldev/npmpublish ~/.claude/skills/npmpublish
24
- ```
21
+ Do not symlink, copy, or install this skill into agent-native skill folders.
22
+ Register the shared Skills MCP server instead:
25
23
 
26
- Or copy the SKILL.md:
27
24
  ```bash
28
- mkdir -p ~/.claude/skills/npmpublish
29
- cp SKILL.md ~/.claude/skills/npmpublish/
25
+ skills mcp --register all
30
26
  ```
31
27
 
32
- Then invoke with `/npmpublish` in Claude Code.
33
-
34
- ### OpenAI Codex Skill
35
-
36
- Link to Codex skills directory:
37
- ```bash
38
- ln -s ~/Workspace/dev/hasnaxyz/skill/skilldev/npmpublish ~/.codex/skills/npmpublish
39
- ```
40
-
41
- Or for project-specific:
42
- ```bash
43
- mkdir -p .codex/skills/npmpublish
44
- cp SKILL.md .codex/skills/npmpublish/
45
- ```
46
-
47
- Then invoke with `/npmpublish` in Codex.
48
-
49
28
  ## Usage
50
29
 
51
30
  ```bash