thanh-kit 2.5.0 → 2.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (886) hide show
  1. package/dist/index.js +20 -61
  2. package/dist/index.js.map +1 -1
  3. package/package.json +1 -1
  4. package/templates/.ck.json +60 -0
  5. package/templates/.ckignore +27 -0
  6. package/templates/.mcp.json.example +23 -0
  7. package/templates/agents/brainstormer.md +18 -2
  8. package/templates/agents/code-reviewer.md +122 -142
  9. package/templates/agents/code-simplifier.md +50 -100
  10. package/templates/agents/debugger.md +27 -11
  11. package/templates/agents/docs-manager.md +100 -38
  12. package/templates/agents/fullstack-developer.md +15 -3
  13. package/templates/agents/git-manager.md +11 -386
  14. package/templates/agents/journal-writer.md +13 -8
  15. package/templates/agents/mcp-manager.md +21 -6
  16. package/templates/agents/planner.md +24 -8
  17. package/templates/agents/project-manager.md +17 -121
  18. package/templates/agents/researcher.md +22 -7
  19. package/templates/agents/tester.md +23 -7
  20. package/templates/agents/ui-ux-designer.md +23 -14
  21. package/templates/{commands → command-archive}/ask.md +5 -5
  22. package/templates/{commands → command-archive}/ck-help.md +18 -2
  23. package/templates/command-archive/docs/init.md +38 -0
  24. package/templates/command-archive/docs/summarize.md +22 -0
  25. package/templates/command-archive/docs/update.md +76 -0
  26. package/templates/command-archive/journal.md +18 -0
  27. package/templates/{commands → command-archive}/kanban.md +5 -7
  28. package/templates/{commands → command-archive}/plan/archive.md +2 -2
  29. package/templates/command-archive/plan/red-team.md +200 -0
  30. package/templates/command-archive/plan/validate.md +188 -0
  31. package/templates/command-archive/preview.md +283 -0
  32. package/templates/command-archive/review/codebase/parallel.md +122 -0
  33. package/templates/{commands → command-archive}/test/ui.md +3 -3
  34. package/templates/{commands → command-archive}/use-mcp.md +6 -2
  35. package/templates/command-archive/worktree.md +109 -0
  36. package/templates/hooks/__tests__/ck-config-utils.test.cjs +557 -0
  37. package/templates/hooks/__tests__/descriptive-name.test.cjs +292 -0
  38. package/templates/hooks/__tests__/dev-rules-reminder.test.cjs +336 -0
  39. package/templates/hooks/__tests__/integration/path-resolution.test.cjs +319 -0
  40. package/templates/hooks/__tests__/privacy-block.test.cjs +273 -0
  41. package/templates/hooks/__tests__/session-init.test.cjs +308 -0
  42. package/templates/hooks/__tests__/skill-dedup.test.cjs +527 -0
  43. package/templates/hooks/__tests__/subagent-init.test.cjs +622 -0
  44. package/templates/hooks/__tests__/task-completed-handler.test.cjs +246 -0
  45. package/templates/hooks/__tests__/team-context-inject.test.cjs +804 -0
  46. package/templates/hooks/__tests__/teammate-idle-handler.test.cjs +254 -0
  47. package/templates/hooks/cook-after-plan-reminder.cjs +72 -0
  48. package/templates/hooks/descriptive-name.cjs +47 -0
  49. package/templates/hooks/dev-rules-reminder.cjs +37 -214
  50. package/templates/hooks/lib/__tests__/README.md +240 -0
  51. package/templates/hooks/lib/__tests__/ck-config-utils.test.cjs +613 -1
  52. package/templates/hooks/lib/__tests__/context-builder.test.cjs +468 -0
  53. package/templates/hooks/lib/__tests__/project-detector.test.cjs +754 -0
  54. package/templates/hooks/lib/__tests__/statusline-integration.test.cjs +678 -0
  55. package/templates/hooks/lib/__tests__/statusline.test.cjs +689 -0
  56. package/templates/hooks/lib/ck-config-utils.cjs +146 -21
  57. package/templates/hooks/lib/colors.cjs +95 -0
  58. package/templates/hooks/lib/config-counter.cjs +103 -0
  59. package/templates/hooks/lib/context-builder.cjs +616 -0
  60. package/templates/hooks/lib/git-info-cache.cjs +143 -0
  61. package/templates/hooks/lib/hook-logger.cjs +92 -0
  62. package/templates/hooks/lib/privacy-checker.cjs +297 -0
  63. package/templates/hooks/lib/project-detector.cjs +474 -0
  64. package/templates/hooks/lib/scout-checker.cjs +263 -0
  65. package/templates/hooks/lib/transcript-parser.cjs +181 -0
  66. package/templates/hooks/notifications/discord_notify.sh +17 -4
  67. package/templates/hooks/notifications/docs/discord-hook-setup.md +26 -10
  68. package/templates/hooks/notifications/docs/telegram-hook-setup.md +24 -6
  69. package/templates/hooks/notifications/notify.cjs +0 -0
  70. package/templates/hooks/notifications/send-discord.sh +0 -0
  71. package/templates/hooks/notifications/telegram_notify.sh +17 -4
  72. package/templates/hooks/post-edit-simplify-reminder.cjs +156 -0
  73. package/templates/hooks/privacy-block.cjs +97 -188
  74. package/templates/hooks/scout-block/broad-pattern-detector.cjs +4 -6
  75. package/templates/hooks/scout-block/error-formatter.cjs +0 -0
  76. package/templates/hooks/scout-block/path-extractor.cjs +102 -13
  77. package/templates/hooks/scout-block/pattern-matcher.cjs +16 -1
  78. package/templates/hooks/scout-block/tests/{test-broad-pattern-detector.js → test-broad-pattern-detector.cjs} +1 -61
  79. package/templates/hooks/scout-block/tests/{test-build-command-allowlist.js → test-build-command-allowlist.cjs} +1 -1
  80. package/templates/hooks/scout-block/tests/{test-error-formatter.js → test-error-formatter.cjs} +1 -1
  81. package/templates/hooks/scout-block/tests/{test-full-flow-edge-cases.js → test-full-flow-edge-cases.cjs} +1 -1
  82. package/templates/hooks/scout-block/tests/{test-monorepo-scenarios.js → test-monorepo-scenarios.cjs} +1 -1
  83. package/templates/hooks/scout-block/tests/{test-path-extractor.js → test-path-extractor.cjs} +1 -1
  84. package/templates/hooks/scout-block/tests/{test-pattern-matcher.js → test-pattern-matcher.cjs} +1 -1
  85. package/templates/hooks/scout-block.cjs +100 -87
  86. package/templates/hooks/session-init.cjs +197 -330
  87. package/templates/hooks/skill-dedup.cjs +268 -0
  88. package/templates/hooks/subagent-init.cjs +75 -22
  89. package/templates/hooks/task-completed-handler.cjs +118 -0
  90. package/templates/hooks/team-context-inject.cjs +176 -0
  91. package/templates/hooks/teammate-idle-handler.cjs +121 -0
  92. package/templates/hooks/tests/scout-block/broad-pattern-detector.test.cjs +231 -0
  93. package/templates/hooks/tests/scout-block/fixtures/ckignore-custom.txt +6 -0
  94. package/templates/hooks/tests/scout-block/fixtures/ckignore-default.txt +13 -0
  95. package/templates/hooks/tests/scout-block/fixtures/ckignore-negation.txt +8 -0
  96. package/templates/hooks/tests/scout-block/path-extractor.test.cjs +527 -0
  97. package/templates/hooks/tests/scout-block/pattern-matcher.test.cjs +293 -0
  98. package/templates/hooks/tests/scout-block/scout-checker.test.cjs +741 -0
  99. package/templates/hooks/tests/{test-ckignore.js → test-ckignore.cjs} +0 -0
  100. package/templates/hooks/tests/{test-modularization-hook.js → test-modularization-hook.cjs} +0 -0
  101. package/templates/hooks/tests/{test-privacy-block.js → test-privacy-block.cjs} +1 -1
  102. package/templates/hooks/tests/test-scout-block.cjs +315 -0
  103. package/templates/hooks/usage-context-awareness.cjs +179 -0
  104. package/templates/metadata.json +104 -0
  105. package/templates/{workflows → rules}/development-rules.md +12 -53
  106. package/templates/rules/orchestration-protocol.md +43 -0
  107. package/templates/{workflows → rules}/primary-workflow.md +16 -4
  108. package/templates/rules/team-coordination-rules.md +90 -0
  109. package/templates/schemas/ck-config.schema.json +381 -0
  110. package/templates/scripts/README.md +94 -198
  111. package/templates/scripts/ck-help.py +19 -855
  112. package/templates/scripts/commands_data.yaml +3 -621
  113. package/templates/scripts/fix-shebang-permissions.sh +50 -0
  114. package/templates/scripts/generate_catalogs.py +37 -8
  115. package/templates/scripts/resolve_env.py +0 -0
  116. package/templates/scripts/scan_commands.py +14 -96
  117. package/templates/scripts/scan_skills.py +59 -19
  118. package/templates/scripts/set-active-plan.cjs +8 -3
  119. package/templates/scripts/skills_data.yaml +2 -596
  120. package/templates/scripts/test-ck-help.py +15 -0
  121. package/templates/scripts/test_ck_help.py +139 -0
  122. package/templates/scripts/test_ck_help_integration.py +72 -0
  123. package/templates/scripts/validate-docs.cjs +342 -0
  124. package/templates/scripts/win_compat.py +0 -0
  125. package/templates/scripts/worktree.cjs +4 -652
  126. package/templates/scripts/worktree.test.cjs +5 -330
  127. package/templates/settings.json +104 -239
  128. package/templates/skills/README.md +95 -255
  129. package/templates/skills/THIRD_PARTY_NOTICES.md +405 -0
  130. package/templates/skills/agent-browser/SKILL.md +294 -0
  131. package/templates/skills/agent-browser/references/.gitkeep +0 -0
  132. package/templates/skills/agent-browser/references/agent-browser-vs-chrome-devtools.md +112 -0
  133. package/templates/skills/agent-browser/references/browserbase-cloud-setup.md +161 -0
  134. package/templates/skills/ai-artist/SKILL.md +103 -56
  135. package/templates/skills/ai-artist/data/awesome-prompts.csv +3592 -0
  136. package/templates/skills/ai-artist/data/lighting.csv +19 -0
  137. package/templates/skills/ai-artist/data/nano-banana-templates.csv +17 -0
  138. package/templates/skills/ai-artist/data/platforms.csv +11 -0
  139. package/templates/skills/ai-artist/data/styles.csv +26 -0
  140. package/templates/skills/ai-artist/data/techniques.csv +19 -0
  141. package/templates/skills/ai-artist/data/use-cases.csv +16 -0
  142. package/templates/skills/ai-artist/references/awesome-nano-banana-pro-prompts.md +8575 -0
  143. package/templates/skills/ai-artist/references/nano-banana.md +78 -1
  144. package/templates/skills/ai-artist/references/validation-workflow.md +117 -0
  145. package/templates/skills/ai-artist/scripts/core.py +197 -0
  146. package/templates/skills/ai-artist/scripts/extract_prompts.py +102 -0
  147. package/templates/skills/ai-artist/scripts/generate.py +370 -0
  148. package/templates/skills/ai-artist/scripts/search.py +147 -0
  149. package/templates/skills/ai-multimodal/SKILL.md +4 -3
  150. package/templates/skills/ai-multimodal/scripts/check_setup.py +12 -2
  151. package/templates/skills/ai-multimodal/scripts/document_converter.py +0 -0
  152. package/templates/skills/ai-multimodal/scripts/gemini_batch_process.py +3 -2
  153. package/templates/skills/ai-multimodal/scripts/media_optimizer.py +0 -0
  154. package/templates/skills/ask/SKILL.md +58 -0
  155. package/templates/skills/backend-development/SKILL.md +3 -2
  156. package/templates/skills/better-auth/SKILL.md +3 -2
  157. package/templates/skills/better-auth/scripts/better_auth_init.py +3 -3
  158. package/templates/skills/bootstrap/SKILL.md +101 -0
  159. package/templates/skills/bootstrap/references/shared-phases.md +59 -0
  160. package/templates/skills/bootstrap/references/workflow-auto.md +52 -0
  161. package/templates/skills/bootstrap/references/workflow-fast.md +50 -0
  162. package/templates/skills/bootstrap/references/workflow-full.md +60 -0
  163. package/templates/skills/bootstrap/references/workflow-parallel.md +59 -0
  164. package/templates/{commands/brainstorm.md → skills/brainstorm/SKILL.md} +21 -18
  165. package/templates/skills/chrome-devtools/SKILL.md +221 -68
  166. package/templates/skills/chrome-devtools/scripts/README.md +18 -0
  167. package/templates/skills/chrome-devtools/scripts/__tests__/error-handling.test.js +102 -0
  168. package/templates/skills/chrome-devtools/scripts/aria-snapshot.js +2 -1
  169. package/templates/skills/chrome-devtools/scripts/click.js +2 -1
  170. package/templates/skills/chrome-devtools/scripts/connect-chrome.js +146 -0
  171. package/templates/skills/chrome-devtools/scripts/console.js +3 -1
  172. package/templates/skills/chrome-devtools/scripts/evaluate.js +6 -3
  173. package/templates/skills/chrome-devtools/scripts/fill.js +2 -1
  174. package/templates/skills/chrome-devtools/scripts/import-cookies.js +205 -0
  175. package/templates/skills/chrome-devtools/scripts/inject-auth.js +2 -1
  176. package/templates/skills/chrome-devtools/scripts/install-deps.sh +0 -0
  177. package/templates/skills/chrome-devtools/scripts/install.sh +0 -0
  178. package/templates/skills/chrome-devtools/scripts/lib/browser.js +60 -4
  179. package/templates/skills/chrome-devtools/scripts/navigate.js +86 -2
  180. package/templates/skills/chrome-devtools/scripts/network.js +3 -1
  181. package/templates/skills/chrome-devtools/scripts/performance.js +3 -1
  182. package/templates/skills/chrome-devtools/scripts/screenshot.js +2 -1
  183. package/templates/skills/chrome-devtools/scripts/select-ref.js +2 -1
  184. package/templates/skills/chrome-devtools/scripts/snapshot.js +2 -1
  185. package/templates/skills/chrome-devtools/scripts/ws-debug.js +44 -0
  186. package/templates/skills/chrome-devtools/scripts/ws-full-debug.js +107 -0
  187. package/templates/skills/ck-help/SKILL.md +102 -0
  188. package/templates/skills/ck-help/scripts/ck-help.py +1321 -0
  189. package/templates/skills/ck-help/scripts/commands_data.yaml +3 -0
  190. package/templates/skills/ck-help/scripts/skills_data.yaml +593 -0
  191. package/templates/skills/code-review/SKILL.md +97 -93
  192. package/templates/skills/code-review/references/code-review-reception.md +113 -209
  193. package/templates/skills/code-review/references/codebase-scan-workflow.md +29 -0
  194. package/templates/skills/code-review/references/edge-case-scouting.md +119 -0
  195. package/templates/skills/code-review/references/parallel-review-workflow.md +69 -0
  196. package/templates/skills/code-review/references/requesting-code-review.md +115 -104
  197. package/templates/skills/code-review/references/task-management-reviews.md +140 -0
  198. package/templates/skills/code-review/references/verification-before-completion.md +138 -138
  199. package/templates/skills/coding-level/SKILL.md +56 -0
  200. package/templates/skills/common/README.md +120 -0
  201. package/templates/skills/common/api_key_helper.py +411 -0
  202. package/templates/skills/common/api_key_rotator.py +248 -0
  203. package/templates/skills/context-engineering/SKILL.md +108 -0
  204. package/templates/skills/context-engineering/references/context-compression.md +84 -0
  205. package/templates/skills/context-engineering/references/context-degradation.md +93 -0
  206. package/templates/skills/context-engineering/references/context-fundamentals.md +75 -0
  207. package/templates/skills/context-engineering/references/context-optimization.md +82 -0
  208. package/templates/skills/context-engineering/references/evaluation.md +89 -0
  209. package/templates/skills/context-engineering/references/memory-systems.md +88 -0
  210. package/templates/skills/context-engineering/references/multi-agent-patterns.md +90 -0
  211. package/templates/skills/context-engineering/references/project-development.md +97 -0
  212. package/templates/skills/context-engineering/references/runtime-awareness.md +202 -0
  213. package/templates/skills/context-engineering/references/tool-design.md +86 -0
  214. package/templates/skills/context-engineering/scripts/compression_evaluator.py +349 -0
  215. package/templates/skills/context-engineering/scripts/context_analyzer.py +317 -0
  216. package/templates/skills/context-engineering/scripts/tests/test_edge_cases.py +246 -0
  217. package/templates/skills/cook/README.md +86 -0
  218. package/templates/skills/cook/SKILL.md +113 -0
  219. package/templates/skills/cook/references/intent-detection.md +101 -0
  220. package/templates/skills/cook/references/review-cycle.md +75 -0
  221. package/templates/skills/cook/references/subagent-patterns.md +75 -0
  222. package/templates/skills/cook/references/workflow-steps.md +172 -0
  223. package/templates/skills/copywriting/SKILL.md +94 -0
  224. package/templates/skills/copywriting/references/copy-formulas.md +150 -0
  225. package/templates/skills/copywriting/references/cta-patterns.md +168 -0
  226. package/templates/skills/copywriting/references/email-copy.md +193 -0
  227. package/templates/skills/copywriting/references/headline-templates.md +140 -0
  228. package/templates/skills/copywriting/references/landing-page-copy.md +175 -0
  229. package/templates/skills/copywriting/references/power-words.md +189 -0
  230. package/templates/skills/copywriting/references/social-media-copy.md +222 -0
  231. package/templates/skills/copywriting/references/workflow-cro.md +83 -0
  232. package/templates/skills/copywriting/references/workflow-enhance.md +32 -0
  233. package/templates/skills/copywriting/references/workflow-fast.md +29 -0
  234. package/templates/skills/copywriting/references/workflow-good.md +39 -0
  235. package/templates/skills/copywriting/references/writing-styles.md +247 -0
  236. package/templates/skills/copywriting/scripts/extract-writing-styles.py +308 -0
  237. package/templates/skills/copywriting/templates/copy-brief.md +49 -0
  238. package/templates/skills/databases/SKILL.md +7 -155
  239. package/templates/skills/databases/analytics.md +198 -0
  240. package/templates/skills/databases/db-design.md +188 -0
  241. package/templates/skills/databases/incremental-etl.md +213 -0
  242. package/templates/skills/databases/scripts/db_backup.py +0 -0
  243. package/templates/skills/databases/scripts/db_migrate.py +3 -2
  244. package/templates/skills/databases/scripts/db_performance_check.py +3 -2
  245. package/templates/skills/databases/stacks/bigquery.md +231 -0
  246. package/templates/skills/databases/stacks/d1_cloudflare.md +137 -0
  247. package/templates/skills/databases/stacks/mysql.md +216 -0
  248. package/templates/skills/databases/stacks/postgres.md +235 -0
  249. package/templates/skills/databases/stacks/sqlite.md +244 -0
  250. package/templates/skills/databases/transactional.md +176 -0
  251. package/templates/skills/debug/SKILL.md +121 -0
  252. package/templates/skills/debug/references/frontend-verification.md +103 -0
  253. package/templates/skills/debug/references/investigation-methodology.md +101 -0
  254. package/templates/skills/debug/references/log-and-ci-analysis.md +97 -0
  255. package/templates/skills/debug/references/performance-diagnostics.md +113 -0
  256. package/templates/skills/debug/references/reporting-standards.md +122 -0
  257. package/templates/skills/debug/references/task-management-debugging.md +155 -0
  258. package/templates/skills/devops/SKILL.md +65 -253
  259. package/templates/skills/devops/references/kubernetes-basics.md +99 -0
  260. package/templates/skills/devops/references/kubernetes-helm-advanced.md +75 -0
  261. package/templates/skills/devops/references/kubernetes-helm.md +81 -0
  262. package/templates/skills/devops/references/kubernetes-kubectl.md +74 -0
  263. package/templates/skills/devops/references/kubernetes-security-advanced.md +98 -0
  264. package/templates/skills/devops/references/kubernetes-security.md +95 -0
  265. package/templates/skills/devops/references/kubernetes-troubleshooting-advanced.md +74 -0
  266. package/templates/skills/devops/references/kubernetes-troubleshooting.md +49 -0
  267. package/templates/skills/devops/references/kubernetes-workflows-advanced.md +75 -0
  268. package/templates/skills/devops/references/kubernetes-workflows.md +78 -0
  269. package/templates/skills/devops/scripts/cloudflare_deploy.py +0 -0
  270. package/templates/skills/devops/scripts/docker_optimize.py +3 -2
  271. package/templates/skills/docs/SKILL.md +55 -0
  272. package/templates/skills/docs/references/init-workflow.md +32 -0
  273. package/templates/skills/docs/references/summarize-workflow.md +18 -0
  274. package/templates/skills/docs/references/update-workflow.md +59 -0
  275. package/templates/skills/docs-seeker/SKILL.md +3 -2
  276. package/templates/skills/docs-seeker/scripts/analyze-llms-txt.js +0 -0
  277. package/templates/skills/docs-seeker/scripts/detect-topic.js +0 -0
  278. package/templates/skills/docs-seeker/scripts/fetch-docs.js +0 -0
  279. package/templates/skills/docs-seeker/scripts/tests/run-tests.js +0 -0
  280. package/templates/skills/docs-seeker/scripts/tests/test-analyze-llms.js +0 -0
  281. package/templates/skills/docs-seeker/scripts/tests/test-detect-topic.js +0 -0
  282. package/templates/skills/docs-seeker/scripts/tests/test-fetch-docs.js +0 -0
  283. package/templates/skills/docs-seeker/scripts/utils/env-loader.js +0 -0
  284. package/templates/skills/document-skills/docx/SKILL.md +2 -2
  285. package/templates/skills/document-skills/docx/ooxml/scripts/pack.py +0 -0
  286. package/templates/skills/document-skills/docx/ooxml/scripts/unpack.py +0 -0
  287. package/templates/skills/document-skills/docx/ooxml/scripts/validate.py +0 -0
  288. package/templates/skills/document-skills/docx/scripts/document.py +0 -0
  289. package/templates/skills/document-skills/docx/scripts/utilities.py +0 -0
  290. package/templates/skills/document-skills/pdf/SKILL.md +2 -2
  291. package/templates/skills/document-skills/pptx/SKILL.md +2 -2
  292. package/templates/skills/document-skills/pptx/ooxml/scripts/pack.py +0 -0
  293. package/templates/skills/document-skills/pptx/ooxml/scripts/unpack.py +0 -0
  294. package/templates/skills/document-skills/pptx/ooxml/scripts/validate.py +0 -0
  295. package/templates/skills/document-skills/pptx/scripts/inventory.py +0 -0
  296. package/templates/skills/document-skills/pptx/scripts/rearrange.py +0 -0
  297. package/templates/skills/document-skills/pptx/scripts/replace.py +0 -0
  298. package/templates/skills/document-skills/pptx/scripts/thumbnail.py +0 -0
  299. package/templates/skills/document-skills/xlsx/SKILL.md +2 -2
  300. package/templates/skills/document-skills/xlsx/recalc.py +3 -2
  301. package/templates/skills/find-skills/SKILL.md +134 -0
  302. package/templates/skills/fix/SKILL.md +111 -0
  303. package/templates/skills/fix/references/complexity-assessment.md +72 -0
  304. package/templates/skills/fix/references/mode-selection.md +46 -0
  305. package/templates/skills/fix/references/parallel-exploration.md +100 -0
  306. package/templates/skills/fix/references/review-cycle.md +77 -0
  307. package/templates/skills/fix/references/skill-activation-matrix.md +78 -0
  308. package/templates/skills/fix/references/task-orchestration.md +103 -0
  309. package/templates/skills/fix/references/workflow-ci.md +28 -0
  310. package/templates/skills/fix/references/workflow-deep.md +122 -0
  311. package/templates/skills/fix/references/workflow-logs.md +72 -0
  312. package/templates/skills/fix/references/workflow-quick.md +59 -0
  313. package/templates/skills/fix/references/workflow-standard.md +111 -0
  314. package/templates/skills/fix/references/workflow-test.md +75 -0
  315. package/templates/skills/fix/references/workflow-types.md +33 -0
  316. package/templates/skills/fix/references/workflow-ui.md +75 -0
  317. package/templates/skills/frontend-design/SKILL.md +78 -91
  318. package/templates/skills/frontend-design/references/ai-multimodal-overview.md +6 -6
  319. package/templates/skills/frontend-design/references/animejs.md +395 -395
  320. package/templates/skills/frontend-design/references/asset-generation.md +4 -4
  321. package/templates/skills/frontend-design/references/visual-analysis-overview.md +1 -1
  322. package/templates/skills/frontend-design/references/workflow-3d.md +102 -0
  323. package/templates/skills/frontend-design/references/workflow-describe.md +87 -0
  324. package/templates/skills/frontend-design/references/workflow-immersive.md +87 -0
  325. package/templates/skills/frontend-design/references/workflow-quick.md +57 -0
  326. package/templates/skills/frontend-design/references/workflow-screenshot.md +63 -0
  327. package/templates/skills/frontend-design/references/workflow-video.md +74 -0
  328. package/templates/skills/frontend-development/SKILL.md +4 -3
  329. package/templates/skills/git/SKILL.md +114 -0
  330. package/templates/skills/git/references/branch-management.md +88 -0
  331. package/templates/skills/git/references/commit-standards.md +46 -0
  332. package/templates/skills/git/references/gh-cli-guide.md +109 -0
  333. package/templates/skills/git/references/safety-protocols.md +69 -0
  334. package/templates/skills/git/references/workflow-commit.md +58 -0
  335. package/templates/skills/git/references/workflow-merge.md +48 -0
  336. package/templates/skills/git/references/workflow-pr.md +58 -0
  337. package/templates/skills/git/references/workflow-push.md +52 -0
  338. package/templates/skills/gkg/SKILL.md +91 -0
  339. package/templates/skills/gkg/references/cli-commands.md +106 -0
  340. package/templates/skills/gkg/references/http-api.md +102 -0
  341. package/templates/skills/gkg/references/language-support.md +57 -0
  342. package/templates/skills/gkg/references/mcp-tools.md +99 -0
  343. package/templates/skills/google-adk-python/SKILL.md +91 -195
  344. package/templates/skills/google-adk-python/references/agent-types-and-architecture.md +128 -0
  345. package/templates/skills/google-adk-python/references/callbacks-plugins-observability.md +117 -0
  346. package/templates/skills/google-adk-python/references/deployment-cloud-run-vertex-gke.md +138 -0
  347. package/templates/skills/google-adk-python/references/evaluation-testing-cli.md +112 -0
  348. package/templates/skills/google-adk-python/references/multi-agent-and-a2a-protocol.md +145 -0
  349. package/templates/skills/google-adk-python/references/sessions-state-memory-artifacts.md +131 -0
  350. package/templates/skills/google-adk-python/references/tools-and-mcp-integration.md +146 -0
  351. package/templates/skills/install.ps1 +130 -26
  352. package/templates/skills/install.sh +383 -63
  353. package/templates/{commands/journal.md → skills/journal/SKILL.md} +5 -1
  354. package/templates/skills/kanban/SKILL.md +99 -0
  355. package/templates/skills/markdown-novel-viewer/SKILL.md +314 -0
  356. package/templates/skills/markdown-novel-viewer/assets/directory-browser.css +215 -0
  357. package/templates/skills/markdown-novel-viewer/assets/favicon.png +0 -0
  358. package/templates/skills/markdown-novel-viewer/assets/novel-theme.css +16 -0
  359. package/templates/skills/markdown-novel-viewer/assets/reader.js +838 -0
  360. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-base.css +54 -0
  361. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-components.css +180 -0
  362. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-content.css +176 -0
  363. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-header.css +217 -0
  364. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-mermaid.css +153 -0
  365. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-overlays.css +202 -0
  366. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-responsive.css +285 -0
  367. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-sidebar.css +359 -0
  368. package/templates/skills/markdown-novel-viewer/assets/styles/novel-theme-variables.css +56 -0
  369. package/templates/skills/markdown-novel-viewer/assets/template.html +149 -0
  370. package/templates/skills/markdown-novel-viewer/bun.lock +38 -0
  371. package/templates/skills/markdown-novel-viewer/package.json +15 -0
  372. package/templates/skills/markdown-novel-viewer/scripts/lib/http-server.cjs +434 -0
  373. package/templates/skills/markdown-novel-viewer/scripts/lib/markdown-renderer.cjs +335 -0
  374. package/templates/skills/markdown-novel-viewer/scripts/lib/plan-navigator.cjs +571 -0
  375. package/templates/skills/markdown-novel-viewer/scripts/lib/port-finder.cjs +48 -0
  376. package/templates/skills/markdown-novel-viewer/scripts/lib/process-mgr.cjs +150 -0
  377. package/templates/skills/markdown-novel-viewer/scripts/server.cjs +411 -0
  378. package/templates/skills/markdown-novel-viewer/scripts/tests/server.test.cjs +283 -0
  379. package/templates/skills/markdown-novel-viewer/tests/dashboard-assets.test.cjs +340 -0
  380. package/templates/skills/markdown-novel-viewer/tests/dashboard-renderer.test.cjs +404 -0
  381. package/templates/skills/markdown-novel-viewer/tests/http-server.test.cjs +271 -0
  382. package/templates/skills/markdown-novel-viewer/tests/run-tests.cjs +51 -0
  383. package/templates/skills/markdown-novel-viewer/tests/test-framework.cjs +154 -0
  384. package/templates/skills/markdown-novel-viewer/tests/verify-xss.cjs +90 -0
  385. package/templates/skills/mcp-builder/SKILL.md +3 -2
  386. package/templates/skills/mcp-builder/scripts/evaluation.py +9 -1
  387. package/templates/skills/mcp-management/SKILL.md +8 -7
  388. package/templates/skills/mcp-management/references/gemini-cli-integration.md +16 -10
  389. package/templates/skills/mcp-management/scripts/cli.ts +0 -0
  390. package/templates/skills/mcp-management/scripts/dist/analyze-tools.js +0 -0
  391. package/templates/skills/mcp-management/scripts/dist/cli.js +0 -0
  392. package/templates/skills/mcp-management/scripts/dist/mcp-client.js +0 -0
  393. package/templates/skills/mcp-management/scripts/mcp-client.ts +0 -0
  394. package/templates/skills/media-processing/SKILL.md +3 -2
  395. package/templates/skills/media-processing/scripts/batch-remove-background.sh +0 -0
  396. package/templates/skills/media-processing/scripts/batch_resize.py +0 -0
  397. package/templates/skills/media-processing/scripts/media_convert.py +0 -0
  398. package/templates/skills/media-processing/scripts/remove-background.sh +0 -0
  399. package/templates/skills/media-processing/scripts/remove-bg-node.js +0 -0
  400. package/templates/skills/media-processing/scripts/tests/test_batch_resize.py +0 -0
  401. package/templates/skills/media-processing/scripts/tests/test_media_convert.py +0 -0
  402. package/templates/skills/media-processing/scripts/tests/test_video_optimize.py +0 -0
  403. package/templates/skills/media-processing/scripts/video_optimize.py +0 -0
  404. package/templates/skills/mermaidjs-v11/SKILL.md +116 -0
  405. package/templates/skills/mermaidjs-v11/references/cli-usage.md +228 -0
  406. package/templates/skills/mermaidjs-v11/references/configuration.md +232 -0
  407. package/templates/skills/mermaidjs-v11/references/diagram-types.md +315 -0
  408. package/templates/skills/mermaidjs-v11/references/examples.md +344 -0
  409. package/templates/skills/mermaidjs-v11/references/integration.md +310 -0
  410. package/templates/skills/mintlify/SKILL.md +121 -0
  411. package/templates/skills/mintlify/references/ai-features-and-integrations-reference.md +756 -0
  412. package/templates/skills/mintlify/references/api-documentation-components-reference.md +873 -0
  413. package/templates/skills/mintlify/references/deployment-and-continuous-integration-reference.md +674 -0
  414. package/templates/skills/mintlify/references/docs-json-configuration-reference.md +724 -0
  415. package/templates/skills/mintlify/references/mdx-components-reference.md +551 -0
  416. package/templates/skills/mintlify/references/navigation-structure-and-organization-reference.md +775 -0
  417. package/templates/skills/mobile-development/SKILL.md +3 -2
  418. package/templates/skills/payment-integration/README.md +44 -12
  419. package/templates/skills/payment-integration/SKILL.md +82 -97
  420. package/templates/skills/payment-integration/references/creem/api.md +139 -0
  421. package/templates/skills/payment-integration/references/creem/checkouts.md +99 -0
  422. package/templates/skills/payment-integration/references/creem/licensing.md +136 -0
  423. package/templates/skills/payment-integration/references/creem/overview.md +65 -0
  424. package/templates/skills/payment-integration/references/creem/sdk.md +161 -0
  425. package/templates/skills/payment-integration/references/creem/subscriptions.md +129 -0
  426. package/templates/skills/payment-integration/references/creem/webhooks.md +120 -0
  427. package/templates/skills/payment-integration/references/implementation-workflows.md +43 -0
  428. package/templates/skills/payment-integration/references/multi-provider-order-management-patterns.md +821 -0
  429. package/templates/skills/payment-integration/references/paddle/api.md +116 -0
  430. package/templates/skills/payment-integration/references/paddle/best-practices.md +130 -0
  431. package/templates/skills/payment-integration/references/paddle/overview.md +57 -0
  432. package/templates/skills/payment-integration/references/paddle/paddle-js.md +106 -0
  433. package/templates/skills/payment-integration/references/paddle/sdk.md +131 -0
  434. package/templates/skills/payment-integration/references/paddle/subscriptions.md +118 -0
  435. package/templates/skills/payment-integration/references/paddle/webhooks.md +112 -0
  436. package/templates/skills/payment-integration/references/polar/best-practices.md +781 -361
  437. package/templates/skills/payment-integration/references/sepay/best-practices.md +870 -268
  438. package/templates/skills/payment-integration/references/stripe/stripe-best-practices.md +32 -0
  439. package/templates/skills/payment-integration/references/stripe/stripe-cli.md +148 -0
  440. package/templates/skills/payment-integration/references/stripe/stripe-js.md +116 -0
  441. package/templates/skills/payment-integration/references/stripe/stripe-sdks.md +84 -0
  442. package/templates/skills/payment-integration/references/stripe/stripe-upgrade.md +175 -0
  443. package/templates/skills/payment-integration/scripts/checkout-helper.js +0 -0
  444. package/templates/skills/payment-integration/scripts/polar-webhook-verify.js +0 -0
  445. package/templates/skills/payment-integration/scripts/sepay-webhook-verify.js +0 -0
  446. package/templates/skills/payment-integration/scripts/test-scripts.js +0 -0
  447. package/templates/skills/plan/SKILL.md +137 -0
  448. package/templates/skills/plan/references/archive-workflow.md +53 -0
  449. package/templates/skills/{planning → plan}/references/codebase-understanding.md +1 -1
  450. package/templates/skills/{planning → plan}/references/output-standards.md +15 -1
  451. package/templates/skills/{planning → plan}/references/plan-organization.md +12 -19
  452. package/templates/skills/plan/references/red-team-personas.md +69 -0
  453. package/templates/skills/plan/references/red-team-workflow.md +77 -0
  454. package/templates/skills/{planning → plan}/references/research-phase.md +2 -2
  455. package/templates/skills/plan/references/task-management.md +132 -0
  456. package/templates/skills/plan/references/validate-question-framework.md +80 -0
  457. package/templates/skills/plan/references/validate-workflow.md +65 -0
  458. package/templates/skills/plan/references/workflow-modes.md +145 -0
  459. package/templates/skills/plans-kanban/SKILL.md +167 -0
  460. package/templates/skills/plans-kanban/assets/dashboard-template.html +119 -0
  461. package/templates/skills/plans-kanban/assets/dashboard.css +1594 -0
  462. package/templates/skills/plans-kanban/assets/dashboard.js +596 -0
  463. package/templates/skills/plans-kanban/assets/favicon.png +0 -0
  464. package/templates/skills/plans-kanban/package.json +13 -0
  465. package/templates/skills/plans-kanban/scripts/lib/dashboard-renderer.cjs +884 -0
  466. package/templates/skills/plans-kanban/scripts/lib/http-server.cjs +310 -0
  467. package/templates/skills/plans-kanban/scripts/lib/plan-metadata-extractor.cjs +489 -0
  468. package/templates/skills/plans-kanban/scripts/lib/plan-parser.cjs +175 -0
  469. package/templates/skills/plans-kanban/scripts/lib/plan-scanner.cjs +272 -0
  470. package/templates/skills/plans-kanban/scripts/lib/port-finder.cjs +48 -0
  471. package/templates/skills/plans-kanban/scripts/lib/process-mgr.cjs +128 -0
  472. package/templates/skills/plans-kanban/scripts/server.cjs +260 -0
  473. package/templates/skills/preview/SKILL.md +75 -0
  474. package/templates/skills/preview/references/generation-modes.md +95 -0
  475. package/templates/skills/preview/references/view-mode.md +42 -0
  476. package/templates/skills/problem-solving/SKILL.md +3 -2
  477. package/templates/skills/project-management/SKILL.md +122 -0
  478. package/templates/skills/project-management/references/documentation-triggers.md +60 -0
  479. package/templates/skills/project-management/references/hydration-workflow.md +85 -0
  480. package/templates/skills/project-management/references/progress-tracking.md +96 -0
  481. package/templates/skills/project-management/references/reporting-patterns.md +94 -0
  482. package/templates/skills/project-management/references/task-operations.md +85 -0
  483. package/templates/skills/react-best-practices/AGENTS.md +2249 -0
  484. package/templates/skills/react-best-practices/README.md +123 -0
  485. package/templates/skills/react-best-practices/SKILL.md +122 -0
  486. package/templates/skills/react-best-practices/metadata.json +15 -0
  487. package/templates/skills/react-best-practices/rules/_sections.md +46 -0
  488. package/templates/skills/react-best-practices/rules/_template.md +28 -0
  489. package/templates/skills/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  490. package/templates/skills/react-best-practices/rules/advanced-use-latest.md +49 -0
  491. package/templates/skills/react-best-practices/rules/async-api-routes.md +38 -0
  492. package/templates/skills/react-best-practices/rules/async-defer-await.md +80 -0
  493. package/templates/skills/react-best-practices/rules/async-dependencies.md +36 -0
  494. package/templates/skills/react-best-practices/rules/async-parallel.md +28 -0
  495. package/templates/skills/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  496. package/templates/skills/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  497. package/templates/skills/react-best-practices/rules/bundle-conditional.md +31 -0
  498. package/templates/skills/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  499. package/templates/skills/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  500. package/templates/skills/react-best-practices/rules/bundle-preload.md +50 -0
  501. package/templates/skills/react-best-practices/rules/client-event-listeners.md +74 -0
  502. package/templates/skills/react-best-practices/rules/client-swr-dedup.md +56 -0
  503. package/templates/skills/react-best-practices/rules/js-batch-dom-css.md +82 -0
  504. package/templates/skills/react-best-practices/rules/js-cache-function-results.md +80 -0
  505. package/templates/skills/react-best-practices/rules/js-cache-property-access.md +28 -0
  506. package/templates/skills/react-best-practices/rules/js-cache-storage.md +70 -0
  507. package/templates/skills/react-best-practices/rules/js-combine-iterations.md +32 -0
  508. package/templates/skills/react-best-practices/rules/js-early-exit.md +50 -0
  509. package/templates/skills/react-best-practices/rules/js-hoist-regexp.md +45 -0
  510. package/templates/skills/react-best-practices/rules/js-index-maps.md +37 -0
  511. package/templates/skills/react-best-practices/rules/js-length-check-first.md +49 -0
  512. package/templates/skills/react-best-practices/rules/js-min-max-loop.md +82 -0
  513. package/templates/skills/react-best-practices/rules/js-set-map-lookups.md +24 -0
  514. package/templates/skills/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  515. package/templates/skills/react-best-practices/rules/rendering-activity.md +26 -0
  516. package/templates/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  517. package/templates/skills/react-best-practices/rules/rendering-conditional-render.md +40 -0
  518. package/templates/skills/react-best-practices/rules/rendering-content-visibility.md +38 -0
  519. package/templates/skills/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  520. package/templates/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  521. package/templates/skills/react-best-practices/rules/rendering-svg-precision.md +28 -0
  522. package/templates/skills/react-best-practices/rules/rerender-defer-reads.md +39 -0
  523. package/templates/skills/react-best-practices/rules/rerender-dependencies.md +45 -0
  524. package/templates/skills/react-best-practices/rules/rerender-derived-state.md +29 -0
  525. package/templates/skills/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  526. package/templates/skills/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  527. package/templates/skills/react-best-practices/rules/rerender-memo.md +44 -0
  528. package/templates/skills/react-best-practices/rules/rerender-transitions.md +40 -0
  529. package/templates/skills/react-best-practices/rules/server-after-nonblocking.md +73 -0
  530. package/templates/skills/react-best-practices/rules/server-cache-lru.md +41 -0
  531. package/templates/skills/react-best-practices/rules/server-cache-react.md +26 -0
  532. package/templates/skills/react-best-practices/rules/server-parallel-fetching.md +79 -0
  533. package/templates/skills/react-best-practices/rules/server-serialization.md +38 -0
  534. package/templates/skills/remotion/SKILL.md +44 -0
  535. package/templates/skills/remotion/rules/3d.md +86 -0
  536. package/templates/skills/remotion/rules/animations.md +29 -0
  537. package/templates/skills/remotion/rules/assets/charts-bar-chart.tsx +173 -0
  538. package/templates/skills/remotion/rules/assets/text-animations-typewriter.tsx +100 -0
  539. package/templates/skills/remotion/rules/assets/text-animations-word-highlight.tsx +108 -0
  540. package/templates/skills/remotion/rules/assets.md +78 -0
  541. package/templates/skills/remotion/rules/audio.md +172 -0
  542. package/templates/skills/remotion/rules/calculate-metadata.md +104 -0
  543. package/templates/skills/remotion/rules/can-decode.md +75 -0
  544. package/templates/skills/remotion/rules/charts.md +58 -0
  545. package/templates/skills/remotion/rules/compositions.md +146 -0
  546. package/templates/skills/remotion/rules/display-captions.md +126 -0
  547. package/templates/skills/remotion/rules/extract-frames.md +229 -0
  548. package/templates/skills/remotion/rules/fonts.md +152 -0
  549. package/templates/skills/remotion/rules/get-audio-duration.md +58 -0
  550. package/templates/skills/remotion/rules/get-video-dimensions.md +68 -0
  551. package/templates/skills/remotion/rules/get-video-duration.md +58 -0
  552. package/templates/skills/remotion/rules/gifs.md +138 -0
  553. package/templates/skills/remotion/rules/images.md +130 -0
  554. package/templates/skills/remotion/rules/import-srt-captions.md +67 -0
  555. package/templates/skills/remotion/rules/lottie.md +68 -0
  556. package/templates/skills/remotion/rules/measuring-dom-nodes.md +35 -0
  557. package/templates/skills/remotion/rules/measuring-text.md +143 -0
  558. package/templates/skills/remotion/rules/sequencing.md +106 -0
  559. package/templates/skills/remotion/rules/tailwind.md +11 -0
  560. package/templates/skills/remotion/rules/text-animations.md +20 -0
  561. package/templates/skills/remotion/rules/timing.md +179 -0
  562. package/templates/skills/remotion/rules/transcribe-captions.md +19 -0
  563. package/templates/skills/remotion/rules/transitions.md +122 -0
  564. package/templates/skills/remotion/rules/trimming.md +53 -0
  565. package/templates/skills/remotion/rules/videos.md +171 -0
  566. package/templates/skills/repomix/SKILL.md +3 -2
  567. package/templates/skills/repomix/scripts/repomix_batch.py +0 -0
  568. package/templates/skills/research/SKILL.md +9 -6
  569. package/templates/skills/scout/SKILL.md +89 -0
  570. package/templates/skills/scout/references/external-scouting.md +140 -0
  571. package/templates/skills/scout/references/internal-scouting.md +119 -0
  572. package/templates/skills/scout/references/task-management-scouting.md +125 -0
  573. package/templates/skills/sequential-thinking/SKILL.md +3 -2
  574. package/templates/skills/sequential-thinking/scripts/format-thought.js +0 -0
  575. package/templates/skills/sequential-thinking/scripts/process-thought.js +0 -0
  576. package/templates/skills/shader/SKILL.md +113 -0
  577. package/templates/skills/shader/references/glsl-cellular-voronoi-worley-noise-patterns.md +142 -0
  578. package/templates/skills/shader/references/glsl-colors-rgb-hsb-gradients-mixing-color-spaces.md +143 -0
  579. package/templates/skills/shader/references/glsl-fbm-fractional-brownian-motion-turbulence-octaves.md +146 -0
  580. package/templates/skills/shader/references/glsl-fundamentals-data-types-vectors-precision-coordinates.md +104 -0
  581. package/templates/skills/shader/references/glsl-noise-random-perlin-simplex-cellular-voronoi.md +115 -0
  582. package/templates/skills/shader/references/glsl-pattern-symmetry-truchet-domain-warping.md +134 -0
  583. package/templates/skills/shader/references/glsl-patterns-tiling-fract-matrices-transformations.md +133 -0
  584. package/templates/skills/shader/references/glsl-procedural-textures-clouds-marble-wood-terrain.md +144 -0
  585. package/templates/skills/shader/references/glsl-shader-builtin-functions-complete-api-reference.md +112 -0
  586. package/templates/skills/shader/references/glsl-shapes-polygon-star-polar-sdf-combinations.md +124 -0
  587. package/templates/skills/shader/references/glsl-shapes-sdf-circles-rectangles-polar-distance-fields.md +106 -0
  588. package/templates/skills/shader/references/glsl-shaping-functions-step-smoothstep-curves-interpolation.md +141 -0
  589. package/templates/skills/shopify/SKILL.md +3 -2
  590. package/templates/skills/shopify/scripts/shopify_init.py +5 -5
  591. package/templates/skills/skill-creator/SKILL.md +91 -238
  592. package/templates/skills/skill-creator/references/benchmark-optimization-guide.md +86 -0
  593. package/templates/skills/skill-creator/references/distribution-guide.md +79 -0
  594. package/templates/skills/skill-creator/references/mcp-skills-integration.md +71 -0
  595. package/templates/skills/skill-creator/references/metadata-quality-criteria.md +76 -0
  596. package/templates/skills/skill-creator/references/plugin-marketplace-hosting.md +104 -0
  597. package/templates/skills/skill-creator/references/plugin-marketplace-overview.md +89 -0
  598. package/templates/skills/skill-creator/references/plugin-marketplace-schema.md +93 -0
  599. package/templates/skills/skill-creator/references/plugin-marketplace-sources.md +103 -0
  600. package/templates/skills/skill-creator/references/plugin-marketplace-troubleshooting.md +76 -0
  601. package/templates/skills/skill-creator/references/script-quality-criteria.md +106 -0
  602. package/templates/skills/skill-creator/references/skill-anatomy-and-requirements.md +76 -0
  603. package/templates/skills/skill-creator/references/skill-creation-workflow.md +95 -0
  604. package/templates/skills/skill-creator/references/skill-design-patterns.md +75 -0
  605. package/templates/skills/skill-creator/references/skillmark-benchmark-criteria.md +102 -0
  606. package/templates/skills/skill-creator/references/structure-organization-criteria.md +114 -0
  607. package/templates/skills/skill-creator/references/testing-and-iteration.md +78 -0
  608. package/templates/skills/skill-creator/references/token-efficiency-criteria.md +74 -0
  609. package/templates/skills/skill-creator/references/troubleshooting-guide.md +80 -0
  610. package/templates/skills/skill-creator/references/validation-checklist.md +83 -0
  611. package/templates/skills/skill-creator/references/writing-effective-instructions.md +88 -0
  612. package/templates/skills/skill-creator/references/yaml-frontmatter-reference.md +91 -0
  613. package/templates/skills/skill-creator/scripts/debug.zip +0 -0
  614. package/templates/skills/skill-creator/scripts/encoding_utils.py +36 -0
  615. package/templates/skills/skill-creator/scripts/init_skill.py +9 -4
  616. package/templates/skills/skill-creator/scripts/package_skill.py +5 -0
  617. package/templates/skills/skill-creator/scripts/quick_validate.py +6 -2
  618. package/templates/skills/tanstack/SKILL.md +141 -0
  619. package/templates/skills/tanstack/references/tanstack-ai.md +97 -0
  620. package/templates/skills/tanstack/references/tanstack-form.md +125 -0
  621. package/templates/skills/tanstack/references/tanstack-start.md +100 -0
  622. package/templates/skills/team/SKILL.md +285 -0
  623. package/templates/skills/team/references/agent-teams-controls-and-modes.md +107 -0
  624. package/templates/skills/team/references/agent-teams-examples-and-best-practices.md +182 -0
  625. package/templates/skills/team/references/agent-teams-official-docs.md +175 -0
  626. package/templates/skills/template-skill/SKILL.md +1 -1
  627. package/templates/skills/test/SKILL.md +109 -0
  628. package/templates/skills/test/references/report-format.md +58 -0
  629. package/templates/skills/test/references/test-execution-workflow.md +103 -0
  630. package/templates/skills/test/references/ui-testing-workflow.md +65 -0
  631. package/templates/skills/threejs/SKILL.md +106 -53
  632. package/templates/skills/threejs/data/api-reference.csv +61 -0
  633. package/templates/skills/threejs/data/categories.csv +14 -0
  634. package/templates/skills/threejs/data/examples-all.csv +557 -0
  635. package/templates/skills/threejs/data/use-cases.csv +21 -0
  636. package/templates/skills/threejs/references/00-fundamentals.md +487 -0
  637. package/templates/skills/threejs/references/11-materials-advanced.md +1 -1
  638. package/templates/skills/threejs/references/11-materials.md +519 -0
  639. package/templates/skills/threejs/references/17-shader.md +641 -0
  640. package/templates/skills/threejs/references/18-geometry.md +547 -0
  641. package/templates/skills/threejs/scripts/core.py +236 -0
  642. package/templates/skills/threejs/scripts/extract_examples.py +688 -0
  643. package/templates/skills/threejs/scripts/generate_csv_from_json.py +135 -0
  644. package/templates/skills/threejs/scripts/search.py +77 -0
  645. package/templates/skills/ui-styling/SKILL.md +3 -2
  646. package/templates/skills/ui-styling/scripts/shadcn_add.py +0 -0
  647. package/templates/skills/ui-styling/scripts/tailwind_config_gen.py +1 -1
  648. package/templates/skills/ui-ux-pro-max/SKILL.md +69 -32
  649. package/templates/skills/ui-ux-pro-max/data/charts.csv +25 -25
  650. package/templates/skills/ui-ux-pro-max/data/colors.csv +96 -96
  651. package/templates/skills/ui-ux-pro-max/data/landing.csv +30 -30
  652. package/templates/skills/ui-ux-pro-max/data/products.csv +96 -96
  653. package/templates/skills/ui-ux-pro-max/data/prompts.csv +20 -20
  654. package/templates/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
  655. package/templates/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
  656. package/templates/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
  657. package/templates/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -52
  658. package/templates/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
  659. package/templates/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
  660. package/templates/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
  661. package/templates/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
  662. package/templates/skills/ui-ux-pro-max/data/styles.csv +58 -58
  663. package/templates/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  664. package/templates/skills/ui-ux-pro-max/data/ux-guidelines.csv +99 -99
  665. package/templates/skills/ui-ux-pro-max/scripts/design_system.py +494 -0
  666. package/templates/skills/ui-ux-pro-max/scripts/search.py +84 -61
  667. package/templates/skills/use-mcp/SKILL.md +42 -0
  668. package/templates/skills/watzup/SKILL.md +12 -0
  669. package/templates/skills/web-design-guidelines/SKILL.md +36 -0
  670. package/templates/skills/web-frameworks/SKILL.md +4 -3
  671. package/templates/skills/web-frameworks/scripts/nextjs_init.py +13 -13
  672. package/templates/skills/web-frameworks/scripts/turborepo_migrate.py +0 -0
  673. package/templates/skills/web-testing/SKILL.md +97 -0
  674. package/templates/skills/web-testing/references/accessibility-testing.md +84 -0
  675. package/templates/skills/web-testing/references/api-testing.md +78 -0
  676. package/templates/skills/web-testing/references/ci-cd-testing-workflows.md +121 -0
  677. package/templates/skills/web-testing/references/component-testing.md +94 -0
  678. package/templates/skills/web-testing/references/contract-testing.md +146 -0
  679. package/templates/skills/web-testing/references/cross-browser-checklist.md +72 -0
  680. package/templates/skills/web-testing/references/database-testing.md +139 -0
  681. package/templates/skills/web-testing/references/e2e-testing-playwright.md +119 -0
  682. package/templates/skills/web-testing/references/functional-testing-checklist.md +88 -0
  683. package/templates/skills/web-testing/references/interactive-testing-patterns.md +89 -0
  684. package/templates/skills/web-testing/references/load-testing-k6.md +93 -0
  685. package/templates/skills/web-testing/references/mobile-gesture-testing.md +85 -0
  686. package/templates/skills/web-testing/references/performance-core-web-vitals.md +124 -0
  687. package/templates/skills/web-testing/references/playwright-component-testing.md +115 -0
  688. package/templates/skills/web-testing/references/pre-release-checklist.md +75 -0
  689. package/templates/skills/web-testing/references/security-checklists.md +81 -0
  690. package/templates/skills/web-testing/references/security-testing-overview.md +92 -0
  691. package/templates/skills/web-testing/references/shadow-dom-testing.md +70 -0
  692. package/templates/skills/web-testing/references/test-data-management.md +131 -0
  693. package/templates/skills/web-testing/references/test-flakiness-mitigation.md +86 -0
  694. package/templates/skills/web-testing/references/testing-pyramid-strategy.md +76 -0
  695. package/templates/skills/web-testing/references/unit-integration-testing.md +138 -0
  696. package/templates/skills/web-testing/references/visual-regression.md +92 -0
  697. package/templates/skills/web-testing/references/vulnerability-payloads.md +93 -0
  698. package/templates/skills/web-testing/scripts/analyze-test-results.js +280 -0
  699. package/templates/skills/web-testing/scripts/init-playwright.js +233 -0
  700. package/templates/skills/worktree/SKILL.md +96 -0
  701. package/templates/skills/worktree/scripts/worktree.cjs +916 -0
  702. package/templates/skills/worktree/scripts/worktree.test.cjs +792 -0
  703. package/templates/statusline.cjs +477 -244
  704. package/templates/statusline.ps1 +0 -1
  705. package/templates/statusline.sh +0 -1
  706. package/templates/agents/README.md +0 -172
  707. package/templates/agents/copywriter.md +0 -113
  708. package/templates/agents/database-admin.md +0 -97
  709. package/templates/agents/scout-external.md +0 -146
  710. package/templates/agents/scout.md +0 -260
  711. package/templates/commands/README.md +0 -251
  712. package/templates/commands/bootstrap/auto/fast.md +0 -111
  713. package/templates/commands/bootstrap/auto/parallel.md +0 -66
  714. package/templates/commands/bootstrap/auto.md +0 -115
  715. package/templates/commands/bootstrap.md +0 -137
  716. package/templates/commands/build.md +0 -39
  717. package/templates/commands/checkpoint.md +0 -156
  718. package/templates/commands/code/auto.md +0 -170
  719. package/templates/commands/code/no-test.md +0 -158
  720. package/templates/commands/code/parallel.md +0 -55
  721. package/templates/commands/code-simplifier.md +0 -71
  722. package/templates/commands/code.md +0 -176
  723. package/templates/commands/compact.md +0 -57
  724. package/templates/commands/content/cro.md +0 -43
  725. package/templates/commands/content/enhance.md +0 -14
  726. package/templates/commands/content/fast.md +0 -13
  727. package/templates/commands/content/good.md +0 -16
  728. package/templates/commands/context.md +0 -48
  729. package/templates/commands/cook/auto/fast.md +0 -26
  730. package/templates/commands/cook/auto/parallel.md +0 -49
  731. package/templates/commands/cook/auto.md +0 -15
  732. package/templates/commands/cook/fast.md +0 -47
  733. package/templates/commands/cook/hard.md +0 -80
  734. package/templates/commands/cook/parallel.md +0 -90
  735. package/templates/commands/cook.md +0 -105
  736. package/templates/commands/create-feature.md +0 -48
  737. package/templates/commands/db-migrate.md +0 -52
  738. package/templates/commands/debug.md +0 -13
  739. package/templates/commands/design/3d.md +0 -83
  740. package/templates/commands/design/describe.md +0 -23
  741. package/templates/commands/design/fast.md +0 -31
  742. package/templates/commands/design/good.md +0 -35
  743. package/templates/commands/design/screenshot.md +0 -34
  744. package/templates/commands/design/video.md +0 -34
  745. package/templates/commands/docs/init.md +0 -39
  746. package/templates/commands/docs/summarize.md +0 -31
  747. package/templates/commands/docs/update.md +0 -57
  748. package/templates/commands/feature.md +0 -62
  749. package/templates/commands/fix/ci.md +0 -17
  750. package/templates/commands/fix/fast.md +0 -19
  751. package/templates/commands/fix/hard.md +0 -39
  752. package/templates/commands/fix/logs.md +0 -26
  753. package/templates/commands/fix/parallel.md +0 -54
  754. package/templates/commands/fix/test.md +0 -20
  755. package/templates/commands/fix/types.md +0 -9
  756. package/templates/commands/fix/ui.md +0 -48
  757. package/templates/commands/fix-issue.md +0 -177
  758. package/templates/commands/fix.md +0 -43
  759. package/templates/commands/generate-dto.md +0 -67
  760. package/templates/commands/git/cm.md +0 -5
  761. package/templates/commands/git/cp.md +0 -4
  762. package/templates/commands/git/merge.md +0 -40
  763. package/templates/commands/git/pr.md +0 -48
  764. package/templates/commands/integrate/polar.md +0 -28
  765. package/templates/commands/integrate/sepay.md +0 -28
  766. package/templates/commands/investigate.md +0 -324
  767. package/templates/commands/lint.md +0 -47
  768. package/templates/commands/migration.md +0 -111
  769. package/templates/commands/performance.md +0 -110
  770. package/templates/commands/plan/ci.md +0 -33
  771. package/templates/commands/plan/cro.md +0 -69
  772. package/templates/commands/plan/fast.md +0 -86
  773. package/templates/commands/plan/hard.md +0 -103
  774. package/templates/commands/plan/parallel.md +0 -152
  775. package/templates/commands/plan/preview.md +0 -40
  776. package/templates/commands/plan/two.md +0 -52
  777. package/templates/commands/plan/validate.md +0 -132
  778. package/templates/commands/plan.md +0 -36
  779. package/templates/commands/pr.md +0 -49
  780. package/templates/commands/preview.md +0 -87
  781. package/templates/commands/release-notes.md +0 -144
  782. package/templates/commands/review/post-task.md +0 -157
  783. package/templates/commands/review-changes.md +0 -46
  784. package/templates/commands/review.md +0 -56
  785. package/templates/commands/scout/ext.md +0 -35
  786. package/templates/commands/scout.md +0 -283
  787. package/templates/commands/security.md +0 -119
  788. package/templates/commands/skill/add.md +0 -36
  789. package/templates/commands/skill/create.md +0 -29
  790. package/templates/commands/skill/fix-logs.md +0 -22
  791. package/templates/commands/skill/optimize/auto.md +0 -25
  792. package/templates/commands/skill/optimize.md +0 -34
  793. package/templates/commands/skill/plan.md +0 -45
  794. package/templates/commands/worktree.md +0 -126
  795. package/templates/hooks/.python-cache.json +0 -1
  796. package/templates/hooks/README.md +0 -246
  797. package/templates/hooks/backend-csharp-context.cjs +0 -223
  798. package/templates/hooks/design-system-context.cjs +0 -185
  799. package/templates/hooks/frontend-typescript-context.cjs +0 -233
  800. package/templates/hooks/lib/ck-paths.cjs +0 -110
  801. package/templates/hooks/lib/context-tracker.cjs +0 -335
  802. package/templates/hooks/notify-waiting.js +0 -117
  803. package/templates/hooks/post-edit-prettier.cjs +0 -189
  804. package/templates/hooks/post-task-review.cjs +0 -142
  805. package/templates/hooks/scss-styling-context.cjs +0 -213
  806. package/templates/hooks/session-end.cjs +0 -35
  807. package/templates/hooks/tests/test-context-tracker.cjs +0 -454
  808. package/templates/hooks/tests/test-scout-block.js +0 -163
  809. package/templates/hooks/workflow-router.cjs +0 -326
  810. package/templates/hooks/write-compact-marker.cjs +0 -159
  811. package/templates/memory/session-log.md +0 -186
  812. package/templates/router/README.md +0 -294
  813. package/templates/router/agents-guide.md +0 -38
  814. package/templates/router/commands-guide.md +0 -122
  815. package/templates/router/decision-flow.md +0 -92
  816. package/templates/router/skills-guide.md +0 -127
  817. package/templates/router/workflows-guide.md +0 -68
  818. package/templates/scripts/__pycache__/win_compat.cpython-312.pyc +0 -0
  819. package/templates/scripts/plan-preview.cjs +0 -921
  820. package/templates/skills/arch-cross-service-integration/SKILL.md +0 -48
  821. package/templates/skills/arch-performance-optimization/SKILL.md +0 -306
  822. package/templates/skills/arch-security-review/SKILL.md +0 -344
  823. package/templates/skills/branch-comparison/SKILL.md +0 -150
  824. package/templates/skills/bug-diagnosis/SKILL.md +0 -309
  825. package/templates/skills/claude-code/references/advanced-features.md +0 -399
  826. package/templates/skills/claude-code/references/agent-skills.md +0 -399
  827. package/templates/skills/claude-code/references/api-reference.md +0 -498
  828. package/templates/skills/claude-code/references/best-practices.md +0 -447
  829. package/templates/skills/claude-code/references/cicd-integration.md +0 -428
  830. package/templates/skills/claude-code/references/common-workflows.md +0 -119
  831. package/templates/skills/claude-code/references/configuration.md +0 -480
  832. package/templates/skills/claude-code/references/enterprise-features.md +0 -472
  833. package/templates/skills/claude-code/references/getting-started.md +0 -252
  834. package/templates/skills/claude-code/references/hooks-and-plugins.md +0 -444
  835. package/templates/skills/claude-code/references/hooks-comprehensive.md +0 -622
  836. package/templates/skills/claude-code/references/ide-integration.md +0 -316
  837. package/templates/skills/claude-code/references/mcp-integration.md +0 -386
  838. package/templates/skills/claude-code/references/slash-commands.md +0 -489
  839. package/templates/skills/claude-code/references/troubleshooting.md +0 -456
  840. package/templates/skills/claude-code/skill.md +0 -60
  841. package/templates/skills/debugging/SKILL.md +0 -84
  842. package/templates/skills/developer-growth-analysis/SKILL.md +0 -322
  843. package/templates/skills/documentation/SKILL.md +0 -134
  844. package/templates/skills/domain-name-brainstormer/SKILL.md +0 -212
  845. package/templates/skills/dual-pass-review/SKILL.md +0 -249
  846. package/templates/skills/feature-docs/SKILL.md +0 -294
  847. package/templates/skills/feature-implementation/SKILL.md +0 -262
  848. package/templates/skills/feature-investigation/SKILL.md +0 -346
  849. package/templates/skills/frontend-design-pro/SKILL.md +0 -58
  850. package/templates/skills/package-upgrade/SKILL.md +0 -189
  851. package/templates/skills/plan-analysis/SKILL.md +0 -191
  852. package/templates/skills/planning/SKILL.md +0 -115
  853. package/templates/skills/planning-with-files/SKILL.md +0 -160
  854. package/templates/skills/planning-with-files/examples.md +0 -202
  855. package/templates/skills/planning-with-files/reference.md +0 -110
  856. package/templates/skills/project-index/SKILL.md +0 -97
  857. package/templates/skills/project-index/scripts/scan-structure.js +0 -417
  858. package/templates/skills/project-index/scripts/scan_structure.py +0 -450
  859. package/templates/skills/readme-improvement/SKILL.md +0 -177
  860. package/templates/skills/skill-share/SKILL.md +0 -80
  861. package/templates/skills/tasks-code-review/SKILL.md +0 -298
  862. package/templates/skills/tasks-documentation/SKILL.md +0 -328
  863. package/templates/skills/tasks-spec-update/SKILL.md +0 -318
  864. package/templates/skills/tasks-test-generation/SKILL.md +0 -433
  865. package/templates/skills/test-generation/SKILL.md +0 -203
  866. package/templates/skills/webapp-testing/LICENSE.txt +0 -202
  867. package/templates/skills/webapp-testing/SKILL.md +0 -96
  868. package/templates/skills/webapp-testing/examples/console_logging.py +0 -35
  869. package/templates/skills/webapp-testing/examples/element_discovery.py +0 -40
  870. package/templates/skills/webapp-testing/examples/static_html_automation.py +0 -33
  871. package/templates/skills/webapp-testing/scripts/with_server.py +0 -106
  872. package/templates/workflows/README.md +0 -241
  873. package/templates/workflows/orchestration-protocol.md +0 -16
  874. /package/templates/{commands → command-archive}/coding-level.md +0 -0
  875. /package/templates/{commands → command-archive}/review/codebase.md +0 -0
  876. /package/templates/{commands → command-archive}/test.md +0 -0
  877. /package/templates/{commands → command-archive}/watzup.md +0 -0
  878. /package/templates/hooks/scout-block/vendor/{ignore.js → ignore.cjs} +0 -0
  879. /package/templates/{workflows → rules}/documentation-management.md +0 -0
  880. /package/templates/skills/{debugging → debug}/references/defense-in-depth.md +0 -0
  881. /package/templates/skills/{debugging → debug}/references/root-cause-tracing.md +0 -0
  882. /package/templates/skills/{debugging → debug}/references/systematic-debugging.md +0 -0
  883. /package/templates/skills/{debugging → debug}/references/verification.md +0 -0
  884. /package/templates/skills/{debugging → debug}/scripts/find-polluter.sh +0 -0
  885. /package/templates/skills/{debugging → debug}/scripts/find-polluter.test.md +0 -0
  886. /package/templates/skills/{planning → plan}/references/solution-design.md +0 -0
