@macpaw/cctk 1.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (415) hide show
  1. package/License +21 -0
  2. package/README.md +142 -0
  3. package/bin/index.js +5 -0
  4. package/dist/index.js +1 -0
  5. package/package.json +65 -0
  6. package/templates/claude/agents/brainstormer.md +113 -0
  7. package/templates/claude/agents/code-reviewer.md +157 -0
  8. package/templates/claude/agents/copywriter.md +110 -0
  9. package/templates/claude/agents/database-admin.md +92 -0
  10. package/templates/claude/agents/debugger.md +137 -0
  11. package/templates/claude/agents/docs-manager.md +208 -0
  12. package/templates/claude/agents/fullstack-developer.md +95 -0
  13. package/templates/claude/agents/git-manager.md +394 -0
  14. package/templates/claude/agents/journal-writer.md +113 -0
  15. package/templates/claude/agents/mcp-manager.md +89 -0
  16. package/templates/claude/agents/planner.md +108 -0
  17. package/templates/claude/agents/project-manager.md +125 -0
  18. package/templates/claude/agents/registry.json +304 -0
  19. package/templates/claude/agents/researcher.md +37 -0
  20. package/templates/claude/agents/scout-external.md +140 -0
  21. package/templates/claude/agents/scout.md +106 -0
  22. package/templates/claude/agents/tester.md +105 -0
  23. package/templates/claude/agents/ui-ux-designer.md +208 -0
  24. package/templates/claude/commands/ask.md +56 -0
  25. package/templates/claude/commands/bootstrap/auto/fast.md +106 -0
  26. package/templates/claude/commands/bootstrap/auto/parallel.md +64 -0
  27. package/templates/claude/commands/bootstrap/auto.md +110 -0
  28. package/templates/claude/commands/bootstrap.md +130 -0
  29. package/templates/claude/commands/brainstorm.md +75 -0
  30. package/templates/claude/commands/code/auto.md +198 -0
  31. package/templates/claude/commands/code/no-test.md +172 -0
  32. package/templates/claude/commands/code/parallel.md +100 -0
  33. package/templates/claude/commands/code.md +197 -0
  34. package/templates/claude/commands/coding-level.md +37 -0
  35. package/templates/claude/commands/content/cro.md +41 -0
  36. package/templates/claude/commands/content/enhance.md +12 -0
  37. package/templates/claude/commands/content/fast.md +11 -0
  38. package/templates/claude/commands/content/good.md +14 -0
  39. package/templates/claude/commands/cook/auto/fast.md +26 -0
  40. package/templates/claude/commands/cook/auto/parallel.md +49 -0
  41. package/templates/claude/commands/cook/auto.md +15 -0
  42. package/templates/claude/commands/cook.md +101 -0
  43. package/templates/claude/commands/debug.md +13 -0
  44. package/templates/claude/commands/docs/init.md +37 -0
  45. package/templates/claude/commands/docs/summarize.md +22 -0
  46. package/templates/claude/commands/docs/update.md +78 -0
  47. package/templates/claude/commands/fix/ci.md +17 -0
  48. package/templates/claude/commands/fix/fast.md +18 -0
  49. package/templates/claude/commands/fix/hard.md +35 -0
  50. package/templates/claude/commands/fix/logs.md +26 -0
  51. package/templates/claude/commands/fix/parallel.md +54 -0
  52. package/templates/claude/commands/fix/test.md +20 -0
  53. package/templates/claude/commands/fix/types.md +9 -0
  54. package/templates/claude/commands/fix/ui.md +33 -0
  55. package/templates/claude/commands/fix.md +43 -0
  56. package/templates/claude/commands/git/cm.md +5 -0
  57. package/templates/claude/commands/git/cp.md +4 -0
  58. package/templates/claude/commands/git/merge.md +40 -0
  59. package/templates/claude/commands/git/pr.md +50 -0
  60. package/templates/claude/commands/journal.md +7 -0
  61. package/templates/claude/commands/kanban.md +99 -0
  62. package/templates/claude/commands/plan/archive.md +57 -0
  63. package/templates/claude/commands/plan/ci.md +33 -0
  64. package/templates/claude/commands/plan/cro.md +67 -0
  65. package/templates/claude/commands/plan/fast.md +66 -0
  66. package/templates/claude/commands/plan/hard.md +92 -0
  67. package/templates/claude/commands/plan/parallel.md +129 -0
  68. package/templates/claude/commands/plan/two.md +45 -0
  69. package/templates/claude/commands/plan/validate.md +117 -0
  70. package/templates/claude/commands/plan.md +30 -0
  71. package/templates/claude/commands/preview.md +87 -0
  72. package/templates/claude/commands/registry.json +313 -0
  73. package/templates/claude/commands/review/codebase/parallel.md +122 -0
  74. package/templates/claude/commands/review/codebase.md +47 -0
  75. package/templates/claude/commands/scout/ext.md +35 -0
  76. package/templates/claude/commands/scout.md +28 -0
  77. package/templates/claude/commands/skill/add.md +36 -0
  78. package/templates/claude/commands/skill/create.md +29 -0
  79. package/templates/claude/commands/skill/fix-logs.md +22 -0
  80. package/templates/claude/commands/skill/optimize/auto.md +25 -0
  81. package/templates/claude/commands/skill/optimize.md +34 -0
  82. package/templates/claude/commands/skill/plan.md +45 -0
  83. package/templates/claude/commands/test/ui.md +91 -0
  84. package/templates/claude/commands/test.md +8 -0
  85. package/templates/claude/commands/use-mcp.md +34 -0
  86. package/templates/claude/commands/watzup.md +8 -0
  87. package/templates/claude/commands/worktree.md +126 -0
  88. package/templates/claude/hooks/dev-rules-reminder.cjs +258 -0
  89. package/templates/claude/hooks/docs/README.md +42 -0
  90. package/templates/claude/hooks/lib/cctk-config-utils.cjs +751 -0
  91. package/templates/claude/hooks/lib/cctk-paths.cjs +106 -0
  92. package/templates/claude/hooks/lib/context-tracker.cjs +346 -0
  93. package/templates/claude/hooks/privacy-block.cjs +289 -0
  94. package/templates/claude/hooks/registry.json +77 -0
  95. package/templates/claude/hooks/scout-block/broad-pattern-detector.cjs +293 -0
  96. package/templates/claude/hooks/scout-block/error-formatter.cjs +156 -0
  97. package/templates/claude/hooks/scout-block/path-extractor.cjs +359 -0
  98. package/templates/claude/hooks/scout-block/pattern-matcher.cjs +184 -0
  99. package/templates/claude/hooks/scout-block/vendor/ignore.js +626 -0
  100. package/templates/claude/hooks/scout-block.cjs +167 -0
  101. package/templates/claude/hooks/session-end.cjs +35 -0
  102. package/templates/claude/hooks/session-init.cjs +214 -0
  103. package/templates/claude/hooks/subagent-init.cjs +161 -0
  104. package/templates/claude/hooks/write-compact-marker.cjs +153 -0
  105. package/templates/claude/output-styles/coding-level-1.md +148 -0
  106. package/templates/claude/output-styles/coding-level-2.md +159 -0
  107. package/templates/claude/output-styles/coding-level-3.md +91 -0
  108. package/templates/claude/scripts/README.md +33 -0
  109. package/templates/claude/scripts/generate-catalogs.cjs +318 -0
  110. package/templates/claude/scripts/registry.json +48 -0
  111. package/templates/claude/scripts/set-active-plan.cjs +45 -0
  112. package/templates/claude/scripts/validate-docs.cjs +447 -0
  113. package/templates/claude/scripts/worktree.cjs +658 -0
  114. package/templates/claude/skills/README.md +112 -0
  115. package/templates/claude/skills/ai-artist/SKILL.md +75 -0
  116. package/templates/claude/skills/ai-artist/references/advanced-techniques.md +184 -0
  117. package/templates/claude/skills/ai-artist/references/domain-code.md +66 -0
  118. package/templates/claude/skills/ai-artist/references/domain-data.md +72 -0
  119. package/templates/claude/skills/ai-artist/references/domain-marketing.md +66 -0
  120. package/templates/claude/skills/ai-artist/references/domain-patterns.md +33 -0
  121. package/templates/claude/skills/ai-artist/references/domain-writing.md +68 -0
  122. package/templates/claude/skills/ai-artist/references/image-prompting.md +141 -0
  123. package/templates/claude/skills/ai-artist/references/llm-prompting.md +165 -0
  124. package/templates/claude/skills/ai-artist/references/nano-banana.md +59 -0
  125. package/templates/claude/skills/ai-artist/references/reasoning-techniques.md +201 -0
  126. package/templates/claude/skills/backend-development/SKILL.md +95 -0
  127. package/templates/claude/skills/backend-development/references/backend-api-design.md +495 -0
  128. package/templates/claude/skills/backend-development/references/backend-architecture.md +454 -0
  129. package/templates/claude/skills/backend-development/references/backend-authentication.md +338 -0
  130. package/templates/claude/skills/backend-development/references/backend-code-quality.md +659 -0
  131. package/templates/claude/skills/backend-development/references/backend-debugging.md +904 -0
  132. package/templates/claude/skills/backend-development/references/backend-devops.md +494 -0
  133. package/templates/claude/skills/backend-development/references/backend-mindset.md +387 -0
  134. package/templates/claude/skills/backend-development/references/backend-performance.md +397 -0
  135. package/templates/claude/skills/backend-development/references/backend-security.md +290 -0
  136. package/templates/claude/skills/backend-development/references/backend-technologies.md +256 -0
  137. package/templates/claude/skills/backend-development/references/backend-testing.md +429 -0
  138. package/templates/claude/skills/better-auth/SKILL.md +204 -0
  139. package/templates/claude/skills/better-auth/references/advanced-features.md +553 -0
  140. package/templates/claude/skills/better-auth/references/database-integration.md +577 -0
  141. package/templates/claude/skills/better-auth/references/email-password-auth.md +416 -0
  142. package/templates/claude/skills/better-auth/references/oauth-providers.md +430 -0
  143. package/templates/claude/skills/better-auth/scripts/better_auth_init.py +521 -0
  144. package/templates/claude/skills/chrome-devtools/SKILL.md +473 -0
  145. package/templates/claude/skills/chrome-devtools/references/cdp-domains.md +694 -0
  146. package/templates/claude/skills/chrome-devtools/references/performance-guide.md +940 -0
  147. package/templates/claude/skills/chrome-devtools/references/puppeteer-reference.md +953 -0
  148. package/templates/claude/skills/chrome-devtools/scripts/README.md +288 -0
  149. package/templates/claude/skills/chrome-devtools/scripts/aria-snapshot.js +368 -0
  150. package/templates/claude/skills/chrome-devtools/scripts/click.js +92 -0
  151. package/templates/claude/skills/chrome-devtools/scripts/console.js +85 -0
  152. package/templates/claude/skills/chrome-devtools/scripts/evaluate.js +59 -0
  153. package/templates/claude/skills/chrome-devtools/scripts/fill.js +84 -0
  154. package/templates/claude/skills/chrome-devtools/scripts/inject-auth.js +247 -0
  155. package/templates/claude/skills/chrome-devtools/scripts/install-deps.sh +11 -0
  156. package/templates/claude/skills/chrome-devtools/scripts/install.sh +36 -0
  157. package/templates/claude/skills/chrome-devtools/scripts/lib/browser.js +335 -0
  158. package/templates/claude/skills/chrome-devtools/scripts/lib/selector.js +183 -0
  159. package/templates/claude/skills/chrome-devtools/scripts/navigate.js +60 -0
  160. package/templates/claude/skills/chrome-devtools/scripts/network.js +113 -0
  161. package/templates/claude/skills/chrome-devtools/scripts/package.json +16 -0
  162. package/templates/claude/skills/chrome-devtools/scripts/performance.js +159 -0
  163. package/templates/claude/skills/chrome-devtools/scripts/screenshot.js +212 -0
  164. package/templates/claude/skills/chrome-devtools/scripts/select-ref.js +151 -0
  165. package/templates/claude/skills/chrome-devtools/scripts/snapshot.js +143 -0
  166. package/templates/claude/skills/chrome-devtools/scripts/ws-debug.js +47 -0
  167. package/templates/claude/skills/chrome-devtools/scripts/ws-full-debug.js +115 -0
  168. package/templates/claude/skills/claude-code/references/advanced-features.md +399 -0
  169. package/templates/claude/skills/claude-code/references/agent-skills.md +399 -0
  170. package/templates/claude/skills/claude-code/references/api-reference.md +498 -0
  171. package/templates/claude/skills/claude-code/references/best-practices.md +447 -0
  172. package/templates/claude/skills/claude-code/references/cicd-integration.md +428 -0
  173. package/templates/claude/skills/claude-code/references/common-workflows.md +107 -0
  174. package/templates/claude/skills/claude-code/references/configuration.md +480 -0
  175. package/templates/claude/skills/claude-code/references/enterprise-features.md +472 -0
  176. package/templates/claude/skills/claude-code/references/getting-started.md +244 -0
  177. package/templates/claude/skills/claude-code/references/hooks-and-plugins.md +444 -0
  178. package/templates/claude/skills/claude-code/references/hooks-comprehensive.md +622 -0
  179. package/templates/claude/skills/claude-code/references/ide-integration.md +316 -0
  180. package/templates/claude/skills/claude-code/references/mcp-integration.md +386 -0
  181. package/templates/claude/skills/claude-code/references/slash-commands.md +460 -0
  182. package/templates/claude/skills/claude-code/references/troubleshooting.md +455 -0
  183. package/templates/claude/skills/claude-code/skill.md +60 -0
  184. package/templates/claude/skills/code-review/SKILL.md +143 -0
  185. package/templates/claude/skills/code-review/references/code-review-reception.md +209 -0
  186. package/templates/claude/skills/code-review/references/requesting-code-review.md +105 -0
  187. package/templates/claude/skills/code-review/references/verification-before-completion.md +139 -0
  188. package/templates/claude/skills/context-engineering/SKILL.md +86 -0
  189. package/templates/claude/skills/context-engineering/references/context-compression.md +84 -0
  190. package/templates/claude/skills/context-engineering/references/context-degradation.md +93 -0
  191. package/templates/claude/skills/context-engineering/references/context-fundamentals.md +75 -0
  192. package/templates/claude/skills/context-engineering/references/context-optimization.md +82 -0
  193. package/templates/claude/skills/context-engineering/references/evaluation.md +89 -0
  194. package/templates/claude/skills/context-engineering/references/memory-systems.md +88 -0
  195. package/templates/claude/skills/context-engineering/references/multi-agent-patterns.md +90 -0
  196. package/templates/claude/skills/context-engineering/references/project-development.md +97 -0
  197. package/templates/claude/skills/context-engineering/references/tool-design.md +86 -0
  198. package/templates/claude/skills/context-engineering/scripts/compression_evaluator.py +329 -0
  199. package/templates/claude/skills/context-engineering/scripts/context_analyzer.py +294 -0
  200. package/templates/claude/skills/databases/SKILL.md +232 -0
  201. package/templates/claude/skills/databases/references/mongodb-aggregation.md +447 -0
  202. package/templates/claude/skills/databases/references/mongodb-atlas.md +465 -0
  203. package/templates/claude/skills/databases/references/mongodb-crud.md +408 -0
  204. package/templates/claude/skills/databases/references/mongodb-indexing.md +442 -0
  205. package/templates/claude/skills/databases/references/postgresql-administration.md +594 -0
  206. package/templates/claude/skills/databases/references/postgresql-performance.md +527 -0
  207. package/templates/claude/skills/databases/references/postgresql-psql-cli.md +467 -0
  208. package/templates/claude/skills/databases/references/postgresql-queries.md +475 -0
  209. package/templates/claude/skills/databases/scripts/db_backup.py +502 -0
  210. package/templates/claude/skills/databases/scripts/db_migrate.py +414 -0
  211. package/templates/claude/skills/databases/scripts/db_performance_check.py +445 -0
  212. package/templates/claude/skills/debugging/SKILL.md +84 -0
  213. package/templates/claude/skills/debugging/references/defense-in-depth.md +124 -0
  214. package/templates/claude/skills/debugging/references/root-cause-tracing.md +122 -0
  215. package/templates/claude/skills/debugging/references/systematic-debugging.md +102 -0
  216. package/templates/claude/skills/debugging/references/verification.md +123 -0
  217. package/templates/claude/skills/debugging/scripts/find-polluter.sh +63 -0
  218. package/templates/claude/skills/debugging/scripts/find-polluter.test.md +102 -0
  219. package/templates/claude/skills/devops/SKILL.md +293 -0
  220. package/templates/claude/skills/devops/references/browser-rendering.md +305 -0
  221. package/templates/claude/skills/devops/references/cloudflare-d1-kv.md +123 -0
  222. package/templates/claude/skills/devops/references/cloudflare-platform.md +271 -0
  223. package/templates/claude/skills/devops/references/cloudflare-r2-storage.md +280 -0
  224. package/templates/claude/skills/devops/references/cloudflare-workers-advanced.md +312 -0
  225. package/templates/claude/skills/devops/references/cloudflare-workers-apis.md +309 -0
  226. package/templates/claude/skills/devops/references/cloudflare-workers-basics.md +418 -0
  227. package/templates/claude/skills/devops/references/docker-basics.md +297 -0
  228. package/templates/claude/skills/devops/references/docker-compose.md +292 -0
  229. package/templates/claude/skills/devops/references/gcloud-platform.md +307 -0
  230. package/templates/claude/skills/devops/references/gcloud-services.md +304 -0
  231. package/templates/claude/skills/devops/scripts/cloudflare_deploy.py +269 -0
  232. package/templates/claude/skills/devops/scripts/docker_optimize.py +320 -0
  233. package/templates/claude/skills/docs-seeker/SKILL.md +95 -0
  234. package/templates/claude/skills/docs-seeker/package.json +24 -0
  235. package/templates/claude/skills/docs-seeker/references/advanced.md +78 -0
  236. package/templates/claude/skills/docs-seeker/references/context7-patterns.md +68 -0
  237. package/templates/claude/skills/docs-seeker/references/errors.md +68 -0
  238. package/templates/claude/skills/docs-seeker/scripts/analyze-llms-txt.js +245 -0
  239. package/templates/claude/skills/docs-seeker/scripts/detect-topic.js +172 -0
  240. package/templates/claude/skills/docs-seeker/scripts/fetch-docs.js +212 -0
  241. package/templates/claude/skills/docs-seeker/workflows/library-search.md +87 -0
  242. package/templates/claude/skills/docs-seeker/workflows/repo-analysis.md +91 -0
  243. package/templates/claude/skills/docs-seeker/workflows/topic-search.md +77 -0
  244. package/templates/claude/skills/frontend-design/SKILL.md +85 -0
  245. package/templates/claude/skills/frontend-design/references/analysis-best-practices.md +80 -0
  246. package/templates/claude/skills/frontend-design/references/analysis-prompts.md +141 -0
  247. package/templates/claude/skills/frontend-design/references/analysis-techniques.md +118 -0
  248. package/templates/claude/skills/frontend-design/references/animejs.md +396 -0
  249. package/templates/claude/skills/frontend-design/references/design-extraction-overview.md +71 -0
  250. package/templates/claude/skills/frontend-design/references/extraction-best-practices.md +141 -0
  251. package/templates/claude/skills/frontend-design/references/extraction-output-templates.md +162 -0
  252. package/templates/claude/skills/frontend-design/references/extraction-prompts.md +127 -0
  253. package/templates/claude/skills/frontend-design/references/technical-accessibility.md +119 -0
  254. package/templates/claude/skills/frontend-design/references/technical-best-practices.md +97 -0
  255. package/templates/claude/skills/frontend-design/references/technical-optimization.md +44 -0
  256. package/templates/claude/skills/frontend-design/references/technical-overview.md +90 -0
  257. package/templates/claude/skills/frontend-design/references/technical-workflows.md +150 -0
  258. package/templates/claude/skills/frontend-design/references/visual-analysis-overview.md +95 -0
  259. package/templates/claude/skills/frontend-development/SKILL.md +399 -0
  260. package/templates/claude/skills/frontend-development/resources/common-patterns.md +331 -0
  261. package/templates/claude/skills/frontend-development/resources/complete-examples.md +872 -0
  262. package/templates/claude/skills/frontend-development/resources/component-patterns.md +502 -0
  263. package/templates/claude/skills/frontend-development/resources/data-fetching.md +767 -0
  264. package/templates/claude/skills/frontend-development/resources/file-organization.md +502 -0
  265. package/templates/claude/skills/frontend-development/resources/loading-and-error-states.md +501 -0
  266. package/templates/claude/skills/frontend-development/resources/performance.md +406 -0
  267. package/templates/claude/skills/frontend-development/resources/routing-guide.md +364 -0
  268. package/templates/claude/skills/frontend-development/resources/styling-guide.md +428 -0
  269. package/templates/claude/skills/frontend-development/resources/typescript-standards.md +418 -0
  270. package/templates/claude/skills/markdown-novel-viewer/SKILL.md +272 -0
  271. package/templates/claude/skills/markdown-novel-viewer/assets/directory-browser.css +215 -0
  272. package/templates/claude/skills/markdown-novel-viewer/assets/favicon.png +0 -0
  273. package/templates/claude/skills/markdown-novel-viewer/assets/novel-theme.css +872 -0
  274. package/templates/claude/skills/markdown-novel-viewer/assets/reader.js +378 -0
  275. package/templates/claude/skills/markdown-novel-viewer/assets/template.html +85 -0
  276. package/templates/claude/skills/markdown-novel-viewer/package.json +15 -0
  277. package/templates/claude/skills/markdown-novel-viewer/scripts/lib/http-server.cjs +434 -0
  278. package/templates/claude/skills/markdown-novel-viewer/scripts/lib/markdown-renderer.cjs +335 -0
  279. package/templates/claude/skills/markdown-novel-viewer/scripts/lib/plan-navigator.cjs +509 -0
  280. package/templates/claude/skills/markdown-novel-viewer/scripts/lib/port-finder.cjs +49 -0
  281. package/templates/claude/skills/markdown-novel-viewer/scripts/lib/process-mgr.cjs +150 -0
  282. package/templates/claude/skills/markdown-novel-viewer/scripts/server.cjs +398 -0
  283. package/templates/claude/skills/mcp-builder/SKILL.md +328 -0
  284. package/templates/claude/skills/mcp-builder/reference/evaluation.md +602 -0
  285. package/templates/claude/skills/mcp-builder/reference/mcp_best_practices.md +915 -0
  286. package/templates/claude/skills/mcp-builder/reference/node_mcp_server.md +916 -0
  287. package/templates/claude/skills/mcp-builder/reference/python_mcp_server.md +752 -0
  288. package/templates/claude/skills/mcp-builder/scripts/connections.py +151 -0
  289. package/templates/claude/skills/mcp-builder/scripts/evaluation.py +381 -0
  290. package/templates/claude/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
  291. package/templates/claude/skills/mcp-builder/scripts/requirements.txt +2 -0
  292. package/templates/claude/skills/mcp-management/README.md +219 -0
  293. package/templates/claude/skills/mcp-management/SKILL.md +209 -0
  294. package/templates/claude/skills/mcp-management/assets/tools.json +3146 -0
  295. package/templates/claude/skills/mcp-management/references/configuration.md +114 -0
  296. package/templates/claude/skills/mcp-management/references/gemini-cli-integration.md +209 -0
  297. package/templates/claude/skills/mcp-management/references/mcp-protocol.md +116 -0
  298. package/templates/claude/skills/mcp-management/scripts/.env.example +10 -0
  299. package/templates/claude/skills/mcp-management/scripts/cli.ts +202 -0
  300. package/templates/claude/skills/mcp-management/scripts/mcp-client.ts +247 -0
  301. package/templates/claude/skills/mcp-management/scripts/package.json +20 -0
  302. package/templates/claude/skills/mcp-management/scripts/tsconfig.json +15 -0
  303. package/templates/claude/skills/media-processing/SKILL.md +91 -0
  304. package/templates/claude/skills/media-processing/references/common-workflows.md +132 -0
  305. package/templates/claude/skills/media-processing/references/ffmpeg-encoding.md +358 -0
  306. package/templates/claude/skills/media-processing/references/ffmpeg-filters.md +503 -0
  307. package/templates/claude/skills/media-processing/references/ffmpeg-streaming.md +395 -0
  308. package/templates/claude/skills/media-processing/references/format-compatibility.md +375 -0
  309. package/templates/claude/skills/media-processing/references/imagemagick-batch.md +612 -0
  310. package/templates/claude/skills/media-processing/references/imagemagick-editing.md +623 -0
  311. package/templates/claude/skills/media-processing/references/rmbg-background-removal.md +66 -0
  312. package/templates/claude/skills/media-processing/references/troubleshooting.md +109 -0
  313. package/templates/claude/skills/media-processing/scripts/README.md +102 -0
  314. package/templates/claude/skills/media-processing/scripts/batch-remove-background.sh +124 -0
  315. package/templates/claude/skills/media-processing/scripts/batch_resize.py +342 -0
  316. package/templates/claude/skills/media-processing/scripts/media_convert.py +311 -0
  317. package/templates/claude/skills/media-processing/scripts/remove-background.sh +96 -0
  318. package/templates/claude/skills/media-processing/scripts/remove-bg-node.js +181 -0
  319. package/templates/claude/skills/mermaidjs-v11/SKILL.md +115 -0
  320. package/templates/claude/skills/mermaidjs-v11/references/cli-usage.md +228 -0
  321. package/templates/claude/skills/mermaidjs-v11/references/configuration.md +232 -0
  322. package/templates/claude/skills/mermaidjs-v11/references/diagram-types.md +315 -0
  323. package/templates/claude/skills/mermaidjs-v11/references/examples.md +344 -0
  324. package/templates/claude/skills/mermaidjs-v11/references/integration.md +310 -0
  325. package/templates/claude/skills/planning/SKILL.md +115 -0
  326. package/templates/claude/skills/planning/references/codebase-understanding.md +62 -0
  327. package/templates/claude/skills/planning/references/output-standards.md +127 -0
  328. package/templates/claude/skills/planning/references/plan-organization.md +150 -0
  329. package/templates/claude/skills/planning/references/research-phase.md +49 -0
  330. package/templates/claude/skills/planning/references/solution-design.md +63 -0
  331. package/templates/claude/skills/plans-kanban/SKILL.md +157 -0
  332. package/templates/claude/skills/plans-kanban/assets/dashboard-template.html +119 -0
  333. package/templates/claude/skills/plans-kanban/assets/dashboard.css +1594 -0
  334. package/templates/claude/skills/plans-kanban/assets/dashboard.js +659 -0
  335. package/templates/claude/skills/plans-kanban/assets/favicon.png +0 -0
  336. package/templates/claude/skills/plans-kanban/package.json +13 -0
  337. package/templates/claude/skills/plans-kanban/scripts/lib/dashboard-renderer.cjs +941 -0
  338. package/templates/claude/skills/plans-kanban/scripts/lib/http-server.cjs +310 -0
  339. package/templates/claude/skills/plans-kanban/scripts/lib/plan-metadata-extractor.cjs +489 -0
  340. package/templates/claude/skills/plans-kanban/scripts/lib/plan-parser.cjs +194 -0
  341. package/templates/claude/skills/plans-kanban/scripts/lib/plan-scanner.cjs +277 -0
  342. package/templates/claude/skills/plans-kanban/scripts/lib/port-finder.cjs +49 -0
  343. package/templates/claude/skills/plans-kanban/scripts/lib/process-mgr.cjs +128 -0
  344. package/templates/claude/skills/plans-kanban/scripts/server.cjs +249 -0
  345. package/templates/claude/skills/problem-solving/SKILL.md +96 -0
  346. package/templates/claude/skills/problem-solving/references/attribution.md +69 -0
  347. package/templates/claude/skills/problem-solving/references/collision-zone-thinking.md +79 -0
  348. package/templates/claude/skills/problem-solving/references/inversion-exercise.md +91 -0
  349. package/templates/claude/skills/problem-solving/references/meta-pattern-recognition.md +87 -0
  350. package/templates/claude/skills/problem-solving/references/scale-game.md +95 -0
  351. package/templates/claude/skills/problem-solving/references/simplification-cascades.md +80 -0
  352. package/templates/claude/skills/problem-solving/references/when-stuck.md +72 -0
  353. package/templates/claude/skills/registry.json +258 -0
  354. package/templates/claude/skills/repomix/SKILL.md +247 -0
  355. package/templates/claude/skills/repomix/references/configuration.md +211 -0
  356. package/templates/claude/skills/repomix/references/usage-patterns.md +232 -0
  357. package/templates/claude/skills/repomix/scripts/README.md +179 -0
  358. package/templates/claude/skills/repomix/scripts/repomix_batch.py +455 -0
  359. package/templates/claude/skills/repomix/scripts/repos.example.json +15 -0
  360. package/templates/claude/skills/research/SKILL.md +168 -0
  361. package/templates/claude/skills/sequential-thinking/.env.example +8 -0
  362. package/templates/claude/skills/sequential-thinking/README.md +183 -0
  363. package/templates/claude/skills/sequential-thinking/SKILL.md +94 -0
  364. package/templates/claude/skills/sequential-thinking/package.json +31 -0
  365. package/templates/claude/skills/sequential-thinking/references/advanced-strategies.md +79 -0
  366. package/templates/claude/skills/sequential-thinking/references/advanced-techniques.md +76 -0
  367. package/templates/claude/skills/sequential-thinking/references/core-patterns.md +95 -0
  368. package/templates/claude/skills/sequential-thinking/references/examples-api.md +88 -0
  369. package/templates/claude/skills/sequential-thinking/references/examples-architecture.md +94 -0
  370. package/templates/claude/skills/sequential-thinking/references/examples-debug.md +90 -0
  371. package/templates/claude/skills/sequential-thinking/scripts/format-thought.js +182 -0
  372. package/templates/claude/skills/sequential-thinking/scripts/process-thought.js +252 -0
  373. package/templates/claude/skills/skill-creator/LICENSE.txt +202 -0
  374. package/templates/claude/skills/skill-creator/SKILL.md +266 -0
  375. package/templates/claude/skills/skill-creator/references/agent-skills-spec.md +51 -0
  376. package/templates/claude/skills/skill-creator/scripts/encoding_utils.py +21 -0
  377. package/templates/claude/skills/skill-creator/scripts/init_skill.py +304 -0
  378. package/templates/claude/skills/skill-creator/scripts/package_skill.py +110 -0
  379. package/templates/claude/skills/skill-creator/scripts/quick_validate.py +66 -0
  380. package/templates/claude/skills/template-skill/SKILL.md +6 -0
  381. package/templates/claude/skills/vitest/SKILL.md +595 -0
  382. package/templates/claude/skills/vitest/references/async-patterns.md +82 -0
  383. package/templates/claude/skills/vitest/references/mock-patterns.md +78 -0
  384. package/templates/claude/skills/vitest/references/monorepo-setup.md +185 -0
  385. package/templates/claude/skills/vitest/references/turborepo-setup.md +332 -0
  386. package/templates/claude/skills/web-frameworks/SKILL.md +324 -0
  387. package/templates/claude/skills/web-frameworks/references/nextjs-app-router.md +465 -0
  388. package/templates/claude/skills/web-frameworks/references/nextjs-data-fetching.md +459 -0
  389. package/templates/claude/skills/web-frameworks/references/nextjs-optimization.md +511 -0
  390. package/templates/claude/skills/web-frameworks/references/nextjs-server-components.md +495 -0
  391. package/templates/claude/skills/web-frameworks/references/remix-icon-integration.md +603 -0
  392. package/templates/claude/skills/web-frameworks/references/turborepo-caching.md +551 -0
  393. package/templates/claude/skills/web-frameworks/references/turborepo-pipelines.md +517 -0
  394. package/templates/claude/skills/web-frameworks/references/turborepo-setup.md +542 -0
  395. package/templates/claude/skills/web-frameworks/scripts/nextjs_init.py +547 -0
  396. package/templates/claude/skills/web-frameworks/scripts/turborepo_migrate.py +394 -0
  397. package/templates/claude/workflows/development-rules.md +40 -0
  398. package/templates/claude/workflows/documentation-management.md +121 -0
  399. package/templates/claude/workflows/orchestration-protocol.md +16 -0
  400. package/templates/claude/workflows/primary-workflow.md +45 -0
  401. package/templates/claude/workflows/registry.json +37 -0
  402. package/templates/common/.cct.json +41 -0
  403. package/templates/common/.cctkignore +22 -0
  404. package/templates/common/.env.example +39 -0
  405. package/templates/common/.mcp.json.example +16 -0
  406. package/templates/common/metadata.json +15 -0
  407. package/templates/common/settings.json +79 -0
  408. package/templates/common/statusline.cjs +271 -0
  409. package/templates/config/.repomixignore +22 -0
  410. package/templates/config/AGENTS.md +55 -0
  411. package/templates/config/CLAUDE.md +87 -0
  412. package/templates/plans/bug-fix-template.md +69 -0
  413. package/templates/plans/feature-implementation-template.md +84 -0
  414. package/templates/plans/refactor-template.md +82 -0
  415. package/templates/plans/template-usage-guide.md +58 -0
