thanh-kit 2.5.0 → 2.5.1

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 (766) hide show
  1. package/package.json +1 -1
  2. package/templates/.ck.json +60 -0
  3. package/templates/.ckignore +27 -0
  4. package/templates/.mcp.json.example +23 -0
  5. package/templates/agents/brainstormer.md +18 -2
  6. package/templates/agents/code-reviewer.md +122 -142
  7. package/templates/agents/code-simplifier.md +50 -100
  8. package/templates/agents/debugger.md +27 -11
  9. package/templates/agents/docs-manager.md +100 -38
  10. package/templates/agents/fullstack-developer.md +15 -3
  11. package/templates/agents/git-manager.md +11 -386
  12. package/templates/agents/journal-writer.md +13 -8
  13. package/templates/agents/mcp-manager.md +21 -6
  14. package/templates/agents/planner.md +24 -8
  15. package/templates/agents/project-manager.md +17 -121
  16. package/templates/agents/researcher.md +22 -7
  17. package/templates/agents/tester.md +23 -7
  18. package/templates/agents/ui-ux-designer.md +23 -14
  19. package/templates/hooks/__tests__/ck-config-utils.test.cjs +557 -0
  20. package/templates/hooks/__tests__/descriptive-name.test.cjs +292 -0
  21. package/templates/hooks/__tests__/dev-rules-reminder.test.cjs +336 -0
  22. package/templates/hooks/__tests__/integration/path-resolution.test.cjs +319 -0
  23. package/templates/hooks/__tests__/privacy-block.test.cjs +273 -0
  24. package/templates/hooks/__tests__/session-init.test.cjs +308 -0
  25. package/templates/hooks/__tests__/skill-dedup.test.cjs +527 -0
  26. package/templates/hooks/__tests__/subagent-init.test.cjs +622 -0
  27. package/templates/hooks/__tests__/task-completed-handler.test.cjs +246 -0
  28. package/templates/hooks/__tests__/team-context-inject.test.cjs +804 -0
  29. package/templates/hooks/__tests__/teammate-idle-handler.test.cjs +254 -0
  30. package/templates/hooks/cook-after-plan-reminder.cjs +72 -0
  31. package/templates/hooks/descriptive-name.cjs +47 -0
  32. package/templates/hooks/dev-rules-reminder.cjs +37 -214
  33. package/templates/hooks/lib/__tests__/README.md +240 -0
  34. package/templates/hooks/lib/__tests__/ck-config-utils.test.cjs +613 -1
  35. package/templates/hooks/lib/__tests__/context-builder.test.cjs +468 -0
  36. package/templates/hooks/lib/__tests__/project-detector.test.cjs +754 -0
  37. package/templates/hooks/lib/__tests__/statusline-integration.test.cjs +678 -0
  38. package/templates/hooks/lib/__tests__/statusline.test.cjs +689 -0
  39. package/templates/hooks/lib/ck-config-utils.cjs +146 -21
  40. package/templates/hooks/lib/colors.cjs +95 -0
  41. package/templates/hooks/lib/config-counter.cjs +103 -0
  42. package/templates/hooks/lib/context-builder.cjs +616 -0
  43. package/templates/hooks/lib/git-info-cache.cjs +143 -0
  44. package/templates/hooks/lib/hook-logger.cjs +92 -0
  45. package/templates/hooks/lib/privacy-checker.cjs +297 -0
  46. package/templates/hooks/lib/project-detector.cjs +474 -0
  47. package/templates/hooks/lib/scout-checker.cjs +263 -0
  48. package/templates/hooks/lib/transcript-parser.cjs +181 -0
  49. package/templates/hooks/notifications/discord_notify.sh +17 -4
  50. package/templates/hooks/notifications/docs/discord-hook-setup.md +26 -10
  51. package/templates/hooks/notifications/docs/telegram-hook-setup.md +24 -6
  52. package/templates/hooks/notifications/notify.cjs +0 -0
  53. package/templates/hooks/notifications/send-discord.sh +0 -0
  54. package/templates/hooks/notifications/telegram_notify.sh +17 -4
  55. package/templates/hooks/post-edit-simplify-reminder.cjs +156 -0
  56. package/templates/hooks/privacy-block.cjs +97 -188
  57. package/templates/hooks/scout-block/broad-pattern-detector.cjs +4 -6
  58. package/templates/hooks/scout-block/error-formatter.cjs +0 -0
  59. package/templates/hooks/scout-block/path-extractor.cjs +102 -13
  60. package/templates/hooks/scout-block/pattern-matcher.cjs +16 -1
  61. package/templates/hooks/scout-block/tests/{test-broad-pattern-detector.js → test-broad-pattern-detector.cjs} +1 -61
  62. package/templates/hooks/scout-block/tests/{test-build-command-allowlist.js → test-build-command-allowlist.cjs} +1 -1
  63. package/templates/hooks/scout-block/tests/{test-error-formatter.js → test-error-formatter.cjs} +1 -1
  64. package/templates/hooks/scout-block/tests/{test-full-flow-edge-cases.js → test-full-flow-edge-cases.cjs} +1 -1
  65. package/templates/hooks/scout-block/tests/{test-monorepo-scenarios.js → test-monorepo-scenarios.cjs} +1 -1
  66. package/templates/hooks/scout-block/tests/{test-path-extractor.js → test-path-extractor.cjs} +1 -1
  67. package/templates/hooks/scout-block/tests/{test-pattern-matcher.js → test-pattern-matcher.cjs} +1 -1
  68. package/templates/hooks/scout-block.cjs +100 -87
  69. package/templates/hooks/session-init.cjs +197 -330
  70. package/templates/hooks/skill-dedup.cjs +268 -0
  71. package/templates/hooks/subagent-init.cjs +75 -22
  72. package/templates/hooks/task-completed-handler.cjs +118 -0
  73. package/templates/hooks/team-context-inject.cjs +176 -0
  74. package/templates/hooks/teammate-idle-handler.cjs +121 -0
  75. package/templates/hooks/tests/scout-block/broad-pattern-detector.test.cjs +231 -0
  76. package/templates/hooks/tests/scout-block/fixtures/ckignore-custom.txt +6 -0
  77. package/templates/hooks/tests/scout-block/fixtures/ckignore-default.txt +13 -0
  78. package/templates/hooks/tests/scout-block/fixtures/ckignore-negation.txt +8 -0
  79. package/templates/hooks/tests/scout-block/path-extractor.test.cjs +527 -0
  80. package/templates/hooks/tests/scout-block/pattern-matcher.test.cjs +293 -0
  81. package/templates/hooks/tests/scout-block/scout-checker.test.cjs +741 -0
  82. package/templates/hooks/tests/{test-ckignore.js → test-ckignore.cjs} +0 -0
  83. package/templates/hooks/tests/{test-modularization-hook.js → test-modularization-hook.cjs} +0 -0
  84. package/templates/hooks/tests/{test-privacy-block.js → test-privacy-block.cjs} +1 -1
  85. package/templates/hooks/tests/test-scout-block.cjs +315 -0
  86. package/templates/hooks/usage-context-awareness.cjs +179 -0
  87. package/templates/metadata.json +104 -0
  88. package/templates/scripts/README.md +94 -198
  89. package/templates/scripts/ck-help.py +19 -855
  90. package/templates/scripts/commands_data.yaml +3 -621
  91. package/templates/scripts/fix-shebang-permissions.sh +50 -0
  92. package/templates/scripts/generate_catalogs.py +37 -8
  93. package/templates/scripts/resolve_env.py +0 -0
  94. package/templates/scripts/scan_commands.py +14 -96
  95. package/templates/scripts/scan_skills.py +59 -19
  96. package/templates/scripts/set-active-plan.cjs +8 -3
  97. package/templates/scripts/skills_data.yaml +2 -596
  98. package/templates/scripts/test-ck-help.py +15 -0
  99. package/templates/scripts/test_ck_help.py +139 -0
  100. package/templates/scripts/test_ck_help_integration.py +72 -0
  101. package/templates/scripts/validate-docs.cjs +342 -0
  102. package/templates/scripts/win_compat.py +0 -0
  103. package/templates/scripts/worktree.cjs +4 -652
  104. package/templates/scripts/worktree.test.cjs +5 -330
  105. package/templates/settings.json +104 -239
  106. package/templates/skills/README.md +95 -255
  107. package/templates/skills/THIRD_PARTY_NOTICES.md +405 -0
  108. package/templates/skills/agent-browser/SKILL.md +294 -0
  109. package/templates/skills/agent-browser/references/.gitkeep +0 -0
  110. package/templates/skills/agent-browser/references/agent-browser-vs-chrome-devtools.md +112 -0
  111. package/templates/skills/agent-browser/references/browserbase-cloud-setup.md +161 -0
  112. package/templates/skills/ai-artist/SKILL.md +103 -56
  113. package/templates/skills/ai-artist/data/awesome-prompts.csv +3592 -0
  114. package/templates/skills/ai-artist/data/lighting.csv +19 -0
  115. package/templates/skills/ai-artist/data/nano-banana-templates.csv +17 -0
  116. package/templates/skills/ai-artist/data/platforms.csv +11 -0
  117. package/templates/skills/ai-artist/data/styles.csv +26 -0
  118. package/templates/skills/ai-artist/data/techniques.csv +19 -0
  119. package/templates/skills/ai-artist/data/use-cases.csv +16 -0
  120. package/templates/skills/ai-artist/references/awesome-nano-banana-pro-prompts.md +8575 -0
  121. package/templates/skills/ai-artist/references/nano-banana.md +78 -1
  122. package/templates/skills/ai-artist/references/validation-workflow.md +117 -0
  123. package/templates/skills/ai-artist/scripts/core.py +197 -0
  124. package/templates/skills/ai-artist/scripts/extract_prompts.py +102 -0
  125. package/templates/skills/ai-artist/scripts/generate.py +370 -0
  126. package/templates/skills/ai-artist/scripts/search.py +147 -0
  127. package/templates/skills/ai-multimodal/SKILL.md +4 -3
  128. package/templates/skills/ai-multimodal/scripts/check_setup.py +12 -2
  129. package/templates/skills/ai-multimodal/scripts/document_converter.py +0 -0
  130. package/templates/skills/ai-multimodal/scripts/gemini_batch_process.py +3 -2
  131. package/templates/skills/ai-multimodal/scripts/media_optimizer.py +0 -0
  132. package/templates/skills/ask/SKILL.md +58 -0
  133. package/templates/skills/backend-development/SKILL.md +3 -2
  134. package/templates/skills/better-auth/SKILL.md +3 -2
  135. package/templates/skills/better-auth/scripts/better_auth_init.py +3 -3
  136. package/templates/skills/bootstrap/SKILL.md +101 -0
  137. package/templates/skills/bootstrap/references/shared-phases.md +59 -0
  138. package/templates/skills/bootstrap/references/workflow-auto.md +52 -0
  139. package/templates/skills/bootstrap/references/workflow-fast.md +50 -0
  140. package/templates/skills/bootstrap/references/workflow-full.md +60 -0
  141. package/templates/skills/bootstrap/references/workflow-parallel.md +59 -0
  142. package/templates/skills/brainstorm/SKILL.md +77 -0
  143. package/templates/skills/chrome-devtools/SKILL.md +221 -68
  144. package/templates/skills/chrome-devtools/scripts/README.md +18 -0
  145. package/templates/skills/chrome-devtools/scripts/__tests__/error-handling.test.js +102 -0
  146. package/templates/skills/chrome-devtools/scripts/aria-snapshot.js +2 -1
  147. package/templates/skills/chrome-devtools/scripts/click.js +2 -1
  148. package/templates/skills/chrome-devtools/scripts/connect-chrome.js +146 -0
  149. package/templates/skills/chrome-devtools/scripts/console.js +3 -1
  150. package/templates/skills/chrome-devtools/scripts/evaluate.js +6 -3
  151. package/templates/skills/chrome-devtools/scripts/fill.js +2 -1
  152. package/templates/skills/chrome-devtools/scripts/import-cookies.js +205 -0
  153. package/templates/skills/chrome-devtools/scripts/inject-auth.js +2 -1
  154. package/templates/skills/chrome-devtools/scripts/install-deps.sh +0 -0
  155. package/templates/skills/chrome-devtools/scripts/install.sh +0 -0
  156. package/templates/skills/chrome-devtools/scripts/lib/browser.js +60 -4
  157. package/templates/skills/chrome-devtools/scripts/navigate.js +86 -2
  158. package/templates/skills/chrome-devtools/scripts/network.js +3 -1
  159. package/templates/skills/chrome-devtools/scripts/performance.js +3 -1
  160. package/templates/skills/chrome-devtools/scripts/screenshot.js +2 -1
  161. package/templates/skills/chrome-devtools/scripts/select-ref.js +2 -1
  162. package/templates/skills/chrome-devtools/scripts/snapshot.js +2 -1
  163. package/templates/skills/chrome-devtools/scripts/ws-debug.js +44 -0
  164. package/templates/skills/chrome-devtools/scripts/ws-full-debug.js +107 -0
  165. package/templates/skills/ck-help/SKILL.md +102 -0
  166. package/templates/skills/ck-help/scripts/ck-help.py +1321 -0
  167. package/templates/skills/ck-help/scripts/commands_data.yaml +3 -0
  168. package/templates/skills/ck-help/scripts/skills_data.yaml +593 -0
  169. package/templates/skills/code-review/SKILL.md +97 -93
  170. package/templates/skills/code-review/references/code-review-reception.md +113 -209
  171. package/templates/skills/code-review/references/codebase-scan-workflow.md +29 -0
  172. package/templates/skills/code-review/references/edge-case-scouting.md +119 -0
  173. package/templates/skills/code-review/references/parallel-review-workflow.md +69 -0
  174. package/templates/skills/code-review/references/requesting-code-review.md +115 -104
  175. package/templates/skills/code-review/references/task-management-reviews.md +140 -0
  176. package/templates/skills/code-review/references/verification-before-completion.md +138 -138
  177. package/templates/skills/coding-level/SKILL.md +56 -0
  178. package/templates/skills/common/README.md +120 -0
  179. package/templates/skills/common/api_key_helper.py +411 -0
  180. package/templates/skills/common/api_key_rotator.py +248 -0
  181. package/templates/skills/context-engineering/SKILL.md +108 -0
  182. package/templates/skills/context-engineering/references/context-compression.md +84 -0
  183. package/templates/skills/context-engineering/references/context-degradation.md +93 -0
  184. package/templates/skills/context-engineering/references/context-fundamentals.md +75 -0
  185. package/templates/skills/context-engineering/references/context-optimization.md +82 -0
  186. package/templates/skills/context-engineering/references/evaluation.md +89 -0
  187. package/templates/skills/context-engineering/references/memory-systems.md +88 -0
  188. package/templates/skills/context-engineering/references/multi-agent-patterns.md +90 -0
  189. package/templates/skills/context-engineering/references/project-development.md +97 -0
  190. package/templates/skills/context-engineering/references/runtime-awareness.md +202 -0
  191. package/templates/skills/context-engineering/references/tool-design.md +86 -0
  192. package/templates/skills/context-engineering/scripts/compression_evaluator.py +349 -0
  193. package/templates/skills/context-engineering/scripts/context_analyzer.py +317 -0
  194. package/templates/skills/context-engineering/scripts/tests/test_edge_cases.py +246 -0
  195. package/templates/skills/cook/README.md +86 -0
  196. package/templates/skills/cook/SKILL.md +113 -0
  197. package/templates/skills/cook/references/intent-detection.md +101 -0
  198. package/templates/skills/cook/references/review-cycle.md +75 -0
  199. package/templates/skills/cook/references/subagent-patterns.md +75 -0
  200. package/templates/skills/cook/references/workflow-steps.md +172 -0
  201. package/templates/skills/copywriting/SKILL.md +94 -0
  202. package/templates/skills/copywriting/references/copy-formulas.md +150 -0
  203. package/templates/skills/copywriting/references/cta-patterns.md +168 -0
  204. package/templates/skills/copywriting/references/email-copy.md +193 -0
  205. package/templates/skills/copywriting/references/headline-templates.md +140 -0
  206. package/templates/skills/copywriting/references/landing-page-copy.md +175 -0
  207. package/templates/skills/copywriting/references/power-words.md +189 -0
  208. package/templates/skills/copywriting/references/social-media-copy.md +222 -0
  209. package/templates/skills/copywriting/references/workflow-cro.md +83 -0
  210. package/templates/skills/copywriting/references/workflow-enhance.md +32 -0
  211. package/templates/skills/copywriting/references/workflow-fast.md +29 -0
  212. package/templates/skills/copywriting/references/workflow-good.md +39 -0
  213. package/templates/skills/copywriting/references/writing-styles.md +247 -0
  214. package/templates/skills/copywriting/scripts/extract-writing-styles.py +308 -0
  215. package/templates/skills/copywriting/templates/copy-brief.md +49 -0
  216. package/templates/skills/databases/SKILL.md +7 -155
  217. package/templates/skills/databases/analytics.md +198 -0
  218. package/templates/skills/databases/db-design.md +188 -0
  219. package/templates/skills/databases/incremental-etl.md +213 -0
  220. package/templates/skills/databases/scripts/db_backup.py +0 -0
  221. package/templates/skills/databases/scripts/db_migrate.py +3 -2
  222. package/templates/skills/databases/scripts/db_performance_check.py +3 -2
  223. package/templates/skills/databases/stacks/bigquery.md +231 -0
  224. package/templates/skills/databases/stacks/d1_cloudflare.md +137 -0
  225. package/templates/skills/databases/stacks/mysql.md +216 -0
  226. package/templates/skills/databases/stacks/postgres.md +235 -0
  227. package/templates/skills/databases/stacks/sqlite.md +244 -0
  228. package/templates/skills/databases/transactional.md +176 -0
  229. package/templates/skills/debug/SKILL.md +121 -0
  230. package/templates/skills/debug/references/frontend-verification.md +103 -0
  231. package/templates/skills/debug/references/investigation-methodology.md +101 -0
  232. package/templates/skills/debug/references/log-and-ci-analysis.md +97 -0
  233. package/templates/skills/debug/references/performance-diagnostics.md +113 -0
  234. package/templates/skills/debug/references/reporting-standards.md +122 -0
  235. package/templates/skills/debug/references/task-management-debugging.md +155 -0
  236. package/templates/skills/devops/SKILL.md +65 -253
  237. package/templates/skills/devops/references/kubernetes-basics.md +99 -0
  238. package/templates/skills/devops/references/kubernetes-helm-advanced.md +75 -0
  239. package/templates/skills/devops/references/kubernetes-helm.md +81 -0
  240. package/templates/skills/devops/references/kubernetes-kubectl.md +74 -0
  241. package/templates/skills/devops/references/kubernetes-security-advanced.md +98 -0
  242. package/templates/skills/devops/references/kubernetes-security.md +95 -0
  243. package/templates/skills/devops/references/kubernetes-troubleshooting-advanced.md +74 -0
  244. package/templates/skills/devops/references/kubernetes-troubleshooting.md +49 -0
  245. package/templates/skills/devops/references/kubernetes-workflows-advanced.md +75 -0
  246. package/templates/skills/devops/references/kubernetes-workflows.md +78 -0
  247. package/templates/skills/devops/scripts/cloudflare_deploy.py +0 -0
  248. package/templates/skills/devops/scripts/docker_optimize.py +3 -2
  249. package/templates/skills/docs/SKILL.md +55 -0
  250. package/templates/skills/docs/references/init-workflow.md +32 -0
  251. package/templates/skills/docs/references/summarize-workflow.md +18 -0
  252. package/templates/skills/docs/references/update-workflow.md +59 -0
  253. package/templates/skills/docs-seeker/SKILL.md +3 -2
  254. package/templates/skills/docs-seeker/scripts/analyze-llms-txt.js +0 -0
  255. package/templates/skills/docs-seeker/scripts/detect-topic.js +0 -0
  256. package/templates/skills/docs-seeker/scripts/fetch-docs.js +0 -0
  257. package/templates/skills/docs-seeker/scripts/tests/run-tests.js +0 -0
  258. package/templates/skills/docs-seeker/scripts/tests/test-analyze-llms.js +0 -0
  259. package/templates/skills/docs-seeker/scripts/tests/test-detect-topic.js +0 -0
  260. package/templates/skills/docs-seeker/scripts/tests/test-fetch-docs.js +0 -0
  261. package/templates/skills/docs-seeker/scripts/utils/env-loader.js +0 -0
  262. package/templates/skills/document-skills/docx/SKILL.md +2 -2
  263. package/templates/skills/document-skills/docx/ooxml/scripts/pack.py +0 -0
  264. package/templates/skills/document-skills/docx/ooxml/scripts/unpack.py +0 -0
  265. package/templates/skills/document-skills/docx/ooxml/scripts/validate.py +0 -0
  266. package/templates/skills/document-skills/docx/scripts/document.py +0 -0
  267. package/templates/skills/document-skills/docx/scripts/utilities.py +0 -0
  268. package/templates/skills/document-skills/pdf/SKILL.md +2 -2
  269. package/templates/skills/document-skills/pptx/SKILL.md +2 -2
  270. package/templates/skills/document-skills/pptx/ooxml/scripts/pack.py +0 -0
  271. package/templates/skills/document-skills/pptx/ooxml/scripts/unpack.py +0 -0
  272. package/templates/skills/document-skills/pptx/ooxml/scripts/validate.py +0 -0
  273. package/templates/skills/document-skills/pptx/scripts/inventory.py +0 -0
  274. package/templates/skills/document-skills/pptx/scripts/rearrange.py +0 -0
  275. package/templates/skills/document-skills/pptx/scripts/replace.py +0 -0
  276. package/templates/skills/document-skills/pptx/scripts/thumbnail.py +0 -0
  277. package/templates/skills/document-skills/xlsx/SKILL.md +2 -2
  278. package/templates/skills/document-skills/xlsx/recalc.py +3 -2
  279. package/templates/skills/find-skills/SKILL.md +134 -0
  280. package/templates/skills/fix/SKILL.md +111 -0
  281. package/templates/skills/fix/references/complexity-assessment.md +72 -0
  282. package/templates/skills/fix/references/mode-selection.md +46 -0
  283. package/templates/skills/fix/references/parallel-exploration.md +100 -0
  284. package/templates/skills/fix/references/review-cycle.md +77 -0
  285. package/templates/skills/fix/references/skill-activation-matrix.md +78 -0
  286. package/templates/skills/fix/references/task-orchestration.md +103 -0
  287. package/templates/skills/fix/references/workflow-ci.md +28 -0
  288. package/templates/skills/fix/references/workflow-deep.md +122 -0
  289. package/templates/skills/fix/references/workflow-logs.md +72 -0
  290. package/templates/skills/fix/references/workflow-quick.md +59 -0
  291. package/templates/skills/fix/references/workflow-standard.md +111 -0
  292. package/templates/skills/fix/references/workflow-test.md +75 -0
  293. package/templates/skills/fix/references/workflow-types.md +33 -0
  294. package/templates/skills/fix/references/workflow-ui.md +75 -0
  295. package/templates/skills/frontend-design/SKILL.md +78 -91
  296. package/templates/skills/frontend-design/references/ai-multimodal-overview.md +6 -6
  297. package/templates/skills/frontend-design/references/animejs.md +395 -395
  298. package/templates/skills/frontend-design/references/asset-generation.md +4 -4
  299. package/templates/skills/frontend-design/references/visual-analysis-overview.md +1 -1
  300. package/templates/skills/frontend-design/references/workflow-3d.md +102 -0
  301. package/templates/skills/frontend-design/references/workflow-describe.md +87 -0
  302. package/templates/skills/frontend-design/references/workflow-immersive.md +87 -0
  303. package/templates/skills/frontend-design/references/workflow-quick.md +57 -0
  304. package/templates/skills/frontend-design/references/workflow-screenshot.md +63 -0
  305. package/templates/skills/frontend-design/references/workflow-video.md +74 -0
  306. package/templates/skills/frontend-development/SKILL.md +4 -3
  307. package/templates/skills/git/SKILL.md +114 -0
  308. package/templates/skills/git/references/branch-management.md +88 -0
  309. package/templates/skills/git/references/commit-standards.md +46 -0
  310. package/templates/skills/git/references/gh-cli-guide.md +109 -0
  311. package/templates/skills/git/references/safety-protocols.md +69 -0
  312. package/templates/skills/git/references/workflow-commit.md +58 -0
  313. package/templates/skills/git/references/workflow-merge.md +48 -0
  314. package/templates/skills/git/references/workflow-pr.md +58 -0
  315. package/templates/skills/git/references/workflow-push.md +52 -0
  316. package/templates/skills/gkg/SKILL.md +91 -0
  317. package/templates/skills/gkg/references/cli-commands.md +106 -0
  318. package/templates/skills/gkg/references/http-api.md +102 -0
  319. package/templates/skills/gkg/references/language-support.md +57 -0
  320. package/templates/skills/gkg/references/mcp-tools.md +99 -0
  321. package/templates/skills/google-adk-python/SKILL.md +91 -195
  322. package/templates/skills/google-adk-python/references/agent-types-and-architecture.md +128 -0
  323. package/templates/skills/google-adk-python/references/callbacks-plugins-observability.md +117 -0
  324. package/templates/skills/google-adk-python/references/deployment-cloud-run-vertex-gke.md +138 -0
  325. package/templates/skills/google-adk-python/references/evaluation-testing-cli.md +112 -0
  326. package/templates/skills/google-adk-python/references/multi-agent-and-a2a-protocol.md +145 -0
  327. package/templates/skills/google-adk-python/references/sessions-state-memory-artifacts.md +131 -0
  328. package/templates/skills/google-adk-python/references/tools-and-mcp-integration.md +146 -0
  329. package/templates/skills/install.ps1 +130 -26
  330. package/templates/skills/install.sh +383 -63
  331. package/templates/skills/journal/SKILL.md +11 -0
  332. package/templates/skills/kanban/SKILL.md +99 -0
  333. package/templates/skills/markdown-novel-viewer/SKILL.md +314 -0
  334. package/templates/skills/markdown-novel-viewer/assets/directory-browser.css +215 -0
  335. package/templates/skills/markdown-novel-viewer/assets/favicon.png +0 -0
  336. package/templates/skills/markdown-novel-viewer/assets/novel-theme.css +16 -0
  337. package/templates/skills/markdown-novel-viewer/assets/reader.js +838 -0
  338. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-base.css +54 -0
  339. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-components.css +180 -0
  340. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-content.css +176 -0
  341. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-header.css +217 -0
  342. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-mermaid.css +153 -0
  343. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-overlays.css +202 -0
  344. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-responsive.css +285 -0
  345. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-sidebar.css +359 -0
  346. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-variables.css +56 -0
  347. package/templates/skills/markdown-novel-viewer/assets/template.html +149 -0
  348. package/templates/skills/markdown-novel-viewer/bun.lock +38 -0
  349. package/templates/skills/markdown-novel-viewer/package.json +15 -0
  350. package/templates/skills/markdown-novel-viewer/scripts/lib/http-server.cjs +434 -0
  351. package/templates/skills/markdown-novel-viewer/scripts/lib/markdown-renderer.cjs +335 -0
  352. package/templates/skills/markdown-novel-viewer/scripts/lib/plan-navigator.cjs +571 -0
  353. package/templates/skills/markdown-novel-viewer/scripts/lib/port-finder.cjs +48 -0
  354. package/templates/skills/markdown-novel-viewer/scripts/lib/process-mgr.cjs +150 -0
  355. package/templates/skills/markdown-novel-viewer/scripts/server.cjs +411 -0
  356. package/templates/skills/markdown-novel-viewer/scripts/tests/server.test.cjs +283 -0
  357. package/templates/skills/markdown-novel-viewer/tests/dashboard-assets.test.cjs +340 -0
  358. package/templates/skills/markdown-novel-viewer/tests/dashboard-renderer.test.cjs +404 -0
  359. package/templates/skills/markdown-novel-viewer/tests/http-server.test.cjs +271 -0
  360. package/templates/skills/markdown-novel-viewer/tests/run-tests.cjs +51 -0
  361. package/templates/skills/markdown-novel-viewer/tests/test-framework.cjs +154 -0
  362. package/templates/skills/markdown-novel-viewer/tests/verify-xss.cjs +90 -0
  363. package/templates/skills/mcp-builder/SKILL.md +3 -2
  364. package/templates/skills/mcp-builder/scripts/evaluation.py +9 -1
  365. package/templates/skills/mcp-management/SKILL.md +8 -7
  366. package/templates/skills/mcp-management/references/gemini-cli-integration.md +16 -10
  367. package/templates/skills/mcp-management/scripts/cli.ts +0 -0
  368. package/templates/skills/mcp-management/scripts/dist/analyze-tools.js +0 -0
  369. package/templates/skills/mcp-management/scripts/dist/cli.js +0 -0
  370. package/templates/skills/mcp-management/scripts/dist/mcp-client.js +0 -0
  371. package/templates/skills/mcp-management/scripts/mcp-client.ts +0 -0
  372. package/templates/skills/media-processing/SKILL.md +3 -2
  373. package/templates/skills/media-processing/scripts/batch-remove-background.sh +0 -0
  374. package/templates/skills/media-processing/scripts/batch_resize.py +0 -0
  375. package/templates/skills/media-processing/scripts/media_convert.py +0 -0
  376. package/templates/skills/media-processing/scripts/remove-background.sh +0 -0
  377. package/templates/skills/media-processing/scripts/remove-bg-node.js +0 -0
  378. package/templates/skills/media-processing/scripts/tests/test_batch_resize.py +0 -0
  379. package/templates/skills/media-processing/scripts/tests/test_media_convert.py +0 -0
  380. package/templates/skills/media-processing/scripts/tests/test_video_optimize.py +0 -0
  381. package/templates/skills/media-processing/scripts/video_optimize.py +0 -0
  382. package/templates/skills/mermaidjs-v11/SKILL.md +116 -0
  383. package/templates/skills/mermaidjs-v11/references/cli-usage.md +228 -0
  384. package/templates/skills/mermaidjs-v11/references/configuration.md +232 -0
  385. package/templates/skills/mermaidjs-v11/references/diagram-types.md +315 -0
  386. package/templates/skills/mermaidjs-v11/references/examples.md +344 -0
  387. package/templates/skills/mermaidjs-v11/references/integration.md +310 -0
  388. package/templates/skills/mintlify/SKILL.md +121 -0
  389. package/templates/skills/mintlify/references/ai-features-and-integrations-reference.md +756 -0
  390. package/templates/skills/mintlify/references/api-documentation-components-reference.md +873 -0
  391. package/templates/skills/mintlify/references/deployment-and-continuous-integration-reference.md +674 -0
  392. package/templates/skills/mintlify/references/docs-json-configuration-reference.md +724 -0
  393. package/templates/skills/mintlify/references/mdx-components-reference.md +551 -0
  394. package/templates/skills/mintlify/references/navigation-structure-and-organization-reference.md +775 -0
  395. package/templates/skills/mobile-development/SKILL.md +3 -2
  396. package/templates/skills/payment-integration/README.md +44 -12
  397. package/templates/skills/payment-integration/SKILL.md +82 -97
  398. package/templates/skills/payment-integration/references/creem/api.md +139 -0
  399. package/templates/skills/payment-integration/references/creem/checkouts.md +99 -0
  400. package/templates/skills/payment-integration/references/creem/licensing.md +136 -0
  401. package/templates/skills/payment-integration/references/creem/overview.md +65 -0
  402. package/templates/skills/payment-integration/references/creem/sdk.md +161 -0
  403. package/templates/skills/payment-integration/references/creem/subscriptions.md +129 -0
  404. package/templates/skills/payment-integration/references/creem/webhooks.md +120 -0
  405. package/templates/skills/payment-integration/references/implementation-workflows.md +43 -0
  406. package/templates/skills/payment-integration/references/multi-provider-order-management-patterns.md +821 -0
  407. package/templates/skills/payment-integration/references/paddle/api.md +116 -0
  408. package/templates/skills/payment-integration/references/paddle/best-practices.md +130 -0
  409. package/templates/skills/payment-integration/references/paddle/overview.md +57 -0
  410. package/templates/skills/payment-integration/references/paddle/paddle-js.md +106 -0
  411. package/templates/skills/payment-integration/references/paddle/sdk.md +131 -0
  412. package/templates/skills/payment-integration/references/paddle/subscriptions.md +118 -0
  413. package/templates/skills/payment-integration/references/paddle/webhooks.md +112 -0
  414. package/templates/skills/payment-integration/references/polar/best-practices.md +781 -361
  415. package/templates/skills/payment-integration/references/sepay/best-practices.md +870 -268
  416. package/templates/skills/payment-integration/references/stripe/stripe-best-practices.md +32 -0
  417. package/templates/skills/payment-integration/references/stripe/stripe-cli.md +148 -0
  418. package/templates/skills/payment-integration/references/stripe/stripe-js.md +116 -0
  419. package/templates/skills/payment-integration/references/stripe/stripe-sdks.md +84 -0
  420. package/templates/skills/payment-integration/references/stripe/stripe-upgrade.md +175 -0
  421. package/templates/skills/payment-integration/scripts/checkout-helper.js +0 -0
  422. package/templates/skills/payment-integration/scripts/polar-webhook-verify.js +0 -0
  423. package/templates/skills/payment-integration/scripts/sepay-webhook-verify.js +0 -0
  424. package/templates/skills/payment-integration/scripts/test-scripts.js +0 -0
  425. package/templates/skills/plan/SKILL.md +137 -0
  426. package/templates/skills/plan/references/archive-workflow.md +53 -0
  427. package/templates/skills/{planning → plan}/references/codebase-understanding.md +1 -1
  428. package/templates/skills/{planning → plan}/references/output-standards.md +15 -1
  429. package/templates/skills/{planning → plan}/references/plan-organization.md +12 -19
  430. package/templates/skills/plan/references/red-team-personas.md +69 -0
  431. package/templates/skills/plan/references/red-team-workflow.md +77 -0
  432. package/templates/skills/{planning → plan}/references/research-phase.md +2 -2
  433. package/templates/skills/plan/references/task-management.md +132 -0
  434. package/templates/skills/plan/references/validate-question-framework.md +80 -0
  435. package/templates/skills/plan/references/validate-workflow.md +65 -0
  436. package/templates/skills/plan/references/workflow-modes.md +145 -0
  437. package/templates/skills/plans-kanban/SKILL.md +167 -0
  438. package/templates/skills/plans-kanban/assets/dashboard-template.html +119 -0
  439. package/templates/skills/plans-kanban/assets/dashboard.css +1594 -0
  440. package/templates/skills/plans-kanban/assets/dashboard.js +596 -0
  441. package/templates/skills/plans-kanban/assets/favicon.png +0 -0
  442. package/templates/skills/plans-kanban/package.json +13 -0
  443. package/templates/skills/plans-kanban/scripts/lib/dashboard-renderer.cjs +884 -0
  444. package/templates/skills/plans-kanban/scripts/lib/http-server.cjs +310 -0
  445. package/templates/skills/plans-kanban/scripts/lib/plan-metadata-extractor.cjs +489 -0
  446. package/templates/skills/plans-kanban/scripts/lib/plan-parser.cjs +175 -0
  447. package/templates/skills/plans-kanban/scripts/lib/plan-scanner.cjs +272 -0
  448. package/templates/skills/plans-kanban/scripts/lib/port-finder.cjs +48 -0
  449. package/templates/skills/plans-kanban/scripts/lib/process-mgr.cjs +128 -0
  450. package/templates/skills/plans-kanban/scripts/server.cjs +260 -0
  451. package/templates/skills/preview/SKILL.md +75 -0
  452. package/templates/skills/preview/references/generation-modes.md +95 -0
  453. package/templates/skills/preview/references/view-mode.md +42 -0
  454. package/templates/skills/problem-solving/SKILL.md +3 -2
  455. package/templates/skills/project-management/SKILL.md +122 -0
  456. package/templates/skills/project-management/references/documentation-triggers.md +60 -0
  457. package/templates/skills/project-management/references/hydration-workflow.md +85 -0
  458. package/templates/skills/project-management/references/progress-tracking.md +96 -0
  459. package/templates/skills/project-management/references/reporting-patterns.md +94 -0
  460. package/templates/skills/project-management/references/task-operations.md +85 -0
  461. package/templates/skills/react-best-practices/AGENTS.md +2249 -0
  462. package/templates/skills/react-best-practices/README.md +123 -0
  463. package/templates/skills/react-best-practices/SKILL.md +122 -0
  464. package/templates/skills/react-best-practices/metadata.json +15 -0
  465. package/templates/skills/react-best-practices/rules/_sections.md +46 -0
  466. package/templates/skills/react-best-practices/rules/_template.md +28 -0
  467. package/templates/skills/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  468. package/templates/skills/react-best-practices/rules/advanced-use-latest.md +49 -0
  469. package/templates/skills/react-best-practices/rules/async-api-routes.md +38 -0
  470. package/templates/skills/react-best-practices/rules/async-defer-await.md +80 -0
  471. package/templates/skills/react-best-practices/rules/async-dependencies.md +36 -0
  472. package/templates/skills/react-best-practices/rules/async-parallel.md +28 -0
  473. package/templates/skills/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  474. package/templates/skills/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  475. package/templates/skills/react-best-practices/rules/bundle-conditional.md +31 -0
  476. package/templates/skills/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  477. package/templates/skills/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  478. package/templates/skills/react-best-practices/rules/bundle-preload.md +50 -0
  479. package/templates/skills/react-best-practices/rules/client-event-listeners.md +74 -0
  480. package/templates/skills/react-best-practices/rules/client-swr-dedup.md +56 -0
  481. package/templates/skills/react-best-practices/rules/js-batch-dom-css.md +82 -0
  482. package/templates/skills/react-best-practices/rules/js-cache-function-results.md +80 -0
  483. package/templates/skills/react-best-practices/rules/js-cache-property-access.md +28 -0
  484. package/templates/skills/react-best-practices/rules/js-cache-storage.md +70 -0
  485. package/templates/skills/react-best-practices/rules/js-combine-iterations.md +32 -0
  486. package/templates/skills/react-best-practices/rules/js-early-exit.md +50 -0
  487. package/templates/skills/react-best-practices/rules/js-hoist-regexp.md +45 -0
  488. package/templates/skills/react-best-practices/rules/js-index-maps.md +37 -0
  489. package/templates/skills/react-best-practices/rules/js-length-check-first.md +49 -0
  490. package/templates/skills/react-best-practices/rules/js-min-max-loop.md +82 -0
  491. package/templates/skills/react-best-practices/rules/js-set-map-lookups.md +24 -0
  492. package/templates/skills/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  493. package/templates/skills/react-best-practices/rules/rendering-activity.md +26 -0
  494. package/templates/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  495. package/templates/skills/react-best-practices/rules/rendering-conditional-render.md +40 -0
  496. package/templates/skills/react-best-practices/rules/rendering-content-visibility.md +38 -0
  497. package/templates/skills/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  498. package/templates/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  499. package/templates/skills/react-best-practices/rules/rendering-svg-precision.md +28 -0
  500. package/templates/skills/react-best-practices/rules/rerender-defer-reads.md +39 -0
  501. package/templates/skills/react-best-practices/rules/rerender-dependencies.md +45 -0
  502. package/templates/skills/react-best-practices/rules/rerender-derived-state.md +29 -0
  503. package/templates/skills/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  504. package/templates/skills/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  505. package/templates/skills/react-best-practices/rules/rerender-memo.md +44 -0
  506. package/templates/skills/react-best-practices/rules/rerender-transitions.md +40 -0
  507. package/templates/skills/react-best-practices/rules/server-after-nonblocking.md +73 -0
  508. package/templates/skills/react-best-practices/rules/server-cache-lru.md +41 -0
  509. package/templates/skills/react-best-practices/rules/server-cache-react.md +26 -0
  510. package/templates/skills/react-best-practices/rules/server-parallel-fetching.md +79 -0
  511. package/templates/skills/react-best-practices/rules/server-serialization.md +38 -0
  512. package/templates/skills/remotion/SKILL.md +44 -0
  513. package/templates/skills/remotion/rules/3d.md +86 -0
  514. package/templates/skills/remotion/rules/animations.md +29 -0
  515. package/templates/skills/remotion/rules/assets/charts-bar-chart.tsx +173 -0
  516. package/templates/skills/remotion/rules/assets/text-animations-typewriter.tsx +100 -0
  517. package/templates/skills/remotion/rules/assets/text-animations-word-highlight.tsx +108 -0
  518. package/templates/skills/remotion/rules/assets.md +78 -0
  519. package/templates/skills/remotion/rules/audio.md +172 -0
  520. package/templates/skills/remotion/rules/calculate-metadata.md +104 -0
  521. package/templates/skills/remotion/rules/can-decode.md +75 -0
  522. package/templates/skills/remotion/rules/charts.md +58 -0
  523. package/templates/skills/remotion/rules/compositions.md +146 -0
  524. package/templates/skills/remotion/rules/display-captions.md +126 -0
  525. package/templates/skills/remotion/rules/extract-frames.md +229 -0
  526. package/templates/skills/remotion/rules/fonts.md +152 -0
  527. package/templates/skills/remotion/rules/get-audio-duration.md +58 -0
  528. package/templates/skills/remotion/rules/get-video-dimensions.md +68 -0
  529. package/templates/skills/remotion/rules/get-video-duration.md +58 -0
  530. package/templates/skills/remotion/rules/gifs.md +138 -0
  531. package/templates/skills/remotion/rules/images.md +130 -0
  532. package/templates/skills/remotion/rules/import-srt-captions.md +67 -0
  533. package/templates/skills/remotion/rules/lottie.md +68 -0
  534. package/templates/skills/remotion/rules/measuring-dom-nodes.md +35 -0
  535. package/templates/skills/remotion/rules/measuring-text.md +143 -0
  536. package/templates/skills/remotion/rules/sequencing.md +106 -0
  537. package/templates/skills/remotion/rules/tailwind.md +11 -0
  538. package/templates/skills/remotion/rules/text-animations.md +20 -0
  539. package/templates/skills/remotion/rules/timing.md +179 -0
  540. package/templates/skills/remotion/rules/transcribe-captions.md +19 -0
  541. package/templates/skills/remotion/rules/transitions.md +122 -0
  542. package/templates/skills/remotion/rules/trimming.md +53 -0
  543. package/templates/skills/remotion/rules/videos.md +171 -0
  544. package/templates/skills/repomix/SKILL.md +3 -2
  545. package/templates/skills/repomix/scripts/repomix_batch.py +0 -0
  546. package/templates/skills/research/SKILL.md +9 -6
  547. package/templates/skills/scout/SKILL.md +89 -0
  548. package/templates/skills/scout/references/external-scouting.md +140 -0
  549. package/templates/skills/scout/references/internal-scouting.md +119 -0
  550. package/templates/skills/scout/references/task-management-scouting.md +125 -0
  551. package/templates/skills/sequential-thinking/SKILL.md +3 -2
  552. package/templates/skills/sequential-thinking/scripts/format-thought.js +0 -0
  553. package/templates/skills/sequential-thinking/scripts/process-thought.js +0 -0
  554. package/templates/skills/shader/SKILL.md +113 -0
  555. package/templates/skills/shader/references/glsl-cellular-voronoi-worley-noise-patterns.md +142 -0
  556. package/templates/skills/shader/references/glsl-colors-rgb-hsb-gradients-mixing-color-spaces.md +143 -0
  557. package/templates/skills/shader/references/glsl-fbm-fractional-brownian-motion-turbulence-octaves.md +146 -0
  558. package/templates/skills/shader/references/glsl-fundamentals-data-types-vectors-precision-coordinates.md +104 -0
  559. package/templates/skills/shader/references/glsl-noise-random-perlin-simplex-cellular-voronoi.md +115 -0
  560. package/templates/skills/shader/references/glsl-pattern-symmetry-truchet-domain-warping.md +134 -0
  561. package/templates/skills/shader/references/glsl-patterns-tiling-fract-matrices-transformations.md +133 -0
  562. package/templates/skills/shader/references/glsl-procedural-textures-clouds-marble-wood-terrain.md +144 -0
  563. package/templates/skills/shader/references/glsl-shader-builtin-functions-complete-api-reference.md +112 -0
  564. package/templates/skills/shader/references/glsl-shapes-polygon-star-polar-sdf-combinations.md +124 -0
  565. package/templates/skills/shader/references/glsl-shapes-sdf-circles-rectangles-polar-distance-fields.md +106 -0
  566. package/templates/skills/shader/references/glsl-shaping-functions-step-smoothstep-curves-interpolation.md +141 -0
  567. package/templates/skills/shopify/SKILL.md +3 -2
  568. package/templates/skills/shopify/scripts/shopify_init.py +5 -5
  569. package/templates/skills/skill-creator/SKILL.md +91 -238
  570. package/templates/skills/skill-creator/references/benchmark-optimization-guide.md +86 -0
  571. package/templates/skills/skill-creator/references/distribution-guide.md +79 -0
  572. package/templates/skills/skill-creator/references/mcp-skills-integration.md +71 -0
  573. package/templates/skills/skill-creator/references/metadata-quality-criteria.md +76 -0
  574. package/templates/skills/skill-creator/references/plugin-marketplace-hosting.md +104 -0
  575. package/templates/skills/skill-creator/references/plugin-marketplace-overview.md +89 -0
  576. package/templates/skills/skill-creator/references/plugin-marketplace-schema.md +93 -0
  577. package/templates/skills/skill-creator/references/plugin-marketplace-sources.md +103 -0
  578. package/templates/skills/skill-creator/references/plugin-marketplace-troubleshooting.md +76 -0
  579. package/templates/skills/skill-creator/references/script-quality-criteria.md +106 -0
  580. package/templates/skills/skill-creator/references/skill-anatomy-and-requirements.md +76 -0
  581. package/templates/skills/skill-creator/references/skill-creation-workflow.md +95 -0
  582. package/templates/skills/skill-creator/references/skill-design-patterns.md +75 -0
  583. package/templates/skills/skill-creator/references/skillmark-benchmark-criteria.md +102 -0
  584. package/templates/skills/skill-creator/references/structure-organization-criteria.md +114 -0
  585. package/templates/skills/skill-creator/references/testing-and-iteration.md +78 -0
  586. package/templates/skills/skill-creator/references/token-efficiency-criteria.md +74 -0
  587. package/templates/skills/skill-creator/references/troubleshooting-guide.md +80 -0
  588. package/templates/skills/skill-creator/references/validation-checklist.md +83 -0
  589. package/templates/skills/skill-creator/references/writing-effective-instructions.md +88 -0
  590. package/templates/skills/skill-creator/references/yaml-frontmatter-reference.md +91 -0
  591. package/templates/skills/skill-creator/scripts/debug.zip +0 -0
  592. package/templates/skills/skill-creator/scripts/encoding_utils.py +36 -0
  593. package/templates/skills/skill-creator/scripts/init_skill.py +9 -4
  594. package/templates/skills/skill-creator/scripts/package_skill.py +5 -0
  595. package/templates/skills/skill-creator/scripts/quick_validate.py +6 -2
  596. package/templates/skills/tanstack/SKILL.md +141 -0
  597. package/templates/skills/tanstack/references/tanstack-ai.md +97 -0
  598. package/templates/skills/tanstack/references/tanstack-form.md +125 -0
  599. package/templates/skills/tanstack/references/tanstack-start.md +100 -0
  600. package/templates/skills/team/SKILL.md +285 -0
  601. package/templates/skills/team/references/agent-teams-controls-and-modes.md +107 -0
  602. package/templates/skills/team/references/agent-teams-examples-and-best-practices.md +182 -0
  603. package/templates/skills/team/references/agent-teams-official-docs.md +175 -0
  604. package/templates/skills/template-skill/SKILL.md +1 -1
  605. package/templates/skills/test/SKILL.md +109 -0
  606. package/templates/skills/test/references/report-format.md +58 -0
  607. package/templates/skills/test/references/test-execution-workflow.md +103 -0
  608. package/templates/skills/test/references/ui-testing-workflow.md +65 -0
  609. package/templates/skills/threejs/SKILL.md +106 -53
  610. package/templates/skills/threejs/data/api-reference.csv +61 -0
  611. package/templates/skills/threejs/data/categories.csv +14 -0
  612. package/templates/skills/threejs/data/examples-all.csv +557 -0
  613. package/templates/skills/threejs/data/use-cases.csv +21 -0
  614. package/templates/skills/threejs/references/00-fundamentals.md +487 -0
  615. package/templates/skills/threejs/references/11-materials-advanced.md +1 -1
  616. package/templates/skills/threejs/references/11-materials.md +519 -0
  617. package/templates/skills/threejs/references/17-shader.md +641 -0
  618. package/templates/skills/threejs/references/18-geometry.md +547 -0
  619. package/templates/skills/threejs/scripts/core.py +236 -0
  620. package/templates/skills/threejs/scripts/extract_examples.py +688 -0
  621. package/templates/skills/threejs/scripts/generate_csv_from_json.py +135 -0
  622. package/templates/skills/threejs/scripts/search.py +77 -0
  623. package/templates/skills/ui-styling/SKILL.md +3 -2
  624. package/templates/skills/ui-styling/scripts/shadcn_add.py +0 -0
  625. package/templates/skills/ui-styling/scripts/tailwind_config_gen.py +1 -1
  626. package/templates/skills/ui-ux-pro-max/SKILL.md +69 -32
  627. package/templates/skills/ui-ux-pro-max/data/charts.csv +25 -25
  628. package/templates/skills/ui-ux-pro-max/data/colors.csv +96 -96
  629. package/templates/skills/ui-ux-pro-max/data/landing.csv +30 -30
  630. package/templates/skills/ui-ux-pro-max/data/products.csv +96 -96
  631. package/templates/skills/ui-ux-pro-max/data/prompts.csv +20 -20
  632. package/templates/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
  633. package/templates/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
  634. package/templates/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
  635. package/templates/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -52
  636. package/templates/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
  637. package/templates/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
  638. package/templates/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
  639. package/templates/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
  640. package/templates/skills/ui-ux-pro-max/data/styles.csv +58 -58
  641. package/templates/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  642. package/templates/skills/ui-ux-pro-max/data/ux-guidelines.csv +99 -99
  643. package/templates/skills/ui-ux-pro-max/scripts/design_system.py +494 -0
  644. package/templates/skills/ui-ux-pro-max/scripts/search.py +84 -61
  645. package/templates/skills/use-mcp/SKILL.md +42 -0
  646. package/templates/skills/watzup/SKILL.md +12 -0
  647. package/templates/skills/web-design-guidelines/SKILL.md +36 -0
  648. package/templates/skills/web-frameworks/SKILL.md +4 -3
  649. package/templates/skills/web-frameworks/scripts/nextjs_init.py +13 -13
  650. package/templates/skills/web-frameworks/scripts/turborepo_migrate.py +0 -0
  651. package/templates/skills/web-testing/SKILL.md +97 -0
  652. package/templates/skills/web-testing/references/accessibility-testing.md +84 -0
  653. package/templates/skills/web-testing/references/api-testing.md +78 -0
  654. package/templates/skills/web-testing/references/ci-cd-testing-workflows.md +121 -0
  655. package/templates/skills/web-testing/references/component-testing.md +94 -0
  656. package/templates/skills/web-testing/references/contract-testing.md +146 -0
  657. package/templates/skills/web-testing/references/cross-browser-checklist.md +72 -0
  658. package/templates/skills/web-testing/references/database-testing.md +139 -0
  659. package/templates/skills/web-testing/references/e2e-testing-playwright.md +119 -0
  660. package/templates/skills/web-testing/references/functional-testing-checklist.md +88 -0
  661. package/templates/skills/web-testing/references/interactive-testing-patterns.md +89 -0
  662. package/templates/skills/web-testing/references/load-testing-k6.md +93 -0
  663. package/templates/skills/web-testing/references/mobile-gesture-testing.md +85 -0
  664. package/templates/skills/web-testing/references/performance-core-web-vitals.md +124 -0
  665. package/templates/skills/web-testing/references/playwright-component-testing.md +115 -0
  666. package/templates/skills/web-testing/references/pre-release-checklist.md +75 -0
  667. package/templates/skills/web-testing/references/security-checklists.md +81 -0
  668. package/templates/skills/web-testing/references/security-testing-overview.md +92 -0
  669. package/templates/skills/web-testing/references/shadow-dom-testing.md +70 -0
  670. package/templates/skills/web-testing/references/test-data-management.md +131 -0
  671. package/templates/skills/web-testing/references/test-flakiness-mitigation.md +86 -0
  672. package/templates/skills/web-testing/references/testing-pyramid-strategy.md +76 -0
  673. package/templates/skills/web-testing/references/unit-integration-testing.md +138 -0
  674. package/templates/skills/web-testing/references/visual-regression.md +92 -0
  675. package/templates/skills/web-testing/references/vulnerability-payloads.md +93 -0
  676. package/templates/skills/web-testing/scripts/analyze-test-results.js +280 -0
  677. package/templates/skills/web-testing/scripts/init-playwright.js +233 -0
  678. package/templates/skills/worktree/SKILL.md +96 -0
  679. package/templates/skills/worktree/scripts/worktree.cjs +916 -0
  680. package/templates/skills/worktree/scripts/worktree.test.cjs +792 -0
  681. package/templates/statusline.cjs +477 -244
  682. package/templates/statusline.ps1 +0 -1
  683. package/templates/statusline.sh +0 -1
  684. package/templates/agents/README.md +0 -172
  685. package/templates/agents/copywriter.md +0 -113
  686. package/templates/agents/database-admin.md +0 -97
  687. package/templates/agents/scout-external.md +0 -146
  688. package/templates/agents/scout.md +0 -260
  689. package/templates/hooks/.python-cache.json +0 -1
  690. package/templates/hooks/README.md +0 -246
  691. package/templates/hooks/backend-csharp-context.cjs +0 -223
  692. package/templates/hooks/design-system-context.cjs +0 -185
  693. package/templates/hooks/frontend-typescript-context.cjs +0 -233
  694. package/templates/hooks/lib/ck-paths.cjs +0 -110
  695. package/templates/hooks/lib/context-tracker.cjs +0 -335
  696. package/templates/hooks/notify-waiting.js +0 -117
  697. package/templates/hooks/post-edit-prettier.cjs +0 -189
  698. package/templates/hooks/post-task-review.cjs +0 -142
  699. package/templates/hooks/scss-styling-context.cjs +0 -213
  700. package/templates/hooks/session-end.cjs +0 -35
  701. package/templates/hooks/tests/test-context-tracker.cjs +0 -454
  702. package/templates/hooks/tests/test-scout-block.js +0 -163
  703. package/templates/hooks/workflow-router.cjs +0 -326
  704. package/templates/hooks/write-compact-marker.cjs +0 -159
  705. package/templates/scripts/__pycache__/win_compat.cpython-312.pyc +0 -0
  706. package/templates/scripts/plan-preview.cjs +0 -921
  707. package/templates/skills/arch-cross-service-integration/SKILL.md +0 -48
  708. package/templates/skills/arch-performance-optimization/SKILL.md +0 -306
  709. package/templates/skills/arch-security-review/SKILL.md +0 -344
  710. package/templates/skills/branch-comparison/SKILL.md +0 -150
  711. package/templates/skills/bug-diagnosis/SKILL.md +0 -309
  712. package/templates/skills/claude-code/references/advanced-features.md +0 -399
  713. package/templates/skills/claude-code/references/agent-skills.md +0 -399
  714. package/templates/skills/claude-code/references/api-reference.md +0 -498
  715. package/templates/skills/claude-code/references/best-practices.md +0 -447
  716. package/templates/skills/claude-code/references/cicd-integration.md +0 -428
  717. package/templates/skills/claude-code/references/common-workflows.md +0 -119
  718. package/templates/skills/claude-code/references/configuration.md +0 -480
  719. package/templates/skills/claude-code/references/enterprise-features.md +0 -472
  720. package/templates/skills/claude-code/references/getting-started.md +0 -252
  721. package/templates/skills/claude-code/references/hooks-and-plugins.md +0 -444
  722. package/templates/skills/claude-code/references/hooks-comprehensive.md +0 -622
  723. package/templates/skills/claude-code/references/ide-integration.md +0 -316
  724. package/templates/skills/claude-code/references/mcp-integration.md +0 -386
  725. package/templates/skills/claude-code/references/slash-commands.md +0 -489
  726. package/templates/skills/claude-code/references/troubleshooting.md +0 -456
  727. package/templates/skills/claude-code/skill.md +0 -60
  728. package/templates/skills/debugging/SKILL.md +0 -84
  729. package/templates/skills/developer-growth-analysis/SKILL.md +0 -322
  730. package/templates/skills/documentation/SKILL.md +0 -134
  731. package/templates/skills/domain-name-brainstormer/SKILL.md +0 -212
  732. package/templates/skills/dual-pass-review/SKILL.md +0 -249
  733. package/templates/skills/feature-docs/SKILL.md +0 -294
  734. package/templates/skills/feature-implementation/SKILL.md +0 -262
  735. package/templates/skills/feature-investigation/SKILL.md +0 -346
  736. package/templates/skills/frontend-design-pro/SKILL.md +0 -58
  737. package/templates/skills/package-upgrade/SKILL.md +0 -189
  738. package/templates/skills/plan-analysis/SKILL.md +0 -191
  739. package/templates/skills/planning/SKILL.md +0 -115
  740. package/templates/skills/planning-with-files/SKILL.md +0 -160
  741. package/templates/skills/planning-with-files/examples.md +0 -202
  742. package/templates/skills/planning-with-files/reference.md +0 -110
  743. package/templates/skills/project-index/SKILL.md +0 -97
  744. package/templates/skills/project-index/scripts/scan-structure.js +0 -417
  745. package/templates/skills/project-index/scripts/scan_structure.py +0 -450
  746. package/templates/skills/readme-improvement/SKILL.md +0 -177
  747. package/templates/skills/skill-share/SKILL.md +0 -80
  748. package/templates/skills/tasks-code-review/SKILL.md +0 -298
  749. package/templates/skills/tasks-documentation/SKILL.md +0 -328
  750. package/templates/skills/tasks-spec-update/SKILL.md +0 -318
  751. package/templates/skills/tasks-test-generation/SKILL.md +0 -433
  752. package/templates/skills/test-generation/SKILL.md +0 -203
  753. package/templates/skills/webapp-testing/LICENSE.txt +0 -202
  754. package/templates/skills/webapp-testing/SKILL.md +0 -96
  755. package/templates/skills/webapp-testing/examples/console_logging.py +0 -35
  756. package/templates/skills/webapp-testing/examples/element_discovery.py +0 -40
  757. package/templates/skills/webapp-testing/examples/static_html_automation.py +0 -33
  758. package/templates/skills/webapp-testing/scripts/with_server.py +0 -106
  759. /package/templates/hooks/scout-block/vendor/{ignore.js → ignore.cjs} +0 -0
  760. /package/templates/skills/{debugging → debug}/references/defense-in-depth.md +0 -0
  761. /package/templates/skills/{debugging → debug}/references/root-cause-tracing.md +0 -0
  762. /package/templates/skills/{debugging → debug}/references/systematic-debugging.md +0 -0
  763. /package/templates/skills/{debugging → debug}/references/verification.md +0 -0
  764. /package/templates/skills/{debugging → debug}/scripts/find-polluter.sh +0 -0
  765. /package/templates/skills/{debugging → debug}/scripts/find-polluter.test.md +0 -0
  766. /package/templates/skills/{planning → plan}/references/solution-design.md +0 -0