@@ -1,869 +1,33 @@
1
1
  #!/usr/bin/env python3
2
2
  """
3
- ClaudeKit Help Command - All-in-one guide with dynamic command discovery.
4
- Scans .claude/commands/ directory to build catalog at runtime.
3
+ Backward-compatible wrapper for ck-help.
5
4
 
6
- Usage:
7
- python ck-help.py # Overview with quick start
8
- python ck-help.py fix # Category guide with workflow
9
- python ck-help.py plan/fast # Command details
10
- python ck-help.py debug login error # Task recommendations
11
- python ck-help.py auth # Search (unknown word)
5
+ Canonical implementation lives at:
6
+ .claude/skills/ck-help/scripts/ck-help.py
12
7
  """
13
8
 
9
+ import runpy
14
10
  import sys
15
- import re
16
- import io
17
11
  from pathlib import Path
18
12
 
19
- # Fix Windows console encoding for Unicode characters
20
- if sys.platform == 'win32':
21
- sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace')
22
13
 
14
+ def main() -> int:
15
+ target = (
16
+ Path(__file__).resolve().parent.parent
17
+ / "skills"
18
+ / "ck-help"
19
+ / "scripts"
20
+ / "ck-help.py"
21
+ )
23
22
 
24
- # Output type markers for LLM presentation guidance
25
- # Format: @CK_OUTPUT_TYPE:<type>
26
- # Types:
27
- # - comprehensive-docs: Full documentation, show verbatim + add context
28
- # - category-guide: Workflow guide, show full + explain workflow
29
- # - command-details: Single command, show + offer to run
30
- # - search-results: Search matches, show + offer alternatives
31
- # - task-recommendations: Task-based suggestions, explain reasoning
32
- OUTPUT_TYPES = {
33
- "comprehensive-docs": "Show FULL output verbatim, then ADD helpful context, examples, and real-world tips",
34
- "category-guide": "Show complete workflow, then ENHANCE with practical usage scenarios",
35
- "command-details": "Show command info, then ADD usage examples and related commands",
36
- "search-results": "Show all matches, then HELP user narrow down or explore",
37
- "task-recommendations": "Show recommendations, then EXPLAIN why these fit and offer to start",
38
- }
23
+ if not target.exists():
24
+ print(f"Error: canonical ck-help script not found: {target}", file=sys.stderr)
25
+ return 1
39
26
 
