@hasna/skills 0.1.27 → 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 (488) hide show
  1. package/LICENSE +1 -10
  2. package/README.md +141 -39
  3. package/bin/index.js +30121 -27576
  4. package/bin/mcp.js +22073 -18556
  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 +11606 -598
  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 +22 -11
  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/exports/products-2025-12-14T13-50-53-041Z.csv +16 -0
  108. package/skills/consolelog/exports/products-2025-12-14T13-50-53-041Z.json +227 -0
  109. package/skills/consolelog/package.json +1 -1
  110. package/skills/consolelog/src/index.ts +3 -0
  111. package/skills/contract-review-report/SKILL.md +43 -0
  112. package/skills/contract-review-report/package.json +10 -0
  113. package/skills/convert/SKILL.md +2 -3
  114. package/skills/customer-feedback-report/SKILL.md +44 -0
  115. package/skills/customer-feedback-report/package.json +10 -0
  116. package/skills/dashboard-builder/package.json +3 -1
  117. package/skills/database-explorer/package.json +3 -1
  118. package/skills/deepresearch/README.md +4 -13
  119. package/skills/deploy/src/http-client.ts +1 -1
  120. package/skills/diff-viewer/package.json +4 -1
  121. package/skills/doc-generate/package.json +0 -1
  122. package/skills/doc-generate/src/ai.ts +50 -0
  123. package/skills/doc-generate/src/cli.ts +203 -0
  124. package/skills/doc-generate/src/dependencies.ts +44 -0
  125. package/skills/doc-generate/src/document-builder.ts +299 -0
  126. package/skills/doc-generate/src/index.ts +40 -764
  127. package/skills/doc-generate/src/markdown-parser.ts +125 -0
  128. package/skills/doc-generate/src/types.ts +68 -0
  129. package/skills/domainpurchase/SKILL.md +1 -1
  130. package/skills/domainpurchase/package.json +1 -1
  131. package/skills/domainpurchase/src/index.ts +3 -0
  132. package/skills/domainsearch/SKILL.md +1 -1
  133. package/skills/domainsearch/package.json +1 -1
  134. package/skills/domainsearch/src/index.ts +3 -0
  135. package/skills/email-sequence/SKILL.md +44 -0
  136. package/skills/email-sequence/package.json +14 -0
  137. package/skills/excel/CLAUDE.md +2 -2
  138. package/skills/experiment-power-calculator/package.json +3 -1
  139. package/skills/extract-invoice/src/cli.ts +97 -0
  140. package/skills/extract-invoice/src/extractor.ts +170 -0
  141. package/skills/extract-invoice/src/file-utils.ts +46 -0
  142. package/skills/extract-invoice/src/formatters.ts +144 -0
  143. package/skills/extract-invoice/src/index.ts +44 -629
  144. package/skills/extract-invoice/src/runtime.ts +46 -0
  145. package/skills/extract-invoice/src/types.ts +88 -0
  146. package/skills/folder-tree/package.json +3 -1
  147. package/skills/form-filler/package.json +3 -1
  148. package/skills/generate-api-client/package.json +3 -1
  149. package/skills/generate-api-client/src/generator.ts +47 -0
  150. package/skills/generate-api-client/src/index.ts +3 -777
  151. package/skills/generate-api-client/src/logger.ts +34 -0
  152. package/skills/generate-api-client/src/python-generator.ts +245 -0
  153. package/skills/generate-api-client/src/spec-loader.ts +48 -0
  154. package/skills/generate-api-client/src/type-mappers.ts +79 -0
  155. package/skills/generate-api-client/src/types.ts +76 -0
  156. package/skills/generate-api-client/src/typescript-generator.ts +247 -0
  157. package/skills/generate-book-cover/package.json +3 -1
  158. package/skills/generate-dockerfile/src/cli.ts +78 -0
  159. package/skills/generate-dockerfile/src/dockerfile-templates.ts +392 -0
  160. package/skills/generate-dockerfile/src/index.ts +12 -790
  161. package/skills/generate-dockerfile/src/logger.ts +30 -0
  162. package/skills/generate-dockerfile/src/project-detection.ts +68 -0
  163. package/skills/generate-dockerfile/src/support-files.ts +171 -0
  164. package/skills/generate-dockerfile/src/types.ts +29 -0
  165. package/skills/generate-documentation/src/ai.ts +131 -0
  166. package/skills/generate-documentation/src/cli.ts +71 -0
  167. package/skills/generate-documentation/src/code-parser.ts +300 -0
  168. package/skills/generate-documentation/src/file-processing.ts +182 -0
  169. package/skills/generate-documentation/src/index.ts +13 -753
  170. package/skills/generate-documentation/src/runtime.ts +35 -0
  171. package/skills/generate-documentation/src/types.ts +30 -0
  172. package/skills/generate-env/package.json +3 -1
  173. package/skills/generate-env/src/cli.ts +85 -0
  174. package/skills/generate-env/src/detection.ts +161 -0
  175. package/skills/generate-env/src/env-data.ts +66 -0
  176. package/skills/generate-env/src/generators.ts +240 -0
  177. package/skills/generate-env/src/index.ts +76 -676
  178. package/skills/generate-env/src/runtime.ts +30 -0
  179. package/skills/generate-env/src/types.ts +32 -0
  180. package/skills/generate-favicon/package.json +3 -1
  181. package/skills/generate-mock-data/package.json +3 -1
  182. package/skills/generate-mock-data/src/ai.ts +102 -0
  183. package/skills/generate-mock-data/src/formatters.ts +84 -0
  184. package/skills/generate-mock-data/src/generator.ts +377 -0
  185. package/skills/generate-mock-data/src/index.ts +15 -716
  186. package/skills/generate-mock-data/src/logger.ts +37 -0
  187. package/skills/generate-mock-data/src/presets.ts +110 -0
  188. package/skills/generate-mock-data/src/types.ts +21 -0
  189. package/skills/generate-pr-description/src/ai.ts +144 -0
  190. package/skills/generate-pr-description/src/cli.ts +80 -0
  191. package/skills/generate-pr-description/src/clipboard.ts +30 -0
  192. package/skills/generate-pr-description/src/formatters.ts +231 -0
  193. package/skills/generate-pr-description/src/git.ts +153 -0
  194. package/skills/generate-pr-description/src/index.ts +21 -714
  195. package/skills/generate-pr-description/src/types.ts +49 -0
  196. package/skills/generate-presentation/src/ai-clients.ts +61 -0
  197. package/skills/generate-presentation/src/cli.ts +126 -0
  198. package/skills/generate-presentation/src/index.ts +3 -751
  199. package/skills/generate-presentation/src/logger.ts +67 -0
  200. package/skills/generate-presentation/src/presentation-generator.ts +425 -0
  201. package/skills/generate-presentation/src/runtime.ts +6 -0
  202. package/skills/generate-presentation/src/security.ts +12 -0
  203. package/skills/generate-presentation/src/types.ts +28 -0
  204. package/skills/generate-qrcode/package.json +4 -1
  205. package/skills/generate-regex/package.json +3 -1
  206. package/skills/generate-resume/src/cli.ts +157 -0
  207. package/skills/generate-resume/src/index.ts +13 -917
  208. package/skills/generate-resume/src/parsers.ts +95 -0
  209. package/skills/generate-resume/src/renderers.ts +538 -0
  210. package/skills/generate-resume/src/security.ts +39 -0
  211. package/skills/generate-resume/src/types.ts +86 -0
  212. package/skills/generate-social-posts/src/ai.ts +88 -0
  213. package/skills/generate-social-posts/src/cli.ts +118 -0
  214. package/skills/generate-social-posts/src/exporters.ts +126 -0
  215. package/skills/generate-social-posts/src/generator.ts +130 -0
  216. package/skills/generate-social-posts/src/index.ts +19 -709
  217. package/skills/generate-social-posts/src/platforms.ts +39 -0
  218. package/skills/generate-social-posts/src/runtime.ts +34 -0
  219. package/skills/generate-social-posts/src/source.ts +116 -0
  220. package/skills/generate-social-posts/src/types.ts +58 -0
  221. package/skills/gif-maker/package.json +4 -1
  222. package/skills/github-manager/package.json +3 -1
  223. package/skills/gmail/CLAUDE.md +1 -1
  224. package/skills/highlight-reel-generator/src/index.ts +19 -0
  225. package/skills/hook/src/commands/create.ts +20 -845
  226. package/skills/hook/src/templates/root.ts +196 -0
  227. package/skills/hook/src/templates/source.ts +647 -0
  228. package/skills/http-server/package.json +3 -1
  229. package/skills/icon-pack/README.md +28 -0
  230. package/skills/icon-pack/SKILL.md +23 -0
  231. package/skills/icon-pack/package.json +29 -0
  232. package/skills/{audio → icon-pack}/tsconfig.json +10 -12
  233. package/skills/image/package.json +1 -2
  234. package/skills/implementation-agent/package.json +3 -1
  235. package/skills/implementation-agent/src/ai-generation.ts +225 -0
  236. package/skills/implementation-agent/src/index.ts +3 -960
  237. package/skills/implementation-agent/src/minimist.d.ts +15 -0
  238. package/skills/implementation-agent/src/templates.ts +686 -0
  239. package/skills/implementation-agent/src/types.ts +53 -0
  240. package/skills/implementation-plan/package.json +3 -1
  241. package/skills/implementation-todo/package.json +3 -1
  242. package/skills/invoice/package.json +1 -1
  243. package/skills/invoice/src/index.ts +3 -0
  244. package/skills/invoice-reconciliation/SKILL.md +42 -0
  245. package/skills/invoice-reconciliation/package.json +10 -0
  246. package/skills/landing-page-pack/SKILL.md +47 -0
  247. package/skills/landing-page-pack/package.json +14 -0
  248. package/skills/latex-table-generator/package.json +3 -1
  249. package/skills/logo-design/SKILL.md +25 -44
  250. package/skills/logo-design/package.json +3 -15
  251. package/skills/lorem-generator/package.json +3 -1
  252. package/skills/lorem-generator/src/index.ts +13 -0
  253. package/skills/managehook/package.json +1 -1
  254. package/skills/managehook/src/index.ts +3 -0
  255. package/skills/managemcp/package.json +1 -1
  256. package/skills/managemcp/src/index.ts +3 -0
  257. package/skills/manageskill/package.json +1 -1
  258. package/skills/manageskill/src/index.ts +3 -0
  259. package/skills/markdown-validator/package.json +3 -1
  260. package/skills/markdown-validator/src/index.ts +1 -4
  261. package/skills/market-research-report/SKILL.md +41 -0
  262. package/skills/market-research-report/package.json +10 -0
  263. package/skills/mcp-builder/package.json +4 -1
  264. package/skills/mcp-builder/src/ai-descriptions.ts +37 -0
  265. package/skills/mcp-builder/src/generators.ts +513 -0
  266. package/skills/mcp-builder/src/index.ts +7 -908
  267. package/skills/mcp-builder/src/minimist.d.ts +15 -0
  268. package/skills/mcp-builder/src/naming.ts +12 -0
  269. package/skills/mcp-builder/src/options.ts +170 -0
  270. package/skills/mcp-builder/src/templates.ts +149 -0
  271. package/skills/mcp-builder/src/types.ts +42 -0
  272. package/skills/meeting-pack/SKILL.md +43 -0
  273. package/skills/meeting-pack/package.json +10 -0
  274. package/skills/merge-pdfs/package.json +5 -1
  275. package/skills/migration-plan-pack/SKILL.md +45 -0
  276. package/skills/migration-plan-pack/package.json +10 -0
  277. package/skills/music/package.json +2 -3
  278. package/skills/music-album/SKILL.md +37 -0
  279. package/skills/music-album/package.json +10 -0
  280. package/skills/notion-manager/package.json +3 -1
  281. package/skills/npmpublish/CLAUDE.md +5 -8
  282. package/skills/npmpublish/README.md +5 -26
  283. package/skills/npmpublish/src/index.ts +9 -147
  284. package/skills/one-page-website/SKILL.md +46 -0
  285. package/skills/one-page-website/package.json +10 -0
  286. package/skills/one-page-website/tsconfig.json +8 -0
  287. package/skills/pdf-generate/src/cli.ts +162 -0
  288. package/skills/pdf-generate/src/html.ts +84 -0
  289. package/skills/pdf-generate/src/index.ts +11 -800
  290. package/skills/pdf-generate/src/markdown.ts +27 -0
  291. package/skills/pdf-generate/src/pdf-writer.ts +78 -0
  292. package/skills/pdf-generate/src/runtime.ts +34 -0
  293. package/skills/pdf-generate/src/security.ts +37 -0
  294. package/skills/pdf-generate/src/templates.ts +311 -0
  295. package/skills/pdf-generate/src/types.ts +28 -0
  296. package/skills/pdf-read/SKILL.md +10 -10
  297. package/skills/pdf-to-dataset/SKILL.md +45 -0
  298. package/skills/pdf-to-dataset/package.json +10 -0
  299. package/skills/pdf-to-markdown/SKILL.md +49 -0
  300. package/skills/pdf-to-markdown/package.json +10 -0
  301. package/skills/pdf-to-markdown/tsconfig.json +10 -0
  302. package/skills/performance-audit-report/SKILL.md +42 -0
  303. package/skills/performance-audit-report/package.json +10 -0
  304. package/skills/persona-based-adwriter/src/index.ts +19 -0
  305. package/skills/photo-album/SKILL.md +29 -0
  306. package/skills/photo-album/package.json +9 -0
  307. package/skills/photo-album/tsconfig.json +4 -0
  308. package/skills/pitch-deck/SKILL.md +43 -0
  309. package/skills/pitch-deck/package.json +9 -0
  310. package/skills/playlist-maker/SKILL.md +33 -0
  311. package/skills/playlist-maker/package.json +9 -0
  312. package/skills/playlist-maker/tsconfig.json +4 -0
  313. package/skills/product-mockup/SKILL.md +45 -0
  314. package/skills/product-mockup/package.json +3 -20
  315. package/skills/product-mockup/tsconfig.json +3 -5
  316. package/skills/project-retro-companion/src/index.ts +19 -0
  317. package/skills/proposal-pack/SKILL.md +45 -0
  318. package/skills/proposal-pack/package.json +10 -0
  319. package/skills/read-pdf/SKILL.md +5 -4
  320. package/skills/repo-onboarding-report/SKILL.md +42 -0
  321. package/skills/repo-onboarding-report/package.json +10 -0
  322. package/skills/sales-call-recapper/src/index.ts +20 -0
  323. package/skills/salescopy/package.json +1 -1
  324. package/skills/salescopy/src/index.ts +3 -0
  325. package/skills/scaffold-project/src/ai-detect.ts +136 -0
  326. package/skills/scaffold-project/src/file-generators.ts +292 -0
  327. package/skills/scaffold-project/src/index.ts +8 -991
  328. package/skills/scaffold-project/src/project-config.ts +338 -0
  329. package/skills/scaffold-project/src/templates.ts +173 -0
  330. package/skills/scaffold-project/src/types.ts +58 -0
  331. package/skills/scientific-figure-check/package.json +3 -1
  332. package/skills/sdk-generator/SKILL.md +45 -0
  333. package/skills/sdk-generator/package.json +10 -0
  334. package/skills/sdk-generator/tsconfig.json +8 -0
  335. package/skills/security-audit/src/index.ts +25 -6
  336. package/skills/security-audit-report/SKILL.md +40 -0
  337. package/skills/security-audit-report/package.json +10 -0
  338. package/skills/seo-content-pack/SKILL.md +44 -0
  339. package/skills/seo-content-pack/package.json +9 -0
  340. package/skills/short-video-pack/SKILL.md +30 -0
  341. package/skills/short-video-pack/package.json +10 -0
  342. package/skills/slack-assistant/package.json +3 -1
  343. package/skills/slide-deck-generator/SKILL.md +44 -0
  344. package/skills/slide-deck-generator/package.json +10 -0
  345. package/skills/sms/package.json +1 -1
  346. package/skills/sms/src/index.ts +15 -0
  347. package/skills/social-content-calendar/SKILL.md +45 -0
  348. package/skills/social-content-calendar/package.json +14 -0
  349. package/skills/split-pdf/package.json +4 -1
  350. package/skills/subtitle/package.json +2 -1
  351. package/skills/subtitle/src/index.ts +3 -0
  352. package/skills/terraform-generator/package.json +3 -1
  353. package/skills/test-suite-generator/SKILL.md +41 -0
  354. package/skills/test-suite-generator/package.json +10 -0
  355. package/skills/timesheet/package.json +1 -1
  356. package/skills/timesheet/src/index.ts +3 -0
  357. package/skills/transcript/SKILL.md +1 -8
  358. package/skills/validate-config/package.json +3 -1
  359. package/skills/video/package.json +6 -4
  360. package/skills/video-downloader/package.json +3 -1
  361. package/skills/video-highlight-pack/SKILL.md +44 -0
  362. package/skills/video-highlight-pack/package.json +10 -0
  363. package/skills/voiceover-jingle-pack/SKILL.md +28 -0
  364. package/skills/voiceover-jingle-pack/package.json +10 -0
  365. package/skills/watermark/package.json +6 -1
  366. package/skills/webcrawling/package.json +2 -1
  367. package/skills/write/SKILL.md +6 -6
  368. package/dist/server/serve.d.ts +0 -11
  369. package/skills/apidocs/.claude/settings.json +0 -5
  370. package/skills/audio/.env.example +0 -14
  371. package/skills/audio/QUICKSTART.md +0 -158
  372. package/skills/audio/README.md +0 -256
  373. package/skills/audio/src/index-local.ts +0 -206
  374. package/skills/audio/src/index.ts +0 -95
  375. package/skills/audio/src/providers/elevenlabs.ts +0 -115
  376. package/skills/audio/src/providers/google.ts +0 -116
  377. package/skills/audio/src/providers/minimax.ts +0 -83
  378. package/skills/audio/src/providers/openai.ts +0 -115
  379. package/skills/audio/src/types.ts +0 -79
  380. package/skills/audiobook-chapter-proofer/CLAUDE.md +0 -19
  381. package/skills/audiobook-chapter-proofer/package.json +0 -27
  382. package/skills/audiobook-chapter-proofer/src/index.ts +0 -285
  383. package/skills/browse/src/client.ts +0 -373
  384. package/skills/browse/src/index-local.ts +0 -430
  385. package/skills/browse/src/index.ts +0 -110
  386. package/skills/browse/src/sse-server.ts +0 -919
  387. package/skills/browse/src/types.ts +0 -104
  388. package/skills/consolelog/src/server/index.ts +0 -508
  389. package/skills/create-blog-article/CLAUDE.md +0 -19
  390. package/skills/create-blog-article/src/index.ts +0 -745
  391. package/skills/create-blog-article/tsconfig.json +0 -10
  392. package/skills/deepresearch/src/agents/query-generator.ts +0 -91
  393. package/skills/deepresearch/src/agents/synthesizer.ts +0 -111
  394. package/skills/deepresearch/src/index.ts +0 -224
  395. package/skills/deepresearch/src/research.ts +0 -166
  396. package/skills/deepresearch/src/services/anthropic.ts +0 -69
  397. package/skills/deepresearch/src/services/exa.ts +0 -108
  398. package/skills/deepresearch/src/services/firecrawl.ts +0 -88
  399. package/skills/deepresearch/src/services/openai.ts +0 -81
  400. package/skills/deepresearch/src/types.ts +0 -76
  401. package/skills/deepresearch/src/utils/file.ts +0 -111
  402. package/skills/deepresearch/src/utils/logger.ts +0 -84
  403. package/skills/domainpurchase/src/server/index.ts +0 -332
  404. package/skills/domainsearch/src/server/index.ts +0 -229
  405. package/skills/e2bswarm/README.md +0 -135
  406. package/skills/e2bswarm/SKILL.md +0 -118
  407. package/skills/e2bswarm/examples/tasks-example.json +0 -38
  408. package/skills/e2bswarm/package.json +0 -59
  409. package/skills/e2bswarm/src/commands/collect.ts +0 -135
  410. package/skills/e2bswarm/src/commands/install.ts +0 -164
  411. package/skills/e2bswarm/src/commands/kill.ts +0 -62
  412. package/skills/e2bswarm/src/commands/spawn.ts +0 -134
  413. package/skills/e2bswarm/src/commands/status.ts +0 -90
  414. package/skills/e2bswarm/src/commands/sync.ts +0 -208
  415. package/skills/e2bswarm/src/index.ts +0 -121
  416. package/skills/e2bswarm/src/lib/config.ts +0 -75
  417. package/skills/e2bswarm/src/lib/e2b.ts +0 -490
  418. package/skills/e2bswarm/src/lib/github.ts +0 -253
  419. package/skills/e2bswarm/src/lib/logger.ts +0 -41
  420. package/skills/e2bswarm/src/lib/paths.ts +0 -75
  421. package/skills/e2bswarm/src/lib/tasks.ts +0 -320
  422. package/skills/e2bswarm/src/types/index.ts +0 -107
  423. package/skills/e2bswarm/templates/codebox/e2b.Dockerfile +0 -38
  424. package/skills/e2bswarm/templates/codebox/e2b.toml +0 -3
  425. package/skills/e2bswarm/templates/setup.sh +0 -21
  426. package/skills/e2bswarm/tsconfig.json +0 -19
  427. package/skills/generate-book-cover/src/index.ts +0 -694
  428. package/skills/image/src/index-local.ts +0 -206
  429. package/skills/image/src/index.ts +0 -96
  430. package/skills/image/src/providers/google.ts +0 -79
  431. package/skills/image/src/providers/minimax.ts +0 -94
  432. package/skills/image/src/providers/openai.ts +0 -80
  433. package/skills/image/src/providers/xai.ts +0 -73
  434. package/skills/image/src/types.ts +0 -37
  435. package/skills/logo-design/CLAUDE.md +0 -30
  436. package/skills/logo-design/src/index.ts +0 -322
  437. package/skills/managehook/src/server/index.ts +0 -108
  438. package/skills/managemcp/src/server/index.ts +0 -108
  439. package/skills/manageskill/src/server/index.ts +0 -108
  440. package/skills/music/CLAUDE.md +0 -9
  441. package/skills/music/src/index.ts +0 -94
  442. package/skills/music/tsconfig.json +0 -10
  443. package/skills/pdf-read/src/index.ts +0 -320
  444. package/skills/product-mockup/CLAUDE.md +0 -19
  445. package/skills/product-mockup/src/index.ts +0 -290
  446. package/skills/read-pdf/src/index.ts +0 -388
  447. package/skills/remove-background/src/index.ts +0 -405
  448. package/skills/sound-effects/SKILL.md +0 -34
  449. package/skills/sound-effects/package.json +0 -21
  450. package/skills/sound-effects/src/index.ts +0 -172
  451. package/skills/sound-effects/tsconfig.json +0 -8
  452. package/skills/transcript/src/chunker.ts +0 -215
  453. package/skills/transcript/src/formatter.ts +0 -134
  454. package/skills/transcript/src/index-local.ts +0 -226
  455. package/skills/transcript/src/index.ts +0 -110
  456. package/skills/transcript/src/providers/elevenlabs.ts +0 -133
  457. package/skills/transcript/src/providers/gemini.ts +0 -192
  458. package/skills/transcript/src/providers/index.ts +0 -54
  459. package/skills/transcript/src/providers/openai.ts +0 -203
  460. package/skills/transcript/src/types.ts +0 -106
  461. package/skills/video/.env.example +0 -14
  462. package/skills/video/EXAMPLES.md +0 -266
  463. package/skills/video/LICENSE +0 -192
  464. package/skills/video/README.md +0 -174
  465. package/skills/video/src/cli.ts +0 -155
  466. package/skills/video/src/index-local.ts +0 -148
  467. package/skills/video/src/index.ts +0 -96
  468. package/skills/video/src/providers/google-veo.ts +0 -126
  469. package/skills/video/src/providers/index.ts +0 -22
  470. package/skills/video/src/providers/minimax.ts +0 -100
  471. package/skills/video/src/providers/openai-sora.ts +0 -164
  472. package/skills/video/src/providers/runway.ts +0 -159
  473. package/skills/video/src/types.ts +0 -35
  474. package/skills/video/tsconfig.json +0 -22
  475. package/skills/voiceover-casting-assistant/CLAUDE.md +0 -19
  476. package/skills/voiceover-casting-assistant/package.json +0 -27
  477. package/skills/voiceover-casting-assistant/src/index.ts +0 -255
  478. package/skills/voiceover-casting-assistant/tsconfig.json +0 -10
  479. package/skills/webcrawling/src/commands/config.ts +0 -34
  480. package/skills/webcrawling/src/commands/crawl.ts +0 -33
  481. package/skills/webcrawling/src/commands/scrape.ts +0 -32
  482. package/skills/webcrawling/src/commands/sessions.ts +0 -42
  483. package/skills/webcrawling/src/lib/crawler.ts +0 -174
  484. package/skills/webcrawling/src/lib/storage.ts +0 -130
  485. package/skills/webcrawling/src/types/index.ts +0 -45
  486. package/skills/webcrawling/src/utils/logger.ts +0 -30
  487. package/skills/webcrawling/src/utils/paths.ts +0 -28
  488. /package/skills/{audiobook-chapter-proofer → blog-article}/tsconfig.json +0 -0