@@ -50,17 +50,99 @@ declare -a FAILED_OPTIONAL=()
50
50
  declare -a SKIPPED_SUDO=()
51
51
  FINAL_EXIT_CODE=0
52
52
 
53
- # Detect OS
53
+ # Detect OS (including WSL and Windows shells)
54
54
  detect_os() {
55
55
  if [[ "$OSTYPE" == "darwin"* ]]; then
56
56
  echo "macos"
57
- elif [[ "$OSTYPE" == "linux-gnu"* ]]; then
58
- echo "linux"
57
+ elif [[ "$OSTYPE" == "linux-gnu"* ]] || [[ "$OSTYPE" == "linux"* ]]; then
58
+ # Check for WSL
59
+ if [[ -f /proc/version ]] && grep -qi microsoft /proc/version 2>/dev/null; then
60
+ echo "wsl"
61
+ else
62
+ echo "linux"
63
+ fi
64
+ elif [[ "$OSTYPE" == "msys" ]] || [[ "$OSTYPE" == "mingw"* ]]; then
65
+ echo "msys" # Git Bash / MSYS2
66
+ elif [[ "$OSTYPE" == "cygwin" ]]; then
67
+ echo "cygwin"
68
+ else
69
+ echo "unknown"
70
+ fi
71
+ }
72
+
73
+ # Detect Linux distribution (for package manager selection)
74
+ detect_distro() {
75
+ # WSL uses the underlying Linux distro
76
+ if [[ "$OS" != "linux" ]] && [[ "$OS" != "wsl" ]]; then
77
+ echo "none"
78
+ return
79
+ fi
80
+
81
+ # Alpine detection (check first - most specific)
82
+ if [[ -f /etc/alpine-release ]]; then
83
+ echo "alpine"
84
+ # Arch Linux detection
85
+ elif [[ -f /etc/arch-release ]] || command_exists pacman; then
86
+ echo "arch"
87
+ # Debian/Ubuntu detection
88
+ elif command_exists apt-get; then
89
+ echo "debian"
90
+ # RHEL/CentOS/Fedora detection
91
+ elif command_exists dnf; then
92
+ echo "redhat"
93
+ elif command_exists yum; then
94
+ echo "redhat"
59
95
  else
60
96
  echo "unknown"
61
97
  fi
62
98
  }
