@hasna/skills 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1571) hide show
  1. package/.env.example +18 -0
  2. package/.npmrc.example +1 -0
  3. package/CONTRIBUTING.md +32 -0
  4. package/README.md +475 -0
  5. package/bin/index.js +36671 -0
  6. package/bin/mcp.js +30917 -0
  7. package/bunfig.toml +2 -0
  8. package/package.json +64 -0
  9. package/skills/skill-academic-journal-matcher/CLAUDE.md +19 -0
  10. package/skills/skill-academic-journal-matcher/package.json +32 -0
  11. package/skills/skill-academic-journal-matcher/src/index.ts +86 -0
  12. package/skills/skill-academic-journal-matcher/tsconfig.json +14 -0
  13. package/skills/skill-action-item-router/CLAUDE.md +19 -0
  14. package/skills/skill-action-item-router/package.json +32 -0
  15. package/skills/skill-action-item-router/src/index.ts +304 -0
  16. package/skills/skill-action-item-router/tsconfig.json +14 -0
  17. package/skills/skill-ad-creative-generator/CLAUDE.md +19 -0
  18. package/skills/skill-ad-creative-generator/package.json +32 -0
  19. package/skills/skill-ad-creative-generator/src/index.ts +419 -0
  20. package/skills/skill-ad-creative-generator/tsconfig.json +14 -0
  21. package/skills/skill-advanced-math/CLAUDE.md +19 -0
  22. package/skills/skill-advanced-math/package.json +32 -0
  23. package/skills/skill-advanced-math/src/index.ts +811 -0
  24. package/skills/skill-advanced-math/tsconfig.json +14 -0
  25. package/skills/skill-analyze-data/CLAUDE.md +16 -0
  26. package/skills/skill-analyze-data/SKILL.md +112 -0
  27. package/skills/skill-analyze-data/package.json +25 -0
  28. package/skills/skill-analyze-data/src/index.ts +1095 -0
  29. package/skills/skill-analyze-data/tsconfig.json +16 -0
  30. package/skills/skill-anomaly-investigator/CLAUDE.md +19 -0
  31. package/skills/skill-anomaly-investigator/package.json +32 -0
  32. package/skills/skill-anomaly-investigator/src/index.ts +311 -0
  33. package/skills/skill-anomaly-investigator/tsconfig.json +14 -0
  34. package/skills/skill-api-test-suite/CLAUDE.md +19 -0
  35. package/skills/skill-api-test-suite/package.json +32 -0
  36. package/skills/skill-api-test-suite/src/index.ts +368 -0
  37. package/skills/skill-api-test-suite/tsconfig.json +14 -0
  38. package/skills/skill-apidocs/.claude/settings.json +5 -0
  39. package/skills/skill-apidocs/.env.example +8 -0
  40. package/skills/skill-apidocs/CLAUDE.md +278 -0
  41. package/skills/skill-apidocs/LICENSE +21 -0
  42. package/skills/skill-apidocs/README.md +196 -0
  43. package/skills/skill-apidocs/api-docs-list.json +186 -0
  44. package/skills/skill-apidocs/package.json +60 -0
  45. package/skills/skill-apidocs/scripts/crawl-all.ts +157 -0
  46. package/skills/skill-apidocs/scripts/publish.ts +210 -0
  47. package/skills/skill-apidocs/src/commands/add.ts +279 -0
  48. package/skills/skill-apidocs/src/commands/endpoints.ts +157 -0
  49. package/skills/skill-apidocs/src/commands/list.ts +51 -0
  50. package/skills/skill-apidocs/src/commands/query.ts +63 -0
  51. package/skills/skill-apidocs/src/commands/remove.ts +39 -0
  52. package/skills/skill-apidocs/src/commands/sync.ts +227 -0
  53. package/skills/skill-apidocs/src/lib/crawler.ts +427 -0
  54. package/skills/skill-apidocs/src/lib/discovery.ts +244 -0
  55. package/skills/skill-apidocs/src/lib/embeddings.ts +136 -0
  56. package/skills/skill-apidocs/src/lib/endpoint-extractor.ts +359 -0
  57. package/skills/skill-apidocs/src/lib/html-to-md.ts +163 -0
  58. package/skills/skill-apidocs/src/lib/parser.ts +288 -0
  59. package/skills/skill-apidocs/src/lib/search.ts +189 -0
  60. package/skills/skill-apidocs/src/lib/storage.ts +242 -0
  61. package/skills/skill-apidocs/src/lib/vectors-local.ts +220 -0
  62. package/skills/skill-apidocs/src/lib/vectors-s3.ts +255 -0
  63. package/skills/skill-apidocs/src/lib/vectors.ts +97 -0
  64. package/skills/skill-apidocs/src/types/index.ts +297 -0
  65. package/skills/skill-apidocs/src/utils/output.ts +132 -0
  66. package/skills/skill-apidocs/src/utils/paths.ts +126 -0
  67. package/skills/skill-apidocs/tsconfig.json +21 -0
  68. package/skills/skill-architecture-docs/CLAUDE.md +19 -0
  69. package/skills/skill-architecture-docs/package.json +32 -0
  70. package/skills/skill-architecture-docs/src/index.ts +543 -0
  71. package/skills/skill-architecture-docs/tsconfig.json +14 -0
  72. package/skills/skill-audio/.env.example +14 -0
  73. package/skills/skill-audio/QUICKSTART.md +158 -0
  74. package/skills/skill-audio/README.md +256 -0
  75. package/skills/skill-audio/SKILL.md +60 -0
  76. package/skills/skill-audio/install.sh +112 -0
  77. package/skills/skill-audio/package.json +35 -0
  78. package/skills/skill-audio/src/auth.ts +49 -0
  79. package/skills/skill-audio/src/http-client.ts +128 -0
  80. package/skills/skill-audio/src/index-http.ts +111 -0
  81. package/skills/skill-audio/src/index-local.ts +203 -0
  82. package/skills/skill-audio/src/index.ts +111 -0
  83. package/skills/skill-audio/src/installer.ts +324 -0
  84. package/skills/skill-audio/src/providers/elevenlabs.ts +115 -0
  85. package/skills/skill-audio/src/providers/google.ts +116 -0
  86. package/skills/skill-audio/src/providers/openai.ts +115 -0
  87. package/skills/skill-audio/src/skill-install.ts +205 -0
  88. package/skills/skill-audio/src/types.ts +79 -0
  89. package/skills/skill-audio/tsconfig.json +19 -0
  90. package/skills/skill-audio-cleanup-lab/CLAUDE.md +3 -0
  91. package/skills/skill-audio-cleanup-lab/SKILL.md +81 -0
  92. package/skills/skill-audio-cleanup-lab/package.json +30 -0
  93. package/skills/skill-audio-cleanup-lab/src/index.ts +274 -0
  94. package/skills/skill-audio-cleanup-lab/tsconfig.json +18 -0
  95. package/skills/skill-audiobook-chapter-proofer/CLAUDE.md +19 -0
  96. package/skills/skill-audiobook-chapter-proofer/package.json +32 -0
  97. package/skills/skill-audiobook-chapter-proofer/src/index.ts +285 -0
  98. package/skills/skill-audiobook-chapter-proofer/tsconfig.json +14 -0
  99. package/skills/skill-auto-format/CLAUDE.md +19 -0
  100. package/skills/skill-auto-format/package.json +32 -0
  101. package/skills/skill-auto-format/src/index.ts +103 -0
  102. package/skills/skill-auto-format/tsconfig.json +14 -0
  103. package/skills/skill-banner-ad-suite/CLAUDE.md +19 -0
  104. package/skills/skill-banner-ad-suite/package.json +32 -0
  105. package/skills/skill-banner-ad-suite/src/index.ts +331 -0
  106. package/skills/skill-banner-ad-suite/tsconfig.json +14 -0
  107. package/skills/skill-benchmark-finder/CLAUDE.md +19 -0
  108. package/skills/skill-benchmark-finder/package.json +32 -0
  109. package/skills/skill-benchmark-finder/src/index.ts +294 -0
  110. package/skills/skill-benchmark-finder/tsconfig.json +14 -0
  111. package/skills/skill-bio-sequence-tool/CLAUDE.md +19 -0
  112. package/skills/skill-bio-sequence-tool/package.json +32 -0
  113. package/skills/skill-bio-sequence-tool/src/index.ts +85 -0
  114. package/skills/skill-bio-sequence-tool/tsconfig.json +14 -0
  115. package/skills/skill-blog-topic-cluster/CLAUDE.md +19 -0
  116. package/skills/skill-blog-topic-cluster/package.json +32 -0
  117. package/skills/skill-blog-topic-cluster/src/index.ts +274 -0
  118. package/skills/skill-blog-topic-cluster/tsconfig.json +14 -0
  119. package/skills/skill-brainstorm/README.md +17 -0
  120. package/skills/skill-brainstorm/install.sh +112 -0
  121. package/skills/skill-brainstorm/src/auth.ts +49 -0
  122. package/skills/skill-brainstorm/src/installer.ts +324 -0
  123. package/skills/skill-brainstorm/src/skill-install.ts +205 -0
  124. package/skills/skill-brand-style-guide/CLAUDE.md +20 -0
  125. package/skills/skill-brand-style-guide/SKILL.md +13 -0
  126. package/skills/skill-brand-style-guide/package.json +27 -0
  127. package/skills/skill-brand-style-guide/src/index.ts +288 -0
  128. package/skills/skill-brand-style-guide/tsconfig.json +19 -0
  129. package/skills/skill-brand-voice-audit/CLAUDE.md +19 -0
  130. package/skills/skill-brand-voice-audit/package.json +32 -0
  131. package/skills/skill-brand-voice-audit/src/index.ts +302 -0
  132. package/skills/skill-brand-voice-audit/tsconfig.json +14 -0
  133. package/skills/skill-browse/.env.example +14 -0
  134. package/skills/skill-browse/LICENSE +21 -0
  135. package/skills/skill-browse/README.md +268 -0
  136. package/skills/skill-browse/SKILL.md +56 -0
  137. package/skills/skill-browse/install.sh +112 -0
  138. package/skills/skill-browse/package.json +45 -0
  139. package/skills/skill-browse/src/auth.ts +49 -0
  140. package/skills/skill-browse/src/client.ts +373 -0
  141. package/skills/skill-browse/src/http-client.ts +128 -0
  142. package/skills/skill-browse/src/index-http.ts +111 -0
  143. package/skills/skill-browse/src/index-local.ts +430 -0
  144. package/skills/skill-browse/src/index.ts +111 -0
  145. package/skills/skill-browse/src/installer.ts +324 -0
  146. package/skills/skill-browse/src/skill-install.ts +205 -0
  147. package/skills/skill-browse/src/sse-server.ts +919 -0
  148. package/skills/skill-browse/src/types.ts +104 -0
  149. package/skills/skill-browse/tsconfig.json +19 -0
  150. package/skills/skill-browser-agent/CLAUDE.md +19 -0
  151. package/skills/skill-browser-agent/package.json +32 -0
  152. package/skills/skill-browser-agent/src/index.ts +626 -0
  153. package/skills/skill-browser-agent/tsconfig.json +14 -0
  154. package/skills/skill-browseruse/LICENSE +21 -0
  155. package/skills/skill-browseruse/README.md +27 -0
  156. package/skills/skill-browseruse/SKILL.md +113 -0
  157. package/skills/skill-browseruse/install.sh +112 -0
  158. package/skills/skill-browseruse/package.json +31 -0
  159. package/skills/skill-browseruse/src/auth.ts +49 -0
  160. package/skills/skill-browseruse/src/installer.ts +324 -0
  161. package/skills/skill-browseruse/src/skill-install.ts +174 -0
  162. package/skills/skill-budget-variance-analyzer/CLAUDE.md +16 -0
  163. package/skills/skill-budget-variance-analyzer/SKILL.md +83 -0
  164. package/skills/skill-budget-variance-analyzer/package.json +26 -0
  165. package/skills/skill-budget-variance-analyzer/src/index.ts +298 -0
  166. package/skills/skill-budget-variance-analyzer/tsconfig.json +16 -0
  167. package/skills/skill-businessactivity/CLAUDE.md +176 -0
  168. package/skills/skill-businessactivity/LICENSE +21 -0
  169. package/skills/skill-businessactivity/README.md +287 -0
  170. package/skills/skill-businessactivity/package.json +27 -0
  171. package/skills/skill-businessactivity/scripts/publish.ts +210 -0
  172. package/skills/skill-businessactivity/src/commands/activity.ts +211 -0
  173. package/skills/skill-businessactivity/src/commands/function.ts +227 -0
  174. package/skills/skill-businessactivity/src/commands/owner.ts +193 -0
  175. package/skills/skill-businessactivity/src/commands/profile.ts +121 -0
  176. package/skills/skill-businessactivity/src/commands/responsibility.ts +264 -0
  177. package/skills/skill-businessactivity/src/commands/team.ts +244 -0
  178. package/skills/skill-businessactivity/src/commands/workflow.ts +359 -0
  179. package/skills/skill-businessactivity/src/lib/config.ts +167 -0
  180. package/skills/skill-businessactivity/src/lib/output.ts +76 -0
  181. package/skills/skill-businessactivity/src/lib/paths.ts +79 -0
  182. package/skills/skill-businessactivity/src/lib/storage.ts +95 -0
  183. package/skills/skill-businessactivity/src/types/index.ts +86 -0
  184. package/skills/skill-businessactivity/tsconfig.json +21 -0
  185. package/skills/skill-calculate/LICENSE +21 -0
  186. package/skills/skill-calculate/README.md +17 -0
  187. package/skills/skill-calculate/install.sh +112 -0
  188. package/skills/skill-calculate/package.json +31 -0
  189. package/skills/skill-calculate/src/auth.ts +49 -0
  190. package/skills/skill-calculate/src/installer.ts +324 -0
  191. package/skills/skill-calculate/src/skill-install.ts +205 -0
  192. package/skills/skill-calendar-events/CLAUDE.md +19 -0
  193. package/skills/skill-calendar-events/package.json +32 -0
  194. package/skills/skill-calendar-events/src/index.ts +918 -0
  195. package/skills/skill-calendar-events/tsconfig.json +14 -0
  196. package/skills/skill-campaign-metric-brief/CLAUDE.md +19 -0
  197. package/skills/skill-campaign-metric-brief/package.json +32 -0
  198. package/skills/skill-campaign-metric-brief/src/index.ts +307 -0
  199. package/skills/skill-campaign-metric-brief/tsconfig.json +14 -0
  200. package/skills/skill-campaign-moodboard/CLAUDE.md +19 -0
  201. package/skills/skill-campaign-moodboard/package.json +32 -0
  202. package/skills/skill-campaign-moodboard/src/index.ts +288 -0
  203. package/skills/skill-campaign-moodboard/tsconfig.json +14 -0
  204. package/skills/skill-caption-style-stylist/CLAUDE.md +19 -0
  205. package/skills/skill-caption-style-stylist/package.json +32 -0
  206. package/skills/skill-caption-style-stylist/src/index.ts +275 -0
  207. package/skills/skill-caption-style-stylist/tsconfig.json +14 -0
  208. package/skills/skill-chemistry-calculator/CLAUDE.md +19 -0
  209. package/skills/skill-chemistry-calculator/package.json +32 -0
  210. package/skills/skill-chemistry-calculator/src/index.ts +110 -0
  211. package/skills/skill-chemistry-calculator/tsconfig.json +14 -0
  212. package/skills/skill-chromedevtools/LICENSE +21 -0
  213. package/skills/skill-chromedevtools/README.md +27 -0
  214. package/skills/skill-chromedevtools/SKILL.md +110 -0
  215. package/skills/skill-chromedevtools/install.sh +112 -0
  216. package/skills/skill-chromedevtools/package.json +31 -0
  217. package/skills/skill-chromedevtools/src/auth.ts +49 -0
  218. package/skills/skill-chromedevtools/src/installer.ts +324 -0
  219. package/skills/skill-chromedevtools/src/skill-install.ts +174 -0
  220. package/skills/skill-churn-risk-notifier/CLAUDE.md +19 -0
  221. package/skills/skill-churn-risk-notifier/package.json +32 -0
  222. package/skills/skill-churn-risk-notifier/src/index.ts +308 -0
  223. package/skills/skill-churn-risk-notifier/tsconfig.json +14 -0
  224. package/skills/skill-citation-formatter/CLAUDE.md +19 -0
  225. package/skills/skill-citation-formatter/package.json +32 -0
  226. package/skills/skill-citation-formatter/src/index.ts +83 -0
  227. package/skills/skill-citation-formatter/tsconfig.json +14 -0
  228. package/skills/skill-classroom-newsletter-kit/CLAUDE.md +19 -0
  229. package/skills/skill-classroom-newsletter-kit/package.json +32 -0
  230. package/skills/skill-classroom-newsletter-kit/src/index.ts +293 -0
  231. package/skills/skill-classroom-newsletter-kit/tsconfig.json +14 -0
  232. package/skills/skill-codefix/LICENSE +21 -0
  233. package/skills/skill-codefix/README.md +232 -0
  234. package/skills/skill-codefix/SKILL.md +94 -0
  235. package/skills/skill-codefix/install.sh +112 -0
  236. package/skills/skill-codefix/package.json +25 -0
  237. package/skills/skill-codefix/src/auth.ts +49 -0
  238. package/skills/skill-codefix/src/fixers/batch.ts +213 -0
  239. package/skills/skill-codefix/src/fixers/detector.ts +160 -0
  240. package/skills/skill-codefix/src/fixers/index.ts +7 -0
  241. package/skills/skill-codefix/src/fixers/runner.ts +522 -0
  242. package/skills/skill-codefix/src/http-client.ts +128 -0
  243. package/skills/skill-codefix/src/index-http.ts +111 -0
  244. package/skills/skill-codefix/src/index-local.ts +430 -0
  245. package/skills/skill-codefix/src/index.ts +111 -0
  246. package/skills/skill-codefix/src/installer.ts +324 -0
  247. package/skills/skill-codefix/src/skill-install.ts +205 -0
  248. package/skills/skill-codefix/src/types.ts +211 -0
  249. package/skills/skill-codefix/tsconfig.json +16 -0
  250. package/skills/skill-color-palette-harmonizer/CLAUDE.md +19 -0
  251. package/skills/skill-color-palette-harmonizer/package.json +32 -0
  252. package/skills/skill-color-palette-harmonizer/src/index.ts +278 -0
  253. package/skills/skill-color-palette-harmonizer/tsconfig.json +14 -0
  254. package/skills/skill-companyguide/LICENSE +21 -0
  255. package/skills/skill-companyguide/README.md +17 -0
  256. package/skills/skill-companyguide/install.sh +112 -0
  257. package/skills/skill-companyguide/package.json +31 -0
  258. package/skills/skill-companyguide/src/auth.ts +49 -0
  259. package/skills/skill-companyguide/src/installer.ts +324 -0
  260. package/skills/skill-companyguide/src/skill-install.ts +205 -0
  261. package/skills/skill-competitor-ad-analyzer/CLAUDE.md +19 -0
  262. package/skills/skill-competitor-ad-analyzer/package.json +32 -0
  263. package/skills/skill-competitor-ad-analyzer/src/index.ts +350 -0
  264. package/skills/skill-competitor-ad-analyzer/tsconfig.json +14 -0
  265. package/skills/skill-compliance-copy-check/CLAUDE.md +19 -0
  266. package/skills/skill-compliance-copy-check/package.json +32 -0
  267. package/skills/skill-compliance-copy-check/src/index.ts +289 -0
  268. package/skills/skill-compliance-copy-check/tsconfig.json +14 -0
  269. package/skills/skill-compliance-report-pack/CLAUDE.md +19 -0
  270. package/skills/skill-compliance-report-pack/package.json +32 -0
  271. package/skills/skill-compliance-report-pack/src/index.ts +301 -0
  272. package/skills/skill-compliance-report-pack/tsconfig.json +14 -0
  273. package/skills/skill-compose-gmail/CLAUDE.md +19 -0
  274. package/skills/skill-compose-gmail/package.json +32 -0
  275. package/skills/skill-compose-gmail/src/index.ts +410 -0
  276. package/skills/skill-compose-gmail/tsconfig.json +14 -0
  277. package/skills/skill-compress-video/CLAUDE.md +9 -0
  278. package/skills/skill-compress-video/SKILL.md +79 -0
  279. package/skills/skill-compress-video/package.json +30 -0
  280. package/skills/skill-compress-video/src/index.ts +473 -0
  281. package/skills/skill-compress-video/tsconfig.json +15 -0
  282. package/skills/skill-consolelog/.env.example +19 -0
  283. package/skills/skill-consolelog/CLAUDE.md +157 -0
  284. package/skills/skill-consolelog/LICENSE +21 -0
  285. package/skills/skill-consolelog/README.md +239 -0
  286. package/skills/skill-consolelog/data/.gitkeep +0 -0
  287. package/skills/skill-consolelog/exports/products-2025-12-14T13-50-53-041Z.csv +16 -0
  288. package/skills/skill-consolelog/exports/products-2025-12-14T13-50-53-041Z.json +227 -0
  289. package/skills/skill-consolelog/package.json +47 -0
  290. package/skills/skill-consolelog/scripts/migrate.ts +26 -0
  291. package/skills/skill-consolelog/scripts/seed.ts +48 -0
  292. package/skills/skill-consolelog/src/db/index.ts +44 -0
  293. package/skills/skill-consolelog/src/db/queries.ts +348 -0
  294. package/skills/skill-consolelog/src/db/schema.ts +93 -0
  295. package/skills/skill-consolelog/src/lib/config.ts +110 -0
  296. package/skills/skill-consolelog/src/lib/installer.ts +294 -0
  297. package/skills/skill-consolelog/src/lib/monitor.ts +194 -0
  298. package/skills/skill-consolelog/src/lib/types.ts +189 -0
  299. package/skills/skill-consolelog/src/lib/watcher.ts +207 -0
  300. package/skills/skill-consolelog/src/server/index.ts +508 -0
  301. package/skills/skill-consolelog/storage/login-error.png +0 -0
  302. package/skills/skill-consolelog/storage/products-page.png +0 -0
  303. package/skills/skill-consolelog/tests/api.test.ts +154 -0
  304. package/skills/skill-consolelog/tests/config.test.ts +192 -0
  305. package/skills/skill-consolelog/tests/db.test.ts +447 -0
  306. package/skills/skill-consolelog/tests/installer.test.ts +155 -0
  307. package/skills/skill-consolelog/tsconfig.json +20 -0
  308. package/skills/skill-context7/LICENSE +21 -0
  309. package/skills/skill-context7/README.md +27 -0
  310. package/skills/skill-context7/SKILL.md +103 -0
  311. package/skills/skill-context7/install.sh +112 -0
  312. package/skills/skill-context7/package.json +31 -0
  313. package/skills/skill-context7/src/auth.ts +49 -0
  314. package/skills/skill-context7/src/installer.ts +324 -0
  315. package/skills/skill-context7/src/skill-install.ts +174 -0
  316. package/skills/skill-contract-plainlanguage/CLAUDE.md +19 -0
  317. package/skills/skill-contract-plainlanguage/package.json +32 -0
  318. package/skills/skill-contract-plainlanguage/src/index.ts +294 -0
  319. package/skills/skill-contract-plainlanguage/tsconfig.json +14 -0
  320. package/skills/skill-convert/.env.example +7 -0
  321. package/skills/skill-convert/LICENSE +21 -0
  322. package/skills/skill-convert/README.md +250 -0
  323. package/skills/skill-convert/SKILL.md +100 -0
  324. package/skills/skill-convert/install.sh +112 -0
  325. package/skills/skill-convert/package.json +41 -0
  326. package/skills/skill-convert/src/auth.ts +49 -0
  327. package/skills/skill-convert/src/converters/ai.ts +375 -0
  328. package/skills/skill-convert/src/converters/data.ts +339 -0
  329. package/skills/skill-convert/src/converters/document.ts +189 -0
  330. package/skills/skill-convert/src/converters/image.ts +227 -0
  331. package/skills/skill-convert/src/converters/index.ts +9 -0
  332. package/skills/skill-convert/src/converters/pdf.ts +255 -0
  333. package/skills/skill-convert/src/http-client.ts +128 -0
  334. package/skills/skill-convert/src/index-http.ts +111 -0
  335. package/skills/skill-convert/src/index-local.ts +569 -0
  336. package/skills/skill-convert/src/index.ts +111 -0
  337. package/skills/skill-convert/src/installer.ts +324 -0
  338. package/skills/skill-convert/src/skill-install.ts +205 -0
  339. package/skills/skill-convert/src/types.ts +192 -0
  340. package/skills/skill-convert/tsconfig.json +16 -0
  341. package/skills/skill-copytone-translator/CLAUDE.md +19 -0
  342. package/skills/skill-copytone-translator/package.json +32 -0
  343. package/skills/skill-copytone-translator/src/index.ts +295 -0
  344. package/skills/skill-copytone-translator/tsconfig.json +14 -0
  345. package/skills/skill-crawl/LICENSE +21 -0
  346. package/skills/skill-crawl/README.md +17 -0
  347. package/skills/skill-crawl/install.sh +112 -0
  348. package/skills/skill-crawl/package.json +31 -0
  349. package/skills/skill-crawl/src/auth.ts +49 -0
  350. package/skills/skill-crawl/src/installer.ts +324 -0
  351. package/skills/skill-crawl/src/skill-install.ts +205 -0
  352. package/skills/skill-create-blog-article/CLAUDE.md +19 -0
  353. package/skills/skill-create-blog-article/package.json +32 -0
  354. package/skills/skill-create-blog-article/src/index.ts +745 -0
  355. package/skills/skill-create-blog-article/tsconfig.json +14 -0
  356. package/skills/skill-create-ebook/CLAUDE.md +19 -0
  357. package/skills/skill-create-ebook/package.json +32 -0
  358. package/skills/skill-create-ebook/src/index.ts +637 -0
  359. package/skills/skill-create-ebook/tsconfig.json +14 -0
  360. package/skills/skill-crm-note-enhancer/CLAUDE.md +19 -0
  361. package/skills/skill-crm-note-enhancer/package.json +32 -0
  362. package/skills/skill-crm-note-enhancer/src/index.ts +317 -0
  363. package/skills/skill-crm-note-enhancer/tsconfig.json +14 -0
  364. package/skills/skill-csv-transformer/CLAUDE.md +19 -0
  365. package/skills/skill-csv-transformer/package.json +32 -0
  366. package/skills/skill-csv-transformer/src/index.ts +81 -0
  367. package/skills/skill-csv-transformer/tsconfig.json +14 -0
  368. package/skills/skill-customer-journey-mapper/CLAUDE.md +19 -0
  369. package/skills/skill-customer-journey-mapper/package.json +32 -0
  370. package/skills/skill-customer-journey-mapper/src/index.ts +312 -0
  371. package/skills/skill-customer-journey-mapper/tsconfig.json +14 -0
  372. package/skills/skill-dashboard-builder/CLAUDE.md +19 -0
  373. package/skills/skill-dashboard-builder/package.json +32 -0
  374. package/skills/skill-dashboard-builder/src/index.ts +150 -0
  375. package/skills/skill-dashboard-builder/tsconfig.json +14 -0
  376. package/skills/skill-dashboard-narrator/CLAUDE.md +19 -0
  377. package/skills/skill-dashboard-narrator/package.json +32 -0
  378. package/skills/skill-dashboard-narrator/src/index.ts +307 -0
  379. package/skills/skill-dashboard-narrator/tsconfig.json +14 -0
  380. package/skills/skill-data-anonymizer/CLAUDE.md +19 -0
  381. package/skills/skill-data-anonymizer/package.json +32 -0
  382. package/skills/skill-data-anonymizer/src/index.ts +183 -0
  383. package/skills/skill-data-anonymizer/tsconfig.json +14 -0
  384. package/skills/skill-database-explorer/CLAUDE.md +19 -0
  385. package/skills/skill-database-explorer/package.json +32 -0
  386. package/skills/skill-database-explorer/src/index.ts +95 -0
  387. package/skills/skill-database-explorer/tsconfig.json +14 -0
  388. package/skills/skill-dataset-health-check/CLAUDE.md +19 -0
  389. package/skills/skill-dataset-health-check/package.json +32 -0
  390. package/skills/skill-dataset-health-check/src/index.ts +323 -0
  391. package/skills/skill-dataset-health-check/tsconfig.json +14 -0
  392. package/skills/skill-debug/LICENSE +21 -0
  393. package/skills/skill-debug/README.md +17 -0
  394. package/skills/skill-debug/install.sh +112 -0
  395. package/skills/skill-debug/package.json +31 -0
  396. package/skills/skill-debug/src/auth.ts +49 -0
  397. package/skills/skill-debug/src/installer.ts +324 -0
  398. package/skills/skill-debug/src/skill-install.ts +205 -0
  399. package/skills/skill-decision-journal/CLAUDE.md +19 -0
  400. package/skills/skill-decision-journal/package.json +32 -0
  401. package/skills/skill-decision-journal/src/index.ts +313 -0
  402. package/skills/skill-decision-journal/tsconfig.json +14 -0
  403. package/skills/skill-deep-research/CLAUDE.md +19 -0
  404. package/skills/skill-deep-research/package.json +32 -0
  405. package/skills/skill-deep-research/src/index.ts +1149 -0
  406. package/skills/skill-deep-research/tsconfig.json +14 -0
  407. package/skills/skill-deepresearch/.env.example +9 -0
  408. package/skills/skill-deepresearch/CLAUDE.md +44 -0
  409. package/skills/skill-deepresearch/README.md +170 -0
  410. package/skills/skill-deepresearch/SKILL.md +50 -0
  411. package/skills/skill-deepresearch/package.json +49 -0
  412. package/skills/skill-deepresearch/src/agents/query-generator.ts +91 -0
  413. package/skills/skill-deepresearch/src/agents/synthesizer.ts +111 -0
  414. package/skills/skill-deepresearch/src/index.ts +224 -0
  415. package/skills/skill-deepresearch/src/research.ts +166 -0
  416. package/skills/skill-deepresearch/src/services/anthropic.ts +69 -0
  417. package/skills/skill-deepresearch/src/services/exa.ts +108 -0
  418. package/skills/skill-deepresearch/src/services/firecrawl.ts +88 -0
  419. package/skills/skill-deepresearch/src/services/openai.ts +81 -0
  420. package/skills/skill-deepresearch/src/types.ts +76 -0
  421. package/skills/skill-deepresearch/src/utils/file.ts +111 -0
  422. package/skills/skill-deepresearch/src/utils/logger.ts +84 -0
  423. package/skills/skill-deepresearch/tsconfig.json +27 -0
  424. package/skills/skill-delegation-brief-writer/CLAUDE.md +19 -0
  425. package/skills/skill-delegation-brief-writer/package.json +32 -0
  426. package/skills/skill-delegation-brief-writer/src/index.ts +314 -0
  427. package/skills/skill-delegation-brief-writer/tsconfig.json +14 -0
  428. package/skills/skill-deploy/LICENSE +21 -0
  429. package/skills/skill-deploy/README.md +382 -0
  430. package/skills/skill-deploy/SKILL.md +138 -0
  431. package/skills/skill-deploy/install.sh +112 -0
  432. package/skills/skill-deploy/package.json +22 -0
  433. package/skills/skill-deploy/src/auth.ts +49 -0
  434. package/skills/skill-deploy/src/deployer.ts +256 -0
  435. package/skills/skill-deploy/src/health.ts +103 -0
  436. package/skills/skill-deploy/src/hosts.ts +62 -0
  437. package/skills/skill-deploy/src/http-client.ts +128 -0
  438. package/skills/skill-deploy/src/index-http.ts +111 -0
  439. package/skills/skill-deploy/src/index-local.ts +365 -0
  440. package/skills/skill-deploy/src/index.ts +111 -0
  441. package/skills/skill-deploy/src/installer.ts +324 -0
  442. package/skills/skill-deploy/src/skill-install.ts +205 -0
  443. package/skills/skill-deploy/src/types.ts +56 -0
  444. package/skills/skill-deploy/tsconfig.json +17 -0
  445. package/skills/skill-destination-briefing/CLAUDE.md +19 -0
  446. package/skills/skill-destination-briefing/package.json +32 -0
  447. package/skills/skill-destination-briefing/src/index.ts +291 -0
  448. package/skills/skill-destination-briefing/tsconfig.json +14 -0
  449. package/skills/skill-diff-viewer/CLAUDE.md +19 -0
  450. package/skills/skill-diff-viewer/package.json +32 -0
  451. package/skills/skill-diff-viewer/src/index.ts +164 -0
  452. package/skills/skill-diff-viewer/tsconfig.json +14 -0
  453. package/skills/skill-dns-manager/CLAUDE.md +19 -0
  454. package/skills/skill-dns-manager/package.json +32 -0
  455. package/skills/skill-dns-manager/src/index.ts +92 -0
  456. package/skills/skill-dns-manager/tsconfig.json +14 -0
  457. package/skills/skill-domainpurchase/.env.example +7 -0
  458. package/skills/skill-domainpurchase/LICENSE +21 -0
  459. package/skills/skill-domainpurchase/package.json +42 -0
  460. package/skills/skill-domainpurchase/src/lib/api-client.ts +571 -0
  461. package/skills/skill-domainpurchase/src/lib/config.ts +209 -0
  462. package/skills/skill-domainpurchase/src/lib/installer.ts +165 -0
  463. package/skills/skill-domainpurchase/src/server/index.ts +332 -0
  464. package/skills/skill-domainpurchase/tsconfig.json +22 -0
  465. package/skills/skill-domainsearch/.env.example +7 -0
  466. package/skills/skill-domainsearch/LICENSE +21 -0
  467. package/skills/skill-domainsearch/package.json +41 -0
  468. package/skills/skill-domainsearch/src/lib/api-client.ts +181 -0
  469. package/skills/skill-domainsearch/src/lib/config.ts +72 -0
  470. package/skills/skill-domainsearch/src/lib/installer.ts +164 -0
  471. package/skills/skill-domainsearch/src/server/index.ts +229 -0
  472. package/skills/skill-domainsearch/tsconfig.json +22 -0
  473. package/skills/skill-download/LICENSE +21 -0
  474. package/skills/skill-download/README.md +17 -0
  475. package/skills/skill-download/install.sh +112 -0
  476. package/skills/skill-download/package.json +31 -0
  477. package/skills/skill-download/src/auth.ts +49 -0
  478. package/skills/skill-download/src/installer.ts +324 -0
  479. package/skills/skill-download/src/skill-install.ts +205 -0
  480. package/skills/skill-e2bswarm/README.md +135 -0
  481. package/skills/skill-e2bswarm/SKILL.md +118 -0
  482. package/skills/skill-e2bswarm/examples/tasks-example.json +38 -0
  483. package/skills/skill-e2bswarm/package.json +65 -0
  484. package/skills/skill-e2bswarm/src/commands/collect.ts +135 -0
  485. package/skills/skill-e2bswarm/src/commands/install.ts +164 -0
  486. package/skills/skill-e2bswarm/src/commands/kill.ts +62 -0
  487. package/skills/skill-e2bswarm/src/commands/spawn.ts +134 -0
  488. package/skills/skill-e2bswarm/src/commands/status.ts +90 -0
  489. package/skills/skill-e2bswarm/src/commands/sync.ts +208 -0
  490. package/skills/skill-e2bswarm/src/index.ts +121 -0
  491. package/skills/skill-e2bswarm/src/lib/config.ts +78 -0
  492. package/skills/skill-e2bswarm/src/lib/e2b.ts +490 -0
  493. package/skills/skill-e2bswarm/src/lib/github.ts +253 -0
  494. package/skills/skill-e2bswarm/src/lib/logger.ts +41 -0
  495. package/skills/skill-e2bswarm/src/lib/paths.ts +75 -0
  496. package/skills/skill-e2bswarm/src/lib/tasks.ts +320 -0
  497. package/skills/skill-e2bswarm/src/types/index.ts +107 -0
  498. package/skills/skill-e2bswarm/templates/codebox/e2b.Dockerfile +38 -0
  499. package/skills/skill-e2bswarm/templates/codebox/e2b.toml +3 -0
  500. package/skills/skill-e2bswarm/templates/setup.sh +21 -0
  501. package/skills/skill-e2bswarm/tsconfig.json +20 -0
  502. package/skills/skill-educational-resource-finder/CLAUDE.md +19 -0
  503. package/skills/skill-educational-resource-finder/package.json +32 -0
  504. package/skills/skill-educational-resource-finder/src/index.ts +289 -0
  505. package/skills/skill-educational-resource-finder/tsconfig.json +14 -0
  506. package/skills/skill-email-campaign/CLAUDE.md +19 -0
  507. package/skills/skill-email-campaign/package.json +32 -0
  508. package/skills/skill-email-campaign/src/index.ts +339 -0
  509. package/skills/skill-email-campaign/tsconfig.json +14 -0
  510. package/skills/skill-emoji/.env.example +7 -0
  511. package/skills/skill-emoji/QUICKSTART.md +52 -0
  512. package/skills/skill-emoji/README.md +175 -0
  513. package/skills/skill-emoji/SKILL.md +63 -0
  514. package/skills/skill-emoji/package.json +32 -0
  515. package/skills/skill-emoji/src/image-processor.ts +143 -0
  516. package/skills/skill-emoji/src/index.ts +282 -0
  517. package/skills/skill-emoji/src/prompt-generator.ts +181 -0
  518. package/skills/skill-emoji/src/providers/gemini.ts +58 -0
  519. package/skills/skill-emoji/src/providers/openai.ts +55 -0
  520. package/skills/skill-emoji/src/types.ts +72 -0
  521. package/skills/skill-emoji/tsconfig.json +18 -0
  522. package/skills/skill-exa/LICENSE +21 -0
  523. package/skills/skill-exa/README.md +26 -0
  524. package/skills/skill-exa/SKILL.md +92 -0
  525. package/skills/skill-exa/install.sh +112 -0
  526. package/skills/skill-exa/package.json +31 -0
  527. package/skills/skill-exa/src/auth.ts +49 -0
  528. package/skills/skill-exa/src/installer.ts +324 -0
  529. package/skills/skill-exa/src/skill-install.ts +174 -0
  530. package/skills/skill-exam-readiness-check/CLAUDE.md +19 -0
  531. package/skills/skill-exam-readiness-check/package.json +32 -0
  532. package/skills/skill-exam-readiness-check/src/index.ts +289 -0
  533. package/skills/skill-exam-readiness-check/tsconfig.json +14 -0
  534. package/skills/skill-experiment-power-calculator/CLAUDE.md +19 -0
  535. package/skills/skill-experiment-power-calculator/package.json +32 -0
  536. package/skills/skill-experiment-power-calculator/src/index.ts +86 -0
  537. package/skills/skill-experiment-power-calculator/tsconfig.json +14 -0
  538. package/skills/skill-extract/.env.example +3 -0
  539. package/skills/skill-extract/LICENSE +21 -0
  540. package/skills/skill-extract/README.md +61 -0
  541. package/skills/skill-extract/SKILL.md +91 -0
  542. package/skills/skill-extract/install.sh +112 -0
  543. package/skills/skill-extract/package.json +40 -0
  544. package/skills/skill-extract/src/auth.ts +49 -0
  545. package/skills/skill-extract/src/extractors/image.ts +42 -0
  546. package/skills/skill-extract/src/extractors/pdf.ts +96 -0
  547. package/skills/skill-extract/src/http-client.ts +128 -0
  548. package/skills/skill-extract/src/index-http.ts +111 -0
  549. package/skills/skill-extract/src/index-local.ts +257 -0
  550. package/skills/skill-extract/src/index.ts +111 -0
  551. package/skills/skill-extract/src/installer.ts +324 -0
  552. package/skills/skill-extract/src/providers/openai.ts +222 -0
  553. package/skills/skill-extract/src/skill-install.ts +205 -0
  554. package/skills/skill-extract/src/types.ts +61 -0
  555. package/skills/skill-extract/tsconfig.json +17 -0
  556. package/skills/skill-extract-audio/CLAUDE.md +9 -0
  557. package/skills/skill-extract-audio/SKILL.md +73 -0
  558. package/skills/skill-extract-audio/package.json +30 -0
  559. package/skills/skill-extract-audio/src/index.ts +323 -0
  560. package/skills/skill-extract-audio/tsconfig.json +15 -0
  561. package/skills/skill-extract-frames/CLAUDE.md +19 -0
  562. package/skills/skill-extract-frames/package.json +32 -0
  563. package/skills/skill-extract-frames/src/index.ts +616 -0
  564. package/skills/skill-extract-frames/tsconfig.json +14 -0
  565. package/skills/skill-extract-invoice/CLAUDE.md +19 -0
  566. package/skills/skill-extract-invoice/package.json +32 -0
  567. package/skills/skill-extract-invoice/src/index.ts +714 -0
  568. package/skills/skill-extract-invoice/tsconfig.json +14 -0
  569. package/skills/skill-family-activity-curator/CLAUDE.md +19 -0
  570. package/skills/skill-family-activity-curator/package.json +32 -0
  571. package/skills/skill-family-activity-curator/src/index.ts +293 -0
  572. package/skills/skill-family-activity-curator/tsconfig.json +14 -0
  573. package/skills/skill-faq-packager/CLAUDE.md +19 -0
  574. package/skills/skill-faq-packager/package.json +32 -0
  575. package/skills/skill-faq-packager/src/index.ts +292 -0
  576. package/skills/skill-faq-packager/tsconfig.json +14 -0
  577. package/skills/skill-feedback-survey-designer/CLAUDE.md +19 -0
  578. package/skills/skill-feedback-survey-designer/package.json +32 -0
  579. package/skills/skill-feedback-survey-designer/src/index.ts +299 -0
  580. package/skills/skill-feedback-survey-designer/tsconfig.json +14 -0
  581. package/skills/skill-field-trip-planner/CLAUDE.md +19 -0
  582. package/skills/skill-field-trip-planner/package.json +32 -0
  583. package/skills/skill-field-trip-planner/src/index.ts +289 -0
  584. package/skills/skill-field-trip-planner/tsconfig.json +14 -0
  585. package/skills/skill-file-organizer/CLAUDE.md +19 -0
  586. package/skills/skill-file-organizer/package.json +32 -0
  587. package/skills/skill-file-organizer/src/index.ts +91 -0
  588. package/skills/skill-file-organizer/tsconfig.json +14 -0
  589. package/skills/skill-filesearch/LICENSE +21 -0
  590. package/skills/skill-filesearch/README.md +17 -0
  591. package/skills/skill-filesearch/install.sh +112 -0
  592. package/skills/skill-filesearch/package.json +31 -0
  593. package/skills/skill-filesearch/src/auth.ts +49 -0
  594. package/skills/skill-filesearch/src/installer.ts +324 -0
  595. package/skills/skill-filesearch/src/skill-install.ts +205 -0
  596. package/skills/skill-fill/LICENSE +21 -0
  597. package/skills/skill-fill/README.md +17 -0
  598. package/skills/skill-fill/install.sh +112 -0
  599. package/skills/skill-fill/package.json +31 -0
  600. package/skills/skill-fill/src/auth.ts +49 -0
  601. package/skills/skill-fill/src/installer.ts +324 -0
  602. package/skills/skill-fill/src/skill-install.ts +205 -0
  603. package/skills/skill-folder-tree/CLAUDE.md +19 -0
  604. package/skills/skill-folder-tree/package.json +32 -0
  605. package/skills/skill-folder-tree/src/index.ts +568 -0
  606. package/skills/skill-folder-tree/tsconfig.json +14 -0
  607. package/skills/skill-forecast-scenario-lab/CLAUDE.md +19 -0
  608. package/skills/skill-forecast-scenario-lab/package.json +32 -0
  609. package/skills/skill-forecast-scenario-lab/src/index.ts +314 -0
  610. package/skills/skill-forecast-scenario-lab/tsconfig.json +14 -0
  611. package/skills/skill-form-filler/CLAUDE.md +19 -0
  612. package/skills/skill-form-filler/package.json +32 -0
  613. package/skills/skill-form-filler/src/index.ts +81 -0
  614. package/skills/skill-form-filler/tsconfig.json +14 -0
  615. package/skills/skill-generate-api-client/CLAUDE.md +19 -0
  616. package/skills/skill-generate-api-client/package.json +32 -0
  617. package/skills/skill-generate-api-client/src/index.ts +866 -0
  618. package/skills/skill-generate-api-client/tsconfig.json +14 -0
  619. package/skills/skill-generate-audio/CLAUDE.md +3 -0
  620. package/skills/skill-generate-audio/SKILL.md +53 -0
  621. package/skills/skill-generate-audio/package.json +30 -0
  622. package/skills/skill-generate-audio/src/index.ts +656 -0
  623. package/skills/skill-generate-audio/tsconfig.json +18 -0
  624. package/skills/skill-generate-book-cover/CLAUDE.md +19 -0
  625. package/skills/skill-generate-book-cover/package.json +32 -0
  626. package/skills/skill-generate-book-cover/src/index.ts +694 -0
  627. package/skills/skill-generate-book-cover/tsconfig.json +14 -0
  628. package/skills/skill-generate-chart/CLAUDE.md +19 -0
  629. package/skills/skill-generate-chart/package.json +32 -0
  630. package/skills/skill-generate-chart/src/index.ts +510 -0
  631. package/skills/skill-generate-chart/tsconfig.json +14 -0
  632. package/skills/skill-generate-diagram/CLAUDE.md +19 -0
  633. package/skills/skill-generate-diagram/package.json +32 -0
  634. package/skills/skill-generate-diagram/src/index.ts +514 -0
  635. package/skills/skill-generate-diagram/tsconfig.json +14 -0
  636. package/skills/skill-generate-dockerfile/CLAUDE.md +19 -0
  637. package/skills/skill-generate-dockerfile/package.json +32 -0
  638. package/skills/skill-generate-dockerfile/src/index.ts +859 -0
  639. package/skills/skill-generate-dockerfile/tsconfig.json +14 -0
  640. package/skills/skill-generate-documentation/CLAUDE.md +19 -0
  641. package/skills/skill-generate-documentation/package.json +32 -0
  642. package/skills/skill-generate-documentation/src/index.ts +805 -0
  643. package/skills/skill-generate-documentation/tsconfig.json +14 -0
  644. package/skills/skill-generate-docx/CLAUDE.md +19 -0
  645. package/skills/skill-generate-docx/SKILL.md +295 -0
  646. package/skills/skill-generate-docx/package.json +21 -0
  647. package/skills/skill-generate-docx/src/index.ts +751 -0
  648. package/skills/skill-generate-docx/tsconfig.json +16 -0
  649. package/skills/skill-generate-env/CLAUDE.md +19 -0
  650. package/skills/skill-generate-env/package.json +32 -0
  651. package/skills/skill-generate-env/src/index.ts +720 -0
  652. package/skills/skill-generate-env/tsconfig.json +14 -0
  653. package/skills/skill-generate-excel/CLAUDE.md +19 -0
  654. package/skills/skill-generate-excel/package.json +32 -0
  655. package/skills/skill-generate-excel/src/index.ts +617 -0
  656. package/skills/skill-generate-excel/tsconfig.json +14 -0
  657. package/skills/skill-generate-favicon/CLAUDE.md +19 -0
  658. package/skills/skill-generate-favicon/package.json +32 -0
  659. package/skills/skill-generate-favicon/src/index.ts +421 -0
  660. package/skills/skill-generate-favicon/tsconfig.json +14 -0
  661. package/skills/skill-generate-mock-data/CLAUDE.md +19 -0
  662. package/skills/skill-generate-mock-data/package.json +32 -0
  663. package/skills/skill-generate-mock-data/src/index.ts +902 -0
  664. package/skills/skill-generate-mock-data/tsconfig.json +14 -0
  665. package/skills/skill-generate-pdf/CLAUDE.md +19 -0
  666. package/skills/skill-generate-pdf/SKILL.md +86 -0
  667. package/skills/skill-generate-pdf/package.json +21 -0
  668. package/skills/skill-generate-pdf/src/index.ts +750 -0
  669. package/skills/skill-generate-pdf/tsconfig.json +16 -0
  670. package/skills/skill-generate-pr-description/CLAUDE.md +19 -0
  671. package/skills/skill-generate-pr-description/package.json +32 -0
  672. package/skills/skill-generate-pr-description/src/index.ts +807 -0
  673. package/skills/skill-generate-pr-description/tsconfig.json +14 -0
  674. package/skills/skill-generate-presentation/CLAUDE.md +19 -0
  675. package/skills/skill-generate-presentation/package.json +32 -0
  676. package/skills/skill-generate-presentation/src/index.ts +792 -0
  677. package/skills/skill-generate-presentation/tsconfig.json +14 -0
  678. package/skills/skill-generate-qrcode/CLAUDE.md +19 -0
  679. package/skills/skill-generate-qrcode/package.json +32 -0
  680. package/skills/skill-generate-qrcode/src/index.ts +584 -0
  681. package/skills/skill-generate-qrcode/tsconfig.json +14 -0
  682. package/skills/skill-generate-readme/CLAUDE.md +19 -0
  683. package/skills/skill-generate-readme/package.json +32 -0
  684. package/skills/skill-generate-readme/src/index.ts +867 -0
  685. package/skills/skill-generate-readme/tsconfig.json +14 -0
  686. package/skills/skill-generate-regex/CLAUDE.md +19 -0
  687. package/skills/skill-generate-regex/package.json +32 -0
  688. package/skills/skill-generate-regex/src/index.ts +669 -0
  689. package/skills/skill-generate-regex/tsconfig.json +14 -0
  690. package/skills/skill-generate-resume/CLAUDE.md +19 -0
  691. package/skills/skill-generate-resume/package.json +32 -0
  692. package/skills/skill-generate-resume/src/index.ts +1082 -0
  693. package/skills/skill-generate-resume/tsconfig.json +14 -0
  694. package/skills/skill-generate-sitemap/CLAUDE.md +19 -0
  695. package/skills/skill-generate-sitemap/package.json +32 -0
  696. package/skills/skill-generate-sitemap/src/index.ts +626 -0
  697. package/skills/skill-generate-sitemap/tsconfig.json +14 -0
  698. package/skills/skill-generate-slides/CLAUDE.md +19 -0
  699. package/skills/skill-generate-slides/package.json +32 -0
  700. package/skills/skill-generate-slides/src/ai.ts +140 -0
  701. package/skills/skill-generate-slides/src/cli.ts +161 -0
  702. package/skills/skill-generate-slides/src/export.ts +65 -0
  703. package/skills/skill-generate-slides/src/index.ts +1417 -0
  704. package/skills/skill-generate-slides/src/layout.ts +31 -0
  705. package/skills/skill-generate-slides/src/parse.ts +282 -0
  706. package/skills/skill-generate-slides/src/render.ts +711 -0
  707. package/skills/skill-generate-slides/tsconfig.json +14 -0
  708. package/skills/skill-generate-social-posts/CLAUDE.md +19 -0
  709. package/skills/skill-generate-social-posts/package.json +32 -0
  710. package/skills/skill-generate-social-posts/src/index.ts +768 -0
  711. package/skills/skill-generate-social-posts/tsconfig.json +14 -0
  712. package/skills/skill-generate-sql/CLAUDE.md +19 -0
  713. package/skills/skill-generate-sql/package.json +32 -0
  714. package/skills/skill-generate-sql/src/index.ts +636 -0
  715. package/skills/skill-generate-sql/tsconfig.json +14 -0
  716. package/skills/skill-get-api-docs/CLAUDE.md +19 -0
  717. package/skills/skill-get-api-docs/package.json +32 -0
  718. package/skills/skill-get-api-docs/src/index.ts +1176 -0
  719. package/skills/skill-get-api-docs/tsconfig.json +14 -0
  720. package/skills/skill-gif-maker/CLAUDE.md +19 -0
  721. package/skills/skill-gif-maker/package.json +32 -0
  722. package/skills/skill-gif-maker/src/index.ts +600 -0
  723. package/skills/skill-gif-maker/tsconfig.json +14 -0
  724. package/skills/skill-github-manager/CLAUDE.md +19 -0
  725. package/skills/skill-github-manager/package.json +32 -0
  726. package/skills/skill-github-manager/src/index.ts +101 -0
  727. package/skills/skill-github-manager/tsconfig.json +14 -0
  728. package/skills/skill-goal-quarterly-roadmap/CLAUDE.md +19 -0
  729. package/skills/skill-goal-quarterly-roadmap/package.json +32 -0
  730. package/skills/skill-goal-quarterly-roadmap/src/index.ts +305 -0
  731. package/skills/skill-goal-quarterly-roadmap/tsconfig.json +14 -0
  732. package/skills/skill-googledrive/LICENSE +21 -0
  733. package/skills/skill-googledrive/README.md +27 -0
  734. package/skills/skill-googledrive/SKILL.md +140 -0
  735. package/skills/skill-googledrive/install.sh +112 -0
  736. package/skills/skill-googledrive/package.json +31 -0
  737. package/skills/skill-googledrive/src/auth.ts +49 -0
  738. package/skills/skill-googledrive/src/installer.ts +324 -0
  739. package/skills/skill-googledrive/src/skill-install.ts +174 -0
  740. package/skills/skill-grant-application-drafter/CLAUDE.md +19 -0
  741. package/skills/skill-grant-application-drafter/package.json +32 -0
  742. package/skills/skill-grant-application-drafter/src/index.ts +309 -0
  743. package/skills/skill-grant-application-drafter/tsconfig.json +14 -0
  744. package/skills/skill-grant-compliance-scanner/CLAUDE.md +19 -0
  745. package/skills/skill-grant-compliance-scanner/package.json +32 -0
  746. package/skills/skill-grant-compliance-scanner/src/index.ts +94 -0
  747. package/skills/skill-grant-compliance-scanner/tsconfig.json +14 -0
  748. package/skills/skill-grocery-basket-optimizer/CLAUDE.md +19 -0
  749. package/skills/skill-grocery-basket-optimizer/package.json +32 -0
  750. package/skills/skill-grocery-basket-optimizer/src/index.ts +304 -0
  751. package/skills/skill-grocery-basket-optimizer/tsconfig.json +14 -0
  752. package/skills/skill-guest-communication-suite/CLAUDE.md +19 -0
  753. package/skills/skill-guest-communication-suite/package.json +32 -0
  754. package/skills/skill-guest-communication-suite/src/index.ts +312 -0
  755. package/skills/skill-guest-communication-suite/tsconfig.json +14 -0
  756. package/skills/skill-habit-reflection-digest/CLAUDE.md +19 -0
  757. package/skills/skill-habit-reflection-digest/package.json +32 -0
  758. package/skills/skill-habit-reflection-digest/src/index.ts +308 -0
  759. package/skills/skill-habit-reflection-digest/tsconfig.json +14 -0
  760. package/skills/skill-highlight-reel-generator/CLAUDE.md +19 -0
  761. package/skills/skill-highlight-reel-generator/package.json +32 -0
  762. package/skills/skill-highlight-reel-generator/src/index.ts +267 -0
  763. package/skills/skill-highlight-reel-generator/tsconfig.json +14 -0
  764. package/skills/skill-homework-feedback-coach/CLAUDE.md +19 -0
  765. package/skills/skill-homework-feedback-coach/package.json +32 -0
  766. package/skills/skill-homework-feedback-coach/src/index.ts +316 -0
  767. package/skills/skill-homework-feedback-coach/tsconfig.json +14 -0
  768. package/skills/skill-hook/LICENSE +21 -0
  769. package/skills/skill-hook/README.md +74 -0
  770. package/skills/skill-hook/SKILL.md +85 -0
  771. package/skills/skill-hook/bunfig.toml +5 -0
  772. package/skills/skill-hook/package.json +34 -0
  773. package/skills/skill-hook/src/commands/create.ts +937 -0
  774. package/skills/skill-hook/src/commands/events.ts +37 -0
  775. package/skills/skill-hook/src/commands/validate.ts +117 -0
  776. package/skills/skill-hook/src/index.ts +118 -0
  777. package/skills/skill-hook/tsconfig.json +18 -0
  778. package/skills/skill-household-maintenance-mgr/CLAUDE.md +19 -0
  779. package/skills/skill-household-maintenance-mgr/package.json +32 -0
  780. package/skills/skill-household-maintenance-mgr/src/index.ts +293 -0
  781. package/skills/skill-household-maintenance-mgr/tsconfig.json +14 -0
  782. package/skills/skill-http-server/CLAUDE.md +19 -0
  783. package/skills/skill-http-server/package.json +32 -0
  784. package/skills/skill-http-server/src/index.ts +51 -0
  785. package/skills/skill-http-server/tsconfig.json +14 -0
  786. package/skills/skill-hubsearch/LICENSE +21 -0
  787. package/skills/skill-hubsearch/README.md +17 -0
  788. package/skills/skill-hubsearch/install.sh +112 -0
  789. package/skills/skill-hubsearch/package.json +31 -0
  790. package/skills/skill-hubsearch/src/auth.ts +49 -0
  791. package/skills/skill-hubsearch/src/installer.ts +324 -0
  792. package/skills/skill-hubsearch/src/skill-install.ts +205 -0
  793. package/skills/skill-image/.env.example +12 -0
  794. package/skills/skill-image/LICENSE +21 -0
  795. package/skills/skill-image/PROJECT_OVERVIEW.md +216 -0
  796. package/skills/skill-image/QUICKSTART.md +111 -0
  797. package/skills/skill-image/README.md +195 -0
  798. package/skills/skill-image/SKILL.md +56 -0
  799. package/skills/skill-image/examples/google-examples.sh +37 -0
  800. package/skills/skill-image/examples/openai-examples.sh +35 -0
  801. package/skills/skill-image/examples/xai-examples.sh +33 -0
  802. package/skills/skill-image/install.sh +112 -0
  803. package/skills/skill-image/package.json +36 -0
  804. package/skills/skill-image/src/auth.ts +49 -0
  805. package/skills/skill-image/src/http-client.ts +128 -0
  806. package/skills/skill-image/src/index-http.ts +111 -0
  807. package/skills/skill-image/src/index-local.ts +204 -0
  808. package/skills/skill-image/src/index.ts +111 -0
  809. package/skills/skill-image/src/installer.ts +324 -0
  810. package/skills/skill-image/src/providers/google.ts +79 -0
  811. package/skills/skill-image/src/providers/openai.ts +80 -0
  812. package/skills/skill-image/src/providers/xai.ts +73 -0
  813. package/skills/skill-image/src/skill-install.ts +205 -0
  814. package/skills/skill-image/src/types.ts +37 -0
  815. package/skills/skill-image/tsconfig.json +17 -0
  816. package/skills/skill-implementation/LICENSE +21 -0
  817. package/skills/skill-implementation/README.md +53 -0
  818. package/skills/skill-implementation/SKILL.md +57 -0
  819. package/skills/skill-implementation/bunfig.toml +5 -0
  820. package/skills/skill-implementation/package.json +34 -0
  821. package/skills/skill-implementation/src/commands/create.ts +187 -0
  822. package/skills/skill-implementation/src/index.ts +62 -0
  823. package/skills/skill-implementation/tsconfig.json +18 -0
  824. package/skills/skill-implementation-agent/CLAUDE.md +19 -0
  825. package/skills/skill-implementation-agent/package.json +32 -0
  826. package/skills/skill-implementation-agent/src/index.ts +1565 -0
  827. package/skills/skill-implementation-agent/tsconfig.json +14 -0
  828. package/skills/skill-implementation-architecture/CLAUDE.md +19 -0
  829. package/skills/skill-implementation-architecture/package.json +32 -0
  830. package/skills/skill-implementation-architecture/src/index.ts +460 -0
  831. package/skills/skill-implementation-architecture/tsconfig.json +14 -0
  832. package/skills/skill-implementation-audit/CLAUDE.md +19 -0
  833. package/skills/skill-implementation-audit/package.json +32 -0
  834. package/skills/skill-implementation-audit/src/index.ts +502 -0
  835. package/skills/skill-implementation-audit/tsconfig.json +14 -0
  836. package/skills/skill-implementation-cost/CLAUDE.md +19 -0
  837. package/skills/skill-implementation-cost/package.json +32 -0
  838. package/skills/skill-implementation-cost/src/index.ts +873 -0
  839. package/skills/skill-implementation-cost/tsconfig.json +14 -0
  840. package/skills/skill-implementation-dispatch/CLAUDE.md +19 -0
  841. package/skills/skill-implementation-dispatch/package.json +32 -0
  842. package/skills/skill-implementation-dispatch/src/index.ts +390 -0
  843. package/skills/skill-implementation-dispatch/tsconfig.json +14 -0
  844. package/skills/skill-implementation-hook/CLAUDE.md +19 -0
  845. package/skills/skill-implementation-hook/package.json +32 -0
  846. package/skills/skill-implementation-hook/src/index.ts +787 -0
  847. package/skills/skill-implementation-hook/tsconfig.json +14 -0
  848. package/skills/skill-implementation-index/CLAUDE.md +19 -0
  849. package/skills/skill-implementation-index/package.json +32 -0
  850. package/skills/skill-implementation-index/src/index.ts +767 -0
  851. package/skills/skill-implementation-index/tsconfig.json +14 -0
  852. package/skills/skill-implementation-init/CLAUDE.md +19 -0
  853. package/skills/skill-implementation-init/package.json +32 -0
  854. package/skills/skill-implementation-init/src/index.ts +378 -0
  855. package/skills/skill-implementation-init/tsconfig.json +14 -0
  856. package/skills/skill-implementation-memento/CLAUDE.md +19 -0
  857. package/skills/skill-implementation-memento/package.json +32 -0
  858. package/skills/skill-implementation-memento/src/index.ts +442 -0
  859. package/skills/skill-implementation-memento/tsconfig.json +14 -0
  860. package/skills/skill-implementation-plan/CLAUDE.md +19 -0
  861. package/skills/skill-implementation-plan/package.json +32 -0
  862. package/skills/skill-implementation-plan/src/index.ts +520 -0
  863. package/skills/skill-implementation-plan/tsconfig.json +14 -0
  864. package/skills/skill-implementation-todo/CLAUDE.md +19 -0
  865. package/skills/skill-implementation-todo/package.json +32 -0
  866. package/skills/skill-implementation-todo/src/index.ts +429 -0
  867. package/skills/skill-implementation-todo/tsconfig.json +14 -0
  868. package/skills/skill-inbox-priority-planner/CLAUDE.md +19 -0
  869. package/skills/skill-inbox-priority-planner/package.json +32 -0
  870. package/skills/skill-inbox-priority-planner/src/index.ts +309 -0
  871. package/skills/skill-inbox-priority-planner/tsconfig.json +14 -0
  872. package/skills/skill-invoice/.env.example +3 -0
  873. package/skills/skill-invoice/CLAUDE.md +31 -0
  874. package/skills/skill-invoice/LICENSE +21 -0
  875. package/skills/skill-invoice/README.md +70 -0
  876. package/skills/skill-invoice/package.json +26 -0
  877. package/skills/skill-invoice/src/commands/companies.ts +202 -0
  878. package/skills/skill-invoice/src/commands/config.ts +132 -0
  879. package/skills/skill-invoice/src/commands/generate.ts +177 -0
  880. package/skills/skill-invoice/src/commands/invoices.ts +218 -0
  881. package/skills/skill-invoice/src/lib/api.ts +124 -0
  882. package/skills/skill-invoice/src/lib/storage.ts +171 -0
  883. package/skills/skill-invoice/src/types/index.ts +86 -0
  884. package/skills/skill-invoice/src/utils/logger.ts +33 -0
  885. package/skills/skill-invoice/src/utils/paths.ts +25 -0
  886. package/skills/skill-invoice/tsconfig.json +19 -0
  887. package/skills/skill-invoice-dispute-helper/CLAUDE.md +19 -0
  888. package/skills/skill-invoice-dispute-helper/package.json +32 -0
  889. package/skills/skill-invoice-dispute-helper/src/index.ts +304 -0
  890. package/skills/skill-invoice-dispute-helper/tsconfig.json +14 -0
  891. package/skills/skill-itinerary-architect/CLAUDE.md +19 -0
  892. package/skills/skill-itinerary-architect/package.json +32 -0
  893. package/skills/skill-itinerary-architect/src/index.ts +313 -0
  894. package/skills/skill-itinerary-architect/tsconfig.json +14 -0
  895. package/skills/skill-jingle-composer/CLAUDE.md +19 -0
  896. package/skills/skill-jingle-composer/package.json +32 -0
  897. package/skills/skill-jingle-composer/src/index.ts +250 -0
  898. package/skills/skill-jingle-composer/tsconfig.json +14 -0
  899. package/skills/skill-kpi-digest-generator/CLAUDE.md +19 -0
  900. package/skills/skill-kpi-digest-generator/package.json +32 -0
  901. package/skills/skill-kpi-digest-generator/src/index.ts +318 -0
  902. package/skills/skill-kpi-digest-generator/tsconfig.json +14 -0
  903. package/skills/skill-lab-notebook-formatter/CLAUDE.md +19 -0
  904. package/skills/skill-lab-notebook-formatter/package.json +32 -0
  905. package/skills/skill-lab-notebook-formatter/src/index.ts +88 -0
  906. package/skills/skill-lab-notebook-formatter/tsconfig.json +14 -0
  907. package/skills/skill-landing-page-copy/CLAUDE.md +19 -0
  908. package/skills/skill-landing-page-copy/package.json +32 -0
  909. package/skills/skill-landing-page-copy/src/index.ts +400 -0
  910. package/skills/skill-landing-page-copy/tsconfig.json +14 -0
  911. package/skills/skill-latex-table-generator/CLAUDE.md +19 -0
  912. package/skills/skill-latex-table-generator/package.json +32 -0
  913. package/skills/skill-latex-table-generator/src/index.ts +113 -0
  914. package/skills/skill-latex-table-generator/tsconfig.json +14 -0
  915. package/skills/skill-learning-style-profiler/CLAUDE.md +19 -0
  916. package/skills/skill-learning-style-profiler/package.json +32 -0
  917. package/skills/skill-learning-style-profiler/src/index.ts +291 -0
  918. package/skills/skill-learning-style-profiler/tsconfig.json +14 -0
  919. package/skills/skill-lesson-plan-customizer/CLAUDE.md +19 -0
  920. package/skills/skill-lesson-plan-customizer/package.json +32 -0
  921. package/skills/skill-lesson-plan-customizer/src/index.ts +303 -0
  922. package/skills/skill-lesson-plan-customizer/tsconfig.json +14 -0
  923. package/skills/skill-linear/LICENSE +21 -0
  924. package/skills/skill-linear/README.md +28 -0
  925. package/skills/skill-linear/SKILL.md +94 -0
  926. package/skills/skill-linear/install.sh +112 -0
  927. package/skills/skill-linear/package.json +31 -0
  928. package/skills/skill-linear/src/auth.ts +49 -0
  929. package/skills/skill-linear/src/installer.ts +324 -0
  930. package/skills/skill-linear/src/skill-install.ts +174 -0
  931. package/skills/skill-livestream-runofshow/CLAUDE.md +19 -0
  932. package/skills/skill-livestream-runofshow/package.json +32 -0
  933. package/skills/skill-livestream-runofshow/src/index.ts +299 -0
  934. package/skills/skill-livestream-runofshow/tsconfig.json +14 -0
  935. package/skills/skill-longform-structurer/CLAUDE.md +19 -0
  936. package/skills/skill-longform-structurer/package.json +32 -0
  937. package/skills/skill-longform-structurer/src/index.ts +293 -0
  938. package/skills/skill-longform-structurer/tsconfig.json +14 -0
  939. package/skills/skill-lorem-generator/CLAUDE.md +19 -0
  940. package/skills/skill-lorem-generator/package.json +32 -0
  941. package/skills/skill-lorem-generator/src/index.ts +46 -0
  942. package/skills/skill-lorem-generator/tsconfig.json +14 -0
  943. package/skills/skill-mail/LICENSE +21 -0
  944. package/skills/skill-mail/README.md +17 -0
  945. package/skills/skill-mail/install.sh +112 -0
  946. package/skills/skill-mail/package.json +31 -0
  947. package/skills/skill-mail/src/auth.ts +49 -0
  948. package/skills/skill-mail/src/installer.ts +324 -0
  949. package/skills/skill-mail/src/skill-install.ts +205 -0
  950. package/skills/skill-manage-gmail/CLAUDE.md +19 -0
  951. package/skills/skill-manage-gmail/package.json +32 -0
  952. package/skills/skill-manage-gmail/src/index.ts +504 -0
  953. package/skills/skill-manage-gmail/tsconfig.json +14 -0
  954. package/skills/skill-managehook/.env.example +16 -0
  955. package/skills/skill-managehook/CLAUDE.md +159 -0
  956. package/skills/skill-managehook/README.md +209 -0
  957. package/skills/skill-managehook/package.json +27 -0
  958. package/skills/skill-managehook/scripts/migrate.ts +57 -0
  959. package/skills/skill-managehook/scripts/seed.ts +58 -0
  960. package/skills/skill-managehook/src/db/index.ts +37 -0
  961. package/skills/skill-managehook/src/lib/api-client.ts +108 -0
  962. package/skills/skill-managehook/src/lib/config.ts +34 -0
  963. package/skills/skill-managehook/src/lib/installer.ts +140 -0
  964. package/skills/skill-managehook/src/lib/service-dir.ts +119 -0
  965. package/skills/skill-managehook/src/server/index.ts +108 -0
  966. package/skills/skill-managehook/tsconfig.json +21 -0
  967. package/skills/skill-managemcp/.env.example +16 -0
  968. package/skills/skill-managemcp/CLAUDE.md +159 -0
  969. package/skills/skill-managemcp/README.md +209 -0
  970. package/skills/skill-managemcp/package.json +27 -0
  971. package/skills/skill-managemcp/scripts/migrate.ts +57 -0
  972. package/skills/skill-managemcp/scripts/seed.ts +58 -0
  973. package/skills/skill-managemcp/src/db/index.ts +37 -0
  974. package/skills/skill-managemcp/src/lib/api-client.ts +108 -0
  975. package/skills/skill-managemcp/src/lib/config.ts +34 -0
  976. package/skills/skill-managemcp/src/lib/installer.ts +140 -0
  977. package/skills/skill-managemcp/src/lib/service-dir.ts +119 -0
  978. package/skills/skill-managemcp/src/server/index.ts +108 -0
  979. package/skills/skill-managemcp/tsconfig.json +21 -0
  980. package/skills/skill-manageskill/.env.example +16 -0
  981. package/skills/skill-manageskill/CLAUDE.md +159 -0
  982. package/skills/skill-manageskill/README.md +209 -0
  983. package/skills/skill-manageskill/package.json +27 -0
  984. package/skills/skill-manageskill/scripts/migrate.ts +57 -0
  985. package/skills/skill-manageskill/scripts/seed.ts +58 -0
  986. package/skills/skill-manageskill/src/db/index.ts +37 -0
  987. package/skills/skill-manageskill/src/lib/api-client.ts +108 -0
  988. package/skills/skill-manageskill/src/lib/config.ts +34 -0
  989. package/skills/skill-manageskill/src/lib/installer.ts +140 -0
  990. package/skills/skill-manageskill/src/lib/service-dir.ts +119 -0
  991. package/skills/skill-manageskill/src/server/index.ts +108 -0
  992. package/skills/skill-manageskill/tsconfig.json +21 -0
  993. package/skills/skill-markdown-validator/CLAUDE.md +19 -0
  994. package/skills/skill-markdown-validator/package.json +32 -0
  995. package/skills/skill-markdown-validator/src/index.ts +95 -0
  996. package/skills/skill-markdown-validator/tsconfig.json +14 -0
  997. package/skills/skill-mcp-builder/CLAUDE.md +19 -0
  998. package/skills/skill-mcp-builder/package.json +32 -0
  999. package/skills/skill-mcp-builder/src/index.ts +963 -0
  1000. package/skills/skill-mcp-builder/tsconfig.json +14 -0
  1001. package/skills/skill-meal-plan-designer/CLAUDE.md +19 -0
  1002. package/skills/skill-meal-plan-designer/package.json +32 -0
  1003. package/skills/skill-meal-plan-designer/src/index.ts +301 -0
  1004. package/skills/skill-meal-plan-designer/tsconfig.json +14 -0
  1005. package/skills/skill-meeting-insight-summarizer/CLAUDE.md +19 -0
  1006. package/skills/skill-meeting-insight-summarizer/package.json +32 -0
  1007. package/skills/skill-meeting-insight-summarizer/src/index.ts +316 -0
  1008. package/skills/skill-meeting-insight-summarizer/tsconfig.json +14 -0
  1009. package/skills/skill-merch-mockup-factory/CLAUDE.md +19 -0
  1010. package/skills/skill-merch-mockup-factory/package.json +32 -0
  1011. package/skills/skill-merch-mockup-factory/src/index.ts +296 -0
  1012. package/skills/skill-merch-mockup-factory/tsconfig.json +14 -0
  1013. package/skills/skill-merge-pdfs/CLAUDE.md +19 -0
  1014. package/skills/skill-merge-pdfs/package.json +32 -0
  1015. package/skills/skill-merge-pdfs/src/index.ts +427 -0
  1016. package/skills/skill-merge-pdfs/tsconfig.json +14 -0
  1017. package/skills/skill-message/LICENSE +21 -0
  1018. package/skills/skill-message/README.md +17 -0
  1019. package/skills/skill-message/install.sh +112 -0
  1020. package/skills/skill-message/package.json +31 -0
  1021. package/skills/skill-message/src/auth.ts +49 -0
  1022. package/skills/skill-message/src/installer.ts +324 -0
  1023. package/skills/skill-message/src/skill-install.ts +205 -0
  1024. package/skills/skill-microcopy-generator/CLAUDE.md +19 -0
  1025. package/skills/skill-microcopy-generator/package.json +32 -0
  1026. package/skills/skill-microcopy-generator/src/index.ts +303 -0
  1027. package/skills/skill-microcopy-generator/tsconfig.json +14 -0
  1028. package/skills/skill-mindfulness-prompt-cache/CLAUDE.md +19 -0
  1029. package/skills/skill-mindfulness-prompt-cache/package.json +32 -0
  1030. package/skills/skill-mindfulness-prompt-cache/src/index.ts +290 -0
  1031. package/skills/skill-mindfulness-prompt-cache/tsconfig.json +14 -0
  1032. package/skills/skill-newsletter-campaign-planner/CLAUDE.md +19 -0
  1033. package/skills/skill-newsletter-campaign-planner/package.json +32 -0
  1034. package/skills/skill-newsletter-campaign-planner/src/index.ts +252 -0
  1035. package/skills/skill-newsletter-campaign-planner/tsconfig.json +14 -0
  1036. package/skills/skill-notify/LICENSE +21 -0
  1037. package/skills/skill-notify/README.md +17 -0
  1038. package/skills/skill-notify/install.sh +112 -0
  1039. package/skills/skill-notify/package.json +31 -0
  1040. package/skills/skill-notify/src/auth.ts +49 -0
  1041. package/skills/skill-notify/src/installer.ts +324 -0
  1042. package/skills/skill-notify/src/skill-install.ts +205 -0
  1043. package/skills/skill-notion/LICENSE +21 -0
  1044. package/skills/skill-notion/README.md +27 -0
  1045. package/skills/skill-notion/SKILL.md +115 -0
  1046. package/skills/skill-notion/install.sh +112 -0
  1047. package/skills/skill-notion/package.json +31 -0
  1048. package/skills/skill-notion/src/auth.ts +49 -0
  1049. package/skills/skill-notion/src/installer.ts +324 -0
  1050. package/skills/skill-notion/src/skill-install.ts +174 -0
  1051. package/skills/skill-notion-manager/CLAUDE.md +19 -0
  1052. package/skills/skill-notion-manager/package.json +32 -0
  1053. package/skills/skill-notion-manager/src/index.ts +105 -0
  1054. package/skills/skill-notion-manager/tsconfig.json +14 -0
  1055. package/skills/skill-npmpublish/CLAUDE.md +33 -0
  1056. package/skills/skill-npmpublish/README.md +104 -0
  1057. package/skills/skill-npmpublish/SKILL.md +70 -0
  1058. package/skills/skill-npmpublish/package.json +46 -0
  1059. package/skills/skill-npmpublish/src/index.ts +330 -0
  1060. package/skills/skill-npmpublish/tsconfig.json +18 -0
  1061. package/skills/skill-onboarding-sequence-builder/CLAUDE.md +19 -0
  1062. package/skills/skill-onboarding-sequence-builder/package.json +32 -0
  1063. package/skills/skill-onboarding-sequence-builder/src/index.ts +321 -0
  1064. package/skills/skill-onboarding-sequence-builder/tsconfig.json +14 -0
  1065. package/skills/skill-onsite-ops-checklist/CLAUDE.md +19 -0
  1066. package/skills/skill-onsite-ops-checklist/package.json +32 -0
  1067. package/skills/skill-onsite-ops-checklist/src/index.ts +307 -0
  1068. package/skills/skill-onsite-ops-checklist/tsconfig.json +14 -0
  1069. package/skills/skill-outreach-cadence-designer/CLAUDE.md +19 -0
  1070. package/skills/skill-outreach-cadence-designer/package.json +32 -0
  1071. package/skills/skill-outreach-cadence-designer/src/index.ts +330 -0
  1072. package/skills/skill-outreach-cadence-designer/tsconfig.json +14 -0
  1073. package/skills/skill-packaging-concept-studio/CLAUDE.md +19 -0
  1074. package/skills/skill-packaging-concept-studio/package.json +32 -0
  1075. package/skills/skill-packaging-concept-studio/src/index.ts +296 -0
  1076. package/skills/skill-packaging-concept-studio/tsconfig.json +14 -0
  1077. package/skills/skill-packing-plan-pro/CLAUDE.md +19 -0
  1078. package/skills/skill-packing-plan-pro/package.json +32 -0
  1079. package/skills/skill-packing-plan-pro/src/index.ts +306 -0
  1080. package/skills/skill-packing-plan-pro/tsconfig.json +14 -0
  1081. package/skills/skill-parent-teacher-brief/CLAUDE.md +19 -0
  1082. package/skills/skill-parent-teacher-brief/package.json +32 -0
  1083. package/skills/skill-parent-teacher-brief/src/index.ts +290 -0
  1084. package/skills/skill-parent-teacher-brief/tsconfig.json +14 -0
  1085. package/skills/skill-parse-pdf/CLAUDE.md +19 -0
  1086. package/skills/skill-parse-pdf/package.json +32 -0
  1087. package/skills/skill-parse-pdf/src/index.ts +581 -0
  1088. package/skills/skill-parse-pdf/tsconfig.json +14 -0
  1089. package/skills/skill-partner-kit-assembler/CLAUDE.md +19 -0
  1090. package/skills/skill-partner-kit-assembler/package.json +32 -0
  1091. package/skills/skill-partner-kit-assembler/src/index.ts +313 -0
  1092. package/skills/skill-partner-kit-assembler/tsconfig.json +14 -0
  1093. package/skills/skill-payroll-change-prepper/CLAUDE.md +19 -0
  1094. package/skills/skill-payroll-change-prepper/package.json +32 -0
  1095. package/skills/skill-payroll-change-prepper/src/index.ts +304 -0
  1096. package/skills/skill-payroll-change-prepper/tsconfig.json +14 -0
  1097. package/skills/skill-persona-based-adwriter/CLAUDE.md +19 -0
  1098. package/skills/skill-persona-based-adwriter/package.json +32 -0
  1099. package/skills/skill-persona-based-adwriter/src/index.ts +266 -0
  1100. package/skills/skill-persona-based-adwriter/tsconfig.json +14 -0
  1101. package/skills/skill-persona-generator/CLAUDE.md +19 -0
  1102. package/skills/skill-persona-generator/package.json +32 -0
  1103. package/skills/skill-persona-generator/src/index.ts +443 -0
  1104. package/skills/skill-persona-generator/tsconfig.json +14 -0
  1105. package/skills/skill-personal-daily-ops/CLAUDE.md +19 -0
  1106. package/skills/skill-personal-daily-ops/package.json +32 -0
  1107. package/skills/skill-personal-daily-ops/src/index.ts +324 -0
  1108. package/skills/skill-personal-daily-ops/tsconfig.json +14 -0
  1109. package/skills/skill-pet-care-scheduler/CLAUDE.md +19 -0
  1110. package/skills/skill-pet-care-scheduler/package.json +32 -0
  1111. package/skills/skill-pet-care-scheduler/src/index.ts +298 -0
  1112. package/skills/skill-pet-care-scheduler/tsconfig.json +14 -0
  1113. package/skills/skill-playwright/LICENSE +21 -0
  1114. package/skills/skill-playwright/README.md +27 -0
  1115. package/skills/skill-playwright/SKILL.md +116 -0
  1116. package/skills/skill-playwright/install.sh +112 -0
  1117. package/skills/skill-playwright/package.json +31 -0
  1118. package/skills/skill-playwright/src/auth.ts +49 -0
  1119. package/skills/skill-playwright/src/installer.ts +324 -0
  1120. package/skills/skill-playwright/src/skill-install.ts +174 -0
  1121. package/skills/skill-podcast-show-notes/CLAUDE.md +19 -0
  1122. package/skills/skill-podcast-show-notes/package.json +32 -0
  1123. package/skills/skill-podcast-show-notes/src/index.ts +302 -0
  1124. package/skills/skill-podcast-show-notes/tsconfig.json +14 -0
  1125. package/skills/skill-presentation-theme-maker/CLAUDE.md +19 -0
  1126. package/skills/skill-presentation-theme-maker/package.json +32 -0
  1127. package/skills/skill-presentation-theme-maker/src/index.ts +292 -0
  1128. package/skills/skill-presentation-theme-maker/tsconfig.json +14 -0
  1129. package/skills/skill-press-release-drafter/CLAUDE.md +19 -0
  1130. package/skills/skill-press-release-drafter/package.json +32 -0
  1131. package/skills/skill-press-release-drafter/src/index.ts +291 -0
  1132. package/skills/skill-press-release-drafter/tsconfig.json +14 -0
  1133. package/skills/skill-print-collateral-designer/CLAUDE.md +19 -0
  1134. package/skills/skill-print-collateral-designer/package.json +32 -0
  1135. package/skills/skill-print-collateral-designer/src/index.ts +298 -0
  1136. package/skills/skill-print-collateral-designer/tsconfig.json +14 -0
  1137. package/skills/skill-procurement-scorecard/CLAUDE.md +19 -0
  1138. package/skills/skill-procurement-scorecard/package.json +32 -0
  1139. package/skills/skill-procurement-scorecard/src/index.ts +338 -0
  1140. package/skills/skill-procurement-scorecard/tsconfig.json +14 -0
  1141. package/skills/skill-product-demo-script/CLAUDE.md +19 -0
  1142. package/skills/skill-product-demo-script/package.json +32 -0
  1143. package/skills/skill-product-demo-script/src/index.ts +326 -0
  1144. package/skills/skill-product-demo-script/tsconfig.json +14 -0
  1145. package/skills/skill-product-mockup/CLAUDE.md +19 -0
  1146. package/skills/skill-product-mockup/package.json +32 -0
  1147. package/skills/skill-product-mockup/src/index.ts +290 -0
  1148. package/skills/skill-product-mockup/tsconfig.json +14 -0
  1149. package/skills/skill-project-retro-companion/CLAUDE.md +19 -0
  1150. package/skills/skill-project-retro-companion/package.json +32 -0
  1151. package/skills/skill-project-retro-companion/src/index.ts +279 -0
  1152. package/skills/skill-project-retro-companion/tsconfig.json +14 -0
  1153. package/skills/skill-projectbuild/LICENSE +21 -0
  1154. package/skills/skill-projectbuild/README.md +17 -0
  1155. package/skills/skill-projectbuild/install.sh +112 -0
  1156. package/skills/skill-projectbuild/package.json +31 -0
  1157. package/skills/skill-projectbuild/src/auth.ts +49 -0
  1158. package/skills/skill-projectbuild/src/installer.ts +324 -0
  1159. package/skills/skill-projectbuild/src/skill-install.ts +205 -0
  1160. package/skills/skill-proposal-redline-advisor/CLAUDE.md +19 -0
  1161. package/skills/skill-proposal-redline-advisor/package.json +32 -0
  1162. package/skills/skill-proposal-redline-advisor/src/index.ts +320 -0
  1163. package/skills/skill-proposal-redline-advisor/tsconfig.json +14 -0
  1164. package/skills/skill-read-gmail/CLAUDE.md +19 -0
  1165. package/skills/skill-read-gmail/package.json +32 -0
  1166. package/skills/skill-read-gmail/src/index.ts +343 -0
  1167. package/skills/skill-read-gmail/tsconfig.json +14 -0
  1168. package/skills/skill-regex-tester/CLAUDE.md +19 -0
  1169. package/skills/skill-regex-tester/package.json +32 -0
  1170. package/skills/skill-regex-tester/src/index.ts +183 -0
  1171. package/skills/skill-regex-tester/tsconfig.json +14 -0
  1172. package/skills/skill-remember/LICENSE +21 -0
  1173. package/skills/skill-remember/README.md +17 -0
  1174. package/skills/skill-remember/install.sh +112 -0
  1175. package/skills/skill-remember/package.json +31 -0
  1176. package/skills/skill-remember/src/auth.ts +49 -0
  1177. package/skills/skill-remember/src/installer.ts +324 -0
  1178. package/skills/skill-remember/src/skill-install.ts +205 -0
  1179. package/skills/skill-remove-background/CLAUDE.md +19 -0
  1180. package/skills/skill-remove-background/package.json +32 -0
  1181. package/skills/skill-remove-background/src/index.ts +405 -0
  1182. package/skills/skill-remove-background/tsconfig.json +14 -0
  1183. package/skills/skill-risk-disclosure-kit/CLAUDE.md +19 -0
  1184. package/skills/skill-risk-disclosure-kit/package.json +32 -0
  1185. package/skills/skill-risk-disclosure-kit/src/index.ts +307 -0
  1186. package/skills/skill-risk-disclosure-kit/tsconfig.json +14 -0
  1187. package/skills/skill-roi-comparison-tool/CLAUDE.md +19 -0
  1188. package/skills/skill-roi-comparison-tool/package.json +32 -0
  1189. package/skills/skill-roi-comparison-tool/src/index.ts +322 -0
  1190. package/skills/skill-roi-comparison-tool/tsconfig.json +14 -0
  1191. package/skills/skill-sales-call-recapper/CLAUDE.md +19 -0
  1192. package/skills/skill-sales-call-recapper/package.json +32 -0
  1193. package/skills/skill-sales-call-recapper/src/index.ts +280 -0
  1194. package/skills/skill-sales-call-recapper/tsconfig.json +14 -0
  1195. package/skills/skill-salescopy/.env.example +2 -0
  1196. package/skills/skill-salescopy/CLAUDE.md +23 -0
  1197. package/skills/skill-salescopy/LICENSE +21 -0
  1198. package/skills/skill-salescopy/README.md +72 -0
  1199. package/skills/skill-salescopy/package.json +27 -0
  1200. package/skills/skill-salescopy/src/commands/config.ts +115 -0
  1201. package/skills/skill-salescopy/src/commands/generate.ts +179 -0
  1202. package/skills/skill-salescopy/src/commands/sessions.ts +169 -0
  1203. package/skills/skill-salescopy/src/commands/templates.ts +99 -0
  1204. package/skills/skill-salescopy/src/lib/generator.ts +197 -0
  1205. package/skills/skill-salescopy/src/lib/storage.ts +191 -0
  1206. package/skills/skill-salescopy/src/types/index.ts +74 -0
  1207. package/skills/skill-salescopy/src/utils/logger.ts +33 -0
  1208. package/skills/skill-salescopy/src/utils/paths.ts +25 -0
  1209. package/skills/skill-salescopy/tsconfig.json +19 -0
  1210. package/skills/skill-scaffold-project/CLAUDE.md +19 -0
  1211. package/skills/skill-scaffold-project/package.json +32 -0
  1212. package/skills/skill-scaffold-project/src/index.ts +1223 -0
  1213. package/skills/skill-scaffold-project/tsconfig.json +14 -0
  1214. package/skills/skill-schedule/README.md +17 -0
  1215. package/skills/skill-schedule/install.sh +112 -0
  1216. package/skills/skill-schedule/src/auth.ts +49 -0
  1217. package/skills/skill-schedule/src/installer.ts +324 -0
  1218. package/skills/skill-schedule/src/skill-install.ts +205 -0
  1219. package/skills/skill-scholarship-tracker/CLAUDE.md +19 -0
  1220. package/skills/skill-scholarship-tracker/package.json +32 -0
  1221. package/skills/skill-scholarship-tracker/src/index.ts +298 -0
  1222. package/skills/skill-scholarship-tracker/tsconfig.json +14 -0
  1223. package/skills/skill-scientific-figure-check/CLAUDE.md +19 -0
  1224. package/skills/skill-scientific-figure-check/package.json +32 -0
  1225. package/skills/skill-scientific-figure-check/src/index.ts +83 -0
  1226. package/skills/skill-scientific-figure-check/tsconfig.json +14 -0
  1227. package/skills/skill-search/LICENSE +21 -0
  1228. package/skills/skill-search/README.md +17 -0
  1229. package/skills/skill-search/install.sh +112 -0
  1230. package/skills/skill-search/package.json +31 -0
  1231. package/skills/skill-search/src/auth.ts +49 -0
  1232. package/skills/skill-search/src/installer.ts +324 -0
  1233. package/skills/skill-search/src/skill-install.ts +205 -0
  1234. package/skills/skill-seating-chart-maker/CLAUDE.md +19 -0
  1235. package/skills/skill-seating-chart-maker/package.json +32 -0
  1236. package/skills/skill-seating-chart-maker/src/index.ts +312 -0
  1237. package/skills/skill-seating-chart-maker/tsconfig.json +14 -0
  1238. package/skills/skill-security-audit/CLAUDE.md +19 -0
  1239. package/skills/skill-security-audit/package.json +32 -0
  1240. package/skills/skill-security-audit/src/index.ts +126 -0
  1241. package/skills/skill-security-audit/tsconfig.json +14 -0
  1242. package/skills/skill-seo-brief-builder/CLAUDE.md +19 -0
  1243. package/skills/skill-seo-brief-builder/package.json +32 -0
  1244. package/skills/skill-seo-brief-builder/src/index.ts +288 -0
  1245. package/skills/skill-seo-brief-builder/tsconfig.json +14 -0
  1246. package/skills/skill-shadcn/LICENSE +21 -0
  1247. package/skills/skill-shadcn/README.md +27 -0
  1248. package/skills/skill-shadcn/SKILL.md +113 -0
  1249. package/skills/skill-shadcn/install.sh +112 -0
  1250. package/skills/skill-shadcn/package.json +31 -0
  1251. package/skills/skill-shadcn/src/auth.ts +49 -0
  1252. package/skills/skill-shadcn/src/installer.ts +324 -0
  1253. package/skills/skill-shadcn/src/skill-install.ts +174 -0
  1254. package/skills/skill-shadcn-theme/CLAUDE.md +19 -0
  1255. package/skills/skill-shadcn-theme/package.json +32 -0
  1256. package/skills/skill-shadcn-theme/src/index.ts +16 -0
  1257. package/skills/skill-shadcn-theme/tsconfig.json +14 -0
  1258. package/skills/skill-slack-assistant/CLAUDE.md +19 -0
  1259. package/skills/skill-slack-assistant/package.json +32 -0
  1260. package/skills/skill-slack-assistant/src/index.ts +79 -0
  1261. package/skills/skill-slack-assistant/tsconfig.json +14 -0
  1262. package/skills/skill-sleep-routine-analyzer/CLAUDE.md +19 -0
  1263. package/skills/skill-sleep-routine-analyzer/package.json +32 -0
  1264. package/skills/skill-sleep-routine-analyzer/src/index.ts +293 -0
  1265. package/skills/skill-sleep-routine-analyzer/tsconfig.json +14 -0
  1266. package/skills/skill-sms/README.md +71 -0
  1267. package/skills/skill-sms/package.json +38 -0
  1268. package/skills/skill-sms/scripts/buy-number.ts +63 -0
  1269. package/skills/skill-sms/scripts/test-send.ts +67 -0
  1270. package/skills/skill-sms/src/index.ts +320 -0
  1271. package/skills/skill-sms/src/server.ts +351 -0
  1272. package/skills/skill-sms/src/sse-server.ts +279 -0
  1273. package/skills/skill-sms/tsconfig.json +21 -0
  1274. package/skills/skill-social-media-kit/CLAUDE.md +19 -0
  1275. package/skills/skill-social-media-kit/package.json +32 -0
  1276. package/skills/skill-social-media-kit/src/index.ts +281 -0
  1277. package/skills/skill-social-media-kit/tsconfig.json +14 -0
  1278. package/skills/skill-social-template-kit/CLAUDE.md +19 -0
  1279. package/skills/skill-social-template-kit/package.json +32 -0
  1280. package/skills/skill-social-template-kit/src/index.ts +303 -0
  1281. package/skills/skill-social-template-kit/tsconfig.json +14 -0
  1282. package/skills/skill-split-pdf/CLAUDE.md +19 -0
  1283. package/skills/skill-split-pdf/package.json +32 -0
  1284. package/skills/skill-split-pdf/src/index.ts +301 -0
  1285. package/skills/skill-split-pdf/tsconfig.json +14 -0
  1286. package/skills/skill-sponsorship-proposal-lab/CLAUDE.md +19 -0
  1287. package/skills/skill-sponsorship-proposal-lab/package.json +32 -0
  1288. package/skills/skill-sponsorship-proposal-lab/src/index.ts +300 -0
  1289. package/skills/skill-sponsorship-proposal-lab/tsconfig.json +14 -0
  1290. package/skills/skill-spreadsheet-cleanroom/CLAUDE.md +19 -0
  1291. package/skills/skill-spreadsheet-cleanroom/package.json +32 -0
  1292. package/skills/skill-spreadsheet-cleanroom/src/index.ts +331 -0
  1293. package/skills/skill-spreadsheet-cleanroom/tsconfig.json +14 -0
  1294. package/skills/skill-statistical-test-selector/CLAUDE.md +19 -0
  1295. package/skills/skill-statistical-test-selector/package.json +32 -0
  1296. package/skills/skill-statistical-test-selector/src/index.ts +75 -0
  1297. package/skills/skill-statistical-test-selector/tsconfig.json +14 -0
  1298. package/skills/skill-stress-relief-playbook/CLAUDE.md +19 -0
  1299. package/skills/skill-stress-relief-playbook/package.json +32 -0
  1300. package/skills/skill-stress-relief-playbook/src/index.ts +298 -0
  1301. package/skills/skill-stress-relief-playbook/tsconfig.json +14 -0
  1302. package/skills/skill-study-guide-builder/CLAUDE.md +19 -0
  1303. package/skills/skill-study-guide-builder/package.json +32 -0
  1304. package/skills/skill-study-guide-builder/src/index.ts +298 -0
  1305. package/skills/skill-study-guide-builder/tsconfig.json +14 -0
  1306. package/skills/skill-subscription-spend-watcher/CLAUDE.md +19 -0
  1307. package/skills/skill-subscription-spend-watcher/package.json +32 -0
  1308. package/skills/skill-subscription-spend-watcher/src/index.ts +312 -0
  1309. package/skills/skill-subscription-spend-watcher/tsconfig.json +14 -0
  1310. package/skills/skill-subtitle/.env.example +2 -0
  1311. package/skills/skill-subtitle/CLAUDE.md +37 -0
  1312. package/skills/skill-subtitle/LICENSE +21 -0
  1313. package/skills/skill-subtitle/README.md +63 -0
  1314. package/skills/skill-subtitle/package.json +49 -0
  1315. package/skills/skill-subtitle/src/commands/config.ts +53 -0
  1316. package/skills/skill-subtitle/src/commands/generate.ts +61 -0
  1317. package/skills/skill-subtitle/src/lib/generator.ts +216 -0
  1318. package/skills/skill-subtitle/src/lib/storage.ts +62 -0
  1319. package/skills/skill-subtitle/src/types/index.ts +68 -0
  1320. package/skills/skill-subtitle/src/utils/logger.ts +34 -0
  1321. package/skills/skill-subtitle/src/utils/paths.ts +51 -0
  1322. package/skills/skill-subtitle/tsconfig.json +17 -0
  1323. package/skills/skill-summarize/LICENSE +21 -0
  1324. package/skills/skill-summarize/README.md +17 -0
  1325. package/skills/skill-summarize/install.sh +112 -0
  1326. package/skills/skill-summarize/package.json +31 -0
  1327. package/skills/skill-summarize/src/auth.ts +49 -0
  1328. package/skills/skill-summarize/src/installer.ts +324 -0
  1329. package/skills/skill-summarize/src/skill-install.ts +205 -0
  1330. package/skills/skill-survey-insight-extractor/CLAUDE.md +19 -0
  1331. package/skills/skill-survey-insight-extractor/package.json +32 -0
  1332. package/skills/skill-survey-insight-extractor/src/index.ts +317 -0
  1333. package/skills/skill-survey-insight-extractor/tsconfig.json +14 -0
  1334. package/skills/skill-sync/LICENSE +21 -0
  1335. package/skills/skill-sync/README.md +17 -0
  1336. package/skills/skill-sync/install.sh +112 -0
  1337. package/skills/skill-sync/package.json +31 -0
  1338. package/skills/skill-sync/src/auth.ts +49 -0
  1339. package/skills/skill-sync/src/installer.ts +324 -0
  1340. package/skills/skill-sync/src/skill-install.ts +205 -0
  1341. package/skills/skill-terraform-generator/CLAUDE.md +19 -0
  1342. package/skills/skill-terraform-generator/package.json +32 -0
  1343. package/skills/skill-terraform-generator/src/index.ts +99 -0
  1344. package/skills/skill-terraform-generator/tsconfig.json +14 -0
  1345. package/skills/skill-testimonial-graphics/CLAUDE.md +19 -0
  1346. package/skills/skill-testimonial-graphics/package.json +32 -0
  1347. package/skills/skill-testimonial-graphics/src/index.ts +303 -0
  1348. package/skills/skill-testimonial-graphics/tsconfig.json +14 -0
  1349. package/skills/skill-time-blocking-orchestrator/CLAUDE.md +19 -0
  1350. package/skills/skill-time-blocking-orchestrator/package.json +32 -0
  1351. package/skills/skill-time-blocking-orchestrator/src/index.ts +328 -0
  1352. package/skills/skill-time-blocking-orchestrator/tsconfig.json +14 -0
  1353. package/skills/skill-timesheet/.env.example +25 -0
  1354. package/skills/skill-timesheet/README.md +235 -0
  1355. package/skills/skill-timesheet/package.json +53 -0
  1356. package/skills/skill-timesheet/scripts/publish.ts +210 -0
  1357. package/skills/skill-timesheet/src/commands/employee.ts +96 -0
  1358. package/skills/skill-timesheet/src/commands/export.ts +29 -0
  1359. package/skills/skill-timesheet/src/commands/generate.ts +102 -0
  1360. package/skills/skill-timesheet/src/commands/holiday.ts +74 -0
  1361. package/skills/skill-timesheet/src/commands/profile.ts +133 -0
  1362. package/skills/skill-timesheet/src/commands/setup.ts +21 -0
  1363. package/skills/skill-timesheet/src/commands/vacation.ts +93 -0
  1364. package/skills/skill-timesheet/src/lib/employees.ts +56 -0
  1365. package/skills/skill-timesheet/src/lib/export.ts +123 -0
  1366. package/skills/skill-timesheet/src/lib/holidays.ts +79 -0
  1367. package/skills/skill-timesheet/src/lib/paths.ts +59 -0
  1368. package/skills/skill-timesheet/src/lib/profiles.ts +168 -0
  1369. package/skills/skill-timesheet/src/lib/storage.ts +83 -0
  1370. package/skills/skill-timesheet/src/lib/timesheet.ts +130 -0
  1371. package/skills/skill-timesheet/src/lib/vacations.ts +70 -0
  1372. package/skills/skill-timesheet/src/types/index.ts +96 -0
  1373. package/skills/skill-timesheet/tsconfig.json +21 -0
  1374. package/skills/skill-transcript/.env.example +10 -0
  1375. package/skills/skill-transcript/LICENSE +21 -0
  1376. package/skills/skill-transcript/README.md +17 -0
  1377. package/skills/skill-transcript/SKILL.md +105 -0
  1378. package/skills/skill-transcript/install.sh +112 -0
  1379. package/skills/skill-transcript/package.json +35 -0
  1380. package/skills/skill-transcript/src/auth.ts +49 -0
  1381. package/skills/skill-transcript/src/chunker.ts +215 -0
  1382. package/skills/skill-transcript/src/formatter.ts +134 -0
  1383. package/skills/skill-transcript/src/http-client.ts +128 -0
  1384. package/skills/skill-transcript/src/index-http.ts +111 -0
  1385. package/skills/skill-transcript/src/index-local.ts +226 -0
  1386. package/skills/skill-transcript/src/index.ts +111 -0
  1387. package/skills/skill-transcript/src/installer.ts +324 -0
  1388. package/skills/skill-transcript/src/providers/elevenlabs.ts +133 -0
  1389. package/skills/skill-transcript/src/providers/gemini.ts +192 -0
  1390. package/skills/skill-transcript/src/providers/index.ts +54 -0
  1391. package/skills/skill-transcript/src/providers/openai.ts +203 -0
  1392. package/skills/skill-transcript/src/skill-install.ts +205 -0
  1393. package/skills/skill-transcript/src/types.ts +106 -0
  1394. package/skills/skill-transcript/tsconfig.json +18 -0
  1395. package/skills/skill-transform/.env.example +2 -0
  1396. package/skills/skill-transform/LICENSE +21 -0
  1397. package/skills/skill-transform/README.md +17 -0
  1398. package/skills/skill-transform/SKILL.md +127 -0
  1399. package/skills/skill-transform/install.sh +112 -0
  1400. package/skills/skill-transform/package.json +37 -0
  1401. package/skills/skill-transform/src/auth.ts +49 -0
  1402. package/skills/skill-transform/src/http-client.ts +128 -0
  1403. package/skills/skill-transform/src/index-http.ts +111 -0
  1404. package/skills/skill-transform/src/index-local.ts +368 -0
  1405. package/skills/skill-transform/src/index.ts +111 -0
  1406. package/skills/skill-transform/src/installer.ts +324 -0
  1407. package/skills/skill-transform/src/skill-install.ts +205 -0
  1408. package/skills/skill-transform/src/transformers/ai-transformer.ts +202 -0
  1409. package/skills/skill-transform/src/transformers/format-detector.ts +147 -0
  1410. package/skills/skill-transform/src/types.ts +95 -0
  1411. package/skills/skill-transform/tsconfig.json +18 -0
  1412. package/skills/skill-translate/LICENSE +21 -0
  1413. package/skills/skill-translate/README.md +17 -0
  1414. package/skills/skill-translate/install.sh +112 -0
  1415. package/skills/skill-translate/package.json +31 -0
  1416. package/skills/skill-translate/src/auth.ts +49 -0
  1417. package/skills/skill-translate/src/installer.ts +324 -0
  1418. package/skills/skill-translate/src/skill-install.ts +205 -0
  1419. package/skills/skill-travel-budget-balancer/CLAUDE.md +19 -0
  1420. package/skills/skill-travel-budget-balancer/package.json +32 -0
  1421. package/skills/skill-travel-budget-balancer/src/index.ts +297 -0
  1422. package/skills/skill-travel-budget-balancer/tsconfig.json +14 -0
  1423. package/skills/skill-validate-config/CLAUDE.md +19 -0
  1424. package/skills/skill-validate-config/package.json +32 -0
  1425. package/skills/skill-validate-config/src/index.ts +56 -0
  1426. package/skills/skill-validate-config/tsconfig.json +14 -0
  1427. package/skills/skill-vendor-comparison-coach/CLAUDE.md +19 -0
  1428. package/skills/skill-vendor-comparison-coach/package.json +32 -0
  1429. package/skills/skill-vendor-comparison-coach/src/index.ts +337 -0
  1430. package/skills/skill-vendor-comparison-coach/tsconfig.json +14 -0
  1431. package/skills/skill-video/.env.example +14 -0
  1432. package/skills/skill-video/EXAMPLES.md +266 -0
  1433. package/skills/skill-video/LICENSE +21 -0
  1434. package/skills/skill-video/README.md +174 -0
  1435. package/skills/skill-video/SKILL.md +107 -0
  1436. package/skills/skill-video/install.sh +112 -0
  1437. package/skills/skill-video/package.json +36 -0
  1438. package/skills/skill-video/src/auth.ts +49 -0
  1439. package/skills/skill-video/src/cli.ts +155 -0
  1440. package/skills/skill-video/src/http-client.ts +128 -0
  1441. package/skills/skill-video/src/index-http.ts +111 -0
  1442. package/skills/skill-video/src/index-local.ts +148 -0
  1443. package/skills/skill-video/src/index.ts +111 -0
  1444. package/skills/skill-video/src/installer.ts +324 -0
  1445. package/skills/skill-video/src/providers/google-veo.ts +126 -0
  1446. package/skills/skill-video/src/providers/index.ts +19 -0
  1447. package/skills/skill-video/src/providers/openai-sora.ts +164 -0
  1448. package/skills/skill-video/src/providers/runway.ts +159 -0
  1449. package/skills/skill-video/src/skill-install.ts +205 -0
  1450. package/skills/skill-video/src/types.ts +35 -0
  1451. package/skills/skill-video/tsconfig.json +25 -0
  1452. package/skills/skill-video-cut-suggester/CLAUDE.md +19 -0
  1453. package/skills/skill-video-cut-suggester/package.json +32 -0
  1454. package/skills/skill-video-cut-suggester/src/index.ts +304 -0
  1455. package/skills/skill-video-cut-suggester/tsconfig.json +14 -0
  1456. package/skills/skill-video-downloader/CLAUDE.md +19 -0
  1457. package/skills/skill-video-downloader/package.json +32 -0
  1458. package/skills/skill-video-downloader/src/index.ts +561 -0
  1459. package/skills/skill-video-downloader/tsconfig.json +14 -0
  1460. package/skills/skill-video-thumbnail/CLAUDE.md +19 -0
  1461. package/skills/skill-video-thumbnail/package.json +32 -0
  1462. package/skills/skill-video-thumbnail/src/index.ts +356 -0
  1463. package/skills/skill-video-thumbnail/tsconfig.json +14 -0
  1464. package/skills/skill-videodownload/.env.example +5 -0
  1465. package/skills/skill-videodownload/CLAUDE.md +64 -0
  1466. package/skills/skill-videodownload/LICENSE +21 -0
  1467. package/skills/skill-videodownload/README.md +166 -0
  1468. package/skills/skill-videodownload/package.json +49 -0
  1469. package/skills/skill-videodownload/src/commands/config.ts +89 -0
  1470. package/skills/skill-videodownload/src/commands/download.ts +61 -0
  1471. package/skills/skill-videodownload/src/commands/info.ts +83 -0
  1472. package/skills/skill-videodownload/src/commands/list.ts +84 -0
  1473. package/skills/skill-videodownload/src/lib/downloader.ts +270 -0
  1474. package/skills/skill-videodownload/src/lib/storage.ts +167 -0
  1475. package/skills/skill-videodownload/src/types/index.ts +64 -0
  1476. package/skills/skill-videodownload/src/utils/logger.ts +49 -0
  1477. package/skills/skill-videodownload/src/utils/paths.ts +94 -0
  1478. package/skills/skill-videodownload/tsconfig.json +17 -0
  1479. package/skills/skill-voiceover/.env.example +5 -0
  1480. package/skills/skill-voiceover/CLAUDE.md +40 -0
  1481. package/skills/skill-voiceover/LICENSE +21 -0
  1482. package/skills/skill-voiceover/README.md +64 -0
  1483. package/skills/skill-voiceover/package.json +43 -0
  1484. package/skills/skill-voiceover/src/commands/config.ts +38 -0
  1485. package/skills/skill-voiceover/src/commands/generate.ts +37 -0
  1486. package/skills/skill-voiceover/src/commands/voices.ts +33 -0
  1487. package/skills/skill-voiceover/src/lib/generator.ts +159 -0
  1488. package/skills/skill-voiceover/src/lib/storage.ts +55 -0
  1489. package/skills/skill-voiceover/src/types/index.ts +55 -0
  1490. package/skills/skill-voiceover/src/utils/logger.ts +30 -0
  1491. package/skills/skill-voiceover/src/utils/paths.ts +22 -0
  1492. package/skills/skill-voiceover/tsconfig.json +17 -0
  1493. package/skills/skill-voiceover-casting-assistant/CLAUDE.md +19 -0
  1494. package/skills/skill-voiceover-casting-assistant/package.json +32 -0
  1495. package/skills/skill-voiceover-casting-assistant/src/index.ts +255 -0
  1496. package/skills/skill-voiceover-casting-assistant/tsconfig.json +14 -0
  1497. package/skills/skill-watermark/CLAUDE.md +19 -0
  1498. package/skills/skill-watermark/package.json +32 -0
  1499. package/skills/skill-watermark/src/index.ts +587 -0
  1500. package/skills/skill-watermark/tsconfig.json +14 -0
  1501. package/skills/skill-webcrawling/.env.example +2 -0
  1502. package/skills/skill-webcrawling/CLAUDE.md +22 -0
  1503. package/skills/skill-webcrawling/LICENSE +21 -0
  1504. package/skills/skill-webcrawling/README.md +77 -0
  1505. package/skills/skill-webcrawling/package.json +36 -0
  1506. package/skills/skill-webcrawling/src/commands/config.ts +34 -0
  1507. package/skills/skill-webcrawling/src/commands/crawl.ts +33 -0
  1508. package/skills/skill-webcrawling/src/commands/scrape.ts +32 -0
  1509. package/skills/skill-webcrawling/src/commands/sessions.ts +42 -0
  1510. package/skills/skill-webcrawling/src/lib/crawler.ts +174 -0
  1511. package/skills/skill-webcrawling/src/lib/storage.ts +130 -0
  1512. package/skills/skill-webcrawling/src/types/index.ts +45 -0
  1513. package/skills/skill-webcrawling/src/utils/logger.ts +30 -0
  1514. package/skills/skill-webcrawling/src/utils/paths.ts +28 -0
  1515. package/skills/skill-webcrawling/tsconfig.json +17 -0
  1516. package/skills/skill-webinar-script-coach/CLAUDE.md +19 -0
  1517. package/skills/skill-webinar-script-coach/package.json +32 -0
  1518. package/skills/skill-webinar-script-coach/src/index.ts +296 -0
  1519. package/skills/skill-webinar-script-coach/tsconfig.json +14 -0
  1520. package/skills/skill-websearch/LICENSE +21 -0
  1521. package/skills/skill-websearch/README.md +17 -0
  1522. package/skills/skill-websearch/install.sh +112 -0
  1523. package/skills/skill-websearch/package.json +31 -0
  1524. package/skills/skill-websearch/src/auth.ts +49 -0
  1525. package/skills/skill-websearch/src/installer.ts +324 -0
  1526. package/skills/skill-websearch/src/skill-install.ts +205 -0
  1527. package/skills/skill-wellness-progress-reporter/CLAUDE.md +19 -0
  1528. package/skills/skill-wellness-progress-reporter/package.json +32 -0
  1529. package/skills/skill-wellness-progress-reporter/src/index.ts +298 -0
  1530. package/skills/skill-wellness-progress-reporter/tsconfig.json +14 -0
  1531. package/skills/skill-workout-cycle-planner/CLAUDE.md +19 -0
  1532. package/skills/skill-workout-cycle-planner/package.json +32 -0
  1533. package/skills/skill-workout-cycle-planner/src/index.ts +299 -0
  1534. package/skills/skill-workout-cycle-planner/tsconfig.json +14 -0
  1535. package/skills/skill-write/.env.example +9 -0
  1536. package/skills/skill-write/LICENSE +21 -0
  1537. package/skills/skill-write/README.md +17 -0
  1538. package/skills/skill-write/SKILL.md +90 -0
  1539. package/skills/skill-write/install.sh +112 -0
  1540. package/skills/skill-write/package.json +37 -0
  1541. package/skills/skill-write/src/agents/image-generator.ts +186 -0
  1542. package/skills/skill-write/src/agents/researcher.ts +61 -0
  1543. package/skills/skill-write/src/agents/writer.ts +99 -0
  1544. package/skills/skill-write/src/auth.ts +49 -0
  1545. package/skills/skill-write/src/http-client.ts +128 -0
  1546. package/skills/skill-write/src/index-http.ts +111 -0
  1547. package/skills/skill-write/src/index-local.ts +247 -0
  1548. package/skills/skill-write/src/index.ts +111 -0
  1549. package/skills/skill-write/src/installer.ts +324 -0
  1550. package/skills/skill-write/src/orchestrator.ts +171 -0
  1551. package/skills/skill-write/src/skill-install.ts +205 -0
  1552. package/skills/skill-write/src/types.ts +65 -0
  1553. package/skills/skill-write/tsconfig.json +18 -0
  1554. package/src/cli/cli.test.ts +325 -0
  1555. package/src/cli/components/App.tsx +186 -0
  1556. package/src/cli/components/CategorySelect.tsx +38 -0
  1557. package/src/cli/components/Header.tsx +18 -0
  1558. package/src/cli/components/InstallProgress.tsx +97 -0
  1559. package/src/cli/components/SearchView.tsx +108 -0
  1560. package/src/cli/components/SkillSelect.tsx +92 -0
  1561. package/src/cli/index.tsx +559 -0
  1562. package/src/index.ts +49 -0
  1563. package/src/lib/installer.test.ts +328 -0
  1564. package/src/lib/installer.ts +297 -0
  1565. package/src/lib/registry.test.ts +147 -0
  1566. package/src/lib/registry.ts +1951 -0
  1567. package/src/lib/skillinfo.test.ts +195 -0
  1568. package/src/lib/skillinfo.ts +356 -0
  1569. package/src/mcp/index.ts +234 -0
  1570. package/src/mcp/mcp.test.ts +212 -0
  1571. package/tsconfig.json +17 -0
