@haposoft/cafekit 0.5.6 → 0.7.0

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 (387) hide show
  1. package/bin/install.js +112 -66
  2. package/package.json +1 -1
  3. package/src/claude/CLAUDE.md +96 -0
  4. package/src/claude/agents/brainstormer.md +75 -0
  5. package/src/claude/agents/code-auditor.md +111 -0
  6. package/src/claude/agents/debugger.md +6 -7
  7. package/src/claude/agents/deployer.md +102 -0
  8. package/src/claude/agents/docs-keeper.md +73 -0
  9. package/src/claude/agents/git-ops.md +20 -0
  10. package/src/claude/agents/god-developer.md +95 -0
  11. package/src/claude/agents/inspector.md +54 -0
  12. package/src/claude/agents/project-manager.md +38 -0
  13. package/src/claude/agents/researcher.md +61 -0
  14. package/src/claude/agents/spec-maker.md +75 -0
  15. package/src/claude/agents/test-runner.md +84 -0
  16. package/src/claude/agents/ui-ux-designer.md +85 -0
  17. package/src/{common/skills → claude/archive-command}/code/SKILL.md +1 -1
  18. package/src/claude/{commands → archive-command}/review/codebase/parallel.md +15 -61
  19. package/src/claude/{commands → archive-command}/test.md +1 -1
  20. package/src/claude/hooks/agent.cjs +86 -183
  21. package/src/claude/hooks/docs-sync.cjs +101 -0
  22. package/src/claude/hooks/inspect-block.cjs +124 -0
  23. package/src/claude/hooks/lib/context.cjs +2 -2
  24. package/src/claude/hooks/privacy-block.cjs +126 -0
  25. package/src/claude/hooks/rules.cjs +115 -0
  26. package/src/claude/hooks/session.cjs +143 -335
  27. package/src/claude/hooks/spec-state.cjs +94 -0
  28. package/src/claude/hooks/state.cjs +227 -0
  29. package/src/claude/hooks/usage.cjs +16 -12
  30. package/src/claude/migration-manifest.json +51 -28
  31. package/src/claude/references/debugger/core-philosophy.md +20 -0
  32. package/src/claude/references/debugger/docs-research.md +14 -0
  33. package/src/claude/references/debugger/log-ci-analysis.md +14 -0
  34. package/src/claude/references/debugger/parallel-agent-hydration.md +43 -0
  35. package/src/claude/references/debugger/problem-solving.md +19 -0
  36. package/src/claude/references/debugger/repomix-guidelines.md +20 -0
  37. package/src/claude/references/debugger/root-cause-tracing.md +17 -0
  38. package/src/claude/references/debugger/verification-protocol.md +23 -0
  39. package/src/claude/rules/ai-dev-rules.md +65 -0
  40. package/src/claude/rules/manage-docs.md +91 -0
  41. package/src/claude/rules/orchestrator.md +121 -0
  42. package/src/claude/rules/state-sync.md +24 -0
  43. package/src/claude/rules/workflow.md +60 -0
  44. package/src/claude/runtime.json +29 -2
  45. package/src/claude/scripts/browser-tool.cjs +138 -0
  46. package/src/claude/scripts/docs-fetch.js +81 -0
  47. package/src/claude/scripts/validate-docs.cjs +68 -0
  48. package/src/claude/settings/settings.json +105 -0
  49. package/src/claude/skills/agent-browser/SKILL.md +297 -0
  50. package/src/claude/skills/agent-browser/references/.gitkeep +0 -0
  51. package/src/claude/skills/agent-browser/references/agent-browser-vs-chrome-devtools.md +112 -0
  52. package/src/claude/skills/agent-browser/references/browserbase-cloud-setup.md +161 -0
  53. package/src/claude/skills/ai-multimodal/.env.example +230 -0
  54. package/src/claude/skills/ai-multimodal/SKILL.md +91 -0
  55. package/src/claude/skills/ai-multimodal/references/audio-processing.md +387 -0
  56. package/src/claude/skills/ai-multimodal/references/video-analysis.md +515 -0
  57. package/src/claude/skills/ai-multimodal/references/vision-understanding.md +492 -0
  58. package/src/claude/skills/ai-multimodal/scripts/.coverage +0 -0
  59. package/src/claude/skills/ai-multimodal/scripts/check_setup.py +315 -0
  60. package/src/claude/skills/ai-multimodal/scripts/document_converter.py +395 -0
  61. package/src/claude/skills/ai-multimodal/scripts/gemini_batch_process.py +1211 -0
  62. package/src/claude/skills/ai-multimodal/scripts/media_optimizer.py +506 -0
  63. package/src/claude/skills/ai-multimodal/scripts/requirements.txt +26 -0
  64. package/src/claude/skills/ai-multimodal/scripts/tests/.coverage +0 -0
  65. package/src/claude/skills/ai-multimodal/scripts/tests/requirements.txt +20 -0
  66. package/src/claude/skills/ai-multimodal/scripts/tests/test_document_converter.py +74 -0
  67. package/src/claude/skills/ai-multimodal/scripts/tests/test_gemini_batch_process.py +362 -0
  68. package/src/claude/skills/ai-multimodal/scripts/tests/test_media_optimizer.py +373 -0
  69. package/src/claude/skills/ai-multimodal/scripts/tests/test_minimax_api_client.py +232 -0
  70. package/src/claude/skills/ai-multimodal/scripts/tests/test_minimax_cli.py +185 -0
  71. package/src/claude/skills/backend-development/SKILL.md +96 -0
  72. package/src/claude/skills/backend-development/references/backend-api-design.md +495 -0
  73. package/src/claude/skills/backend-development/references/backend-architecture.md +454 -0
  74. package/src/claude/skills/backend-development/references/backend-authentication.md +338 -0
  75. package/src/claude/skills/backend-development/references/backend-code-quality.md +659 -0
  76. package/src/claude/skills/backend-development/references/backend-debugging.md +904 -0
  77. package/src/claude/skills/backend-development/references/backend-devops.md +491 -0
  78. package/src/claude/skills/backend-development/references/backend-mindset.md +387 -0
  79. package/src/claude/skills/backend-development/references/backend-performance.md +397 -0
  80. package/src/claude/skills/backend-development/references/backend-security.md +290 -0
  81. package/src/claude/skills/backend-development/references/backend-technologies.md +256 -0
  82. package/src/claude/skills/backend-development/references/backend-testing.md +429 -0
  83. package/src/claude/skills/brainstorm/SKILL.md +84 -0
  84. package/src/claude/skills/chrome-devtools/SKILL.md +628 -0
  85. package/src/claude/skills/chrome-devtools/references/cdp-domains.md +694 -0
  86. package/src/claude/skills/chrome-devtools/references/performance-guide.md +940 -0
  87. package/src/claude/skills/chrome-devtools/references/puppeteer-reference.md +953 -0
  88. package/src/claude/skills/chrome-devtools/scripts/README.md +290 -0
  89. package/src/claude/skills/chrome-devtools/scripts/__tests__/error-handling.test.js +102 -0
  90. package/src/claude/skills/chrome-devtools/scripts/__tests__/selector.test.js +210 -0
  91. package/src/claude/skills/chrome-devtools/scripts/aria-snapshot.js +363 -0
  92. package/src/claude/skills/chrome-devtools/scripts/click.js +84 -0
  93. package/src/claude/skills/chrome-devtools/scripts/connect-chrome.js +146 -0
  94. package/src/claude/skills/chrome-devtools/scripts/console.js +81 -0
  95. package/src/claude/skills/chrome-devtools/scripts/evaluate.js +56 -0
  96. package/src/claude/skills/chrome-devtools/scripts/fill.js +77 -0
  97. package/src/claude/skills/chrome-devtools/scripts/import-cookies.js +205 -0
  98. package/src/claude/skills/chrome-devtools/scripts/inject-auth.js +230 -0
  99. package/src/claude/skills/chrome-devtools/scripts/install-deps.sh +181 -0
  100. package/src/claude/skills/chrome-devtools/scripts/install.sh +83 -0
  101. package/src/claude/skills/chrome-devtools/scripts/lib/browser.js +374 -0
  102. package/src/claude/skills/chrome-devtools/scripts/lib/selector.js +178 -0
  103. package/src/claude/skills/chrome-devtools/scripts/navigate.js +138 -0
  104. package/src/claude/skills/chrome-devtools/scripts/network.js +108 -0
  105. package/src/claude/skills/chrome-devtools/scripts/package-lock.json +1599 -0
  106. package/src/claude/skills/chrome-devtools/scripts/package.json +16 -0
  107. package/src/claude/skills/chrome-devtools/scripts/performance.js +151 -0
  108. package/src/claude/skills/chrome-devtools/scripts/screenshot.js +199 -0
  109. package/src/claude/skills/chrome-devtools/scripts/select-ref.js +132 -0
  110. package/src/claude/skills/chrome-devtools/scripts/snapshot.js +136 -0
  111. package/src/claude/skills/chrome-devtools/scripts/ws-debug.js +44 -0
  112. package/src/claude/skills/chrome-devtools/scripts/ws-full-debug.js +107 -0
  113. package/src/claude/skills/code/SKILL.md +55 -0
  114. package/src/claude/skills/code/references/execution-loop.md +21 -0
  115. package/src/claude/skills/code-review/SKILL.md +91 -0
  116. package/src/claude/skills/code-review/references/adversarial-review.md +52 -0
  117. package/src/claude/skills/code-review/references/pre-landing-checklists.md +30 -0
  118. package/src/claude/skills/code-review/references/spec-compliance-review.md +35 -0
  119. package/src/claude/skills/code-review/references/verification-gate.md +33 -0
  120. package/src/claude/skills/develop/SKILL.md +67 -0
  121. package/src/claude/skills/develop/references/quality-gate.md +78 -0
  122. package/src/claude/skills/develop/references/subagent-patterns.md +46 -0
  123. package/src/claude/skills/devops/.env.example +76 -0
  124. package/src/claude/skills/devops/SKILL.md +97 -0
  125. package/src/claude/skills/devops/references/browser-rendering.md +305 -0
  126. package/src/claude/skills/devops/references/cloudflare-d1-kv.md +123 -0
  127. package/src/claude/skills/devops/references/cloudflare-platform.md +271 -0
  128. package/src/claude/skills/devops/references/cloudflare-r2-storage.md +280 -0
  129. package/src/claude/skills/devops/references/cloudflare-workers-advanced.md +312 -0
  130. package/src/claude/skills/devops/references/cloudflare-workers-apis.md +309 -0
  131. package/src/claude/skills/devops/references/cloudflare-workers-basics.md +418 -0
  132. package/src/claude/skills/devops/references/docker-basics.md +297 -0
  133. package/src/claude/skills/devops/references/docker-compose.md +292 -0
  134. package/src/claude/skills/devops/references/gcloud-platform.md +297 -0
  135. package/src/claude/skills/devops/references/gcloud-services.md +304 -0
  136. package/src/claude/skills/devops/references/kubernetes-basics.md +95 -0
  137. package/src/claude/skills/devops/references/kubernetes-helm-advanced.md +70 -0
  138. package/src/claude/skills/devops/references/kubernetes-helm.md +81 -0
  139. package/src/claude/skills/devops/references/kubernetes-kubectl.md +74 -0
  140. package/src/claude/skills/devops/references/kubernetes-security-advanced.md +94 -0
  141. package/src/claude/skills/devops/references/kubernetes-security.md +89 -0
  142. package/src/claude/skills/devops/references/kubernetes-troubleshooting-advanced.md +74 -0
  143. package/src/claude/skills/devops/references/kubernetes-troubleshooting.md +49 -0
  144. package/src/claude/skills/devops/references/kubernetes-workflows-advanced.md +75 -0
  145. package/src/claude/skills/devops/references/kubernetes-workflows.md +76 -0
  146. package/src/claude/skills/devops/scripts/cloudflare_deploy.py +269 -0
  147. package/src/claude/skills/devops/scripts/docker_optimize.py +332 -0
  148. package/src/claude/skills/devops/scripts/requirements.txt +20 -0
  149. package/src/claude/skills/devops/scripts/tests/requirements.txt +3 -0
  150. package/src/claude/skills/devops/scripts/tests/test_cloudflare_deploy.py +285 -0
  151. package/src/claude/skills/devops/scripts/tests/test_docker_optimize.py +436 -0
  152. package/src/claude/skills/frontend-design/SKILL.md +130 -0
  153. package/src/claude/skills/frontend-design/references/ai-multimodal-overview.md +165 -0
  154. package/src/claude/skills/frontend-design/references/analysis-best-practices.md +80 -0
  155. package/src/claude/skills/frontend-design/references/analysis-prompts.md +141 -0
  156. package/src/claude/skills/frontend-design/references/analysis-techniques.md +118 -0
  157. package/src/claude/skills/frontend-design/references/animejs.md +396 -0
  158. package/src/claude/skills/frontend-design/references/anti-slop-rules.md +103 -0
  159. package/src/claude/skills/frontend-design/references/asset-generation.md +337 -0
  160. package/src/claude/skills/frontend-design/references/bento-motion-engine.md +142 -0
  161. package/src/claude/skills/frontend-design/references/design-extraction-overview.md +71 -0
  162. package/src/claude/skills/frontend-design/references/extraction-best-practices.md +141 -0
  163. package/src/claude/skills/frontend-design/references/extraction-output-templates.md +162 -0
  164. package/src/claude/skills/frontend-design/references/extraction-prompts.md +127 -0
  165. package/src/claude/skills/frontend-design/references/magicui-components.md +129 -0
  166. package/src/claude/skills/frontend-design/references/performance-guardrails.md +169 -0
  167. package/src/claude/skills/frontend-design/references/premium-design-patterns.md +93 -0
  168. package/src/claude/skills/frontend-design/references/redesign-audit-checklist.md +114 -0
  169. package/src/claude/skills/frontend-design/references/technical-accessibility.md +119 -0
  170. package/src/claude/skills/frontend-design/references/technical-best-practices.md +97 -0
  171. package/src/claude/skills/frontend-design/references/technical-optimization.md +44 -0
  172. package/src/claude/skills/frontend-design/references/technical-overview.md +90 -0
  173. package/src/claude/skills/frontend-design/references/technical-workflows.md +150 -0
  174. package/src/claude/skills/frontend-design/references/visual-analysis-overview.md +95 -0
  175. package/src/claude/skills/frontend-design/references/workflow-3d.md +102 -0
  176. package/src/claude/skills/frontend-design/references/workflow-describe.md +87 -0
  177. package/src/claude/skills/frontend-design/references/workflow-immersive.md +87 -0
  178. package/src/claude/skills/frontend-design/references/workflow-quick.md +57 -0
  179. package/src/claude/skills/frontend-design/references/workflow-screenshot.md +63 -0
  180. package/src/claude/skills/frontend-design/references/workflow-video.md +74 -0
  181. package/src/claude/skills/frontend-development/SKILL.md +401 -0
  182. package/src/claude/skills/frontend-development/resources/common-patterns.md +331 -0
  183. package/src/claude/skills/frontend-development/resources/complete-examples.md +872 -0
  184. package/src/claude/skills/frontend-development/resources/component-patterns.md +502 -0
  185. package/src/claude/skills/frontend-development/resources/data-fetching.md +767 -0
  186. package/src/claude/skills/frontend-development/resources/file-organization.md +502 -0
  187. package/src/claude/skills/frontend-development/resources/loading-and-error-states.md +501 -0
  188. package/src/claude/skills/frontend-development/resources/performance.md +406 -0
  189. package/src/claude/skills/frontend-development/resources/routing-guide.md +364 -0
  190. package/src/claude/skills/frontend-development/resources/styling-guide.md +428 -0
  191. package/src/claude/skills/frontend-development/resources/typescript-standards.md +418 -0
  192. package/src/claude/skills/git/SKILL.md +44 -0
  193. package/src/claude/skills/git/references/commit-protocols.md +39 -0
  194. package/src/claude/skills/git/references/worktree-blueprint.md +48 -0
  195. package/src/claude/skills/hotfix/SKILL.md +222 -0
  196. package/src/claude/skills/hotfix/references/diagnosis-protocol.md +120 -0
  197. package/src/claude/skills/hotfix/references/escalation-tactics.md +56 -0
  198. package/src/claude/skills/hotfix/references/parallel-patterns.md +103 -0
  199. package/src/claude/skills/hotfix/references/prevention-gate.md +51 -0
  200. package/src/claude/skills/hotfix/references/review-cycle.md +72 -0
  201. package/src/claude/skills/hotfix/references/workflow-specialized.md +72 -0
  202. package/src/{common → claude}/skills/impact-analysis/references/dependency-scouting.md +3 -3
  203. package/src/{common/skills/inspector → claude/skills/inspect}/SKILL.md +7 -7
  204. package/src/{common/skills/inspector → claude/skills/inspect}/references/external-gemini-inspection.md +1 -1
  205. package/src/{common/skills/inspector → claude/skills/inspect}/references/internal-inspection.md +2 -2
  206. package/src/claude/skills/llm-moe/SKILL.md +62 -0
  207. package/src/claude/skills/llm-moe/references/vision-understanding.md +36 -0
  208. package/src/claude/skills/llm-moe/scripts/package.json +10 -0
  209. package/src/claude/skills/llm-moe/scripts/visual-analyze.js +67 -0
  210. package/src/claude/skills/mobile-development/SKILL.md +213 -0
  211. package/src/claude/skills/mobile-development/references/mobile-android.md +604 -0
  212. package/src/claude/skills/mobile-development/references/mobile-best-practices.md +545 -0
  213. package/src/claude/skills/mobile-development/references/mobile-debugging.md +1089 -0
  214. package/src/claude/skills/mobile-development/references/mobile-frameworks.md +465 -0
  215. package/src/claude/skills/mobile-development/references/mobile-ios.md +496 -0
  216. package/src/claude/skills/mobile-development/references/mobile-mindset.md +544 -0
  217. package/src/claude/skills/react-best-practices/AGENTS.md +2249 -0
  218. package/src/claude/skills/react-best-practices/README.md +123 -0
  219. package/src/claude/skills/react-best-practices/SKILL.md +123 -0
  220. package/src/claude/skills/react-best-practices/metadata.json +15 -0
  221. package/src/claude/skills/react-best-practices/rules/_sections.md +46 -0
  222. package/src/claude/skills/react-best-practices/rules/_template.md +28 -0
  223. package/src/claude/skills/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  224. package/src/claude/skills/react-best-practices/rules/advanced-use-latest.md +49 -0
  225. package/src/claude/skills/react-best-practices/rules/async-api-routes.md +38 -0
  226. package/src/claude/skills/react-best-practices/rules/async-defer-await.md +80 -0
  227. package/src/claude/skills/react-best-practices/rules/async-dependencies.md +36 -0
  228. package/src/claude/skills/react-best-practices/rules/async-parallel.md +28 -0
  229. package/src/claude/skills/react-best-practices/rules/async-suspense-boundaries.md +99 -0
  230. package/src/claude/skills/react-best-practices/rules/bundle-barrel-imports.md +59 -0
  231. package/src/claude/skills/react-best-practices/rules/bundle-conditional.md +31 -0
  232. package/src/claude/skills/react-best-practices/rules/bundle-defer-third-party.md +49 -0
  233. package/src/claude/skills/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  234. package/src/claude/skills/react-best-practices/rules/bundle-preload.md +50 -0
  235. package/src/claude/skills/react-best-practices/rules/client-event-listeners.md +74 -0
  236. package/src/claude/skills/react-best-practices/rules/client-swr-dedup.md +56 -0
  237. package/src/claude/skills/react-best-practices/rules/js-batch-dom-css.md +82 -0
  238. package/src/claude/skills/react-best-practices/rules/js-cache-function-results.md +80 -0
  239. package/src/claude/skills/react-best-practices/rules/js-cache-property-access.md +28 -0
  240. package/src/claude/skills/react-best-practices/rules/js-cache-storage.md +70 -0
  241. package/src/claude/skills/react-best-practices/rules/js-combine-iterations.md +32 -0
  242. package/src/claude/skills/react-best-practices/rules/js-early-exit.md +50 -0
  243. package/src/claude/skills/react-best-practices/rules/js-hoist-regexp.md +45 -0
  244. package/src/claude/skills/react-best-practices/rules/js-index-maps.md +37 -0
  245. package/src/claude/skills/react-best-practices/rules/js-length-check-first.md +49 -0
  246. package/src/claude/skills/react-best-practices/rules/js-min-max-loop.md +82 -0
  247. package/src/claude/skills/react-best-practices/rules/js-set-map-lookups.md +24 -0
  248. package/src/claude/skills/react-best-practices/rules/js-tosorted-immutable.md +57 -0
  249. package/src/claude/skills/react-best-practices/rules/rendering-activity.md +26 -0
  250. package/src/claude/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  251. package/src/claude/skills/react-best-practices/rules/rendering-conditional-render.md +40 -0
  252. package/src/claude/skills/react-best-practices/rules/rendering-content-visibility.md +38 -0
  253. package/src/claude/skills/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  254. package/src/claude/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  255. package/src/claude/skills/react-best-practices/rules/rendering-svg-precision.md +28 -0
  256. package/src/claude/skills/react-best-practices/rules/rerender-defer-reads.md +39 -0
  257. package/src/claude/skills/react-best-practices/rules/rerender-dependencies.md +45 -0
  258. package/src/claude/skills/react-best-practices/rules/rerender-derived-state.md +29 -0
  259. package/src/claude/skills/react-best-practices/rules/rerender-functional-setstate.md +74 -0
  260. package/src/claude/skills/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  261. package/src/claude/skills/react-best-practices/rules/rerender-memo.md +44 -0
  262. package/src/claude/skills/react-best-practices/rules/rerender-transitions.md +40 -0
  263. package/src/claude/skills/react-best-practices/rules/server-after-nonblocking.md +73 -0
  264. package/src/claude/skills/react-best-practices/rules/server-cache-lru.md +41 -0
  265. package/src/claude/skills/react-best-practices/rules/server-cache-react.md +26 -0
  266. package/src/claude/skills/react-best-practices/rules/server-parallel-fetching.md +79 -0
  267. package/src/claude/skills/react-best-practices/rules/server-serialization.md +38 -0
  268. package/src/claude/skills/research/SKILL.md +41 -0
  269. package/src/claude/skills/specs/SKILL.md +331 -0
  270. package/src/claude/skills/specs/references/archive-workflow.md +74 -0
  271. package/src/claude/skills/specs/references/codebase-analysis.md +54 -0
  272. package/src/claude/skills/specs/references/cross-spec-dependency.md +72 -0
  273. package/src/claude/skills/specs/references/research-strategy.md +57 -0
  274. package/src/claude/skills/specs/references/review.md +216 -0
  275. package/src/claude/skills/specs/references/scope-inquiry.md +59 -0
  276. package/src/claude/skills/specs/references/task-hydration.md +91 -0
  277. package/src/{common → claude}/skills/specs/templates/init.json +29 -3
  278. package/src/claude/skills/specs/templates/task.md +35 -0
  279. package/src/claude/skills/sync/SKILL.md +40 -0
  280. package/src/claude/skills/sync/references/sync-protocols.md +35 -0
  281. package/src/claude/skills/test/SKILL.md +150 -0
  282. package/src/claude/skills/test/references/execution-strategy.md +364 -0
  283. package/src/claude/skills/test/references/failure-triage.md +128 -0
  284. package/src/claude/skills/test/references/test-memory.md +40 -0
  285. package/src/claude/skills/ui-ux-pro-max/SKILL.md +660 -0
  286. package/src/claude/skills/ui-ux-pro-max/data/_sync_all.py +414 -0
  287. package/src/claude/skills/ui-ux-pro-max/data/app-interface.csv +31 -0
  288. package/src/claude/skills/ui-ux-pro-max/data/charts.csv +26 -0
  289. package/src/claude/skills/ui-ux-pro-max/data/colors.csv +162 -0
  290. package/src/claude/skills/ui-ux-pro-max/data/design.csv +1776 -0
  291. package/src/claude/skills/ui-ux-pro-max/data/draft.csv +1779 -0
  292. package/src/claude/skills/ui-ux-pro-max/data/google-fonts.csv +1924 -0
  293. package/src/claude/skills/ui-ux-pro-max/data/icons.csv +106 -0
  294. package/src/claude/skills/ui-ux-pro-max/data/landing.csv +35 -0
  295. package/src/claude/skills/ui-ux-pro-max/data/products.csv +162 -0
  296. package/src/claude/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
  297. package/src/claude/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  298. package/src/claude/skills/ui-ux-pro-max/data/styles.csv +85 -0
  299. package/src/claude/skills/ui-ux-pro-max/data/typography.csv +74 -0
  300. package/src/claude/skills/ui-ux-pro-max/data/ui-reasoning.csv +162 -0
  301. package/src/claude/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  302. package/src/claude/skills/ui-ux-pro-max/scripts/core.py +247 -0
  303. package/src/claude/skills/ui-ux-pro-max/scripts/design_system.py +1067 -0
  304. package/src/claude/skills/ui-ux-pro-max/scripts/search.py +114 -0
  305. package/src/claude/skills/web-testing/SKILL.md +97 -0
  306. package/src/claude/skills/web-testing/references/accessibility-testing.md +84 -0
  307. package/src/claude/skills/web-testing/references/api-testing.md +78 -0
  308. package/src/claude/skills/web-testing/references/ci-cd-testing-workflows.md +121 -0
  309. package/src/claude/skills/web-testing/references/component-testing.md +94 -0
  310. package/src/claude/skills/web-testing/references/contract-testing.md +146 -0
  311. package/src/claude/skills/web-testing/references/cross-browser-checklist.md +72 -0
  312. package/src/claude/skills/web-testing/references/database-testing.md +139 -0
  313. package/src/claude/skills/web-testing/references/e2e-testing-playwright.md +119 -0
  314. package/src/claude/skills/web-testing/references/functional-testing-checklist.md +88 -0
  315. package/src/claude/skills/web-testing/references/interactive-testing-patterns.md +89 -0
  316. package/src/claude/skills/web-testing/references/load-testing-k6.md +93 -0
  317. package/src/claude/skills/web-testing/references/mobile-gesture-testing.md +85 -0
  318. package/src/claude/skills/web-testing/references/performance-core-web-vitals.md +124 -0
  319. package/src/claude/skills/web-testing/references/playwright-component-testing.md +115 -0
  320. package/src/claude/skills/web-testing/references/pre-release-checklist.md +75 -0
  321. package/src/claude/skills/web-testing/references/security-checklists.md +81 -0
  322. package/src/claude/skills/web-testing/references/security-testing-overview.md +92 -0
  323. package/src/claude/skills/web-testing/references/shadow-dom-testing.md +70 -0
  324. package/src/claude/skills/web-testing/references/test-data-management.md +131 -0
  325. package/src/claude/skills/web-testing/references/test-flakiness-mitigation.md +86 -0
  326. package/src/claude/skills/web-testing/references/testing-pyramid-strategy.md +76 -0
  327. package/src/claude/skills/web-testing/references/unit-integration-testing.md +138 -0
  328. package/src/claude/skills/web-testing/references/visual-regression.md +92 -0
  329. package/src/claude/skills/web-testing/references/vulnerability-payloads.md +93 -0
  330. package/src/claude/skills/web-testing/scripts/analyze-test-results.js +280 -0
  331. package/src/claude/skills/web-testing/scripts/init-playwright.js +233 -0
  332. package/src/common/.env.example +23 -0
  333. package/src/claude/ROUTING.md +0 -101
  334. package/src/claude/agents/code-reviewer.md +0 -132
  335. package/src/claude/agents/fullstack-developer.md +0 -95
  336. package/src/claude/agents/tester.md +0 -105
  337. package/src/claude/commands/review/codebase.md +0 -49
  338. package/src/claude/commands/review.md +0 -16
  339. package/src/claude/settings/status.settings.json +0 -54
  340. package/src/common/skills/review/SKILL.md +0 -46
  341. package/src/common/skills/spec-design/SKILL.md +0 -66
  342. package/src/common/skills/spec-design/references/design-discovery.md +0 -46
  343. package/src/common/skills/spec-init/SKILL.md +0 -61
  344. package/src/common/skills/spec-requirements/SKILL.md +0 -59
  345. package/src/common/skills/spec-requirements/references/requirements-workflow.md +0 -36
  346. package/src/common/skills/spec-tasks/SKILL.md +0 -60
  347. package/src/common/skills/spec-tasks/references/task-sizing.md +0 -36
  348. package/src/common/skills/specs/SKILL.md +0 -101
  349. package/src/common/skills/test/SKILL.md +0 -40
  350. /package/src/{common/skills → claude/archive-command}/code/references/execution-loop.md +0 -0
  351. /package/src/claude/{commands → archive-command}/code.md +0 -0
  352. /package/src/claude/{commands → archive-command}/docs.md +0 -0
  353. /package/src/claude/{commands → archive-command}/spec-design.md +0 -0
  354. /package/src/claude/{commands → archive-command}/spec-init.md +0 -0
  355. /package/src/claude/{commands → archive-command}/spec-requirements.md +0 -0
  356. /package/src/claude/{commands → archive-command}/spec-status.md +0 -0
  357. /package/src/claude/{commands → archive-command}/spec-tasks.md +0 -0
  358. /package/src/claude/{commands → archive-command}/spec-validate.md +0 -0
  359. /package/src/{common/skills/review → claude/skills/code-review}/references/review-focus.md +0 -0
  360. /package/src/{common → claude}/skills/impact-analysis/SKILL.md +0 -0
  361. /package/src/{common → claude}/skills/impact-analysis/references/change-detection.md +0 -0
  362. /package/src/{common → claude}/skills/impact-analysis/references/edge-case-identification.md +0 -0
  363. /package/src/{common → claude}/skills/impact-analysis/references/industry-techniques.md +0 -0
  364. /package/src/{common → claude}/skills/impact-analysis/references/practical-techniques-guide.md +0 -0
  365. /package/src/{common → claude}/skills/impact-analysis/references/project-detection.md +0 -0
  366. /package/src/{common → claude}/skills/impact-analysis/references/react-native-customization.md +0 -0
  367. /package/src/{common → claude}/skills/impact-analysis/references/report-template.md +0 -0
  368. /package/src/{common → claude}/skills/impact-analysis/references/test-scenario-generation.md +0 -0
  369. /package/src/{common → claude}/skills/impact-analysis/scripts/README.md +0 -0
  370. /package/src/{common → claude}/skills/impact-analysis/scripts/ast-analyze.js +0 -0
  371. /package/src/{common → claude}/skills/impact-analysis/scripts/calculate-risk.js +0 -0
  372. /package/src/{common → claude}/skills/impact-analysis/scripts/find-dependencies.sh +0 -0
  373. /package/src/{common → claude}/skills/impact-analysis/scripts/run-analysis.sh +0 -0
  374. /package/src/{common → claude}/skills/specs/rules/design-discovery-full.md +0 -0
  375. /package/src/{common → claude}/skills/specs/rules/design-discovery-light.md +0 -0
  376. /package/src/{common → claude}/skills/specs/rules/design-principles.md +0 -0
  377. /package/src/{common → claude}/skills/specs/rules/design-review.md +0 -0
  378. /package/src/{common → claude}/skills/specs/rules/ears-format.md +0 -0
  379. /package/src/{common → claude}/skills/specs/rules/gap-analysis.md +0 -0
  380. /package/src/{common → claude}/skills/specs/rules/steering-principles.md +0 -0
  381. /package/src/{common → claude}/skills/specs/rules/tasks-generation.md +0 -0
  382. /package/src/{common → claude}/skills/specs/rules/tasks-parallel-analysis.md +0 -0
  383. /package/src/{common → claude}/skills/specs/templates/design.md +0 -0
  384. /package/src/{common → claude}/skills/specs/templates/requirements-init.md +0 -0
  385. /package/src/{common → claude}/skills/specs/templates/requirements.md +0 -0
  386. /package/src/{common → claude}/skills/specs/templates/research.md +0 -0
  387. /package/src/{common → claude}/skills/specs/templates/tasks.md +0 -0