63
99
 
100
+ # Package manager abstraction - update package lists
101
+ pkg_update() {
102
+ case "$DISTRO" in
103
+ alpine)
104
+ apk update
105
+ ;;
106
+ arch)
107
+ pacman -Sy
108
+ ;;
109
+ debian)
110
+ apt-get update -qq
111
+ ;;
112
+ redhat)
113
+ dnf check-update || true
114
+ ;;
115
+ *)
116
+ print_warning "Unknown distro, skipping package update"
117
+ ;;
118
+ esac
119
+ }
120
+
121
+ # Package manager abstraction - install package
122
+ # Usage: pkg_install <package_name>
123
+ pkg_install() {
124
+ local package_name="$1"
125
+
126
+ case "$DISTRO" in
127
+ alpine)
128
+ apk add --no-cache "$package_name"
129
+ ;;
130
+ arch)
131
+ pacman -S --noconfirm "$package_name"
132
+ ;;
133
+ debian)
134
+ apt-get install -y "$package_name"
135
+ ;;
136
+ redhat)
137
+ dnf install -y "$package_name"
138
+ ;;
139
+ *)
140
+ print_warning "Unknown distro, cannot install $package_name"
141
+ return 1
142
+ ;;
143
+ esac
144
+ }
145
+
64
146
  # Print functions (must be defined before check_bash_version)
