@hienlh/ppm 0.9.81 → 0.9.83

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 (1754) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/CLAUDE.md +12 -0
  3. package/assets/skills/ppm-guide/SKILL.md +61 -0
  4. package/bun.lock +9 -1
  5. package/dist/web/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  6. package/dist/web/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  7. package/dist/web/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  8. package/dist/web/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  9. package/dist/web/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  10. package/dist/web/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  11. package/dist/web/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  12. package/dist/web/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  13. package/dist/web/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  14. package/dist/web/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  15. package/dist/web/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  16. package/dist/web/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  17. package/dist/web/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  18. package/dist/web/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  19. package/dist/web/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  20. package/dist/web/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  21. package/dist/web/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  22. package/dist/web/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  23. package/dist/web/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  24. package/dist/web/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  25. package/dist/web/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  26. package/dist/web/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  27. package/dist/web/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  28. package/dist/web/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  29. package/dist/web/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  30. package/dist/web/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  31. package/dist/web/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  32. package/dist/web/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  33. package/dist/web/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  34. package/dist/web/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  35. package/dist/web/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  36. package/dist/web/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  37. package/dist/web/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  38. package/dist/web/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  39. package/dist/web/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  40. package/dist/web/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  41. package/dist/web/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  42. package/dist/web/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  43. package/dist/web/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  44. package/dist/web/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  45. package/dist/web/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  46. package/dist/web/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  47. package/dist/web/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  48. package/dist/web/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  49. package/dist/web/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  50. package/dist/web/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  51. package/dist/web/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  52. package/dist/web/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  53. package/dist/web/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  54. package/dist/web/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  55. package/dist/web/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  56. package/dist/web/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  57. package/dist/web/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  58. package/dist/web/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  59. package/dist/web/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  60. package/dist/web/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  61. package/dist/web/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  62. package/dist/web/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  63. package/dist/web/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  64. package/dist/web/assets/chat-tab-DBJJz0Dm.js +10 -0
  65. package/dist/web/assets/{code-editor-CKhVVTIi.js → code-editor-BvSFsrGo.js} +1 -1
  66. package/dist/web/assets/{database-viewer-VT17cuX4.js → database-viewer-0P_zRC9w.js} +1 -1
  67. package/dist/web/assets/{diff-viewer-D6gXDpSU.js → diff-viewer-BmBJq4gO.js} +1 -1
  68. package/dist/web/assets/{extension-webview-CAQUbBuw.js → extension-webview-Cx0GpRyC.js} +1 -1
  69. package/dist/web/assets/{git-graph-CdRJbH07.js → git-graph-BAlhf058.js} +1 -1
  70. package/dist/web/assets/index-BDAqXmpQ.js +30 -0
  71. package/dist/web/assets/index-BYXjCNlK.css +2 -0
  72. package/dist/web/assets/keybindings-store-L7UlPjK0.js +1 -0
  73. package/dist/web/assets/markdown-renderer-CYs_lrjt.js +326 -0
  74. package/dist/web/assets/{port-forwarding-tab-1vSZG1Ga.js → port-forwarding-tab-CSHJ7gxM.js} +1 -1
  75. package/dist/web/assets/{postgres-viewer-Bn8hKEnP.js → postgres-viewer-DlCLiEGU.js} +1 -1
  76. package/dist/web/assets/{settings-tab-CpG9UbHr.js → settings-tab-Dcr7lDcJ.js} +1 -1
  77. package/dist/web/assets/{sql-query-editor-yvUfZVDr.js → sql-query-editor-Dxx-QZaI.js} +1 -1
  78. package/dist/web/assets/{sqlite-viewer-BSFIa0hd.js → sqlite-viewer-B0052fC-.js} +1 -1
  79. package/dist/web/assets/{terminal-tab-CbIBTfPE.js → terminal-tab-yfmxGQ5e.js} +1 -1
  80. package/dist/web/assets/{use-monaco-theme-x9tJcwlL.js → use-monaco-theme-7qyyJae5.js} +1 -1
  81. package/dist/web/index.html +2 -2
  82. package/dist/web/sw.js +1 -1
  83. package/docs/codebase-summary.md +78 -0
  84. package/docs/project-changelog.md +29 -0
  85. package/docs/system-architecture.md +2 -0
  86. package/package.json +5 -2
  87. package/scripts/check-ppm-dir-usage.sh +21 -0
  88. package/scripts/generate-ppm-guide.ts +92 -0
  89. package/src/cli/commands/cloud.ts +1 -0
  90. package/src/cli/commands/init.ts +2 -1
  91. package/src/cli/commands/logs.ts +11 -11
  92. package/src/cli/commands/report.ts +3 -2
  93. package/src/cli/commands/restart.ts +22 -23
  94. package/src/cli/commands/skills-cmd.ts +123 -0
  95. package/src/cli/commands/status.ts +7 -8
  96. package/src/cli/commands/stop.ts +18 -19
  97. package/src/index.ts +3 -0
  98. package/src/lib/account-crypto.ts +12 -7
  99. package/src/providers/claude-agent-sdk.ts +148 -12
  100. package/src/server/index.ts +8 -8
  101. package/src/server/routes/chat.ts +4 -2
  102. package/src/server/routes/port-forwarding.ts +118 -67
  103. package/src/server/routes/upgrade.ts +3 -5
  104. package/src/server/ws/chat.ts +16 -0
  105. package/src/services/cloud-ws.service.ts +2 -2
  106. package/src/services/cloud.service.ts +20 -19
  107. package/src/services/cloudflared.service.ts +13 -13
  108. package/src/services/config.service.ts +5 -7
  109. package/src/services/db.service.ts +5 -6
  110. package/src/services/extension-rpc-handlers.ts +2 -2
  111. package/src/services/extension.service.ts +9 -12
  112. package/src/services/ppm-dir.ts +14 -0
  113. package/src/services/slash-discovery/builtin-commands.ts +53 -0
  114. package/src/services/slash-discovery/builtin-handlers.ts +65 -0
  115. package/src/services/slash-discovery/definition-source.ts +27 -0
  116. package/src/services/slash-discovery/discover-skill-roots.ts +128 -0
  117. package/src/services/slash-discovery/fuzzy-search.ts +76 -0
  118. package/src/services/slash-discovery/index.ts +42 -0
  119. package/src/services/slash-discovery/resolve-overrides.ts +41 -0
  120. package/src/services/slash-discovery/skill-loader.ts +156 -0
  121. package/src/services/slash-discovery/types.ts +51 -0
  122. package/src/services/slash-items.service.ts +4 -182
  123. package/src/services/supervisor-state.ts +14 -15
  124. package/src/services/supervisor-stopped-page.ts +2 -4
  125. package/src/services/supervisor.ts +23 -16
  126. package/src/services/tunnel.service.ts +4 -5
  127. package/src/services/upgrade.service.ts +2 -3
  128. package/src/types/chat.ts +3 -1
  129. package/src/web/components/chat/chat-tab.tsx +4 -1
  130. package/src/web/components/chat/message-input.tsx +48 -6
  131. package/src/web/components/chat/message-list.tsx +2 -2
  132. package/src/web/components/chat/slash-command-picker.tsx +21 -12
  133. package/src/web/components/layout/upgrade-banner.tsx +48 -2
  134. package/src/web/components/shared/markdown-renderer.tsx +2 -0
  135. package/src/web/hooks/use-chat.ts +3 -1
  136. package/src/web/hooks/use-url-sync.ts +6 -4
  137. package/src/web/main.tsx +1 -0
  138. package/.opencode/.ckignore +0 -27
  139. package/.opencode/.env.example +0 -98
  140. package/.opencode/agents/analytics-analyst.md +0 -168
  141. package/.opencode/agents/attraction-specialist.md +0 -152
  142. package/.opencode/agents/brainstormer.md +0 -114
  143. package/.opencode/agents/campaign-debugger.md +0 -149
  144. package/.opencode/agents/campaign-manager.md +0 -185
  145. package/.opencode/agents/code-reviewer.md +0 -163
  146. package/.opencode/agents/code-simplifier.md +0 -59
  147. package/.opencode/agents/community-manager.md +0 -181
  148. package/.opencode/agents/content-creator.md +0 -166
  149. package/.opencode/agents/content-reviewer.md +0 -170
  150. package/.opencode/agents/continuity-specialist.md +0 -149
  151. package/.opencode/agents/copywriter.md +0 -118
  152. package/.opencode/agents/database-admin.md +0 -98
  153. package/.opencode/agents/debugger.md +0 -143
  154. package/.opencode/agents/docs-manager.md +0 -127
  155. package/.opencode/agents/email-wizard.md +0 -166
  156. package/.opencode/agents/fullstack-developer.md +0 -101
  157. package/.opencode/agents/funnel-architect.md +0 -176
  158. package/.opencode/agents/git-manager.md +0 -399
  159. package/.opencode/agents/journal-writer.md +0 -119
  160. package/.opencode/agents/lead-qualifier.md +0 -146
  161. package/.opencode/agents/mcp-manager.md +0 -99
  162. package/.opencode/agents/planner.md +0 -114
  163. package/.opencode/agents/project-manager.md +0 -130
  164. package/.opencode/agents/researcher.md +0 -44
  165. package/.opencode/agents/sale-enabler.md +0 -161
  166. package/.opencode/agents/scout-external.md +0 -146
  167. package/.opencode/agents/scout.md +0 -112
  168. package/.opencode/agents/seo-specialist.md +0 -185
  169. package/.opencode/agents/social-media-manager.md +0 -163
  170. package/.opencode/agents/tester.md +0 -111
  171. package/.opencode/agents/ui-ux-designer.md +0 -241
  172. package/.opencode/agents/upsell-maximizer.md +0 -147
  173. package/.opencode/commands/ckm-analyze-report.md +0 -66
  174. package/.opencode/commands/ckm-analyze.md +0 -63
  175. package/.opencode/commands/ckm-ask.md +0 -55
  176. package/.opencode/commands/ckm-brand-update.md +0 -122
  177. package/.opencode/commands/ckm-campaign-analyze.md +0 -54
  178. package/.opencode/commands/ckm-campaign-create.md +0 -215
  179. package/.opencode/commands/ckm-campaign-email.md +0 -63
  180. package/.opencode/commands/ckm-campaign-status.md +0 -38
  181. package/.opencode/commands/ckm-campaign.md +0 -64
  182. package/.opencode/commands/ckm-competitor.md +0 -69
  183. package/.opencode/commands/ckm-dashboard-check.md +0 -97
  184. package/.opencode/commands/ckm-dashboard.md +0 -90
  185. package/.opencode/commands/ckm-docs-init.md +0 -27
  186. package/.opencode/commands/ckm-docs-llms.md +0 -12
  187. package/.opencode/commands/ckm-docs-summarize.md +0 -22
  188. package/.opencode/commands/ckm-docs-update.md +0 -36
  189. package/.opencode/commands/ckm-email-flow.md +0 -169
  190. package/.opencode/commands/ckm-email-sequence.md +0 -170
  191. package/.opencode/commands/ckm-email.md +0 -64
  192. package/.opencode/commands/ckm-funnel.md +0 -77
  193. package/.opencode/commands/ckm-hub.md +0 -50
  194. package/.opencode/commands/ckm-init.md +0 -214
  195. package/.opencode/commands/ckm-journal.md +0 -18
  196. package/.opencode/commands/ckm-kanban.md +0 -65
  197. package/.opencode/commands/ckm-persona.md +0 -61
  198. package/.opencode/commands/ckm-plan-archive.md +0 -56
  199. package/.opencode/commands/ckm-plan-ci.md +0 -32
  200. package/.opencode/commands/ckm-plan-cro.md +0 -68
  201. package/.opencode/commands/ckm-plan-fast.md +0 -65
  202. package/.opencode/commands/ckm-plan-hard.md +0 -91
  203. package/.opencode/commands/ckm-plan-parallel.md +0 -128
  204. package/.opencode/commands/ckm-plan-two.md +0 -44
  205. package/.opencode/commands/ckm-plan-validate.md +0 -116
  206. package/.opencode/commands/ckm-plan.md +0 -29
  207. package/.opencode/commands/ckm-play-create.md +0 -15
  208. package/.opencode/commands/ckm-play-goals.md +0 -15
  209. package/.opencode/commands/ckm-play-next.md +0 -15
  210. package/.opencode/commands/ckm-play-status.md +0 -15
  211. package/.opencode/commands/ckm-play.md +0 -27
  212. package/.opencode/commands/ckm-preview.md +0 -83
  213. package/.opencode/commands/ckm-seo-audit.md +0 -125
  214. package/.opencode/commands/ckm-seo-keywords.md +0 -135
  215. package/.opencode/commands/ckm-seo-pseo.md +0 -66
  216. package/.opencode/commands/ckm-seo.md +0 -67
  217. package/.opencode/commands/ckm-skill-add.md +0 -41
  218. package/.opencode/commands/ckm-skill-create.md +0 -34
  219. package/.opencode/commands/ckm-skill-fix-logs.md +0 -28
  220. package/.opencode/commands/ckm-skill-optimize-auto.md +0 -30
  221. package/.opencode/commands/ckm-skill-optimize.md +0 -39
  222. package/.opencode/commands/ckm-skill-plan.md +0 -50
  223. package/.opencode/commands/ckm-skill-update.md +0 -35
  224. package/.opencode/commands/ckm-slides-create.md +0 -8
  225. package/.opencode/commands/ckm-social-schedule.md +0 -54
  226. package/.opencode/commands/ckm-social.md +0 -69
  227. package/.opencode/commands/ckm-storage-list.md +0 -90
  228. package/.opencode/commands/ckm-storage-sync.md +0 -92
  229. package/.opencode/commands/ckm-storage-upload.md +0 -80
  230. package/.opencode/commands/ckm-storage-url.md +0 -66
  231. package/.opencode/commands/ckm-test-ui.md +0 -91
  232. package/.opencode/commands/ckm-test-workflow.md +0 -106
  233. package/.opencode/commands/ckm-use-mcp.md +0 -34
  234. package/.opencode/commands/ckm-video-create.md +0 -326
  235. package/.opencode/commands/ckm-video-script-create.md +0 -395
  236. package/.opencode/commands/ckm-video-storyboard-create.md +0 -214
  237. package/.opencode/commands/ckm-watzup.md +0 -9
  238. package/.opencode/commands/ckm-worktree.md +0 -125
  239. package/.opencode/commands/ckm-write-audit.md +0 -97
  240. package/.opencode/commands/ckm-write-blog-youtube.md +0 -158
  241. package/.opencode/commands/ckm-write-blog.md +0 -85
  242. package/.opencode/commands/ckm-write-cro.md +0 -42
  243. package/.opencode/commands/ckm-write-enhance.md +0 -13
  244. package/.opencode/commands/ckm-write-fast.md +0 -12
  245. package/.opencode/commands/ckm-write-formula.md +0 -116
  246. package/.opencode/commands/ckm-write-good.md +0 -16
  247. package/.opencode/commands/ckm-write-publish.md +0 -74
  248. package/.opencode/commands/ckm-youtube-blog.md +0 -136
  249. package/.opencode/commands/ckm-youtube-infographic.md +0 -156
  250. package/.opencode/commands/ckm-youtube-social.md +0 -169
  251. package/.opencode/package.json +0 -8
  252. package/.opencode/plugin/context-injector.ts +0 -84
  253. package/.opencode/plugin/lib/ck-config-utils.cjs +0 -816
  254. package/.opencode/plugin/lib/colors.cjs +0 -95
  255. package/.opencode/plugin/lib/context-builder.cjs +0 -600
  256. package/.opencode/plugin/lib/privacy-checker.cjs +0 -297
  257. package/.opencode/plugin/lib/project-detector.cjs +0 -430
  258. package/.opencode/plugin/lib/scout-checker.cjs +0 -172
  259. package/.opencode/plugin/privacy-block.ts +0 -32
  260. package/.opencode/plugin/scout-block/broad-pattern-detector.cjs +0 -266
  261. package/.opencode/plugin/scout-block/error-formatter.cjs +0 -156
  262. package/.opencode/plugin/scout-block/path-extractor.cjs +0 -238
  263. package/.opencode/plugin/scout-block/pattern-matcher.cjs +0 -184
  264. package/.opencode/plugin/scout-block/vendor/ignore.cjs +0 -627
  265. package/.opencode/plugin/scout-block.ts +0 -40
  266. package/.opencode/scripts/README.md +0 -153
  267. package/.opencode/scripts/ck-help.py +0 -1164
  268. package/.opencode/scripts/commands_data.yaml +0 -363
  269. package/.opencode/scripts/fix-shebang-permissions.sh +0 -50
  270. package/.opencode/scripts/requirements.txt +0 -1
  271. package/.opencode/scripts/resolve_env.py +0 -329
  272. package/.opencode/scripts/scan_commands.py +0 -98
  273. package/.opencode/scripts/scan_skills.py +0 -186
  274. package/.opencode/scripts/set-active-plan.cjs +0 -50
  275. package/.opencode/scripts/skills_data.yaml +0 -370
  276. package/.opencode/scripts/test-ck-help.py +0 -218
  277. package/.opencode/scripts/validate-docs.cjs +0 -342
  278. package/.opencode/scripts/win_compat.py +0 -57
  279. package/.opencode/scripts/worktree.cjs +0 -822
  280. package/.opencode/scripts/worktree.test.cjs +0 -759
  281. package/.opencode/skills/ab-test-setup/SKILL.md +0 -512
  282. package/.opencode/skills/ads-management/SKILL.md +0 -134
  283. package/.opencode/skills/ads-management/references/ad-copy-templates.md +0 -82
  284. package/.opencode/skills/ads-management/references/audience-targeting.md +0 -97
  285. package/.opencode/skills/ads-management/references/campaign-setup-and-bidding.md +0 -88
  286. package/.opencode/skills/ads-management/references/competitor-analysis-and-tools.md +0 -67
  287. package/.opencode/skills/ads-management/references/creative-asset-generation.md +0 -110
  288. package/.opencode/skills/ads-management/references/measurement-and-attribution.md +0 -63
  289. package/.opencode/skills/ads-management/references/optimization-playbook.md +0 -83
  290. package/.opencode/skills/ads-management/references/platform-specs.md +0 -64
  291. package/.opencode/skills/ads-management/scripts/.env.example +0 -13
  292. package/.opencode/skills/ads-management/scripts/google-ads-manager.py +0 -294
  293. package/.opencode/skills/ads-management/scripts/meta-ads-manager.py +0 -360
  294. package/.opencode/skills/affiliate-marketing/SKILL.md +0 -96
  295. package/.opencode/skills/affiliate-marketing/references/case-studies.md +0 -66
  296. package/.opencode/skills/affiliate-marketing/references/compliance-legal.md +0 -78
  297. package/.opencode/skills/affiliate-marketing/references/fraud-prevention.md +0 -81
  298. package/.opencode/skills/affiliate-marketing/references/kol-koc-partnerships.md +0 -86
  299. package/.opencode/skills/affiliate-marketing/references/outreach-templates.md +0 -72
  300. package/.opencode/skills/affiliate-marketing/references/platform-selection.md +0 -82
  301. package/.opencode/skills/affiliate-marketing/references/program-structure.md +0 -74
  302. package/.opencode/skills/agent-browser/SKILL.md +0 -297
  303. package/.opencode/skills/agent-browser/references/.gitkeep +0 -0
  304. package/.opencode/skills/agent-browser/references/agent-browser-vs-chrome-devtools.md +0 -112
  305. package/.opencode/skills/agent-browser/references/browserbase-cloud-setup.md +0 -161
  306. package/.opencode/skills/ai-artist/SKILL.md +0 -122
  307. package/.opencode/skills/ai-artist/data/awesome-prompts.csv +0 -3592
  308. package/.opencode/skills/ai-artist/data/domains.csv +0 -16
  309. package/.opencode/skills/ai-artist/data/image-styles.csv +0 -21
  310. package/.opencode/skills/ai-artist/data/lighting.csv +0 -19
  311. package/.opencode/skills/ai-artist/data/llm-patterns.csv +0 -17
  312. package/.opencode/skills/ai-artist/data/nano-banana-templates.csv +0 -17
  313. package/.opencode/skills/ai-artist/data/platforms.csv +0 -11
  314. package/.opencode/skills/ai-artist/data/quality-modifiers.csv +0 -26
  315. package/.opencode/skills/ai-artist/data/styles.csv +0 -26
  316. package/.opencode/skills/ai-artist/data/subjects.csv +0 -17
  317. package/.opencode/skills/ai-artist/data/techniques.csv +0 -19
  318. package/.opencode/skills/ai-artist/data/use-cases.csv +0 -16
  319. package/.opencode/skills/ai-artist/references/advanced-techniques.md +0 -184
  320. package/.opencode/skills/ai-artist/references/awesome-nano-banana-pro-prompts.md +0 -8575
  321. package/.opencode/skills/ai-artist/references/character-consistency.md +0 -160
  322. package/.opencode/skills/ai-artist/references/domain-code.md +0 -66
  323. package/.opencode/skills/ai-artist/references/domain-data.md +0 -72
  324. package/.opencode/skills/ai-artist/references/domain-marketing.md +0 -66
  325. package/.opencode/skills/ai-artist/references/domain-patterns.md +0 -33
  326. package/.opencode/skills/ai-artist/references/domain-writing.md +0 -68
  327. package/.opencode/skills/ai-artist/references/image-generation-workflow.md +0 -124
  328. package/.opencode/skills/ai-artist/references/image-prompting.md +0 -141
  329. package/.opencode/skills/ai-artist/references/llm-prompting.md +0 -165
  330. package/.opencode/skills/ai-artist/references/nano-banana-pro-examples.md +0 -132
  331. package/.opencode/skills/ai-artist/references/nano-banana.md +0 -59
  332. package/.opencode/skills/ai-artist/references/reasoning-techniques.md +0 -201
  333. package/.opencode/skills/ai-artist/references/validation-workflow.md +0 -117
  334. package/.opencode/skills/ai-artist/scripts/core.py +0 -201
  335. package/.opencode/skills/ai-artist/scripts/extract_prompts.py +0 -102
  336. package/.opencode/skills/ai-artist/scripts/generate.py +0 -371
  337. package/.opencode/skills/ai-artist/scripts/prompt_builder.py +0 -234
  338. package/.opencode/skills/ai-artist/scripts/search.py +0 -111
  339. package/.opencode/skills/ai-multimodal/.env.example +0 -230
  340. package/.opencode/skills/ai-multimodal/SKILL.md +0 -108
  341. package/.opencode/skills/ai-multimodal/assets/demo-minimax/minimax-music-midnight-glow.mp3 +0 -0
  342. package/.opencode/skills/ai-multimodal/assets/demo-minimax/minimax-speech-demo.mp3 +0 -0
  343. package/.opencode/skills/ai-multimodal/assets/demo-minimax/minimax-speech-vietnamese.mp3 +0 -0
  344. package/.opencode/skills/ai-multimodal/assets/demo-minimax/minimax-video-kitsune.mp4 +0 -0
  345. package/.opencode/skills/ai-multimodal/references/audio-processing.md +0 -387
  346. package/.opencode/skills/ai-multimodal/references/image-generation.md +0 -1002
  347. package/.opencode/skills/ai-multimodal/references/minimax-generation.md +0 -141
  348. package/.opencode/skills/ai-multimodal/references/music-generation.md +0 -311
  349. package/.opencode/skills/ai-multimodal/references/video-analysis.md +0 -515
  350. package/.opencode/skills/ai-multimodal/references/video-generation.md +0 -457
  351. package/.opencode/skills/ai-multimodal/references/vision-understanding.md +0 -492
  352. package/.opencode/skills/ai-multimodal/scripts/.coverage +0 -0
  353. package/.opencode/skills/ai-multimodal/scripts/check_setup.py +0 -316
  354. package/.opencode/skills/ai-multimodal/scripts/document_converter.py +0 -395
  355. package/.opencode/skills/ai-multimodal/scripts/gemini_batch_process.py +0 -1187
  356. package/.opencode/skills/ai-multimodal/scripts/media_optimizer.py +0 -506
  357. package/.opencode/skills/ai-multimodal/scripts/minimax_api_client.py +0 -189
  358. package/.opencode/skills/ai-multimodal/scripts/minimax_cli.py +0 -178
  359. package/.opencode/skills/ai-multimodal/scripts/minimax_generate.py +0 -278
  360. package/.opencode/skills/ai-multimodal/scripts/requirements.txt +0 -26
  361. package/.opencode/skills/analytics/SKILL.md +0 -132
  362. package/.opencode/skills/analytics/package.json +0 -19
  363. package/.opencode/skills/analytics/references/analysis-workflows.md +0 -104
  364. package/.opencode/skills/analytics/references/attribution-models.md +0 -75
  365. package/.opencode/skills/analytics/references/ga-admin-api.md +0 -219
  366. package/.opencode/skills/analytics/references/ga-data-api.md +0 -344
  367. package/.opencode/skills/analytics/references/marketing-kpis.md +0 -63
  368. package/.opencode/skills/analytics/references/report-templates.md +0 -411
  369. package/.opencode/skills/analytics/scripts/ga-auth-setup.cjs +0 -283
  370. package/.opencode/skills/analytics/scripts/ga-config-loader.cjs +0 -320
  371. package/.opencode/skills/analytics/scripts/ga-list-accounts.cjs +0 -277
  372. package/.opencode/skills/analytics/scripts/ga-run-report.cjs +0 -334
  373. package/.opencode/skills/analyze/SKILL.md +0 -80
  374. package/.opencode/skills/analyze/references/report.md +0 -62
  375. package/.opencode/skills/ask/SKILL.md +0 -60
  376. package/.opencode/skills/assets-organizing/SKILL.md +0 -164
  377. package/.opencode/skills/assets-organizing/references/asset-types.md +0 -1478
  378. package/.opencode/skills/assets-organizing/references/directory-structure.md +0 -178
  379. package/.opencode/skills/assets-organizing/references/naming-conventions.md +0 -85
  380. package/.opencode/skills/backend-development/SKILL.md +0 -98
  381. package/.opencode/skills/backend-development/references/backend-api-design.md +0 -495
  382. package/.opencode/skills/backend-development/references/backend-architecture.md +0 -454
  383. package/.opencode/skills/backend-development/references/backend-authentication.md +0 -338
  384. package/.opencode/skills/backend-development/references/backend-code-quality.md +0 -659
  385. package/.opencode/skills/backend-development/references/backend-debugging.md +0 -904
  386. package/.opencode/skills/backend-development/references/backend-devops.md +0 -494
  387. package/.opencode/skills/backend-development/references/backend-mindset.md +0 -387
  388. package/.opencode/skills/backend-development/references/backend-performance.md +0 -397
  389. package/.opencode/skills/backend-development/references/backend-security.md +0 -290
  390. package/.opencode/skills/backend-development/references/backend-technologies.md +0 -256
  391. package/.opencode/skills/backend-development/references/backend-testing.md +0 -429
  392. package/.opencode/skills/banner-design/SKILL.md +0 -192
  393. package/.opencode/skills/banner-design/references/banner-sizes-and-styles.md +0 -118
  394. package/.opencode/skills/better-auth/SKILL.md +0 -207
  395. package/.opencode/skills/better-auth/references/advanced-features.md +0 -553
  396. package/.opencode/skills/better-auth/references/database-integration.md +0 -577
  397. package/.opencode/skills/better-auth/references/email-password-auth.md +0 -416
  398. package/.opencode/skills/better-auth/references/oauth-providers.md +0 -430
  399. package/.opencode/skills/better-auth/scripts/.coverage +0 -0
  400. package/.opencode/skills/better-auth/scripts/better_auth_init.py +0 -521
  401. package/.opencode/skills/better-auth/scripts/requirements.txt +0 -15
  402. package/.opencode/skills/bootstrap/SKILL.md +0 -105
  403. package/.opencode/skills/bootstrap/references/shared-phases.md +0 -59
  404. package/.opencode/skills/bootstrap/references/workflow-auto.md +0 -52
  405. package/.opencode/skills/bootstrap/references/workflow-fast.md +0 -50
  406. package/.opencode/skills/bootstrap/references/workflow-full.md +0 -60
  407. package/.opencode/skills/bootstrap/references/workflow-parallel.md +0 -59
  408. package/.opencode/skills/brainstorm/SKILL.md +0 -79
  409. package/.opencode/skills/brand/SKILL.md +0 -97
  410. package/.opencode/skills/brand/references/approval-checklist.md +0 -169
  411. package/.opencode/skills/brand/references/asset-organization.md +0 -157
  412. package/.opencode/skills/brand/references/brand-guideline-template.md +0 -140
  413. package/.opencode/skills/brand/references/color-palette-management.md +0 -186
  414. package/.opencode/skills/brand/references/consistency-checklist.md +0 -94
  415. package/.opencode/skills/brand/references/logo-usage-rules.md +0 -185
  416. package/.opencode/skills/brand/references/messaging-framework.md +0 -85
  417. package/.opencode/skills/brand/references/typography-specifications.md +0 -214
  418. package/.opencode/skills/brand/references/update.md +0 -118
  419. package/.opencode/skills/brand/references/visual-identity.md +0 -96
  420. package/.opencode/skills/brand/references/voice-framework.md +0 -88
  421. package/.opencode/skills/brand/scripts/extract-colors.cjs +0 -341
  422. package/.opencode/skills/brand/scripts/inject-brand-context.cjs +0 -349
  423. package/.opencode/skills/brand/scripts/sync-brand-to-tokens.cjs +0 -266
  424. package/.opencode/skills/brand/scripts/validate-asset.cjs +0 -387
  425. package/.opencode/skills/brand/templates/brand-guidelines-starter.md +0 -275
  426. package/.opencode/skills/campaign/SKILL.md +0 -73
  427. package/.opencode/skills/campaign/references/analyze.md +0 -50
  428. package/.opencode/skills/campaign/references/budget-allocation.md +0 -85
  429. package/.opencode/skills/campaign/references/campaign-brief.md +0 -79
  430. package/.opencode/skills/campaign/references/create.md +0 -211
  431. package/.opencode/skills/campaign/references/email.md +0 -59
  432. package/.opencode/skills/campaign/references/launch-checklist.md +0 -70
  433. package/.opencode/skills/campaign/references/optimization-framework.md +0 -103
  434. package/.opencode/skills/campaign/references/status.md +0 -34
  435. package/.opencode/skills/chrome-devtools/SKILL.md +0 -475
  436. package/.opencode/skills/chrome-devtools/references/cdp-domains.md +0 -694
  437. package/.opencode/skills/chrome-devtools/references/performance-guide.md +0 -940
  438. package/.opencode/skills/chrome-devtools/references/puppeteer-reference.md +0 -953
  439. package/.opencode/skills/chrome-devtools/scripts/README.md +0 -272
  440. package/.opencode/skills/chrome-devtools/scripts/__tests__/error-handling.test.js +0 -102
  441. package/.opencode/skills/chrome-devtools/scripts/__tests__/selector.test.js +0 -210
  442. package/.opencode/skills/chrome-devtools/scripts/aria-snapshot.js +0 -362
  443. package/.opencode/skills/chrome-devtools/scripts/click.js +0 -83
  444. package/.opencode/skills/chrome-devtools/scripts/connect-chrome.js +0 -146
  445. package/.opencode/skills/chrome-devtools/scripts/console.js +0 -79
  446. package/.opencode/skills/chrome-devtools/scripts/evaluate.js +0 -53
  447. package/.opencode/skills/chrome-devtools/scripts/fill.js +0 -76
  448. package/.opencode/skills/chrome-devtools/scripts/import-cookies.js +0 -205
  449. package/.opencode/skills/chrome-devtools/scripts/inject-auth.js +0 -229
  450. package/.opencode/skills/chrome-devtools/scripts/install-deps.sh +0 -181
  451. package/.opencode/skills/chrome-devtools/scripts/install.sh +0 -83
  452. package/.opencode/skills/chrome-devtools/scripts/lib/browser.js +0 -318
  453. package/.opencode/skills/chrome-devtools/scripts/lib/selector.js +0 -178
  454. package/.opencode/skills/chrome-devtools/scripts/navigate.js +0 -54
  455. package/.opencode/skills/chrome-devtools/scripts/network.js +0 -106
  456. package/.opencode/skills/chrome-devtools/scripts/package.json +0 -16
  457. package/.opencode/skills/chrome-devtools/scripts/performance.js +0 -149
  458. package/.opencode/skills/chrome-devtools/scripts/screenshot.js +0 -198
  459. package/.opencode/skills/chrome-devtools/scripts/select-ref.js +0 -131
  460. package/.opencode/skills/chrome-devtools/scripts/snapshot.js +0 -135
  461. package/.opencode/skills/chrome-devtools/scripts/ws-debug.js +0 -44
  462. package/.opencode/skills/chrome-devtools/scripts/ws-full-debug.js +0 -107
  463. package/.opencode/skills/cip-design/.env.example +0 -6
  464. package/.opencode/skills/cip-design/SKILL.md +0 -161
  465. package/.opencode/skills/cip-design/data/deliverables.csv +0 -51
  466. package/.opencode/skills/cip-design/data/industries.csv +0 -21
  467. package/.opencode/skills/cip-design/data/mockup-contexts.csv +0 -21
  468. package/.opencode/skills/cip-design/data/styles.csv +0 -21
  469. package/.opencode/skills/cip-design/references/deliverable-guide.md +0 -95
  470. package/.opencode/skills/cip-design/references/prompt-engineering.md +0 -84
  471. package/.opencode/skills/cip-design/references/style-guide.md +0 -68
  472. package/.opencode/skills/cip-design/scripts/core.py +0 -215
  473. package/.opencode/skills/cip-design/scripts/generate.py +0 -488
  474. package/.opencode/skills/cip-design/scripts/render-html.py +0 -424
  475. package/.opencode/skills/cip-design/scripts/search.py +0 -127
  476. package/.opencode/skills/ck-autoresearch/SKILL.md +0 -153
  477. package/.opencode/skills/ck-autoresearch/references/autonomous-loop-protocol.md +0 -193
  478. package/.opencode/skills/ck-autoresearch/references/git-memory-pattern.md +0 -109
  479. package/.opencode/skills/ck-autoresearch/references/guard-and-noise.md +0 -140
  480. package/.opencode/skills/ck-autoresearch/references/metric-library.md +0 -200
  481. package/.opencode/skills/ck-autoresearch/references/results-logging.md +0 -74
  482. package/.opencode/skills/ck-debug/SKILL.md +0 -123
  483. package/.opencode/skills/ck-debug/references/defense-in-depth.md +0 -124
  484. package/.opencode/skills/ck-debug/references/frontend-verification.md +0 -103
  485. package/.opencode/skills/ck-debug/references/investigation-methodology.md +0 -101
  486. package/.opencode/skills/ck-debug/references/log-and-ci-analysis.md +0 -97
  487. package/.opencode/skills/ck-debug/references/performance-diagnostics.md +0 -113
  488. package/.opencode/skills/ck-debug/references/reporting-standards.md +0 -122
  489. package/.opencode/skills/ck-debug/references/root-cause-tracing.md +0 -122
  490. package/.opencode/skills/ck-debug/references/systematic-debugging.md +0 -102
  491. package/.opencode/skills/ck-debug/references/task-management-debugging.md +0 -155
  492. package/.opencode/skills/ck-debug/references/verification.md +0 -123
  493. package/.opencode/skills/ck-debug/scripts/find-polluter.sh +0 -63
  494. package/.opencode/skills/ck-debug/scripts/find-polluter.test.md +0 -102
  495. package/.opencode/skills/ck-loop/SKILL.md +0 -149
  496. package/.opencode/skills/ck-loop/references/autonomous-loop-protocol.md +0 -193
  497. package/.opencode/skills/ck-loop/references/git-memory-pattern.md +0 -109
  498. package/.opencode/skills/ck-loop/references/guard-and-noise.md +0 -140
  499. package/.opencode/skills/ck-loop/references/metric-library.md +0 -200
  500. package/.opencode/skills/ck-loop/references/results-logging.md +0 -74
  501. package/.opencode/skills/ck-plan/SKILL.md +0 -198
  502. package/.opencode/skills/ck-plan/references/archive-workflow.md +0 -53
  503. package/.opencode/skills/ck-plan/references/codebase-understanding.md +0 -62
  504. package/.opencode/skills/ck-plan/references/output-standards.md +0 -145
  505. package/.opencode/skills/ck-plan/references/plan-organization.md +0 -183
  506. package/.opencode/skills/ck-plan/references/red-team-personas.md +0 -69
  507. package/.opencode/skills/ck-plan/references/red-team-workflow.md +0 -77
  508. package/.opencode/skills/ck-plan/references/research-phase.md +0 -49
  509. package/.opencode/skills/ck-plan/references/scope-challenge.md +0 -90
  510. package/.opencode/skills/ck-plan/references/solution-design.md +0 -63
  511. package/.opencode/skills/ck-plan/references/task-management.md +0 -134
  512. package/.opencode/skills/ck-plan/references/validate-question-framework.md +0 -80
  513. package/.opencode/skills/ck-plan/references/validate-workflow.md +0 -65
  514. package/.opencode/skills/ck-plan/references/workflow-modes.md +0 -155
  515. package/.opencode/skills/ck-predict/SKILL.md +0 -119
  516. package/.opencode/skills/ck-scenario/SKILL.md +0 -113
  517. package/.opencode/skills/ck-security/SKILL.md +0 -144
  518. package/.opencode/skills/ck-security/references/stride-owasp-checklist.md +0 -128
  519. package/.opencode/skills/ckm-storage/SKILL.md +0 -23
  520. package/.opencode/skills/ckm-storage/references/list.md +0 -87
  521. package/.opencode/skills/ckm-storage/references/sync.md +0 -89
  522. package/.opencode/skills/ckm-storage/references/upload.md +0 -77
  523. package/.opencode/skills/ckm-storage/references/url.md +0 -63
  524. package/.opencode/skills/claude-code/SKILL.md +0 -64
  525. package/.opencode/skills/claude-code/references/advanced-features.md +0 -399
  526. package/.opencode/skills/claude-code/references/agent-skills.md +0 -399
  527. package/.opencode/skills/claude-code/references/api-reference.md +0 -498
  528. package/.opencode/skills/claude-code/references/best-practices.md +0 -447
  529. package/.opencode/skills/claude-code/references/cicd-integration.md +0 -428
  530. package/.opencode/skills/claude-code/references/common-workflows.md +0 -119
  531. package/.opencode/skills/claude-code/references/configuration.md +0 -480
  532. package/.opencode/skills/claude-code/references/enterprise-features.md +0 -472
  533. package/.opencode/skills/claude-code/references/getting-started.md +0 -252
  534. package/.opencode/skills/claude-code/references/hooks-and-plugins.md +0 -444
  535. package/.opencode/skills/claude-code/references/hooks-comprehensive.md +0 -622
  536. package/.opencode/skills/claude-code/references/ide-integration.md +0 -316
  537. package/.opencode/skills/claude-code/references/mcp-integration.md +0 -386
  538. package/.opencode/skills/claude-code/references/slash-commands.md +0 -489
  539. package/.opencode/skills/claude-code/references/troubleshooting.md +0 -456
  540. package/.opencode/skills/code-review/SKILL.md +0 -147
  541. package/.opencode/skills/code-review/references/adversarial-review.md +0 -223
  542. package/.opencode/skills/code-review/references/checklist-workflow.md +0 -100
  543. package/.opencode/skills/code-review/references/checklists/api.md +0 -52
  544. package/.opencode/skills/code-review/references/checklists/base.md +0 -100
  545. package/.opencode/skills/code-review/references/checklists/web-app.md +0 -54
  546. package/.opencode/skills/code-review/references/code-review-reception.md +0 -209
  547. package/.opencode/skills/code-review/references/codebase-scan-workflow.md +0 -30
  548. package/.opencode/skills/code-review/references/edge-case-scouting.md +0 -119
  549. package/.opencode/skills/code-review/references/input-mode-resolution.md +0 -135
  550. package/.opencode/skills/code-review/references/parallel-review-workflow.md +0 -76
  551. package/.opencode/skills/code-review/references/requesting-code-review.md +0 -105
  552. package/.opencode/skills/code-review/references/spec-compliance-review.md +0 -43
  553. package/.opencode/skills/code-review/references/task-management-reviews.md +0 -155
  554. package/.opencode/skills/code-review/references/verification-before-completion.md +0 -139
  555. package/.opencode/skills/coding-level/SKILL.md +0 -59
  556. package/.opencode/skills/competitor/SKILL.md +0 -95
  557. package/.opencode/skills/competitor/references/alternatives.md +0 -245
  558. package/.opencode/skills/content-hub/SKILL.md +0 -83
  559. package/.opencode/skills/content-hub/assets/hub.css +0 -693
  560. package/.opencode/skills/content-hub/assets/hub.js +0 -514
  561. package/.opencode/skills/content-hub/assets/template.html +0 -185
  562. package/.opencode/skills/content-hub/scripts/lib/ai-bridge.cjs +0 -165
  563. package/.opencode/skills/content-hub/scripts/lib/brand-context.cjs +0 -118
  564. package/.opencode/skills/content-hub/scripts/lib/port-finder.cjs +0 -43
  565. package/.opencode/skills/content-hub/scripts/lib/process-mgr.cjs +0 -102
  566. package/.opencode/skills/content-hub/scripts/lib/router.cjs +0 -276
  567. package/.opencode/skills/content-hub/scripts/lib/scanner.cjs +0 -278
  568. package/.opencode/skills/content-hub/scripts/server.cjs +0 -140
  569. package/.opencode/skills/content-hub/scripts/start-all.sh +0 -58
  570. package/.opencode/skills/content-marketing/SKILL.md +0 -87
  571. package/.opencode/skills/content-marketing/references/blog-post-templates.md +0 -108
  572. package/.opencode/skills/content-marketing/references/content-audit-checklist.md +0 -76
  573. package/.opencode/skills/content-marketing/references/content-strategy-framework.md +0 -72
  574. package/.opencode/skills/content-marketing/references/editorial-calendar-template.md +0 -59
  575. package/.opencode/skills/context-engineering/SKILL.md +0 -110
  576. package/.opencode/skills/context-engineering/references/context-compression.md +0 -84
  577. package/.opencode/skills/context-engineering/references/context-degradation.md +0 -93
  578. package/.opencode/skills/context-engineering/references/context-fundamentals.md +0 -75
  579. package/.opencode/skills/context-engineering/references/context-optimization.md +0 -82
  580. package/.opencode/skills/context-engineering/references/evaluation.md +0 -89
  581. package/.opencode/skills/context-engineering/references/memory-systems.md +0 -88
  582. package/.opencode/skills/context-engineering/references/multi-agent-patterns.md +0 -90
  583. package/.opencode/skills/context-engineering/references/project-development.md +0 -97
  584. package/.opencode/skills/context-engineering/references/runtime-awareness.md +0 -202
  585. package/.opencode/skills/context-engineering/references/tool-design.md +0 -86
  586. package/.opencode/skills/context-engineering/scripts/compression_evaluator.py +0 -349
  587. package/.opencode/skills/context-engineering/scripts/context_analyzer.py +0 -317
  588. package/.opencode/skills/cook/README.md +0 -86
  589. package/.opencode/skills/cook/SKILL.md +0 -115
  590. package/.opencode/skills/cook/references/intent-detection.md +0 -101
  591. package/.opencode/skills/cook/references/review-cycle.md +0 -75
  592. package/.opencode/skills/cook/references/subagent-patterns.md +0 -75
  593. package/.opencode/skills/cook/references/workflow-steps.md +0 -166
  594. package/.opencode/skills/copywriting/SKILL.md +0 -88
  595. package/.opencode/skills/copywriting/references/copy-formulas.md +0 -150
  596. package/.opencode/skills/copywriting/references/cta-patterns.md +0 -168
  597. package/.opencode/skills/copywriting/references/email-copy.md +0 -193
  598. package/.opencode/skills/copywriting/references/headline-templates.md +0 -140
  599. package/.opencode/skills/copywriting/references/landing-page-copy.md +0 -175
  600. package/.opencode/skills/copywriting/references/power-words.md +0 -189
  601. package/.opencode/skills/copywriting/references/social-media-copy.md +0 -222
  602. package/.opencode/skills/copywriting/references/workflow-cro.md +0 -83
  603. package/.opencode/skills/copywriting/references/workflow-enhance.md +0 -32
  604. package/.opencode/skills/copywriting/references/workflow-fast.md +0 -29
  605. package/.opencode/skills/copywriting/references/workflow-good.md +0 -39
  606. package/.opencode/skills/copywriting/references/writing-styles.md +0 -247
  607. package/.opencode/skills/copywriting/scripts/extract-writing-styles.py +0 -308
  608. package/.opencode/skills/copywriting/templates/copy-brief.md +0 -49
  609. package/.opencode/skills/creativity/SKILL.md +0 -189
  610. package/.opencode/skills/creativity/data/creative-reasoning.csv +0 -31
  611. package/.opencode/skills/creativity/data/music.csv +0 -18
  612. package/.opencode/skills/creativity/data/platforms.csv +0 -19
  613. package/.opencode/skills/creativity/data/styles.csv +0 -56
  614. package/.opencode/skills/creativity/data/voiceover.csv +0 -13
  615. package/.opencode/skills/creativity/references/audio-music.md +0 -74
  616. package/.opencode/skills/creativity/references/color-psychology.md +0 -68
  617. package/.opencode/skills/creativity/references/creative-styles-part1.md +0 -31
  618. package/.opencode/skills/creativity/references/creative-styles-part2.md +0 -36
  619. package/.opencode/skills/creativity/references/visual-trends.md +0 -84
  620. package/.opencode/skills/creativity/references/voiceover-styles.md +0 -107
  621. package/.opencode/skills/creativity/scripts/core.py +0 -179
  622. package/.opencode/skills/creativity/scripts/creative_brief.py +0 -470
  623. package/.opencode/skills/creativity/scripts/search.py +0 -62
  624. package/.opencode/skills/dashboard/SKILL.md +0 -108
  625. package/.opencode/skills/dashboard/references/check.md +0 -93
  626. package/.opencode/skills/databases/SKILL.md +0 -236
  627. package/.opencode/skills/databases/analytics.md +0 -198
  628. package/.opencode/skills/databases/db-design.md +0 -188
  629. package/.opencode/skills/databases/incremental-etl.md +0 -213
  630. package/.opencode/skills/databases/references/mongodb-aggregation.md +0 -447
  631. package/.opencode/skills/databases/references/mongodb-atlas.md +0 -465
  632. package/.opencode/skills/databases/references/mongodb-crud.md +0 -408
  633. package/.opencode/skills/databases/references/mongodb-indexing.md +0 -442
  634. package/.opencode/skills/databases/references/postgresql-administration.md +0 -594
  635. package/.opencode/skills/databases/references/postgresql-performance.md +0 -527
  636. package/.opencode/skills/databases/references/postgresql-psql-cli.md +0 -467
  637. package/.opencode/skills/databases/references/postgresql-queries.md +0 -475
  638. package/.opencode/skills/databases/scripts/.coverage +0 -0
  639. package/.opencode/skills/databases/scripts/db_backup.py +0 -502
  640. package/.opencode/skills/databases/scripts/db_migrate.py +0 -425
  641. package/.opencode/skills/databases/scripts/db_performance_check.py +0 -456
  642. package/.opencode/skills/databases/scripts/requirements.txt +0 -20
  643. package/.opencode/skills/databases/stacks/bigquery.md +0 -231
  644. package/.opencode/skills/databases/stacks/d1_cloudflare.md +0 -137
  645. package/.opencode/skills/databases/stacks/mysql.md +0 -216
  646. package/.opencode/skills/databases/stacks/postgres.md +0 -235
  647. package/.opencode/skills/databases/stacks/sqlite.md +0 -244
  648. package/.opencode/skills/databases/transactional.md +0 -176
  649. package/.opencode/skills/debugging/SKILL.md +0 -87
  650. package/.opencode/skills/debugging/references/defense-in-depth.md +0 -124
  651. package/.opencode/skills/debugging/references/root-cause-tracing.md +0 -122
  652. package/.opencode/skills/debugging/references/systematic-debugging.md +0 -102
  653. package/.opencode/skills/debugging/references/verification.md +0 -123
  654. package/.opencode/skills/debugging/scripts/find-polluter.sh +0 -63
  655. package/.opencode/skills/debugging/scripts/find-polluter.test.md +0 -102
  656. package/.opencode/skills/deploy/SKILL.md +0 -157
  657. package/.opencode/skills/deploy/references/platform-config-templates.md +0 -35
  658. package/.opencode/skills/deploy/references/platforms/aws.md +0 -58
  659. package/.opencode/skills/deploy/references/platforms/cloudflare.md +0 -41
  660. package/.opencode/skills/deploy/references/platforms/coolify.md +0 -32
  661. package/.opencode/skills/deploy/references/platforms/digitalocean.md +0 -45
  662. package/.opencode/skills/deploy/references/platforms/dokploy.md +0 -29
  663. package/.opencode/skills/deploy/references/platforms/flyio.md +0 -54
  664. package/.opencode/skills/deploy/references/platforms/gcp.md +0 -45
  665. package/.opencode/skills/deploy/references/platforms/github-pages.md +0 -56
  666. package/.opencode/skills/deploy/references/platforms/heroku.md +0 -31
  667. package/.opencode/skills/deploy/references/platforms/netlify.md +0 -39
  668. package/.opencode/skills/deploy/references/platforms/railway.md +0 -38
  669. package/.opencode/skills/deploy/references/platforms/render.md +0 -39
  670. package/.opencode/skills/deploy/references/platforms/tose.md +0 -35
  671. package/.opencode/skills/deploy/references/platforms/vercel.md +0 -37
  672. package/.opencode/skills/deploy/references/platforms/vultr.md +0 -27
  673. package/.opencode/skills/design/SKILL.md +0 -302
  674. package/.opencode/skills/design/data/cip/deliverables.csv +0 -51
  675. package/.opencode/skills/design/data/cip/industries.csv +0 -21
  676. package/.opencode/skills/design/data/cip/mockup-contexts.csv +0 -21
  677. package/.opencode/skills/design/data/cip/styles.csv +0 -21
  678. package/.opencode/skills/design/data/icon/styles.csv +0 -16
  679. package/.opencode/skills/design/data/logo/colors.csv +0 -56
  680. package/.opencode/skills/design/data/logo/industries.csv +0 -56
  681. package/.opencode/skills/design/data/logo/styles.csv +0 -56
  682. package/.opencode/skills/design/references/banner-sizes-and-styles.md +0 -118
  683. package/.opencode/skills/design/references/cip-deliverable-guide.md +0 -95
  684. package/.opencode/skills/design/references/cip-design.md +0 -121
  685. package/.opencode/skills/design/references/cip-prompt-engineering.md +0 -84
  686. package/.opencode/skills/design/references/cip-style-guide.md +0 -68
  687. package/.opencode/skills/design/references/design-routing.md +0 -207
  688. package/.opencode/skills/design/references/icon-design.md +0 -122
  689. package/.opencode/skills/design/references/logo-color-psychology.md +0 -101
  690. package/.opencode/skills/design/references/logo-design.md +0 -92
  691. package/.opencode/skills/design/references/logo-prompt-engineering.md +0 -158
  692. package/.opencode/skills/design/references/logo-style-guide.md +0 -109
  693. package/.opencode/skills/design/references/slides-copywriting-formulas.md +0 -84
  694. package/.opencode/skills/design/references/slides-create.md +0 -4
  695. package/.opencode/skills/design/references/slides-html-template.md +0 -295
  696. package/.opencode/skills/design/references/slides-layout-patterns.md +0 -137
  697. package/.opencode/skills/design/references/slides-strategies.md +0 -94
  698. package/.opencode/skills/design/references/slides.md +0 -42
  699. package/.opencode/skills/design/references/social-photos-design.md +0 -329
  700. package/.opencode/skills/design/scripts/cip/core.py +0 -215
  701. package/.opencode/skills/design/scripts/cip/generate.py +0 -488
  702. package/.opencode/skills/design/scripts/cip/render-html.py +0 -424
  703. package/.opencode/skills/design/scripts/cip/search.py +0 -127
  704. package/.opencode/skills/design/scripts/icon/generate.py +0 -487
  705. package/.opencode/skills/design/scripts/logo/core.py +0 -175
  706. package/.opencode/skills/design/scripts/logo/generate.py +0 -363
  707. package/.opencode/skills/design/scripts/logo/search.py +0 -114
  708. package/.opencode/skills/design-system/SKILL.md +0 -244
  709. package/.opencode/skills/design-system/data/slide-backgrounds.csv +0 -11
  710. package/.opencode/skills/design-system/data/slide-charts.csv +0 -26
  711. package/.opencode/skills/design-system/data/slide-color-logic.csv +0 -14
  712. package/.opencode/skills/design-system/data/slide-copy.csv +0 -26
  713. package/.opencode/skills/design-system/data/slide-layout-logic.csv +0 -16
  714. package/.opencode/skills/design-system/data/slide-layouts.csv +0 -26
  715. package/.opencode/skills/design-system/data/slide-strategies.csv +0 -16
  716. package/.opencode/skills/design-system/data/slide-typography.csv +0 -15
  717. package/.opencode/skills/design-system/references/component-specs.md +0 -236
  718. package/.opencode/skills/design-system/references/component-tokens.md +0 -214
  719. package/.opencode/skills/design-system/references/primitive-tokens.md +0 -203
  720. package/.opencode/skills/design-system/references/semantic-tokens.md +0 -215
  721. package/.opencode/skills/design-system/references/states-and-variants.md +0 -241
  722. package/.opencode/skills/design-system/references/tailwind-integration.md +0 -251
  723. package/.opencode/skills/design-system/references/token-architecture.md +0 -224
  724. package/.opencode/skills/design-system/scripts/embed-tokens.cjs +0 -99
  725. package/.opencode/skills/design-system/scripts/fetch-background.py +0 -317
  726. package/.opencode/skills/design-system/scripts/generate-slide.py +0 -753
  727. package/.opencode/skills/design-system/scripts/generate-tokens.cjs +0 -205
  728. package/.opencode/skills/design-system/scripts/html-token-validator.py +0 -327
  729. package/.opencode/skills/design-system/scripts/search-slides.py +0 -218
  730. package/.opencode/skills/design-system/scripts/slide-token-validator.py +0 -35
  731. package/.opencode/skills/design-system/scripts/slide_search_core.py +0 -453
  732. package/.opencode/skills/design-system/scripts/validate-tokens.cjs +0 -251
  733. package/.opencode/skills/design-system/templates/design-tokens-starter.json +0 -143
  734. package/.opencode/skills/devops/.env.example +0 -76
  735. package/.opencode/skills/devops/SKILL.md +0 -288
  736. package/.opencode/skills/devops/references/browser-rendering.md +0 -305
  737. package/.opencode/skills/devops/references/cloudflare-d1-kv.md +0 -123
  738. package/.opencode/skills/devops/references/cloudflare-platform.md +0 -271
  739. package/.opencode/skills/devops/references/cloudflare-r2-storage.md +0 -280
  740. package/.opencode/skills/devops/references/cloudflare-workers-advanced.md +0 -312
  741. package/.opencode/skills/devops/references/cloudflare-workers-apis.md +0 -309
  742. package/.opencode/skills/devops/references/cloudflare-workers-basics.md +0 -418
  743. package/.opencode/skills/devops/references/docker-basics.md +0 -297
  744. package/.opencode/skills/devops/references/docker-compose.md +0 -292
  745. package/.opencode/skills/devops/references/gcloud-platform.md +0 -297
  746. package/.opencode/skills/devops/references/gcloud-services.md +0 -304
  747. package/.opencode/skills/devops/references/kubernetes-basics.md +0 -99
  748. package/.opencode/skills/devops/references/kubernetes-helm-advanced.md +0 -75
  749. package/.opencode/skills/devops/references/kubernetes-helm.md +0 -81
  750. package/.opencode/skills/devops/references/kubernetes-kubectl.md +0 -74
  751. package/.opencode/skills/devops/references/kubernetes-security-advanced.md +0 -98
  752. package/.opencode/skills/devops/references/kubernetes-security.md +0 -95
  753. package/.opencode/skills/devops/references/kubernetes-troubleshooting-advanced.md +0 -74
  754. package/.opencode/skills/devops/references/kubernetes-troubleshooting.md +0 -49
  755. package/.opencode/skills/devops/references/kubernetes-workflows-advanced.md +0 -75
  756. package/.opencode/skills/devops/references/kubernetes-workflows.md +0 -78
  757. package/.opencode/skills/devops/scripts/cloudflare_deploy.py +0 -269
  758. package/.opencode/skills/devops/scripts/docker_optimize.py +0 -331
  759. package/.opencode/skills/devops/scripts/requirements.txt +0 -20
  760. package/.opencode/skills/docs/SKILL.md +0 -23
  761. package/.opencode/skills/docs/references/init-workflow.md +0 -32
  762. package/.opencode/skills/docs/references/init.md +0 -23
  763. package/.opencode/skills/docs/references/llms.md +0 -8
  764. package/.opencode/skills/docs/references/summarize-workflow.md +0 -18
  765. package/.opencode/skills/docs/references/summarize.md +0 -18
  766. package/.opencode/skills/docs/references/update-workflow.md +0 -59
  767. package/.opencode/skills/docs/references/update.md +0 -32
  768. package/.opencode/skills/docs-seeker/.env.example +0 -15
  769. package/.opencode/skills/docs-seeker/SKILL.md +0 -100
  770. package/.opencode/skills/docs-seeker/package.json +0 -25
  771. package/.opencode/skills/docs-seeker/references/advanced.md +0 -79
  772. package/.opencode/skills/docs-seeker/references/context7-patterns.md +0 -68
  773. package/.opencode/skills/docs-seeker/references/errors.md +0 -68
  774. package/.opencode/skills/docs-seeker/scripts/analyze-llms-txt.js +0 -211
  775. package/.opencode/skills/docs-seeker/scripts/detect-topic.js +0 -172
  776. package/.opencode/skills/docs-seeker/scripts/fetch-docs.js +0 -213
  777. package/.opencode/skills/docs-seeker/scripts/utils/env-loader.js +0 -94
  778. package/.opencode/skills/docs-seeker/workflows/library-search.md +0 -87
  779. package/.opencode/skills/docs-seeker/workflows/repo-analysis.md +0 -91
  780. package/.opencode/skills/docs-seeker/workflows/topic-search.md +0 -77
  781. package/.opencode/skills/elevenlabs/.env.example +0 -3
  782. package/.opencode/skills/elevenlabs/README.md +0 -57
  783. package/.opencode/skills/elevenlabs/SKILL.md +0 -97
  784. package/.opencode/skills/elevenlabs/references/available-models.md +0 -720
  785. package/.opencode/skills/elevenlabs/references/conversational-ai-agents-guide.md +0 -168
  786. package/.opencode/skills/elevenlabs/references/sound-effects-and-music-generation-guide.md +0 -131
  787. package/.opencode/skills/elevenlabs/references/text-to-speech-guide.md +0 -132
  788. package/.opencode/skills/elevenlabs/references/voice-cloning-guide.md +0 -94
  789. package/.opencode/skills/elevenlabs/references/voice-design-prompting-guide.md +0 -96
  790. package/.opencode/skills/elevenlabs/requirements.txt +0 -1
  791. package/.opencode/skills/elevenlabs/scripts/elevenlabs-sound-effects-generator.py +0 -108
  792. package/.opencode/skills/elevenlabs/scripts/elevenlabs-text-to-speech-generator.py +0 -184
  793. package/.opencode/skills/elevenlabs/scripts/elevenlabs-voice-cloner.py +0 -127
  794. package/.opencode/skills/elevenlabs/scripts/elevenlabs-voice-manager.py +0 -194
  795. package/.opencode/skills/email/SKILL.md +0 -56
  796. package/.opencode/skills/email/references/automation-flows.md +0 -429
  797. package/.opencode/skills/email/references/deliverability-checklist.md +0 -73
  798. package/.opencode/skills/email/references/email-templates.md +0 -127
  799. package/.opencode/skills/email/references/flow.md +0 -165
  800. package/.opencode/skills/email/references/sequence.md +0 -166
  801. package/.opencode/skills/email/references/subject-line-formulas.md +0 -67
  802. package/.opencode/skills/find-skills/SKILL.md +0 -137
  803. package/.opencode/skills/fix/SKILL.md +0 -75
  804. package/.opencode/skills/fix/references/complexity-assessment.md +0 -61
  805. package/.opencode/skills/fix/references/diagnosis-protocol.md +0 -133
  806. package/.opencode/skills/fix/references/mode-selection.md +0 -46
  807. package/.opencode/skills/fix/references/parallel-exploration.md +0 -77
  808. package/.opencode/skills/fix/references/prevention-gate.md +0 -87
  809. package/.opencode/skills/fix/references/review-cycle.md +0 -77
  810. package/.opencode/skills/fix/references/skill-activation-matrix.md +0 -65
  811. package/.opencode/skills/fix/references/task-orchestration.md +0 -110
  812. package/.opencode/skills/fix/references/workflow-ci.md +0 -28
  813. package/.opencode/skills/fix/references/workflow-deep.md +0 -91
  814. package/.opencode/skills/fix/references/workflow-logs.md +0 -36
  815. package/.opencode/skills/fix/references/workflow-quick.md +0 -59
  816. package/.opencode/skills/fix/references/workflow-standard.md +0 -86
  817. package/.opencode/skills/fix/references/workflow-test.md +0 -36
  818. package/.opencode/skills/fix/references/workflow-types.md +0 -33
  819. package/.opencode/skills/fix/references/workflow-ui.md +0 -37
  820. package/.opencode/skills/form-cro/SKILL.md +0 -429
  821. package/.opencode/skills/free-tool-strategy/SKILL.md +0 -580
  822. package/.opencode/skills/frontend-design/SKILL.md +0 -81
  823. package/.opencode/skills/frontend-design/references/ai-multimodal-overview.md +0 -165
  824. package/.opencode/skills/frontend-design/references/analysis-best-practices.md +0 -80
  825. package/.opencode/skills/frontend-design/references/analysis-prompts.md +0 -141
  826. package/.opencode/skills/frontend-design/references/analysis-techniques.md +0 -118
  827. package/.opencode/skills/frontend-design/references/animejs.md +0 -396
  828. package/.opencode/skills/frontend-design/references/anti-slop-rules.md +0 -103
  829. package/.opencode/skills/frontend-design/references/asset-generation.md +0 -337
  830. package/.opencode/skills/frontend-design/references/bento-motion-engine.md +0 -142
  831. package/.opencode/skills/frontend-design/references/design-extraction-overview.md +0 -71
  832. package/.opencode/skills/frontend-design/references/extraction-best-practices.md +0 -141
  833. package/.opencode/skills/frontend-design/references/extraction-output-templates.md +0 -162
  834. package/.opencode/skills/frontend-design/references/extraction-prompts.md +0 -127
  835. package/.opencode/skills/frontend-design/references/magicui-components.md +0 -129
  836. package/.opencode/skills/frontend-design/references/performance-guardrails.md +0 -169
  837. package/.opencode/skills/frontend-design/references/premium-design-patterns.md +0 -93
  838. package/.opencode/skills/frontend-design/references/redesign-audit-checklist.md +0 -114
  839. package/.opencode/skills/frontend-design/references/technical-accessibility.md +0 -119
  840. package/.opencode/skills/frontend-design/references/technical-best-practices.md +0 -97
  841. package/.opencode/skills/frontend-design/references/technical-optimization.md +0 -44
  842. package/.opencode/skills/frontend-design/references/technical-overview.md +0 -90
  843. package/.opencode/skills/frontend-design/references/technical-workflows.md +0 -150
  844. package/.opencode/skills/frontend-design/references/visual-analysis-overview.md +0 -95
  845. package/.opencode/skills/frontend-design/references/workflow-3d.md +0 -102
  846. package/.opencode/skills/frontend-design/references/workflow-describe.md +0 -87
  847. package/.opencode/skills/frontend-design/references/workflow-immersive.md +0 -87
  848. package/.opencode/skills/frontend-design/references/workflow-quick.md +0 -57
  849. package/.opencode/skills/frontend-design/references/workflow-screenshot.md +0 -63
  850. package/.opencode/skills/frontend-design/references/workflow-video.md +0 -74
  851. package/.opencode/skills/frontend-development/SKILL.md +0 -403
  852. package/.opencode/skills/frontend-development/resources/common-patterns.md +0 -331
  853. package/.opencode/skills/frontend-development/resources/complete-examples.md +0 -872
  854. package/.opencode/skills/frontend-development/resources/component-patterns.md +0 -502
  855. package/.opencode/skills/frontend-development/resources/data-fetching.md +0 -767
  856. package/.opencode/skills/frontend-development/resources/file-organization.md +0 -502
  857. package/.opencode/skills/frontend-development/resources/loading-and-error-states.md +0 -501
  858. package/.opencode/skills/frontend-development/resources/performance.md +0 -406
  859. package/.opencode/skills/frontend-development/resources/routing-guide.md +0 -364
  860. package/.opencode/skills/frontend-development/resources/styling-guide.md +0 -428
  861. package/.opencode/skills/frontend-development/resources/typescript-standards.md +0 -418
  862. package/.opencode/skills/funnel/SKILL.md +0 -82
  863. package/.opencode/skills/gamification-marketing/SKILL.md +0 -95
  864. package/.opencode/skills/gamification-marketing/references/analytics-events.md +0 -84
  865. package/.opencode/skills/gamification-marketing/references/campaign-templates.md +0 -80
  866. package/.opencode/skills/gamification-marketing/references/case-studies.md +0 -60
  867. package/.opencode/skills/gamification-marketing/references/challenge-configs.md +0 -86
  868. package/.opencode/skills/gamification-marketing/references/database-schema.md +0 -98
  869. package/.opencode/skills/gamification-marketing/references/implementation-guide.md +0 -57
  870. package/.opencode/skills/gamification-marketing/references/kpi-tracking.md +0 -53
  871. package/.opencode/skills/gamification-marketing/references/mechanics-selection.md +0 -81
  872. package/.opencode/skills/gamification-marketing/references/psychology-frameworks.md +0 -96
  873. package/.opencode/skills/git/SKILL.md +0 -101
  874. package/.opencode/skills/git/references/branch-management.md +0 -88
  875. package/.opencode/skills/git/references/commit-standards.md +0 -45
  876. package/.opencode/skills/git/references/gh-cli-guide.md +0 -109
  877. package/.opencode/skills/git/references/safety-protocols.md +0 -69
  878. package/.opencode/skills/git/references/workflow-commit.md +0 -56
  879. package/.opencode/skills/git/references/workflow-merge.md +0 -48
  880. package/.opencode/skills/git/references/workflow-pr.md +0 -58
  881. package/.opencode/skills/git/references/workflow-push.md +0 -52
  882. package/.opencode/skills/gkg/SKILL.md +0 -94
  883. package/.opencode/skills/gkg/references/cli-commands.md +0 -106
  884. package/.opencode/skills/gkg/references/http-api.md +0 -102
  885. package/.opencode/skills/gkg/references/language-support.md +0 -57
  886. package/.opencode/skills/gkg/references/mcp-tools.md +0 -99
  887. package/.opencode/skills/google-adk-python/SKILL.md +0 -246
  888. package/.opencode/skills/google-adk-python/references/agent-types-and-architecture.md +0 -128
  889. package/.opencode/skills/google-adk-python/references/callbacks-plugins-observability.md +0 -117
  890. package/.opencode/skills/google-adk-python/references/deployment-cloud-run-vertex-gke.md +0 -138
  891. package/.opencode/skills/google-adk-python/references/evaluation-testing-cli.md +0 -112
  892. package/.opencode/skills/google-adk-python/references/multi-agent-and-a2a-protocol.md +0 -145
  893. package/.opencode/skills/google-adk-python/references/sessions-state-memory-artifacts.md +0 -131
  894. package/.opencode/skills/google-adk-python/references/tools-and-mcp-integration.md +0 -146
  895. package/.opencode/skills/hub/SKILL.md +0 -55
  896. package/.opencode/skills/init/SKILL.md +0 -219
  897. package/.opencode/skills/journal/SKILL.md +0 -22
  898. package/.opencode/skills/kanban/SKILL.md +0 -69
  899. package/.opencode/skills/kit-builder/SKILL.md +0 -85
  900. package/.opencode/skills/kit-builder/references/agent-guide.md +0 -79
  901. package/.opencode/skills/kit-builder/references/best-practices.md +0 -117
  902. package/.opencode/skills/kit-builder/references/command-guide.md +0 -91
  903. package/.opencode/skills/kit-builder/references/marketing-checklist.md +0 -121
  904. package/.opencode/skills/kit-builder/references/skill-guide.md +0 -74
  905. package/.opencode/skills/kit-builder/references/workflow-guide.md +0 -113
  906. package/.opencode/skills/kit-builder/scripts/init_component.py +0 -260
  907. package/.opencode/skills/kit-builder/templates/agent-template.md +0 -48
  908. package/.opencode/skills/kit-builder/templates/command-template.md +0 -37
  909. package/.opencode/skills/kit-builder/templates/skill-template.md +0 -53
  910. package/.opencode/skills/kit-builder/templates/workflow-template.md +0 -80
  911. package/.opencode/skills/launch-strategy/SKILL.md +0 -348
  912. package/.opencode/skills/llms/SKILL.md +0 -120
  913. package/.opencode/skills/llms/references/llms-txt-specification.md +0 -87
  914. package/.opencode/skills/llms/scripts/generate-llms-txt.py +0 -350
  915. package/.opencode/skills/logo-design/SKILL.md +0 -156
  916. package/.opencode/skills/logo-design/data/colors.csv +0 -56
  917. package/.opencode/skills/logo-design/data/industries.csv +0 -56
  918. package/.opencode/skills/logo-design/data/styles.csv +0 -56
  919. package/.opencode/skills/logo-design/references/color-psychology.md +0 -101
  920. package/.opencode/skills/logo-design/references/prompt-engineering.md +0 -158
  921. package/.opencode/skills/logo-design/references/style-guide.md +0 -109
  922. package/.opencode/skills/logo-design/scripts/core.py +0 -175
  923. package/.opencode/skills/logo-design/scripts/generate.py +0 -363
  924. package/.opencode/skills/logo-design/scripts/search.py +0 -114
  925. package/.opencode/skills/markdown-novel-viewer/SKILL.md +0 -285
  926. package/.opencode/skills/markdown-novel-viewer/assets/directory-browser.css +0 -215
  927. package/.opencode/skills/markdown-novel-viewer/assets/novel-theme.css +0 -872
  928. package/.opencode/skills/markdown-novel-viewer/assets/reader.js +0 -357
  929. package/.opencode/skills/markdown-novel-viewer/assets/styles/novel-theme-base.css +0 -54
  930. package/.opencode/skills/markdown-novel-viewer/assets/styles/novel-theme-components.css +0 -188
  931. package/.opencode/skills/markdown-novel-viewer/assets/styles/novel-theme-content.css +0 -178
  932. package/.opencode/skills/markdown-novel-viewer/assets/styles/novel-theme-header.css +0 -217
  933. package/.opencode/skills/markdown-novel-viewer/assets/styles/novel-theme-mermaid.css +0 -153
  934. package/.opencode/skills/markdown-novel-viewer/assets/styles/novel-theme-overlays.css +0 -202
  935. package/.opencode/skills/markdown-novel-viewer/assets/styles/novel-theme-responsive.css +0 -285
  936. package/.opencode/skills/markdown-novel-viewer/assets/styles/novel-theme-sidebar.css +0 -358
  937. package/.opencode/skills/markdown-novel-viewer/assets/styles/novel-theme-variables.css +0 -56
  938. package/.opencode/skills/markdown-novel-viewer/assets/template.html +0 -85
  939. package/.opencode/skills/markdown-novel-viewer/bun.lock +0 -38
  940. package/.opencode/skills/markdown-novel-viewer/package.json +0 -15
  941. package/.opencode/skills/markdown-novel-viewer/scripts/lib/http-server.cjs +0 -434
  942. package/.opencode/skills/markdown-novel-viewer/scripts/lib/markdown-renderer.cjs +0 -335
  943. package/.opencode/skills/markdown-novel-viewer/scripts/lib/plan-navigator.cjs +0 -509
  944. package/.opencode/skills/markdown-novel-viewer/scripts/lib/port-finder.cjs +0 -48
  945. package/.opencode/skills/markdown-novel-viewer/scripts/lib/process-mgr.cjs +0 -150
  946. package/.opencode/skills/markdown-novel-viewer/scripts/server.cjs +0 -411
  947. package/.opencode/skills/marketing-dashboard/.env.example +0 -15
  948. package/.opencode/skills/marketing-dashboard/README.md +0 -363
  949. package/.opencode/skills/marketing-dashboard/SKILL.md +0 -84
  950. package/.opencode/skills/marketing-dashboard/app/.env.example +0 -2
  951. package/.opencode/skills/marketing-dashboard/app/README.md +0 -5
  952. package/.opencode/skills/marketing-dashboard/app/index.html +0 -13
  953. package/.opencode/skills/marketing-dashboard/app/package.json +0 -31
  954. package/.opencode/skills/marketing-dashboard/app/postcss.config.js +0 -5
  955. package/.opencode/skills/marketing-dashboard/app/public/vite.svg +0 -1
  956. package/.opencode/skills/marketing-dashboard/app/src/App.vue +0 -9
  957. package/.opencode/skills/marketing-dashboard/app/src/assets/vue.svg +0 -1
  958. package/.opencode/skills/marketing-dashboard/app/src/components/assets/AssetCard.vue +0 -338
  959. package/.opencode/skills/marketing-dashboard/app/src/components/assets/AssetGrid.vue +0 -673
  960. package/.opencode/skills/marketing-dashboard/app/src/components/assets/AssetPreview.vue +0 -530
  961. package/.opencode/skills/marketing-dashboard/app/src/components/assets/previews/CodePreview.vue +0 -402
  962. package/.opencode/skills/marketing-dashboard/app/src/components/assets/previews/ImagePreview.vue +0 -282
  963. package/.opencode/skills/marketing-dashboard/app/src/components/assets/previews/InfographicPreview.vue +0 -167
  964. package/.opencode/skills/marketing-dashboard/app/src/components/assets/previews/JsonVisualizer.vue +0 -548
  965. package/.opencode/skills/marketing-dashboard/app/src/components/assets/previews/MarkdownPreview.vue +0 -774
  966. package/.opencode/skills/marketing-dashboard/app/src/components/assets/previews/SlidePreview.vue +0 -341
  967. package/.opencode/skills/marketing-dashboard/app/src/components/assets/previews/SocialPostPreview.vue +0 -505
  968. package/.opencode/skills/marketing-dashboard/app/src/components/assets/previews/StoryboardPreview.vue +0 -311
  969. package/.opencode/skills/marketing-dashboard/app/src/components/assets/previews/TranscriptPreview.vue +0 -350
  970. package/.opencode/skills/marketing-dashboard/app/src/components/assets/previews/VideoPreview.vue +0 -351
  971. package/.opencode/skills/marketing-dashboard/app/src/components/brand/ColorPalette.vue +0 -131
  972. package/.opencode/skills/marketing-dashboard/app/src/components/brand/ComponentShowcase.vue +0 -188
  973. package/.opencode/skills/marketing-dashboard/app/src/components/brand/LogoGallery.vue +0 -167
  974. package/.opencode/skills/marketing-dashboard/app/src/components/brand/SpacingScale.vue +0 -33
  975. package/.opencode/skills/marketing-dashboard/app/src/components/brand/TypographyPreview.vue +0 -97
  976. package/.opencode/skills/marketing-dashboard/app/src/components/brand/VoiceSummary.vue +0 -92
  977. package/.opencode/skills/marketing-dashboard/app/src/components/common/LoadingSpinner.vue +0 -75
  978. package/.opencode/skills/marketing-dashboard/app/src/components/common/Modal.vue +0 -60
  979. package/.opencode/skills/marketing-dashboard/app/src/components/common/Toast.vue +0 -119
  980. package/.opencode/skills/marketing-dashboard/app/src/components/layout/AppHeader.vue +0 -17
  981. package/.opencode/skills/marketing-dashboard/app/src/components/layout/AppLayout.vue +0 -16
  982. package/.opencode/skills/marketing-dashboard/app/src/components/layout/AppSidebar.vue +0 -103
  983. package/.opencode/skills/marketing-dashboard/app/src/config.js +0 -1
  984. package/.opencode/skills/marketing-dashboard/app/src/main.js +0 -12
  985. package/.opencode/skills/marketing-dashboard/app/src/router/index.js +0 -33
  986. package/.opencode/skills/marketing-dashboard/app/src/stores/assets.js +0 -108
  987. package/.opencode/skills/marketing-dashboard/app/src/stores/brand.js +0 -94
  988. package/.opencode/skills/marketing-dashboard/app/src/style.css +0 -72
  989. package/.opencode/skills/marketing-dashboard/app/src/views/AssetsView.vue +0 -109
  990. package/.opencode/skills/marketing-dashboard/app/src/views/BrandView.vue +0 -82
  991. package/.opencode/skills/marketing-dashboard/app/src/views/SettingsView.vue +0 -108
  992. package/.opencode/skills/marketing-dashboard/app/tailwind.config.js +0 -34
  993. package/.opencode/skills/marketing-dashboard/app/vite.config.js +0 -19
  994. package/.opencode/skills/marketing-dashboard/build.sh +0 -43
  995. package/.opencode/skills/marketing-dashboard/server/.env.example +0 -2
  996. package/.opencode/skills/marketing-dashboard/server/__tests__/ai.test.js +0 -456
  997. package/.opencode/skills/marketing-dashboard/server/__tests__/assets.test.js +0 -286
  998. package/.opencode/skills/marketing-dashboard/server/__tests__/brand-security.test.js +0 -183
  999. package/.opencode/skills/marketing-dashboard/server/__tests__/security-file-serving.test.js +0 -159
  1000. package/.opencode/skills/marketing-dashboard/server/__tests__/test-db.js +0 -31
  1001. package/.opencode/skills/marketing-dashboard/server/coverage_output.txt +0 -7
  1002. package/.opencode/skills/marketing-dashboard/server/db/database.js +0 -61
  1003. package/.opencode/skills/marketing-dashboard/server/db/schema.sql +0 -26
  1004. package/.opencode/skills/marketing-dashboard/server/index.js +0 -105
  1005. package/.opencode/skills/marketing-dashboard/server/lib/ai-bridge.cjs +0 -201
  1006. package/.opencode/skills/marketing-dashboard/server/lib/brand-context.cjs +0 -118
  1007. package/.opencode/skills/marketing-dashboard/server/lib/scanner.cjs +0 -440
  1008. package/.opencode/skills/marketing-dashboard/server/middleware/auth.js +0 -48
  1009. package/.opencode/skills/marketing-dashboard/server/package.json +0 -31
  1010. package/.opencode/skills/marketing-dashboard/server/routes/assets.js +0 -269
  1011. package/.opencode/skills/marketing-dashboard/server/routes/brand.js +0 -143
  1012. package/.opencode/skills/marketing-dashboard/server/vitest.config.js +0 -23
  1013. package/.opencode/skills/marketing-dashboard/start-production.sh +0 -55
  1014. package/.opencode/skills/marketing-dashboard/start.sh +0 -63
  1015. package/.opencode/skills/marketing-dashboard/stop.sh +0 -54
  1016. package/.opencode/skills/marketing-dashboard/temp/enhance/enhance-1766508537903.md +0 -7
  1017. package/.opencode/skills/marketing-ideas/SKILL.md +0 -569
  1018. package/.opencode/skills/marketing-planning/SKILL.md +0 -122
  1019. package/.opencode/skills/marketing-planning/references/brand-context.md +0 -54
  1020. package/.opencode/skills/marketing-planning/references/output-standards.md +0 -117
  1021. package/.opencode/skills/marketing-planning/references/plan-organization.md +0 -109
  1022. package/.opencode/skills/marketing-planning/references/research-phase.md +0 -39
  1023. package/.opencode/skills/marketing-planning/references/strategy-design.md +0 -61
  1024. package/.opencode/skills/marketing-psychology/SKILL.md +0 -455
  1025. package/.opencode/skills/marketing-research/SKILL.md +0 -172
  1026. package/.opencode/skills/mcp-builder/LICENSE.txt +0 -202
  1027. package/.opencode/skills/mcp-builder/SKILL.md +0 -332
  1028. package/.opencode/skills/mcp-builder/reference/evaluation.md +0 -602
  1029. package/.opencode/skills/mcp-builder/reference/mcp_best_practices.md +0 -915
  1030. package/.opencode/skills/mcp-builder/reference/node_mcp_server.md +0 -916
  1031. package/.opencode/skills/mcp-builder/reference/python_mcp_server.md +0 -752
  1032. package/.opencode/skills/mcp-builder/scripts/connections.py +0 -151
  1033. package/.opencode/skills/mcp-builder/scripts/evaluation.py +0 -373
  1034. package/.opencode/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  1035. package/.opencode/skills/mcp-builder/scripts/requirements.txt +0 -2
  1036. package/.opencode/skills/mcp-management/README.md +0 -219
  1037. package/.opencode/skills/mcp-management/SKILL.md +0 -213
  1038. package/.opencode/skills/mcp-management/assets/tools.json +0 -3146
  1039. package/.opencode/skills/mcp-management/references/configuration.md +0 -114
  1040. package/.opencode/skills/mcp-management/references/gemini-cli-integration.md +0 -215
  1041. package/.opencode/skills/mcp-management/references/mcp-protocol.md +0 -116
  1042. package/.opencode/skills/mcp-management/scripts/.env.example +0 -10
  1043. package/.opencode/skills/mcp-management/scripts/cli.ts +0 -195
  1044. package/.opencode/skills/mcp-management/scripts/dist/analyze-tools.js +0 -70
  1045. package/.opencode/skills/mcp-management/scripts/dist/cli.js +0 -160
  1046. package/.opencode/skills/mcp-management/scripts/dist/mcp-client.js +0 -183
  1047. package/.opencode/skills/mcp-management/scripts/mcp-client.ts +0 -230
  1048. package/.opencode/skills/mcp-management/scripts/package.json +0 -20
  1049. package/.opencode/skills/mcp-management/scripts/tsconfig.json +0 -15
  1050. package/.opencode/skills/media-processing/SKILL.md +0 -95
  1051. package/.opencode/skills/media-processing/references/common-workflows.md +0 -132
  1052. package/.opencode/skills/media-processing/references/ffmpeg-encoding.md +0 -358
  1053. package/.opencode/skills/media-processing/references/ffmpeg-filters.md +0 -503
  1054. package/.opencode/skills/media-processing/references/ffmpeg-streaming.md +0 -403
  1055. package/.opencode/skills/media-processing/references/format-compatibility.md +0 -375
  1056. package/.opencode/skills/media-processing/references/imagemagick-batch.md +0 -612
  1057. package/.opencode/skills/media-processing/references/imagemagick-editing.md +0 -623
  1058. package/.opencode/skills/media-processing/references/rmbg-background-removal.md +0 -66
  1059. package/.opencode/skills/media-processing/references/troubleshooting.md +0 -109
  1060. package/.opencode/skills/media-processing/scripts/README.md +0 -111
  1061. package/.opencode/skills/media-processing/scripts/batch-remove-background.sh +0 -124
  1062. package/.opencode/skills/media-processing/scripts/batch_resize.py +0 -342
  1063. package/.opencode/skills/media-processing/scripts/media_convert.py +0 -311
  1064. package/.opencode/skills/media-processing/scripts/remove-background.sh +0 -96
  1065. package/.opencode/skills/media-processing/scripts/remove-bg-node.js +0 -158
  1066. package/.opencode/skills/media-processing/scripts/requirements.txt +0 -24
  1067. package/.opencode/skills/media-processing/scripts/video_optimize.py +0 -414
  1068. package/.opencode/skills/mermaidjs-v11/SKILL.md +0 -119
  1069. package/.opencode/skills/mermaidjs-v11/references/cli-usage.md +0 -228
  1070. package/.opencode/skills/mermaidjs-v11/references/configuration.md +0 -232
  1071. package/.opencode/skills/mermaidjs-v11/references/diagram-types.md +0 -315
  1072. package/.opencode/skills/mermaidjs-v11/references/examples.md +0 -344
  1073. package/.opencode/skills/mermaidjs-v11/references/integration.md +0 -310
  1074. package/.opencode/skills/mintlify/SKILL.md +0 -123
  1075. package/.opencode/skills/mintlify/references/ai-features-and-integrations-reference.md +0 -756
  1076. package/.opencode/skills/mintlify/references/api-documentation-components-reference.md +0 -873
  1077. package/.opencode/skills/mintlify/references/deployment-and-continuous-integration-reference.md +0 -674
  1078. package/.opencode/skills/mintlify/references/docs-json-configuration-reference.md +0 -724
  1079. package/.opencode/skills/mintlify/references/mdx-components-reference.md +0 -551
  1080. package/.opencode/skills/mintlify/references/navigation-structure-and-organization-reference.md +0 -775
  1081. package/.opencode/skills/mobile-development/SKILL.md +0 -215
  1082. package/.opencode/skills/mobile-development/references/mobile-android.md +0 -604
  1083. package/.opencode/skills/mobile-development/references/mobile-best-practices.md +0 -545
  1084. package/.opencode/skills/mobile-development/references/mobile-debugging.md +0 -1089
  1085. package/.opencode/skills/mobile-development/references/mobile-frameworks.md +0 -465
  1086. package/.opencode/skills/mobile-development/references/mobile-ios.md +0 -496
  1087. package/.opencode/skills/mobile-development/references/mobile-mindset.md +0 -544
  1088. package/.opencode/skills/onboarding-cro/SKILL.md +0 -437
  1089. package/.opencode/skills/paid-ads/SKILL.md +0 -555
  1090. package/.opencode/skills/payment-integration/README.md +0 -217
  1091. package/.opencode/skills/payment-integration/SKILL.md +0 -156
  1092. package/.opencode/skills/payment-integration/references/creem/api.md +0 -139
  1093. package/.opencode/skills/payment-integration/references/creem/checkouts.md +0 -99
  1094. package/.opencode/skills/payment-integration/references/creem/licensing.md +0 -136
  1095. package/.opencode/skills/payment-integration/references/creem/overview.md +0 -65
  1096. package/.opencode/skills/payment-integration/references/creem/sdk.md +0 -161
  1097. package/.opencode/skills/payment-integration/references/creem/subscriptions.md +0 -129
  1098. package/.opencode/skills/payment-integration/references/creem/webhooks.md +0 -120
  1099. package/.opencode/skills/payment-integration/references/implementation-workflows.md +0 -43
  1100. package/.opencode/skills/payment-integration/references/multi-provider-order-management-patterns.md +0 -821
  1101. package/.opencode/skills/payment-integration/references/paddle/api.md +0 -116
  1102. package/.opencode/skills/payment-integration/references/paddle/best-practices.md +0 -130
  1103. package/.opencode/skills/payment-integration/references/paddle/overview.md +0 -57
  1104. package/.opencode/skills/payment-integration/references/paddle/paddle-js.md +0 -106
  1105. package/.opencode/skills/payment-integration/references/paddle/sdk.md +0 -131
  1106. package/.opencode/skills/payment-integration/references/paddle/subscriptions.md +0 -118
  1107. package/.opencode/skills/payment-integration/references/paddle/webhooks.md +0 -112
  1108. package/.opencode/skills/payment-integration/references/polar/benefits.md +0 -396
  1109. package/.opencode/skills/payment-integration/references/polar/best-practices.md +0 -902
  1110. package/.opencode/skills/payment-integration/references/polar/checkouts.md +0 -266
  1111. package/.opencode/skills/payment-integration/references/polar/overview.md +0 -184
  1112. package/.opencode/skills/payment-integration/references/polar/products.md +0 -244
  1113. package/.opencode/skills/payment-integration/references/polar/sdk.md +0 -436
  1114. package/.opencode/skills/payment-integration/references/polar/subscriptions.md +0 -340
  1115. package/.opencode/skills/payment-integration/references/polar/webhooks.md +0 -405
  1116. package/.opencode/skills/payment-integration/references/sepay/api.md +0 -140
  1117. package/.opencode/skills/payment-integration/references/sepay/best-practices.md +0 -939
  1118. package/.opencode/skills/payment-integration/references/sepay/overview.md +0 -138
  1119. package/.opencode/skills/payment-integration/references/sepay/qr-codes.md +0 -228
  1120. package/.opencode/skills/payment-integration/references/sepay/sdk.md +0 -213
  1121. package/.opencode/skills/payment-integration/references/sepay/webhooks.md +0 -208
  1122. package/.opencode/skills/payment-integration/references/stripe/stripe-best-practices.md +0 -32
  1123. package/.opencode/skills/payment-integration/references/stripe/stripe-cli.md +0 -148
  1124. package/.opencode/skills/payment-integration/references/stripe/stripe-js.md +0 -116
  1125. package/.opencode/skills/payment-integration/references/stripe/stripe-sdks.md +0 -84
  1126. package/.opencode/skills/payment-integration/references/stripe/stripe-upgrade.md +0 -175
  1127. package/.opencode/skills/payment-integration/scripts/.env.example +0 -20
  1128. package/.opencode/skills/payment-integration/scripts/checkout-helper.js +0 -244
  1129. package/.opencode/skills/payment-integration/scripts/package.json +0 -17
  1130. package/.opencode/skills/payment-integration/scripts/polar-webhook-verify.js +0 -202
  1131. package/.opencode/skills/payment-integration/scripts/sepay-webhook-verify.js +0 -193
  1132. package/.opencode/skills/payment-integration/scripts/test-scripts.js +0 -237
  1133. package/.opencode/skills/persona/SKILL.md +0 -66
  1134. package/.opencode/skills/plan/SKILL.md +0 -53
  1135. package/.opencode/skills/plan/references/archive.md +0 -52
  1136. package/.opencode/skills/plan/references/ci.md +0 -28
  1137. package/.opencode/skills/plan/references/cro.md +0 -64
  1138. package/.opencode/skills/plan/references/fast.md +0 -61
  1139. package/.opencode/skills/plan/references/hard.md +0 -87
  1140. package/.opencode/skills/plan/references/parallel.md +0 -124
  1141. package/.opencode/skills/plan/references/two.md +0 -40
  1142. package/.opencode/skills/plan/references/validate.md +0 -112
  1143. package/.opencode/skills/plans-kanban/SKILL.md +0 -170
  1144. package/.opencode/skills/plans-kanban/assets/dashboard-template.html +0 -119
  1145. package/.opencode/skills/plans-kanban/assets/dashboard.css +0 -1594
  1146. package/.opencode/skills/plans-kanban/assets/dashboard.js +0 -596
  1147. package/.opencode/skills/plans-kanban/package.json +0 -13
  1148. package/.opencode/skills/plans-kanban/scripts/lib/dashboard-renderer.cjs +0 -884
  1149. package/.opencode/skills/plans-kanban/scripts/lib/http-server.cjs +0 -310
  1150. package/.opencode/skills/plans-kanban/scripts/lib/plan-metadata-extractor.cjs +0 -489
  1151. package/.opencode/skills/plans-kanban/scripts/lib/plan-parser.cjs +0 -175
  1152. package/.opencode/skills/plans-kanban/scripts/lib/plan-scanner.cjs +0 -272
  1153. package/.opencode/skills/plans-kanban/scripts/lib/port-finder.cjs +0 -48
  1154. package/.opencode/skills/plans-kanban/scripts/lib/process-mgr.cjs +0 -126
  1155. package/.opencode/skills/plans-kanban/scripts/server.cjs +0 -253
  1156. package/.opencode/skills/play/SKILL.md +0 -111
  1157. package/.opencode/skills/play/references/blocked.md +0 -55
  1158. package/.opencode/skills/play/references/create.md +0 -48
  1159. package/.opencode/skills/play/references/gate.md +0 -38
  1160. package/.opencode/skills/play/references/goals.md +0 -53
  1161. package/.opencode/skills/play/references/learn.md +0 -48
  1162. package/.opencode/skills/play/references/list.md +0 -34
  1163. package/.opencode/skills/play/references/next.md +0 -51
  1164. package/.opencode/skills/play/references/reset.md +0 -34
  1165. package/.opencode/skills/play/references/status.md +0 -56
  1166. package/.opencode/skills/play/references/templates.md +0 -38
  1167. package/.opencode/skills/play/scripts/goals.cjs +0 -229
  1168. package/.opencode/skills/play/scripts/graph.cjs +0 -331
  1169. package/.opencode/skills/play/scripts/manifest.cjs +0 -474
  1170. package/.opencode/skills/play/scripts/metrics-bridge.cjs +0 -355
  1171. package/.opencode/skills/play/scripts/metrics-email.cjs +0 -182
  1172. package/.opencode/skills/play/scripts/metrics-social.cjs +0 -151
  1173. package/.opencode/skills/play/scripts/smart-suggest.cjs +0 -292
  1174. package/.opencode/skills/play/scripts/template-loader.cjs +0 -359
  1175. package/.opencode/skills/play/templates/_schema.json +0 -150
  1176. package/.opencode/skills/play/templates/campaign-sprint.json +0 -195
  1177. package/.opencode/skills/play/templates/content-engine.json +0 -348
  1178. package/.opencode/skills/play/templates/product-hunt-launch.json +0 -210
  1179. package/.opencode/skills/play/templates/saas-launch.json +0 -224
  1180. package/.opencode/skills/preview/SKILL.md +0 -87
  1181. package/.opencode/skills/preview/references/generation-modes.md +0 -192
  1182. package/.opencode/skills/preview/references/html-css-patterns.md +0 -1717
  1183. package/.opencode/skills/preview/references/html-design-guidelines.md +0 -393
  1184. package/.opencode/skills/preview/references/html-libraries.md +0 -592
  1185. package/.opencode/skills/preview/references/html-responsive-nav.md +0 -212
  1186. package/.opencode/skills/preview/references/html-slide-patterns.md +0 -1401
  1187. package/.opencode/skills/preview/references/view-mode.md +0 -42
  1188. package/.opencode/skills/preview/templates/architecture.html +0 -650
  1189. package/.opencode/skills/preview/templates/data-table.html +0 -590
  1190. package/.opencode/skills/preview/templates/mermaid-flowchart.html +0 -768
  1191. package/.opencode/skills/preview/templates/slide-deck.html +0 -968
  1192. package/.opencode/skills/pricing-strategy/SKILL.md +0 -714
  1193. package/.opencode/skills/problem-solving/SKILL.md +0 -99
  1194. package/.opencode/skills/problem-solving/references/attribution.md +0 -69
  1195. package/.opencode/skills/problem-solving/references/collision-zone-thinking.md +0 -79
  1196. package/.opencode/skills/problem-solving/references/inversion-exercise.md +0 -91
  1197. package/.opencode/skills/problem-solving/references/meta-pattern-recognition.md +0 -87
  1198. package/.opencode/skills/problem-solving/references/scale-game.md +0 -95
  1199. package/.opencode/skills/problem-solving/references/simplification-cascades.md +0 -80
  1200. package/.opencode/skills/problem-solving/references/when-stuck.md +0 -72
  1201. package/.opencode/skills/project-management/SKILL.md +0 -136
  1202. package/.opencode/skills/project-management/references/documentation-triggers.md +0 -60
  1203. package/.opencode/skills/project-management/references/hydration-workflow.md +0 -89
  1204. package/.opencode/skills/project-management/references/progress-tracking.md +0 -120
  1205. package/.opencode/skills/project-management/references/reporting-patterns.md +0 -94
  1206. package/.opencode/skills/project-management/references/task-operations.md +0 -87
  1207. package/.opencode/skills/project-organization/SKILL.md +0 -228
  1208. package/.opencode/skills/project-organization/references/directory-patterns.md +0 -176
  1209. package/.opencode/skills/project-organization/references/markdown-body-templates.md +0 -311
  1210. package/.opencode/skills/project-organization/references/naming-conventions.md +0 -140
  1211. package/.opencode/skills/react-best-practices/AGENTS.md +0 -2249
  1212. package/.opencode/skills/react-best-practices/README.md +0 -123
  1213. package/.opencode/skills/react-best-practices/SKILL.md +0 -125
  1214. package/.opencode/skills/react-best-practices/metadata.json +0 -15
  1215. package/.opencode/skills/react-best-practices/rules/_sections.md +0 -46
  1216. package/.opencode/skills/react-best-practices/rules/_template.md +0 -28
  1217. package/.opencode/skills/react-best-practices/rules/advanced-event-handler-refs.md +0 -55
  1218. package/.opencode/skills/react-best-practices/rules/advanced-use-latest.md +0 -49
  1219. package/.opencode/skills/react-best-practices/rules/async-api-routes.md +0 -38
  1220. package/.opencode/skills/react-best-practices/rules/async-defer-await.md +0 -80
  1221. package/.opencode/skills/react-best-practices/rules/async-dependencies.md +0 -36
  1222. package/.opencode/skills/react-best-practices/rules/async-parallel.md +0 -28
  1223. package/.opencode/skills/react-best-practices/rules/async-suspense-boundaries.md +0 -99
  1224. package/.opencode/skills/react-best-practices/rules/bundle-barrel-imports.md +0 -59
  1225. package/.opencode/skills/react-best-practices/rules/bundle-conditional.md +0 -31
  1226. package/.opencode/skills/react-best-practices/rules/bundle-defer-third-party.md +0 -49
  1227. package/.opencode/skills/react-best-practices/rules/bundle-dynamic-imports.md +0 -35
  1228. package/.opencode/skills/react-best-practices/rules/bundle-preload.md +0 -50
  1229. package/.opencode/skills/react-best-practices/rules/client-event-listeners.md +0 -74
  1230. package/.opencode/skills/react-best-practices/rules/client-swr-dedup.md +0 -56
  1231. package/.opencode/skills/react-best-practices/rules/js-batch-dom-css.md +0 -82
  1232. package/.opencode/skills/react-best-practices/rules/js-cache-function-results.md +0 -80
  1233. package/.opencode/skills/react-best-practices/rules/js-cache-property-access.md +0 -28
  1234. package/.opencode/skills/react-best-practices/rules/js-cache-storage.md +0 -70
  1235. package/.opencode/skills/react-best-practices/rules/js-combine-iterations.md +0 -32
  1236. package/.opencode/skills/react-best-practices/rules/js-early-exit.md +0 -50
  1237. package/.opencode/skills/react-best-practices/rules/js-hoist-regexp.md +0 -45
  1238. package/.opencode/skills/react-best-practices/rules/js-index-maps.md +0 -37
  1239. package/.opencode/skills/react-best-practices/rules/js-length-check-first.md +0 -49
  1240. package/.opencode/skills/react-best-practices/rules/js-min-max-loop.md +0 -82
  1241. package/.opencode/skills/react-best-practices/rules/js-set-map-lookups.md +0 -24
  1242. package/.opencode/skills/react-best-practices/rules/js-tosorted-immutable.md +0 -57
  1243. package/.opencode/skills/react-best-practices/rules/rendering-activity.md +0 -26
  1244. package/.opencode/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -47
  1245. package/.opencode/skills/react-best-practices/rules/rendering-conditional-render.md +0 -40
  1246. package/.opencode/skills/react-best-practices/rules/rendering-content-visibility.md +0 -38
  1247. package/.opencode/skills/react-best-practices/rules/rendering-hoist-jsx.md +0 -46
  1248. package/.opencode/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +0 -82
  1249. package/.opencode/skills/react-best-practices/rules/rendering-svg-precision.md +0 -28
  1250. package/.opencode/skills/react-best-practices/rules/rerender-defer-reads.md +0 -39
  1251. package/.opencode/skills/react-best-practices/rules/rerender-dependencies.md +0 -45
  1252. package/.opencode/skills/react-best-practices/rules/rerender-derived-state.md +0 -29
  1253. package/.opencode/skills/react-best-practices/rules/rerender-functional-setstate.md +0 -74
  1254. package/.opencode/skills/react-best-practices/rules/rerender-lazy-state-init.md +0 -58
  1255. package/.opencode/skills/react-best-practices/rules/rerender-memo.md +0 -44
  1256. package/.opencode/skills/react-best-practices/rules/rerender-transitions.md +0 -40
  1257. package/.opencode/skills/react-best-practices/rules/server-after-nonblocking.md +0 -73
  1258. package/.opencode/skills/react-best-practices/rules/server-cache-lru.md +0 -41
  1259. package/.opencode/skills/react-best-practices/rules/server-cache-react.md +0 -26
  1260. package/.opencode/skills/react-best-practices/rules/server-parallel-fetching.md +0 -79
  1261. package/.opencode/skills/react-best-practices/rules/server-serialization.md +0 -38
  1262. package/.opencode/skills/referral-program-building/SKILL.md +0 -81
  1263. package/.opencode/skills/referral-program-building/references/email-templates.md +0 -75
  1264. package/.opencode/skills/referral-program-building/references/fraud-prevention.md +0 -95
  1265. package/.opencode/skills/referral-program-building/references/metrics-tracking.md +0 -64
  1266. package/.opencode/skills/referral-program-building/references/platform-selection.md +0 -80
  1267. package/.opencode/skills/referral-program-building/references/reward-structures.md +0 -82
  1268. package/.opencode/skills/referral-program-building/references/technical-implementation.md +0 -98
  1269. package/.opencode/skills/remotion/SKILL.md +0 -45
  1270. package/.opencode/skills/remotion/rules/3d.md +0 -86
  1271. package/.opencode/skills/remotion/rules/animations.md +0 -29
  1272. package/.opencode/skills/remotion/rules/assets/charts-bar-chart.tsx +0 -173
  1273. package/.opencode/skills/remotion/rules/assets/text-animations-typewriter.tsx +0 -100
  1274. package/.opencode/skills/remotion/rules/assets/text-animations-word-highlight.tsx +0 -108
  1275. package/.opencode/skills/remotion/rules/assets.md +0 -78
  1276. package/.opencode/skills/remotion/rules/audio.md +0 -172
  1277. package/.opencode/skills/remotion/rules/calculate-metadata.md +0 -104
  1278. package/.opencode/skills/remotion/rules/can-decode.md +0 -75
  1279. package/.opencode/skills/remotion/rules/charts.md +0 -58
  1280. package/.opencode/skills/remotion/rules/compositions.md +0 -146
  1281. package/.opencode/skills/remotion/rules/display-captions.md +0 -126
  1282. package/.opencode/skills/remotion/rules/extract-frames.md +0 -229
  1283. package/.opencode/skills/remotion/rules/fonts.md +0 -152
  1284. package/.opencode/skills/remotion/rules/get-audio-duration.md +0 -58
  1285. package/.opencode/skills/remotion/rules/get-video-dimensions.md +0 -68
  1286. package/.opencode/skills/remotion/rules/get-video-duration.md +0 -58
  1287. package/.opencode/skills/remotion/rules/gifs.md +0 -138
  1288. package/.opencode/skills/remotion/rules/images.md +0 -130
  1289. package/.opencode/skills/remotion/rules/import-srt-captions.md +0 -67
  1290. package/.opencode/skills/remotion/rules/lottie.md +0 -68
  1291. package/.opencode/skills/remotion/rules/measuring-dom-nodes.md +0 -35
  1292. package/.opencode/skills/remotion/rules/measuring-text.md +0 -143
  1293. package/.opencode/skills/remotion/rules/sequencing.md +0 -106
  1294. package/.opencode/skills/remotion/rules/tailwind.md +0 -11
  1295. package/.opencode/skills/remotion/rules/text-animations.md +0 -20
  1296. package/.opencode/skills/remotion/rules/timing.md +0 -179
  1297. package/.opencode/skills/remotion/rules/transcribe-captions.md +0 -19
  1298. package/.opencode/skills/remotion/rules/transitions.md +0 -122
  1299. package/.opencode/skills/remotion/rules/trimming.md +0 -53
  1300. package/.opencode/skills/remotion/rules/videos.md +0 -171
  1301. package/.opencode/skills/repomix/SKILL.md +0 -251
  1302. package/.opencode/skills/repomix/references/configuration.md +0 -211
  1303. package/.opencode/skills/repomix/references/usage-patterns.md +0 -232
  1304. package/.opencode/skills/repomix/scripts/.coverage +0 -0
  1305. package/.opencode/skills/repomix/scripts/README.md +0 -179
  1306. package/.opencode/skills/repomix/scripts/repomix_batch.py +0 -455
  1307. package/.opencode/skills/repomix/scripts/repos.example.json +0 -15
  1308. package/.opencode/skills/repomix/scripts/requirements.txt +0 -15
  1309. package/.opencode/skills/research/SKILL.md +0 -176
  1310. package/.opencode/skills/retro/SKILL.md +0 -138
  1311. package/.opencode/skills/retro/references/metrics-guide.md +0 -133
  1312. package/.opencode/skills/retro/references/report-template.md +0 -110
  1313. package/.opencode/skills/scout/SKILL.md +0 -82
  1314. package/.opencode/skills/scout/references/external-scouting.md +0 -140
  1315. package/.opencode/skills/scout/references/internal-scouting.md +0 -119
  1316. package/.opencode/skills/scout/references/task-management-scouting.md +0 -125
  1317. package/.opencode/skills/security-scan/SKILL.md +0 -141
  1318. package/.opencode/skills/security-scan/references/secret-patterns.md +0 -77
  1319. package/.opencode/skills/security-scan/references/vulnerability-patterns.md +0 -105
  1320. package/.opencode/skills/seo/SKILL.md +0 -95
  1321. package/.opencode/skills/seo/references/audit.md +0 -121
  1322. package/.opencode/skills/seo/references/backlink-analysis-framework.md +0 -192
  1323. package/.opencode/skills/seo/references/browser-seo-audit-workflow.md +0 -180
  1324. package/.opencode/skills/seo/references/canonical-url-strategy.md +0 -286
  1325. package/.opencode/skills/seo/references/content-gap-analysis-framework.md +0 -255
  1326. package/.opencode/skills/seo/references/core-web-vitals-remediation.md +0 -279
  1327. package/.opencode/skills/seo/references/directory-submission-list.md +0 -280
  1328. package/.opencode/skills/seo/references/google-search-console-api-guide.md +0 -745
  1329. package/.opencode/skills/seo/references/internal-linking-automation.md +0 -685
  1330. package/.opencode/skills/seo/references/keyword-clustering-methodology.md +0 -175
  1331. package/.opencode/skills/seo/references/keyword-research-workflow.md +0 -63
  1332. package/.opencode/skills/seo/references/keywords.md +0 -131
  1333. package/.opencode/skills/seo/references/link-building-campaign-framework.md +0 -246
  1334. package/.opencode/skills/seo/references/meta-tag-templates.md +0 -229
  1335. package/.opencode/skills/seo/references/mobile-seo-checklist.md +0 -557
  1336. package/.opencode/skills/seo/references/on-page-seo-checklist-2025.md +0 -328
  1337. package/.opencode/skills/seo/references/outreach-email-templates.md +0 -335
  1338. package/.opencode/skills/seo/references/pseo-best-practices.md +0 -366
  1339. package/.opencode/skills/seo/references/pseo-scale-architecture.md +0 -801
  1340. package/.opencode/skills/seo/references/pseo-template-syntax.md +0 -329
  1341. package/.opencode/skills/seo/references/pseo-templates.md +0 -85
  1342. package/.opencode/skills/seo/references/pseo-url-structure-guide.md +0 -562
  1343. package/.opencode/skills/seo/references/pseo.md +0 -62
  1344. package/.opencode/skills/seo/references/readability-scoring-guide.md +0 -304
  1345. package/.opencode/skills/seo/references/reviewweb-api.md +0 -69
  1346. package/.opencode/skills/seo/references/reviewweb-content-api.md +0 -89
  1347. package/.opencode/skills/seo/references/robots-txt-best-practices-2025.md +0 -479
  1348. package/.opencode/skills/seo/references/schema-generation.md +0 -102
  1349. package/.opencode/skills/seo/references/schema-templates/article-schema.json +0 -25
  1350. package/.opencode/skills/seo/references/schema-templates/faq-schema.json +0 -47
  1351. package/.opencode/skills/seo/references/schema-templates/howto-schema.json +0 -66
  1352. package/.opencode/skills/seo/references/schema-templates/localbusiness-schema.json +0 -64
  1353. package/.opencode/skills/seo/references/schema-templates/organization-schema.json +0 -49
  1354. package/.opencode/skills/seo/references/schema-templates/product-schema.json +0 -49
  1355. package/.opencode/skills/seo/references/search-console-query-patterns.md +0 -606
  1356. package/.opencode/skills/seo/references/semantic-seo-framework.md +0 -480
  1357. package/.opencode/skills/seo/references/seo-audit-workflow.md +0 -90
  1358. package/.opencode/skills/seo/references/sitemap-best-practices.md +0 -391
  1359. package/.opencode/skills/seo/references/technical-seo-checklist.md +0 -74
  1360. package/.opencode/skills/seo/scripts/analyze-keywords.cjs +0 -575
  1361. package/.opencode/skills/seo/scripts/audit-core-web-vitals.cjs +0 -496
  1362. package/.opencode/skills/seo/scripts/env-loader.cjs +0 -213
  1363. package/.opencode/skills/seo/scripts/env-loader.test.cjs +0 -231
  1364. package/.opencode/skills/seo/scripts/generate-schema.cjs +0 -119
  1365. package/.opencode/skills/seo/scripts/generate-sitemap.cjs +0 -66
  1366. package/.opencode/skills/seo/scripts/gsc-auth.cjs +0 -352
  1367. package/.opencode/skills/seo/scripts/gsc-config-loader.cjs +0 -238
  1368. package/.opencode/skills/seo/scripts/gsc-query.cjs +0 -499
  1369. package/.opencode/skills/seo/scripts/pseo-generator.cjs +0 -464
  1370. package/.opencode/skills/seo/scripts/validate-schema.cjs +0 -421
  1371. package/.opencode/skills/sequential-thinking/.env.example +0 -8
  1372. package/.opencode/skills/sequential-thinking/README.md +0 -183
  1373. package/.opencode/skills/sequential-thinking/SKILL.md +0 -97
  1374. package/.opencode/skills/sequential-thinking/package.json +0 -31
  1375. package/.opencode/skills/sequential-thinking/references/advanced-strategies.md +0 -79
  1376. package/.opencode/skills/sequential-thinking/references/advanced-techniques.md +0 -76
  1377. package/.opencode/skills/sequential-thinking/references/core-patterns.md +0 -95
  1378. package/.opencode/skills/sequential-thinking/references/examples-api.md +0 -88
  1379. package/.opencode/skills/sequential-thinking/references/examples-architecture.md +0 -94
  1380. package/.opencode/skills/sequential-thinking/references/examples-debug.md +0 -90
  1381. package/.opencode/skills/sequential-thinking/scripts/format-thought.js +0 -159
  1382. package/.opencode/skills/sequential-thinking/scripts/process-thought.js +0 -236
  1383. package/.opencode/skills/shader/SKILL.md +0 -115
  1384. package/.opencode/skills/shader/references/glsl-cellular-voronoi-worley-noise-patterns.md +0 -142
  1385. package/.opencode/skills/shader/references/glsl-colors-rgb-hsb-gradients-mixing-color-spaces.md +0 -143
  1386. package/.opencode/skills/shader/references/glsl-fbm-fractional-brownian-motion-turbulence-octaves.md +0 -146
  1387. package/.opencode/skills/shader/references/glsl-fundamentals-data-types-vectors-precision-coordinates.md +0 -104
  1388. package/.opencode/skills/shader/references/glsl-noise-random-perlin-simplex-cellular-voronoi.md +0 -115
  1389. package/.opencode/skills/shader/references/glsl-pattern-symmetry-truchet-domain-warping.md +0 -134
  1390. package/.opencode/skills/shader/references/glsl-patterns-tiling-fract-matrices-transformations.md +0 -133
  1391. package/.opencode/skills/shader/references/glsl-procedural-textures-clouds-marble-wood-terrain.md +0 -144
  1392. package/.opencode/skills/shader/references/glsl-shader-builtin-functions-complete-api-reference.md +0 -112
  1393. package/.opencode/skills/shader/references/glsl-shapes-polygon-star-polar-sdf-combinations.md +0 -124
  1394. package/.opencode/skills/shader/references/glsl-shapes-sdf-circles-rectangles-polar-distance-fields.md +0 -106
  1395. package/.opencode/skills/shader/references/glsl-shaping-functions-step-smoothstep-curves-interpolation.md +0 -141
  1396. package/.opencode/skills/ship/SKILL.md +0 -119
  1397. package/.opencode/skills/ship/references/auto-detect.md +0 -103
  1398. package/.opencode/skills/ship/references/pr-template.md +0 -90
  1399. package/.opencode/skills/ship/references/ship-workflow.md +0 -241
  1400. package/.opencode/skills/shopify/README.md +0 -66
  1401. package/.opencode/skills/shopify/SKILL.md +0 -323
  1402. package/.opencode/skills/shopify/references/app-development.md +0 -470
  1403. package/.opencode/skills/shopify/references/extensions.md +0 -493
  1404. package/.opencode/skills/shopify/references/themes.md +0 -498
  1405. package/.opencode/skills/shopify/scripts/.coverage +0 -0
  1406. package/.opencode/skills/shopify/scripts/requirements.txt +0 -19
  1407. package/.opencode/skills/shopify/scripts/shopify_init.py +0 -423
  1408. package/.opencode/skills/skill-creator/LICENSE.txt +0 -202
  1409. package/.opencode/skills/skill-creator/SKILL.md +0 -121
  1410. package/.opencode/skills/skill-creator/agents/analyzer.md +0 -274
  1411. package/.opencode/skills/skill-creator/agents/comparator.md +0 -202
  1412. package/.opencode/skills/skill-creator/agents/grader.md +0 -223
  1413. package/.opencode/skills/skill-creator/assets/eval_review.html +0 -146
  1414. package/.opencode/skills/skill-creator/eval-viewer/generate_review.py +0 -471
  1415. package/.opencode/skills/skill-creator/eval-viewer/viewer.html +0 -1325
  1416. package/.opencode/skills/skill-creator/references/benchmark-optimization-guide.md +0 -86
  1417. package/.opencode/skills/skill-creator/references/distribution-guide.md +0 -79
  1418. package/.opencode/skills/skill-creator/references/eval-infrastructure-guide.md +0 -129
  1419. package/.opencode/skills/skill-creator/references/eval-schemas.md +0 -121
  1420. package/.opencode/skills/skill-creator/references/mcp-skills-integration.md +0 -71
  1421. package/.opencode/skills/skill-creator/references/metadata-quality-criteria.md +0 -76
  1422. package/.opencode/skills/skill-creator/references/plugin-marketplace-hosting.md +0 -104
  1423. package/.opencode/skills/skill-creator/references/plugin-marketplace-overview.md +0 -89
  1424. package/.opencode/skills/skill-creator/references/plugin-marketplace-schema.md +0 -93
  1425. package/.opencode/skills/skill-creator/references/plugin-marketplace-sources.md +0 -103
  1426. package/.opencode/skills/skill-creator/references/plugin-marketplace-troubleshooting.md +0 -76
  1427. package/.opencode/skills/skill-creator/references/script-quality-criteria.md +0 -106
  1428. package/.opencode/skills/skill-creator/references/skill-anatomy-and-requirements.md +0 -76
  1429. package/.opencode/skills/skill-creator/references/skill-creation-workflow.md +0 -95
  1430. package/.opencode/skills/skill-creator/references/skill-design-patterns.md +0 -75
  1431. package/.opencode/skills/skill-creator/references/skillmark-benchmark-criteria.md +0 -102
  1432. package/.opencode/skills/skill-creator/references/structure-organization-criteria.md +0 -114
  1433. package/.opencode/skills/skill-creator/references/testing-and-iteration.md +0 -78
  1434. package/.opencode/skills/skill-creator/references/token-efficiency-criteria.md +0 -74
  1435. package/.opencode/skills/skill-creator/references/troubleshooting-guide.md +0 -80
  1436. package/.opencode/skills/skill-creator/references/validation-checklist.md +0 -83
  1437. package/.opencode/skills/skill-creator/references/writing-effective-instructions.md +0 -88
  1438. package/.opencode/skills/skill-creator/references/yaml-frontmatter-reference.md +0 -91
  1439. package/.opencode/skills/skill-creator/scripts/aggregate_benchmark.py +0 -401
  1440. package/.opencode/skills/skill-creator/scripts/debug.zip +0 -0
  1441. package/.opencode/skills/skill-creator/scripts/encoding_utils.py +0 -36
  1442. package/.opencode/skills/skill-creator/scripts/generate_report.py +0 -326
  1443. package/.opencode/skills/skill-creator/scripts/improve_description.py +0 -248
  1444. package/.opencode/skills/skill-creator/scripts/init_skill.py +0 -308
  1445. package/.opencode/skills/skill-creator/scripts/package_skill.py +0 -115
  1446. package/.opencode/skills/skill-creator/scripts/quick_validate.py +0 -69
  1447. package/.opencode/skills/skill-creator/scripts/run_eval.py +0 -310
  1448. package/.opencode/skills/skill-creator/scripts/run_loop.py +0 -332
  1449. package/.opencode/skills/skill-creator/scripts/utils.py +0 -47
  1450. package/.opencode/skills/slides/SKILL.md +0 -42
  1451. package/.opencode/skills/slides/references/copywriting-formulas.md +0 -84
  1452. package/.opencode/skills/slides/references/create.md +0 -4
  1453. package/.opencode/skills/slides/references/html-template.md +0 -295
  1454. package/.opencode/skills/slides/references/layout-patterns.md +0 -137
  1455. package/.opencode/skills/slides/references/slide-strategies.md +0 -94
  1456. package/.opencode/skills/social/SKILL.md +0 -75
  1457. package/.opencode/skills/social/references/engagement-templates.md +0 -58
  1458. package/.opencode/skills/social/references/facebook-workflow.md +0 -175
  1459. package/.opencode/skills/social/references/hook-writing.md +0 -190
  1460. package/.opencode/skills/social/references/linkedin-workflow.md +0 -162
  1461. package/.opencode/skills/social/references/platform-specs.md +0 -58
  1462. package/.opencode/skills/social/references/posting-best-practices.md +0 -61
  1463. package/.opencode/skills/social/references/rate-limits-errors.md +0 -191
  1464. package/.opencode/skills/social/references/schedule.md +0 -50
  1465. package/.opencode/skills/social/references/thread-templates.md +0 -72
  1466. package/.opencode/skills/social/references/threads-workflow.md +0 -198
  1467. package/.opencode/skills/social/references/tiktok-workflow.md +0 -194
  1468. package/.opencode/skills/social/references/unified-api-services.md +0 -153
  1469. package/.opencode/skills/social/references/x-twitter-workflow.md +0 -111
  1470. package/.opencode/skills/social/references/youtube-workflow.md +0 -179
  1471. package/.opencode/skills/social/scripts/schedule-post.js +0 -222
  1472. package/.opencode/skills/social/scripts/validate-post-content.js +0 -195
  1473. package/.opencode/skills/stitch/SKILL.md +0 -171
  1474. package/.opencode/skills/stitch/data/mcp-config-snippet.json +0 -11
  1475. package/.opencode/skills/stitch/references/design-to-code-pipeline.md +0 -128
  1476. package/.opencode/skills/stitch/references/quota-management.md +0 -64
  1477. package/.opencode/skills/stitch/references/stitch-mcp-setup.md +0 -95
  1478. package/.opencode/skills/stitch/references/stitch-sdk-api.md +0 -136
  1479. package/.opencode/skills/stitch/scripts/package.json +0 -17
  1480. package/.opencode/skills/stitch/scripts/stitch-export.ts +0 -173
  1481. package/.opencode/skills/stitch/scripts/stitch-generate.ts +0 -182
  1482. package/.opencode/skills/stitch/scripts/stitch-quota.ts +0 -123
  1483. package/.opencode/skills/storage/SKILL.md +0 -93
  1484. package/.opencode/skills/storage/scripts/s3-client.cjs +0 -357
  1485. package/.opencode/skills/tanstack/SKILL.md +0 -144
  1486. package/.opencode/skills/tanstack/references/tanstack-ai.md +0 -97
  1487. package/.opencode/skills/tanstack/references/tanstack-form.md +0 -125
  1488. package/.opencode/skills/tanstack/references/tanstack-start.md +0 -100
  1489. package/.opencode/skills/team/SKILL.md +0 -361
  1490. package/.opencode/skills/team/references/agent-teams-controls-and-modes.md +0 -129
  1491. package/.opencode/skills/team/references/agent-teams-examples-and-best-practices.md +0 -220
  1492. package/.opencode/skills/team/references/agent-teams-official-docs.md +0 -221
  1493. package/.opencode/skills/template-skill/SKILL.md +0 -9
  1494. package/.opencode/skills/test/SKILL.md +0 -40
  1495. package/.opencode/skills/test/references/report-format.md +0 -58
  1496. package/.opencode/skills/test/references/test-execution-workflow.md +0 -103
  1497. package/.opencode/skills/test/references/ui-testing-workflow.md +0 -65
  1498. package/.opencode/skills/test/references/ui.md +0 -87
  1499. package/.opencode/skills/test/references/workflow.md +0 -102
  1500. package/.opencode/skills/test/scripts/scan-components.py +0 -281
  1501. package/.opencode/skills/threejs/SKILL.md +0 -144
  1502. package/.opencode/skills/threejs/data/api-reference.csv +0 -61
  1503. package/.opencode/skills/threejs/data/categories.csv +0 -14
  1504. package/.opencode/skills/threejs/data/examples-all.csv +0 -557
  1505. package/.opencode/skills/threejs/data/use-cases.csv +0 -21
  1506. package/.opencode/skills/threejs/references/00-fundamentals.md +0 -487
  1507. package/.opencode/skills/threejs/references/01-getting-started.md +0 -177
  1508. package/.opencode/skills/threejs/references/02-loaders.md +0 -169
  1509. package/.opencode/skills/threejs/references/03-textures.md +0 -170
  1510. package/.opencode/skills/threejs/references/04-cameras.md +0 -195
  1511. package/.opencode/skills/threejs/references/05-lights.md +0 -183
  1512. package/.opencode/skills/threejs/references/06-animations.md +0 -214
  1513. package/.opencode/skills/threejs/references/07-math.md +0 -260
  1514. package/.opencode/skills/threejs/references/08-interaction.md +0 -267
  1515. package/.opencode/skills/threejs/references/09-postprocessing.md +0 -240
  1516. package/.opencode/skills/threejs/references/10-controls.md +0 -259
  1517. package/.opencode/skills/threejs/references/11-materials-advanced.md +0 -270
  1518. package/.opencode/skills/threejs/references/11-materials.md +0 -519
  1519. package/.opencode/skills/threejs/references/12-performance.md +0 -269
  1520. package/.opencode/skills/threejs/references/13-node-materials.md +0 -298
  1521. package/.opencode/skills/threejs/references/14-physics-vr.md +0 -304
  1522. package/.opencode/skills/threejs/references/15-specialized-loaders.md +0 -333
  1523. package/.opencode/skills/threejs/references/16-webgpu.md +0 -302
  1524. package/.opencode/skills/threejs/references/17-shader.md +0 -641
  1525. package/.opencode/skills/threejs/references/18-geometry.md +0 -547
  1526. package/.opencode/skills/threejs/scripts/core.py +0 -236
  1527. package/.opencode/skills/threejs/scripts/extract_examples.py +0 -688
  1528. package/.opencode/skills/threejs/scripts/generate_csv_from_json.py +0 -135
  1529. package/.opencode/skills/threejs/scripts/search.py +0 -77
  1530. package/.opencode/skills/ui-styling/LICENSE.txt +0 -202
  1531. package/.opencode/skills/ui-styling/SKILL.md +0 -324
  1532. package/.opencode/skills/ui-styling/canvas-fonts/ArsenalSC-OFL.txt +0 -93
  1533. package/.opencode/skills/ui-styling/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  1534. package/.opencode/skills/ui-styling/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  1535. package/.opencode/skills/ui-styling/canvas-fonts/BigShoulders-OFL.txt +0 -93
  1536. package/.opencode/skills/ui-styling/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  1537. package/.opencode/skills/ui-styling/canvas-fonts/Boldonse-OFL.txt +0 -93
  1538. package/.opencode/skills/ui-styling/canvas-fonts/Boldonse-Regular.ttf +0 -0
  1539. package/.opencode/skills/ui-styling/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  1540. package/.opencode/skills/ui-styling/canvas-fonts/BricolageGrotesque-OFL.txt +0 -93
  1541. package/.opencode/skills/ui-styling/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  1542. package/.opencode/skills/ui-styling/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  1543. package/.opencode/skills/ui-styling/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  1544. package/.opencode/skills/ui-styling/canvas-fonts/CrimsonPro-OFL.txt +0 -93
  1545. package/.opencode/skills/ui-styling/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  1546. package/.opencode/skills/ui-styling/canvas-fonts/DMMono-OFL.txt +0 -93
  1547. package/.opencode/skills/ui-styling/canvas-fonts/DMMono-Regular.ttf +0 -0
  1548. package/.opencode/skills/ui-styling/canvas-fonts/EricaOne-OFL.txt +0 -94
  1549. package/.opencode/skills/ui-styling/canvas-fonts/EricaOne-Regular.ttf +0 -0
  1550. package/.opencode/skills/ui-styling/canvas-fonts/GeistMono-Bold.ttf +0 -0
  1551. package/.opencode/skills/ui-styling/canvas-fonts/GeistMono-OFL.txt +0 -93
  1552. package/.opencode/skills/ui-styling/canvas-fonts/GeistMono-Regular.ttf +0 -0
  1553. package/.opencode/skills/ui-styling/canvas-fonts/Gloock-OFL.txt +0 -93
  1554. package/.opencode/skills/ui-styling/canvas-fonts/Gloock-Regular.ttf +0 -0
  1555. package/.opencode/skills/ui-styling/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  1556. package/.opencode/skills/ui-styling/canvas-fonts/IBMPlexMono-OFL.txt +0 -93
  1557. package/.opencode/skills/ui-styling/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  1558. package/.opencode/skills/ui-styling/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  1559. package/.opencode/skills/ui-styling/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  1560. package/.opencode/skills/ui-styling/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  1561. package/.opencode/skills/ui-styling/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  1562. package/.opencode/skills/ui-styling/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  1563. package/.opencode/skills/ui-styling/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  1564. package/.opencode/skills/ui-styling/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  1565. package/.opencode/skills/ui-styling/canvas-fonts/InstrumentSans-OFL.txt +0 -93
  1566. package/.opencode/skills/ui-styling/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  1567. package/.opencode/skills/ui-styling/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  1568. package/.opencode/skills/ui-styling/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  1569. package/.opencode/skills/ui-styling/canvas-fonts/Italiana-OFL.txt +0 -93
  1570. package/.opencode/skills/ui-styling/canvas-fonts/Italiana-Regular.ttf +0 -0
  1571. package/.opencode/skills/ui-styling/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  1572. package/.opencode/skills/ui-styling/canvas-fonts/JetBrainsMono-OFL.txt +0 -93
  1573. package/.opencode/skills/ui-styling/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  1574. package/.opencode/skills/ui-styling/canvas-fonts/Jura-Light.ttf +0 -0
  1575. package/.opencode/skills/ui-styling/canvas-fonts/Jura-Medium.ttf +0 -0
  1576. package/.opencode/skills/ui-styling/canvas-fonts/Jura-OFL.txt +0 -93
  1577. package/.opencode/skills/ui-styling/canvas-fonts/LibreBaskerville-OFL.txt +0 -93
  1578. package/.opencode/skills/ui-styling/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  1579. package/.opencode/skills/ui-styling/canvas-fonts/Lora-Bold.ttf +0 -0
  1580. package/.opencode/skills/ui-styling/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  1581. package/.opencode/skills/ui-styling/canvas-fonts/Lora-Italic.ttf +0 -0
  1582. package/.opencode/skills/ui-styling/canvas-fonts/Lora-OFL.txt +0 -93
  1583. package/.opencode/skills/ui-styling/canvas-fonts/Lora-Regular.ttf +0 -0
  1584. package/.opencode/skills/ui-styling/canvas-fonts/NationalPark-Bold.ttf +0 -0
  1585. package/.opencode/skills/ui-styling/canvas-fonts/NationalPark-OFL.txt +0 -93
  1586. package/.opencode/skills/ui-styling/canvas-fonts/NationalPark-Regular.ttf +0 -0
  1587. package/.opencode/skills/ui-styling/canvas-fonts/NothingYouCouldDo-OFL.txt +0 -93
  1588. package/.opencode/skills/ui-styling/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  1589. package/.opencode/skills/ui-styling/canvas-fonts/Outfit-Bold.ttf +0 -0
  1590. package/.opencode/skills/ui-styling/canvas-fonts/Outfit-OFL.txt +0 -93
  1591. package/.opencode/skills/ui-styling/canvas-fonts/Outfit-Regular.ttf +0 -0
  1592. package/.opencode/skills/ui-styling/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  1593. package/.opencode/skills/ui-styling/canvas-fonts/PixelifySans-OFL.txt +0 -93
  1594. package/.opencode/skills/ui-styling/canvas-fonts/PoiretOne-OFL.txt +0 -93
  1595. package/.opencode/skills/ui-styling/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  1596. package/.opencode/skills/ui-styling/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  1597. package/.opencode/skills/ui-styling/canvas-fonts/RedHatMono-OFL.txt +0 -93
  1598. package/.opencode/skills/ui-styling/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  1599. package/.opencode/skills/ui-styling/canvas-fonts/Silkscreen-OFL.txt +0 -93
  1600. package/.opencode/skills/ui-styling/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  1601. package/.opencode/skills/ui-styling/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  1602. package/.opencode/skills/ui-styling/canvas-fonts/SmoochSans-OFL.txt +0 -93
  1603. package/.opencode/skills/ui-styling/canvas-fonts/Tektur-Medium.ttf +0 -0
  1604. package/.opencode/skills/ui-styling/canvas-fonts/Tektur-OFL.txt +0 -93
  1605. package/.opencode/skills/ui-styling/canvas-fonts/Tektur-Regular.ttf +0 -0
  1606. package/.opencode/skills/ui-styling/canvas-fonts/WorkSans-Bold.ttf +0 -0
  1607. package/.opencode/skills/ui-styling/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  1608. package/.opencode/skills/ui-styling/canvas-fonts/WorkSans-Italic.ttf +0 -0
  1609. package/.opencode/skills/ui-styling/canvas-fonts/WorkSans-OFL.txt +0 -93
  1610. package/.opencode/skills/ui-styling/canvas-fonts/WorkSans-Regular.ttf +0 -0
  1611. package/.opencode/skills/ui-styling/canvas-fonts/YoungSerif-OFL.txt +0 -93
  1612. package/.opencode/skills/ui-styling/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  1613. package/.opencode/skills/ui-styling/references/canvas-design-system.md +0 -320
  1614. package/.opencode/skills/ui-styling/references/shadcn-accessibility.md +0 -471
  1615. package/.opencode/skills/ui-styling/references/shadcn-components.md +0 -424
  1616. package/.opencode/skills/ui-styling/references/shadcn-theming.md +0 -373
  1617. package/.opencode/skills/ui-styling/references/tailwind-customization.md +0 -483
  1618. package/.opencode/skills/ui-styling/references/tailwind-responsive.md +0 -382
  1619. package/.opencode/skills/ui-styling/references/tailwind-utilities.md +0 -455
  1620. package/.opencode/skills/ui-styling/scripts/.coverage +0 -0
  1621. package/.opencode/skills/ui-styling/scripts/requirements.txt +0 -17
  1622. package/.opencode/skills/ui-styling/scripts/shadcn_add.py +0 -292
  1623. package/.opencode/skills/ui-styling/scripts/tailwind_config_gen.py +0 -456
  1624. package/.opencode/skills/ui-ux-pro-max/SKILL.md +0 -662
  1625. package/.opencode/skills/ui-ux-pro-max/data/_sync_all.py +0 -414
  1626. package/.opencode/skills/ui-ux-pro-max/data/app-interface.csv +0 -31
  1627. package/.opencode/skills/ui-ux-pro-max/data/charts.csv +0 -26
  1628. package/.opencode/skills/ui-ux-pro-max/data/colors.csv +0 -162
  1629. package/.opencode/skills/ui-ux-pro-max/data/design.csv +0 -1776
  1630. package/.opencode/skills/ui-ux-pro-max/data/draft.csv +0 -1779
  1631. package/.opencode/skills/ui-ux-pro-max/data/google-fonts.csv +0 -1924
  1632. package/.opencode/skills/ui-ux-pro-max/data/icons.csv +0 -106
  1633. package/.opencode/skills/ui-ux-pro-max/data/landing.csv +0 -35
  1634. package/.opencode/skills/ui-ux-pro-max/data/products.csv +0 -162
  1635. package/.opencode/skills/ui-ux-pro-max/data/react-performance.csv +0 -45
  1636. package/.opencode/skills/ui-ux-pro-max/data/stacks/react-native.csv +0 -52
  1637. package/.opencode/skills/ui-ux-pro-max/data/styles.csv +0 -85
  1638. package/.opencode/skills/ui-ux-pro-max/data/typography.csv +0 -74
  1639. package/.opencode/skills/ui-ux-pro-max/data/ui-reasoning.csv +0 -162
  1640. package/.opencode/skills/ui-ux-pro-max/data/ux-guidelines.csv +0 -100
  1641. package/.opencode/skills/ui-ux-pro-max/scripts/core.py +0 -247
  1642. package/.opencode/skills/ui-ux-pro-max/scripts/design_system.py +0 -1067
  1643. package/.opencode/skills/ui-ux-pro-max/scripts/search.py +0 -114
  1644. package/.opencode/skills/use-mcp/SKILL.md +0 -39
  1645. package/.opencode/skills/video/SKILL.md +0 -72
  1646. package/.opencode/skills/video/references/audio-directive-guide.md +0 -274
  1647. package/.opencode/skills/video/references/create.md +0 -322
  1648. package/.opencode/skills/video/references/production-workflow.md +0 -135
  1649. package/.opencode/skills/video/references/quality-review-workflow.md +0 -566
  1650. package/.opencode/skills/video/references/script-create.md +0 -391
  1651. package/.opencode/skills/video/references/script-templates.md +0 -107
  1652. package/.opencode/skills/video/references/storyboard-create.md +0 -210
  1653. package/.opencode/skills/video/references/storyboard-format.md +0 -255
  1654. package/.opencode/skills/video/references/thumbnail-design-guide.md +0 -367
  1655. package/.opencode/skills/video/references/veo-prompt-guide.md +0 -360
  1656. package/.opencode/skills/video/references/video-art-directions.md +0 -64
  1657. package/.opencode/skills/video/references/video-optimization.md +0 -95
  1658. package/.opencode/skills/video/references/video-seo-optimization.md +0 -399
  1659. package/.opencode/skills/video/references/video-types-specs.md +0 -66
  1660. package/.opencode/skills/video/scripts/analyze-video.cjs +0 -321
  1661. package/.opencode/skills/video/scripts/create-storyboard.cjs +0 -476
  1662. package/.opencode/skills/video/scripts/extract-captions.cjs +0 -355
  1663. package/.opencode/skills/video/scripts/generate-video.cjs +0 -331
  1664. package/.opencode/skills/video/scripts/optimize-for-platform.cjs +0 -428
  1665. package/.opencode/skills/video/templates/explainer.json +0 -73
  1666. package/.opencode/skills/video/templates/product-demo.json +0 -69
  1667. package/.opencode/skills/video/templates/short-form.json +0 -111
  1668. package/.opencode/skills/video/templates/testimonial.json +0 -73
  1669. package/.opencode/skills/watzup/SKILL.md +0 -13
  1670. package/.opencode/skills/web-design-guidelines/SKILL.md +0 -39
  1671. package/.opencode/skills/web-frameworks/SKILL.md +0 -327
  1672. package/.opencode/skills/web-frameworks/references/nextjs-app-router.md +0 -465
  1673. package/.opencode/skills/web-frameworks/references/nextjs-data-fetching.md +0 -459
  1674. package/.opencode/skills/web-frameworks/references/nextjs-optimization.md +0 -511
  1675. package/.opencode/skills/web-frameworks/references/nextjs-server-components.md +0 -495
  1676. package/.opencode/skills/web-frameworks/references/remix-icon-integration.md +0 -603
  1677. package/.opencode/skills/web-frameworks/references/turborepo-caching.md +0 -551
  1678. package/.opencode/skills/web-frameworks/references/turborepo-pipelines.md +0 -517
  1679. package/.opencode/skills/web-frameworks/references/turborepo-setup.md +0 -542
  1680. package/.opencode/skills/web-frameworks/scripts/.coverage +0 -0
  1681. package/.opencode/skills/web-frameworks/scripts/__init__.py +0 -0
  1682. package/.opencode/skills/web-frameworks/scripts/nextjs_init.py +0 -547
  1683. package/.opencode/skills/web-frameworks/scripts/requirements.txt +0 -16
  1684. package/.opencode/skills/web-frameworks/scripts/turborepo_migrate.py +0 -394
  1685. package/.opencode/skills/web-testing/SKILL.md +0 -99
  1686. package/.opencode/skills/web-testing/references/accessibility-testing.md +0 -84
  1687. package/.opencode/skills/web-testing/references/api-testing.md +0 -78
  1688. package/.opencode/skills/web-testing/references/ci-cd-testing-workflows.md +0 -121
  1689. package/.opencode/skills/web-testing/references/component-testing.md +0 -94
  1690. package/.opencode/skills/web-testing/references/contract-testing.md +0 -146
  1691. package/.opencode/skills/web-testing/references/cross-browser-checklist.md +0 -72
  1692. package/.opencode/skills/web-testing/references/database-testing.md +0 -139
  1693. package/.opencode/skills/web-testing/references/e2e-testing-playwright.md +0 -119
  1694. package/.opencode/skills/web-testing/references/functional-testing-checklist.md +0 -88
  1695. package/.opencode/skills/web-testing/references/interactive-testing-patterns.md +0 -89
  1696. package/.opencode/skills/web-testing/references/load-testing-k6.md +0 -93
  1697. package/.opencode/skills/web-testing/references/mobile-gesture-testing.md +0 -85
  1698. package/.opencode/skills/web-testing/references/performance-core-web-vitals.md +0 -124
  1699. package/.opencode/skills/web-testing/references/playwright-component-testing.md +0 -115
  1700. package/.opencode/skills/web-testing/references/pre-release-checklist.md +0 -75
  1701. package/.opencode/skills/web-testing/references/security-checklists.md +0 -81
  1702. package/.opencode/skills/web-testing/references/security-testing-overview.md +0 -92
  1703. package/.opencode/skills/web-testing/references/shadow-dom-testing.md +0 -70
  1704. package/.opencode/skills/web-testing/references/test-data-management.md +0 -131
  1705. package/.opencode/skills/web-testing/references/test-flakiness-mitigation.md +0 -86
  1706. package/.opencode/skills/web-testing/references/testing-pyramid-strategy.md +0 -76
  1707. package/.opencode/skills/web-testing/references/unit-integration-testing.md +0 -138
  1708. package/.opencode/skills/web-testing/references/visual-regression.md +0 -92
  1709. package/.opencode/skills/web-testing/references/vulnerability-payloads.md +0 -93
  1710. package/.opencode/skills/web-testing/scripts/analyze-test-results.js +0 -280
  1711. package/.opencode/skills/web-testing/scripts/init-playwright.js +0 -233
  1712. package/.opencode/skills/worktree/SKILL.md +0 -130
  1713. package/.opencode/skills/worktree/scripts/worktree.cjs +0 -979
  1714. package/.opencode/skills/worktree/scripts/worktree.test.cjs +0 -857
  1715. package/.opencode/skills/write/SKILL.md +0 -28
  1716. package/.opencode/skills/write/references/audit.md +0 -93
  1717. package/.opencode/skills/write/references/blog-youtube.md +0 -164
  1718. package/.opencode/skills/write/references/blog.md +0 -95
  1719. package/.opencode/skills/write/references/cro.md +0 -38
  1720. package/.opencode/skills/write/references/enhance.md +0 -9
  1721. package/.opencode/skills/write/references/fast.md +0 -8
  1722. package/.opencode/skills/write/references/formula.md +0 -112
  1723. package/.opencode/skills/write/references/good.md +0 -29
  1724. package/.opencode/skills/write/references/publish.md +0 -70
  1725. package/.opencode/skills/youtube/SKILL.md +0 -50
  1726. package/.opencode/skills/youtube/references/api-content.md +0 -96
  1727. package/.opencode/skills/youtube/references/api-media.md +0 -66
  1728. package/.opencode/skills/youtube/references/blog.md +0 -132
  1729. package/.opencode/skills/youtube/references/infographic.md +0 -152
  1730. package/.opencode/skills/youtube/references/social.md +0 -165
  1731. package/.opencode/skills/youtube/scripts/test_vidcap.py +0 -172
  1732. package/.opencode/skills/youtube/scripts/vidcap.py +0 -302
  1733. package/.opencode/skills/youtube-thumbnail-design/SKILL.md +0 -186
  1734. package/.opencode/skills/youtube-thumbnail-design/data/niches.csv +0 -13
  1735. package/.opencode/skills/youtube-thumbnail-design/data/styles.csv +0 -18
  1736. package/.opencode/skills/youtube-thumbnail-design/references/thumbnail-styles.md +0 -170
  1737. package/.opencode/skills/youtube-thumbnail-design/scripts/core.py +0 -150
  1738. package/.opencode/skills/youtube-thumbnail-design/scripts/generate.py +0 -441
  1739. package/.opencode/skills/youtube-thumbnail-design/scripts/search.py +0 -115
  1740. package/.opencode/workflows/analytics-workflow.md +0 -264
  1741. package/.opencode/workflows/campaign-workflow.md +0 -228
  1742. package/.opencode/workflows/content-workflow.md +0 -275
  1743. package/.opencode/workflows/development-rules.md +0 -42
  1744. package/.opencode/workflows/documentation-management.md +0 -121
  1745. package/.opencode/workflows/marketing-workflow.md +0 -198
  1746. package/.opencode/workflows/orchestration-protocol.md +0 -16
  1747. package/.opencode/workflows/primary-workflow.md +0 -45
  1748. package/.opencode/workflows/sales-workflow.md +0 -193
  1749. package/.opencode/workflows/seo-workflow.md +0 -248
  1750. package/dist/web/assets/chat-tab-B3ut-s33.js +0 -10
  1751. package/dist/web/assets/index-BFXOaZuI.js +0 -30
  1752. package/dist/web/assets/index-Dxq-L2b4.css +0 -2
  1753. package/dist/web/assets/keybindings-store-A-4OusX7.js +0 -1
  1754. package/dist/web/assets/markdown-renderer-Br_NykOI.js +0 -69