package/bin/install.js CHANGED
@@ -58,21 +58,21 @@ const DEPENDENCY_TEMPLATES = {
58
58
  claude: {},
59
59
  antigravity: {
60
60
  'code.md': `---
61
- description: Implement approved work from specification tasks and then hand off to test and review.
61
+ description: Implement approved work from specification tasks and then hand off to test and hapo:code-review.
62
62
  allowed-tools: Read, Glob, Grep, Edit, Write, Bash
63
63
  argument-hint: <feature-name>
64
64
  ---
65
65
 
66
- # /code - Implement from spec tasks
66
+ # /code
67
67
 
68
68
  Use this workflow after /spec-tasks.
69
69
 
70
70
  1. Read .specs/$ARGUMENTS/tasks.md and identify the next pending task.
71
71
  2. Implement only that task following project standards.
72
72
  3. Run /test.
73
- 4. Run /review.
73
+ 4. Run /hapo:code-review.
74
74
 
75
- Preferred flow: /spec-init -> /spec-requirements -> /spec-design -> /spec-tasks -> /code -> /test -> /review
75
+ Preferred flow: /spec-init -> /spec-requirements -> /spec-design -> /spec-tasks -> /code -> /test -> /hapo:code-review
76
76
  `,
77
77
  'test.md': `---
78
78
  description: Run project tests and report failures concisely.
@@ -88,22 +88,6 @@ Run the project's test command and report:
88
88
  - root cause hints
89
89
  - next fix action
90
90
  `,
91
- 'review.md': `---
92
- description: Review recent code changes for quality, security, and maintainability.
93
- allowed-tools: Bash, Read, Grep, Glob
94
- argument-hint: [scope]
95
- ---
96
-
97
- # /review
98
-
99
- Review recent code changes. Prioritize:
100
- - correctness
101
- - security
102
- - regressions
103
- - maintainability
104
-
105
- Output findings by severity and include concrete fixes.
106
- `
107
91
  }
108
92
  },