65
147
  print_header() {
66
148
  echo -e "\n${BLUE}===================================================${NC}"
@@ -116,6 +198,9 @@ command_exists() {
116
198
  command -v "$1" >/dev/null 2>&1
117
199
  }
118
200
 
201
+ # Initialize distro detection (after command_exists is defined)
202
+ DISTRO=$(detect_distro)
203
+
119
204
  # ============================================================================
120
205
  # Installation Tracking Functions
121
206
  # ============================================================================
@@ -245,8 +330,24 @@ try_pip_install() {
245
330
  # Phase 2: Check if we can build from source
246
331
  if ! has_build_tools; then
247
332
  print_warning "$package_name: No wheel available, no build tools"
248
- if [[ "$OS" == "linux" ]]; then
249
- print_info "Install build tools: sudo apt-get install gcc python3-dev"
333
+ if [[ "$OS" == "linux" ]] || [[ "$OS" == "wsl" ]]; then
334
+ case "$DISTRO" in
335
+ alpine)
336
+ print_info "Install build tools: apk add build-base python3-dev"
337
+ ;;
338
+ arch)
339
+ print_info "Install build tools: sudo pacman -S base-devel python"
340
+ ;;
341
+ debian)
342
+ print_info "Install build tools: sudo apt-get install gcc python3-dev"
343
+ ;;
344
+ redhat)
345
+ print_info "Install build tools: sudo dnf install gcc python3-devel"
346
+ ;;
347
+ *)
348
+ print_info "Install build tools: gcc and python3-dev equivalent"
349
+ ;;
350
+ esac
250
351
  elif [[ "$OS" == "macos" ]]; then
