@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,209 @@
1
+ import { existsSync, readFileSync, writeFileSync, mkdirSync } from "fs";
2
+ import { join } from "path";
3
+ import { homedir } from "os";
4
+
5
+ export interface Config {
6
+ apiKey?: string;
7
+ apiSecret?: string;
8
+ customerId?: string;
9
+ shopperId?: string;
10
+ apiUrl: string;
11
+ // Remote server configuration
12
+ useRemoteServer?: boolean;
13
+ remoteServerUrl: string;
14
+ remoteApiKey?: string;
15
+ }
16
+
17
+ const CONFIG_DIR = join(homedir(), ".config", "service-domainpurchase");
18
+ export const CONFIG_FILE = join(CONFIG_DIR, "config.json");
19
+ const AWS_SECRET_NAME = process.env.AWS_SECRET_NAME || "your-org/tool/brandsight/api/live";
20
+
21
+ const DEFAULT_CONFIG: Config = {
22
+ apiUrl: "https://api.godaddy.com",
23
+ remoteServerUrl: process.env.DOMAIN_REMOTE_SERVER_URL || "https://service.example.com/domainpurchase",
24
+ useRemoteServer: false,
25
+ };
26
+
27
+ // Cache for AWS secrets to avoid repeated API calls
28
+ let awsSecretsCache: Partial<Config> | null = null;
29
+
30
+ async function loadAwsSecrets(): Promise<Partial<Config>> {
31
+ if (awsSecretsCache) {
32
+ return awsSecretsCache;
33
+ }
34
+
35
+ try {
36
+ const { SecretsManagerClient, GetSecretValueCommand } = await import(
37
+ "@aws-sdk/client-secrets-manager"
38
+ );
39
+ const client = new SecretsManagerClient({ region: "us-east-1" });
40
+ const response = await client.send(
41
+ new GetSecretValueCommand({ SecretId: AWS_SECRET_NAME })
42
+ );
43
+
44
+ if (response.SecretString) {
45
+ const secret = JSON.parse(response.SecretString);
46
+ awsSecretsCache = {
47
+ apiKey: secret.api_key,
48
+ apiSecret: secret.api_secret,
49
+ customerId: secret.customer_id,
50
+ shopperId: secret.shopper_id,
51
+ };
52
+ return awsSecretsCache;
53
+ }
54
+ } catch {
55
+ // AWS secrets not available, fall back to other sources
56
+ }
57
+
58
+ return {};
59
+ }
60
+
61
+ export function loadConfig(): Config {
62
+ // First check environment variables
63
+ const envConfig: Partial<Config> = {
64
+ apiKey: process.env.DOMAIN_API_KEY,
65
+ apiSecret: process.env.DOMAIN_API_SECRET,
66
+ customerId: process.env.DOMAIN_CUSTOMER_ID,
67
+ apiUrl: process.env.DOMAIN_API_URL,
68
+ };
69
+
70
+ // Then load from config file
71
+ let fileConfig: Partial<Config> = {};
72
+ if (existsSync(CONFIG_FILE)) {
73
+ try {
74
+ fileConfig = JSON.parse(readFileSync(CONFIG_FILE, "utf-8"));
75
+ } catch {
76
+ // Ignore parse errors
77
+ }
78
+ }
79
+
80
+ // Merge with defaults (env vars take priority)
81
+ return {
82
+ ...DEFAULT_CONFIG,
83
+ ...fileConfig,
84
+ ...Object.fromEntries(
85
+ Object.entries(envConfig).filter(([_, v]) => v !== undefined)
86
+ ),
87
+ };
88
+ }
89
+
90
+ export async function loadConfigAsync(): Promise<Config> {
91
+ // Load AWS secrets first (lowest priority)
92
+ const awsConfig = await loadAwsSecrets();
93
+
94
+ // Then check environment variables
95
+ const envConfig: Partial<Config> = {
96
+ apiKey: process.env.DOMAIN_API_KEY,
97
+ apiSecret: process.env.DOMAIN_API_SECRET,
98
+ customerId: process.env.DOMAIN_CUSTOMER_ID,
99
+ apiUrl: process.env.DOMAIN_API_URL,
100
+ useRemoteServer: process.env.DOMAIN_USE_REMOTE_SERVER === "true",
101
+ remoteServerUrl: process.env.DOMAIN_REMOTE_SERVER_URL,
102
+ remoteApiKey: process.env.DOMAIN_REMOTE_API_KEY,
103
+ };
104
+
105
+ // Then load from config file
106
+ let fileConfig: Partial<Config> = {};
107
+ if (existsSync(CONFIG_FILE)) {
108
+ try {
109
+ fileConfig = JSON.parse(readFileSync(CONFIG_FILE, "utf-8"));
110
+ } catch {
111
+ // Ignore parse errors
112
+ }
113
+ }
114
+
115
+ // Merge: AWS -> file -> env (env takes highest priority)
116
+ return {
117
+ ...DEFAULT_CONFIG,
118
+ ...awsConfig,
119
+ ...fileConfig,
120
+ ...Object.fromEntries(
121
+ Object.entries(envConfig).filter(([_, v]) => v !== undefined)
122
+ ),
123
+ };
124
+ }
125
+
126
+ export function saveConfig(config: Partial<Config>): void {
127
+ if (!existsSync(CONFIG_DIR)) {
128
+ mkdirSync(CONFIG_DIR, { recursive: true });
129
+ }
130
+
131
+ const current = loadConfig();
132
+ const merged = { ...current, ...config };
133
+ writeFileSync(CONFIG_FILE, JSON.stringify(merged, null, 2));
134
+ }
135
+
136
+ export function getApiKey(): string | undefined {
137
+ return loadConfig().apiKey;
138
+ }
139
+
140
+ export function getApiSecret(): string | undefined {
141
+ return loadConfig().apiSecret;
142
+ }
143
+
144
+ export function getCustomerId(): string | undefined {
145
+ return loadConfig().customerId;
146
+ }
147
+
148
+ export function getApiUrl(): string {
149
+ return loadConfig().apiUrl;
150
+ }
151
+
152
+ // Async versions that can load from AWS Secrets Manager
153
+ export async function getApiKeyAsync(): Promise<string | undefined> {
154
+ return (await loadConfigAsync()).apiKey;
155
+ }
156
+
157
+ export async function getApiSecretAsync(): Promise<string | undefined> {
158
+ return (await loadConfigAsync()).apiSecret;
159
+ }
160
+
161
+ export async function getCustomerIdAsync(): Promise<string | undefined> {
162
+ return (await loadConfigAsync()).customerId;
163
+ }
164
+
165
+ export async function getShopperIdAsync(): Promise<string | undefined> {
166
+ return (await loadConfigAsync()).shopperId;
167
+ }
168
+
169
+ export async function getApiUrlAsync(): Promise<string> {
170
+ return (await loadConfigAsync()).apiUrl;
171
+ }
172
+
173
+ // Remote server configuration getters
174
+ export function useRemoteServer(): boolean {
175
+ return loadConfig().useRemoteServer || false;
176
+ }
177
+
178
+ export function getRemoteServerUrl(): string {
179
+ return loadConfig().remoteServerUrl;
180
+ }
181
+
182
+ export function getRemoteApiKey(): string | undefined {
183
+ return loadConfig().remoteApiKey;
184
+ }
185
+
186
+ export async function getRemoteApiKeyAsync(): Promise<string | undefined> {
187
+ const config = await loadConfigAsync();
188
+ if (config.remoteApiKey) {
189
+ return config.remoteApiKey;
190
+ }
191
+ // Try to load from AWS Secrets Manager
192
+ try {
193
+ const { SecretsManagerClient, GetSecretValueCommand } = await import(
194
+ "@aws-sdk/client-secrets-manager"
195
+ );
196
+ const client = new SecretsManagerClient({ region: "us-east-1" });
197
+ const response = await client.send(
198
+ new GetSecretValueCommand({ SecretId: process.env.DOMAIN_API_KEY_SECRET_ID || "your-org/prod/service/domainpurchase/api-key" })
199
+ );
200
+ return response.SecretString;
201
+ } catch {
202
+ return undefined;
203
+ }
204
+ }
205
+
206
+ // Initialize config from AWS on first run
207
+ export async function initConfig(): Promise<void> {
208
+ await loadConfigAsync();
209
+ }
@@ -0,0 +1,165 @@
1
+ import { existsSync, mkdirSync, writeFileSync, appendFileSync } from "fs";
2
+ import { join } from "path";
3
+ import { homedir } from "os";
4
+
5
+ const SERVICE_NAME = "service-domainpurchase";
6
+ const SERVICE_DIR_NAME = `.${SERVICE_NAME}`;
7
+
8
+ export interface InstallOptions {
9
+ force?: boolean;
10
+ }
11
+
12
+ export function getServiceDir(): string {
13
+ return join(homedir(), SERVICE_DIR_NAME);
14
+ }
15
+
16
+ export function getLogFilePath(): string {
17
+ return join(getServiceDir(), `${SERVICE_NAME}.log`);
18
+ }
19
+
20
+ export function getReadmePath(): string {
21
+ return join(getServiceDir(), "README.md");
22
+ }
23
+
24
+ export function isInstalled(): boolean {
25
+ return existsSync(getServiceDir());
26
+ }
27
+
28
+ export function ensureInstalled(): void {
29
+ if (!isInstalled()) {
30
+ install();
31
+ }
32
+ }
33
+
34
+ export function install(options: InstallOptions = {}): { success: boolean; path: string; message: string } {
35
+ const serviceDir = getServiceDir();
36
+
37
+ if (existsSync(serviceDir) && !options.force) {
38
+ return {
39
+ success: false,
40
+ path: serviceDir,
41
+ message: "Already installed. Use --force to reinstall.",
42
+ };
43
+ }
44
+
45
+ mkdirSync(serviceDir, { recursive: true });
46
+
47
+ const readmeContent = generateReadme();
48
+ writeFileSync(getReadmePath(), readmeContent);
49
+
50
+ const logHeader = `# ${SERVICE_NAME} log file
51
+ # Created: ${new Date().toISOString()}
52
+ # This file contains activity history and logs.
53
+ # -------------------------------------------------------
54
+
55
+ `;
56
+ writeFileSync(getLogFilePath(), logHeader);
57
+
58
+ return {
59
+ success: true,
60
+ path: serviceDir,
61
+ message: `Installed at ${serviceDir}`,
62
+ };
63
+ }
64
+
65
+ export function uninstall(): { success: boolean; message: string } {
66
+ const serviceDir = getServiceDir();
67
+
68
+ if (!existsSync(serviceDir)) {
69
+ return {
70
+ success: false,
71
+ message: "Not installed.",
72
+ };
73
+ }
74
+
75
+ const { rmSync } = require("fs");
76
+ rmSync(serviceDir, { recursive: true, force: true });
77
+
78
+ return {
79
+ success: true,
80
+ message: `Uninstalled from ${serviceDir}`,
81
+ };
82
+ }
83
+
84
+ function generateReadme(): string {
85
+ return `# .${SERVICE_NAME}
86
+
87
+ This directory contains local configuration and logs for \`${SERVICE_NAME}\`.
88
+
89
+ ## Files
90
+
91
+ | Path | Description |
92
+ |------|-------------|
93
+ | \`${SERVICE_NAME}.log\` | Activity log |
94
+ | \`README.md\` | This file |
95
+
96
+ ## What is ${SERVICE_NAME}?
97
+
98
+ \`${SERVICE_NAME}\` is a domain purchase service that provides:
99
+
100
+ - Domain registration automation
101
+ - Registrar integrations (GoDaddy, Namecheap, etc.)
102
+ - DNS configuration
103
+ - Domain transfer management
104
+ - Renewal tracking
105
+
106
+ ## Usage
107
+
108
+ \`\`\`bash
109
+ # Purchase a domain
110
+ service-domainpurchase buy --domain "example.com"
111
+
112
+ # List purchased domains
113
+ service-domainpurchase list
114
+
115
+ # Check purchase status
116
+ service-domainpurchase status --domain "example.com"
117
+
118
+ # Start the server
119
+ service-domainpurchase server
120
+ \`\`\`
121
+
122
+ ## Log File
123
+
124
+ The \`${SERVICE_NAME}.log\` file contains:
125
+ - Purchase transactions
126
+ - Registration status
127
+ - DNS changes
128
+ - API activity
129
+
130
+ ## More Information
131
+
132
+ For full documentation, run:
133
+
134
+ \`\`\`bash
135
+ service-domainpurchase --help
136
+ \`\`\`
137
+ `;
138
+ }
139
+
140
+ export type LogLevel = "debug" | "info" | "warn" | "error";
141
+
142
+ export function logToFile(message: string, level: LogLevel = "info"): void {
143
+ ensureInstalled();
144
+
145
+ const timestamp = new Date().toISOString();
146
+ const logLine = `[${timestamp}] [${level.toUpperCase()}] ${message}\n`;
147
+
148
+ try {
149
+ appendFileSync(getLogFilePath(), logLine);
150
+ } catch {
151
+ // Silently fail
152
+ }
153
+ }
154
+
155
+ export function logInfo(message: string): void {
156
+ logToFile(message, "info");
157
+ }
158
+
159
+ export function logError(message: string): void {
160
+ logToFile(message, "error");
161
+ }
162
+
163
+ export function logWarn(message: string): void {
164
+ logToFile(message, "warn");
165
+ }
@@ -0,0 +1,332 @@
1
+ /**
2
+ * HTTP Server for service-domainpurchase
3
+ * Exposes domain purchase functionality as REST API
4
+ */
5
+
6
+ import { purchaseApi, formatPrice, type Contact } from "../lib/api-client";
7
+ import { loadConfig, saveConfig } from "../lib/config";
8
+
9
+ const PORT = parseInt(process.env.PORT || "3000");
10
+ const API_KEY = process.env.API_KEY || "";
11
+ const PATH_PREFIX = "/domainpurchase";
12
+
13
+ // API Key validation
14
+ function validateApiKey(req: Request): boolean {
15
+ if (!API_KEY) { console.warn("WARNING: API_KEY not set - all requests rejected"); return false; }
16
+
17
+ const authHeader = req.headers.get("Authorization");
18
+ if (!authHeader?.startsWith("Bearer ")) return false;
19
+
20
+ return authHeader.slice(7) === API_KEY;
21
+ }
22
+
23
+ // CORS headers
24
+ function corsHeaders(): HeadersInit {
25
+ return {
26
+ "Access-Control-Allow-Origin": "*",
27
+ "Access-Control-Allow-Methods": "GET, POST, PUT, OPTIONS",
28
+ "Access-Control-Allow-Headers": "Content-Type, Authorization",
29
+ };
30
+ }
31
+
32
+ async function handleRequest(req: Request): Promise<Response> {
33
+ const url = new URL(req.url);
34
+ const { searchParams } = url;
35
+ const method = req.method;
36
+
37
+ // Strip path prefix if present (for ALB routing)
38
+ let pathname = url.pathname;
39
+ if (pathname.startsWith(PATH_PREFIX)) {
40
+ pathname = pathname.slice(PATH_PREFIX.length) || "/";
41
+ }
42
+
43
+ // Handle CORS preflight
44
+ if (method === "OPTIONS") {
45
+ return new Response(null, { headers: corsHeaders() });
46
+ }
47
+
48
+ try {
49
+ // Health check (no auth required)
50
+ if (pathname === "/health" && method === "GET") {
51
+ return Response.json(
52
+ {
53
+ status: "ok",
54
+ service: "service-domainpurchase",
55
+ timestamp: new Date().toISOString(),
56
+ },
57
+ { headers: corsHeaders() }
58
+ );
59
+ }
60
+
61
+ // All routes below require authentication
62
+ if (!validateApiKey(req)) {
63
+ return Response.json(
64
+ { error: "Unauthorized" },
65
+ { status: 401, headers: corsHeaders() }
66
+ );
67
+ }
68
+
69
+ // Check domain availability
70
+ // GET /check?domain=example.com&transfer=false
71
+ if (pathname === "/check" && method === "GET") {
72
+ const domain = searchParams.get("domain");
73
+ if (!domain) {
74
+ return Response.json(
75
+ { error: "domain parameter is required" },
76
+ { status: 400, headers: corsHeaders() }
77
+ );
78
+ }
79
+
80
+ const transfer = searchParams.get("transfer") === "true";
81
+ const result = await purchaseApi.checkAvailability(domain, transfer);
82
+ return Response.json(
83
+ {
84
+ ...result,
85
+ priceFormatted: result.price ? formatPrice(result.price, result.currency) : null,
86
+ },
87
+ { headers: corsHeaders() }
88
+ );
89
+ }
90
+
91
+ // Get legal agreements for TLDs
92
+ // GET /agreements?tlds=com,net&privacy=true
93
+ if (pathname === "/agreements" && method === "GET") {
94
+ const tldsParam = searchParams.get("tlds");
95
+ if (!tldsParam) {
96
+ return Response.json(
97
+ { error: "tlds parameter is required" },
98
+ { status: 400, headers: corsHeaders() }
99
+ );
100
+ }
101
+
102
+ const tlds = tldsParam.split(",").map((t) => t.trim());
103
+ const privacy = searchParams.get("privacy") === "true";
104
+ const agreements = await purchaseApi.getAgreements(tlds, privacy);
105
+ return Response.json({ agreements }, { headers: corsHeaders() });
106
+ }
107
+
108
+ // Validate purchase request (dry run)
109
+ // POST /validate { domain, contact, period, privacy, autoRenew }
110
+ if (pathname === "/validate" && method === "POST") {
111
+ const body = await req.json();
112
+ if (!body.domain) {
113
+ return Response.json(
114
+ { error: "domain is required" },
115
+ { status: 400, headers: corsHeaders() }
116
+ );
117
+ }
118
+
119
+ // Get TLD from domain
120
+ const tld = body.domain.split(".").slice(1).join(".");
121
+ const agreements = await purchaseApi.getAgreements([tld], body.privacy);
122
+ const agreementKeys = agreements.map((a: any) => a.agreementKey);
123
+
124
+ // Get public IP for consent
125
+ const ipResponse = await fetch("https://api.ipify.org?format=json");
126
+ const ipData = (await ipResponse.json()) as { ip: string };
127
+
128
+ const request = {
129
+ domain: body.domain,
130
+ consent: {
131
+ agreedAt: new Date().toISOString(),
132
+ agreedBy: ipData.ip,
133
+ agreementKeys,
134
+ },
135
+ contactRegistrant: body.contact || getDefaultContact(),
136
+ period: body.period || 1,
137
+ privacy: body.privacy || false,
138
+ renewAuto: body.autoRenew || false,
139
+ };
140
+
141
+ const result = await purchaseApi.validatePurchase(request);
142
+ return Response.json(result, { headers: corsHeaders() });
143
+ }
144
+
145
+ // Purchase domain (CAUTION: This actually purchases!)
146
+ // POST /purchase { domain, contact, period, privacy, autoRenew, nameservers }
147
+ if (pathname === "/purchase" && method === "POST") {
148
+ const body = await req.json();
149
+ if (!body.domain || !body.contact) {
150
+ return Response.json(
151
+ { error: "domain and contact are required" },
152
+ { status: 400, headers: corsHeaders() }
153
+ );
154
+ }
155
+
156
+ // Check availability first
157
+ const availability = await purchaseApi.checkAvailability(body.domain);
158
+ if (!availability.available) {
159
+ return Response.json(
160
+ { error: `${body.domain} is not available for registration` },
161
+ { status: 400, headers: corsHeaders() }
162
+ );
163
+ }
164
+
165
+ // Get TLD from domain
166
+ const tld = body.domain.split(".").slice(1).join(".");
167
+ const agreements = await purchaseApi.getAgreements([tld], body.privacy);
168
+ const agreementKeys = agreements.map((a: any) => a.agreementKey);
169
+
170
+ // Get public IP for consent
171
+ const ipResponse = await fetch("https://api.ipify.org?format=json");
172
+ const ipData = (await ipResponse.json()) as { ip: string };
173
+
174
+ const request = {
175
+ domain: body.domain,
176
+ consent: {
177
+ agreedAt: new Date().toISOString(),
178
+ agreedBy: ipData.ip,
179
+ agreementKeys,
180
+ },
181
+ contactRegistrant: body.contact,
182
+ contactAdmin: body.contact,
183
+ contactBilling: body.contact,
184
+ contactTech: body.contact,
185
+ period: body.period || 1,
186
+ privacy: body.privacy || false,
187
+ renewAuto: body.autoRenew || false,
188
+ ...(body.nameservers && { nameServers: body.nameservers }),
189
+ };
190
+
191
+ const result = await purchaseApi.purchaseDomain(request);
192
+ return Response.json(result, { status: 201, headers: corsHeaders() });
193
+ }
194
+
195
+ // List owned domains
196
+ // GET /list?limit=100
197
+ if (pathname === "/list" && method === "GET") {
198
+ const limit = parseInt(searchParams.get("limit") || "100");
199
+ const domains = await purchaseApi.listOwnedDomains(limit);
200
+ return Response.json({ domains, count: domains.length }, { headers: corsHeaders() });
201
+ }
202
+
203
+ // Get domain details
204
+ // GET /info?domain=example.com
205
+ if (pathname === "/info" && method === "GET") {
206
+ const domain = searchParams.get("domain");
207
+ if (!domain) {
208
+ return Response.json(
209
+ { error: "domain parameter is required" },
210
+ { status: 400, headers: corsHeaders() }
211
+ );
212
+ }
213
+
214
+ const details = await purchaseApi.getDomainDetails(domain);
215
+ return Response.json(details, { headers: corsHeaders() });
216
+ }
217
+
218
+ // Update domain settings
219
+ // PUT /update?domain=example.com { autoRenew, privacy, nameservers }
220
+ if (pathname === "/update" && method === "PUT") {
221
+ const domain = searchParams.get("domain");
222
+ if (!domain) {
223
+ return Response.json(
224
+ { error: "domain parameter is required" },
225
+ { status: 400, headers: corsHeaders() }
226
+ );
227
+ }
228
+
229
+ const body = await req.json();
230
+ const updates: any = {};
231
+
232
+ if (body.autoRenew !== undefined) {
233
+ updates.renewAuto = body.autoRenew;
234
+ }
235
+ if (body.privacy !== undefined) {
236
+ updates.privacy = body.privacy;
237
+ }
238
+ if (body.nameservers) {
239
+ updates.nameServers = body.nameservers;
240
+ }
241
+
242
+ const result = await purchaseApi.updateDomain(domain, updates);
243
+ return Response.json(result, { headers: corsHeaders() });
244
+ }
245
+
246
+ // Renew domain
247
+ // POST /renew { domain, period }
248
+ if (pathname === "/renew" && method === "POST") {
249
+ const body = await req.json();
250
+ if (!body.domain) {
251
+ return Response.json(
252
+ { error: "domain is required" },
253
+ { status: 400, headers: corsHeaders() }
254
+ );
255
+ }
256
+
257
+ const result = await purchaseApi.renewDomain(body.domain, body.period || 1);
258
+ return Response.json(result, { headers: corsHeaders() });
259
+ }
260
+
261
+ // Get contact template
262
+ // GET /contact-template
263
+ if (pathname === "/contact-template" && method === "GET") {
264
+ return Response.json(
265
+ {
266
+ template: {
267
+ nameFirst: "John",
268
+ nameLast: "Doe",
269
+ email: "john.doe@example.com",
270
+ phone: "+1.5551234567",
271
+ organization: "Example Corp",
272
+ addressMailing: {
273
+ address1: "123 Main Street",
274
+ address2: "Suite 100",
275
+ city: "San Francisco",
276
+ state: "CA",
277
+ postalCode: "94102",
278
+ country: "US",
279
+ },
280
+ encoding: "UTF-8",
281
+ },
282
+ },
283
+ { headers: corsHeaders() }
284
+ );
285
+ }
286
+
287
+ return Response.json({ error: "Not found" }, { status: 404, headers: corsHeaders() });
288
+ } catch (error) {
289
+ console.error("Request error:", error);
290
+ return Response.json(
291
+ { error: error instanceof Error ? error.message : "Internal server error" },
292
+ { status: 500, headers: corsHeaders() }
293
+ );
294
+ }
295
+ }
296
+
297
+ function getDefaultContact(): Contact {
298
+ return {
299
+ nameFirst: "Test",
300
+ nameLast: "User",
301
+ email: "test@example.com",
302
+ phone: "+1.5555555555",
303
+ addressMailing: {
304
+ address1: "123 Test St",
305
+ city: "Test City",
306
+ state: "CA",
307
+ postalCode: "90210",
308
+ country: "US",
309
+ },
310
+ encoding: "UTF-8",
311
+ };
312
+ }
313
+
314
+ const server = Bun.serve({
315
+ port: PORT,
316
+ fetch: handleRequest,
317
+ });
318
+
319
+ console.log(`Service-Domainpurchase server running at http://localhost:${PORT}`);
320
+
321
+ // Graceful shutdown
322
+ process.on("SIGINT", () => {
323
+ console.log("\nShutting down gracefully...");
324
+ server.stop();
325
+ process.exit(0);
326
+ });
327
+
328
+ process.on("SIGTERM", () => {
329
+ console.log("\nShutting down gracefully...");
330
+ server.stop();
331
+ process.exit(0);
332
+ });