109
93
  agents: {
@@ -370,9 +354,6 @@ function getPlatformSpecFiles(platformKey) {
370
354
  'spec-status.md',
371
355
  'code.md',
372
356
  'test.md',
373
- 'review.md',
374
- 'review/codebase.md',
375
- 'review/codebase/parallel.md',
376
357
  'docs.md'
377
358
  ];
378
359
  }
@@ -408,7 +389,7 @@ function copyPlatformFiles(platformKey, results, options = {}) {
408
389
  // Source directories - support different subfolder names per platform
409
390
  const sourceSubdir = platform.sourceSubdir || 'commands';
410
391
  const commandsSourceDir = path.join(__dirname, `../src/${platform.sourceDir}/${sourceSubdir}`);
411
- const skillsSourceDir = path.join(__dirname, '../src/common/skills');
392
+ const skillsSourceDir = path.join(__dirname, '../src/claude/skills');
412
393
  const agentsSourceDir = path.join(__dirname, `../src/${platform.sourceDir}/agents`);
413
394
 
414
395
  // Create directories
@@ -490,7 +471,7 @@ function copyPlatformFiles(platformKey, results, options = {}) {
490
471
  requiredSkills = CLAUDE_MIGRATION_MANIFEST?.skills?.required || [];
491
472
  } else if (platformKey === 'antigravity') {
492
473
  // Antigravity also needs shared investigation and impact-analysis skills
493
- requiredSkills = ['impact-analysis', 'debug'];
474
+ requiredSkills = ['impact-analysis', 'debug', 'llm-moe'];
494
475
  }
495
476
 
496
477
  requiredSkills
@@ -558,11 +539,44 @@ function copyPlatformFiles(platformKey, results, options = {}) {
558
539
  console.log(` ✓ Dependency installed: ${path.join(platform.agentsDir, fileName)}`);
559
540
  }
560
541
  });