251
352
  print_info "Install build tools: xcode-select --install"
252
353
  fi
@@ -295,17 +396,39 @@ install_system_package() {
295
396
  fi
296
397
  fi
297
398
 
298
- # Linux: only install if --with-sudo was passed
299
- if [[ "$WITH_SUDO" == "true" ]]; then
300
- print_info "Installing $display_name (sudo)..."
301
- if sudo apt-get install -y "$package_name"; then
302
- print_success "$display_name installed"
303
- track_success "optional" "$display_name"
304
- return 0
399
+ # Linux: only install if --with-sudo was passed (except Alpine which often runs as root)
400
+ if [[ "$WITH_SUDO" == "true" ]] || [[ "$DISTRO" == "alpine" && "$(id -u)" == "0" ]]; then
401
+ print_info "Installing $display_name..."
402
+ if [[ "$WITH_SUDO" == "true" ]]; then
403
+ # Call package manager directly with sudo (functions don't work with sudo)
404
+ local install_result=0
405
+ case "$DISTRO" in
406
+ alpine) sudo apk add --no-cache "$package_name" || install_result=1 ;;
407
+ arch) sudo pacman -S --noconfirm "$package_name" || install_result=1 ;;
408
+ debian) sudo apt-get install -y "$package_name" || install_result=1 ;;
409
+ redhat) sudo dnf install -y "$package_name" || install_result=1 ;;
410
+ *) install_result=1 ;;
411
+ esac
412
+ if [[ "$install_result" -eq 0 ]]; then
413
+ print_success "$display_name installed"
414
+ track_success "optional" "$display_name"
415
+ return 0
416
+ else
417
+ print_warning "$display_name: package install failed"
418
+ track_failure "optional" "$display_name" "package install failed"
419
+ return 1
420
+ fi
305
421
  else