@@ -1,25 +1,30 @@
1
1
  import { createCipheriv, createDecipheriv, randomBytes, scryptSync } from "node:crypto";
2
2
  import { existsSync, readFileSync, writeFileSync, mkdirSync } from "node:fs";
3
3
  import { resolve } from "node:path";
4
- import { homedir } from "node:os";
4
+ import { getPpmDir } from "../services/ppm-dir.ts";
5
5
 
6
6
  const ALGO = "aes-256-gcm";
7
7
 
8
- let keyPath = resolve(homedir(), ".ppm", "account.key");
8
+ let _keyPathOverride: string | null = null;
9
+
10
+ function getKeyPath(): string {
11
+ return _keyPathOverride ?? resolve(getPpmDir(), "account.key");
12
+ }
9
13
 
10
14
  /** Override key path (for tests) */
11
15
  export function setKeyPath(path: string): void {
12
- keyPath = path;
16
+ _keyPathOverride = path;
13
17
  _key = null; // invalidate cached key
14
18
  }
15
19
 
16
20
  function loadOrCreateKey(): Buffer {
17
- if (existsSync(keyPath)) {
18
- return Buffer.from(readFileSync(keyPath, "utf-8").trim(), "hex");
21
+ const kp = getKeyPath();
22
+ if (existsSync(kp)) {
23
+ return Buffer.from(readFileSync(kp, "utf-8").trim(), "hex");
19
24
  }
20
25
  const key = randomBytes(32);
21
- mkdirSync(resolve(keyPath, ".."), { recursive: true });
22
- writeFileSync(keyPath, key.toString("hex"), { mode: 0o600 });
26
+ mkdirSync(resolve(kp, ".."), { recursive: true });
27
+ writeFileSync(kp, key.toString("hex"), { mode: 0o600 });
23
28
  return key;
24
29
  }
25
30
 
@@ -20,7 +20,7 @@ import { getSessionProjectPath, setSessionMetadata, getSessionTitles } from "../
20
20
  import { accountSelector } from "../services/account-selector.service.ts";
21
21
  import { accountService, type AccountWithTokens } from "../services/account.service.ts";
22
22
  import { resolve } from "node:path";
23
- import { existsSync, readdirSync, unlinkSync } from "node:fs";
23
+ import { existsSync, readdirSync, unlinkSync, readFileSync, statSync } from "node:fs";
24
24
  import { homedir } from "node:os";
25
25
 
26
26
  const CLAUDE_PROJECTS_DIR = resolve(homedir(), ".claude/projects");
@@ -322,13 +322,30 @@ export class ClaudeAgentSdkProvider implements AIProvider {
322
322
  // Overlay DB titles (user-set) over SDK titles
323
323
  const ids = sdkSessions.map((s) => s.sessionId);
324
324
  const dbTitles = getSessionTitles(ids);
325
- return sdkSessions.map((s) => ({
325
+ const sessions: SessionInfo[] = sdkSessions.map((s) => ({
326
326
  id: s.sessionId,
327
327
  providerId: this.id,
328
328
  title: dbTitles[s.sessionId] ?? s.customTitle ?? s.summary ?? s.firstPrompt ?? "Chat",
329
329
  createdAt: new Date(s.lastModified).toISOString(),
330
330
  updatedAt: new Date(s.lastModified).toISOString(),
331
331
  }));
332
+
333
+ // SDK's listSessions drops sessions whose first user message exceeds its
334
+ // 64KB head buffer (e.g. large pasted docs). Scan JSONL dir to recover them.
335
+ if (dir && offset === 0) {
336
+ const knownIds = new Set(sessions.map((s) => s.id));
337
+ const missing = findMissingSessions(dir, knownIds, this.id);
338
+ if (missing.length > 0) {
339
+ const missingIds = missing.map((s) => s.id);
340
+ const missingDbTitles = getSessionTitles(missingIds);
341
+ for (const s of missing) {
342
+ s.title = missingDbTitles[s.id] ?? s.title;
343
+ }
344
+ sessions.push(...missing);
345
+ }
346
+ }
347
+
348
+ return sessions;
332
349
  } catch {
333
350
  return Array.from(this.activeSessions.values()).map((s) => ({
334
351
  id: s.id,
@@ -343,15 +360,28 @@ export class ClaudeAgentSdkProvider implements AIProvider {
343
360
  async getSessionInfoById(sessionId: string, dir?: string): Promise<SessionInfo | null> {
344
361
  try {
345
362
  const info = await sdkGetSessionInfo(sessionId, { dir });
346
- if (!info) return null;
347
- const dbTitles = getSessionTitles([info.sessionId]);
348
- return {
349
- id: info.sessionId,
350
- providerId: this.id,
351
- title: dbTitles[info.sessionId] ?? info.customTitle ?? info.summary ?? info.firstPrompt ?? "Chat",
352
- createdAt: new Date(info.lastModified).toISOString(),
353
- updatedAt: new Date(info.lastModified).toISOString(),
354
- };
363
+ if (info) {
364
+ const dbTitles = getSessionTitles([info.sessionId]);
365
+ return {
366
+ id: info.sessionId,
367
+ providerId: this.id,
368
+ title: dbTitles[info.sessionId] ?? info.customTitle ?? info.summary ?? info.firstPrompt ?? "Chat",
369
+ createdAt: new Date(info.lastModified).toISOString(),
370
+ updatedAt: new Date(info.lastModified).toISOString(),
371
+ };
372
+ }
373
+ // SDK can't find the session (large first message, active session, etc.)
374
+ // — try direct JSONL lookup
375
+ if (dir) {
376
+ const missing = findMissingSessions(dir, new Set(), this.id);
377
+ const match = missing.find((s) => s.id === sessionId);
378
+ if (match) {
379
+ const dbTitles = getSessionTitles([sessionId]);
380
+ match.title = dbTitles[sessionId] ?? match.title;
381
+ return match;
382
+ }
383
+ }
384
+ return null;
355
385
  } catch {
356
386
  return null;
357
387
  }
@@ -479,10 +509,32 @@ export class ClaudeAgentSdkProvider implements AIProvider {
479
509
  }
480
510
 
481
511
  async *sendMessage(
482
- sessionId: string,
512
+ _sessionId: string,
483
513
  message: string,
484
514
  opts?: import("./provider.interface.ts").SendMessageOpts & { forkSession?: boolean; priority?: 'now' | 'next' | 'later'; images?: Array<{ data: string; mediaType: string }> },
485
515
  ): AsyncIterable<ChatEvent> {
516
+ // SDK requires valid UUID session IDs. Short/random IDs can leak from
517
+ // tab derivation or URL parsing — migrate to a real UUID early.
518
+ const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
519
+ let sessionId = _sessionId;
520
+ if (!UUID_RE.test(sessionId)) {
521
+ const newId = crypto.randomUUID();
522
+ console.warn(`[sdk] session=${sessionId} is not a valid UUID — migrating to ${newId}`);
523
+ // Migrate internal maps
524
+ const oldMeta = this.activeSessions.get(sessionId);
525
+ if (oldMeta) {
526
+ this.activeSessions.delete(sessionId);
527
+ oldMeta.id = newId;
528
+ this.activeSessions.set(newId, oldMeta);
529
+ }
530
+ const oldCount = this.messageCount.get(sessionId);
531
+ if (oldCount != null) { this.messageCount.set(newId, oldCount); this.messageCount.delete(sessionId); }
532
+ const oldStream = this.streamingSessions.get(sessionId);
533
+ if (oldStream) { this.streamingSessions.set(newId, oldStream); this.streamingSessions.delete(sessionId); }
534
+ yield { type: "session_migrated" as const, oldSessionId: sessionId, newSessionId: newId };
535
+ sessionId = newId;
536
+ }
537
+
486
538
  // Follow-up: push into existing streaming session, yield nothing
487
539
  const existingStream = this.streamingSessions.get(sessionId);
488
540
  if (existingStream) {
@@ -617,6 +669,7 @@ export class ClaudeAgentSdkProvider implements AIProvider {
617
669
  let resultSubtype: string | undefined;
618
670
  let resultNumTurns: number | undefined;
619
671
  let resultContextWindowPct: number | undefined;
672
+ let lastAssistantUuid: string | undefined;
620
673
  let yieldedDone = false;
621
674
  try {
622
675
  // Session ID is the canonical ID for both PPM and SDK (no dual-ID mapping).
@@ -977,6 +1030,8 @@ export class ClaudeAgentSdkProvider implements AIProvider {
977
1030
  // Partial assistant message — streaming text deltas
978
1031
  if ((msg as any).type === "partial" || (msg as any).type === "stream_event") {
979
1032
  const partial = msg as any;
1033
+ // Track assistant UUID from top-level messages (not subagent children)
1034
+ if (!parentId && partial.uuid) lastAssistantUuid = partial.uuid;
980
1035
  // Handle stream_event (raw API events) for text deltas
981
1036
  if ((msg as any).type === "stream_event") {
982
1037
  const event = partial.event;
@@ -1014,6 +1069,8 @@ export class ClaudeAgentSdkProvider implements AIProvider {
1014
1069
 
1015
1070
  // Full assistant message
1016
1071
  if (msg.type === "assistant") {
1072
+ // Track assistant UUID from top-level messages (not subagent children)
1073
+ if (!parentId && (msg as any).uuid) lastAssistantUuid = (msg as any).uuid;
1017
1074
  // SDK assistant messages can carry an error field for auth/billing/rate-limit failures
1018
1075
  let assistantError = (msg as any).error as string | undefined;
1019
1076
 
@@ -1361,6 +1418,7 @@ export class ClaudeAgentSdkProvider implements AIProvider {
1361
1418
  resultSubtype: resultSubtype as any,
1362
1419
  numTurns: resultNumTurns,
1363
1420
  contextWindowPct: resultContextWindowPct,
1421
+ lastMessageUuid: lastAssistantUuid,
1364
1422
  };
1365
1423
 
1366
1424
  // Reset per-turn state for next turn
@@ -1370,6 +1428,7 @@ export class ClaudeAgentSdkProvider implements AIProvider {
1370
1428
  resultSubtype = undefined;
1371
1429
  resultNumTurns = undefined;
1372
1430
  resultContextWindowPct = undefined;
1431
+ lastAssistantUuid = undefined;
1373
1432
  sdkEventCount = 0;
1374
1433
  continue; // Wait for next turn from generator
1375
1434
  }
@@ -1438,6 +1497,7 @@ export class ClaudeAgentSdkProvider implements AIProvider {
1438
1497
  resultSubtype: resultSubtype as any,
1439
1498
  numTurns: resultNumTurns,
1440
1499
  contextWindowPct: resultContextWindowPct,
1500
+ lastMessageUuid: lastAssistantUuid,
1441
1501
  };
1442
1502
  }
1443
1503
  }
@@ -1551,6 +1611,7 @@ function parseSessionMessage(msg: { uuid: string; type: string; message: unknown
1551
1611
  content: textContent,
1552
1612
  events: events.length > 0 ? events : undefined,
1553
1613
  timestamp: new Date().toISOString(),
1614
+ sdkUuid: msg.uuid,
1554
1615
  };
1555
1616
  }
1556
1617
 
@@ -1602,6 +1663,81 @@ function extractText(message: unknown): string {
1602
1663
  return "";
1603
1664
  }
1604
1665
 
1666
+ /**
1667
+ * Scan a JSONL project directory for sessions that the SDK's listSessions missed.
1668
+ * The SDK uses a 64KB head buffer; sessions with very large first messages
1669
+ * (e.g., pasted API docs) can't be parsed and are silently dropped.
1670
+ * We extract title from queue-operation content or first user message.
1671
+ */
1672
+ const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;
1673
+ function findMissingSessions(
1674
+ dir: string,
1675
+ knownIds: Set<string>,
1676
+ providerId: string,
1677
+ ): SessionInfo[] {
1678
+ let resolvedDir: string;
1679
+ try { resolvedDir = require("node:fs").realpathSync(dir).normalize("NFC"); } catch { resolvedDir = dir; }
1680
+ // Match SDK's path encoding: replace all non-alphanumeric chars with "-"
1681
+ const encodedDir = resolvedDir.replace(/[^a-zA-Z0-9]/g, "-");
1682
+ let jsonlDir = resolve(CLAUDE_PROJECTS_DIR, encodedDir);
1683
+ // SDK truncates to 200 chars + hash for long paths; try prefix match as fallback
1684
+ if (!existsSync(jsonlDir) && encodedDir.length > 200) {
1685
+ const prefix = encodedDir.slice(0, 200);
1686
+ try {
1687
+ const match = readdirSync(CLAUDE_PROJECTS_DIR).find((d) => d.startsWith(prefix + "-"));
1688
+ if (match) jsonlDir = resolve(CLAUDE_PROJECTS_DIR, match);
1689
+ else return [];
1690
+ } catch { return []; }
1691
+ }
1692
+ if (!existsSync(jsonlDir)) return [];
1693
+
1694
+ const results: SessionInfo[] = [];
1695
+ for (const file of readdirSync(jsonlDir)) {
1696
+ if (!file.endsWith(".jsonl")) continue;
1697
+ const id = file.slice(0, -6);
1698
+ if (!UUID_RE.test(id) || knownIds.has(id)) continue;
1699
+
1700
+ try {
1701
+ const filePath = resolve(jsonlDir, file);
1702
+ const stat = statSync(filePath);
1703
+ // Read first 512 bytes — enough to extract title from queue-operation content
1704
+ const buf = Buffer.alloc(512);
1705
+ const { openSync, readSync, closeSync } = require("node:fs") as typeof import("node:fs");
1706
+ const fd = openSync(filePath, "r");
1707
+ const bytesRead = readSync(fd, buf, 0, 512, 0);
1708
+ closeSync(fd);
1709
+ const head = buf.toString("utf-8", 0, bytesRead);
1710
+
1711
+ let title = "Chat";
1712
+ // Extract "content" value via string search (JSON may be truncated)
1713
+ const idx = head.indexOf('"content":"');
1714
+ if (idx >= 0) {
1715
+ const start = idx + 11; // length of '"content":"'
1716
+ // Read up to 120 chars or next unescaped quote
1717
+ let end = start;
1718
+ while (end < head.length && end - start < 200) {
1719
+ if (head[end] === "\\" ) { end += 2; continue; }
1720
+ if (head[end] === '"') break;
1721
+ end++;
1722
+ }
1723
+ const raw = head.slice(start, end).replace(/\\n/g, " ").replace(/\\"/g, '"').trim();
1724
+ if (raw.length > 0) {
1725
+ title = raw.length > 120 ? raw.slice(0, 120) + "…" : raw;
1726
+ }
1727
+ }
1728
+
1729
+ results.push({
1730
+ id,
1731
+ providerId,
1732
+ title,
1733
+ createdAt: new Date(stat.mtime).toISOString(),
1734
+ updatedAt: new Date(stat.mtime).toISOString(),
1735
+ });
1736
+ } catch { /* skip unreadable files */ }
1737
+ }
1738
+ return results;
1739
+ }
1740
+
1605
1741
  /** Strip SDK teammate-message XML tags from assistant text */
1606
1742
  const TEAMMATE_MSG_RE = /<teammate-message[^>]*>[\s\S]*?<\/teammate-message>/g;
1607
1743
  function stripTeammateXml(text: string): string {
@@ -29,10 +29,10 @@ async function setupLogFile() {
29
29
  (globalThis as any).__PPM_LOG_SETUP__ = true;
30
30
 
31
31
  const { resolve } = await import("node:path");
32
- const { homedir } = await import("node:os");
33
32
  const { appendFileSync, mkdirSync, existsSync } = await import("node:fs");
33
+ const { getPpmDir } = await import("../services/ppm-dir.ts");
34
34
 
35
- const ppmDir = process.env.PPM_HOME || resolve(homedir(), ".ppm");
35
+ const ppmDir = getPpmDir();
36
36
  if (!existsSync(ppmDir)) mkdirSync(ppmDir, { recursive: true });
37
37
  const logPath = resolve(ppmDir, "ppm.log");
38
38
 
@@ -104,9 +104,9 @@ app.get("/api/info", (c) => c.json(ok({
104
104
  // Public: recent logs for bug reports (last 30 lines)
105
105
  app.get("/api/logs/recent", async (c) => {
106
106
  const { resolve } = await import("node:path");
107
- const { homedir } = await import("node:os");
108
107
  const { existsSync, readFileSync } = await import("node:fs");
109
- const logFile = resolve(homedir(), ".ppm", "ppm.log");
108
+ const { getPpmDir } = await import("../services/ppm-dir.ts");
109
+ const logFile = resolve(getPpmDir(), "ppm.log");
110
110
  if (!existsSync(logFile)) return c.json(ok({ logs: "" }));
111
111
  const content = readFileSync(logFile, "utf-8");
112
112
  const lines = content.split("\n").slice(-30).join("\n").trim();
@@ -234,12 +234,12 @@ export async function startServer(options: {
234
234
 
235
235
  {
236
236
  const { resolve } = await import("node:path");
237
- const { homedir } = await import("node:os");
238
237
  const { writeFileSync, readFileSync, mkdirSync, existsSync, openSync } = await import("node:fs");
239
238
  const { isCompiledBinary } = await import("../services/autostart-generator.ts");
240
239
  const { writeCmd, acquireLock, releaseLock } = await import("../services/supervisor-state.ts");
240
+ const { getPpmDir } = await import("../services/ppm-dir.ts");
241
241
 
242
- const ppmDir = process.env.PPM_HOME || resolve(homedir(), ".ppm");
242
+ const ppmDir = getPpmDir();
243
243
  if (!existsSync(ppmDir)) mkdirSync(ppmDir, { recursive: true });
244
244
  const pidFile = resolve(ppmDir, "ppm.pid");
245
245
  const statusFile = resolve(ppmDir, "status.json");
@@ -490,9 +490,9 @@ if (process.argv.includes("__serve__")) {
490
490
  // Also write server version to status.json so supervisor heartbeat reports the actual running version.
491
491
  try {
492
492
  const { resolve: r } = await import("node:path");
493
- const { homedir: h } = await import("node:os");
494
493
  const { readFileSync: rf, writeFileSync: wf, renameSync: rn } = await import("node:fs");
495
- const statusFile = r(h(), ".ppm", "status.json");
494
+ const { getPpmDir: gd } = await import("../services/ppm-dir.ts");
495
+ const statusFile = r(gd(), "status.json");
496
496
  const status = JSON.parse(rf(statusFile, "utf-8"));
497
497
  // Write running server version — source of truth for heartbeat
498
498
  status.serverVersion = VERSION;
@@ -5,7 +5,7 @@ import { tmpdir } from "node:os";
5
5
  import { chatService } from "../../services/chat.service.ts";
6
6
  import { providerRegistry } from "../../providers/registry.ts";
7
7
  import { renameSession as sdkRenameSession } from "@anthropic-ai/claude-agent-sdk";
8
- import { listSlashItems } from "../../services/slash-items.service.ts";
8
+ import { listSlashItems, searchSlashItems } from "../../services/slash-items.service.ts";
9
9
  import { getCachedUsage, refreshUsageNow } from "../../services/claude-usage.service.ts";
10
10
  import { getSessionLog } from "../../services/session-log.service.ts";
11
11
  import { getSessionProjectPath, setSessionMetadata, setSessionTitle, getPinnedSessionIds, pinSession, unpinSession, deleteSessionMapping, deleteSessionMetadata, deleteSessionTitle } from "../../services/db.service.ts";
@@ -19,7 +19,9 @@ export const chatRoutes = new Hono<Env>();
19
19
  chatRoutes.get("/slash-items", (c) => {
20
20
  try {
21
21
  const projectPath = c.get("projectPath");
22
- const items = listSlashItems(projectPath);
22
+ const q = c.req.query("q");
23
+ let items = listSlashItems(projectPath);
24
+ if (q) items = searchSlashItems(items, q);
23
25
  return c.json(ok(items));
24
26
  } catch (e) {
25
27
  return c.json(err((e as Error).message), 500);
@@ -19,11 +19,67 @@ interface ActiveTunnel {
19
19
  url: string;
20
20
  process: import("bun").Subprocess;
21
21
  startedAt: number;
22
+ probeFailures: number;
22
23
  }
23
24
 
25
+ const MAX_PROBE_FAILURES = 2;
26
+
24
27
  /** Active tunnels keyed by port — exported for testing */
25
28
  export const activeTunnels = new Map<number, ActiveTunnel>();
26
29
 
30
+ /** Spawn cloudflared tunnel for a port, extract URL from stderr */
31
+ async function spawnTunnelProcess(port: number): Promise<{ process: import("bun").Subprocess; url: string }> {
32
+ const bin = await ensureCloudflared();
33
+ const proc = Bun.spawn(
34
+ [bin, "tunnel", "--url", `http://127.0.0.1:${port}`],
35
+ { stderr: "pipe", stdout: "ignore", stdin: "ignore" },
36
+ );
37
+
38
+ const reader = proc.stderr.getReader();
39
+ const decoder = new TextDecoder();
40
+ const url = await new Promise<string>((resolve, reject) => {
41
+ const timeout = setTimeout(() => {
42
+ try { proc.kill(); } catch {}
43
+ reject(new Error("Tunnel timed out after 30s"));
44
+ }, 30_000);
45
+
46
+ let buffer = "";
47
+ let found = false;
48
+ const read = async () => {
49
+ try {
50
+ while (true) {
51
+ const { done, value } = await reader.read();
52
+ if (done) break;
53
+ if (found) continue;
54
+ buffer += decoder.decode(value, { stream: true });
55
+ const match = buffer.match(TUNNEL_URL_REGEX);
56
+ if (match) {
57
+ found = true;
58
+ buffer = "";
59
+ clearTimeout(timeout);
60
+ resolve(match[0]);
61
+ }
62
+ }
63
+ if (!found) {
64
+ clearTimeout(timeout);
65
+ reject(new Error("cloudflared exited without tunnel URL"));
66
+ }
67
+ } catch (e) {
68
+ if (!found) { clearTimeout(timeout); reject(e); }
69
+ }
70
+ };
71
+ read();
72
+ });
73
+
74
+ return { process: proc, url };
75
+ }
76
+
77
+ /** Register tunnel in map with auto-cleanup on exit */
78
+ function registerTunnel(port: number, proc: import("bun").Subprocess, url: string) {
79
+ activeTunnels.set(port, { port, url, process: proc, startedAt: Date.now(), probeFailures: 0 });
80
+ proc.exited.then(() => activeTunnels.delete(port)).catch(() => activeTunnels.delete(port));
81
+ }
82
+
27
83
  /** Start a tunnel for a localhost port */
28
84
  portForwardingRoutes.post("/tunnel", async (c) => {
29
85
  const body = await c.req.json<{ port: number }>().catch(() => null);
@@ -39,54 +95,8 @@ portForwardingRoutes.post("/tunnel", async (c) => {
39
95
  }
40
96
 
41
97
  try {
42
- const bin = await ensureCloudflared();
43
- const proc = Bun.spawn(
44
- [bin, "tunnel", "--url", `http://127.0.0.1:${port}`],
45
- { stderr: "pipe", stdout: "ignore", stdin: "ignore" },
46
- );
47
-
48
- // Read stderr to find tunnel URL
49
- const reader = proc.stderr.getReader();
50
- const decoder = new TextDecoder();
51
- const url = await new Promise<string>((resolve, reject) => {
52
- const timeout = setTimeout(() => {
53
- try { proc.kill(); } catch {}
54
- reject(new Error("Tunnel timed out after 30s"));
55
- }, 30_000);
56
-
57
- let buffer = "";
58
- let found = false;
59
- const read = async () => {
60
- try {
61
- while (true) {
62
- const { done, value } = await reader.read();
63
- if (done) break;
64
- if (found) continue;
65
- buffer += decoder.decode(value, { stream: true });
66
- const match = buffer.match(TUNNEL_URL_REGEX);
67
- if (match) {
68
- found = true;
69
- buffer = "";
70
- clearTimeout(timeout);
71
- resolve(match[0]);
72
- }
73
- }
74
- if (!found) {
75
- clearTimeout(timeout);
76
- reject(new Error("cloudflared exited without tunnel URL"));
77
- }
78
- } catch (e) {
79
- if (!found) { clearTimeout(timeout); reject(e); }
80
- }
81
- };
82
- read();
83
- });
84
-
85
- activeTunnels.set(port, { port, url, process: proc, startedAt: Date.now() });
86
-
87
- // Auto-cleanup when process exits
88
- proc.exited.then(() => activeTunnels.delete(port)).catch(() => activeTunnels.delete(port));
89
-
98
+ const { process: proc, url } = await spawnTunnelProcess(port);
99
+ registerTunnel(port, proc, url);
90
100
  console.log(`[preview] tunnel started for port ${port} → ${url}`);
91
101
  return c.json(ok({ port, url }));
92
102
  } catch (e: any) {
@@ -123,27 +133,68 @@ function isProcessAlive(proc: import("bun").Subprocess): boolean {
123
133
  try { process.kill(proc.pid, 0); return true; } catch { return false; }
124
134
  }
125
135
 
126
- /** Remove ghost tunnels (process died or target port no longer listening) */
136
+ /** Probe tunnel URL to check if it's still accessible (DNS + connection) */
137
+ async function probeTunnelUrl(url: string): Promise<boolean> {
138
+ try {
139
+ await fetch(url, { method: "HEAD", signal: AbortSignal.timeout(8_000), redirect: "follow" });
140
+ return true;
141
+ } catch {
142
+ return false;
143
+ }
144
+ }
145
+
146
+ let cleanupRunning = false;
147
+
148
+ /** Remove ghost tunnels and auto-restart tunnels with expired URLs */
127
149
  async function cleanupGhostTunnels() {
128
- for (const [port, tunnel] of activeTunnels) {
129
- // Check if cloudflared process is still running
130
- if (!isProcessAlive(tunnel.process)) {
131
- console.log(`[preview] ghost cleanup: tunnel for port ${port} — process dead`);
132
- activeTunnels.delete(port);
133
- continue;
134
- }
135
- // Check if target port is still listening
136
- try {
137
- const conn = await Bun.connect({ hostname: "127.0.0.1", port, socket: {
138
- data() {}, open(s) { s.end(); }, error() {}, close() {},
139
- }});
140
- conn.end();
141
- } catch {
142
- // Port not listening — kill tunnel
143
- console.log(`[preview] ghost cleanup: tunnel for port ${port} — port not listening`);
144
- try { tunnel.process.kill(); } catch {}
145
- activeTunnels.delete(port);
150
+ if (cleanupRunning) return;
151
+ cleanupRunning = true;
152
+ try {
153
+ for (const [port, tunnel] of activeTunnels) {
154
+ // Check if cloudflared process is still running
155
+ if (!isProcessAlive(tunnel.process)) {
156
+ console.log(`[preview] ghost cleanup: port ${port} — process dead`);
157
+ activeTunnels.delete(port);
158
+ continue;
159
+ }
160
+ // Check if target port is still listening
161
+ try {
162
+ const conn = await Bun.connect({ hostname: "127.0.0.1", port, socket: {
163
+ data() {}, open(s) { s.end(); }, error() {}, close() {},
164
+ }});
165
+ conn.end();
166
+ } catch {
167
+ console.log(`[preview] ghost cleanup: port ${port} — port not listening`);
168
+ try { tunnel.process.kill(); } catch {}
169
+ activeTunnels.delete(port);
170
+ continue;
171
+ }
172
+
173
+ // Probe tunnel URL to detect expired Quick Tunnel URLs
174
+ const alive = await probeTunnelUrl(tunnel.url);
175
+ if (alive) {
176
+ tunnel.probeFailures = 0;
177
+ continue;
178
+ }
179
+
180
+ tunnel.probeFailures++;
181
+ console.log(`[preview] tunnel probe failed for port ${port} (${tunnel.probeFailures}/${MAX_PROBE_FAILURES})`);
182
+
183
+ if (tunnel.probeFailures >= MAX_PROBE_FAILURES) {
184
+ console.log(`[preview] tunnel URL expired for port ${port}, restarting...`);
185
+ try { tunnel.process.kill(); } catch {}
186
+ activeTunnels.delete(port);
187
+ try {
188
+ const { process: proc, url } = await spawnTunnelProcess(port);
189
+ registerTunnel(port, proc, url);
190
+ console.log(`[preview] tunnel restarted for port ${port} → ${url}`);
191
+ } catch (e: any) {
192
+ console.warn(`[preview] tunnel restart failed for port ${port}: ${e.message}`);
193
+ }
194
+ }
146
195
  }
196
+ } finally {
197
+ cleanupRunning = false;
147
198
  }
148
199
  }
149
200
 
@@ -1,6 +1,5 @@
1
1
  import { Hono } from "hono";
2
2
  import { resolve } from "node:path";
3
- import { homedir } from "node:os";
4
3
  import { readFileSync, existsSync } from "node:fs";
5
4
  import { VERSION } from "../../version.ts";
6
5
  import {
@@ -10,8 +9,7 @@ import {
10
9
  signalSupervisorUpgrade,
11
10
  } from "../../services/upgrade.service.ts";
12
11
  import { ok, err } from "../../types/api.ts";
13
-
14
- const STATUS_FILE = resolve(process.env.PPM_HOME || resolve(homedir(), ".ppm"), "status.json");
12
+ import { getPpmDir } from "../../services/ppm-dir.ts";
15
13
 
16
14
  export const upgradeRoutes = new Hono();
17
15
 
@@ -19,8 +17,8 @@ export const upgradeRoutes = new Hono();
19
17
  upgradeRoutes.get("/", (c) => {
20
18
  let availableVersion: string | null = null;
21
19
  try {
22
- if (existsSync(STATUS_FILE)) {
23
- const data = JSON.parse(readFileSync(STATUS_FILE, "utf-8"));
20
+ if (existsSync(resolve(getPpmDir(), "status.json"))) {
21
+ const data = JSON.parse(readFileSync(resolve(getPpmDir(), "status.json"), "utf-8"));
24
22
  const candidate = data.availableVersion ?? null;
25
23
  // Only report if actually newer than current version
26
24
  if (candidate && compareSemver(VERSION, candidate) < 0) {
@@ -582,6 +582,22 @@ export const chatWebSocket = {
582
582
  entry.permissionMode = parsed.permissionMode;
583
583
  }
584
584
 
585
+ // Intercept PPM-handled built-in commands (e.g. /skills, /version)
586
+ const content = parsed.content.trim();
587
+ const slashMatch = content.match(/^\/(\S+)/);
588
+ if (slashMatch) {
589
+ const { isPpmHandled, executeBuiltin } = await import("../../services/slash-discovery/index.ts");
590
+ const cmdName = slashMatch[1]!;
591
+ if (isPpmHandled(cmdName)) {
592
+ const response = executeBuiltin(cmdName, entry.projectPath ?? "");
593
+ if (response) {
594
+ broadcast(sessionId, { type: "text", content: response });
595
+ broadcast(sessionId, { type: "done", resultSubtype: "builtin", numTurns: 0 });
596
+ return;
597
+ }
598
+ }
599
+ }
600
+
585
601
  const provider = providerRegistry.get(providerId);
586
602
 
587
603
  if (!entry.isStreamingActive) {
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { appendFileSync } from "node:fs";
6
6
  import { resolve } from "node:path";
7
- import { homedir } from "node:os";
7
+ import { getPpmDir } from "./ppm-dir.ts";
8
8
 
9
9
  // ─── Types (must match Cloud's ws-types.ts) ─────────
10
10
  interface WsMessage {
@@ -237,6 +237,6 @@ function scheduleReconnect(source = "unknown"): void {
237
237
 
238
238
  function log(level: string, msg: string): void {
239
239
  const ts = new Date().toISOString();
240
- const logFile = resolve(process.env.PPM_HOME || resolve(homedir(), ".ppm"), "ppm.log");
240
+ const logFile = resolve(getPpmDir(), "ppm.log");
241
241
  try { appendFileSync(logFile, `[${ts}] [${level}] [cloud-ws] ${msg}\n`); } catch {}
242
242
  }