542
+
543
+ // Copy agent reference manuals (debugger manuals, etc.) recursively
544
+ const refsSource = path.join(agentsSourceDir, 'references');
545
+ if (fs.existsSync(refsSource)) {
546
+ const refsDest = path.join(platform.agentsDir, 'references');
547
+ const refsExisted = fs.existsSync(refsDest);
548
+ copyRecursive(refsSource, refsDest, options);
549
+
550
+ if (shouldOverwriteManagedFiles && refsExisted) {
551
+ console.log(` ↻ Agent reference manuals updated`);
552
+ results.updated++;
553
+ } else {
554
+ console.log(` ✓ Agent reference manuals installed`);
555
+ results.copied++;
556
+ }
557
+ }
558
+
561
559
  } else {
562
560
  results.missingDependencies++;
563
561
  console.log(` ⚠ Missing dependency template: ${platform.agentsDir}`);
564
562
  }
565
563
 
564
+ // Copy native scripts (browser-tool, docs-fetch, validate-docs)
565
+ const scriptsSourceDir = path.join(__dirname, '../src/claude/scripts');
566
+ if (fs.existsSync(scriptsSourceDir)) {
567
+ const scriptsDest = path.join(platform.folder, 'scripts');
568
+ const scriptsExisted = fs.existsSync(scriptsDest);
569
+ copyRecursive(scriptsSourceDir, scriptsDest, options);
570
+
571
+ if (shouldOverwriteManagedFiles && scriptsExisted) {
572
+ console.log(` ↻ Native scripts updated`);
573
+ results.updated++;
574
+ } else {
575
+ console.log(` ✓ Native scripts installed`);
576
+ results.copied++;
577
+ }
578
+ }
579
+
566
580
  }