306
- print_warning "$display_name: apt-get install failed"
307
- track_failure "optional" "$display_name" "apt-get install failed"
308
- return 1
422
+ # Alpine as root (no sudo needed)
423
+ if pkg_install "$package_name"; then
424
+ print_success "$display_name installed"
425
+ track_success "optional" "$display_name"
426
+ return 0
427
+ else
428
+ print_warning "$display_name: package install failed"
429
+ track_failure "optional" "$display_name" "package install failed"
430
+ return 1
431
+ fi
309
432
  fi
310
433
  else
311
434
  # No sudo permission - track as skipped
@@ -325,16 +448,33 @@ check_package_manager() {
325
448
  else
326
449
  print_success "Homebrew found"
327
450
  fi
328
- elif [[ "$OS" == "linux" ]]; then
329
- if command_exists apt-get; then
330
- print_success "apt-get found"
331
- elif command_exists yum; then
332
- print_success "yum found"
333
- else
334
- print_warning "No supported package manager found (apt-get or yum)"
335
- print_info "System packages will be skipped"
336
- # Don't exit - just warn and continue
337
- fi
451
+ elif [[ "$OS" == "linux" ]] || [[ "$OS" == "wsl" ]]; then
452
+ case "$DISTRO" in
453
+ alpine)
454
+ print_success "apk found (Alpine Linux)"
455
+ ;;
456
+ arch)
457
+ print_success "pacman found (Arch Linux)"
458
+ ;;
459
+ debian)
460
+ print_success "apt-get found (Debian/Ubuntu)"
461
+ ;;
462
+ redhat)
463
+ if command_exists dnf; then
464
+ print_success "dnf found (RHEL/Fedora)"
465
+ else
466
+ print_success "yum found (RHEL/CentOS)"
467
+ fi
468
+ ;;
469
+ *)
470
+ print_warning "No supported package manager found (apk, pacman, apt-get, dnf, or yum)"
471
+ print_info "System packages will be skipped"
472
+ ;;
473
+ esac
474
+ elif [[ "$OS" == "msys" ]] || [[ "$OS" == "cygwin" ]]; then
475
+ print_warning "Windows shell detected ($OS)"
476
+ print_info "System package installation not supported"
477
+ print_info "Please install dependencies manually or use WSL"
338
478
  fi
