@haposoft/cafekit 0.16.0-rc.8 → 0.16.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 (323) hide show
  1. package/README.md +117 -28
  2. package/bin/__tests__/codex-hooks-ownership.test.js +239 -0
  3. package/bin/__tests__/codex-hooks.test.js +175 -0
  4. package/bin/__tests__/codex-native.test.js +1882 -70
  5. package/bin/__tests__/develop-contract.test.js +442 -23
  6. package/bin/__tests__/grok-envelope.test.js +271 -0
  7. package/bin/__tests__/grok-platform.test.js +133 -0
  8. package/bin/__tests__/hook-payload.test.js +194 -0
  9. package/bin/__tests__/installer-safety.test.js +3 -3
  10. package/bin/__tests__/omp-bridge.test.js +168 -0
  11. package/bin/__tests__/omp-hooks.test.js +178 -0
  12. package/bin/__tests__/omp-runtime.test.js +150 -0
  13. package/bin/__tests__/optional-skill-inventory.test.js +249 -0
  14. package/bin/__tests__/output-styles.test.js +214 -0
  15. package/bin/__tests__/package-inventory.test.js +1735 -98
  16. package/bin/__tests__/runtime-dir.test.js +158 -0
  17. package/bin/__tests__/runtime-schema.test.js +113 -0
  18. package/bin/__tests__/secret-output-guardrail.test.js +122 -0
  19. package/bin/__tests__/skill-routing-source.test.js +172 -0
  20. package/bin/__tests__/specs-v2-execution-closeout.test.js +28 -1
  21. package/bin/install.js +15 -5
  22. package/bin/lib/codex-install.js +170 -5
  23. package/bin/lib/context.js +64 -3
  24. package/bin/lib/i18n.js +15 -36
  25. package/bin/lib/skill-deps.js +5 -5
  26. package/bin/phases/claude-runtime.js +23 -0
  27. package/bin/phases/claude-settings.js +8 -0
  28. package/bin/phases/codex-hooks.js +156 -0
  29. package/bin/phases/codex-runtime.js +29 -38
  30. package/bin/phases/copy-payload.js +15 -2
  31. package/bin/phases/omp-runtime.js +140 -0
  32. package/bin/phases/root-config.js +3 -0
  33. package/bin/phases/select-platform.js +22 -1
  34. package/bin/phases/select-skill-bundles.js +96 -0
  35. package/bin/phases/skill-inventory.js +71 -0
  36. package/bin/phases/skills-setup.js +9 -2
  37. package/bin/phases/summary.js +0 -4
  38. package/bin/phases/write-metadata.js +8 -5
  39. package/package.json +8 -2
  40. package/src/claude/CLAUDE.md +3 -3
  41. package/src/claude/agents/brainstormer.md +52 -69
  42. package/src/claude/agents/code-auditor.md +32 -14
  43. package/src/claude/agents/debugger.md +35 -20
  44. package/src/claude/agents/deployer.md +12 -5
  45. package/src/claude/agents/docs-keeper.md +11 -1
  46. package/src/claude/agents/implementer.md +25 -13
  47. package/src/claude/agents/inspector.md +6 -3
  48. package/src/claude/agents/project-manager.md +1 -1
  49. package/src/claude/agents/researcher.md +26 -55
  50. package/src/claude/agents/spec-maker.md +12 -7
  51. package/src/claude/agents/strategist.md +52 -0
  52. package/src/claude/agents/test-runner.md +117 -132
  53. package/src/claude/agents/ui-ux-designer.md +1 -1
  54. package/src/claude/hooks/__tests__/fixtures/statusline-default.golden +1 -0
  55. package/src/claude/hooks/__tests__/precompact.test.js +158 -0
  56. package/src/claude/hooks/__tests__/semantic-review-authority.test.js +2 -0
  57. package/src/claude/hooks/__tests__/spec-gate.test.js +348 -3
  58. package/src/claude/hooks/__tests__/state.test.js +7 -0
  59. package/src/claude/hooks/__tests__/statusline.test.js +196 -0
  60. package/src/claude/hooks/agent.cjs +13 -8
  61. package/src/claude/hooks/completion-authority.cjs +10 -4
  62. package/src/claude/hooks/docs-sync.cjs +14 -11
  63. package/src/claude/hooks/inspect-block.cjs +28 -8
  64. package/src/claude/hooks/lib/config.cjs +8 -2
  65. package/src/claude/hooks/lib/counter.cjs +7 -5
  66. package/src/claude/hooks/lib/hook-payload.cjs +160 -0
  67. package/src/claude/hooks/lib/hook-state-dir.cjs +39 -0
  68. package/src/claude/hooks/lib/runtime-dir.cjs +49 -0
  69. package/src/claude/hooks/lib/secret-keywords.cjs +42 -0
  70. package/src/claude/hooks/precompact.cjs +106 -0
  71. package/src/claude/hooks/privacy-block.cjs +4 -2
  72. package/src/claude/hooks/rules.cjs +5 -3
  73. package/src/claude/hooks/secret-output-guardrail.cjs +44 -0
  74. package/src/claude/hooks/semantic-review-authority.cjs +6 -4
  75. package/src/claude/hooks/session.cjs +37 -9
  76. package/src/claude/hooks/spec-gate.cjs +21 -11
  77. package/src/claude/hooks/spec-state.cjs +11 -7
  78. package/src/claude/hooks/state.cjs +7 -5
  79. package/src/claude/hooks/task-scaffold-guard.cjs +30 -9
  80. package/src/claude/hooks/usage.cjs +6 -5
  81. package/src/claude/migration-manifest.json +31 -15
  82. package/src/claude/output-styles/coding-level-0-eli5.md +103 -0
  83. package/src/claude/output-styles/coding-level-1-junior.md +124 -0
  84. package/src/claude/output-styles/coding-level-2-mid.md +146 -0
  85. package/src/claude/output-styles/coding-level-3-senior.md +148 -0
  86. package/src/claude/output-styles/coding-level-4-lead.md +159 -0
  87. package/src/claude/output-styles/coding-level-5-god.md +91 -0
  88. package/src/claude/references/debugger/core-philosophy.md +5 -3
  89. package/src/claude/references/debugger/frontend-verification.md +2 -2
  90. package/src/claude/references/debugger/log-ci-analysis.md +13 -1
  91. package/src/claude/references/debugger/parallel-agent-hydration.md +19 -34
  92. package/src/claude/references/debugger/performance-diagnostics.md +2 -2
  93. package/src/claude/references/debugger/root-cause-tracing.md +37 -6
  94. package/src/claude/references/debugger/side-effect-gate.md +3 -1
  95. package/src/claude/references/debugger/verification-protocol.md +13 -12
  96. package/src/claude/rules/orchestrator.md +7 -1
  97. package/src/claude/rules/process-management.md +39 -0
  98. package/src/claude/rules/review-audit-self-decision.md +48 -0
  99. package/src/claude/rules/skill-domain-routing.md +26 -24
  100. package/src/claude/rules/skill-workflow-routing.md +22 -14
  101. package/src/claude/rules/state-sync.md +7 -1
  102. package/src/claude/rules/workflow.md +5 -3
  103. package/src/claude/runtime.json +1 -0
  104. package/src/claude/runtime.schema.json +205 -0
  105. package/src/claude/scripts/generate-skill-catalog.cjs +156 -122
  106. package/src/claude/scripts/provenance.cjs +29 -9
  107. package/src/claude/scripts/spec-receipt.cjs +65 -4
  108. package/src/claude/scripts/workflow-policy.cjs +1 -1
  109. package/src/claude/settings/settings.json +16 -0
  110. package/src/claude/skills/agent-browser/SKILL.md +1 -1
  111. package/src/claude/skills/ai-multimodal/SKILL.md +1 -1
  112. package/src/claude/skills/brainstorm/SKILL.md +193 -172
  113. package/src/claude/skills/brainstorm/references/question-framework.md +105 -167
  114. package/src/claude/skills/chrome-devtools/SKILL.md +1 -1
  115. package/src/claude/skills/code-review/SKILL.md +43 -25
  116. package/src/claude/skills/code-review/references/spec-compliance-review.md +3 -4
  117. package/src/claude/skills/code-review/references/verification-gate.md +1 -1
  118. package/src/claude/skills/debug/SKILL.md +48 -19
  119. package/src/claude/skills/delegate/SKILL.md +1 -1
  120. package/src/claude/skills/develop/SKILL.md +92 -65
  121. package/src/claude/skills/develop/references/parallel-waves.md +36 -63
  122. package/src/claude/skills/develop/references/quality-gate.md +31 -4
  123. package/src/claude/skills/develop/references/subagent-patterns.md +21 -7
  124. package/src/claude/skills/docs/SKILL.md +42 -23
  125. package/src/claude/skills/docs/references/init-workflow.md +4 -4
  126. package/src/claude/skills/docs/references/reconstruct-workflow.md +6 -6
  127. package/src/claude/skills/docs/references/standard-docs-workflow.md +6 -2
  128. package/src/claude/skills/docs/references/summarize-workflow.md +2 -2
  129. package/src/claude/skills/docs/references/update-workflow.md +9 -7
  130. package/src/claude/skills/docs/templates/requirements-as-is.md +1 -1
  131. package/src/claude/skills/docx/SKILL.md +1 -1
  132. package/src/claude/skills/git/SKILL.md +1 -1
  133. package/src/claude/skills/git/references/commit-protocols.md +1 -1
  134. package/src/claude/skills/git/references/finish-branch.md +1 -1
  135. package/src/claude/skills/hotfix/SKILL.md +159 -170
  136. package/src/claude/skills/hotfix/references/diagnosis-protocol.md +14 -9
  137. package/src/claude/skills/hotfix/references/parallel-patterns.md +27 -13
  138. package/src/claude/skills/hotfix/references/prevention-gate.md +5 -0
  139. package/src/claude/skills/hotfix/references/review-cycle.md +21 -15
  140. package/src/claude/skills/hotfix/references/workflow-specialized.md +53 -21
  141. package/src/claude/skills/inspect/SKILL.md +55 -46
  142. package/src/claude/skills/inspect/references/internal-inspection.md +21 -5
  143. package/src/claude/skills/loop/SKILL.md +114 -0
  144. package/src/claude/skills/loop/references/bounded-loop-protocol.md +104 -0
  145. package/src/claude/skills/loop/references/metric-and-guard-contract.md +76 -0
  146. package/src/claude/skills/pdf/SKILL.md +1 -1
  147. package/src/claude/skills/pptx/SKILL.md +1 -1
  148. package/src/claude/skills/question/SKILL.md +16 -13
  149. package/src/claude/skills/research/SKILL.md +70 -43
  150. package/src/claude/skills/route/SKILL.md +94 -0
  151. package/src/claude/skills/route/references/agent-timing.md +46 -0
  152. package/src/claude/skills/route/references/chaining-patterns.md +53 -0
  153. package/src/claude/skills/route/references/task-taxonomy.md +48 -0
  154. package/src/claude/skills/specs/SKILL.md +51 -71
  155. package/src/claude/skills/specs/references/review.md +11 -8
  156. package/src/claude/skills/specs/references/templates.md +34 -18
  157. package/src/claude/skills/specs/templates/requirements-init.md +1 -1
  158. package/src/claude/skills/specs/templates/research.md +2 -2
  159. package/src/claude/skills/sync/SKILL.md +6 -6
  160. package/src/claude/skills/sync/references/sync-protocols.md +1 -1
  161. package/src/claude/skills/test/SKILL.md +120 -120
  162. package/src/claude/skills/test/references/execution-strategy.md +208 -361
  163. package/src/claude/skills/test/references/failure-triage.md +55 -121
  164. package/src/claude/skills/test/references/test-memory.md +20 -34
  165. package/src/claude/skills/ui-ux-pro-max/SKILL.md +1 -1
  166. package/src/claude/skills/web-testing/SKILL.md +1 -1
  167. package/src/claude/skills/xlsx/SKILL.md +1 -1
  168. package/src/claude/status.cjs +135 -33
  169. package/src/codex/AGENTS.md +14 -4
  170. package/src/codex/hooks/docs-sync.cjs +8 -3
  171. package/src/codex/hooks/lib/hook-context.cjs +18 -4
  172. package/src/codex/hooks/rules.cjs +29 -1
  173. package/src/codex/hooks/secret-output-guardrail.cjs +30 -0
  174. package/src/codex/hooks/spec-gate.cjs +3 -8
  175. package/src/codex/hooks/spec-state.cjs +3 -2
  176. package/src/codex/hooks.json +5 -0
  177. package/src/codex/rules/state-sync.md +7 -1
  178. package/src/codex/runtime.json +2 -0
  179. package/src/common/.env.example +1 -1
  180. package/src/omp/extensions/cafekit-bridge.mjs +233 -0
  181. package/src/omp/hooks/privacy-block.cjs +250 -0
  182. package/src/omp/runtime.json +33 -0
  183. package/bin/lib/rtk-run.js +0 -28
  184. package/bin/phases/setup-rtk.js +0 -159
  185. package/src/claude/skills/backend-development/SKILL.md +0 -101
  186. package/src/claude/skills/backend-development/references/backend-api-design.md +0 -495
  187. package/src/claude/skills/backend-development/references/backend-architecture.md +0 -454
  188. package/src/claude/skills/backend-development/references/backend-authentication.md +0 -338
  189. package/src/claude/skills/backend-development/references/backend-code-quality.md +0 -659
  190. package/src/claude/skills/backend-development/references/backend-debugging.md +0 -904
  191. package/src/claude/skills/backend-development/references/backend-devops.md +0 -491
  192. package/src/claude/skills/backend-development/references/backend-mindset.md +0 -387
  193. package/src/claude/skills/backend-development/references/backend-performance.md +0 -397
  194. package/src/claude/skills/backend-development/references/backend-security.md +0 -342
  195. package/src/claude/skills/backend-development/references/backend-technologies.md +0 -256
  196. package/src/claude/skills/backend-development/references/backend-testing.md +0 -429
  197. package/src/claude/skills/devops/.env.example +0 -76
  198. package/src/claude/skills/devops/SKILL.md +0 -102
  199. package/src/claude/skills/devops/references/browser-rendering.md +0 -305
  200. package/src/claude/skills/devops/references/cloudflare-d1-kv.md +0 -123
  201. package/src/claude/skills/devops/references/cloudflare-platform.md +0 -271
  202. package/src/claude/skills/devops/references/cloudflare-r2-storage.md +0 -280
  203. package/src/claude/skills/devops/references/cloudflare-workers-advanced.md +0 -312
  204. package/src/claude/skills/devops/references/cloudflare-workers-apis.md +0 -309
  205. package/src/claude/skills/devops/references/cloudflare-workers-basics.md +0 -418
  206. package/src/claude/skills/devops/references/docker-basics.md +0 -297
  207. package/src/claude/skills/devops/references/docker-compose.md +0 -292
  208. package/src/claude/skills/devops/references/gcloud-platform.md +0 -297
  209. package/src/claude/skills/devops/references/gcloud-services.md +0 -304
  210. package/src/claude/skills/devops/references/kubernetes-basics.md +0 -95
  211. package/src/claude/skills/devops/references/kubernetes-helm-advanced.md +0 -70
  212. package/src/claude/skills/devops/references/kubernetes-helm.md +0 -81
  213. package/src/claude/skills/devops/references/kubernetes-kubectl.md +0 -74
  214. package/src/claude/skills/devops/references/kubernetes-security-advanced.md +0 -94
  215. package/src/claude/skills/devops/references/kubernetes-security.md +0 -89
  216. package/src/claude/skills/devops/references/kubernetes-troubleshooting-advanced.md +0 -74
  217. package/src/claude/skills/devops/references/kubernetes-troubleshooting.md +0 -49
  218. package/src/claude/skills/devops/references/kubernetes-workflows-advanced.md +0 -75
  219. package/src/claude/skills/devops/references/kubernetes-workflows.md +0 -76
  220. package/src/claude/skills/devops/scripts/cloudflare_deploy.py +0 -269
  221. package/src/claude/skills/devops/scripts/docker_optimize.py +0 -332
  222. package/src/claude/skills/devops/scripts/requirements.txt +0 -20
  223. package/src/claude/skills/devops/scripts/tests/requirements.txt +0 -3
  224. package/src/claude/skills/devops/scripts/tests/test_cloudflare_deploy.py +0 -285
  225. package/src/claude/skills/devops/scripts/tests/test_docker_optimize.py +0 -436
  226. package/src/claude/skills/frontend-design/SKILL.md +0 -135
  227. package/src/claude/skills/frontend-design/references/ai-multimodal-overview.md +0 -165
  228. package/src/claude/skills/frontend-design/references/analysis-best-practices.md +0 -80
  229. package/src/claude/skills/frontend-design/references/analysis-prompts.md +0 -141
  230. package/src/claude/skills/frontend-design/references/analysis-techniques.md +0 -118
  231. package/src/claude/skills/frontend-design/references/animejs.md +0 -396
  232. package/src/claude/skills/frontend-design/references/anti-slop-rules.md +0 -103
  233. package/src/claude/skills/frontend-design/references/asset-generation.md +0 -337
  234. package/src/claude/skills/frontend-design/references/bento-motion-engine.md +0 -142
  235. package/src/claude/skills/frontend-design/references/design-extraction-overview.md +0 -71
  236. package/src/claude/skills/frontend-design/references/extraction-best-practices.md +0 -141
  237. package/src/claude/skills/frontend-design/references/extraction-output-templates.md +0 -162
  238. package/src/claude/skills/frontend-design/references/extraction-prompts.md +0 -127
  239. package/src/claude/skills/frontend-design/references/magicui-components.md +0 -129
  240. package/src/claude/skills/frontend-design/references/performance-guardrails.md +0 -169
  241. package/src/claude/skills/frontend-design/references/premium-design-patterns.md +0 -93
  242. package/src/claude/skills/frontend-design/references/redesign-audit-checklist.md +0 -114
  243. package/src/claude/skills/frontend-design/references/technical-accessibility.md +0 -119
  244. package/src/claude/skills/frontend-design/references/technical-best-practices.md +0 -97
  245. package/src/claude/skills/frontend-design/references/technical-optimization.md +0 -44
  246. package/src/claude/skills/frontend-design/references/technical-overview.md +0 -90
  247. package/src/claude/skills/frontend-design/references/technical-workflows.md +0 -150
  248. package/src/claude/skills/frontend-design/references/visual-analysis-overview.md +0 -95
  249. package/src/claude/skills/frontend-design/references/workflow-3d.md +0 -102
  250. package/src/claude/skills/frontend-design/references/workflow-describe.md +0 -87
  251. package/src/claude/skills/frontend-design/references/workflow-immersive.md +0 -87
  252. package/src/claude/skills/frontend-design/references/workflow-quick.md +0 -57
  253. package/src/claude/skills/frontend-design/references/workflow-screenshot.md +0 -63
  254. package/src/claude/skills/frontend-design/references/workflow-video.md +0 -74
  255. package/src/claude/skills/frontend-development/SKILL.md +0 -406
  256. package/src/claude/skills/frontend-development/resources/common-patterns.md +0 -331
  257. package/src/claude/skills/frontend-development/resources/complete-examples.md +0 -872
  258. package/src/claude/skills/frontend-development/resources/component-patterns.md +0 -502
  259. package/src/claude/skills/frontend-development/resources/data-fetching.md +0 -767
  260. package/src/claude/skills/frontend-development/resources/file-organization.md +0 -502
  261. package/src/claude/skills/frontend-development/resources/loading-and-error-states.md +0 -501
  262. package/src/claude/skills/frontend-development/resources/performance.md +0 -406
  263. package/src/claude/skills/frontend-development/resources/routing-guide.md +0 -364
  264. package/src/claude/skills/frontend-development/resources/styling-guide.md +0 -428
  265. package/src/claude/skills/frontend-development/resources/typescript-standards.md +0 -418
  266. package/src/claude/skills/mobile-development/SKILL.md +0 -218
  267. package/src/claude/skills/mobile-development/references/mobile-android.md +0 -604
  268. package/src/claude/skills/mobile-development/references/mobile-best-practices.md +0 -544
  269. package/src/claude/skills/mobile-development/references/mobile-debugging.md +0 -1089
  270. package/src/claude/skills/mobile-development/references/mobile-frameworks.md +0 -465
  271. package/src/claude/skills/mobile-development/references/mobile-ios.md +0 -496
  272. package/src/claude/skills/mobile-development/references/mobile-mindset.md +0 -542
  273. package/src/claude/skills/react-best-practices/AGENTS.md +0 -2249
  274. package/src/claude/skills/react-best-practices/README.md +0 -123
  275. package/src/claude/skills/react-best-practices/SKILL.md +0 -128
  276. package/src/claude/skills/react-best-practices/metadata.json +0 -15
  277. package/src/claude/skills/react-best-practices/rules/_sections.md +0 -46
  278. package/src/claude/skills/react-best-practices/rules/_template.md +0 -28
  279. package/src/claude/skills/react-best-practices/rules/advanced-event-handler-refs.md +0 -55
  280. package/src/claude/skills/react-best-practices/rules/advanced-use-latest.md +0 -49
  281. package/src/claude/skills/react-best-practices/rules/async-api-routes.md +0 -38
  282. package/src/claude/skills/react-best-practices/rules/async-defer-await.md +0 -80
  283. package/src/claude/skills/react-best-practices/rules/async-dependencies.md +0 -36
  284. package/src/claude/skills/react-best-practices/rules/async-parallel.md +0 -28
  285. package/src/claude/skills/react-best-practices/rules/async-suspense-boundaries.md +0 -99
  286. package/src/claude/skills/react-best-practices/rules/bundle-barrel-imports.md +0 -59
  287. package/src/claude/skills/react-best-practices/rules/bundle-conditional.md +0 -31
  288. package/src/claude/skills/react-best-practices/rules/bundle-defer-third-party.md +0 -49
  289. package/src/claude/skills/react-best-practices/rules/bundle-dynamic-imports.md +0 -35
  290. package/src/claude/skills/react-best-practices/rules/bundle-preload.md +0 -50
  291. package/src/claude/skills/react-best-practices/rules/client-event-listeners.md +0 -74
  292. package/src/claude/skills/react-best-practices/rules/client-swr-dedup.md +0 -56
  293. package/src/claude/skills/react-best-practices/rules/js-batch-dom-css.md +0 -82
  294. package/src/claude/skills/react-best-practices/rules/js-cache-function-results.md +0 -80
  295. package/src/claude/skills/react-best-practices/rules/js-cache-property-access.md +0 -28
  296. package/src/claude/skills/react-best-practices/rules/js-cache-storage.md +0 -70
  297. package/src/claude/skills/react-best-practices/rules/js-combine-iterations.md +0 -32
  298. package/src/claude/skills/react-best-practices/rules/js-early-exit.md +0 -50
  299. package/src/claude/skills/react-best-practices/rules/js-hoist-regexp.md +0 -45
  300. package/src/claude/skills/react-best-practices/rules/js-index-maps.md +0 -37
  301. package/src/claude/skills/react-best-practices/rules/js-length-check-first.md +0 -49
  302. package/src/claude/skills/react-best-practices/rules/js-min-max-loop.md +0 -82
  303. package/src/claude/skills/react-best-practices/rules/js-set-map-lookups.md +0 -24
  304. package/src/claude/skills/react-best-practices/rules/js-tosorted-immutable.md +0 -57
  305. package/src/claude/skills/react-best-practices/rules/rendering-activity.md +0 -26
  306. package/src/claude/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -47
  307. package/src/claude/skills/react-best-practices/rules/rendering-conditional-render.md +0 -40
  308. package/src/claude/skills/react-best-practices/rules/rendering-content-visibility.md +0 -38
  309. package/src/claude/skills/react-best-practices/rules/rendering-hoist-jsx.md +0 -46
  310. package/src/claude/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +0 -82
  311. package/src/claude/skills/react-best-practices/rules/rendering-svg-precision.md +0 -28
  312. package/src/claude/skills/react-best-practices/rules/rerender-defer-reads.md +0 -39
  313. package/src/claude/skills/react-best-practices/rules/rerender-dependencies.md +0 -45
  314. package/src/claude/skills/react-best-practices/rules/rerender-derived-state.md +0 -29
  315. package/src/claude/skills/react-best-practices/rules/rerender-functional-setstate.md +0 -74
  316. package/src/claude/skills/react-best-practices/rules/rerender-lazy-state-init.md +0 -58
  317. package/src/claude/skills/react-best-practices/rules/rerender-memo.md +0 -44
  318. package/src/claude/skills/react-best-practices/rules/rerender-transitions.md +0 -40
  319. package/src/claude/skills/react-best-practices/rules/server-after-nonblocking.md +0 -73
  320. package/src/claude/skills/react-best-practices/rules/server-cache-lru.md +0 -41
  321. package/src/claude/skills/react-best-practices/rules/server-cache-react.md +0 -26
  322. package/src/claude/skills/react-best-practices/rules/server-parallel-fetching.md +0 -79
  323. package/src/claude/skills/react-best-practices/rules/server-serialization.md +0 -38