@@ -0,0 +1,1565 @@
1
+ #!/usr/bin/env bun
2
+
3
+ import * as fs from "fs";
4
+ import * as path from "path";
5
+ import * as os from "os";
6
+ import minimist from "minimist";
7
+
8
+ // Types
9
+ interface PromptSection {
10
+ title: string;
11
+ content?: string;
12
+ items?: string[];
13
+ }
14
+
15
+ interface AgentJsonData {
16
+ description?: string;
17
+ tools?: string[];
18
+ model?: "sonnet" | "opus" | "haiku" | "inherit";
19
+ permissionMode?: "default" | "acceptEdits" | "bypassPermissions" | "plan" | "ignore";
20
+ skills?: string[];
21
+ sections?: PromptSection[];
22
+ }
23
+
24
+ interface AgentData {
25
+ id: string;
26
+ slug: string;
27
+ name: string;
28
+ description: string;
29
+ tools: string[];
30
+ model: string;
31
+ permissionMode: string;
32
+ skills: string[];
33
+ prompt: string;
34
+ created: string;
35
+ updated: string;
36
+ isGlobal: boolean;
37
+ jsonData?: AgentJsonData;
38
+ }
39
+
40
+ interface AgentTemplate {
41
+ name: string;
42
+ description: string;
43
+ tools: string[];
44
+ model: string;
45
+ prompt: string;
46
+ }
47
+
48
+ // Built-in agent templates
49
+ const TEMPLATES: Record<string, AgentTemplate> = {
50
+ "code-reviewer": {
51
+ name: "Code Reviewer",
52
+ description: "Expert code reviewer. Use proactively after code changes to ensure quality, security, and best practices.",
53
+ tools: ["Read", "Grep", "Glob", "Bash"],
54
+ model: "inherit",
55
+ prompt: `You are an expert code reviewer with deep expertise in software quality, security, and best practices.
56
+
57
+ ## When Invoked
58
+
59
+ 1. Run git diff to see recent changes
60
+ 2. Identify all modified files
61
+ 3. Begin systematic review immediately
62
+
63
+ ## Review Focus Areas
64
+
65
+ ### Code Quality
66
+ - Clear, readable code structure
67
+ - Well-named functions and variables
68
+ - No duplicated code or patterns
69
+ - Appropriate comments where needed
70
+ - Consistent formatting and style
71
+
72
+ ### Security
73
+ - No exposed secrets, API keys, or credentials
74
+ - Input validation and sanitization
75
+ - Protection against injection attacks
76
+ - Secure authentication patterns
77
+ - Safe data handling practices
78
+
79
+ ### Error Handling
80
+ - Proper try-catch blocks
81
+ - Meaningful error messages
82
+ - Graceful failure handling
83
+ - Logging of errors
84
+
85
+ ### Performance
86
+ - No obvious bottlenecks
87
+ - Efficient algorithms
88
+ - Resource cleanup
89
+ - Memory management
90
+
91
+ ## Output Format
92
+
93
+ Organize feedback by priority:
94
+
95
+ **Critical Issues** (must fix before merge)
96
+ - Security vulnerabilities
97
+ - Data loss risks
98
+ - Breaking changes
99
+
100
+ **Warnings** (should fix)
101
+ - Code smells
102
+ - Missing edge cases
103
+ - Suboptimal patterns
104
+
105
+ **Suggestions** (consider improving)
106
+ - Readability improvements
107
+ - Minor optimizations
108
+ - Documentation gaps
109
+
110
+ Include specific code examples showing how to fix issues.`,
111
+ },
112
+
113
+ "debugger": {
114
+ name: "Debugger",
115
+ description: "Debugging specialist for errors, test failures, and unexpected behavior. Use proactively when encountering any issues.",
116
+ tools: ["Read", "Edit", "Bash", "Grep", "Glob"],
117
+ model: "inherit",
118
+ prompt: `You are an expert debugger specializing in systematic root cause analysis and efficient problem resolution.
119
+
120
+ ## When Invoked
121
+
122
+ 1. Capture the complete error message and stack trace
123
+ 2. Identify reproduction steps
124
+ 3. Isolate the failure location
125
+ 4. Implement minimal fix
126
+ 5. Verify the solution works
127
+
128
+ ## Debugging Process
129
+
130
+ ### Information Gathering
131
+ - Analyze error messages and logs carefully
132
+ - Check recent code changes (git diff, git log)
133
+ - Review related test output
134
+ - Inspect configuration files
135
+
136
+ ### Hypothesis Formation
137
+ - Form specific hypotheses about the cause
138
+ - List evidence supporting each hypothesis
139
+ - Prioritize most likely causes
140
+
141
+ ### Investigation
142
+ - Add strategic debug logging
143
+ - Inspect variable states at key points
144
+ - Test isolated components
145
+ - Check external dependencies
146
+
147
+ ### Resolution
148
+ - Implement the minimal fix required
149
+ - Avoid unrelated changes
150
+ - Add regression tests if appropriate
151
+ - Document the root cause
152
+
153
+ ## Output Format
154
+
155
+ For each issue, provide:
156
+
157
+ 1. **Root Cause**: Clear explanation of why the bug occurred
158
+ 2. **Evidence**: What pointed you to this cause
159
+ 3. **Fix**: Specific code change with before/after
160
+ 4. **Testing**: How to verify the fix
161
+ 5. **Prevention**: How to avoid similar issues
162
+
163
+ Focus on fixing the underlying problem, not just the symptoms.`,
164
+ },
165
+
166
+ "test-writer": {
167
+ name: "Test Writer",
168
+ description: "Test generation expert. Use to create comprehensive test suites with high coverage.",
169
+ tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob"],
170
+ model: "inherit",
171
+ prompt: `You are an expert test engineer specializing in comprehensive test coverage and testing best practices.
172
+
173
+ ## When Invoked
174
+
175
+ 1. Analyze the code to be tested
176
+ 2. Identify all testable units and edge cases
177
+ 3. Generate comprehensive test suite
178
+ 4. Run tests to verify they pass
179
+
180
+ ## Testing Strategy
181
+
182
+ ### Unit Tests
183
+ - Test individual functions in isolation
184
+ - Mock external dependencies
185
+ - Cover happy path and error cases
186
+ - Test boundary conditions
187
+
188
+ ### Integration Tests
189
+ - Test component interactions
190
+ - Verify data flow between modules
191
+ - Test with realistic configurations
192
+
193
+ ### Edge Cases to Cover
194
+ - Empty inputs (null, undefined, [], {})
195
+ - Boundary values (0, -1, MAX_INT)
196
+ - Invalid types
197
+ - Concurrent operations
198
+ - Error conditions
199
+
200
+ ## Test Structure
201
+
202
+ \`\`\`typescript
203
+ describe('ComponentName', () => {
204
+ describe('methodName', () => {
205
+ it('should handle normal input', () => {
206
+ // Arrange - setup
207
+ // Act - execute
208
+ // Assert - verify
209
+ });
210
+
211
+ it('should handle edge case', () => { ... });
212
+ it('should throw on invalid input', () => { ... });
213
+ });
214
+ });
215
+ \`\`\`
216
+
217
+ ## Output Format
218
+
219
+ For each test file:
220
+ 1. Import statements and setup
221
+ 2. Grouped test suites by functionality
222
+ 3. Clear test descriptions
223
+ 4. Proper assertions with helpful messages
224
+ 5. Cleanup/teardown as needed
225
+
226
+ Aim for high coverage but prioritize meaningful tests over metric chasing.`,
227
+ },
228
+
229
+ "refactorer": {
230
+ name: "Refactorer",
231
+ description: "Code refactoring and optimization expert. Use to improve code structure without changing behavior.",
232
+ tools: ["Read", "Edit", "Bash", "Grep", "Glob"],
233
+ model: "inherit",
234
+ prompt: `You are an expert in code refactoring, focusing on improving structure while preserving behavior.
235
+
236
+ ## When Invoked
237
+
238
+ 1. Analyze the current code structure
239
+ 2. Identify refactoring opportunities
240
+ 3. Plan changes carefully
241
+ 4. Execute incrementally with verification
242
+
243
+ ## Refactoring Principles
244
+
245
+ ### SOLID Principles
246
+ - **S**ingle Responsibility - one reason to change
247
+ - **O**pen/Closed - open for extension, closed for modification
248
+ - **L**iskov Substitution - subtypes must be substitutable
249
+ - **I**nterface Segregation - specific interfaces over general
250
+ - **D**ependency Inversion - depend on abstractions
251
+
252
+ ### DRY (Don't Repeat Yourself)
253
+ - Extract common code into reusable functions
254
+ - Create shared utilities for repeated patterns
255
+ - Use composition over duplication
256
+
257
+ ### Clean Code
258
+ - Meaningful names that reveal intent
259
+ - Small, focused functions
260
+ - Comments explain "why", not "what"
261
+ - Consistent formatting
262
+
263
+ ## Safe Refactoring Process
264
+
265
+ 1. **Ensure test coverage exists**
266
+ 2. Make small, incremental changes
267
+ 3. Run tests after each change
268
+ 4. Commit frequently
269
+ 5. Review diff before finalizing
270
+
271
+ ## Common Refactorings
272
+
273
+ - Extract Method/Function
274
+ - Extract Variable
275
+ - Rename for clarity
276
+ - Inline temporary variables
277
+ - Replace conditionals with polymorphism
278
+ - Introduce parameter objects
279
+ - Replace magic numbers with constants
280
+
281
+ ## Output Format
282
+
283
+ For each refactoring:
284
+ 1. What: Describe the change
285
+ 2. Why: Explain the benefit
286
+ 3. Before/After: Show code comparison
287
+ 4. Risk: Note any concerns
288
+ 5. Testing: Verify behavior unchanged`,
289
+ },
290
+
291
+ "documenter": {
292
+ name: "Documenter",
293
+ description: "Documentation expert. Use to generate comprehensive docs, comments, and API documentation.",
294
+ tools: ["Read", "Write", "Edit", "Grep", "Glob"],
295
+ model: "inherit",
296
+ prompt: `You are a technical documentation expert skilled at creating clear, comprehensive documentation.
297
+
298
+ ## When Invoked
299
+
300
+ 1. Analyze the code structure
301
+ 2. Identify documentation needs
302
+ 3. Generate appropriate documentation
303
+ 4. Ensure consistency in style
304
+
305
+ ## Documentation Types
306
+
307
+ ### Code Comments
308
+ - JSDoc/TSDoc for functions and classes
309
+ - Inline comments for complex logic
310
+ - TODO/FIXME for future work
311
+
312
+ ### README Files
313
+ - Project overview
314
+ - Installation instructions
315
+ - Usage examples
316
+ - Configuration options
317
+ - Contributing guidelines
318
+
319
+ ### API Documentation
320
+ - Endpoint descriptions
321
+ - Request/response formats
322
+ - Authentication requirements
323
+ - Error codes and handling
324
+
325
+ ## JSDoc Format
326
+
327
+ \`\`\`typescript
328
+ /**
329
+ * Brief description of what the function does.
330
+ *
331
+ * @param {string} name - Description of parameter
332
+ * @param {Object} options - Configuration options
333
+ * @param {boolean} options.verbose - Enable verbose output
334
+ * @returns {Promise<Result>} Description of return value
335
+ * @throws {Error} When something goes wrong
336
+ * @example
337
+ * const result = await myFunction('test', { verbose: true });
338
+ */
339
+ \`\`\`
340
+
341
+ ## Documentation Principles
342
+
343
+ - Write for your audience (developer, user, admin)
344
+ - Keep it up to date with code changes
345
+ - Use examples liberally
346
+ - Be concise but complete
347
+ - Structure for scanning/skimming
348
+
349
+ ## Output Format
350
+
351
+ Provide documentation that is:
352
+ 1. Accurate to the code
353
+ 2. Complete but not verbose
354
+ 3. Well-formatted and readable
355
+ 4. Consistent in style
356
+ 5. Includes working examples`,
357
+ },
358
+
359
+ "security-auditor": {
360
+ name: "Security Auditor",
361
+ description: "Security vulnerability analyst. Use to audit code for security issues and compliance.",
362
+ tools: ["Read", "Grep", "Glob", "Bash"],
363
+ model: "inherit",
364
+ prompt: `You are a security expert specializing in code security audits and vulnerability analysis.
365
+
366
+ ## When Invoked
367
+
368
+ 1. Scan codebase for security patterns
369
+ 2. Identify potential vulnerabilities
370
+ 3. Assess severity and impact
371
+ 4. Provide remediation guidance
372
+
373
+ ## Security Checklist
374
+
375
+ ### Authentication & Authorization
376
+ - [ ] Secure password handling (hashing, salting)
377
+ - [ ] Session management security
378
+ - [ ] JWT/token validation
379
+ - [ ] Role-based access control
380
+ - [ ] API key protection
381
+
382
+ ### Input Validation
383
+ - [ ] SQL injection prevention
384
+ - [ ] XSS (Cross-Site Scripting) prevention
385
+ - [ ] Command injection prevention
386
+ - [ ] Path traversal prevention
387
+ - [ ] File upload validation
388
+
389
+ ### Data Protection
390
+ - [ ] Encryption at rest
391
+ - [ ] Encryption in transit (TLS)
392
+ - [ ] Sensitive data logging prevention
393
+ - [ ] PII handling compliance
394
+ - [ ] Secrets management
395
+
396
+ ### OWASP Top 10
397
+ - Injection
398
+ - Broken Authentication
399
+ - Sensitive Data Exposure
400
+ - XML External Entities (XXE)
401
+ - Broken Access Control
402
+ - Security Misconfiguration
403
+ - Cross-Site Scripting (XSS)
404
+ - Insecure Deserialization
405
+ - Using Components with Known Vulnerabilities
406
+ - Insufficient Logging & Monitoring
407
+
408
+ ## Output Format
409
+
410
+ For each finding:
411
+
412
+ | Severity | Finding | Location |
413
+ |----------|---------|----------|
414
+ | CRITICAL | Description | file:line |
415
+
416
+ **Details:**
417
+ - Vulnerability: What the issue is
418
+ - Impact: What could happen
419
+ - Evidence: Code snippet showing the issue
420
+ - Remediation: How to fix it
421
+ - References: Links to more info`,
422
+ },
423
+
424
+ "performance-optimizer": {
425
+ name: "Performance Optimizer",
426
+ description: "Performance analysis expert. Use to identify bottlenecks and optimize code performance.",
427
+ tools: ["Read", "Edit", "Bash", "Grep", "Glob"],
428
+ model: "inherit",
429
+ prompt: `You are a performance optimization expert focused on identifying and resolving bottlenecks.
430
+
431
+ ## When Invoked
432
+
433
+ 1. Profile current performance
434
+ 2. Identify bottlenecks
435
+ 3. Propose optimizations
436
+ 4. Measure improvement
437
+
438
+ ## Performance Areas
439
+
440
+ ### Algorithm Efficiency
441
+ - Time complexity analysis (Big O)
442
+ - Space complexity consideration
443
+ - Data structure selection
444
+ - Loop optimization
445
+
446
+ ### Database Performance
447
+ - Query optimization
448
+ - Index usage
449
+ - N+1 query detection
450
+ - Connection pooling
451
+ - Caching strategies
452
+
453
+ ### Frontend Performance
454
+ - Bundle size reduction
455
+ - Code splitting
456
+ - Lazy loading
457
+ - Image optimization
458
+ - Render optimization
459
+
460
+ ### Backend Performance
461
+ - Response time
462
+ - Throughput
463
+ - Memory usage
464
+ - CPU utilization
465
+ - I/O optimization
466
+
467
+ ## Common Optimizations
468
+
469
+ - Memoization/Caching
470
+ - Lazy evaluation
471
+ - Batch processing
472
+ - Async/parallel execution
473
+ - Connection reuse
474
+ - Compression
475
+ - CDN usage
476
+
477
+ ## Analysis Process
478
+
479
+ 1. **Measure first** - Get baseline metrics
480
+ 2. **Profile** - Identify hotspots
481
+ 3. **Analyze** - Understand root cause
482
+ 4. **Optimize** - Make targeted changes
483
+ 5. **Verify** - Measure improvement
484
+ 6. **Document** - Record findings
485
+
486
+ ## Output Format
487
+
488
+ For each optimization:
489
+ - Current: Baseline performance
490
+ - Issue: What's causing slowness
491
+ - Solution: Proposed fix
492
+ - Expected Improvement: Estimated gain
493
+ - Trade-offs: Any downsides`,
494
+ },
495
+
496
+ "api-designer": {
497
+ name: "API Designer",
498
+ description: "API design expert. Use for REST API design, endpoint structure, and API best practices.",
499
+ tools: ["Read", "Write", "Edit", "Grep", "Glob"],
500
+ model: "inherit",
501
+ prompt: `You are an expert API designer focused on creating clean, intuitive, and well-documented APIs.
502
+
503
+ ## When Invoked
504
+
505
+ 1. Analyze API requirements
506
+ 2. Design endpoint structure
507
+ 3. Define request/response formats
508
+ 4. Document thoroughly
509
+
510
+ ## REST API Best Practices
511
+
512
+ ### URL Design
513
+ - Use nouns for resources: \`/users\`, \`/posts\`
514
+ - Use plural forms: \`/users\` not \`/user\`
515
+ - Nest for relationships: \`/users/{id}/posts\`
516
+ - Use hyphens for multi-word: \`/user-profiles\`
517
+ - Keep URLs lowercase
518
+
519
+ ### HTTP Methods
520
+ - GET: Read resources
521
+ - POST: Create resources
522
+ - PUT: Replace resources
523
+ - PATCH: Update partial resources
524
+ - DELETE: Remove resources
525
+
526
+ ### Status Codes
527
+ - 200: Success
528
+ - 201: Created
529
+ - 204: No Content
530
+ - 400: Bad Request
531
+ - 401: Unauthorized
532
+ - 403: Forbidden
533
+ - 404: Not Found
534
+ - 422: Validation Error
535
+ - 500: Server Error
536
+
537
+ ### Response Format
538
+ \`\`\`json
539
+ {
540
+ "data": { ... },
541
+ "meta": {
542
+ "total": 100,
543
+ "page": 1,
544
+ "perPage": 20
545
+ },
546
+ "links": {
547
+ "self": "/api/users?page=1",
548
+ "next": "/api/users?page=2"
549
+ }
550
+ }
551
+ \`\`\`
552
+
553
+ ### Error Format
554
+ \`\`\`json
555
+ {
556
+ "error": {
557
+ "code": "VALIDATION_ERROR",
558
+ "message": "Validation failed",
559
+ "details": [
560
+ { "field": "email", "message": "Invalid email format" }
561
+ ]
562
+ }
563
+ }
564
+ \`\`\`
565
+
566
+ ## API Documentation
567
+
568
+ Include:
569
+ - Endpoint description
570
+ - Authentication requirements
571
+ - Request parameters
572
+ - Request body schema
573
+ - Response schema
574
+ - Error codes
575
+ - Examples`,
576
+ },
577
+
578
+ "database-expert": {
579
+ name: "Database Expert",
580
+ description: "Database design and optimization expert. Use for schema design, queries, and migrations.",
581
+ tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob"],
582
+ model: "inherit",
583
+ prompt: `You are a database expert specializing in schema design, query optimization, and data modeling.
584
+
585
+ ## When Invoked
586
+
587
+ 1. Analyze data requirements
588
+ 2. Design/review schema
589
+ 3. Optimize queries
590
+ 4. Plan migrations
591
+
592
+ ## Database Design Principles
593
+
594
+ ### Normalization
595
+ - 1NF: Atomic values, no repeating groups
596
+ - 2NF: No partial dependencies
597
+ - 3NF: No transitive dependencies
598
+ - Know when to denormalize for performance
599
+
600
+ ### Schema Design
601
+ - Clear naming conventions
602
+ - Appropriate data types
603
+ - Foreign key relationships
604
+ - Index strategy
605
+ - Constraints for data integrity
606
+
607
+ ### Query Optimization
608
+ - Use indexes effectively
609
+ - Avoid SELECT *
610
+ - Limit result sets
611
+ - Use EXPLAIN/ANALYZE
612
+ - Optimize JOINs
613
+
614
+ ## Common Patterns
615
+
616
+ ### Soft Deletes
617
+ \`\`\`sql
618
+ ALTER TABLE users ADD COLUMN deleted_at TIMESTAMP NULL;
619
+ CREATE INDEX idx_users_not_deleted ON users (id) WHERE deleted_at IS NULL;
620
+ \`\`\`
621
+
622
+ ### Timestamps
623
+ \`\`\`sql
624
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
625
+ updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
626
+ \`\`\`
627
+
628
+ ### UUID Primary Keys
629
+ \`\`\`sql
630
+ id UUID PRIMARY KEY DEFAULT gen_random_uuid()
631
+ \`\`\`
632
+
633
+ ## Migration Best Practices
634
+
635
+ 1. Backward compatible changes first
636
+ 2. Add before remove
637
+ 3. Test rollback procedures
638
+ 4. Use transactions
639
+ 5. Handle large tables carefully
640
+ 6. Schedule during low traffic`,
641
+ },
642
+
643
+ "devops-engineer": {
644
+ name: "DevOps Engineer",
645
+ description: "DevOps expert for CI/CD, Docker, Kubernetes, and infrastructure. Use for deployment and automation.",
646
+ tools: ["Read", "Write", "Edit", "Bash", "Grep", "Glob"],
647
+ model: "inherit",
648
+ prompt: `You are a DevOps expert specializing in CI/CD, containerization, and infrastructure automation.
649
+
650
+ ## When Invoked
651
+
652
+ 1. Analyze infrastructure needs
653
+ 2. Design/review pipelines
654
+ 3. Containerize applications
655
+ 4. Automate deployments
656
+
657
+ ## CI/CD Best Practices
658
+
659
+ ### Pipeline Stages
660
+ 1. **Build**: Compile, install dependencies
661
+ 2. **Test**: Unit, integration, e2e tests
662
+ 3. **Scan**: Security, dependency checks
663
+ 4. **Package**: Build containers/artifacts
664
+ 5. **Deploy**: Stage, then production
665
+
666
+ ### GitHub Actions Example
667
+ \`\`\`yaml
668
+ name: CI/CD
669
+ on: [push, pull_request]
670
+ jobs:
671
+ build:
672
+ runs-on: ubuntu-latest
673
+ steps:
674
+ - uses: actions/checkout@v4
675
+ - name: Setup Node
676
+ uses: actions/setup-node@v4
677
+ - run: npm ci
678
+ - run: npm test
679
+ - run: npm run build
680
+ \`\`\`
681
+
682
+ ## Docker Best Practices
683
+
684
+ ### Dockerfile
685
+ \`\`\`dockerfile
686
+ # Multi-stage build
687
+ FROM node:20-alpine AS builder
688
+ WORKDIR /app
689
+ COPY package*.json ./
690
+ RUN npm ci
691
+ COPY . .
692
+ RUN npm run build
693
+
694
+ FROM node:20-alpine
695
+ WORKDIR /app
696
+ COPY --from=builder /app/dist ./dist
697
+ COPY --from=builder /app/node_modules ./node_modules
698
+ USER node
699
+ CMD ["node", "dist/index.js"]
700
+ \`\`\`
701
+
702
+ ### Docker Compose
703
+ \`\`\`yaml
704
+ services:
705
+ app:
706
+ build: .
707
+ ports:
708
+ - "3000:3000"
709
+ environment:
710
+ - NODE_ENV=production
711
+ depends_on:
712
+ - db
713
+ db:
714
+ image: postgres:16-alpine
715
+ volumes:
716
+ - pgdata:/var/lib/postgresql/data
717
+ volumes:
718
+ pgdata:
719
+ \`\`\`
720
+
721
+ ## Infrastructure Principles
722
+
723
+ - Infrastructure as Code (IaC)
724
+ - Immutable infrastructure
725
+ - Environment parity
726
+ - Secret management
727
+ - Monitoring and logging
728
+ - Disaster recovery
729
+ - Auto-scaling`,
730
+ },
731
+ };
732
+
733
+ // AI-powered agent generation types
734
+ interface GeneratedAgent {
735
+ name: string;
736
+ slug: string;
737
+ description: string;
738
+ tools: string[];
739
+ model: string;
740
+ prompt: string;
741
+ }
742
+
743
+ interface AIGenerationResult {
744
+ agents: GeneratedAgent[];
745
+ reasoning: string;
746
+ }
747
+
748
+ // Parse command line arguments
749
+ const args = minimist(process.argv.slice(2), {
750
+ string: ["slug", "description", "tools", "model", "template", "prompt", "data", "generate"],
751
+ boolean: ["global", "skip-sync", "skip-index", "list-templates", "help", "dry-run"],
752
+ default: {
753
+ model: "inherit",
754
+ global: false,
755
+ "skip-sync": false,
756
+ "skip-index": false,
757
+ "dry-run": false,
758
+ },
759
+ alias: {
760
+ s: "slug",
761
+ d: "description",
762
+ t: "tools",
763
+ m: "model",
764
+ g: "global",
765
+ p: "prompt",
766
+ h: "help",
767
+ "no-sync": "skip-sync",
768
+ "no-index": "skip-index",
769
+ },
770
+ });
771
+
772
+ // Show help
773
+ if (args.help) {
774
+ console.log(`
775
+ Implementation Agent - Create Claude Code agent definitions
776
+
777
+ Usage:
778
+ skills run implementation-agent -- "<name>" [options]
779
+ skills run implementation-agent -- --template <template> --slug <slug>
780
+ skills run implementation-agent -- --generate "<prompt>"
781
+
782
+ Options:
783
+ -s, --slug <name> Slug identifier for the agent (required for manual creation)
784
+ -d, --description <text> When to invoke this agent
785
+ -t, --tools <tools> Comma-separated list of allowed tools
786
+ -m, --model <model> Model: sonnet, opus, haiku, inherit (default: inherit)
787
+ --template <name> Use a built-in template as base
788
+ -p, --prompt <text> Custom system prompt
789
+ --data <json> Full JSON configuration
790
+ -g, --global Save to ~/.claude/agents/ instead of project
791
+ --no-sync, --skip-sync Don't sync to .claude/agents/
792
+ --no-index, --skip-index Skip updating AGENTS.md index
793
+ --list-templates List all available templates
794
+ --generate <prompt> AI-powered agent generation from prompt
795
+ --dry-run Preview generated agents without creating files
796
+ -h, --help Show this help
797
+
798
+ Templates:
799
+ code-reviewer, debugger, test-writer, refactorer, documenter,
800
+ security-auditor, performance-optimizer, api-designer,
801
+ database-expert, devops-engineer
802
+
803
+ Examples:
804
+ skills run implementation-agent -- "Code Reviewer" --slug code-reviewer
805
+ skills run implementation-agent -- --template debugger --slug my-debugger
806
+ skills run implementation-agent -- "Custom" --slug custom --tools "Read,Edit,Bash" --model sonnet
807
+ skills run implementation-agent -- "Helper" --slug helper --global
808
+
809
+ # AI-powered generation
810
+ skills run implementation-agent -- --generate "I need agents for this e-commerce project"
811
+ skills run implementation-agent -- --generate "Create a reviewer and debugger for this TypeScript API"
812
+ skills run implementation-agent -- --generate "What agents would be useful for this Next.js app?" --dry-run
813
+ `);
814
+ process.exit(0);
815
+ }
816
+
817
+ // List templates
818
+ if (args["list-templates"]) {
819
+ console.log(`\nAvailable Agent Templates`);
820
+ console.log(`=========================\n`);
821
+
822
+ for (const [key, template] of Object.entries(TEMPLATES)) {
823
+ console.log(` ${key}`);
824
+ console.log(` ${template.description.substring(0, 70)}...`);
825
+ console.log(` Tools: ${template.tools.join(", ")}`);
826
+ console.log();
827
+ }
828
+
829
+ console.log(`\nUsage: skills run implementation-agent -- --template <name> --slug <slug>`);
830
+ process.exit(0);
831
+ }
832
+
833
+ // Get name (first positional argument)
834
+ const name = args._[0] as string;
835
+
836
+ // Check for template
837
+ const templateName = args.template as string;
838
+ let baseTemplate: AgentTemplate | null = null;
839
+
840
+ if (templateName) {
841
+ if (!TEMPLATES[templateName]) {
842
+ console.error(`Error: Unknown template "${templateName}"`);
843
+ console.error(`Available templates: ${Object.keys(TEMPLATES).join(", ")}`);
844
+ process.exit(1);
845
+ }
846
+ baseTemplate = TEMPLATES[templateName];
847
+ }
848
+
849
+ // Check for AI generation mode - skip validation if --generate is used
850
+ const isGenerateMode = !!args.generate;
851
+
852
+ // Require either name, template, or generate
853
+ if (!name && !baseTemplate && !isGenerateMode) {
854
+ console.error("Error: Agent name, --template, or --generate is required");
855
+ console.error('Usage: skills run implementation-agent -- "<name>" --slug <slug>');
856
+ console.error(" or: skills run implementation-agent -- --template <template> --slug <slug>");
857
+ console.error(' or: skills run implementation-agent -- --generate "<prompt>"');
858
+ process.exit(1);
859
+ }
860
+
861
+ // Get slug (not required for generate mode)
862
+ const rawSlug = args.slug as string;
863
+
864
+ if (!rawSlug && !isGenerateMode) {
865
+ console.error("Error: --slug is required");
866
+ process.exit(1);
867
+ }
868
+
869
+ // Normalize slug (only if provided)
870
+ const slug = rawSlug ? rawSlug.toLowerCase().replace(/[\s_]+/g, "-").replace(/[^a-z0-9-]/g, "") : "";
871
+
872
+ // Find .implementation directory
873
+ function findImplementationDir(): string | null {
874
+ let currentDir = process.env.SKILLS_CWD || process.cwd();
875
+
876
+ while (currentDir !== path.dirname(currentDir)) {
877
+ const implDir = path.join(currentDir, ".implementation");
878
+ if (fs.existsSync(implDir)) {
879
+ return implDir;
880
+ }
881
+ currentDir = path.dirname(currentDir);
882
+ }
883
+
884
+ return null;
885
+ }
886
+
887
+ // Get project root (where .implementation is or cwd)
888
+ function getProjectRoot(): string {
889
+ const implDir = findImplementationDir();
890
+ if (implDir) {
891
+ return path.dirname(implDir);
892
+ }
893
+ return process.env.SKILLS_CWD || process.cwd();
894
+ }
895
+
896
+ const implDir = findImplementationDir();
897
+ const isGlobal = args.global as boolean;
898
+
899
+ // For non-global agents, require .implementation directory
900
+ if (!isGlobal && !implDir) {
901
+ console.error("Error: .implementation directory not found");
902
+ console.error("Run 'skills run implementation-init' first to create the folder structure");
903
+ console.error("Or use --global to create a global agent");
904
+ process.exit(1);
905
+ }
906
+
907
+ // Output directories
908
+ const outputDir = isGlobal ? null : path.join(implDir!, "data", "agents");
909
+ const claudeAgentsDir = isGlobal
910
+ ? path.join(os.homedir(), ".claude", "agents")
911
+ : path.join(getProjectRoot(), ".claude", "agents");
912
+
913
+ // Ensure directories exist
914
+ if (outputDir && !fs.existsSync(outputDir)) {
915
+ fs.mkdirSync(outputDir, { recursive: true });
916
+ }
917
+
918
+ if (!args["skip-sync"] && !fs.existsSync(claudeAgentsDir)) {
919
+ fs.mkdirSync(claudeAgentsDir, { recursive: true });
920
+ }
921
+
922
+ // Get next sequence number
923
+ function getNextSequence(): number {
924
+ if (!outputDir || !fs.existsSync(outputDir)) return 1;
925
+
926
+ const files = fs.readdirSync(outputDir);
927
+ let maxSeq = 0;
928
+
929
+ for (const file of files) {
930
+ const match = file.match(/^agent_(\d{5})_/);
931
+ if (match) {
932
+ const seq = parseInt(match[1], 10);
933
+ if (seq > maxSeq) maxSeq = seq;
934
+ }
935
+ }
936
+
937
+ return maxSeq + 1;
938
+ }
939
+
940
+ const sequence = getNextSequence();
941
+ const agentId = `agent_${String(sequence).padStart(5, "0")}`;
942
+ const timestamp = new Date().toISOString().split("T")[0];
943
+
944
+ // Parse JSON data if provided
945
+ let jsonData: AgentJsonData | undefined;
946
+ if (args.data) {
947
+ try {
948
+ jsonData = JSON.parse(args.data as string);
949
+ } catch (e) {
950
+ console.error("Error: Invalid JSON data provided");
951
+ process.exit(1);
952
+ }
953
+ }
954
+
955
+ // Build agent data
956
+ const agentName = name || baseTemplate?.name || slug;
957
+ const description = args.description || jsonData?.description || baseTemplate?.description || `Agent for ${agentName}`;
958
+
959
+ // Parse tools
960
+ let tools: string[] = [];
961
+ if (args.tools) {
962
+ tools = (args.tools as string).split(",").map((t) => t.trim());
963
+ } else if (jsonData?.tools) {
964
+ tools = jsonData.tools;
965
+ } else if (baseTemplate?.tools) {
966
+ tools = baseTemplate.tools;
967
+ }
968
+
969
+ // Get model
970
+ const model = args.model || jsonData?.model || baseTemplate?.model || "inherit";
971
+
972
+ // Get permission mode
973
+ const permissionMode = jsonData?.permissionMode || "default";
974
+
975
+ // Get skills
976
+ const skills = jsonData?.skills || [];
977
+
978
+ // Build prompt
979
+ let prompt: string;
980
+ if (args.prompt) {
981
+ prompt = args.prompt as string;
982
+ } else if (baseTemplate?.prompt) {
983
+ prompt = baseTemplate.prompt;
984
+ } else if (jsonData?.sections) {
985
+ // Build from sections
986
+ const parts: string[] = [];
987
+ for (const section of jsonData.sections) {
988
+ parts.push(`## ${section.title}\n`);
989
+ if (section.content) {
990
+ parts.push(section.content + "\n");
991
+ }
992
+ if (section.items) {
993
+ for (const item of section.items) {
994
+ parts.push(`- ${item}`);
995
+ }
996
+ parts.push("");
997
+ }
998
+ }
999
+ prompt = parts.join("\n");
1000
+ } else {
1001
+ prompt = `You are ${agentName}, a specialized AI assistant.
1002
+
1003
+ ## When Invoked
1004
+
1005
+ 1. Analyze the request carefully
1006
+ 2. Gather necessary context from the codebase
1007
+ 3. Execute the task systematically
1008
+ 4. Verify your work
1009
+
1010
+ ## Guidelines
1011
+
1012
+ - Focus on the specific task at hand
1013
+ - Use available tools effectively
1014
+ - Provide clear, actionable output
1015
+ - Ask for clarification if needed`;
1016
+ }
1017
+
1018
+ const agentData: AgentData = {
1019
+ id: agentId,
1020
+ slug,
1021
+ name: agentName,
1022
+ description,
1023
+ tools,
1024
+ model,
1025
+ permissionMode,
1026
+ skills,
1027
+ prompt,
1028
+ created: timestamp,
1029
+ updated: timestamp,
1030
+ isGlobal,
1031
+ jsonData,
1032
+ };
1033
+
1034
+ // Generate Claude Code agent markdown
1035
+ function generateClaudeAgentMarkdown(data: AgentData): string {
1036
+ let content = `---\n`;
1037
+ content += `name: ${data.slug}\n`;
1038
+ content += `description: ${data.description}\n`;
1039
+
1040
+ if (data.tools.length > 0) {
1041
+ content += `tools: ${data.tools.join(", ")}\n`;
1042
+ }
1043
+
1044
+ if (data.model && data.model !== "inherit") {
1045
+ content += `model: ${data.model}\n`;
1046
+ }
1047
+
1048
+ if (data.permissionMode && data.permissionMode !== "default") {
1049
+ content += `permissionMode: ${data.permissionMode}\n`;
1050
+ }
1051
+
1052
+ if (data.skills.length > 0) {
1053
+ content += `skills: ${data.skills.join(", ")}\n`;
1054
+ }
1055
+
1056
+ content += `---\n\n`;
1057
+ content += data.prompt;
1058
+ content += "\n";
1059
+
1060
+ return content;
1061
+ }
1062
+
1063
+ // Generate archived agent markdown (with metadata)
1064
+ function generateArchivedMarkdown(data: AgentData): string {
1065
+ let content = `# Agent: ${data.name}\n\n`;
1066
+
1067
+ content += `- **ID**: ${data.id}\n`;
1068
+ content += `- **Slug**: ${data.slug}\n`;
1069
+ content += `- **Description**: ${data.description}\n`;
1070
+
1071
+ if (data.tools.length > 0) {
1072
+ content += `- **Tools**: ${data.tools.join(", ")}\n`;
1073
+ }
1074
+
1075
+ content += `- **Model**: ${data.model}\n`;
1076
+
1077
+ if (data.skills.length > 0) {
1078
+ content += `- **Skills**: ${data.skills.join(", ")}\n`;
1079
+ }
1080
+
1081
+ content += `- **Global**: ${data.isGlobal ? "Yes" : "No"}\n`;
1082
+ content += `- **Created**: ${data.created}\n`;
1083
+ content += `- **Updated**: ${data.updated}\n`;
1084
+
1085
+ content += `\n---\n\n`;
1086
+ content += `## System Prompt\n\n`;
1087
+ content += "```markdown\n";
1088
+ content += data.prompt;
1089
+ content += "\n```\n";
1090
+
1091
+ content += `\n## Claude Code Format\n\n`;
1092
+ content += "```markdown\n";
1093
+ content += generateClaudeAgentMarkdown(data);
1094
+ content += "```\n";
1095
+
1096
+ return content;
1097
+ }
1098
+
1099
+ // Update index file
1100
+ function updateIndex(data: AgentData, filename: string): void {
1101
+ if (!implDir) return;
1102
+
1103
+ const indexPath = path.join(implDir, "data", "indexes", "AGENTS.md");
1104
+
1105
+ if (!fs.existsSync(indexPath)) {
1106
+ // Create the index file if it doesn't exist
1107
+ const indexContent = `# Agents Index
1108
+
1109
+ Project: ${path.basename(getProjectRoot())}
1110
+ Created: ${timestamp}
1111
+
1112
+ ## Overview
1113
+
1114
+ This file indexes all agent definitions in this implementation.
1115
+
1116
+ ## Agents
1117
+
1118
+ | ID | File | Name | Slug | Global | Created |
1119
+ |----|------|------|------|--------|---------|
1120
+ | - | - | No agents yet | - | - | - |
1121
+
1122
+ ---
1123
+
1124
+ *Updated automatically by implementation-agent skill*
1125
+ `;
1126
+ fs.writeFileSync(indexPath, indexContent);
1127
+ }
1128
+
1129
+ let content = fs.readFileSync(indexPath, "utf-8");
1130
+
1131
+ const globalStr = data.isGlobal ? "Yes" : "No";
1132
+ const newRow = `| ${data.id} | ${filename} | ${data.name} | ${data.slug} | ${globalStr} | ${data.created} |`;
1133
+
1134
+ if (content.includes("| - | - | No agents yet | - | - | - |")) {
1135
+ content = content.replace("| - | - | No agents yet | - | - | - |", newRow);
1136
+ } else {
1137
+ const tableMatch = content.match(/(## Agents[\s\S]*?\|[-|]+\|[-|]+\|[-|]+\|[-|]+\|[-|]+\|[-|]+\|)/);
1138
+ if (tableMatch) {
1139
+ const insertPoint = tableMatch.index! + tableMatch[0].length;
1140
+ content = content.slice(0, insertPoint) + "\n" + newRow + content.slice(insertPoint);
1141
+ }
1142
+ }
1143
+
1144
+ content = content.replace(/\*Updated.*\*/, `*Updated: ${timestamp}*`);
1145
+ fs.writeFileSync(indexPath, content);
1146
+ }
1147
+
1148
+ // AI-powered agent generation
1149
+ async function gatherProjectContext(projectRoot: string): Promise<string> {
1150
+ const contextParts: string[] = [];
1151
+ const maxFileSize = 50000; // 50KB max per file
1152
+
1153
+ // Key files to read for project understanding
1154
+ const keyFiles = [
1155
+ "package.json",
1156
+ "README.md",
1157
+ "CLAUDE.md",
1158
+ ".claude/settings.json",
1159
+ "tsconfig.json",
1160
+ "pyproject.toml",
1161
+ "Cargo.toml",
1162
+ "go.mod",
1163
+ ];
1164
+
1165
+ for (const file of keyFiles) {
1166
+ const filePath = path.join(projectRoot, file);
1167
+ if (fs.existsSync(filePath)) {
1168
+ try {
1169
+ const stat = fs.statSync(filePath);
1170
+ if (stat.size < maxFileSize) {
1171
+ const content = fs.readFileSync(filePath, "utf-8");
1172
+ contextParts.push(`### ${file}\n\`\`\`\n${content}\n\`\`\``);
1173
+ }
1174
+ } catch (e) {
1175
+ // Skip unreadable files
1176
+ }
1177
+ }
1178
+ }
1179
+
1180
+ // Get directory structure (limited depth)
1181
+ const structure = getDirectoryStructure(projectRoot, 3);
1182
+ contextParts.push(`### Directory Structure\n\`\`\`\n${structure}\n\`\`\``);
1183
+
1184
+ // Sample some source files
1185
+ const srcDirs = ["src", "lib", "app", "pages", "components"];
1186
+ let sampleFiles = 0;
1187
+ const maxSamples = 5;
1188
+
1189
+ for (const dir of srcDirs) {
1190
+ const dirPath = path.join(projectRoot, dir);
1191
+ if (fs.existsSync(dirPath) && sampleFiles < maxSamples) {
1192
+ const files = fs.readdirSync(dirPath).filter((f) =>
1193
+ f.endsWith(".ts") || f.endsWith(".tsx") || f.endsWith(".js") ||
1194
+ f.endsWith(".py") || f.endsWith(".go") || f.endsWith(".rs")
1195
+ ).slice(0, maxSamples - sampleFiles);
1196
+
1197
+ for (const file of files) {
1198
+ const filePath = path.join(dirPath, file);
1199
+ try {
1200
+ const stat = fs.statSync(filePath);
1201
+ if (stat.isFile() && stat.size < maxFileSize) {
1202
+ const content = fs.readFileSync(filePath, "utf-8");
1203
+ // Only include first 100 lines
1204
+ const preview = content.split("\n").slice(0, 100).join("\n");
1205
+ contextParts.push(`### ${dir}/${file} (preview)\n\`\`\`\n${preview}\n\`\`\``);
1206
+ sampleFiles++;
1207
+ }
1208
+ } catch (e) {
1209
+ // Skip unreadable files
1210
+ }
1211
+ }
1212
+ }
1213
+ }
1214
+
1215
+ return contextParts.join("\n\n");
1216
+ }
1217
+
1218
+ function getDirectoryStructure(dir: string, maxDepth: number, currentDepth = 0, prefix = ""): string {
1219
+ if (currentDepth >= maxDepth) return "";
1220
+
1221
+ const items: string[] = [];
1222
+ const ignoreDirs = ["node_modules", ".git", "dist", "build", ".next", "__pycache__", "target", "vendor"];
1223
+
1224
+ try {
1225
+ const entries = fs.readdirSync(dir, { withFileTypes: true });
1226
+ const filtered = entries.filter((e) => !ignoreDirs.includes(e.name) && !e.name.startsWith("."));
1227
+
1228
+ for (let i = 0; i < filtered.length && i < 20; i++) {
1229
+ const entry = filtered[i];
1230
+ const isLast = i === filtered.length - 1 || i === 19;
1231
+ const connector = isLast ? "└── " : "├── ";
1232
+ const nextPrefix = prefix + (isLast ? " " : "│ ");
1233
+
1234
+ items.push(`${prefix}${connector}${entry.name}${entry.isDirectory() ? "/" : ""}`);
1235
+
1236
+ if (entry.isDirectory()) {
1237
+ const subStructure = getDirectoryStructure(
1238
+ path.join(dir, entry.name),
1239
+ maxDepth,
1240
+ currentDepth + 1,
1241
+ nextPrefix
1242
+ );
1243
+ if (subStructure) items.push(subStructure);
1244
+ }
1245
+ }
1246
+
1247
+ if (filtered.length > 20) {
1248
+ items.push(`${prefix}└── ... (${filtered.length - 20} more items)`);
1249
+ }
1250
+ } catch (e) {
1251
+ // Skip unreadable directories
1252
+ }
1253
+
1254
+ return items.join("\n");
1255
+ }
1256
+
1257
+ async function generateAgentsWithAI(userPrompt: string, projectRoot: string): Promise<AIGenerationResult> {
1258
+ const apiKey = process.env.ANTHROPIC_API_KEY;
1259
+
1260
+ if (!apiKey) {
1261
+ throw new Error(
1262
+ "ANTHROPIC_API_KEY environment variable is required for AI generation.\n" +
1263
+ "Set it with: export ANTHROPIC_API_KEY=your_key"
1264
+ );
1265
+ }
1266
+
1267
+ console.log("Gathering project context...");
1268
+ const projectContext = await gatherProjectContext(projectRoot);
1269
+
1270
+ console.log("Analyzing project with AI...");
1271
+
1272
+ const systemPrompt = `You are an expert at creating Claude Code agents. You analyze projects and create specialized AI agents that help developers work more efficiently.
1273
+
1274
+ When creating agents, follow these principles:
1275
+ 1. Each agent should have a clear, focused purpose
1276
+ 2. Agent descriptions should explain WHEN to use the agent (proactively)
1277
+ 3. Tools should be limited to what's necessary
1278
+ 4. Prompts should be detailed and actionable
1279
+ 5. Agents should follow best practices for their domain
1280
+
1281
+ Available tools for agents:
1282
+ - Read: Read files
1283
+ - Edit: Edit files
1284
+ - Write: Write new files
1285
+ - Bash: Run shell commands
1286
+ - Grep: Search file contents
1287
+ - Glob: Find files by pattern
1288
+ - WebFetch: Fetch web content
1289
+ - WebSearch: Search the web
1290
+ - Task: Delegate to sub-agents
1291
+ - LSP: Language server features
1292
+ - NotebookEdit: Edit Jupyter notebooks
1293
+
1294
+ Available models: sonnet (balanced), opus (most capable), haiku (fast), inherit (parent model)`;
1295
+
1296
+ const userMessage = `Analyze this project and create appropriate Claude Code agents based on the user's request.
1297
+
1298
+ User request: "${userPrompt}"
1299
+
1300
+ Project context:
1301
+ ${projectContext}
1302
+
1303
+ Create agents that would be most useful for this specific project. Consider:
1304
+ - The project's tech stack and languages
1305
+ - Common development workflows
1306
+ - Potential pain points the user might face
1307
+ - Best practices for the domain
1308
+
1309
+ Respond with JSON in this exact format:
1310
+ {
1311
+ "agents": [
1312
+ {
1313
+ "name": "Agent Name",
1314
+ "slug": "agent-slug",
1315
+ "description": "When to use this agent - written as: Use proactively when...",
1316
+ "tools": ["Read", "Edit", "Bash"],
1317
+ "model": "inherit",
1318
+ "prompt": "Detailed multi-line system prompt for the agent..."
1319
+ }
1320
+ ],
1321
+ "reasoning": "Brief explanation of why you chose these agents"
1322
+ }
1323
+
1324
+ Create between 2-5 agents that would be most valuable for this project.`;
1325
+
1326
+ try {
1327
+ const response = await fetch("https://api.anthropic.com/v1/messages", {
1328
+ method: "POST",
1329
+ headers: {
1330
+ "Content-Type": "application/json",
1331
+ "x-api-key": apiKey,
1332
+ "anthropic-version": "2023-06-01",
1333
+ },
1334
+ body: JSON.stringify({
1335
+ model: "claude-sonnet-4-20250514",
1336
+ max_tokens: 8192,
1337
+ temperature: 0.7,
1338
+ messages: [
1339
+ { role: "user", content: userMessage }
1340
+ ],
1341
+ system: systemPrompt,
1342
+ }),
1343
+ });
1344
+
1345
+ if (!response.ok) {
1346
+ const errorText = await response.text();
1347
+ throw new Error(`API request failed: ${response.status} - ${errorText}`);
1348
+ }
1349
+
1350
+ const data = await response.json() as any;
1351
+ const content = data.content?.[0]?.text || "";
1352
+
1353
+ // Extract JSON from response
1354
+ const jsonMatch = content.match(/\{[\s\S]*\}/);
1355
+ if (!jsonMatch) {
1356
+ throw new Error("Failed to parse AI response - no JSON found");
1357
+ }
1358
+
1359
+ const result = JSON.parse(jsonMatch[0]) as AIGenerationResult;
1360
+ return result;
1361
+ } catch (error) {
1362
+ if (error instanceof Error) {
1363
+ throw new Error(`AI generation failed: ${error.message}`);
1364
+ }
1365
+ throw error;
1366
+ }
1367
+ }
1368
+
1369
+ // Main execution with AI generation support
1370
+ async function mainWithGenerate(): Promise<void> {
1371
+ console.log(`\nImplementation Agent - AI Generation Mode`);
1372
+ console.log(`==========================================\n`);
1373
+
1374
+ const generatePrompt = args.generate as string;
1375
+ const projectRoot = process.env.SKILLS_CWD || process.cwd();
1376
+ const isDryRun = args["dry-run"] as boolean;
1377
+
1378
+ console.log(`Project: ${path.basename(projectRoot)}`);
1379
+ console.log(`Prompt: "${generatePrompt}"`);
1380
+ if (isDryRun) {
1381
+ console.log(`Mode: Dry run (no files will be created)\n`);
1382
+ } else {
1383
+ console.log();
1384
+ }
1385
+
1386
+ // Generate agents
1387
+ const result = await generateAgentsWithAI(generatePrompt, projectRoot);
1388
+
1389
+ console.log(`\n${"=".repeat(50)}`);
1390
+ console.log(`\nAI Analysis:`);
1391
+ console.log(`${result.reasoning}\n`);
1392
+ console.log(`Generated ${result.agents.length} agents:\n`);
1393
+
1394
+ // Display agents
1395
+ for (const agent of result.agents) {
1396
+ console.log(` ${agent.name} (${agent.slug})`);
1397
+ console.log(` ${agent.description.substring(0, 70)}...`);
1398
+ console.log(` Tools: ${agent.tools.join(", ")}`);
1399
+ console.log();
1400
+ }
1401
+
1402
+ if (isDryRun) {
1403
+ console.log(`Dry run complete. No files created.`);
1404
+ console.log(`Remove --dry-run to create these agents.`);
1405
+ return;
1406
+ }
1407
+
1408
+ // Create the agents
1409
+ console.log(`Creating agents...`);
1410
+
1411
+ const localImplDir = findImplementationDir();
1412
+ const localProjectRoot = localImplDir ? path.dirname(localImplDir) : projectRoot;
1413
+ const localClaudeAgentsDir = args.global
1414
+ ? path.join(os.homedir(), ".claude", "agents")
1415
+ : path.join(localProjectRoot, ".claude", "agents");
1416
+
1417
+ // Ensure directories exist
1418
+ if (!fs.existsSync(localClaudeAgentsDir)) {
1419
+ fs.mkdirSync(localClaudeAgentsDir, { recursive: true });
1420
+ }
1421
+
1422
+ let localOutputDir: string | null = null;
1423
+ if (!args.global && localImplDir) {
1424
+ localOutputDir = path.join(localImplDir, "data", "agents");
1425
+ if (!fs.existsSync(localOutputDir)) {
1426
+ fs.mkdirSync(localOutputDir, { recursive: true });
1427
+ }
1428
+ }
1429
+
1430
+ // Get starting sequence number
1431
+ let localSequence = 1;
1432
+ if (localOutputDir && fs.existsSync(localOutputDir)) {
1433
+ const files = fs.readdirSync(localOutputDir);
1434
+ for (const file of files) {
1435
+ const match = file.match(/^agent_(\d{5})_/);
1436
+ if (match) {
1437
+ const seq = parseInt(match[1], 10);
1438
+ if (seq >= localSequence) localSequence = seq + 1;
1439
+ }
1440
+ }
1441
+ }
1442
+
1443
+ const localTimestamp = new Date().toISOString().split("T")[0];
1444
+
1445
+ for (const agent of result.agents) {
1446
+ const localAgentId = `agent_${String(localSequence).padStart(5, "0")}`;
1447
+
1448
+ const localAgentData: AgentData = {
1449
+ id: localAgentId,
1450
+ slug: agent.slug,
1451
+ name: agent.name,
1452
+ description: agent.description,
1453
+ tools: agent.tools,
1454
+ model: agent.model,
1455
+ permissionMode: "default",
1456
+ skills: [],
1457
+ prompt: agent.prompt,
1458
+ created: localTimestamp,
1459
+ updated: localTimestamp,
1460
+ isGlobal: args.global as boolean,
1461
+ };
1462
+
1463
+ // Generate Claude Code agent file
1464
+ const claudeAgentContent = generateClaudeAgentMarkdown(localAgentData);
1465
+ const claudeAgentPath = path.join(localClaudeAgentsDir, `${agent.slug}.md`);
1466
+
1467
+ if (!args["skip-sync"]) {
1468
+ fs.writeFileSync(claudeAgentPath, claudeAgentContent);
1469
+ console.log(` Created: ${claudeAgentPath}`);
1470
+ }
1471
+
1472
+ // Generate archived file (only for non-global)
1473
+ if (localOutputDir) {
1474
+ const archiveFilename = `${localAgentId}_${agent.slug.replace(/-/g, "_")}.md`;
1475
+ const archivePath = path.join(localOutputDir, archiveFilename);
1476
+ const archivedContent = generateArchivedMarkdown(localAgentData);
1477
+ fs.writeFileSync(archivePath, archivedContent);
1478
+
1479
+ // Update index
1480
+ if (!args["skip-index"] && localImplDir) {
1481
+ updateIndex(localAgentData, archiveFilename);
1482
+ }
1483
+ }
1484
+
1485
+ localSequence++;
1486
+ }
1487
+
1488
+ console.log(`\n${"=".repeat(50)}`);
1489
+ console.log(`\nSuccessfully created ${result.agents.length} agents!`);
1490
+ console.log(`\nUsage in Claude Code:`);
1491
+ for (const agent of result.agents) {
1492
+ console.log(` > Use the ${agent.slug} agent to...`);
1493
+ }
1494
+ }
1495
+
1496
+ // Main execution
1497
+ async function main(): Promise<void> {
1498
+ console.log(`\nImplementation Agent`);
1499
+ console.log(`====================\n`);
1500
+
1501
+ // Generate Claude Code agent file
1502
+ const claudeAgentContent = generateClaudeAgentMarkdown(agentData);
1503
+ const claudeAgentPath = path.join(claudeAgentsDir, `${slug}.md`);
1504
+
1505
+ if (!args["skip-sync"]) {
1506
+ fs.writeFileSync(claudeAgentPath, claudeAgentContent);
1507
+ console.log(`Created Claude agent: ${claudeAgentPath}`);
1508
+ }
1509
+
1510
+ // Generate archived file (only for non-global)
1511
+ let archiveFilename = "";
1512
+ if (outputDir) {
1513
+ archiveFilename = `${agentId}_${slug.replace(/-/g, "_")}.md`;
1514
+ const archivePath = path.join(outputDir, archiveFilename);
1515
+ const archivedContent = generateArchivedMarkdown(agentData);
1516
+ fs.writeFileSync(archivePath, archivedContent);
1517
+ console.log(`Created archive: ${archivePath}`);
1518
+ }
1519
+
1520
+ console.log(`\nAgent Details:`);
1521
+ console.log(` ID: ${agentData.id}`);
1522
+ console.log(` Name: ${agentData.name}`);
1523
+ console.log(` Slug: ${agentData.slug}`);
1524
+ console.log(` Description: ${agentData.description.substring(0, 60)}...`);
1525
+
1526
+ if (agentData.tools.length > 0) {
1527
+ console.log(` Tools: ${agentData.tools.join(", ")}`);
1528
+ }
1529
+
1530
+ console.log(` Model: ${agentData.model}`);
1531
+ console.log(` Global: ${agentData.isGlobal ? "Yes" : "No"}`);
1532
+
1533
+ if (baseTemplate) {
1534
+ console.log(` Template: ${templateName}`);
1535
+ }
1536
+
1537
+ // Update index
1538
+ if (!args["skip-index"] && !isGlobal && outputDir) {
1539
+ console.log(`\nUpdating AGENTS.md index...`);
1540
+ updateIndex(agentData, archiveFilename);
1541
+ console.log(`Index updated.`);
1542
+ }
1543
+
1544
+ console.log(`\n${"=".repeat(40)}`);
1545
+ console.log(`\nAgent created successfully!`);
1546
+
1547
+ if (!args["skip-sync"]) {
1548
+ console.log(`\nUsage in Claude Code:`);
1549
+ console.log(` > Use the ${slug} agent to...`);
1550
+ console.log(` > Have ${slug} review my code`);
1551
+ }
1552
+ }
1553
+
1554
+ // Entry point - route to appropriate mode
1555
+ if (args.generate) {
1556
+ mainWithGenerate().catch((error) => {
1557
+ console.error(`Error: ${error.message}`);
1558
+ process.exit(1);
1559
+ });
1560
+ } else {
1561
+ main().catch((error) => {
1562
+ console.error(`Error: ${error.message}`);
1563
+ process.exit(1);
1564
+ });
1565
+ }