@@ -0,0 +1,41 @@
1
+ {
2
+ "codingLevel": -1,
3
+ "privacyBlock": true,
4
+ "docs": {
5
+ "maxLoc": 800
6
+ },
7
+ "plan": {
8
+ "namingFormat": "{date}-{issue}-{slug}",
9
+ "dateFormat": "YYMMDD-HHmm",
10
+ "issuePrefix": "GH-",
11
+ "reportsDir": "reports",
12
+ "resolution": {
13
+ "order": ["session", "branch"],
14
+ "branchPattern": "(?:feat|fix|chore|refactor|docs)/(?:[^/]+/)?(.+)"
15
+ },
16
+ "validation": {
17
+ "mode": "prompt",
18
+ "minQuestions": 3,
19
+ "maxQuestions": 8,
20
+ "focusAreas": ["assumptions", "risks", "tradeoffs", "architecture"]
21
+ }
22
+ },
23
+ "paths": {
24
+ "docs": "docs",
25
+ "plans": "plans"
26
+ },
27
+ "locale": {
28
+ "thinkingLanguage": null,
29
+ "responseLanguage": null
30
+ },
31
+ "trust": {
32
+ "passphrase": null,
33
+ "enabled": false
34
+ },
35
+ "project": {
36
+ "type": "auto",
37
+ "packageManager": "auto",
38
+ "framework": "auto"
39
+ },
40
+ "assertions": []
41
+ }
@@ -0,0 +1,22 @@
1
+ # Blocks directories with heavy file counts that fill LLM context
2
+ # Syntax: gitignore-spec | Use ! prefix to allow (e.g., !src/vendor)
3
+
4
+ # JS/TS
5
+ node_modules
6
+ dist
7
+ build
8
+ .next
9
+ .nuxt
10
+
11
+ # Python
12
+ __pycache__
13
+ .venv
14
+ venv
15
+
16
+ # Go/PHP/Rust/Java
17
+ vendor
18
+ target
19
+
20
+ # VCS & Coverage
21
+ .git
22
+ coverage
@@ -0,0 +1,39 @@
1
+ # Claude Code - Global Environment Variables
2
+ # Location: .claude/.env
3
+ # Priority: LOWEST (overridden by skills/.env and skill-specific .env)
4
+ # Scope: Project-wide configuration, global defaults
5
+ # Setup: Copy to .claude/.env and configure
6
+
7
+ # ============================================
8
+ # Environment Variable Hierarchy
9
+ # ============================================
10
+ # Priority order (highest to lowest):
11
+ # 1. process.env - Runtime environment (HIGHEST)
12
+ # 2. .claude/skills/<skill>/.env - Skill-specific overrides
13
+ # 3. .claude/skills/.env - Shared across all skills
14
+ # 4. .claude/.env - Global defaults (this file, LOWEST)
15
+ #
16
+ # ============================================
17
+ # Context7 API Configuration (optional)
18
+ # ============================================
19
+ # Get your API key from https://context7.com/dashboard/api-keys
20
+ CONTEXT7_API_KEY=
21
+
22
+ # ============================================
23
+ # Gemini API Configuration (optional)
24
+ # ============================================
25
+ # Used for research, documentation search, and enhanced capabilities
26
+ # Get your API key from https://aistudio.google.com/apikey
27
+ GEMINI_API_KEY=
28
+
29
+ # ============================================
30
+ # Development & CI/CD
31
+ # ============================================
32
+ # NODE_ENV=development
33
+ # LOG_LEVEL=info
34
+
35
+ # ============================================
36
+ # Output settings
37
+ # ============================================
38
+ OUTPUT_FORMAT=json
39
+ DEBUG=false
@@ -0,0 +1,16 @@
1
+ {
2
+ "mcpServers": {
3
+ "context7": {
4
+ "command": "npx",
5
+ "args": ["-y", "@upstash/context7-mcp", "--api-key", "YOUR_API_KEY"]
6
+ },
7
+ "chrome-devtools": {
8
+ "command": "npx",
9
+ "args": ["-y", "chrome-devtools-mcp@latest"]
10
+ },
11
+ "sequential-thinking": {
12
+ "command": "npx",
13
+ "args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
14
+ }
15
+ }
16
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "version": "0.0.1",
3
+ "name": "cctk",
4
+ "description": "A comprehensive CLI toolkit for boosting Claude Code to the insane level.",
5
+ "buildDate": "2026-01-05T04:24:39.330Z",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/MacPawLabs/claude-code-toolkit.git"
9
+ },
10
+ "download": {
11
+ "lastDownloadedAt": null,
12
+ "downloadedBy": null,
13
+ "installCount": 0
14
+ }
15
+ }
@@ -0,0 +1,79 @@
1
+ {
2
+ "includeCoAuthoredBy": false,
3
+ "statusLine": {
4
+ "type": "command",
5
+ "command": "node .claude/statusline.cjs",
6
+ "padding": 0
7
+ },
8
+ "hooks": {
9
+ "SessionStart": [
10
+ {
11
+ "matcher": "startup|resume|clear|compact",
12
+ "hooks": [
13
+ {
14
+ "type": "command",
15
+ "command": "node .claude/hooks/session-init.cjs"
16
+ }
17
+ ]
18
+ }
19
+ ],
20
+ "SubagentStart": [
21
+ {
22
+ "matcher": "*",
23
+ "hooks": [
24
+ {
25
+ "type": "command",
26
+ "command": "node .claude/hooks/subagent-init.cjs"
27
+ }
28
+ ]
29
+ }
30
+ ],
31
+ "UserPromptSubmit": [
32
+ {
33
+ "hooks": [
34
+ {
35
+ "type": "command",
36
+ "command": "node .claude/hooks/dev-rules-reminder.cjs"
37
+ }
38
+ ]
39
+ }
40
+ ],
41
+ "PreToolUse": [
42
+ {
43
+ "matcher": "Bash|Glob|Grep|Read|Edit|Write",
44
+ "hooks": [
45
+ {
46
+ "type": "command",
47
+ "command": "node .claude/hooks/scout-block.cjs"
48
+ },
49
+ {
50
+ "type": "command",
51
+ "command": "node .claude/hooks/privacy-block.cjs"
52
+ }
53
+ ]
54
+ }
55
+ ],
56
+ "PreCompact": [
57
+ {
58
+ "matcher": "manual|auto",
59
+ "hooks": [
60
+ {
61
+ "type": "command",
62
+ "command": "node .claude/hooks/write-compact-marker.cjs"
63
+ }
64
+ ]
65
+ }
66
+ ],
67
+ "SessionEnd": [
68
+ {
69
+ "matcher": "clear",
70
+ "hooks": [
71
+ {
72
+ "type": "command",
73
+ "command": "node .claude/hooks/session-end.cjs"
74
+ }
75
+ ]
76
+ }
77
+ ]
78
+ }
79
+ }
@@ -0,0 +1,271 @@
1
+ #!/usr/bin/env node
2
+ 'use strict';
3
+
4
+ const { stdin, env } = require('process');
5
+ const { execSync } = require('child_process');
6
+ const os = require('os');
7
+ const fs = require('fs');
8
+ const { trackContext } = require('./hooks/lib/context-tracker.cjs');
9
+
10
+ /**
11
+ * Safe command execution wrapper
12
+ * @param {string} cmd - command to execute
13
+ */
14
+ function exec(cmd) {
15
+ try {
16
+ return execSync(cmd, {
17
+ encoding: 'utf8',
18
+ stdio: ['pipe', 'pipe', 'ignore'],
19
+ windowsHide: true
20
+ }).trim();
21
+ } catch (err) {
22
+ return '';
23
+ }
24
+ }
25
+
26
+ /**
27
+ * Format epoch timestamp as HH:mm
28
+ * @param {number} epoch - epoch timestamp
29
+ */
30
+ function formatTimeHM(epoch) {
31
+ try {
32
+ const date = new Date(epoch * 1000);
33
+ const hours = date.getHours().toString().padStart(2, '0');
34
+ const minutes = date.getMinutes().toString().padStart(2, '0');
35
+ return `${hours}:${minutes}`;
36
+ } catch (err) {
37
+ return '00:00';
38
+ }
39
+ }
40
+
41
+ /**
42
+ * Generate Unicode progress bar (horizontal rectangles)
43
+ * Uses smooth block characters for consistent rendering
44
+ *
45
+ * @param {number} percent - 0-100 percentage
46
+ * @param {number} width - bar width in characters (default 12)
47
+ * @returns {string} Unicode progress bar like ▰▰▰▰▰▱▱▱▱▱▱▱
48
+ */
49
+ function progressBar(percent, width = 12) {
50
+ const clamped = Math.max(0, Math.min(100, percent));
51
+ const filled = Math.round(clamped * width / 100);
52
+ const empty = width - filled;
53
+ // ▰ (U+25B0) filled, ▱ (U+25B1) empty - smooth horizontal rectangles
54
+ return '▰'.repeat(filled) + '▱'.repeat(empty);
55
+ }
56
+
57
+ /**
58
+ * Get severity emoji based on percentage (no color codes)
59
+ *
60
+ * @param {number} percent - 0-100 percentage
61
+ * @returns {string} Emoji indicator
62
+ */
63
+ function getSeverityEmoji(percent) {
64
+ if (percent >= 90) return '🔴'; // Critical
65
+ if (percent >= 70) return '🟡'; // Warning
66
+ return '🟢'; // Healthy
67
+ }
68
+
69
+ /**
70
+ * Expand home directory to ~
71
+ * @param {string} filePath - file path to expand
72
+ */
73
+ function expandHome(filePath) {
74
+ const homeDir = os.homedir();
75
+ if (filePath.startsWith(homeDir)) {
76
+ return filePath.replace(homeDir, '~');
77
+ }
78
+ return filePath;
79
+ }
80
+
81
+ /**
82
+ * Read stdin asynchronously
83
+ */
84
+ async function readStdin() {
85
+ return new Promise((resolve, reject) => {
86
+ const chunks = [];
87
+ stdin.setEncoding('utf8');
88
+
89
+ stdin.on('data', (chunk) => {
90
+ chunks.push(chunk);
91
+ });
92
+
93
+ stdin.on('end', () => {
94
+ resolve(chunks.join(''));
95
+ });
96
+
97
+ stdin.on('error', (err) => {
98
+ reject(err);
99
+ });
100
+ });
101
+ }
102
+
103
+ /**
104
+ * Main function
105
+ */
106
+ async function main() {
107
+ try {
108
+ const input = await readStdin();
109
+ if (!input.trim()) {
110
+ console.error('No input provided');
111
+ process.exit(1);
112
+ }
113
+
114
+ const data = JSON.parse(input);
115
+
116
+ let currentDir = 'unknown';
117
+ if (data.workspace?.current_dir) {
118
+ currentDir = data.workspace.current_dir;
119
+ } else if (data.cwd) {
120
+ currentDir = data.cwd;
121
+ }
122
+ currentDir = expandHome(currentDir);
123
+
124
+ const modelName = data.model?.display_name || 'Claude';
125
+ const modelVersion = data.model?.version && data.model.version !== 'null' ? data.model.version : '';
126
+
127
+ let gitBranch = '';
128
+ let gitUnstaged = 0;
129
+ const gitCheck = exec('git rev-parse --git-dir');
130
+ if (gitCheck) {
131
+ gitBranch = exec('git branch --show-current');
132
+ if (!gitBranch) {
133
+ gitBranch = exec('git rev-parse --short HEAD');
134
+ }
135
+ const unstagedOutput = exec('git diff --name-only');
136
+ if (unstagedOutput) {
137
+ gitUnstaged = unstagedOutput.split('\n').filter(line => line.trim()).length;
138
+ }
139
+ }
140
+
141
+ let sessionText = '';
142
+ let costUSD = '';
143
+ let linesAdded = 0;
144
+ let linesRemoved = 0;
145
+ let contextPercent = 0;
146
+ let contextText = '';
147
+ const billingMode = env.CLAUDE_BILLING_MODE || 'api';
148
+
149
+ costUSD = data.cost?.total_cost_usd || '';
150
+ linesAdded = data.cost?.total_lines_added || 0;
151
+ linesRemoved = data.cost?.total_lines_removed || 0;
152
+
153
+ const contextInput = data.context_window?.total_input_tokens || 0;
154
+ const contextOutput = data.context_window?.total_output_tokens || 0;
155
+ const contextSize = data.context_window?.context_window_size || 0;
156
+
157
+ if (contextSize > 0) {
158
+ const result = trackContext({
159
+ sessionId: data.session_id,
160
+ contextInput,
161
+ contextOutput,
162
+ contextWindowSize: contextSize
163
+ });
164
+
165
+ contextPercent = result.percentage;
166
+
167
+ if (result.showCompactIndicator) {
168
+ contextText = `🔄 ▱▱▱▱▱▱▱▱▱▱▱▱`;
169
+ } else {
170
+ const emoji = getSeverityEmoji(contextPercent);
171
+ const bar = progressBar(contextPercent, 12);
172
+ contextText = `${emoji} ${bar} ${contextPercent}%`;
173
+ }
174
+ }
175
+
176
+ const transcriptPath = data.transcript_path;
177
+
178
+ if (transcriptPath) {
179
+ try {
180
+ if (fs.existsSync(transcriptPath)) {
181
+ const content = fs.readFileSync(transcriptPath, 'utf8');
182
+ const lines = content.split('\n').filter(l => l.trim());
183
+
184
+ let firstApiCall = null;
185
+ for (const line of lines) {
186
+ try {
187
+ const entry = JSON.parse(line);
188
+ if (entry.usage && entry.timestamp) {
189
+ firstApiCall = entry.timestamp;
190
+ break;
191
+ }
192
+ } catch (e) {
193
+ continue;
194
+ }
195
+ }
196
+
197
+ if (firstApiCall) {
198
+ const now = new Date();
199
+ const currentUtcHour = now.getUTCHours();
200
+ const blockStart = Math.floor(currentUtcHour / 5) * 5;
201
+ let blockEnd = blockStart + 5;
202
+
203
+ let blockEndDate = new Date(now);
204
+ if (blockEnd >= 24) {
205
+ blockEnd -= 24;
206
+ blockEndDate.setUTCDate(blockEndDate.getUTCDate() + 1);
207
+ }
208
+ blockEndDate.setUTCHours(blockEnd, 0, 0, 0);
209
+
210
+ const nowSec = Math.floor(Date.now() / 1000);
211
+ const blockEndSec = Math.floor(blockEndDate.getTime() / 1000);
212
+ const remaining = blockEndSec - nowSec;
213
+
214
+ if (remaining > 0 && remaining < 18000) {
215
+ const rh = Math.floor(remaining / 3600);
216
+ const rm = Math.floor((remaining % 3600) / 60);
217
+ const blockEndLocal = formatTimeHM(blockEndSec);
218
+ sessionText = `${rh}h ${rm}m until reset at ${blockEndLocal}`;
219
+ }
220
+ }
221
+ }
222
+ } catch (err) {
223
+ // Silent fail - transcript not readable
224
+ }
225
+ }
226
+
227
+ let output = '';
228
+
229
+ output += `📁 ${currentDir}`;
230
+
231
+ if (gitBranch) {
232
+ output += ` 🌿 ${gitBranch}`;
233
+ if (gitUnstaged > 0) {
234
+ output += ` (${gitUnstaged})`;
235
+ }
236
+ }
237
+
238
+ output += ` 🤖 ${modelName}`;
239
+
240
+ if (modelVersion) {
241
+ output += ` ${modelVersion}`;
242
+ }
243
+
244
+ if (sessionText) {
245
+ output += ` ⌛ ${sessionText}`;
246
+ }
247
+
248
+ if (billingMode === 'api' && costUSD && /^\d+(\.\d+)?$/.test(costUSD.toString())) {
249
+ const costUSDNum = parseFloat(costUSD);
250
+ output += ` 💵 $${costUSDNum.toFixed(4)}`;
251
+ }
252
+
253
+ if ((linesAdded > 0 || linesRemoved > 0)) {
254
+ output += ` 📝 +${linesAdded} -${linesRemoved}`;
255
+ }
256
+
257
+ if (contextText) {
258
+ output += ` ${contextText}`;
259
+ }
260
+
261
+ console.log(output);
262
+ } catch (err) {
263
+ console.error('Error:', err.message);
264
+ process.exit(1);
265
+ }
266
+ }
267
+
268
+ main().catch(err => {
269
+ console.error('Fatal error:', err);
270
+ process.exit(1);
271
+ });
@@ -0,0 +1,22 @@
1
+ docs/*
2
+ plans/*
3
+ assets/*
4
+ dist/*
5
+ coverage/*
6
+ build/*
7
+ ios/*
8
+ android/*
9
+ tests/*
10
+ __tests__/*
11
+ __pycache__/*
12
+ node_modules/*
13
+
14
+ .opencode/*
15
+ .claude/*
16
+ .serena/*
17
+ .pnpm-store/*
18
+ .github/*
19
+ .dart_tool/*
20
+ .idea/*
21
+ .husky/*
22
+ .venv/*
@@ -0,0 +1,55 @@
1
+ # AGENTS.md
2
+
3
+ This file provides guidance to OpenCode when working with code in this repository.
4
+
5
+ ## Role & Responsibilities
6
+
7
+ Your role is to analyze user requirements, delegate tasks to appropriate sub-agents, and ensure cohesive delivery of features that meet specifications and architectural standards.
8
+
9
+ ## Workflows
10
+
11
+ - Primary workflow: `./.claude/rules/primary-workflow.md`
12
+ - Development rules: `./.claude/rules/development-rules.md`
13
+ - Orchestration protocols: `./.claude/rules/orchestration-protocol.md`
14
+ - Documentation management: `./.claude/rules/documentation-management.md`
15
+ - And other workflows: `./.claude/rules/*`
16
+
17
+ **IMPORTANT:** Analyze the skills catalog and activate the skills that are needed for the task during the process.
18
+ **IMPORTANT:** You must follow strictly the development rules in `./.claude/rules/development-rules.md` file.
19
+ **IMPORTANT:** Before you plan or proceed any implementation, always read the `./README.md` file first to get context.
20
+ **IMPORTANT:** Sacrifice grammar for the sake of concision when writing reports.
21
+ **IMPORTANT:** In reports, list any unresolved questions at the end, if any.
22
+
23
+ ## Development Principles
24
+
25
+ - **YAGNI**: You Aren't Gonna Need It - avoid over-engineering
26
+ - **KISS**: Keep It Simple, Stupid - prefer simple solutions
27
+ - **DRY**: Don't Repeat Yourself - eliminate code duplication
28
+
29
+ ## Documentation
30
+
31
+ Keep all important docs in `./docs` folder:
32
+
33
+ ```
34
+ ./docs
35
+ ├── project-overview-pdr.md
36
+ ├── code-standards.md
37
+ ├── codebase-summary.md
38
+ ├── design-guidelines.md
39
+ └── system-architecture.md
40
+ ```
41
+
42
+ ## External Files
43
+
44
+ Reference external instruction files in `opencode.json`:
45
+
46
+ ```json
47
+ {
48
+ "instructions": ["docs/*.md", ".opencode/agents/*.md"]
49
+ }
50
+ ```
51
+
52
+ ---
53
+
54
+ *Generated by Claude Code Toolkit OpenCode Generator*
55
+ *Date: 2026-01-11*
@@ -0,0 +1,87 @@
1
+ # CLAUDE.md
2
+
3
+ This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4
+
5
+ ## Role & Responsibilities
6
+
7
+ Your role is to analyze user requirements, delegate tasks to appropriate sub-agents, and ensure cohesive delivery of features that meet specifications and architectural standards.
8
+
9
+ ## Workflows
10
+
11
+ - Primary workflow: `./.claude/rules/primary-workflow.md`
12
+ - Development rules: `./.claude/rules/development-rules.md`
13
+ - Orchestration protocols: `./.claude/rules/orchestration-protocol.md`
14
+ - Documentation management: `./.claude/rules/documentation-management.md`
15
+ - And other workflows: `./.claude/rules/*`
16
+
17
+ **IMPORTANT:** Analyze the skills catalog and activate the skills that are needed for the task during the process.
18
+ **IMPORTANT:** You must follow strictly the development rules in `./.claude/rules/development-rules.md` file.
19
+ **IMPORTANT:** Before you plan or proceed any implementation, always read the `./README.md` file first to get context.
20
+ **IMPORTANT:** Sacrifice grammar for the sake of concision when writing reports.
21
+ **IMPORTANT:** In reports, list any unresolved questions at the end, if any.
22
+
23
+ ## Hook Response Protocol
24
+
25
+ ### Privacy Block Hook (`@@PRIVACY_PROMPT@@`)
26
+
27
+ When a tool call is blocked by the privacy-block hook, the output contains a JSON marker between `@@PRIVACY_PROMPT_START@@` and `@@PRIVACY_PROMPT_END@@`. **You MUST use the `AskUserQuestion` tool** to get proper user approval.
28
+
29
+ **Required Flow:**
30
+
31
+ 1. Parse the JSON from the hook output
32
+ 2. Use `AskUserQuestion` with the question data from the JSON
33
+ 3. Based on user's selection:
34
+ - **"Yes, approve access"** → Use `bash cat "filepath"` to read the file (bash is auto-approved)
35
+ - **"No, skip this file"** → Continue without accessing the file
36
+
37
+ **Example AskUserQuestion call:**
38
+ ```json
39
+ {
40
+ "questions": [{
41
+ "question": "I need to read \".env\" which may contain sensitive data. Do you approve?",
42
+ "header": "File Access",
43
+ "options": [
44
+ { "label": "Yes, approve access", "description": "Allow reading .env this time" },
45
+ { "label": "No, skip this file", "description": "Continue without accessing this file" }
46
+ ],
47
+ "multiSelect": false
48
+ }]
49
+ }
50
+ ```
51
+
52
+ **IMPORTANT:** Always ask the user via `AskUserQuestion` first. Never try to work around the privacy block without explicit user approval.
53
+
54
+ ## Python Scripts (Skills)
55
+
56
+ When running Python scripts from `.claude/skills/`, use the venv Python interpreter:
57
+ - **Linux/macOS:** `.claude/skills/.venv/bin/python3 scripts/xxx.py`
58
+
59
+ This ensures packages installed by the CLI toolkit are available.
60
+
61
+ **IMPORTANT:** When scripts of skills failed, don't stop, try to fix them directly.
62
+
63
+ ## [IMPORTANT] Consider Modularization
64
+ - If a code file exceeds 200 lines of code, consider modularizing it
65
+ - Check existing modules before creating new
66
+ - Analyze logical separation boundaries (functions, classes, concerns)
67
+ - Use kebab-case naming with long descriptive names, it's fine if the file name is long because this ensures file names are self-documenting for LLM tools (Grep, Glob, Search)
68
+ - Write descriptive code comments
69
+ - After modularization, continue with main task
70
+ - When not to modularize: Markdown files, plain text files, bash scripts, configuration files, environment variables files, etc.
71
+
72
+ ## Documentation Management
73
+
74
+ We keep all important docs in `./docs` folder and keep updating them, structure like below:
75
+
76
+ ```
77
+ ./docs
78
+ ├── project-overview-pdr.md
79
+ ├── code-standards.md
80
+ ├── codebase-summary.md
81
+ ├── design-guidelines.md
82
+ ├── deployment-guide.md
83
+ ├── system-architecture.md
84
+ └── project-roadmap.md
85
+ ```
86
+
87
+ **IMPORTANT:** *MUST READ* and *MUST COMPLY* all *INSTRUCTIONS* in project `./CLAUDE.md`, especially *WORKFLOWS* section is *CRITICALLY IMPORTANT*, this rule is *MANDATORY. NON-NEGOTIABLE. NO EXCEPTIONS. MUST REMEMBER AT ALL TIMES!!!*