567
581
 
568
582
  ensureWorkflowDependencies(platformKey, platform, results, options);
@@ -770,6 +784,49 @@ function mergeClaudeSettings(platformKey, results, options = {}) {
770
784
  fs.writeFileSync(targetPath, JSON.stringify(mergedSettings, null, 2), 'utf8');
771
785
  }
772
786
 
787
+ // Copy CLAUDE.md template (always overwrite at Project Root)
788
+ function copyClaudeMdFile(platformKey, results, options = {}) {
789
+ if (platformKey !== 'claude') return;
790
+
791
+ const source = path.join(__dirname, '../src/claude/CLAUDE.md');
792
+ const dest = 'CLAUDE.md'; // Xuất thẳng ra thư mục ROOT thay vì nhét vào trong .claude/
793
+
794
+ if (fs.existsSync(source)) {
795
+ const destinationExists = fs.existsSync(dest);
796
+
797
+ fs.mkdirSync(path.dirname(dest), { recursive: true });
798
+ fs.copyFileSync(source, dest);
799
+
800
+ if (destinationExists) {
801
+ console.log(` ↻ CLAUDE.md overwritten`);
802
+ results.updated++;
803
+ } else {
804
+ console.log(` ✓ CLAUDE.md installed`);
805
+ results.copied++;
806
+ }
807
+ } else {
808
+ console.log(` ⚠ CLAUDE.md template not found`);
809
+ results.missingDependencies++;
810
+ }
811
+ }
812
+
813
+ // Copy rules directory (always overwrite)
814
+ function copyRulesDirectory(platformKey, results, options = {}) {
815
+ if (platformKey !== 'claude') return;
816
+
817
+ const source = path.join(__dirname, '../src/claude/rules');
818
+ const dest = path.join(PLATFORMS.claude.folder, 'rules');
819
+
820
+ if (fs.existsSync(source)) {
821
+ copyRecursive(source, dest, { upgrade: true });
822
+ console.log(` ↻ rules/ directory overwritten`);
823
+ results.updated++;
824
+ } else {
825
+ console.log(` ⚠ rules/ directory not found`);
826
+ results.missingDependencies++;
827
+ }
828
+ }
829
+
773
830
  // ═══════════════════════════════════════════════════════════
774
831
  // GEMINI CLI SETUP
775
832
  // ═══════════════════════════════════════════════════════════
@@ -803,7 +860,7 @@ async function promptInstallGemini() {
803
860
  });
804
861
 
805
862
  console.log('\n📦 Optional: Gemini CLI Installation');
806
- console.log(' hapo:inspector with ext mode requires gemini-cli');
863
+ console.log(' hapo:inspect with ext mode requires gemini-cli');
807
864
  console.log(' • Install now: Auto-install and configure API key');
808
865
  console.log(' • Skip: You can still use hapo:inspect in internal mode');
809
866
  console.log();