40
-
41
- def emit_output_type(output_type: str) -> None:
42
- """Emit output type marker for LLM presentation guidance."""
43
- print(f"@CK_OUTPUT_TYPE:{output_type}")
44
- print()
45
-
46
-
47
- # Task keyword mappings for intent detection
48
- TASK_MAPPINGS = {
49
- "fix": ["fix", "bug", "error", "broken", "issue", "debug", "crash", "fail", "wrong", "not working"],
50
- "plan": ["plan", "design", "architect", "research", "think", "analyze", "strategy", "how to", "approach"],
51
- "cook": ["implement", "build", "create", "add", "feature", "code", "develop", "make", "write"],
52
- "bootstrap": ["start", "new", "init", "setup", "project", "scaffold", "generate", "begin"],
53
- "test": ["test", "check", "verify", "validate", "spec", "unit", "integration", "coverage"],
54
- "docs": ["document", "readme", "docs", "explain", "comment", "documentation"],
55
- "git": ["commit", "push", "pr", "merge", "branch", "pull", "request", "git"],
56
- "design": ["ui", "ux", "style", "layout", "visual", "css", "component", "page", "responsive"],
57
- "review": ["review", "audit", "inspect", "quality", "refactor", "clean"],
58
- "content": ["copy", "text", "marketing", "content", "blog", "seo"],
59
- "integrate": ["integrate", "payment", "api", "connect", "webhook", "third-party"],
60
- "skill": ["skill", "agent", "automate", "workflow"],
61
- "scout": ["find", "search", "locate", "explore", "scan", "where"],
62
- "config": ["config", "configure", "settings", "ck.json", ".ck.json", "setup", "locale", "language", "paths"],
63
- "coding-level": ["coding", "level", "eli5", "junior", "senior", "lead", "god", "beginner", "expert", "teach", "learn", "explain"],
64
- }
65
-
66
- # Category workflows and tips
67
- CATEGORY_GUIDES = {
68
- "fix": {
69
- "title": "Fixing Issues",
70
- "workflow": [
71
- ("Start", "`/fix` \"describe your issue\""),
72
- ("If stuck", "`/debug` \"more details\""),
73
- ("Verify", "`/test`"),
74
- ],
75
- "tip": "Include error messages for better results",
76
- },
77
- "plan": {
78
- "title": "Planning",
79
- "workflow": [
80
- ("Quick plan", "`/plan/fast` \"your task\""),
81
- ("Deep research", "`/plan/hard` \"complex task\""),
82
- ("Validate", "`/plan/validate` (interview to confirm decisions)"),
83
- ("Execute plan", "`/code` (runs the plan)"),
84
- ],
85
- "tip": "Use /plan/validate to confirm assumptions before coding",
86
- },
87
- "cook": {
88
- "title": "Implementation",
89
- "workflow": [
90
- ("Quick impl", "`/cook` \"your feature\""),
91
- ("Auto mode", "`/cook/auto` \"trust me bro\""),
92
- ("Test", "`/test`"),
93
- ],
94
- "tip": "Cook is standalone - it plans internally. Use /plan → /code for explicit planning",
95
- },
96
- "bootstrap": {
97
- "title": "Project Setup",
98
- "workflow": [
99
- ("Quick start", "`/bootstrap/auto/fast` \"requirements\""),
100
- ("Full setup", "`/bootstrap` \"detailed requirements\""),
101
- ],
102
- "tip": "Include tech stack preferences in description",
103
- },
104
- "test": {
105
- "title": "Testing",
106
- "workflow": [
107
- ("Run tests", "`/test`"),
108
- ("Fix failures", "`/fix/test`"),
109
- ],
110
- "tip": "Run tests frequently during development",
111
- },
112
- "docs": {
113
- "title": "Documentation",
114
- "workflow": [
115
- ("Initialize", "`/docs/init`"),
116
- ("Update", "`/docs/update`"),
117
- ],
118
- "tip": "Keep docs close to code for accuracy",
119
- },
120
- "git": {
121
- "title": "Git Workflow",
122
- "workflow": [
123
- ("Commit", "`/git/cm`"),
124
- ("Push", "`/git/cp`"),
125
- ("PR", "`/git/pr`"),
126
- ],
127
- "tip": "Commit often with clear messages",
128
- },
129
- "design": {
130
- "title": "Design",
131
- "workflow": [
132
- ("Quick design", "`/design/fast` \"description\""),
133
- ("From screenshot", "`/design/screenshot` <path>"),
134
- ("3D design", "`/design/3d` \"description\""),
135
- ],
136
- "tip": "Reference existing designs for consistency",
137
- },
138
- "review": {
139
- "title": "Code Review",
140
- "workflow": [
141
- ("Full review", "`/review/codebase`"),
142
- ],
143
- "tip": "Review before merging to main",
144
- },
145
- "content": {
146
- "title": "Content Creation",
147
- "workflow": [
148
- ("Quick copy", "`/content/fast` \"requirements\""),
149
- ("Quality copy", "`/content/good` \"requirements\""),
150
- ("Optimize", "`/content/cro`"),
151
- ],
152
- "tip": "Know your audience before writing",
153
- },
154
- "integrate": {
155
- "title": "Integration",
156
- "workflow": [
157
- ("Polar.sh", "`/integrate/polar`"),
158
- ("SePay", "`/integrate/sepay`"),
159
- ],
160
- "tip": "Read API docs before integrating",
161
- },
162
- "skill": {
163
- "title": "Skill Management",
164
- "workflow": [
165
- ("Create", "`/skill/create`"),
166
- ("Optimize", "`/skill/optimize`"),
167
- ],
168
- "tip": "Skills extend agent capabilities",
169
- },
170
- "scout": {
171
- "title": "Codebase Exploration",
172
- "workflow": [
173
- ("Find files", "`/scout` \"what to find\""),
174
- ("External tools", "`/scout/ext` \"query\""),
175
- ],
176
- "tip": "Be specific about what you're looking for",
177
- },
178
- "coding-level": {
179
- "title": "Coding Level (Adaptive Communication)",
180
- "workflow": [
181
- ("Disabled", "`codingLevel: -1` (default, no injection)"),
182
- ("ELI5", "`codingLevel: 0` (analogies, baby steps)"),
183
- ("Junior", "`codingLevel: 1` (WHY before HOW)"),
184
- ("Mid-Level", "`codingLevel: 2` (patterns, trade-offs)"),
185
- ("Senior", "`codingLevel: 3` (production code, ops)"),
186
- ("Tech Lead", "`codingLevel: 4` (risk matrix, strategy)"),
187
- ("God Mode", "`codingLevel: 5` (code first, no fluff)"),
188
- ],
189
- "tip": "Set in .ck.json. Guidelines auto-inject on session start",
190
- },
191
- "config": {
192
- "title": "ClaudeKit Configuration (.ck.json)",
193
- "workflow": [
194
- ("Global", "Set user prefs in `~/.claude/.ck.json`"),
195
- ("Local", "Override per-project in `./.claude/.ck.json`"),
196
- ("Resolution", "DEFAULT → global → local (deep merge)"),
197
- ],
198
- "tip": "Global config works in fresh dirs; local overrides for projects",
199
- },
200
- }
201
-
202
-
203
- def detect_prefix(commands_dir: Path) -> str:
204
- """Legacy hook: commands used to support a /ck: namespace.
205
-
206
- This repo uses canonical command names like `/fix/ui` (no `/ck:` prefix).
207
- """
208
- return ""
209
-
210
-
211
- def parse_frontmatter(file_path: Path) -> dict:
212
- """Parse YAML frontmatter from a markdown file."""
213
- try:
214
- content = file_path.read_text(encoding='utf-8')
215
- except Exception:
216
- return {}
217
-
218
- # Check for frontmatter
219
- if not content.startswith('---'):
220
- return {}
221
-
222
- # Find closing ---
223
- end_idx = content.find('---', 3)
224
- if end_idx == -1:
225
- return {}
226
-
227
- frontmatter = content[3:end_idx].strip()
228
- result = {}
229
-
230
- for line in frontmatter.split('\n'):
231
- if ':' in line:
232
- key, value = line.split(':', 1)
233
- result[key.strip()] = value.strip()
234
-
235
- return result
236
-
237
-
238
- def discover_commands(commands_dir: Path, prefix: str) -> dict:
239
- """Scan .claude/commands/ and build command catalog."""
240
- commands = {}
241
- categories = {}
242
-
243
- if not commands_dir.exists():
244
- return {"commands": commands, "categories": categories}
245
-
246
- # Scan all .md files
247
- for md_file in commands_dir.rglob("*.md"):
248
- # Skip non-command files
249
- rel_path = md_file.relative_to(commands_dir)
250
- parts = rel_path.parts
251
-
252
- # Get command name from path
253
- # e.g., fix/fast.md -> fix/fast, plan.md -> plan
254
- if len(parts) == 1:
255
- # Root command: plan.md -> plan
256
- cmd_name = parts[0].replace('.md', '')
257
- category = "core"
258
- else:
259
- # Nested command: fix/fast.md -> fix/fast
260
- category = parts[0]
261
- cmd_name = '/'.join([p.replace('.md', '') for p in parts])
262
-
263
- # Parse frontmatter
264
- fm = parse_frontmatter(md_file)
265
- description = fm.get('description', '')
266
-
267
- # Skip if no description (not a real command)
268
- if not description:
269
- continue
270
-
271
- # Clean description (remove emoji indicators)
272
- clean_desc = re.sub(r'^[^\w\s]+\s*', '', description).strip()
273
-
274
- # Format command name with prefix
275
- formatted_name = f"/{prefix}{cmd_name}" if prefix else f"/{cmd_name}"
276
-
277
- # Add to commands
278
- if category not in commands:
279
- commands[category] = []
280
-
281
- commands[category].append({
282
- "name": formatted_name,
283
- "description": clean_desc,
284
- "category": category,
285
- })
286
-
287
- # Track categories
288
- if category not in categories:
289
- categories[category] = category.title()
290
-
291
- # Sort commands within each category
292
- for cat in commands:
293
- commands[cat].sort(key=lambda x: x["name"])
294
-
295
- return {"commands": commands, "categories": categories}
296
-
297
-
298
- def detect_intent(input_str: str, categories: list) -> str:
299
- """Smart auto-detection of user intent."""
300
- if not input_str:
301
- return "overview"
302
-
303
- input_lower = input_str.lower()
304
-
305
- # Check if it's a known category
306
- if input_lower in [c.lower() for c in categories]:
307
- return "category"
308
-
309
- # Check if it looks like a command (legacy ':' or canonical '/')
310
- if (':' in input_str or '/' in input_str) and ' ' not in input_str:
311
- return "command"
312
-
313
- # Multiple words = task description
314
- if len(input_str.split()) >= 2:
315
- return "task"
316
-
317
- return "search"
318
-
319
-
320
- def show_overview(data: dict, prefix: str) -> None:
321
- """Display overview with quick start guide."""
322
- emit_output_type("category-guide")
323
-
324
- commands = data["commands"]
325
- categories = data["categories"]
326
- total = sum(len(cmds) for cmds in commands.values())
327
- help_cmd = f"/{prefix}ck-help" if prefix else "/ck-help"
328
-
329
- print("# ClaudeKit Commands")
330
- print()
331
- print(f"{total} commands across {len(categories)} categories.")
332
- print()
333
- print("**Quick Start:**")
334
- print(f"- `/{prefix}cook` - Implement features (standalone)")
335
- print(f"- `/{prefix}plan` + `/{prefix}code` - Plan then execute")
336
- print(f"- `/{prefix}fix` - Fix bugs intelligently")
337
- print(f"- `/{prefix}test` - Run and analyze tests")
338
- print()
339
- print("**Categories:**")
340
- for cat_key in sorted(categories.keys()):
341
- count = len(commands.get(cat_key, []))
342
- print(f"- `{cat_key}` ({count})")
343
- print()
344
- print("**Usage:**")
345
- print(f"- `{help_cmd} <category>` - Category guide with workflow")
346
- print(f"- `{help_cmd} <command>` - Command details")
347
- print(f"- `{help_cmd} <task description>` - Recommendations")
348
-
349
-
350
- def show_category_guide(data: dict, category: str, prefix: str) -> None:
351
- """Display category guide with workflow and tips."""
352
- emit_output_type("category-guide")
353
-
354
- categories = data["categories"]
355
- commands = data["commands"]
356
-
357
- # Find matching category (case-insensitive)
358
- cat_key = None
359
- for key in categories:
360
- if key.lower() == category.lower():
361
- cat_key = key
362
- break
363
-
364
- if not cat_key:
365
- print(f"Category '{category}' not found.")
366
- print()
367
- print("Available: " + ", ".join(f"`{c}`" for c in sorted(categories.keys())))
368
- return
369
-
370
- cmds = commands.get(cat_key, [])
371
- guide = CATEGORY_GUIDES.get(cat_key, {})
372
-
373
- print(f"# {guide.get('title', cat_key.title())}")
374
- print()
375
-
376
- # Workflow first (most important)
377
- if "workflow" in guide:
378
- print("**Workflow:**")
379
- for step, cmd in guide["workflow"]:
380
- print(f"- {step}: {cmd}")
381
- print()
382
-
383
- # Commands list
384
- print("**Commands:**")
385
- for cmd in cmds:
386
- print(f"- `{cmd['name']}` - {cmd['description']}")
387
-
388
- # Tip at the end
389
- if "tip" in guide:
390
- print()
391
- print(f"*Tip: {guide['tip']}*")
392
-
393
-
394
- def show_command(data: dict, command: str, prefix: str) -> None:
395
- """Display command details."""
396
- emit_output_type("command-details")
397
-
398
- commands = data["commands"]
399
-
400
- def canonicalize_command_name(value: str) -> str:
401
- """Canonicalize input to the repo's command format: /a/b/c.
402
-
403
- Also accepts legacy formats like `plan:fast` or `/ck:plan:fast`.
404
- """
405
- s = (value or "").strip().lower()
406
- if not s:
407
- return s
408
- if not s.startswith("/"):
409
- s = "/" + s
410
- s = s.replace("/ck:", "/")
411
- s = s.replace(":", "/")
412
- s = re.sub(r"/{2,}", "/", s)
413
- return s
414
-
415
- # Normalize search term
416
- search = canonicalize_command_name(command)
417
-
418
- found = None
419
- for cmds in commands.values():
420
- for cmd in cmds:
421
- if canonicalize_command_name(cmd["name"]) == search:
422
- found = cmd
423
- break
424
- if found:
425
- break
426
-
427
- if not found:
428
- print(f"Command '{command}' not found.")
429
- print()
430
- do_search(data, command.replace(":", " ").replace("/", " "), prefix)
431
- return
432
-
433
- print(f"# `{found['name']}`")
434
- print()
435
- print(found['description'])
436
- print()
437
- print(f"**Category:** {found['category']}")
438
- print()
439
- print(f"**Usage:** `{found['name']} <your-input>`")
440
-
441
- # Show related commands (same category)
442
- cat = found['category']
443
- if cat in commands:
444
- related = [c for c in commands[cat] if c['name'] != found['name']][:3]
445
- if related:
446
- related_names = ", ".join(f"`{r['name']}`" for r in related)
447
- print()
448
- print(f"**Related:** {related_names}")
449
-
450
-
451
- def do_search(data: dict, term: str, prefix: str) -> None:
452
- """Search commands by keyword."""
453
- emit_output_type("search-results")
454
-
455
- commands = data["commands"]
456
- term_lower = term.lower()
457
- matches = []
458
-
459
- for cmds in commands.values():
460
- for cmd in cmds:
461
- if term_lower in cmd["name"].lower() or term_lower in cmd["description"].lower():
462
- matches.append(cmd)
463
-
464
- if not matches:
465
- print(f"No commands found for '{term}'.")
466
- print()
467
- print("Try browsing categories: " + ", ".join(f"`{c}`" for c in sorted(data["categories"].keys())))
468
- return
469
-
470
- print(f"# Search: {term}")
471
- print()
472
- print(f"Found {len(matches)} matches:")
473
- for cmd in matches[:8]:
474
- print(f"- `{cmd['name']}` - {cmd['description']}")
475
-
476
-
477
- def recommend_task(data: dict, task: str, prefix: str) -> None:
478
- """Recommend commands for a task description."""
479
- emit_output_type("task-recommendations")
480
-
481
- commands = data["commands"]
482
- task_lower = task.lower()
483
-
484
- # Score categories by keyword matches
485
- scores = {}
486
- for cat, keywords in TASK_MAPPINGS.items():
487
- score = sum(1 for kw in keywords if kw in task_lower)
488
- if score > 0:
489
- scores[cat] = score
490
-
491
- if not scores:
492
- print(f"Not sure about: {task}")
493
- print()
494
- print("Try being more specific, or browse categories: " + ", ".join(f"`{c}`" for c in sorted(data["categories"].keys())))
495
- return
496
-
497
- sorted_cats = sorted(scores.items(), key=lambda x: -x[1])
498
- top_cat = sorted_cats[0][0]
499
- guide = CATEGORY_GUIDES.get(top_cat, {})
500
-
501
- print(f"# Recommended for: {task}")
502
- print()
503
-
504
- # Show workflow first (most actionable)
505
- if "workflow" in guide:
506
- print("**Workflow:**")
507
- for step, cmd in guide["workflow"][:3]:
508
- print(f"- {step}: {cmd}")
509
- print()
510
-
511
- # Show relevant commands
512
- print("**Commands:**")
513
- shown = 0
514
- for cat, _ in sorted_cats[:2]:
515
- if cat in commands:
516
- for cmd in commands[cat][:2]:
517
- print(f"- `{cmd['name']}` - {cmd['description']}")
518
- shown += 1
519
- if shown >= 4:
520
- break
521
- if shown >= 4:
522
- break
523
-
524
- if "tip" in guide:
525
- print()
526
- print(f"*Tip: {guide['tip']}*")
527
-
528
-
529
- def show_config_guide() -> None:
530
- """Display comprehensive .ck.json configuration guide."""
531
- emit_output_type("comprehensive-docs")
532
-
533
- print("# ClaudeKit Configuration (.ck.json)")
534
- print()
535
- print("**Locations (cascading resolution):**")
536
- print("- Global: `~/.claude/.ck.json` (user preferences)")
537
- print("- Local: `./.claude/.ck.json` (project overrides)")
538
- print()
539
- print("**Resolution Order:** `DEFAULT → global → local`")
540
- print("- Global config sets user defaults")
541
- print("- Local config overrides for specific projects")
542
- print("- Deep merge: nested objects merge recursively")
543
- print()
544
- print("**Purpose:** Customize plan naming, paths, locale, and hook behavior.")
545
- print()
546
- print("---")
547
- print()
548
- print("## Quick Start")
549
- print()
550
- print("**Global config** (`~/.claude/.ck.json`) - your preferences:")
551
- print("```json")
552
- print('{')
553
- print(' "locale": {')
554
- print(' "thinkingLanguage": "en",')
555
- print(' "responseLanguage": "vi"')
556
- print(' },')
557
- print(' "plan": { "issuePrefix": "GH-" }')
558
- print('}')
559
- print("```")
560
- print()
561
- print("**Local override** (`./.claude/.ck.json`) - project-specific:")
562
- print("```json")
563
- print('{')
564
- print(' "plan": { "issuePrefix": "JIRA-" },')
565
- print(' "paths": { "docs": "documentation" }')
566
- print('}')
567
- print("```")
568
- print()
569
- print("---")
570
- print()
571
- print("## Full Schema")
572
- print()
573
- print("```json")
574
- print('{')
575
- print(' "plan": {')
576
- print(' "namingFormat": "{date}-{issue}-{slug}", // Plan folder naming')
577
- print(' "dateFormat": "YYMMDD-HHmm", // Date format in names')
578
- print(' "issuePrefix": "GH-", // Issue ID prefix (null = #)')
579
- print(' "reportsDir": "reports", // Reports subfolder')
580
- print(' "resolution": {')
581
- print(' "order": ["session", "branch"], // Resolution chain')
582
- print(' "branchPattern": "(?:feat|fix|...)/.+" // Branch slug regex')
583
- print(' },')
584
- print(' "validation": {')
585
- print(' "mode": "prompt", // "auto" | "prompt" | "off"')
586
- print(' "minQuestions": 3, // Min questions to ask')
587
- print(' "maxQuestions": 8, // Max questions to ask')
588
- print(' "focusAreas": ["assumptions", "risks", "tradeoffs", "architecture"]')
589
- print(' }')
590
- print(' },')
591
- print(' "paths": {')
592
- print(' "docs": "docs", // Documentation directory')
593
- print(' "plans": "plans" // Plans directory')
594
- print(' },')
595
- print(' "locale": {')
596
- print(' "thinkingLanguage": null, // Language for reasoning ("en" recommended)')
597
- print(' "responseLanguage": null // Language for output ("vi", "fr", etc.)')
598
- print(' },')
599
- print(' "trust": {')
600
- print(' "passphrase": null, // Secret for testing context injection')
601
- print(' "enabled": false // Enable trust verification')
602
- print(' },')
603
- print(' "project": {')
604
- print(' "type": "auto", // "monorepo", "single-repo", "auto"')
605
- print(' "packageManager": "auto", // "npm", "pnpm", "yarn", "auto"')
606
- print(' "framework": "auto" // "next", "react", "vue", "auto"')
607
- print(' },')
608
- print(' "codingLevel": -1 // Adaptive communication (-1 to 5)')
609
- print('}')
610
- print("```")
611
- print()
612
- print("---")
613
- print()
614
- print("## Key Concepts")
615
- print()
616
- print("**Plan Resolution Chain:**")
617
- print("1. `session` - Check session temp file for active plan")
618
- print("2. `branch` - Match git branch slug to plan folder")
619
- print()
620
- print("**Naming Format Variables:**")
621
- print("- `{date}` - Formatted date (per dateFormat)")
622
- print("- `{issue}` - Issue ID with prefix")
623
- print("- `{slug}` - Descriptive slug from branch or input")
624
- print()
625
- print("**Language Settings:**")
626
- print("- `thinkingLanguage` - Language for internal reasoning (\"en\" recommended)")
627
- print("- `responseLanguage` - Language for user-facing output (\"vi\", \"fr\", etc.)")
628
- print()
629
- print("When both are set, Claude thinks in one language but responds in another.")
630
- print("This improves precision (English) while maintaining natural output (your language).")
631
- print()
632
- print("**Plan Validation:**")
633
- print("- `mode: \"prompt\"` - Ask user after plan creation (default)")
634
- print("- `mode: \"auto\"` - Always run validation interview")
635
- print("- `mode: \"off\"` - Skip; user runs `/plan/validate` manually")
636
- print()
637
- print("Validation interviews the user with critical questions to confirm")
638
- print("assumptions, risks, and architectural decisions before implementation.")
639
- print()
640
- print("**Coding Level (Adaptive Communication):**")
641
- print("- `-1` = Disabled (default) - no injection, saves tokens")
642
- print("- `0` = ELI5 - analogies, baby steps, check-ins")
643
- print("- `1` = Junior - WHY before HOW, pitfalls, takeaways")
644
- print("- `2` = Mid-Level - patterns, trade-offs, scalability")
645
- print("- `3` = Senior - trade-offs table, production code, ops")
646
- print("- `4` = Tech Lead - executive summary, risk matrix, business impact")
647
- print("- `5` = God Mode - code first, minimal prose, no hand-holding")
648
- print()
649
- print("Guidelines auto-inject on session start. Commands like `/brainstorm` respect them.")
650
- print()
651
- print("---")
652
- print()
653
- print("## Edge Cases & Validation")
654
- print()
655
- print("**Path Handling:**")
656
- print("- Trailing slashes normalized (`plans/` → `plans`)")
657
- print("- Empty/whitespace-only paths fall back to defaults")
658
- print("- Absolute paths supported (e.g., `/home/user/all-plans`)")
659
- print("- Path traversal (`../`) blocked for relative paths")
660
- print("- Null bytes and control chars rejected")
661
- print()
662
- print("**Slug Sanitization:**")
663
- print("- Invalid filename chars removed: `< > : \" / \\ | ? *`")
664
- print("- Non-alphanumeric replaced with hyphen")
665
- print("- Multiple hyphens collapsed: `foo---bar` → `foo-bar`")
666
- print("- Leading/trailing hyphens removed")
667
- print("- Max 100 chars to prevent filesystem issues")
668
- print()
669
- print("**Naming Pattern Validation:**")
670
- print("- Pattern must contain `{slug}` placeholder")
671
- print("- Result must be non-empty after variable substitution")
672
- print("- Unresolved placeholders (except `{slug}`) trigger error")
673
- print("- Malformed JSON config falls back to defaults")
674
- print()
675
- print("**Consolidated Plans (advanced):**")
676
- print("```json")
677
- print('{')
678
- print(' "paths": {')
679
- print(' "plans": "/home/user/all-my-plans"')
680
- print(' }')
681
- print('}')
682
- print("```")
683
- print("Absolute paths allow storing all plans in one location across projects.")
684
- print()
685
- print("---")
686
- print()
687
- print("## Examples")
688
- print()
689
- print("**Global install user (fresh directories work):**")
690
- print("```bash")
691
- print("# ~/.claude/.ck.json - applies everywhere")
692
- print("cd /tmp/new-project && claude # Uses global config")
693
- print("```")
694
- print()
695
- print("**Project with local override:**")
696
- print("```bash")
697
- print("# Global: issuePrefix = \"GH-\"")
698
- print("# Local (.claude/.ck.json): issuePrefix = \"JIRA-\"")
699
- print("# Result: issuePrefix = \"JIRA-\" (local wins)")
700
- print("```")
701
- print()
702
- print("**Deep merge behavior:**")
703
- print("```")
704
- print("Global: { plan: { issuePrefix: \"GH-\", dateFormat: \"YYMMDD\" } }")
705
- print("Local: { plan: { issuePrefix: \"JIRA-\" } }")
706
- print("Result: { plan: { issuePrefix: \"JIRA-\", dateFormat: \"YYMMDD\" } }")
707
- print("```")
708
- print()
709
- print("*Tip: Config is optional - all fields have sensible defaults.*")
710
-
711
-
712
- def show_coding_level_guide() -> None:
713
- """Display comprehensive codingLevel configuration guide."""
714
- emit_output_type("comprehensive-docs")
715
-
716
- print("# Coding Level (Adaptive Communication)")
717
- print()
718
- print("Adjusts Claude's communication style based on user's experience level.")
719
- print("Guidelines auto-inject on SessionStart. Commands respect them.")
720
- print()
721
- print("---")
722
- print()
723
- print("## Levels")
724
- print()
725
- print("| Level | Name | Description |")
726
- print("|-------|------|-------------|")
727
- print("| **-1** | **Disabled** | Default - no injection, saves tokens |")
728
- print("| 0 | ELI5 | Zero experience - analogies, baby steps, check-ins |")
729
- print("| 1 | Junior | 0-2 years - WHY before HOW, pitfalls, takeaways |")
730
- print("| 2 | Mid-Level | 3-5 years - patterns, trade-offs, scalability |")
731
- print("| 3 | Senior | 5-8 years - trade-offs table, production code, ops |")
732
- print("| 4 | Tech Lead | 8-15 years - executive summary, risk matrix, strategy |")
733
- print("| 5 | God Mode | 15+ years - code first, minimal prose, no fluff |")
734
- print()
735
- print("---")
736
- print()
737
- print("## Configuration")
738
- print()
739
- print("**Set in `.ck.json`:**")
740
- print("```json")
741
- print('{')
742
- print(' "codingLevel": 0')
743
- print('}')
744
- print("```")
745
- print()
746
- print("**Location (cascading):**")
747
- print("- Global: `~/.claude/.ck.json` - personal preference")
748
- print("- Local: `./.claude/.ck.json` - project override")
749
- print()
750
- print("---")
751
- print()
752
- print("## How It Works")
753
- print()
754
- print("1. SessionStart hook reads `codingLevel` from `.ck.json`")
755
- print("2. If 0-5, injects guidelines from `.claude/output-styles/coding-level-*.md`")
756
- print("3. Commands like `/brainstorm` follow the injected guidelines")
757
- print()
758
- print("**Token Efficiency:**")
759
- print("- `-1` (default): Zero injection, zero overhead")
760
- print("- `0-5`: Only selected level's guidelines injected (not all)")
761
- print()
762
- print("---")
763
- print()
764
- print("## Level Details")
765
- print()
766
- print("### Level 0 (ELI5)")
767
- print("- **MUST** use real-world analogies (labeled boxes, recipes)")
768
- print("- **MUST** define every technical term")
769
- print("- **MUST** use \"we\" language")
770
- print("- **MUST** end with check-in: \"Does this make sense?\"")
771
- print("- **MUST** comment every line of code")
772
- print("- Structure: Big Picture → Analogy → Baby Steps → Try It → Check-In")
773
- print()
774
- print("### Level 1 (Junior)")
775
- print("- Explain WHY before HOW")
776
- print("- Define technical terms on first use")
777
- print("- Include common pitfalls section")
778
- print("- Add Key Takeaways and Learn More links")
779
- print("- Structure: Context → Approach → Implementation → Pitfalls → Takeaways")
780
- print()
781
- print("### Level 2 (Mid-Level)")
782
- print("- Discuss design patterns and when to use them")
783
- print("- Highlight trade-offs explicitly")
784
- print("- Consider scalability implications")
785
- print("- Reference patterns by name")
786
- print("- Structure: Approach → Design → Implementation → Edge Cases")
787
- print()
788
- print("### Level 3 (Senior)")
789
- print("- Lead with trade-offs table")
790
- print("- Show production-ready code")
791
- print("- Discuss operational concerns (monitoring, logging)")
792
- print("- Flag security implications")
793
- print("- **NEVER** explain basic concepts")
794
- print("- Structure: Trade-offs → Implementation → Ops → Security")
795
- print()
796
- print("### Level 4 (Tech Lead)")
797
- print("- Executive summary first (3-4 sentences)")
798
- print("- Risk assessment matrix (Likelihood × Impact)")
799
- print("- Strategic options comparison")
800
- print("- Business impact analysis")
801
- print("- Identify decisions needing stakeholder alignment")
802
- print("- Structure: Summary → Risks → Options → Approach → Business Impact")
803
- print()
804
- print("### Level 5 (God Mode)")
805
- print("- Answer exactly what was asked, nothing more")
806
- print("- Code first, minimal prose")
807
- print("- No explanations unless asked")
808
- print("- **NEVER** use filler phrases")
809
- print("- Trust their judgment completely")
810
- print()
811
- print("---")
812
- print()
813
- print("## Customization")
814
- print()
815
- print("Guidelines live in `.claude/output-styles/coding-level-*.md`")
816
- print("Edit these files directly to customize behavior per level.")
817
- print()
818
- print("*Tip: Use `-1` (disabled) unless you're teaching or want guided explanations.*")
819
-
820
-
821
- def main():
822
- # Find .claude/commands directory
823
- script_path = Path(__file__).resolve()
824
- claude_dir = script_path.parent.parent # .claude/scripts -> .claude
825
- commands_dir = claude_dir / "commands"
826
-
827
- if not commands_dir.exists():
828
- print("Error: .claude/commands/ directory not found.")
829
- sys.exit(1)
830
-
831
- # Detect prefix and discover commands
832
- prefix = detect_prefix(commands_dir)
833
- data = discover_commands(commands_dir, prefix)
834
-
835
- if not data["commands"]:
836
- print("No commands found in .claude/commands/")
837
- sys.exit(1)
838
-
839
- # Parse input
840
- args = sys.argv[1:]
841
- input_str = " ".join(args).strip()
842
-
843
- # Special case: config documentation (not a command category)
844
- if input_str.lower() in ["config", "configuration", ".ck.json", "ck.json"]:
845
- show_config_guide()
846
- return
847
-
848
- # Special case: coding level documentation
849
- if input_str.lower() in ["coding-level", "codinglevel", "coding level", "level", "eli5", "god mode"]:
850
- show_coding_level_guide()
851
- return
852
-
853
- # Detect intent and route
854
- intent = detect_intent(input_str, list(data["categories"].keys()))
855
-
856
- if intent == "overview":
857
- show_overview(data, prefix)
858
- elif intent == "category":
859
- show_category_guide(data, input_str, prefix)
860
- elif intent == "command":
861
- show_command(data, input_str, prefix)
862
- elif intent == "task":
863
- recommend_task(data, input_str, prefix)
864
- else:
865
- do_search(data, input_str, prefix)
27
+ # Preserve argv; run canonical script as __main__.
28
+ runpy.run_path(str(target), run_name="__main__")
29
+ return 0
866
30
 
867
31
 
868
32
  if __name__ == "__main__":
869
- main()
33
+ raise SystemExit(main())