339
479
  }
340
480
 
@@ -342,10 +482,22 @@ check_package_manager() {
342
482
  install_system_deps() {
343
483
  print_header "Installing System Dependencies"
344
484
 
345
- # Update apt cache if we have sudo permission (Linux only)
346
- if [[ "$OS" == "linux" ]] && [[ "$WITH_SUDO" == "true" ]]; then
347
- print_info "Updating package lists..."
348
- sudo apt-get update -qq
485
+ # Update package cache if we have permission (Linux only)
486
+ if [[ "$OS" == "linux" ]]; then
487
+ if [[ "$WITH_SUDO" == "true" ]]; then
488
+ print_info "Updating package lists..."
489
+ # Call package manager directly with sudo (functions don't work with sudo)
490
+ case "$DISTRO" in
491
+ alpine) sudo apk update ;;
492
+ arch) sudo pacman -Sy ;;
493
+ debian) sudo apt-get update -qq ;;
494
+ redhat) sudo dnf check-update || true ;;
495
+ esac
496
+ elif [[ "$DISTRO" == "alpine" && "$(id -u)" == "0" ]]; then
497
+ # Alpine as root (no sudo needed)
498
+ print_info "Updating package lists..."
499
+ pkg_update
500
+ fi
349
501
  fi
350
502
 
351
503
  # FFmpeg (required for media-processing skill)
@@ -377,9 +529,57 @@ install_node_deps() {
377
529
  print_info "Installing Node.js..."
378
530
  if [[ "$OS" == "macos" ]]; then
379
531
  brew install node
380
- elif [[ "$OS" == "linux" ]]; then
381
- curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
382
- sudo apt-get install -y nodejs
532
+ elif [[ "$OS" == "linux" ]] || [[ "$OS" == "wsl" ]]; then
533
+ case "$DISTRO" in
534
+ alpine)
535
+ # Alpine: install via apk
536
+ if [[ "$(id -u)" == "0" ]]; then
537
+ apk add --no-cache nodejs npm
538
+ elif [[ "$WITH_SUDO" == "true" ]]; then
539
+ sudo apk add --no-cache nodejs npm
540
+ else
541
+ print_warning "Node.js installation requires root or --with-sudo"
542
+ print_info "Run: apk add nodejs npm"
543
+ return 1
544
+ fi
545
+ ;;
546
+ arch)
547
+ # Arch: install via pacman
548
+ if [[ "$(id -u)" == "0" ]]; then
549
+ pacman -S --noconfirm nodejs npm
550
+ elif [[ "$WITH_SUDO" == "true" ]]; then
551
+ sudo pacman -S --noconfirm nodejs npm
552
+ else
553
+ print_warning "Node.js installation requires root or --with-sudo"
554
+ print_info "Run: sudo pacman -S nodejs npm"
555
+ return 1
556
+ fi
557
+ ;;
558
+ debian)
559
+ # Debian/Ubuntu: use nodesource
560
+ curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
561
+ sudo apt-get install -y nodejs
562
+ ;;
563
+ redhat)
564
+ # RHEL/CentOS/Fedora: use nodesource
565
+ curl -fsSL https://rpm.nodesource.com/setup_20.x | sudo bash -
566
+ if command_exists dnf; then
567
+ sudo dnf install -y nodejs
568
+ else
569
+ sudo yum install -y nodejs
570
+ fi
571
+ ;;
572
+ *)
573
+ print_warning "Unknown distro, cannot install Node.js automatically"
574
+ print_info "Please install Node.js manually"
575
+ return 1
576
+ ;;
577
+ esac
578
+ elif [[ "$OS" == "msys" ]] || [[ "$OS" == "cygwin" ]]; then
579
+ print_warning "Cannot install Node.js in $OS environment"
580
+ print_info "Please install Node.js from https://nodejs.org"
581
+ print_info "Or use WSL for better compatibility"
582
+ return 1
383
583
  fi
384
584
  print_success "Node.js installed"
385
585
  fi
@@ -488,19 +688,9 @@ setup_python_env() {
488
688
  PYTHON_PATH=$(which python3)
489
689
  print_success "Python3 found ($PYTHON_VERSION)"
490
690
 
491
- # Check for broken UV Python installation
691
+ # Detect UV-managed Python — warn but don't exit (create_venv handles fallback)
492
692
  if [[ "$PYTHON_PATH" == *"/.local/share/uv/"* ]]; then
493
- # Verify UV Python works by testing venv creation
494
- if ! python3 -c "import sys; sys.exit(0 if '/install' not in sys.base_prefix else 1)" 2>/dev/null; then
495
- print_error "UV Python installation is broken (corrupted sys.base_prefix)"
496
- print_info "Please reinstall Python using Homebrew:"
497
- print_info " brew install python@3.12"
498
- print_info " export PATH=\"/opt/homebrew/bin:\$PATH\""
499
- print_info "Or fix UV Python:"
500
- print_info " uv python uninstall 3.12"
501
- print_info " uv python install 3.12"
502
- exit 1
503
- fi
693
+ print_info "UV-managed Python detected (venv creation will use uv if needed)"
504
694
  fi
505
695
  else
506
696
  print_error "Python3 not found. Please install Python 3.7+"
@@ -514,9 +704,32 @@ setup_python_env() {
514
704
  return 0
515
705
  fi
516
706
 
707
+ # Try uv venv if available (handles uv-managed Python where python3 -m venv breaks)
708
+ if command_exists uv; then
709
+ print_warning "Standard venv creation failed, trying uv venv..."
710
+ if uv venv "$VENV_DIR" 2>/dev/null; then
711
+ # uv venv doesn't include pip — bootstrap it
712
+ if ! curl -sS https://bootstrap.pypa.io/get-pip.py | "$VENV_DIR/bin/python3" 2>/dev/null; then
713
+ print_warning "Could not bootstrap pip via get-pip.py, trying uv pip..."
714
+ if ! uv pip install pip --python "$VENV_DIR/bin/python3" 2>/dev/null; then
715
+ print_error "Failed to install pip in uv venv"
716
+ rm -rf "$VENV_DIR"
717
+ return 1
718
+ fi
719
+ fi
720
+ return 0
721
+ fi
722
+ fi
723
+
517
724
  # If ensurepip fails (common on macOS), create without pip and bootstrap manually
518
725
  print_warning "Standard venv creation failed, trying without ensurepip..."
519
- if python3 -m venv --without-pip "$VENV_DIR"; then
726
+ if python3 -m venv --without-pip "$VENV_DIR" 2>/dev/null; then
727
+ # Verify the venv Python works (uv-managed Python may create broken venvs)
728
+ if ! "$VENV_DIR/bin/python3" -c "import sys" 2>/dev/null; then
729
+ print_warning "Venv Python is broken (cannot import stdlib), skipping..."
730
+ rm -rf "$VENV_DIR"
731
+ return 1
732
+ fi
520
733
  # Bootstrap pip manually with error handling
521
734
  source "$VENV_DIR/bin/activate"
522
735
  if ! curl -sS https://bootstrap.pypa.io/get-pip.py | python3; then
@@ -777,27 +990,87 @@ generate_remediation_commands() {
777
990
  echo ""
778
991
 
779
992
  if [[ "$has_sudo_skipped" == "true" ]]; then
780
- echo "# System packages (requires sudo):"
781
- echo "sudo apt-get update"
782
- for item in "${SKIPPED_SUDO[@]}"; do
783
- local pkg="${item%%:*}"
784
- case "$pkg" in
785
- FFmpeg) echo "sudo apt-get install -y ffmpeg" ;;
786
- ImageMagick) echo "sudo apt-get install -y imagemagick" ;;
787
- *) echo "# $pkg: see documentation" ;;
788
- esac
789
- done
993
+ echo "# System packages (requires root/sudo):"
994
+ case "$DISTRO" in
995
+ alpine)
996
+ echo "apk update"
997
+ for item in "${SKIPPED_SUDO[@]}"; do
998
+ local pkg="${item%%:*}"
999
+ case "$pkg" in
1000
+ FFmpeg) echo "apk add ffmpeg" ;;
1001
+ ImageMagick) echo "apk add imagemagick" ;;
1002
+ *) echo "# $pkg: see documentation" ;;
1003
+ esac
1004
+ done
1005
+ ;;
1006
+ arch)
1007
+ echo "sudo pacman -Sy"
1008
+ for item in "${SKIPPED_SUDO[@]}"; do
1009
+ local pkg="${item%%:*}"
1010
+ case "$pkg" in
1011
+ FFmpeg) echo "sudo pacman -S --noconfirm ffmpeg" ;;
1012
+ ImageMagick) echo "sudo pacman -S --noconfirm imagemagick" ;;
1013
+ *) echo "# $pkg: see documentation" ;;
1014
+ esac
1015
+ done
1016
+ ;;
1017
+ debian)
1018
+ echo "sudo apt-get update"
1019
+ for item in "${SKIPPED_SUDO[@]}"; do
1020
+ local pkg="${item%%:*}"
1021
+ case "$pkg" in
1022
+ FFmpeg) echo "sudo apt-get install -y ffmpeg" ;;
1023
+ ImageMagick) echo "sudo apt-get install -y imagemagick" ;;
1024
+ *) echo "# $pkg: see documentation" ;;
1025
+ esac
1026
+ done
1027
+ ;;
1028
+ redhat)
1029
+ echo "sudo dnf check-update"
1030
+ for item in "${SKIPPED_SUDO[@]}"; do
1031
+ local pkg="${item%%:*}"
1032
+ case "$pkg" in
1033
+ FFmpeg) echo "sudo dnf install -y ffmpeg" ;;
1034
+ ImageMagick) echo "sudo dnf install -y ImageMagick" ;;
1035
+ *) echo "# $pkg: see documentation" ;;
1036
+ esac
1037
+ done
1038
+ ;;
1039
+ *)
1040
+ echo "# Unknown distro - install packages manually"
1041
+ for item in "${SKIPPED_SUDO[@]}"; do
1042
+ local pkg="${item%%:*}"
1043
+ echo "# $pkg: see documentation"
1044
+ done
1045
+ ;;
1046
+ esac
790
1047
  echo ""