@@ -0,0 +1,36 @@
1
+ import { appendFileSync, existsSync, mkdirSync } from 'fs';
2
+ import { randomUUID } from 'crypto';
3
+ import { join } from 'path';
4
+
5
+ export const SKILL_NAME = "analyze-data";
6
+ export const SESSION_ID = randomUUID().slice(0, 8);
7
+ export const SKILLS_OUTPUT_DIR = process.env.SKILLS_OUTPUT_DIR || join(process.cwd(), ".skills");
8
+ export const LOGS_DIR = join(SKILLS_OUTPUT_DIR, "logs", SKILL_NAME);
9
+ export const LOG_FILE = join(LOGS_DIR, `${new Date().toISOString().replace(/[:.]/g, "_").slice(0, 19)}_${SESSION_ID}.log`);
10
+
11
+ export function ensureDir(dir: string) {
12
+ if (!existsSync(dir)) {
13
+ mkdirSync(dir, { recursive: true });
14
+ }
15
+ }
16
+
17
+ export function log(message: string, level: "info" | "error" | "success" = "info") {
18
+ ensureDir(LOGS_DIR);
19
+ const timestamp = new Date().toISOString();
20
+ const logMessage = `[${timestamp}] [${level.toUpperCase()}] ${message}\n`;
21
+ appendFileSync(LOG_FILE, logMessage);
22
+
23
+ const prefixes = {
24
+ info: "ℹ️ ",
25
+ error: "❌ ",
26
+ success: "✅ "
27
+ };
28
+
29
+ if (level === "error") {
30
+ console.error(`${prefixes[level]} ${message}`);
31
+ } else {
32
+ console.log(`${prefixes[level]} ${message}`);
33
+ }
34
+ }
35
+
36
+ // ============================================================================
@@ -0,0 +1,57 @@
1
+ export function parseCSV(content: string): any[] {
2
+ const lines = content.split('\n').filter(line => line.trim());
3
+ if (lines.length === 0) return [];
4
+
5
+ const headers = lines[0].split(',').map(h => h.trim().replace(/^"|"$/g, ''));
6
+ const data: any[] = [];
7
+
8
+ for (let i = 1; i < lines.length; i++) {
9
+ const values = parseCSVLine(lines[i]);
10
+ if (values.length === headers.length) {
11
+ const row: any = {};
12
+ headers.forEach((header, idx) => {
13
+ row[header] = values[idx];
14
+ });
15
+ data.push(row);
16
+ }
17
+ }
18
+
19
+ return data;
20
+ }
21
+
22
+ function parseCSVLine(line: string): string[] {
23
+ const values: string[] = [];
24
+ let current = '';
25
+ let inQuotes = false;
26
+
27
+ for (let i = 0; i < line.length; i++) {
28
+ const char = line[i];
29
+
30
+ if (char === '"') {
31
+ inQuotes = !inQuotes;
32
+ } else if (char === ',' && !inQuotes) {
33
+ values.push(current.trim());
34
+ current = '';
35
+ } else {
36
+ current += char;
37
+ }
38
+ }
39
+
40
+ values.push(current.trim());
41
+ return values.map(v => v.replace(/^"|"$/g, ''));
42
+ }
43
+
44
+ export function parseJSON(content: string): any[] {
45
+ const parsed = JSON.parse(content);
46
+
47
+ if (Array.isArray(parsed)) {
48
+ return parsed;
49
+ } else if (parsed.data && Array.isArray(parsed.data)) {
50
+ return parsed.data;
51
+ } else if (typeof parsed === 'object') {
52
+ // Convert object to array of key-value pairs
53
+ return Object.entries(parsed).map(([key, value]) => ({ key, value }));
54
+ }
55
+
56
+ throw new Error('Unsupported JSON structure');
57
+ }
@@ -0,0 +1,151 @@
1
+ import type { ColumnStats } from './types';
2
+
3
+ export function detectDataType(values: any[]): ColumnStats['dataType'] {
4
+ const nonNullValues = values.filter(v => v !== null && v !== undefined && v !== '');
5
+ if (nonNullValues.length === 0) return 'string';
6
+
7
+ let numericCount = 0;
8
+ let dateCount = 0;
9
+ let booleanCount = 0;
10
+
11
+ for (const value of nonNullValues.slice(0, 100)) {
12
+ if (typeof value === 'number' || !isNaN(Number(value))) {
13
+ numericCount++;
14
+ }
15
+ if (value === true || value === false || value === 'true' || value === 'false') {
16
+ booleanCount++;
17
+ }
18
+ if (!isNaN(Date.parse(String(value)))) {
19
+ dateCount++;
20
+ }
21
+ }
22
+
23
+ const total = Math.min(nonNullValues.length, 100);
24
+
25
+ if (numericCount / total > 0.8) return 'numeric';
26
+ if (booleanCount / total > 0.8) return 'boolean';
27
+ if (dateCount / total > 0.8) return 'date';
28
+ if (numericCount > 0 && numericCount < total * 0.8) return 'mixed';
29
+
30
+ return 'string';
31
+ }
32
+
33
+ export function calculateStats(values: number[]): Partial<ColumnStats> {
34
+ if (values.length === 0) return {};
35
+
36
+ const sorted = [...values].sort((a, b) => a - b);
37
+ const n = sorted.length;
38
+
39
+ // Basic stats
40
+ const sum = sorted.reduce((acc, val) => acc + val, 0);
41
+ const mean = sum / n;
42
+
43
+ const median = n % 2 === 0
44
+ ? (sorted[n / 2 - 1] + sorted[n / 2]) / 2
45
+ : sorted[Math.floor(n / 2)];
46
+
47
+ // Mode
48
+ const frequency: Record<number, number> = {};
49
+ sorted.forEach(val => {
50
+ frequency[val] = (frequency[val] || 0) + 1;
51
+ });
52
+ const maxFreq = Math.max(...Object.values(frequency));
53
+ const modes = Object.keys(frequency)
54
+ .filter(key => frequency[Number(key)] === maxFreq)
55
+ .map(Number);
56
+ const mode = modes.length === sorted.length ? undefined : (modes.length === 1 ? modes[0] : modes);
57
+
58
+ // Variance and standard deviation
59
+ const squaredDiffs = sorted.map(val => Math.pow(val - mean, 2));
60
+ const variance = squaredDiffs.reduce((acc, val) => acc + val, 0) / n;
61
+ const stdDev = Math.sqrt(variance);
62
+
63
+ // Quartiles
64
+ const q1 = sorted[Math.floor(n * 0.25)];
65
+ const q2 = median;
66
+ const q3 = sorted[Math.floor(n * 0.75)];
67
+
68
+ // Skewness and kurtosis
69
+ const cubedDiffs = sorted.map(val => Math.pow((val - mean) / stdDev, 3));
70
+ const skewness = cubedDiffs.reduce((acc, val) => acc + val, 0) / n;
71
+
72
+ const fourthDiffs = sorted.map(val => Math.pow((val - mean) / stdDev, 4));
73
+ const kurtosis = fourthDiffs.reduce((acc, val) => acc + val, 0) / n - 3;
74
+
75
+ return {
76
+ mean: roundTo(mean, 4),
77
+ median: roundTo(median, 4),
78
+ mode,
79
+ stdDev: roundTo(stdDev, 4),
80
+ variance: roundTo(variance, 4),
81
+ min: sorted[0],
82
+ max: sorted[n - 1],
83
+ range: sorted[n - 1] - sorted[0],
84
+ q1: roundTo(q1, 4),
85
+ q2: roundTo(q2, 4),
86
+ q3: roundTo(q3, 4),
87
+ skewness: roundTo(skewness, 4),
88
+ kurtosis: roundTo(kurtosis, 4),
89
+ };
90
+ }
91
+
92
+ export function calculatePercentiles(values: number[], percentiles: number[]): Record<number, number> {
93
+ const sorted = [...values].sort((a, b) => a - b);
94
+ const result: Record<number, number> = {};
95
+
96
+ percentiles.forEach(p => {
97
+ const index = (p / 100) * (sorted.length - 1);
98
+ const lower = Math.floor(index);
99
+ const upper = Math.ceil(index);
100
+ const fraction = index - lower;
101
+
102
+ result[p] = sorted[lower] + fraction * (sorted[upper] - sorted[lower]);
103
+ });
104
+
105
+ return result;
106
+ }
107
+
108
+ export function detectOutliers(values: number[], q1: number, q3: number): number[] {
109
+ const iqr = q3 - q1;
110
+ const lowerBound = q1 - 1.5 * iqr;
111
+ const upperBound = q3 + 1.5 * iqr;
112
+
113
+ return values.filter(val => val < lowerBound || val > upperBound);
114
+ }
115
+
116
+ export function calculateCorrelation(x: number[], y: number[]): number {
117
+ const n = Math.min(x.length, y.length);
118
+ if (n === 0) return 0;
119
+
120
+ const meanX = x.reduce((acc, val) => acc + val, 0) / n;
121
+ const meanY = y.reduce((acc, val) => acc + val, 0) / n;
122
+
123
+ let numerator = 0;
124
+ let sumXSquared = 0;
125
+ let sumYSquared = 0;
126
+
127
+ for (let i = 0; i < n; i++) {
128
+ const dx = x[i] - meanX;
129
+ const dy = y[i] - meanY;
130
+ numerator += dx * dy;
131
+ sumXSquared += dx * dx;
132
+ sumYSquared += dy * dy;
133
+ }
134
+
135
+ const denominator = Math.sqrt(sumXSquared * sumYSquared);
136
+ return denominator === 0 ? 0 : numerator / denominator;
137
+ }
138
+
139
+ export function roundTo(value: number, decimals: number): number {
140
+ const factor = Math.pow(10, decimals);
141
+ return Math.round(value * factor) / factor;
142
+ }
143
+
144
+ export function formatBytes(bytes: number): string {
145
+ if (bytes < 1024) return bytes + ' B';
146
+ if (bytes < 1024 * 1024) return (bytes / 1024).toFixed(2) + ' KB';
147
+ if (bytes < 1024 * 1024 * 1024) return (bytes / (1024 * 1024)).toFixed(2) + ' MB';
148
+ return (bytes / (1024 * 1024 * 1024)).toFixed(2) + ' GB';
149
+ }
150
+
151
+ // ============================================================================
@@ -0,0 +1,85 @@
1
+ export interface AnalysisOptions {
2
+ format: 'markdown' | 'json' | 'html';
3
+ output?: string;
4
+ correlations: boolean;
5
+ outliers: boolean;
6
+ trends: boolean;
7
+ sample?: number;
8
+ percentiles: number[];
9
+ verbose: boolean;
10
+ }
11
+
12
+ export interface ColumnStats {
13
+ name: string;
14
+ dataType: 'numeric' | 'string' | 'date' | 'boolean' | 'mixed';
15
+ count: number;
16
+ nullCount: number;
17
+ nullPercentage: number;
18
+ uniqueCount: number;
19
+ uniquePercentage: number;
20
+ sampleValues: any[];
21
+
22
+ // Numeric stats
23
+ mean?: number;
24
+ median?: number;
25
+ mode?: number | number[];
26
+ stdDev?: number;
27
+ variance?: number;
28
+ min?: number;
29
+ max?: number;
30
+ range?: number;
31
+ q1?: number;
32
+ q2?: number;
33
+ q3?: number;
34
+ percentiles?: Record<number, number>;
35
+ skewness?: number;
36
+ kurtosis?: number;
37
+ outliers?: number[];
38
+
39
+ // String stats
40
+ avgLength?: number;
41
+ minLength?: number;
42
+ maxLength?: number;
43
+
44
+ // Distribution
45
+ distribution?: Record<string, number>;
46
+ topValues?: Array<{ value: any; count: number; percentage: number }>;
47
+ }
48
+
49
+ export interface AnalysisReport {
50
+ overview: {
51
+ fileName: string;
52
+ fileSize: string;
53
+ fileType: string;
54
+ rowCount: number;
55
+ columnCount: number;
56
+ memoryUsage: string;
57
+ processingTime: number;
58
+ timestamp: string;
59
+ };
60
+ columns: ColumnStats[];
61
+ correlations?: number[][];
62
+ correlationPairs?: Array<{ col1: string; col2: string; correlation: number }>;
63
+ quality: {
64
+ totalCells: number;
65
+ missingCells: number;
66
+ missingPercentage: number;
67
+ duplicateRows: number;
68
+ duplicatePercentage: number;
69
+ dataQualityScore: number;
70
+ issues: string[];
71
+ };
72
+ trends?: {
73
+ detected: boolean;
74
+ patterns: string[];
75
+ insights: string[];
76
+ };
77
+ visualizationRecommendations: Array<{
78
+ column: string;
79
+ chartType: string;
80
+ reason: string;
81
+ }>;
82
+ insights: string[];
83
+ }
84
+
85
+ // ============================================================================
@@ -0,0 +1,46 @@
1
+ ---
2
+ name: api-docs-portal
3
+ description: Generate premium API documentation portals from OpenAPI specs, route lists, or examples.
4
+ ---
5
+
6
+ # API Docs Portal
7
+
8
+ Generate a polished API documentation portal from OpenAPI specs, route files, or endpoint examples.
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 api-docs-portal --spec "GET /v1/projects, POST /v1/projects" --title "Acme API"
19
+ skills run api-docs-portal --spec-file ./openapi.json --base-url "https://api.example.com" --auth bearer
20
+ ```
21
+
22
+ ## Options
23
+
24
+ | Option | Description | Default |
25
+ |--------|-------------|---------|
26
+ | `--spec <text>` | OpenAPI JSON, route list, or endpoint examples. Positional text also works. | required |
27
+ | `--spec-file <path>` | Read the API spec or route list from a file. | none |
28
+ | `--title <text>` | Portal and API title. | API Documentation |
29
+ | `--base-url <url>` | Base URL used in examples. | https://api.example.com |
30
+ | `--auth <mode>` | Auth mode: `bearer`, `api-key`, `oauth`, `session`, or `none`. | bearer |
31
+ | `--theme <name>` | Portal theme: `light` or `slate`. | light |
32
+ | `--output <dir>` | Output directory for direct local execution. Hosted runs use the run export directory. | run export dir |
33
+
34
+ ## Outputs
35
+
36
+ - `site/index.html`
37
+ - `site/styles.css`
38
+ - `site/endpoints.json`
39
+ - `openapi.json`
40
+ - `endpoint-reference.md`
41
+ - `auth-guide.md`
42
+ - `examples.md`
43
+ - `README.md`
44
+ - `manifest.json`
45
+
46
+ After submitting a hosted run, poll with `skills runs status <run-id>` and download outputs with `skills exports download <run-id>`.
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "api-docs-portal",
3
+ "version": "0.1.0",
4
+ "type": "module",
5
+ "private": true,
6
+ "bin": {
7
+ "api-docs-portal": "src/index.ts"
8
+ }
9
+ }
@@ -292,6 +292,19 @@ function generateTestFile(parsed: ParsedInput, tests: TestCase[], options: Optio
292
292
  */
293
293
  async function main() {
294
294
  try {
295
+ if (process.argv.includes("--help") || process.argv.includes("-h")) {
296
+ console.log(`api-test-suite
297
+
298
+ Usage:
299
+ skills run api-test-suite -- "POST /api/users with name, email" [options]
300
+
301
+ Options:
302
+ --format <framework> Test framework output, default vitest
303
+ --include-auth=false Disable auth test generation
304
+ --include-rate-limit Include rate limit tests`);
305
+ return;
306
+ }
307
+
295
308
  const input = process.env.SKILLS_INPUT || "";
296
309
  const outputDir = process.env.SKILLS_OUTPUT_DIR || process.cwd();
297
310
  const exportsDir = process.env.SKILLS_EXPORTS_DIR || join(outputDir, "exports");
@@ -4,7 +4,7 @@
4
4
  "description": "Agentic web crawler for API documentation indexing and semantic search",
5
5
  "type": "module",
6
6
  "bin": {
7
- "apidocs": "./bin/cli.ts"
7
+ "apidocs": "src/index.ts"
8
8
  },
9
9
  "scripts": {
10
10
  "dev": "bun run bin/cli.ts",
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env bun
2
+
3
+ console.log("Usage: skills run apidocs -- <command> [options]");
@@ -2,14 +2,14 @@
2
2
  "name": "audio",
3
3
  "version": "1.0.0",
4
4
  "description": "Generate speech and audio using provider-cost AI backends",
5
- "type": "module",
6
5
  "main": "src/index.ts",
6
+ "type": "module",
7
7
  "bin": {
8
8
  "audio": "src/index.ts"
9
9
  },
10
10
  "scripts": {
11
11
  "start": "bun run src/index.ts",
12
- "dev": "bun run --watch src/index.ts"
12
+ "generate": "bun run src/index.ts generate"
13
13
  },
14
14
  "keywords": [
15
15
  "audio-generation",
@@ -20,7 +20,6 @@
20
20
  "minimax",
21
21
  "gemini"
22
22
  ],
23
- "author": "",
24
23
  "devDependencies": {
25
24
  "@types/bun": "latest"
26
25
  },
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: Audio Cleanup Lab
2
+ name: audio-cleanup-lab
3
3
  version: 0.1.0
4
4
  description: Generate professional audio cleanup recipes and mastering guidelines for noisy recordings
5
5
  author: skills.md
@@ -78,4 +78,4 @@ skills run audio-cleanup-lab -- "ADR matching location sound" \
78
78
  ## Requirements
79
79
 
80
80
  - `OPENAI_API_KEY` environment variable.
81
- - Bun runtime.
81
+ - Bun runtime.
@@ -1,4 +1,4 @@
1
- # extract-audio
1
+ # audio-extract
2
2
 
3
3
  Skill for extracting audio tracks from video files. Supports multiple output formats and codec configurations.
4
4
 
@@ -0,0 +1,43 @@
1
+ ---
2
+ name: audio-transcript-pack
3
+ description: Generate premium transcript packages with timestamps, summaries, show notes, clip suggestions, repurposing copy, captions, and manifest metadata.
4
+ ---
5
+
6
+ # Audio Transcript Pack
7
+
8
+ Generate a production-ready transcript package from audio, video, or existing transcript text.
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 audio-transcript-pack --source ./episode.mp3 --title "Usage-based billing teardown" --speakers "Host,Guest"
19
+ skills run audio-transcript-pack --source ./transcript.txt --format podcast --duration-minutes 42
20
+ ```
21
+
22
+ ## Options
23
+
24
+ | Option | Description | Default |
25
+ |--------|-------------|---------|
26
+ | `--source <path-or-text>` | Audio/video file, transcript text file, or transcript text. | required |
27
+ | `--title <text>` | Episode, meeting, or recording title. | Audio Transcript Pack |
28
+ | `--speakers <list>` | Comma-separated speaker names. | Speaker 1,Speaker 2 |
29
+ | `--format <type>` | `podcast`, `meeting`, `lecture`, `interview`, or `general`. | general |
30
+ | `--duration-minutes <n>` | Approximate runtime for timestamp spacing. | 30 |
31
+ | `--output <dir>` | Output directory for direct local execution. Hosted runs use the run export directory. | run export dir |
32
+
33
+ ## Outputs
34
+
35
+ - `transcript.md`
36
+ - `captions.srt`
37
+ - `summary.md`
38
+ - `show-notes.md`
39
+ - `clips.csv`
40
+ - `content-repurpose-pack.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": "audio-transcript-pack",
3
+ "version": "0.1.0",
4
+ "private": true,
5
+ "description": "Hosted premium audio transcript package generator",
6
+ "type": "module",
7
+ "bin": {
8
+ "audio-transcript-pack": "./src/index.ts"
9
+ }
10
+ }
@@ -0,0 +1,12 @@
1
+ # blog-article
2
+
3
+ Generate one or more SEO-ready blog article packages through the hosted Skills runtime.
4
+
5
+ Use via:
6
+
7
+ ```bash
8
+ skills quote create-blog-article --count 8 --topic "SaaS onboarding"
9
+ skills run create-blog-article --count 8 --topic "SaaS onboarding" --audience "founders" --length long --seo
10
+ ```
11
+
12
+ Hosted runs write Markdown, HTML, JSON, and manifest artifacts to the run export directory.
@@ -0,0 +1,45 @@
1
+ ---
2
+ name: blog-article
3
+ description: Generate one or more SEO-ready blog article packages as hosted premium artifacts.
4
+ ---
5
+
6
+ # Blog Article
7
+
8
+ Generate blog articles as downloadable Markdown, HTML, JSON, and manifest artifacts.
9
+
10
+ ## Requirements
11
+
12
+ - Authenticate with `skills auth login`.
13
+ - This premium skill runs through the hosted Skills runtime; local installs expose only skill metadata and instructions.
14
+
15
+ ## Usage
16
+
17
+ ```bash
18
+ skills quote create-blog-article --count 8 --topic "SaaS onboarding"
19
+ skills run create-blog-article --count 8 --topic "SaaS onboarding" --audience "founders" --length long --seo
20
+ skills run create-blog-article -- --topic "Product-led growth" --articles 12
21
+ ```
22
+
23
+ ## Options
24
+
25
+ | Option | Description | Default |
26
+ |--------|-------------|---------|
27
+ | `--topic <text>` | Topic or theme. Positional text also works. | required |
28
+ | `--audience <text>` | Intended reader or buyer persona. | |
29
+ | `--count <number>` | Number of articles to generate, 1-12. | 1 |
30
+ | `--articles <number>` | Alias for `--count`. | |
31
+ | `--tone <tone>` | `professional`, `casual`, `technical`, or `friendly`. | professional |
32
+ | `--length <length>` | `short`, `medium`, or `long`. | medium |
33
+ | `--seo` | Include SEO metadata and keyword-oriented structure. | false |
34
+ | `--outline <text>` | Optional outline, angles, or required sections. | |
35
+ | `--output <dir>` | Output directory for direct local execution. Hosted runs use the run export directory. | run export dir |
36
+
37
+ ## Outputs
38
+
39
+ - `manifest.json` using the `skills.blogArticle.outputs.v1` contract
40
+ - For a single article: `article.md`, `article.html`, `article.json`
41
+ - For batch runs: `article-XX-<slug>/article.md`, `article.html`, `article.json`
42
+
43
+ `manifest.json` includes the run id, prompt, sanitized input options, requested tone/length/SEO settings, receipt cost, and an `articles` array. Each article entry includes `title`, `slug`, `summary`, `keywords`, optional `featuredImage`, word count, reading time, and relative file paths.
44
+
45
+ After submitting a hosted run, poll with `skills runs status <run-id>` and download outputs with `skills exports download <run-id>`.
@@ -1,10 +1,10 @@
1
1
  {
2
- "name": "create-blog-article",
2
+ "name": "blog-article",
3
3
  "version": "0.1.0",
4
- "description": "Create Blog Article skill",
4
+ "description": "Hosted premium blog article artifact generator",
5
5
  "type": "module",
6
6
  "bin": {
7
- "create-blog-article": "./src/index.ts"
7
+ "blog-article": "./src/index.ts"
8
8
  },
9
9
  "scripts": {
10
10
  "dev": "bun run src/index.ts",
@@ -0,0 +1,45 @@
1
+ ---
2
+ name: brand-kit
3
+ description: Generate premium brand kits with logo usage, palette, typography, brand voice, sample applications, Markdown guide, and PDF guide.
4
+ ---
5
+
6
+ # Brand Kit
7
+
8
+ Generate a production-ready brand guide package for a startup, product, internal tool, or campaign.
9
+
10
+ ## Requirements
11
+
12
+ - Authenticate with `skills auth login`.
13
+ - This premium skill runs through the hosted Skills runtime; local installs expose only skill metadata and instructions.
14
+
15
+ ## Usage
16
+
17
+ ```bash
18
+ skills run brand-kit "Usage-based billing for AI SaaS" --audience "founders" --personality "precise, calm, pragmatic"
19
+ skills run brand-kit --brand "Acme Ledger" --category "developer tools" --tone premium
20
+ ```
21
+
22
+ ## Options
23
+
24
+ | Option | Description | Default |
25
+ |--------|-------------|---------|
26
+ | `--brand <text>` | Brand, product, or company name. Positional text also works. | required |
27
+ | `--category <text>` | Market category or product type. | software product |
28
+ | `--audience <text>` | Primary audience. | software teams |
29
+ | `--personality <text>` | Brand personality words. | clear, capable, direct |
30
+ | `--tone <tone>` | `direct`, `premium`, `friendly`, or `technical`. | direct |
31
+ | `--output <dir>` | Output directory for direct local execution. Hosted runs use the run export directory. | run export dir |
32
+
33
+ ## Outputs
34
+
35
+ - `brand-guide.md`
36
+ - `brand-guide.pdf`
37
+ - `palette.json`
38
+ - `typography.md`
39
+ - `voice-guide.md`
40
+ - `logo-usage.md`
41
+ - `sample-applications.md`
42
+ - `brand-assets.svg`
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,14 @@
1
+ {
2
+ "name": "brand-kit",
3
+ "version": "0.1.0",
4
+ "description": "Hosted premium brand kit artifact generator",
5
+ "type": "module",
6
+ "bin": {
7
+ "brand-kit": "./src/index.ts"
8
+ },
9
+ "dependencies": {},
10
+ "devDependencies": {
11
+ "@types/bun": "latest",
12
+ "typescript": "^5.7.0"
13
+ }
14
+ }