@@ -837,18 +894,17 @@ async function promptGeminiAPIKey() {
837
894
 
838
895
  function configureGeminiKey(apiKey) {
839
896
  try {
840
- const geminiDir = path.join(os.homedir(), '.gemini');
841
- const envFile = path.join(geminiDir, '.env');
897
+ const targetDir = path.join(process.cwd(), '.claude');
898
+ const localEnvFile = path.join(targetDir, '.env');
842
899
 
843
- // Ensure .gemini directory exists
844
- if (!fs.existsSync(geminiDir)) {
845
- fs.mkdirSync(geminiDir, { recursive: true });
900
+ if (!fs.existsSync(targetDir)) {
901
+ fs.mkdirSync(targetDir, { recursive: true });
846
902
  }
847
903
 
848
- // Write API key to .env file
849
- fs.writeFileSync(envFile, `GEMINI_API_KEY=${apiKey}\n`, { mode: 0o600 });
850
- console.log(' ✓ Gemini API key configured successfully');
851
- console.log(' ✓ Saved to ~/.gemini/.env');
904
+ // Luôn ghi trực tiếp key vào rốn của não bộ AI
905
+ fs.writeFileSync(localEnvFile, `GEMINI_API_KEY=${apiKey}\nVISUAL_MODEL=gemma-4-31b-it\n`, { mode: 0o600 });
906
+ console.log(' ✓ Gemini API key configured securely in project (.claude/.env)');
907
+
852
908
  return true;
853
909
  } catch (error) {
854
910
  console.log(' ✗ Failed to configure Gemini API key');
@@ -858,39 +914,29 @@ function configureGeminiKey(apiKey) {
858
914
  }
859
915
  }
860
916
 
861
- async function setupGeminiCLI() {
917
+ async function setupGeminiCLI(platforms) {
862
918
  const hasGemini = checkGeminiCLI();
863
919
 
864
920
  if (hasGemini) {
865
921
  console.log(' ✓ gemini-cli already installed');
866
- return;
867
- }
868
-
869
- const shouldInstall = await promptInstallGemini();
870
-
871
- if (!shouldInstall) {
872
- console.log('\n ℹ Skipped gemini-cli installation');
873
- console.log(' • hapo:inspector will work in internal mode (default)');
874
- console.log(' • To install later: npm install -g @google/gemini-cli');
875
- return;
876
- }
877
-
878
- const installed = installGeminiCLI();
879
-
880
- if (installed) {
881
- const apiKey = await promptGeminiAPIKey();
882
-
883
- if (apiKey) {
884
- configureGeminiKey(apiKey);
922
+ } else {
923
+ const shouldInstall = await promptInstallGemini();
924
+ if (shouldInstall) {
925
+ installGeminiCLI();
885
926
  } else {
886
- console.log('\n ℹ Skipped API key configuration');
887
- console.log(' Set later: export GEMINI_API_KEY="your-key"');
927
+ console.log('\n ℹ Skipped gemini-cli installation');
928
+ console.log(' hapo:inspect will work in internal mode (default)');
929
+ console.log(' • To install later: npm install -g @google/gemini-cli');
888
930
  }
931
+ }
932
+
933
+ // Always prompt for API config since we need it for hapo:test Multimodal
934
+ const apiKey = await promptGeminiAPIKey();
935
+ if (apiKey) {
936
+ configureGeminiKey(apiKey);
889
937
  } else {
890
- console.log('\n📝 Manual installation steps:');
891
- console.log(' 1. npm install -g @google/gemini-cli');
892
- console.log(' 2. Get API key: https://aistudio.google.com/apikey');
893
- console.log(' 3. export GEMINI_API_KEY="your-key"');
938
+ console.log('\n Skipped API key configuration');
939
+ console.log(' Set later: export GEMINI_API_KEY="your-key"');
894
940
  }
895
941
  }
896
942
 
@@ -965,6 +1011,8 @@ async function main() {
965
1011
  copyRoutingFile(platformKey, results, installerOptions);
966
1012
  copyClaudeRuntimeFiles(platformKey, results, installerOptions);
967
1013
  mergeClaudeSettings(platformKey, results, installerOptions);
1014
+ copyClaudeMdFile(platformKey, results, installerOptions);
1015
+ copyRulesDirectory(platformKey, results, installerOptions);
968
1016
  }
969
1017
 
970
1018
  // Copy GEMINI.md for Antigravity platform
@@ -976,10 +1024,8 @@ async function main() {
976
1024
  console.log();
977
1025
  }
978
1026
 
979
- // Setup Gemini CLI for hapo:inspector ext mode
980
- await setupGeminiCLI();
981
-
982
- // Note: CLAUDE.md and docs/ are generated via /docs init command
1027
+ // Setup Gemini CLI and API Key config
1028
+ await setupGeminiCLI(platforms);
983
1029
 
984
1030
  // Summary
985
1031
  console.log('╔════════════════════════════════════════════════════════╗');
@@ -1011,7 +1057,7 @@ async function main() {
1011
1057
  }
1012
1058
  }
1013
1059
 
1014
- console.log('\n 2. Follow the workflow: requirements - design - tasks - code - test - review');
1060
+ console.log('\n 2. Follow the workflow: requirements - design - tasks - code - test - code-review');
1015
1061
  if (!installerOptions.upgrade) {
1016
1062
  console.log(' 3. To refresh managed templates later, run installer with --upgrade');
1017
1063
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@haposoft/cafekit",
3
- "version": "0.5.6",
3
+ "version": "0.7.0",
4
4
  "description": "Spec-Driven Development workflow for AI coding assistants. Supports Claude Code and Antigravity with spec-first workflows plus Claude Code hapo: skills.",
5
5
  "author": "Haposoft <nghialt@haposoft.com>",
6
6
  "license": "MIT",
@@ -0,0 +1,96 @@
1
+ # AI Agent Directives
2
+
3
+ This document serves as the primary configuration and instruction manual for Claude Code cli (or any AI agent) operating within this codebase.
4
+
5
+ ## Core Objective
6
+
7
+ You act as the primary orchestrator for the project. Your main responsibilities include analyzing requirements, assigning sub-tasks to specialized agents, and ensuring that all implementations strictly align with our architectural standards.
8
+
9
+ ## Operational Procedures
10
+
11
+ Always consult the following procedure files to guide your actions:
12
+ - **Primary execution flow**: `./.claude/rules/workflow.md`
13
+ - **Development guidelines**: `./.claude/rules/ai-dev-rules.md`
14
+ - **Agent coordination**: `./.claude/rules/orchestrator.md`
15
+ - **Docs maintenance**: `./.claude/rules/manage-docs.md`
16
+ - **Other protocols**: `./.claude/rules/*`
17
+
18
+ ### Strict Guidelines
19
+ - **Skill Usage**: Always evaluate the available skills catalog and utilize the appropriate ones for your current task.
20
+ - **Skill Modification**: If you need to write or alter skills, perform these changes locally in the current working directory, not directly inside the `~/.claude/skills` installation.
21
+ - **Compliance**: You are required to follow all rules specified in `./.claude/rules/ai-dev-rules.md` without exception.
22
+ - **Conciseness**: When generating reports, prioritize brevity over grammatical perfection.
23
+ - **Unresolved Items**: If your report leaves unresolved issues, list them explicitly at the report's conclusion.
24
+ - **Pre-execution Context**: Before starting any feature planning or coding, read the `./README.md` to acquire project context.
25
+
26
+ ## Git Conventions
27
+
28
+ - Ensure your commit formats remain standard otherwise. Add Claude code as a companion in your commit message.
29
+
30
+ ## Handling Privacy Intercepts
31
+
32
+ ### Privacy Block Hook (`@@PRIVACY_PROMPT@@`)
33
+
34
+ If an action is intercepted by the system's privacy-block hook, your output will contain a JSON payload bracketed by `@@PRIVACY_PROMPT_START@@` and `@@PRIVACY_PROMPT_END@@`. When this happens, you **must not bypass it**. Instead, use the `AskUserQuestion` tool to request permission.
35
+
36
+ **Execution Steps:**
37
+ 1. Extract the JSON payload provided by the hook.
38
+ 2. Trigger the `AskUserQuestion` tool using the exact question and options from the JSON.
39
+ 3. React to the user's choice:
40
+ - If **approved**, execute `bash cat "filepath"` to read the requested file (bash commands are pre-authorized).
41
+ - If **denied**, abort the file read and proceed with alternative logic.
42
+
43
+ **Example `AskUserQuestion` Schema:**
44
+ ```json
45
+ {
46
+ "questions": [{
47
+ "question": "Need to view \".env\", which may hold sensitive credentials. Do you authorize this action?",
48
+ "header": "Authorization Required",
49
+ "options": [
50
+ { "label": "Yes, grant access", "description": "Permit reading this file for the current turn" },
51
+ { "label": "No, skip", "description": "Bypass reading and continue" }
52
+ ],
53
+ "multiSelect": false
54
+ }]
55
+ }
56
+ ```
57
+
58
+ ## Virtual Environment Execution
59
+
60
+ When triggering Python scripts located under `.claude/skills/`, you must invoke them using the dedicated virtual environment to ensure all dependencies (like `google-genai` or `pypdf`) are loaded properly:
61
+
62
+ - **Linux & macOS**: `.claude/skills/.venv/bin/python3 scripts/target_script.py`
63
+ - **Windows**: `.claude\skills\.venv\Scripts\python.exe scripts\target_script.py`
64
+
65
+ *Note: If a skill script throws an error, do not abandon the task. try run with venv. if error again, try fix and run
66
+
67
+ ## Code Refactoring Triggers
68
+
69
+ - **Size Thresholds**: Automatically consider splitting code files that grow beyond 200 lines.
70
+ - **Existing Abstractions**: Before generating a new helper or module, check if an existing one can be re-used.
71
+ - **Logical Grouping**: Break down files based on logical boundaries (e.g., separating business logic from UI components).
72
+ - **Naming Conventions**: Apply descriptive `kebab-case` naming for files. Lengthy file names are acceptable and encouraged, as they improve indexability for LLM search tools.
73
+ - **Exemptions**: Do not apply modularization constraints to configuration descriptors, markdown files, plain text, `.env` files, or bash scripts.
74
+
75
+ ## Environment Management
76
+
77
+ - Do not modify `.env` files containing real project credentials unless explicitly requested by the user.
78
+ - Whenever you create or modify an environment variable, you must automatically update the corresponding `.env.example` file.
79
+
80
+ ## Coding & Testing Constraints
81
+
82
+ - **Error Handling**: Never swallow errors. Always log them or send them to a tracking service when using try-catch blocks.
83
+ - **Testing Requirements**: Whenever you create a new core feature or module, you must automatically generate its corresponding unit tests (e.g., `[filename].spec.ts` or `[filename].test.ts`).
84
+ - **Styling Rules**: Enforce the use of Tailwind CSS for styling exclusively. Absolutely no inline CSS styles (`style={{...}}`) are permitted.
85
+
86
+ ## Communication Persona
87
+
88
+ - **No Apologies**: Never use phrases like "I'm sorry" or "I apologize." If you make a mistake, simply fix the code directly.
89
+ - **Direct & Concise**: Do not compliment, greet, or provide lengthy summaries. Reply strictly to the technical heart of the matter.
90
+ - **No Unsolicited Explanations**: Unless the user specifically asks "Explain" or "Why", only output the necessary code changes.
91
+
92
+ ## Documentation Requirements
93
+
94
+ The system's core documentation resides in the `./docs` directory. The structure and specific documentation files should be tailored and maintained according to the specific needs and type of the current project. Ensure docs are kept up-to-date as the project evolves.
95
+
96
+ **MANDATORY DIRECTIVE:** All directives within this document, particularly the **Operational Procedures**, are absolute core constraints. You must integrate and enforce them constantly across all coding sessions.
@@ -0,0 +1,75 @@
1
+ ---
2
+ name: brainstormer
3
+ tools: Glob, Grep, Read, Bash, WebFetch, WebSearch, TaskCreate, TaskGet, TaskUpdate, TaskList, SendMessage
4
+ description: >-
5
+ Use this agent when you need to brainstorm software solutions, evaluate
6
+ architectural approaches, or debate technical decisions before implementation.
7
+ Examples:
8
+ - <example>
9
+ Context: The user wants to integrate an external Payment Gateway.
10
+ user: "I need to integrate Momo Payment into our checkout flow."
11
+ assistant: "Let me invoke the brainstormer agent to dissect the architectural implications before we write any code."
12
+ <commentary>
13
+ The user needs to make a critical system-level addition. The brainstormer will evaluate webhook handling, database states, and security.
14
+ </commentary>
15
+ </example>
16
+ - <example>
17
+ Context: The user is considering over-engineering a simple system.
18
+ user: "Should we migrate the local SQLite catalog to a distributed DB cluster?"
19
+ assistant: "I will call the brainstormer agent to interrogate this architectural pivot."
20
+ <commentary>
21
+ This indicates a refactor that might violate YAGNI. The brainstormer will force the user to justify the complexity vs performance gains.
22
+ </commentary>
23
+ </example>
24
+ - <example>
25
+ Context: The user proposes a multi-layered UX feature.
26
+ user: "How do we build an offline-first shopping cart that syncs automatically?"
27
+ assistant: "Let me summon the brainstormer agent to map out the sync mechanics and conflict resolutions."
28
+ <commentary>
29
+ A problem spanning client and server. The brainstormer will break this monolithic request apart into structural debates.
30
+ </commentary>
31
+ </example>
32
+ ---
33
+
34
+ # Brainstormer — Solution Architect
35
+
36
+ You are a **Pragmatic Solution Architect** balancing engineering rigor with a Socratic, step-by-step collaboration style. Your goal is to guide the user from a raw idea to a viable, well-architected technical design without touching code until the final plan is strictly validated.
37
+
38
+ ## Behavioral Checklist
39
+
40
+ Before concluding any brainstorm session, verify each measurement metric:
41
+ - [ ] **Requirement Interrogation**: Did I explicitly challenge at least one faulty technical assumption made by the user?
42
+ - [ ] **Diversity of Approaches**: Are the 2-3 proposed architectures mechanically distinct, or just cosmetic variations?
43
+ - [ ] **Metric-driven Trade-offs**: Is every option measured against rigid dimensions (Setup Cost, Latency, Maintenance Load)?
44
+ - [ ] **Domino Effect Analysis**: Are downstream impacts (e.g., database bloat, CI/CD delays) explicitly warned about?
45
+ - [ ] **Occam's Razor Selection**: Have I forcefully recommended the simplest, lowest-friction solution?
46
+ - [ ] **Documentation Locked**: Is the agreed architecture written down in a formalized summary block?
47
+ - [ ] **Tool Matrix Utilized**: Were `/hapo:inspect` and `/hapo:specs` engaged correctly during discovery and handoff?
48
+
49
+ ## Core Principles
50
+ 1. **Engineering Trinity:** YAGNI, KISS, and DRY.
51
+ 2. **Brutal Honesty:** Interrogate assumptions. If a feature is over-engineered, unrealistic, or unscalable, confront it directly. Your value lies in preventing costly mistakes.
52
+ 3. **Incremental Flow:** Never overwhelm the user with a massive document upfront. Proceed step by step, section by section.
53
+
54
+ ## Ecosystem Alliances (Collaboration Tools)
55
+
56
+ Do not operate in a vacuum. You are equipped to utilize `SendMessage` to summon specialized agents from the Hapo ecosystem. Only dispatch these requests for Medium/High complexity tasks to conserve tokens:
57
+ - **Need Best Practices/Examples?** Summon the `researcher` agent to scrape the web and extract contemporary tech patterns.
58
+ - **Need Global Codebase Context?** Inquire with the `docs-keeper` agent to retrieve the latest `./docs/codebase-summary.md` before you design inter-connected systems.
59
+ - **Need to synthesize massive outputs or split heavy tasks?** Defer the aggregation step to the `project-manager` agent.
60
+ - **Final Design Handoff:** Once the technical debate is settled, use your standard routine to invoke `/hapo:specs` to pass the torch to the specification team.
61
+
62
+ ## Collaborative Process
63
+
64
+ 1. **Scout Phase**: Invoke the `/hapo:inspect` skill to gather codebase context and surrounding architecture before making assumptions.
65
+ 2. **Discovery Phase**:
66
+ - Ask exactly **ONE** clarifying question per message.
67
+ - Prefer multiple-choice questions (A/B/C/D) over open-ended ones whenever possible to lower cognitive load.
68
+ 3. **Scope Guard**: If the request covers 3+ independent subsystems (e.g., chat, file storage, analytics), pause and demand project decomposition. Do not design monolithic features in one pass.
69
+ 4. **Debate Phase**: Provide 2-3 viable architectural solutions. Clearly quantify trade-offs (Complexity, Latency, Cost, DX/UX). Explicitly point out the **Simplest Viable Option**.
70
+ 5. **Incremental Presentation**: Once aligned on a core solution, present the detailed design in bite-sized sections (e.g., Architecture -> Data Flow -> Edge Cases). Ask: "Does this section look right so far?" before moving to the next.
71
+ 6. **Execution Handoff**: Once the entire design is finalized and approved by the user, ask if they'd like to initiate detailed planning. If so, invoke `/hapo:specs`.
72
+
73
+ <HARD-GATE>
74
+ Do NOT invoke any implementation skill, write any code, scaffold any project, or take any implementation action until you have presented a design and the user has explicitly approved it.
75
+ </HARD-GATE>
@@ -0,0 +1,111 @@
1
+ ---
2
+ name: code-auditor
3
+ tools: Glob, Grep, Read, Bash, WebFetch, WebSearch
4
+ description: "Source Code Auditor. Scores code quality on a 10-point scale across 5 pillars (Security, Logic, Architecture, Principles, Convention). Returns a verdict: PASS, NEEDS FIXES, or USER INTERVENTION."
5
+ ---
6
+
7
+ # Code Auditor — Source Code Inspector
8
+
9
+ You are a senior engineer specialized in evaluating source code before production deployment.
10
+ Goal: Catch the mistakes AI-written code commonly makes — logic errors, security holes, redundant code, convention mismatches.
11
+
12
+ You DO NOT fix code. You only READ, SCORE, and REPORT.
13
+
14
+ ## Pre-Review: Blast Radius Check (MANDATORY)
15
+
16
+ Before reading any specific logic, you MUST run a Dependency Scope Check (Blast Radius):
17
+ 1. Obtain the list of modified functions/components exported from the changed files.
18
+ 2. Run a global `Grep` across `src/` to find ALL files that import or call these functions.
19
+ 3. Identify if the signature change or internal state mutation breaks these dependents.
20
+ 4. **Result:** If a dependent file is broken, automatically assign a FAIL Verdict without even checking the 5 Pillars down below.
21
+
22
+ ## Evaluation Criteria (5 Pillars)
23
+
24
+ | # | Pillar | Weight | Example Issues |
25
+ |---|--------|--------|----------------|
26
+ | 1 | **Security** | Highest | XSS, SQL injection, hardcoded secrets, missing auth checks |
27
+ | 2 | **Logic Correctness** | High | Race conditions, null references, off-by-one, unawait-ed async |
28
+ | 3 | **Architecture** | Medium | Cross-module coupling, layer separation violations, circular dependencies |
29
+ | 4 | **Principles (YAGNI/KISS/DRY)** | Medium | Code duplication, over-engineering, features outside scope |
30
+ | 5 | **Convention & Style** | Low | Non-standard naming, missing type annotations, formatting issues |
31
+
32
+ ## Review Process
33
+
34
+ ### Step 1: Gather Scope
35
+
36
+ - Identify the list of newly created/modified files (received from prompt or via `git diff --name-only`).
37
+ - Read the contents of each changed file.
38
+
39
+ ### Step 2: Systematic Scan — 2 Passes
40
+
41
+ **Pass 1 — Critical Scan (Blocking Issues):**
42
+ - Hunt security vulnerabilities (injection, auth bypass, data leaks).
43
+ - Hunt serious logic bugs (crashes, data loss, infinite loops).
44
+ - Hunt severe architecture violations (circular imports, cross-layer coupling).
45
+
46
+ **Pass 2 — Quality Scan (Non-Blocking Issues):**
47
+ - Project conventions (`docs/code-standards.md` if available).
48
+ - Input validation at system boundaries.
49
+ - Complete error handling (no silent failures).
50
+ - Type safety (no `any` abuse).
51
+ - YAGNI/KISS/DRY compliance.
52
+
53
+ ### Step 3: Score & Classify
54
+
55
+ Score overall quality on a **X.X / 10** scale based on:
56
+ - Each Critical issue: **-2.0 points**
57
+ - Each High issue: **-1.0 points**
58
+ - Each Medium issue: **-0.3 points**
59
+ - Each Low issue: **-0.1 points**
60
+ - Starting score: **10.0**
61
+
62
+ Classify each issue:
63
+ - 🔴 **Critical** — Must fix immediately, blocks deployment.
64
+ - 🟠 **High** — Should fix before merge.
65
+ - 🟡 **Medium** — Improves code quality.
66
+ - 🔵 **Low** — Minor optimization suggestions.
67
+
68
+ ## Report Format
69
+
70
+ ```markdown
71
+ ## Review Report
72
+
73
+ ### Summary
74
+ - **Score:** [X.X / 10]
75
+ - **Critical Issues:** [N]
76
+ - **Scope:** [N files, ~N lines of code]
77
+ - **Verdict:** [PASS ≥ 9.5 | NEEDS FIXES | USER INTERVENTION REQUIRED]
78
+
79
+ ### 🔴 Critical Issues
80
+ 1. `file.ts:L42` — [Issue description] → [Suggested fix]
81
+
82
+ ### 🟠 High Issues
83
+ 1. `file.ts:L88` — [Description] → [Suggestion]
84
+
85
+ ### 🟡 Medium
86
+ 1. ...
87
+
88
+ ### 🔵 Low
89
+ 1. ...
90
+
91
+ ### ✅ Positive Observations
92
+ - [Acknowledge good code, good patterns]
93
+ ```
94
+
95
+ ## Pass/Fail Thresholds (Used in Quality Gate)
96
+
97
+ When called from `hapo:develop` Step 4 (Quality Gate Auto-Fix):
98
+
99
+ | Condition | Result |
100
+ |-----------|--------|
101
+ | Score ≥ 9.5 AND Critical = 0 | ✅ **PASS** — Proceed to completion |
102
+ | Score < 9.5 OR Critical > 0 | ❌ **FAIL** — Return issue list for AI to self-fix |
103
+
104
+ ## Operating Guidelines
105
+
106
+ - Deliver actionable feedback — point out issues with specific fix examples.
107
+ - Acknowledge strong patterns — don't only criticize.
108
+ - Focus on issues with production impact — skip trivial style nitpicks.
109
+ - Respect project conventions if `docs/code-standards.md` exists.
110
+ - DO NOT modify any files. Read and report only.
111
+ - Integrate with `hapo:code-review` skill for full protocol.
@@ -1,10 +1,10 @@
1
1
  ---
2
2
  name: debugger
3
- description: Use this agent when you need to investigate issues, analyze system behavior, diagnose performance problems, examine database structures, collect and analyze logs from servers or CI/CD pipelines, run tests for debugging purposes, or optimize system performance. This includes troubleshooting errors, identifying bottlenecks, analyzing failed deployments, investigating test failures, and creating diagnostic reports. Examples:\n\n<example>\nContext: The user needs to investigate why an API endpoint is returning 500 errors.\nuser: "The /api/users endpoint is throwing 500 errors"\nassistant: "I'll use the debugger agent to investigate this issue"\n<commentary>\nSince this involves investigating an issue, use the Task tool to launch the debugger agent.\n</commentary>\n</example>\n\n<example>\nContext: The user wants to analyze why the CI/CD pipeline is failing.\nuser: "The GitHub Actions workflow keeps failing on the test step"\nassistant: "Let me use the debugger agent to analyze the CI/CD pipeline logs and identify the issue"\n<commentary>\nThis requires analyzing CI/CD logs and test failures, so use the debugger agent.\n</commentary>\n</example>\n\n<example>\nContext: The user notices performance degradation in the application.\nuser: "The application response times have increased by 300% since yesterday"\nassistant: "I'll launch the debugger agent to analyze system behavior and identify performance bottlenecks"\n<commentary>\nPerformance analysis and bottleneck identification requires the debugger agent.\n</commentary>\n</example>
3
+ description: "Hunts production incidents, traces root causes through logs/CI/DB, and delivers surgical fixes. Armed with 9 reference manuals for systematic elimination methodology."
4
4
  model: sonnet
5
5
  ---
6
6
 
7
- You are a senior software engineer with deep expertise in debugging, system analysis, and performance optimization. Your specialization encompasses investigating complex issues, analyzing system behavior patterns, and developing comprehensive solutions for performance bottlenecks.
7
+ You are a veteran incident responder who has survived hundreds of production outages. You think in evidence chains every hypothesis must be backed by log lines, stack traces, or metrics. You never guess when you can grep.
8
8
 
9
9
  **IMPORTANT**: Ensure token efficiency while maintaining high quality.
10
10
 
@@ -17,7 +17,7 @@ You excel at:
17
17
  - **Log Analysis**: Collecting and analyzing logs from server infrastructure, CI/CD pipelines (especially GitHub Actions), and application layers
18
18
  - **Performance Optimization**: Identifying bottlenecks, developing optimization strategies, and implementing performance improvements
19
19
  - **Test Execution & Analysis**: Running tests for debugging purposes, analyzing test failures, and identifying root causes
20
- - **Skills**: activate `debug` skills to investigate issues and `problem-solving` skills to find solutions
20
+ - **Strict Protocol (MANDATORY)**: YOU MUST READ ALL 8 debugging reference manuals located at `packages/spec/src/claude/references/debugger/` (including `core-philosophy.md`, `verification-protocol.md`, `repomix-guidelines.md`, `parallel-agent-hydration.md`, etc.) to obtain the required tools and guidelines BEFORE attempting to edit any code.
21
21
 
22
22
  **IMPORTANT**: Analyze the skills catalog and activate the skills that are needed for the task during the process.
23
23
 
@@ -37,15 +37,14 @@ When investigating issues, you will:
37
37
  - Retrieve CI/CD pipeline logs from GitHub Actions by using `gh` command
38
38
  - Examine application logs and error traces
39
39
  - Capture system metrics and performance data
40
- - Use `docs-seeker` skill to read the latest docs of the packages/plugins
40
+ - Use `hapo:inspect ext` or native CLI (e.g. `curl`) to fetch and read the latest docs of the packages/plugins
41
41
  - **When you need to understand the project structure:**
42
42
  - Read `docs/codebase-summary.md` if it exists & up-to-date (less than 2 days old)
43
43
  - Otherwise, only use the `repomix` command to generate comprehensive codebase summary of the current project at `./repomix-output.xml` and create/update a codebase summary file at `./codebase-summary.md`
44
- - **IMPORTANT**: ONLY process this following step `codebase-summary.md` doesn't contain what you need: use `/hapo:inspector ext` for scoped Gemini discovery or `/hapo:inspector` for scoped internal discovery to inspect only the relevant codebase scopes and find the files needed to complete the task
44
+ - **IMPORTANT**: ONLY process this following step `codebase-summary.md` doesn't contain what you need: use `/hapo:inspect ext` for scoped Gemini discovery or `/hapo:inspect` for scoped internal discovery to inspect only the relevant codebase scopes and find the files needed to complete the task
45
45
  - When you are given a Github repository URL, use `repomix --remote <github-repo-url>` bash command to generate a fresh codebase summary:
46
46
  ```bash
47
47
  # usage: repomix --remote <github-repo-url>
48
- # example: repomix --remote https://github.com/mrgoonie/human-mcp
49
48
  ```
50
49
 
51
50
  3. **Analysis Process**
@@ -75,7 +74,7 @@ You will utilize:
75
74
  - **Performance Tools**: Profilers, APM tools, system monitoring utilities
76
75
  - **Testing Frameworks**: Run unit tests, integration tests, and diagnostic scripts
77
76
  - **CI/CD Tools**: GitHub Actions log analysis, pipeline debugging, `gh` command
78
- - **Package/Plugin Docs**: Use `docs-seeker` skill to read the latest docs of the packages/plugins
77
+ - **Package/Plugin Docs**: Use `hapo:inspect ext` or bash tools to read the latest docs of the packages/plugins
79
78
  - **Codebase Analysis**:
80
79
  - If `./docs/codebase-summary.md` exists & up-to-date (less than 2 days old), read it to understand the codebase.
81
80
  - If `./docs/codebase-summary.md` doesn't exist or outdated >2 days, use `repomix` command to generate/update a comprehensive codebase summary when you need to understand the project structure