791
1048
  fi
792
1049
 
793
1050
  if [[ "$has_python_failed" == "true" ]]; then
794
1051
  echo "# Python packages (may require build tools):"
795
- if [[ "$OS" == "linux" ]]; then
796
- echo "sudo apt-get install -y gcc python3-dev libjpeg-dev zlib1g-dev"
797
- elif [[ "$OS" == "macos" ]]; then
798
- echo "xcode-select --install"
799
- echo "brew install jpeg libpng"
800
- fi
1052
+ case "$DISTRO" in
1053
+ alpine)
1054
+ echo "apk add build-base python3-dev jpeg-dev zlib-dev"
1055
+ ;;
1056
+ arch)
1057
+ echo "sudo pacman -S --noconfirm base-devel python libjpeg-turbo zlib"
1058
+ ;;
1059
+ debian)
1060
+ echo "sudo apt-get install -y gcc python3-dev libjpeg-dev zlib1g-dev"
1061
+ ;;
1062
+ redhat)
1063
+ echo "sudo dnf install -y gcc python3-devel libjpeg-devel zlib-devel"
1064
+ ;;
1065
+ *)
1066
+ if [[ "$OS" == "macos" ]]; then
1067
+ echo "xcode-select --install"
1068
+ echo "brew install jpeg libpng"
1069
+ else
1070
+ echo "# Install gcc, python3-dev, and image libraries for your distro"
1071
+ fi
1072
+ ;;
1073
+ esac
801
1074
  echo "source $VENV_DIR/bin/activate"
802
1075
 
803
1076
  for item in "${FAILED_OPTIONAL[@]}"; do
@@ -916,16 +1189,47 @@ write_error_summary() {
916
1189
  skipped_json+="]"
917
1190
  fi
918
1191
 
1192
+ # Generate distro-specific remediation commands
1193
+ local sudo_pkg_cmd build_tools_cmd
1194
+ case "$DISTRO" in
1195
+ alpine)
1196
+ sudo_pkg_cmd="apk add ffmpeg imagemagick"
1197
+ build_tools_cmd="apk add build-base python3-dev jpeg-dev zlib-dev"
1198
+ ;;
1199
+ arch)
1200
+ sudo_pkg_cmd="sudo pacman -S --noconfirm ffmpeg imagemagick"
1201
+ build_tools_cmd="sudo pacman -S --noconfirm base-devel python libjpeg-turbo zlib"
1202
+ ;;
1203
+ debian)
1204
+ sudo_pkg_cmd="sudo apt-get install -y ffmpeg imagemagick"
1205
+ build_tools_cmd="sudo apt-get install -y gcc python3-dev libjpeg-dev zlib1g-dev"
1206
+ ;;
1207
+ redhat)
1208
+ sudo_pkg_cmd="sudo dnf install -y ffmpeg ImageMagick"
1209
+ build_tools_cmd="sudo dnf install -y gcc python3-devel libjpeg-devel zlib-devel"
1210
+ ;;
1211
+ *)
1212
+ if [[ "$OS" == "macos" ]]; then
1213
+ sudo_pkg_cmd="brew install ffmpeg imagemagick"
1214
+ build_tools_cmd="xcode-select --install && brew install jpeg libpng"
1215
+ else
1216
+ sudo_pkg_cmd="# Install ffmpeg and imagemagick for your distro"
1217
+ build_tools_cmd="# Install gcc, python3-dev, and image libraries for your distro"
1218
+ fi
1219
+ ;;
1220
+ esac
1221
+
919
1222
  cat > "$summary_file" << EOF
920
1223
  {
921
1224
  "exit_code": $FINAL_EXIT_CODE,
922
1225
  "timestamp": "$(date -Iseconds 2>/dev/null || date -u +%Y-%m-%dT%H:%M:%SZ)",
1226
+ "distro": "$DISTRO",
923
1227
  "critical_failures": $critical_json,
924
1228
  "optional_failures": $optional_json,
925
1229
  "skipped": $skipped_json,
926
1230
  "remediation": {
927
- "sudo_packages": "sudo apt-get install -y ffmpeg imagemagick",
928
- "build_tools": "sudo apt-get install -y gcc python3-dev libjpeg-dev zlib1g-dev",
1231
+ "sudo_packages": "$sudo_pkg_cmd",
1232
+ "build_tools": "$build_tools_cmd",
929
1233
  "pip_retry": "source $VENV_DIR/bin/activate && pip install <package>"
930
1234
  }
931
1235
  }
@@ -949,6 +1253,12 @@ main() {
949
1253
  echo "" # Just add spacing, don't clear terminal
950
1254
  print_header "Claude Code Skills Installation"
951
1255
  print_info "OS: $OS"
1256
+ if [[ "$OS" == "linux" ]] || [[ "$OS" == "wsl" ]]; then
1257
+ print_info "Distro: $DISTRO"
1258
+ fi
1259
+ if [[ "$OS" == "wsl" ]]; then
1260
+ print_info "Environment: Windows Subsystem for Linux"
1261
+ fi
952
1262
  print_info "Script directory: $SCRIPT_DIR"
953
1263
  if [[ "$WITH_SUDO" == "true" ]]; then
954
1264
  print_info "Mode: with sudo (--with-sudo)"
@@ -960,11 +1270,21 @@ main() {
960
1270
  fi
961
1271
  echo ""
962
1272
 
1273
+ # Handle unsupported OS
963
1274
  if [[ "$OS" == "unknown" ]]; then
964
1275
  print_error "Unsupported operating system"
965
1276
  exit 1
966
1277
  fi
967
1278
 
1279
+ # Warn about limited Windows shell support
1280
+ if [[ "$OS" == "msys" ]] || [[ "$OS" == "cygwin" ]]; then
1281
+ print_warning "Running in Windows shell environment ($OS)"
1282
+ print_warning "Limited functionality - system packages cannot be installed"
1283
+ print_info "For full support, consider using WSL (Windows Subsystem for Linux)"
1284
+ print_info "Continuing with Python environment setup only..."
1285
+ echo ""
1286
+ fi
1287
+
968
1288
  # Confirm installation (skip if --yes flag or NON_INTERACTIVE env is set)
969
1289
  if [[ "$SKIP_CONFIRM" == "false" ]]; then
970
1290
  read -p "This will install system packages and Node.js dependencies. Continue? (y/N) " -n 1 -r
@@ -0,0 +1,11 @@
1
+ ---
2
+ name: ck:journal
3
+ description: "Write journal entries analyzing recent changes and session reflections."
4
+ argument-hint: "[topic or reflection]"
5
+ ---
6
+
7
+ # Journal
8
+
9
+ Use the `journal-writer` subagent to explore the memories and recent code changes, and write some journal entries.
10
+ Journal entries should be concise and focused on the most important events, key changes, impacts, and decisions.
11
+ Keep journal entries in the `./docs/journals/` directory.
@@ -0,0 +1,99 @@
1
+ ---
2
+ name: ck:kanban
3
+ description: "AI agent orchestration board for task visualization and team coordination."
4
+ argument-hint: "[dir]"
5
+ ---
6
+
7
+ # Plans Dashboard
8
+
9
+ Plans dashboard with progress tracking and timeline visualization.
10
+
11
+ ## Usage
12
+
13
+ - `/ck:kanban` - View dashboard for ./plans directory
14
+ - `/ck:kanban <dir>` - View dashboard for specific directory
15
+ - `/ck:kanban --stop` - Stop running server
16
+
17
+ ## Features
18
+
19
+ - Plan cards with progress bars
20
+ - Phase status breakdown (completed, in-progress, pending)
21
+ - Timeline/Gantt visualization
22
+ - Activity heatmap
23
+ - Issue and branch links
24
+
25
+ ## Execution
26
+
27
+ **IMPORTANT:** Run server as Claude Code background task using `run_in_background: true` with the Bash tool. This makes the server visible in `/tasks` and manageable via `KillShell`.
28
+
29
+ The skill is located at `.claude/skills/plans-kanban/`.
30
+
31
+ ### Stop Server
32
+
33
+ If `--stop` flag is provided:
34
+
35
+ ```bash
36
+ node .claude/skills/plans-kanban/scripts/server.cjs --stop
37
+ ```
38
+
39
+ ### Start Server
40
+
41
+ Otherwise, run the kanban server as CC background task with `--foreground` flag (keeps process alive for CC task management):
42
+
43
+ ```bash
44
+ # Determine plans directory
45
+ INPUT_DIR="$1"
46
+ PLANS_DIR="${INPUT_DIR:-./plans}"
47
+
48
+ # Start kanban dashboard
49
+ node .claude/skills/plans-kanban/scripts/server.cjs \
50
+ --dir "$PLANS_DIR" \
51
+ --host 0.0.0.0 \
52
+ --open \
53
+ --foreground
54
+ ```
55
+
56
+ **Critical:** When calling the Bash tool:
57
+ - Set `run_in_background: true` to run as CC background task
58
+ - Set `timeout: 300000` (5 minutes) to prevent premature termination
59
+ - Parse JSON output and report URL to user
60
+
61
+ Example Bash tool call:
62
+ ```json
63
+ {
64
+ "command": "node .claude/skills/plans-kanban/scripts/server.cjs --dir \"./plans\" --host 0.0.0.0 --open --foreground",
65
+ "run_in_background": true,
66
+ "timeout": 300000,
67
+ "description": "Start kanban server in background"
68
+ }
69
+ ```
70
+
71
+ After starting, parse the JSON output and report:
72
+ - Local URL for browser access
73
+ - Network URL for remote device access (if available)
74
+ - Inform user that server is now running as CC background task (visible in `/tasks`)
75
+
76
+ **CRITICAL:** MUST display the FULL URL including path and query string. NEVER truncate to just `host:port`.
77
+
78
+ ## Future Plans
79
+
80
+ The `/ck:kanban` command will evolve into **VibeKanban-inspired** AI agent orchestration:
81
+
82
+ ### Phase 1 (Current - MVP)
83
+ - Task board with progress tracking
84
+ - Visual representation of plans/tasks
85
+ - Click to view plan details
86
+
87
+ ### Phase 2 (Worktree Integration)
88
+ - Create tasks → spawn git worktrees
89
+ - Assign agents to tasks
90
+ - Track agent progress per worktree
91
+
92
+ ### Phase 3 (Full Orchestration)
93
+ - Parallel agent execution monitoring
94
+ - Code diff/review interface
95
+ - PR creation workflow
96
+ - Agent output streaming
97
+ - Conflict detection
98
+
99
+ Track progress: https://github.com/claudekit/claudekit-engineer/issues/189