@@ -1,70 +0,0 @@
1
- # Helm Advanced - Templates & Hooks
2
-
3
- ## Template Variables
4
- ```yaml
5
- # templates/deployment.yaml
6
- apiVersion: apps/v1
7
- kind: Deployment
8
- version: "1.0.0"
9
- spec:
10
- replicas: {{ .Values.replicaCount }}
11
- template:
12
- spec:
13
- containers:
14
- - name: {{ .Chart.Name }}
15
- image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
16
- {{- if .Values.resources }}
17
- resources:
18
- {{- toYaml .Values.resources | nindent 10 }}
19
- {{- end }}
20
- ```
21
-
22
- ## Helper Templates
23
- ```yaml
24
- # templates/_helpers.tpl
25
- {{- define "mychart.fullname" -}}
26
- {{- printf "%s-%s" .Release.Name .Chart.Name | trunc 63 | trimSuffix "-" }}
27
- {{- end }}
28
-
29
- {{- define "mychart.labels" -}}
30
- app.kubernetes.io/name: {{ .Chart.Name }}
31
- app.kubernetes.io/instance: {{ .Release.Name }}
32
- {{- end }}
33
- ```
34
-
35
- ## Hooks
36
- ```yaml
37
- apiVersion: batch/v1
38
- kind: Job
39
- version: "1.0.0"
40
- spec:
41
- template:
42
- spec:
43
- containers:
44
- - name: post-install
45
- command: ["/bin/sh", "-c", "echo 'Done'"]
46
- restartPolicy: Never
47
- ```
48
-
49
- Hook types: `pre-install`, `post-install`, `pre-upgrade`, `post-upgrade`
50
-
51
- ## Packaging
52
- ```bash
53
- helm package mychart
54
- helm repo index . --url https://charts.example.com
55
- helm push mychart-1.0.0.tgz oci://registry.example.com/helm
56
- helm repo add myrepo https://charts.example.com
57
- helm install myapp myrepo/mychart
58
- ```
59
-
60
- ## Commands
61
-
62
- | Command | Purpose |
63
- |---------|---------|
64
- | `helm create` | Create |
65
- | `helm lint` | Validate |
66
- | `helm template` | Render |
67
- | `helm install` | Deploy |
68
- | `helm upgrade` | Update |
69
- | `helm rollback` | Revert |
70
- | `helm uninstall` | Remove |
@@ -1,81 +0,0 @@
1
- # Helm Package Management
2
-
3
- ## Core Concepts
4
-
5
- - **Chart:** Helm package with K8s resource definitions
6
- - **Repository:** Collection of charts
7
- - **Release:** Deployed instance of a chart
8
- - **Values:** Configuration that parameterizes charts
9
-
10
- ## Chart Structure
11
-
12
- ```
13
- mychart/
14
- ├── Chart.yaml # Metadata
15
- ├── values.yaml # Default values
16
- ├── charts/ # Dependencies
17
- ├── templates/
18
- │ ├── deployment.yaml
19
- │ ├── service.yaml
20
- │ ├── _helpers.tpl # Template helpers
21
- │ └── NOTES.txt
22
- └── values.schema.json # Validation (optional)
23
- ```
24
-
25
- ## Essential Commands
26
-
27
- ```bash
28
- helm create mychart # Create chart
29
- helm lint mychart # Validate
30
- helm template myrelease ./mychart # Render locally
31
- helm install myrelease ./mychart --dry-run --debug # Preview
32
-
33
- helm install myrelease ./mychart
34
- helm install myrelease ./mychart -f values-prod.yaml
35
- helm install myrelease ./mychart --set replicaCount=3
36
-
37
- helm upgrade myrelease ./mychart
38
- helm rollback myrelease 1
39
- helm list
40
- helm uninstall myrelease
41
- ```
42
-
43
- ## Multi-Environment
44
-
45
- ```bash
46
- # Files: values.yaml, values-dev.yaml, values-prod.yaml
47
- helm install myapp ./mychart -f values.yaml -f values-prod.yaml
48
- helm install myapp ./mychart --set replicaCount=3 --set image.tag=v1.2.3
49
- ```
50
-
51
- ## values.yaml Example
52
-
53
- ```yaml
54
- replicaCount: 2
55
- image:
56
- repository: myapp
57
- tag: "1.0.0"
58
- pullPolicy: IfNotPresent
59
- service:
60
- type: ClusterIP
61
- port: 8080
62
- resources:
63
- limits: { cpu: 500m, memory: 512Mi }
64
- requests: { cpu: 250m, memory: 256Mi }
65
- ```
66
-
67
- ## Dependencies
68
-
69
- ```yaml
70
- # Chart.yaml
71
- dependencies:
72
- - name: postgresql
73
- version: "12.1.0"
74
- repository: "https://charts.bitnami.com/bitnami"
75
- ```
76
-
77
- ```bash
78
- helm dependency update mychart
79
- ```
80
-
81
- See `kubernetes-helm-advanced.md` for templates, hooks, and packaging.
@@ -1,74 +0,0 @@
1
- # kubectl Essential Commands
2
-
3
- ## Cluster & Node
4
- ```bash
5
- kubectl cluster-info
6
- kubectl get nodes
7
- kubectl describe node <node-name>
8
- kubectl top nodes
9
- kubectl drain <node-name> --ignore-daemonsets
10
- kubectl uncordon <node-name>
11
- ```
12
-
13
- ## Pod Operations
14
- ```bash
15
- kubectl get pods -A # All namespaces
16
- kubectl get pods -o wide # Extended info
17
- kubectl describe pod <pod-name>
18
- kubectl logs <pod-name>
19
- kubectl logs -f <pod-name> # Follow
20
- kubectl logs --previous <pod-name> # Previous crash
21
- kubectl exec -it <pod-name> -- /bin/bash
22
- ```
23
-
24
- ## Deployment
25
- ```bash
26
- kubectl apply -f manifest.yaml
27
- kubectl apply -f ./manifests/
28
- kubectl apply -f manifest.yaml --dry-run=client -o yaml # Preview
29
- kubectl set image deployment/myapp app=myapp:v2
30
- kubectl delete -f manifest.yaml
31
- ```
32
-
33
- ## Service & Network
34
- ```bash
35
- kubectl port-forward service/myapp 8080:8080
36
- kubectl get svc
37
- kubectl exec -it <pod-name> -- curl http://service:8080
38
- kubectl exec -it <pod-name> -- nslookup kubernetes.default
39
- ```
40
-
41
- ## Debugging (Get → Describe → Logs)
42
- ```bash
43
- kubectl get pods -o wide
44
- kubectl get events -n <ns> --sort-by='.lastTimestamp'
45
- kubectl describe pod <pod-name>
46
- kubectl logs <pod-name> -c <container>
47
- ```
48
-
49
- ## Output & Filtering
50
- ```bash
51
- kubectl get pods -o json
52
- kubectl get pods -o yaml
53
- kubectl get pods -l app=myapp,tier=frontend
54
- kubectl get pods --field-selector=status.phase=Running
55
- kubectl get pods -w # Watch
56
- ```
57
-
58
- ## Flags
59
-
60
- | Flag | Purpose |
61
- |------|---------|
62
- | `-n` | Namespace |
63
- | `-A` | All namespaces |
64
- | `-o` | Output format |
65
- | `-l` | Label selector |
66
- | `-w` | Watch |
67
-
68
- ## Aliases
69
- ```bash
70
- alias k='kubectl'
71
- alias kgp='kubectl get pods'
72
- alias kd='kubectl describe'
73
- alias kl='kubectl logs'
74
- ```
@@ -1,94 +0,0 @@
1
- # Kubernetes Security Advanced
2
-
3
- ## ClusterRole (cluster-wide)
4
-
5
- ```yaml
6
- apiVersion: rbac.authorization.k8s.io/v1
7
- kind: ClusterRole
8
- version: "1.0.0"
9
- rules:
10
- - apiGroups: [""]
11
- resources: ["secrets"]
12
- verbs: ["get"]
13
- resourceNames: ["app-credentials"] # Restrict to specific
14
-
15
- ---
16
- apiVersion: rbac.authorization.k8s.io/v1
17
- kind: ClusterRoleBinding
18
- version: "1.0.0"
19
- subjects:
20
- - kind: User
21
- name: admin@example.com
22
- apiGroup: rbac.authorization.k8s.io
23
- roleRef:
24
- kind: ClusterRole
25
- name: cluster-admin
26
- apiGroup: rbac.authorization.k8s.io
27
- ```
28
-
29
- ## Secrets Management
30
-
31
- ```yaml
32
- apiVersion: v1
33
- kind: Secret
34
- version: "1.0.0"
35
- type: Opaque
36
- stringData:
37
- username: admin
38
- password: secretpassword
39
- ```
40
-
41
- ### Mount as env
42
- ```yaml
43
- env:
44
- - name: DB_PASSWORD
45
- valueFrom:
46
- secretKeyRef:
47
- name: db-credentials
48
- key: password
49
- ```
50
-
51
- ### Mount as volume
52
- ```yaml
53
- volumeMounts:
54
- - name: secret-volume
55
- mountPath: /etc/secrets
56
- readOnly: true
57
- volumes:
58
- - name: secret-volume
59
- secret:
60
- secretName: db-credentials
61
- ```
62
-
63
- ## Allow DNS (Required for most apps)
64
-
65
- ```yaml
66
- apiVersion: networking.k8s.io/v1
67
- kind: NetworkPolicy
68
- version: "1.0.0"
69
- spec:
70
- podSelector: {}
71
- policyTypes: [Egress]
72
- egress:
73
- - to:
74
- - namespaceSelector:
75
- matchLabels:
76
- name: kube-system
77
- ports:
78
- - { protocol: UDP, port: 53 }
79
- ```
80
-
81
- ## Security Checklist
82
-
83
- - [ ] RBAC with least-privilege roles
84
- - [ ] Pod Security Standards (restricted)
85
- - [ ] Network policies (default-deny + explicit allow)
86
- - [ ] Run containers as non-root
87
- - [ ] Read-only root filesystem
88
- - [ ] Drop all capabilities
89
- - [ ] Secrets for sensitive data
90
- - [ ] Image scanning enabled
91
- - [ ] Private container registry
92
- - [ ] Resource quotas and limits
93
- - [ ] Audit logging enabled
94
- - [ ] Regular credential rotation
@@ -1,89 +0,0 @@
1
- # Kubernetes Security
2
-
3
- ## RBAC (Role-Based Access Control)
4
-
5
- ### Role (namespace-scoped)
6
- ```yaml
7
- apiVersion: rbac.authorization.k8s.io/v1
8
- kind: Role
9
- version: "1.0.0"
10
- rules:
11
- - apiGroups: [""]
12
- resources: ["pods", "pods/log"]
13
- verbs: ["get", "list", "watch"]
14
- ```
15
-
16
- ### RoleBinding
17
- ```yaml
18
- apiVersion: rbac.authorization.k8s.io/v1
19
- kind: RoleBinding
20
- version: "1.0.0"
21
- subjects:
22
- - kind: ServiceAccount
23
- name: my-app-sa
24
- namespace: default
25
- roleRef:
26
- kind: Role
27
- name: pod-reader
28
- apiGroup: rbac.authorization.k8s.io
29
- ```
30
-
31
- ### Verify Permissions
32
- ```bash
33
- kubectl auth can-i get pods --as=system:serviceaccount:default:my-sa
34
- kubectl get roles,rolebindings -n default
35
- ```
36
-
37
- ## Pod Security (Restricted)
38
-
39
- ```yaml
40
- spec:
41
- securityContext:
42
- runAsNonRoot: true
43
- runAsUser: 1000
44
- seccompProfile:
45
- type: RuntimeDefault
46
- containers:
47
- - name: app
48
- securityContext:
49
- allowPrivilegeEscalation: false
50
- readOnlyRootFilesystem: true
51
- capabilities:
52
- drop: ["ALL"]
53
- ```
54
-
55
- Enable on namespace:
56
- ```bash
57
- kubectl label namespace default \
58
- pod-security.kubernetes.io/enforce=restricted
59
- ```
60
-
61
- ## Network Policies
62
-
63
- ### Default Deny
64
- ```yaml
65
- apiVersion: networking.k8s.io/v1
66
- kind: NetworkPolicy
67
- version: "1.0.0"
68
- spec:
69
- podSelector: {}
70
- policyTypes: [Ingress, Egress]
71
- ```
72
-
73
- ### Allow Specific
74
- ```yaml
75
- apiVersion: networking.k8s.io/v1
76
- kind: NetworkPolicy
77
- version: "1.0.0"
78
- spec:
79
- podSelector:
80
- matchLabels: { app: backend }
81
- ingress:
82
- - from:
83
- - podSelector:
84
- matchLabels: { app: frontend }
85
- ports:
86
- - { protocol: TCP, port: 8080 }
87
- ```
88
-
89
- See `kubernetes-security-advanced.md` for secrets, ClusterRoles, and checklist.
@@ -1,74 +0,0 @@
1
- # Kubernetes Troubleshooting Advanced
2
-
3
- ## Node Issues
4
- ```bash
5
- kubectl describe node <node-name> | grep -A 5 "Conditions:"
6
- kubectl top node <node-name>
7
- kubectl top pods -A --sort-by=memory
8
- kubectl drain <node-name> --ignore-daemonsets
9
- kubectl uncordon <node-name>
10
- ```
11
-
12
- ## CrashLoopBackOff
13
- ```bash
14
- kubectl logs <pod-name> --previous
15
- kubectl describe pod <pod-name>
16
- kubectl get pod <pod-name> -o yaml | grep -A 5 resources:
17
- ```
18
-
19
- ## HPA
20
- ```yaml
21
- apiVersion: autoscaling/v2
22
- kind: HorizontalPodAutoscaler
23
- spec:
24
- scaleTargetRef:
25
- apiVersion: apps/v1
26
- kind: Deployment
27
- name: myapp
28
- minReplicas: 2
29
- maxReplicas: 10
30
- metrics:
31
- - type: Resource
32
- resource:
33
- name: cpu
34
- target:
35
- type: Utilization
36
- averageUtilization: 70
37
- ```
38
-
39
- ## Anti-Patterns
40
-
41
- **Using `latest` tag:**
42
- ```yaml
43
- # ❌ image: myapp:latest
44
- # ✅ image: myapp:v1.2.3
45
- ```
46
-
47
- **Missing resources:**
48
- ```yaml
49
- # ✅ Always set
50
- resources:
51
- requests: { memory: "256Mi", cpu: "250m" }
52
- limits: { memory: "512Mi", cpu: "500m" }
53
- ```
54
-
55
- **Missing health checks:**
56
- ```yaml
57
- livenessProbe:
58
- httpGet: { path: /health, port: 8080 }
59
- readinessProbe:
60
- httpGet: { path: /ready, port: 8080 }
61
- ```
62
-
63
- **Running as root:**
64
- ```yaml
65
- securityContext:
66
- runAsNonRoot: true
67
- runAsUser: 1000
68
- ```
69
-
70
- ## Monitoring
71
- ```bash
72
- helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
73
- helm install prometheus prometheus-community/kube-prometheus-stack -n monitoring
74
- ```
@@ -1,49 +0,0 @@
1
- # Kubernetes Troubleshooting
2
-
3
- ## Debugging Workflow
4
-
5
- ```bash
6
- # 1. Overview
7
- kubectl get pods -o wide
8
- kubectl get events -n <namespace> --sort-by='.lastTimestamp'
9
-
10
- # 2. Details
11
- kubectl describe pod <pod-name>
12
-
13
- # 3. Logs
14
- kubectl logs <pod-name>
15
- kubectl logs <pod-name> --previous # Crashed instance
16
- kubectl logs <pod-name> -c <container>
17
- ```
18
-
19
- ## Common Pod States
20
-
21
- | State | Cause | Solution |
22
- |-------|-------|----------|
23
- | Pending | No node resources | Check node capacity |
24
- | ContainerCreating | Image pulling | Check image URI |
25
- | CrashLoopBackOff | Container exits | Check logs, health checks |
26
- | ImagePullBackOff | Failed image pull | Verify credentials |
27
- | OOMKilled (137) | Out of memory | Increase memory limit |
28
-
29
- ## Service & Network
30
-
31
- ```bash
32
- kubectl exec -it <pod-name> -- nslookup kubernetes.default
33
- kubectl exec -it <pod-name> -- curl http://myservice:8080
34
- kubectl get endpoints <service-name>
35
- kubectl port-forward service/myservice 8080:8080
36
- kubectl get networkpolicies -A
37
- ```
38
-
39
- ## Quick Fixes
40
-
41
- | Problem | Command |
42
- |---------|---------|
43
- | Pod stuck | `kubectl delete pod <name> --grace-period=0 --force` |
44
- | High CPU | `kubectl top pods -A --sort-by=cpu` |
45
- | High memory | `kubectl top pods -A --sort-by=memory` |
46
- | Restart | `kubectl rollout restart deployment/<name>` |
47
- | Rollback | `kubectl rollout undo deployment/<name>` |
48
-
49
- See `kubernetes-troubleshooting-advanced.md` for node issues, HPA, anti-patterns.
@@ -1,75 +0,0 @@
1
- # Kubernetes Workflows Advanced
2
-
3
- ## CI/CD Pipeline
4
- ```yaml
5
- # GitHub Actions
6
- name: Build and Deploy
7
- on:
8
- push:
9
- branches: [main]
10
-
11
- jobs:
12
- build:
13
- runs-on: ubuntu-latest
14
- steps:
15
- - uses: actions/checkout@v3
16
- - run: docker build . -t $REGISTRY/$IMAGE:${{ github.sha }}
17
- - run: docker push $REGISTRY/$IMAGE:${{ github.sha }}
18
-
19
- deploy:
20
- needs: build
21
- steps:
22
- - uses: actions/checkout@v3
23
- with:
24
- repository: myorg/gitops-repo
25
- token: ${{ secrets.GITOPS_TOKEN }}
26
- - run: |
27
- sed -i 's|image:.*|image: $REGISTRY/$IMAGE:${{ github.sha }}|' k8s/deployment.yaml
28
- git commit -am "Update image" && git push
29
- ```
30
-
31
- ## Kustomize
32
-
33
- ```
34
- kustomize/
35
- ├── base/
36
- │ ├── kustomization.yaml
37
- │ └── deployment.yaml
38
- └── overlays/
39
- └── prod/
40
- └── kustomization.yaml
41
- ```
42
-
43
- ### Base
44
- ```yaml
45
- apiVersion: kustomize.config.k8s.io/v1beta1
46
- kind: Kustomization
47
- resources:
48
- - deployment.yaml
49
- commonLabels:
50
- app: myapp
51
- ```
52
-
53
- ### Prod Overlay
54
- ```yaml
55
- apiVersion: kustomize.config.k8s.io/v1beta1
56
- kind: Kustomization
57
- bases:
58
- - ../../base
59
- replicas:
60
- - name: myapp
61
- count: 5
62
- ```
63
-
64
- ```bash
65
- kubectl apply -k overlays/prod/
66
- ```
67
-
68
- ## Flux CD
69
- ```bash
70
- flux bootstrap github \
71
- --owner=myorg \
72
- --repository=fleet-infra \
73
- --branch=main \
74
- --path=clusters/my-cluster
75
- ```
@@ -1,76 +0,0 @@
1
- # Kubernetes Workflows
2
-
3
- ## GitOps Architecture
4
-
5
- ```
6
- Git Repository (desired state)
7
- │ Watches
8
- ▼
9
- GitOps Agent (Argo CD / Flux)
10
- │ Syncs
11
- ▼
12
- Kubernetes Cluster (actual state)
13
- ```
14
-
15
- **Benefits:** Single source of truth, auditable, automated, easy rollback
16
-
17
- ## Argo CD Setup
18
-
19
- ```bash
20
- kubectl create namespace argocd
21
- kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
22
- kubectl port-forward svc/argocd-server -n argocd 8080:443
23
- kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
24
- ```
25
-
26
- ### Application Manifest
27
- ```yaml
28
- apiVersion: argoproj.io/v1alpha1
29
- kind: Application
30
- version: blue # Change to 'green' to switch
31
- spec:
32
- project: default
33
- source:
34
- repoURL: https://github.com/myorg/myapp
35
- targetRevision: HEAD
36
- path: k8s/manifests
37
- destination:
38
- server: https://kubernetes.default.svc
39
- namespace: default
40
- syncPolicy:
41
- automated:
42
- prune: true
43
- selfHeal: true
44
- ```
45
-
46
- ## Deployment Patterns
47
-
48
- ### Rolling Update
49
- ```yaml
50
- spec:
51
- strategy:
52
- type: RollingUpdate
53
- rollingUpdate:
54
- maxSurge: 1
55
- maxUnavailable: 0
56
- ```
57
-
58
- ### Blue-Green
59
- ```yaml
60
- # Two deployments: myapp-blue, myapp-green
61
- # Service selector switches between versions
62
- selector:
63
- app: myapp
64
- version: blue # Change to 'green' to switch
65
- ```
66
-
67
- ### Canary (with Istio)
68
- ```yaml
69
- route:
70
- - destination: { host: myapp, subset: v1 }
71
- weight: 90
72
- - destination: { host: myapp, subset: v2 }
73
- weight: 10 # 10% canary
74
- ```
75
-
76
- See `kubernetes-workflows-advanced.md` for CI/CD, Kustomize patterns.