claude-code-kit 0.66.0__tar.gz → 0.67.0__tar.gz

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 (648) hide show
  1. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/.claude-plugin/marketplace.json +1 -1
  2. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/.claude-plugin/plugin.json +1 -1
  3. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/CHANGELOG.md +82 -0
  4. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/PKG-INFO +4 -4
  5. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/README.md +3 -3
  6. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/influences.md +1 -0
  7. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/skill-audit.md +17 -15
  8. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/stack-skills/README.md +3 -1
  9. claude_code_kit-0.67.0/docs/system-design-threads.md +61 -0
  10. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/pyproject.toml +1 -1
  11. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/design-patterns.md +4 -0
  12. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/api-and-interface-design/SKILL.md +59 -0
  13. claude_code_kit-0.67.0/skills/api-and-interface-design/references/htn-http-routing.md +93 -0
  14. claude_code_kit-0.67.0/skills/api-and-interface-design/references/htn-rest-api-design.md +129 -0
  15. claude_code_kit-0.67.0/skills/async-python-patterns/references/htn-python-s-inner-working-behind-the-scenes.md +81 -0
  16. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/auth-and-rbac/SKILL.md +48 -0
  17. claude_code_kit-0.67.0/skills/auth-and-rbac/references/htn-design-an-authentication-system.md +78 -0
  18. claude_code_kit-0.67.0/skills/auth-and-rbac/references/htn-serialization-deserialization-authentication-and-authorizati.md +178 -0
  19. claude_code_kit-0.67.0/skills/design-patterns-and-conventions/references/htn-design-a-vending-machine.md +122 -0
  20. claude_code_kit-0.67.0/skills/design-patterns-and-conventions/references/htn-lld-concepts.md +147 -0
  21. claude_code_kit-0.67.0/skills/design-patterns-and-conventions/references/htn-validation-transformation-controllers-middlewares.md +149 -0
  22. claude_code_kit-0.67.0/skills/distributed-systems-patterns/README.md +26 -0
  23. claude_code_kit-0.67.0/skills/distributed-systems-patterns/SKILL.md +350 -0
  24. claude_code_kit-0.67.0/skills/distributed-systems-patterns/references/htn-databases-in-depth-part-1.md +196 -0
  25. claude_code_kit-0.67.0/skills/distributed-systems-patterns/references/htn-databases-in-depth-part-3.md +206 -0
  26. claude_code_kit-0.67.0/skills/distributed-systems-patterns/references/htn-design-a-distributed-cache.md +144 -0
  27. claude_code_kit-0.67.0/skills/distributed-systems-patterns/references/htn-design-a-distributed-key-value-store.md +139 -0
  28. claude_code_kit-0.67.0/skills/distributed-systems-patterns/references/htn-design-consistent-hashing.md +74 -0
  29. claude_code_kit-0.67.0/skills/distributed-systems-patterns/references/htn-tricky-hld-patterns-for-interviews.md +102 -0
  30. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/gcs-file-storage-patterns/SKILL.md +30 -0
  31. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kafka-config-driven/SKILL.md +61 -0
  32. claude_code_kit-0.67.0/skills/kafka-config-driven/references/htn-apache-kafka-crash-course.md +91 -0
  33. claude_code_kit-0.67.0/skills/observability-and-logging/references/htn-caching-task-queues-error-handling-logging-monitoring.md +232 -0
  34. claude_code_kit-0.67.0/skills/performance-optimization/references/htn-how-javascript-executes-the-code-behind-the-scenes.md +137 -0
  35. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/python-dao-and-database/SKILL.md +58 -0
  36. claude_code_kit-0.67.0/skills/python-dao-and-database/references/htn-databases-in-depth-part-2.md +241 -0
  37. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/redis-caching-patterns/SKILL.md +87 -0
  38. claude_code_kit-0.67.0/skills/redis-caching-patterns/references/htn-a-complete-guide-to-redis.md +282 -0
  39. claude_code_kit-0.67.0/skills/system-design-patterns/README.md +29 -0
  40. claude_code_kit-0.67.0/skills/system-design-patterns/SKILL.md +383 -0
  41. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-a-basic-music-system.md +69 -0
  42. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-a-chat-system.md +107 -0
  43. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-a-content-delivery-network.md +79 -0
  44. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-a-load-balancer.md +140 -0
  45. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-a-news-feed-system.md +173 -0
  46. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-a-notification-system.md +78 -0
  47. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-a-parking-lot.md +55 -0
  48. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-a-rate-limiter.md +93 -0
  49. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-a-unique-id-generator-in-distributed-systems.md +131 -0
  50. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-airbnb.md +190 -0
  51. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-amazon.md +215 -0
  52. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-autocomplete-for-search-engines.md +78 -0
  53. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-bit-ly-and-pastebin.md +120 -0
  54. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-instagram.md +176 -0
  55. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-netflix.md +249 -0
  56. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-reddit.md +93 -0
  57. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-spotify.md +195 -0
  58. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-tinder.md +223 -0
  59. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-twitter.md +109 -0
  60. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-youtube-hld.md +149 -0
  61. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-design-youtube-lld.md +114 -0
  62. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-mental-model-for-microservices.md +67 -0
  63. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-netflix-recommendation-system-machine-learning-system-design.md +178 -0
  64. claude_code_kit-0.67.0/skills/system-design-patterns/references/htn-security-scaling-performance-concurrency-parallelism.md +215 -0
  65. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/__init__.py +1 -1
  66. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/.gitignore +0 -0
  67. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/CLAUDE.md +0 -0
  68. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/CONTRIBUTING.md +0 -0
  69. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/LICENSE +0 -0
  70. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/acceptance-reviewer.md +0 -0
  71. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/auditor.md +0 -0
  72. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/dependency-scanner.md +0 -0
  73. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/developer.md +0 -0
  74. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/devils-advocate.md +0 -0
  75. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/devops-engineer.md +0 -0
  76. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/e2e-tester.md +0 -0
  77. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/em-reviewer.md +0 -0
  78. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/incident-responder.md +0 -0
  79. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/merge-reviewer.md +0 -0
  80. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/observability-engineer.md +0 -0
  81. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/orchestrator.md +0 -0
  82. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/owasp-reviewer.md +0 -0
  83. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/policy-validator.md +0 -0
  84. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/pr-raiser.md +0 -0
  85. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/risk-classifier.md +0 -0
  86. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/sdlc-code-reviewer.md +0 -0
  87. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/secret-scanner.md +0 -0
  88. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/security-reviewer.md +0 -0
  89. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/senior-backend-dev.md +0 -0
  90. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/senior-frontend-dev.md +0 -0
  91. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/senior-tester.md +0 -0
  92. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/spec-doc-writer.md +0 -0
  93. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/story-planner.md +0 -0
  94. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/technical-architect.md +0 -0
  95. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/tester.md +0 -0
  96. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/ui-designer.md +0 -0
  97. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/agents/unit-tester.md +0 -0
  98. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/catalog/capture.yaml +0 -0
  99. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/catalog/mcp.yaml +0 -0
  100. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/catalog/org.yaml +0 -0
  101. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/catalog/profiles.yaml +0 -0
  102. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/catalog/stacks.yaml +0 -0
  103. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/commands/abort.md +0 -0
  104. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/commands/init.md +0 -0
  105. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/commands/sdlc.md +0 -0
  106. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/commands/status.md +0 -0
  107. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/KNOWN_LIMITATIONS.md +0 -0
  108. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/RELEASE-POLICY.md +0 -0
  109. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/agentic-patterns.md +0 -0
  110. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/agents.md +0 -0
  111. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/architecture.md +0 -0
  112. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/autonomous-operation.md +0 -0
  113. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/capture-a-real-run.md +0 -0
  114. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/cli.md +0 -0
  115. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/coverage-audit.md +0 -0
  116. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/cursor-export.md +0 -0
  117. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/eval-harness.md +0 -0
  118. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/install.md +0 -0
  119. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/launch/awesome-prs.md +0 -0
  120. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/launch/demo-script.md +0 -0
  121. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/launch/directory-submission.md +0 -0
  122. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/launch/github-about.md +0 -0
  123. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/launch/posts.md +0 -0
  124. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/launch/road-to-1.0.md +0 -0
  125. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/launch/seed-issues.md +0 -0
  126. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/org-capabilities.md +0 -0
  127. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/rules-context-budget.md +0 -0
  128. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/stack-skills/GAP-ANALYSIS.md +0 -0
  129. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/docs/stack-skills/REPO-INVENTORY.md +0 -0
  130. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/hooks.json +0 -0
  131. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/audit-log.sh +0 -0
  132. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/capture-learnings.sh +0 -0
  133. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/guard-destructive-git.sh +0 -0
  134. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/guard-kubectl-delete.sh +0 -0
  135. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/guard-push-main.sh +0 -0
  136. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/guard-secrets.sh +0 -0
  137. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/lint-fix.sh +0 -0
  138. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/load-autonomy.sh +0 -0
  139. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/load-continuity.sh +0 -0
  140. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/load-learnings.sh +0 -0
  141. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/type-check.sh +0 -0
  142. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/validate-frontmatter.sh +0 -0
  143. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/validate-settings.sh +0 -0
  144. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/warn-large-edits.sh +0 -0
  145. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/warn-llm-io.sh +0 -0
  146. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/warn-missing-tests.sh +0 -0
  147. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/warn-sensitive-files.sh +0 -0
  148. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/hooks/scripts/warn-shared-modules.sh +0 -0
  149. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/agent-guardrails.md +0 -0
  150. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/agent-memory.md +0 -0
  151. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/agent-resilience.md +0 -0
  152. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/autonomy-levels.md +0 -0
  153. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/code-organization.md +0 -0
  154. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/continuity.md +0 -0
  155. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/devops-observability.md +0 -0
  156. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/documentation.md +0 -0
  157. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/evals.md +0 -0
  158. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/frontend-best-practices.md +0 -0
  159. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/goal-setting-and-monitoring.md +0 -0
  160. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/human-in-the-loop.md +0 -0
  161. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/linting-and-formatting.md +0 -0
  162. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/mandatory-workflow.md +0 -0
  163. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/model-tiers.md +0 -0
  164. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/quality-gates.md +0 -0
  165. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/rarv-cycle.md +0 -0
  166. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/reasoning-techniques.md +0 -0
  167. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/resilience-engineering.md +0 -0
  168. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/responsive-and-accessibility.md +0 -0
  169. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/risk-classification.md +0 -0
  170. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/testing.md +0 -0
  171. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/tool-design.md +0 -0
  172. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/rules/wave-orchestration.md +0 -0
  173. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/schemas/README.md +0 -0
  174. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/schemas/catalog-capture.schema.json +0 -0
  175. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/schemas/catalog-mcp.schema.json +0 -0
  176. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/schemas/catalog-org.schema.json +0 -0
  177. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/schemas/catalog-profiles.schema.json +0 -0
  178. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/schemas/catalog-stacks.schema.json +0 -0
  179. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/schemas/mcp-lock.schema.json +0 -0
  180. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/schemas/org-pack.schema.json +0 -0
  181. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/schemas/pipeline-snapshot.schema.json +0 -0
  182. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/scripts/backfill-releases.sh +0 -0
  183. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/scripts/capture-sdlc-run.sh +0 -0
  184. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/scripts/check_cross_references.py +0 -0
  185. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/scripts/check_docs_consistency.py +0 -0
  186. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/scripts/check_mcp_pins.py +0 -0
  187. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/scripts/check_rule_sizes.py +0 -0
  188. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/scripts/check_skill_descriptions.py +0 -0
  189. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/scripts/gen_hooks.py +0 -0
  190. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/scripts/init.sh +0 -0
  191. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/_references/accessibility-checklist.md +0 -0
  192. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/_references/orchestration-patterns.md +0 -0
  193. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/_references/performance-checklist.md +0 -0
  194. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/_references/security-checklist.md +0 -0
  195. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/_references/testing-patterns.md +0 -0
  196. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/accessibility-review/SKILL.md +0 -0
  197. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/alembic-migrations/README.md +0 -0
  198. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/alembic-migrations/SKILL.md +0 -0
  199. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/alembic-migrations/references/alembic-setup-and-env.md +0 -0
  200. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/alembic-migrations/references/async-and-multitenant-migrations.md +0 -0
  201. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/alembic-migrations/references/repo-evidence.md +0 -0
  202. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/alembic-migrations/references/troubleshooting-and-debugging.md +0 -0
  203. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/alembic-migrations/references/writing-migrations.md +0 -0
  204. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/anthropic-vertex-integration/README.md +0 -0
  205. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/anthropic-vertex-integration/SKILL.md +0 -0
  206. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/anthropic-vertex-integration/references/generate-helpers-and-retry.md +0 -0
  207. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/anthropic-vertex-integration/references/repo-evidence.md +0 -0
  208. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/anthropic-vertex-integration/references/vertex-client-and-auth.md +0 -0
  209. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/api-integration/SKILL.md +0 -0
  210. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/api-pagination-filtering-sorting/README.md +0 -0
  211. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/api-pagination-filtering-sorting/SKILL.md +0 -0
  212. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/api-pagination-filtering-sorting/references/query-params-conventions.md +0 -0
  213. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/api-pagination-filtering-sorting/references/repo-evidence.md +0 -0
  214. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/api-pagination-filtering-sorting/references/response-metadata.md +0 -0
  215. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/archive-sprint/SKILL.md +0 -0
  216. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/async-python-patterns/README.md +0 -0
  217. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/async-python-patterns/SKILL.md +0 -0
  218. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/async-python-patterns/references/async-boundaries.md +0 -0
  219. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/async-python-patterns/references/lifecycle-and-gather.md +0 -0
  220. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/async-python-patterns/references/repo-evidence.md +0 -0
  221. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/auth-and-rbac/README.md +0 -0
  222. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/auth-and-rbac/references/auth-dependencies.md +0 -0
  223. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/auth-and-rbac/references/rbac-and-permissions.md +0 -0
  224. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/auth-and-rbac/references/repo-evidence.md +0 -0
  225. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/auth-and-rbac/references/security-hardening.md +0 -0
  226. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/auth-and-rbac/references/tokens-and-hashing.md +0 -0
  227. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/backend-repo-architecture/README.md +0 -0
  228. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/backend-repo-architecture/SKILL.md +0 -0
  229. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/backend-repo-architecture/references/deployment-patterns.md +0 -0
  230. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/backend-repo-architecture/references/entrypoint-and-config.md +0 -0
  231. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/backend-repo-architecture/references/repo-evidence.md +0 -0
  232. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/backend-repo-architecture/references/structure-patterns.md +0 -0
  233. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/backend-repo-architecture/references/troubleshooting.md +0 -0
  234. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/backlog/SKILL.md +0 -0
  235. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/backlog/item-template.md +0 -0
  236. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/browser-testing-with-devtools/SKILL.md +0 -0
  237. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/bug-hunt/SKILL.md +0 -0
  238. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/ci-cd-and-automation/SKILL.md +0 -0
  239. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/code-review-and-quality/SKILL.md +0 -0
  240. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/code-simplification/SKILL.md +0 -0
  241. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/component-design/SKILL.md +0 -0
  242. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/configargparse-yaml-env-layering/README.md +0 -0
  243. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/configargparse-yaml-env-layering/SKILL.md +0 -0
  244. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/configargparse-yaml-env-layering/references/config-layering-anatomy.md +0 -0
  245. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/configargparse-yaml-env-layering/references/mode-dispatch-and-precedence.md +0 -0
  246. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/configargparse-yaml-env-layering/references/repo-evidence.md +0 -0
  247. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/consolidate-learnings/SKILL.md +0 -0
  248. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/containerization-and-deployment/README.md +0 -0
  249. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/containerization-and-deployment/SKILL.md +0 -0
  250. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/containerization-and-deployment/references/deployment-and-secrets.md +0 -0
  251. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/containerization-and-deployment/references/dockerfile-and-compose.md +0 -0
  252. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/containerization-and-deployment/references/entrypoint-and-modes.md +0 -0
  253. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/containerization-and-deployment/references/kerberos-kinit-bootstrap.md +0 -0
  254. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/containerization-and-deployment/references/makefile-dev-workflow.md +0 -0
  255. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/containerization-and-deployment/references/repo-evidence.md +0 -0
  256. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/context-engineering/SKILL.md +0 -0
  257. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/cron-and-scheduled-jobs/README.md +0 -0
  258. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/cron-and-scheduled-jobs/SKILL.md +0 -0
  259. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/cron-and-scheduled-jobs/references/choosing-and-operations.md +0 -0
  260. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/cron-and-scheduled-jobs/references/kubernetes-cronjob.md +0 -0
  261. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/cron-and-scheduled-jobs/references/repo-evidence.md +0 -0
  262. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/cron-and-scheduled-jobs/references/temporal-schedules.md +0 -0
  263. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/data-engineering-bigquery-gcs/README.md +0 -0
  264. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/data-engineering-bigquery-gcs/SKILL.md +0 -0
  265. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/data-engineering-bigquery-gcs/references/bigquery-advanced-patterns.md +0 -0
  266. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/data-engineering-bigquery-gcs/references/bigquery-gcs-io.md +0 -0
  267. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/data-engineering-bigquery-gcs/references/medallion-architecture.md +0 -0
  268. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/data-engineering-bigquery-gcs/references/repo-evidence.md +0 -0
  269. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/data-engineering-bigquery-gcs/references/temp-table-merge-pattern.md +0 -0
  270. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/debugging-and-error-recovery/SKILL.md +0 -0
  271. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/decision/SKILL.md +0 -0
  272. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/decision/adr-template.md +0 -0
  273. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/dependency-verification/SKILL.md +0 -0
  274. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/deploy/SKILL.md +0 -0
  275. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/deprecation-and-migration/SKILL.md +0 -0
  276. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-patterns-and-conventions/README.md +0 -0
  277. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-patterns-and-conventions/SKILL.md +0 -0
  278. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-patterns-and-conventions/references/anti-patterns.md +0 -0
  279. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-patterns-and-conventions/references/naming-and-layout.md +0 -0
  280. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-patterns-and-conventions/references/patterns-catalog.md +0 -0
  281. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-patterns-and-conventions/references/repo-evidence.md +0 -0
  282. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-patterns-and-conventions/references/testing-patterns.md +0 -0
  283. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-patterns-and-conventions/references/troubleshooting.md +0 -0
  284. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-system-ops/README.md +0 -0
  285. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-system-ops/SKILL.md +0 -0
  286. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-system-ops/references/ai-readiness.md +0 -0
  287. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-system-ops/references/drift-detection.md +0 -0
  288. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-system-ops/references/governance-and-adoption.md +0 -0
  289. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-system-ops/references/system-health-and-maturity.md +0 -0
  290. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/design-system-ops/references/token-architecture.md +0 -0
  291. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/doc-consolidation/SKILL.md +0 -0
  292. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-compose/README.md +0 -0
  293. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-compose/SKILL.md +0 -0
  294. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-compose/references/compose-services-and-healthchecks.md +0 -0
  295. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-compose/references/compose-skeletons.md +0 -0
  296. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-compose/references/dev-vs-prod-variants.md +0 -0
  297. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-compose/references/repo-evidence.md +0 -0
  298. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-shared/README.md +0 -0
  299. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-shared/SKILL.md +0 -0
  300. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-shared/references/dockerignore-and-build-secrets.md +0 -0
  301. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-shared/references/repo-evidence.md +0 -0
  302. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-shared/references/shared-base-images.md +0 -0
  303. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/docker-shared/references/shared-compose-fragments.md +0 -0
  304. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/dockerfile-backend/README.md +0 -0
  305. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/dockerfile-backend/SKILL.md +0 -0
  306. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/dockerfile-backend/references/backend-dockerfile-anatomy.md +0 -0
  307. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/dockerfile-backend/references/repo-evidence.md +0 -0
  308. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/dockerfile-backend/references/system-deps-and-caching.md +0 -0
  309. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/dockerfile-frontend/README.md +0 -0
  310. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/dockerfile-frontend/SKILL.md +0 -0
  311. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/dockerfile-frontend/references/build-args-and-nginx.md +0 -0
  312. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/dockerfile-frontend/references/frontend-dockerfile-anatomy.md +0 -0
  313. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/dockerfile-frontend/references/repo-evidence.md +0 -0
  314. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/documentation-and-adrs/SKILL.md +0 -0
  315. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/doubt-driven-development/SKILL.md +0 -0
  316. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/edge-to-service-trust-boundary/README.md +0 -0
  317. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/edge-to-service-trust-boundary/SKILL.md +0 -0
  318. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/edge-to-service-trust-boundary/references/repo-evidence.md +0 -0
  319. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/edge-to-service-trust-boundary/references/trust-contract.md +0 -0
  320. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/execute/SKILL.md +0 -0
  321. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/fastapi-service-patterns/README.md +0 -0
  322. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/fastapi-service-patterns/SKILL.md +0 -0
  323. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/fastapi-service-patterns/references/api-versioning.md +0 -0
  324. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/fastapi-service-patterns/references/app-factory-and-lifespan.md +0 -0
  325. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/fastapi-service-patterns/references/custom-route-and-middleware.md +0 -0
  326. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/fastapi-service-patterns/references/dependency-injection.md +0 -0
  327. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/fastapi-service-patterns/references/model-and-serialization-patterns.md +0 -0
  328. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/fastapi-service-patterns/references/repo-evidence.md +0 -0
  329. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/file-export-and-reporting/README.md +0 -0
  330. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/file-export-and-reporting/SKILL.md +0 -0
  331. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/file-export-and-reporting/references/excel-generation.md +0 -0
  332. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/file-export-and-reporting/references/repo-evidence.md +0 -0
  333. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/file-export-and-reporting/references/streaming-and-downloads.md +0 -0
  334. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/frontend-repo-architecture/README.md +0 -0
  335. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/frontend-repo-architecture/SKILL.md +0 -0
  336. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/frontend-repo-architecture/references/api-layer-and-types.md +0 -0
  337. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/frontend-repo-architecture/references/divergences.md +0 -0
  338. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/frontend-repo-architecture/references/repo-evidence.md +0 -0
  339. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/frontend-repo-architecture/references/structure-and-state.md +0 -0
  340. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/frontend-repo-architecture/references/testing-patterns.md +0 -0
  341. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/frontend-ui-engineering/SKILL.md +0 -0
  342. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/gcp-cloud-run-github-actions/README.md +0 -0
  343. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/gcp-cloud-run-github-actions/SKILL.md +0 -0
  344. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/gcp-cloud-run-github-actions/references/cloud-run-deploy.md +0 -0
  345. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/gcp-cloud-run-github-actions/references/repo-evidence.md +0 -0
  346. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/gcp-cloud-run-github-actions/references/workflow-structure.md +0 -0
  347. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/gcs-file-storage-patterns/README.md +0 -0
  348. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/gcs-file-storage-patterns/references/client-and-uploads.md +0 -0
  349. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/gcs-file-storage-patterns/references/repo-evidence.md +0 -0
  350. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/gcs-file-storage-patterns/references/signed-urls-and-reads.md +0 -0
  351. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/git-workflow-and-versioning/SKILL.md +0 -0
  352. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/grafana-dashboards-and-alerts/README.md +0 -0
  353. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/grafana-dashboards-and-alerts/SKILL.md +0 -0
  354. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/grafana-dashboards-and-alerts/references/dashboard-json-and-templating.md +0 -0
  355. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/grafana-dashboards-and-alerts/references/provisioning-and-organization.md +0 -0
  356. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/grafana-dashboards-and-alerts/references/red-dashboard-skeleton.md +0 -0
  357. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/grafana-dashboards-and-alerts/references/red-metrics-queries.md +0 -0
  358. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/grafana-dashboards-and-alerts/references/repo-evidence.md +0 -0
  359. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/grafana-dashboards-and-alerts/references/unified-alerting.md +0 -0
  360. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/graphql-patterns/README.md +0 -0
  361. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/graphql-patterns/SKILL.md +0 -0
  362. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/graphql-patterns/references/apollo-client-frontend.md +0 -0
  363. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/graphql-patterns/references/apollo-client-setup.md +0 -0
  364. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/graphql-patterns/references/repo-evidence.md +0 -0
  365. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/graphql-patterns/references/strawberry-backend.md +0 -0
  366. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/graphql-patterns/references/when-to-use-graphql.md +0 -0
  367. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/idea-refine/SKILL.md +0 -0
  368. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/idea-refine/examples.md +0 -0
  369. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/idea-refine/frameworks.md +0 -0
  370. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/idea-refine/refinement-criteria.md +0 -0
  371. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/idea-refine/scripts/idea-refine.sh +0 -0
  372. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/incident-postmortem/SKILL.md +0 -0
  373. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/incremental-implementation/SKILL.md +0 -0
  374. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/interview-me/SKILL.md +0 -0
  375. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kafka-config-driven/README.md +0 -0
  376. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kafka-config-driven/references/config-and-sasl-kerberos.md +0 -0
  377. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kafka-config-driven/references/consumer-producer-patterns.md +0 -0
  378. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kafka-config-driven/references/repo-evidence.md +0 -0
  379. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kafka-config-driven/references/troubleshooting-and-patterns.md +0 -0
  380. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubectl-operations/README.md +0 -0
  381. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubectl-operations/SKILL.md +0 -0
  382. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubectl-operations/references/command-reference.md +0 -0
  383. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubectl-operations/references/context-namespace-rbac.md +0 -0
  384. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubectl-operations/references/debugging-playbooks.md +0 -0
  385. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubectl-operations/references/output-formats-and-selectors.md +0 -0
  386. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubectl-operations/references/repo-evidence.md +0 -0
  387. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubernetes-workload-hardening/README.md +0 -0
  388. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubernetes-workload-hardening/SKILL.md +0 -0
  389. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubernetes-workload-hardening/references/networkpolicy-and-rbac.md +0 -0
  390. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubernetes-workload-hardening/references/repo-evidence.md +0 -0
  391. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/kubernetes-workload-hardening/references/securitycontext-and-podsecurity.md +0 -0
  392. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/langfuse-llm-tracing/README.md +0 -0
  393. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/langfuse-llm-tracing/SKILL.md +0 -0
  394. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/langfuse-llm-tracing/references/langfuse-client-and-tracing.md +0 -0
  395. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/langfuse-llm-tracing/references/python-and-typescript.md +0 -0
  396. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/langfuse-llm-tracing/references/repo-evidence.md +0 -0
  397. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/library-review/SKILL.md +0 -0
  398. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/load-testing/SKILL.md +0 -0
  399. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/manual-test/SKILL.md +0 -0
  400. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/modernization-and-migration/README.md +0 -0
  401. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/modernization-and-migration/SKILL.md +0 -0
  402. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/modernization-and-migration/references/migration-best-practices.md +0 -0
  403. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/modernization-and-migration/references/pydantic-v1-to-v2.md +0 -0
  404. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/modernization-and-migration/references/repo-evidence.md +0 -0
  405. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/modernization-and-migration/references/shared-internal-library.md +0 -0
  406. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/modernization-and-migration/references/sqlalchemy-14-to-20.md +0 -0
  407. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/multi-tenancy-patterns/README.md +0 -0
  408. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/multi-tenancy-patterns/SKILL.md +0 -0
  409. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/multi-tenancy-patterns/references/caching-patterns.md +0 -0
  410. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/multi-tenancy-patterns/references/isolation-strategies.md +0 -0
  411. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/multi-tenancy-patterns/references/repo-evidence.md +0 -0
  412. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/multi-tenancy-patterns/references/tenant-resolution.md +0 -0
  413. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/node-express-service/README.md +0 -0
  414. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/node-express-service/SKILL.md +0 -0
  415. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/node-express-service/references/app-factory-and-mode-dispatch.md +0 -0
  416. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/node-express-service/references/config-and-module-alias.md +0 -0
  417. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/node-express-service/references/middleware-patterns.md +0 -0
  418. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/node-express-service/references/repo-evidence.md +0 -0
  419. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/node-objection-knex/README.md +0 -0
  420. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/node-objection-knex/SKILL.md +0 -0
  421. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/node-objection-knex/references/migrations-and-validation.md +0 -0
  422. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/node-objection-knex/references/objection-model-and-knex.md +0 -0
  423. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/node-objection-knex/references/repo-evidence.md +0 -0
  424. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/notifications-and-messaging/README.md +0 -0
  425. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/notifications-and-messaging/SKILL.md +0 -0
  426. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/notifications-and-messaging/references/provider-abstraction.md +0 -0
  427. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/notifications-and-messaging/references/repo-evidence.md +0 -0
  428. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/notifications-and-messaging/references/templates-and-fallback.md +0 -0
  429. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/observability-and-logging/README.md +0 -0
  430. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/observability-and-logging/SKILL.md +0 -0
  431. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/observability-and-logging/references/health-and-readiness.md +0 -0
  432. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/observability-and-logging/references/logging-and-structlog.md +0 -0
  433. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/observability-and-logging/references/outbound-metrics-and-multi-mode.md +0 -0
  434. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/observability-and-logging/references/pii-redaction.md +0 -0
  435. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/observability-and-logging/references/repo-evidence.md +0 -0
  436. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/observability-and-logging/references/tracing-and-metrics.md +0 -0
  437. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/otel-tracing/README.md +0 -0
  438. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/otel-tracing/SKILL.md +0 -0
  439. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/otel-tracing/references/collector.md +0 -0
  440. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/otel-tracing/references/correlation.md +0 -0
  441. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/otel-tracing/references/gotchas.md +0 -0
  442. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/otel-tracing/references/instrumentation.md +0 -0
  443. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/otel-tracing/references/sampling.md +0 -0
  444. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/otel-tracing/references/tempo.md +0 -0
  445. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/over-engineering-review/SKILL.md +0 -0
  446. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/performance-optimization/SKILL.md +0 -0
  447. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/planning-and-task-breakdown/SKILL.md +0 -0
  448. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/playwright-verification/SKILL.md +0 -0
  449. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/pydantic-schema-patterns/README.md +0 -0
  450. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/pydantic-schema-patterns/SKILL.md +0 -0
  451. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/pydantic-schema-patterns/references/repo-evidence.md +0 -0
  452. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/pydantic-schema-patterns/references/settings-and-validation.md +0 -0
  453. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/pydantic-schema-patterns/references/troubleshooting-and-common-errors.md +0 -0
  454. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/pydantic-schema-patterns/references/v1-vs-v2.md +0 -0
  455. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/python-dao-and-database/README.md +0 -0
  456. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/python-dao-and-database/references/advanced-query-patterns.md +0 -0
  457. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/python-dao-and-database/references/basedao-and-sessions.md +0 -0
  458. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/python-dao-and-database/references/mongodb-advanced.md +0 -0
  459. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/python-dao-and-database/references/other-db-mongodb.md +0 -0
  460. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/python-dao-and-database/references/repo-evidence.md +0 -0
  461. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/python-dao-and-database/references/sqlalchemy-1x-vs-2x.md +0 -0
  462. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/radix-tailwind-component-patterns/README.md +0 -0
  463. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/radix-tailwind-component-patterns/SKILL.md +0 -0
  464. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/radix-tailwind-component-patterns/references/radix-primitives-and-variants.md +0 -0
  465. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/radix-tailwind-component-patterns/references/repo-evidence.md +0 -0
  466. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/radix-tailwind-component-patterns/references/tailwind-theme-and-cn.md +0 -0
  467. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/react-hook-form-zod-patterns/README.md +0 -0
  468. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/react-hook-form-zod-patterns/SKILL.md +0 -0
  469. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/react-hook-form-zod-patterns/references/form-setup-and-zod.md +0 -0
  470. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/react-hook-form-zod-patterns/references/multi-step-and-modes.md +0 -0
  471. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/react-hook-form-zod-patterns/references/repo-evidence.md +0 -0
  472. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/redis-caching-patterns/README.md +0 -0
  473. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/redis-caching-patterns/references/cache-manager-and-fallback.md +0 -0
  474. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/redis-caching-patterns/references/namespacing-and-invalidation.md +0 -0
  475. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/redis-caching-patterns/references/repo-evidence.md +0 -0
  476. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/refresh-docs/SKILL.md +0 -0
  477. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/remember/SKILL.md +0 -0
  478. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/safety-critical-patterns/SKILL.md +0 -0
  479. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/scope/SKILL.md +0 -0
  480. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/scope/scope-template.md +0 -0
  481. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/sdlc/SKILL.md +0 -0
  482. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/security-and-hardening/SKILL.md +0 -0
  483. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/security-and-hardening/references/input-validation-and-uploads.md +0 -0
  484. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/security-and-hardening/references/llm-guardrails.md +0 -0
  485. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/security-and-hardening/references/owasp-top10-prevention.md +0 -0
  486. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/security-and-hardening/references/supply-chain-and-dependencies.md +0 -0
  487. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/security-verification/SKILL.md +0 -0
  488. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/shannon-ai-pentest/README.md +0 -0
  489. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/shannon-ai-pentest/SKILL.md +0 -0
  490. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/shannon-ai-pentest/references/operating-guide.md +0 -0
  491. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/shell-review/SKILL.md +0 -0
  492. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/shipping-and-launch/SKILL.md +0 -0
  493. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/simplification-debt/SKILL.md +0 -0
  494. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/smoke-test/SKILL.md +0 -0
  495. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/source-driven-development/SKILL.md +0 -0
  496. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/spec-driven-development/SKILL.md +0 -0
  497. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/sprint/SKILL.md +0 -0
  498. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/sprint/sprint-template.md +0 -0
  499. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/tanstack-react-query-patterns/README.md +0 -0
  500. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/tanstack-react-query-patterns/SKILL.md +0 -0
  501. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/tanstack-react-query-patterns/references/mutations-and-cache.md +0 -0
  502. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/tanstack-react-query-patterns/references/query-keys-and-hooks.md +0 -0
  503. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/tanstack-react-query-patterns/references/repo-evidence.md +0 -0
  504. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/task-tracker-sync/SKILL.md +0 -0
  505. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-config-driven/README.md +0 -0
  506. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-config-driven/SKILL.md +0 -0
  507. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-config-driven/references/config-and-retry-idempotency.md +0 -0
  508. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-config-driven/references/dag-dsl-interpreter.md +0 -0
  509. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-config-driven/references/repo-evidence.md +0 -0
  510. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-config-driven/references/schedule-registration.md +0 -0
  511. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-config-driven/references/schedules-and-cron.md +0 -0
  512. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-config-driven/references/worker-workflow-activity-patterns.md +0 -0
  513. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-developer/README.md +0 -0
  514. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-developer/SKILL.md +0 -0
  515. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-developer/references/cli.md +0 -0
  516. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-developer/references/determinism.md +0 -0
  517. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-developer/references/gotchas.md +0 -0
  518. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-developer/references/languages.md +0 -0
  519. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-developer/references/testing.md +0 -0
  520. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/temporal-developer/references/versioning.md +0 -0
  521. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/test-driven-development/SKILL.md +0 -0
  522. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/test-plan-review/SKILL.md +0 -0
  523. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/testing-conventions/README.md +0 -0
  524. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/testing-conventions/SKILL.md +0 -0
  525. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/testing-conventions/references/async-and-mocking.md +0 -0
  526. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/testing-conventions/references/coverage-gap-and-recommendations.md +0 -0
  527. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/testing-conventions/references/github-actions-test-orchestration.md +0 -0
  528. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/testing-conventions/references/pytest-and-fixtures.md +0 -0
  529. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/testing-conventions/references/pytest-asyncio-modes.md +0 -0
  530. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/testing-conventions/references/repo-evidence.md +0 -0
  531. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/testing-conventions/references/security-regression-tests.md +0 -0
  532. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/testing-conventions/references/vitest-frontend-testing.md +0 -0
  533. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/threat-model/SKILL.md +0 -0
  534. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/triage/SKILL.md +0 -0
  535. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/ui-ux-design/SKILL.md +0 -0
  536. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/unit-test/SKILL.md +0 -0
  537. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/using-agent-skills/SKILL.md +0 -0
  538. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/vitest-rtl-msw-patterns/README.md +0 -0
  539. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/vitest-rtl-msw-patterns/SKILL.md +0 -0
  540. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/vitest-rtl-msw-patterns/references/msw-and-contract-tests.md +0 -0
  541. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/vitest-rtl-msw-patterns/references/repo-evidence.md +0 -0
  542. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/vitest-rtl-msw-patterns/references/vitest-rtl-setup.md +0 -0
  543. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/zap-vapt-scanning/README.md +0 -0
  544. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/zap-vapt-scanning/SKILL.md +0 -0
  545. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/zap-vapt-scanning/references/operating-guide.md +0 -0
  546. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/zap-vapt-scanning/scripts/endpoints.example.txt +0 -0
  547. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/zap-vapt-scanning/scripts/requirements.txt +0 -0
  548. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/zap-vapt-scanning/scripts/zap_vapt.py +0 -0
  549. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/zustand-state-patterns/README.md +0 -0
  550. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/zustand-state-patterns/SKILL.md +0 -0
  551. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/zustand-state-patterns/references/async-polling-and-persistence.md +0 -0
  552. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/zustand-state-patterns/references/repo-evidence.md +0 -0
  553. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/skills/zustand-state-patterns/references/store-structure-and-selectors.md +0 -0
  554. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/__main__.py +0 -0
  555. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/catalog.py +0 -0
  556. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/cli.py +0 -0
  557. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/detect.py +0 -0
  558. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/export.py +0 -0
  559. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/hooks.py +0 -0
  560. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/models.py +0 -0
  561. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/pipeline.py +0 -0
  562. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/prompts.py +0 -0
  563. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/render.py +0 -0
  564. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/report.py +0 -0
  565. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/scaffold.py +0 -0
  566. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/schemas.py +0 -0
  567. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/upgrader.py +0 -0
  568. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/src/claude_kit/validator.py +0 -0
  569. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/CLAUDE.md +0 -0
  570. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/CLAUDE.stack.md.tmpl +0 -0
  571. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/CONTINUITY.template.md +0 -0
  572. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/README.claude-sdlc.md.tmpl +0 -0
  573. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/agent-memory/MEMORY.md +0 -0
  574. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/agent-memory/api/.gitkeep +0 -0
  575. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/agent-memory/architecture/.gitkeep +0 -0
  576. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/agent-memory/debugging/.gitkeep +0 -0
  577. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/agent-memory/gotchas/.gitkeep +0 -0
  578. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/agent-memory/patterns/.gitkeep +0 -0
  579. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/agent-memory/performance/.gitkeep +0 -0
  580. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/artifacts/adr.md +0 -0
  581. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/artifacts/api-change-report.md +0 -0
  582. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/artifacts/change-proposal.md +0 -0
  583. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/artifacts/feature-spec.md +0 -0
  584. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/artifacts/release-plan.md +0 -0
  585. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/artifacts/runbook.md +0 -0
  586. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/artifacts/security-review.md +0 -0
  587. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/artifacts/test-plan.md +0 -0
  588. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/export/sdlc-workflow-guide.md.tmpl +0 -0
  589. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/README.md +0 -0
  590. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/agents/data-workflow-agent.md +0 -0
  591. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/agents/founder-prototype-agent.md +0 -0
  592. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/agents/internal-tools-builder.md +0 -0
  593. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/agents/pm-copilot.md +0 -0
  594. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/agents/staff-pm-reviewer.md +0 -0
  595. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/agents/support-ticket-engineer.md +0 -0
  596. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/devops-and-release/README.md +0 -0
  597. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/devops-and-release/pack.yaml +0 -0
  598. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/engineering-core/README.md +0 -0
  599. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/engineering-core/pack.yaml +0 -0
  600. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/non-engineer-builder/README.md +0 -0
  601. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/non-engineer-builder/pack.yaml +0 -0
  602. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/onboarding-and-docs/README.md +0 -0
  603. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/onboarding-and-docs/pack.yaml +0 -0
  604. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/product-to-code/README.md +0 -0
  605. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/product-to-code/pack.yaml +0 -0
  606. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/quality-and-review/README.md +0 -0
  607. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/quality-and-review/pack.yaml +0 -0
  608. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/security-and-compliance/README.md +0 -0
  609. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/packs/security-and-compliance/pack.yaml +0 -0
  610. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/rules/ai-working-agreement.md +0 -0
  611. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/rules/ambiguity-resolution.md +0 -0
  612. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/rules/branch-and-pr-policy.md +0 -0
  613. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/rules/compliance-policy.md +0 -0
  614. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/rules/non-engineer-safe-coding.md +0 -0
  615. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/rules/pii-policy.md +0 -0
  616. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/rules/production-data-policy.md +0 -0
  617. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/rules/prompt-to-task-conversion.md +0 -0
  618. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/rules/prototype-boundaries.md +0 -0
  619. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/rules/secrets-policy.md +0 -0
  620. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/skills/customer-issue-to-fix/SKILL.md +0 -0
  621. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/skills/feature-from-idea/SKILL.md +0 -0
  622. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/skills/prompt-to-safe-task/SKILL.md +0 -0
  623. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/skills/prototype-to-production/SKILL.md +0 -0
  624. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/skills/repo-onboarding/SKILL.md +0 -0
  625. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/skills/review-scope/SKILL.md +0 -0
  626. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/skills/review-sprint/SKILL.md +0 -0
  627. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/skills/review-sprint-plan/SKILL.md +0 -0
  628. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/org/skills/review-ux-flow/SKILL.md +0 -0
  629. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/scripts/sdlc-loop.sh +0 -0
  630. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/settings.json +0 -0
  631. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/backend/go/net-http/rules/go-patterns.md +0 -0
  632. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/backend/python/fastapi/rules/fastapi-patterns.md +0 -0
  633. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/db/mongodb/agents/migration-specialist.md +0 -0
  634. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/db/mongodb/agents/mongodb-specialist.md +0 -0
  635. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/db/mongodb/rules/mongodb-patterns.md +0 -0
  636. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/db/postgres/agents/db-performance-reviewer.md +0 -0
  637. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/db/postgres/agents/migration-specialist.md +0 -0
  638. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/db/postgres/agents/postgres-specialist.md +0 -0
  639. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/db/postgres/rules/database-performance.md +0 -0
  640. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/db/postgres/rules/postgres-patterns.md +0 -0
  641. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/frontend/react/rules/design-system-compliance.md +0 -0
  642. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/frontend/react/rules/mobile-design-guidelines.md +0 -0
  643. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/frontend/react/rules/react-patterns.md +0 -0
  644. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/frontend/react/rules/ui-components.md +0 -0
  645. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/frontend/react/rules/ui-design-system.md +0 -0
  646. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/frontend/react/rules/ui-layout-and-motion.md +0 -0
  647. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/frontend/react/rules/ux-dashboard-patterns.md +0 -0
  648. {claude_code_kit-0.66.0 → claude_code_kit-0.67.0}/templates/stacks/frontend/react/rules/ux-patterns.md +0 -0
@@ -10,7 +10,7 @@
10
10
  "name": "claude-kit",
11
11
  "source": "./",
12
12
  "description": "Cookiecutter-style scaffolder for an autonomous Claude Code SDLC config (no app code, no Docker): install CLAUDE.md + .claude/ (rules, the profile's agents/skills, hooks, artifact templates) + optional .mcp.json, then run /sdlc to drive spec → review → build → test → security → ship through profile-aware quality gates, working memory, and a self-improving learnings loop.",
13
- "version": "0.66.0",
13
+ "version": "0.67.0",
14
14
  "license": "MIT",
15
15
  "keywords": ["sdlc", "agents", "orchestration", "quality-gates", "workflow", "scaffold", "cookiecutter"]
16
16
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-kit",
3
- "version": "0.66.0",
3
+ "version": "0.67.0",
4
4
  "description": "Cookiecutter-style scaffolder for an autonomous Claude Code SDLC config (no app code, no Docker). `claude-kit init` asks ordered questions and installs CLAUDE.md + .claude/ (rules, the profile's agents/skills, hooks, artifact templates) + optional .mcp.json; run /sdlc to drive spec → review → build → test → security → ship through profile-aware quality gates with working memory and a self-improving learnings loop.",
5
5
  "author": {
6
6
  "name": "Arjunsingh Yadav",
@@ -4,6 +4,88 @@ All notable changes to claude-kit are documented here. The format follows
4
4
  [Keep a Changelog](https://keepachangelog.com/), and the project uses
5
5
  [semantic versioning](https://semver.org/).
6
6
 
7
+ ## [0.67.0] — 2026-07-24
8
+
9
+ **System-design absorption pass from
10
+ [Technical-Engineering-Articles](https://github.com/harshit3011/Technical-Engineering-Articles)
11
+ (user-named source; MIT list-repo indexing 46 public X threads by
12
+ [@Harry_The_Nerd](https://x.com/Harry_The_Nerd) — thread content © the author; ideas absorbed in
13
+ our own words, zero verbatim text, attribution in every digest and `docs/influences.md`).**
14
+ All 46 threads fetched (logged-out browser render, no login walls); a 92-agent digest→verify
15
+ pipeline classified 614 candidate patterns against the live kit (236 absent / 159 partial /
16
+ 170 covered / 49 not-absorbable) with a 3-claim fidelity spot-check per digest (46/46 passed 3/3),
17
+ then a global adversarial refute deduplicated the composite-app repeats and enforced the caps:
18
+ **exactly 2 new skills, exactly 6 extensions, everything else digest-only.**
19
+
20
+ ### Added
21
+ - **`system-design-patterns` collection skill** — system-scale building blocks: back-of-envelope
22
+ estimation & read/write asymmetry, rate-limiting algorithms, load balancing, CDN/edge, the
23
+ caching hierarchy (L1/L2/L3, precompute, selective), URL shortening & unique-ID generation,
24
+ notification and news-feed fan-out, autocomplete/typeahead, chat/real-time sync, data-modeling
25
+ building blocks (metadata/blob split, expiring holds, calendar inventory), microservice boundary
26
+ criteria (four-part acceptance test, distributed-monolith diagnostic, Conway's Law), and a
27
+ composite-application pattern map. 24 attributed `htn-` digests in `references/`.
28
+ - **`distributed-systems-patterns` collection skill** — distributing state: consistent hashing,
29
+ partitioning/sharding (and the cache → replicas → shard-last ladder), replication & quorum
30
+ (N/W/R), distributed KV-store anatomy (hinted handoff, read repair, anti-entropy, vector
31
+ clocks), distributed cache design, failure detection/gossip, and B-tree vs LSM storage engines.
32
+ CAP/PACELC and clocks stay cross-linked to the always-loaded `resilience-engineering` rule —
33
+ never duplicated. 6 attributed `htn-` digests in `references/`.
34
+ - **[`docs/system-design-threads.md`](docs/system-design-threads.md)** — the 46-row coverage map:
35
+ every thread's fetch status, digest location, and kit outcome (including the 3 deliberately
36
+ not absorbed).
37
+ - **Six capped SKILL.md extensions** (each independently gap-verified against the live kit):
38
+ - `gcs-file-storage-patterns` — *Direct-to-storage uploads (presigned PUT)*: seven independent
39
+ designs converge on client → presigned PUT → bucket with async post-processing; the skill's
40
+ existing examples routed upload bytes through the API tier.
41
+ - `redis-caching-patterns` — *Beyond-cache Redis*: purpose-fit native structures, MULTI/EXEC +
42
+ WATCH + Lua atomicity, eviction-policy selection (LRU vs LFU), RDB/AOF persistence trade-offs.
43
+ - `kafka-config-driven` — *Event-backbone design*: partition-key choice as the ordering
44
+ contract, handler-level DLQ + replay (building on the skill's pinned no-consumer-layer-DLQ
45
+ convention), saga orchestration with compensating actions.
46
+ - `python-dao-and-database` — *Concurrency control*: optimistic locking (version column),
47
+ MVCC as the mental model, deadlock discipline (lock ordering, timeouts, retry-the-victim);
48
+ cross-references the existing isolation-level reference instead of duplicating it.
49
+ - `api-and-interface-design` — *HTTP caching & payload efficiency*: Cache-Control vocabulary,
50
+ ETag/If-None-Match conditional requests, Retry-After, compression negotiation, sparse
51
+ fieldsets (previously zero hits for any of these across the kit).
52
+ - `auth-and-rbac` — *Choosing an authorization model & OAuth 2.0 delegation*: RBAC vs ABAC vs
53
+ ACL as a decision with migration signals, and authorization-code delegation (PKCE, what to
54
+ store) distinct from the skill's existing in-app JWT/session mechanics.
55
+ - **13 further digests** filed in the `references/` of already-covering skills with zero SKILL.md
56
+ changes (`design-patterns-and-conventions` ×3, `auth-and-rbac` ×2, `api-and-interface-design`
57
+ ×2, plus `performance-optimization`, `observability-and-logging`, `async-python-patterns`, and
58
+ the extension digests above), preserving the covered-vs-extended distinction.
59
+
60
+ ### Changed
61
+ - `rules/design-patterns.md` gains a two-line pointer to the two new skills (the only
62
+ always-loaded touch; reaches `technical-architect`, which mandatory-reads that rule).
63
+ - Count anchors: **107 skills (57 core + 50 stack-collection)** in `README.md`,
64
+ `docs/stack-skills/README.md` (+2 catalog rows), and `docs/skill-audit.md`.
65
+ - `docs/skill-audit.md` also corrects **pre-existing count drift** (it still said
66
+ 104 = 56 + 48 while the tree held 105 = 57 + 48 since 0.58.x) — deliberate drift correction,
67
+ with the dated 2026-07 lane-mapping measurement left intact as a historical record.
68
+
69
+ ### Not adopted (deliberately)
70
+ - **AWS SAA-C03 exam thread** — cloud-certification prep; no SDLC substance for a stack-agnostic
71
+ configuration kit. Coverage-map row only.
72
+ - **Claude CCA-F exam thread** — exam prep; the platform facts it teaches (model tiers, batch
73
+ API, context discipline) are already covered by `anthropic-vertex-integration`,
74
+ `model-tiers`, and `context-engineering`. Coverage-map row only.
75
+ - **Writing-advice thread** — personal craft guidance, out of kit scope. Coverage-map row only.
76
+ - **A third new skill** (e.g. "search & discovery" or "marketplace patterns") — the remaining
77
+ absent patterns (geo/proximity, layered search funnels, escrow payouts, double-blind reviews)
78
+ are carried by the composite-app digests and pattern map; a skill each would dilute
79
+ auto-selection for content that arises only inside those composites.
80
+ - **57 of the 63 proposed extensions** — killed by the global refute to honor the ≤6 cap; every
81
+ kill either deduplicated a composite-app repeat (absorbed once into the new skills), landed as
82
+ digest-only references (CORS mechanics, State-pattern LLD, GIL threads-vs-processes,
83
+ notification delivery-log, engine-sympathetic JavaScript, batch-API/temporal-anchoring), or
84
+ would have duplicated the always-loaded `resilience-engineering` rule (backpressure, CAP,
85
+ retries — already covered there).
86
+ - **Raw thread captures** — never committed; the gitignored harvest scratch is deleted before
87
+ commit and digests carry a structural fidelity check instead of quotes.
88
+
7
89
  ## [0.66.0] — 2026-07-23
8
90
 
9
91
  **Memory-subsystem absorption pass from [basic-memory](https://github.com/basicmachines-co/basic-memory)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-code-kit
3
- Version: 0.66.0
3
+ Version: 0.67.0
4
4
  Summary: Cookiecutter-style scaffolder for an autonomous Claude Code SDLC configuration (no app code, no Docker). Asks ordered questions and installs CLAUDE.md + .claude/ (rules, the chosen profile's agents/skills, hooks, artifact templates) + optional .mcp.json; run /sdlc to drive spec → review → build → test → security → ship through profile-aware quality gates, working memory, and a self-improving learnings loop.
5
5
  Project-URL: Homepage, https://github.com/ajyadav013/claude-kit
6
6
  Project-URL: Repository, https://github.com/ajyadav013/claude-kit
@@ -146,7 +146,7 @@ claude-kit init --defaults # non-interactive: React + Python/FastAPI + Post
146
146
  |------|--------------|
147
147
  | 🔁 **Pipeline & quality gates** | Gate-enforced progression — a phase advances only with zero open Critical/High/Medium findings — plus a fast-track for small changes and an anti-sycophancy `devils-advocate` pass |
148
148
  | 🤖 **Agent roster** | **28** tiered agents led by an Orchestrator that never writes code, plus per-database overlay agents and 6 org personas ([full roster](docs/agents.md)) |
149
- | 📐 **Rules & skills** | **25** stack-agnostic core rules + **105** context-activated skills (57 core + 48 stack-collection), pulled into context on demand |
149
+ | 📐 **Rules & skills** | **25** stack-agnostic core rules + **107** context-activated skills (57 core + 50 stack-collection), pulled into context on demand |
150
150
  | 🧱 **Stacks & overlays** | A stack-agnostic core + **13** overlay rule files (React · FastAPI · Go · Postgres · Mongo) wired to your exact commands and path-scoped to load only when you touch matching files |
151
151
  | 🛠️ **Hooks & guards** | **18** event hooks — deterministic safety guards and advisory warnings — that no-op gracefully without `jq` |
152
152
  | 📦 **Distribution & lifecycle** | Plugin **and** pip from one source, **24** ready MCP fragments (version-pinned), edit-preserving `upgrade`, and a root `AGENTS.md` at init so non-Claude agents share the same standards |
@@ -225,7 +225,7 @@ PostgreSQL project, individual scope:
225
225
  |---------|-------:|-------:|------:|
226
226
  | `lean` | 8 | 15 | 36 |
227
227
  | `standard` (default) | 26 | 43 | 36 |
228
- | `enterprise` | 31 | 105 | 36 |
228
+ | `enterprise` | 31 | 107 | 36 |
229
229
 
230
230
  - **Rules are profile-independent** — every profile installs the same 25 core rules + the selected
231
231
  stack's overlays (11 for this stack = 36); rigor changes the *agents and gates*, not the rule set.
@@ -251,7 +251,7 @@ that matters most: **native gives you the agents; claude-kit gives you the gover
251
251
  | **[wshobson/agents](https://github.com/wshobson/agents)** & similar collections | Large libraries of individual subagent prompts you pick from | A smaller, opinionated set wired into a sequenced pipeline — agents are stages that hand off and block on each other, not a menu |
252
252
  | **[GitHub spec-kit](https://github.com/github/spec-kit)** | Spec-driven development as a platform: constitution → spec → tasks → analyze, plus label-driven CI stages | The same coverage-gate idea absorbed into a broader in-session lifecycle — review, security, build, test, release, and observability gates with enforced severity blocking. Complementary: their CI stages, this kit's gate depth ([details](docs/autonomous-operation.md)) |
253
253
  | **claude-flow / multi-agent runtimes** | Runtime orchestrators that *execute* swarms of agents | Portable configuration, not a running process — no daemon, no lock-in, no app code |
254
- | **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | A catalog-driven generator: resolves your stack/profile/scope into the right subset of 25 rules, 28 agents, 105 skills, gates, and hooks — kept upgradeable with your edits preserved |
254
+ | **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | A catalog-driven generator: resolves your stack/profile/scope into the right subset of 25 rules, 28 agents, 107 skills, gates, and hooks — kept upgradeable with your edits preserved |
255
255
 
256
256
  **Choose claude-kit when** you want a consistent, gate-enforced autonomous-SDLC setup that's the
257
257
  same across every repo and stack, installs in seconds, and ships nothing you have to run. It is
@@ -113,7 +113,7 @@ claude-kit init --defaults # non-interactive: React + Python/FastAPI + Post
113
113
  |------|--------------|
114
114
  | 🔁 **Pipeline & quality gates** | Gate-enforced progression — a phase advances only with zero open Critical/High/Medium findings — plus a fast-track for small changes and an anti-sycophancy `devils-advocate` pass |
115
115
  | 🤖 **Agent roster** | **28** tiered agents led by an Orchestrator that never writes code, plus per-database overlay agents and 6 org personas ([full roster](docs/agents.md)) |
116
- | 📐 **Rules & skills** | **25** stack-agnostic core rules + **105** context-activated skills (57 core + 48 stack-collection), pulled into context on demand |
116
+ | 📐 **Rules & skills** | **25** stack-agnostic core rules + **107** context-activated skills (57 core + 50 stack-collection), pulled into context on demand |
117
117
  | 🧱 **Stacks & overlays** | A stack-agnostic core + **13** overlay rule files (React · FastAPI · Go · Postgres · Mongo) wired to your exact commands and path-scoped to load only when you touch matching files |
118
118
  | 🛠️ **Hooks & guards** | **18** event hooks — deterministic safety guards and advisory warnings — that no-op gracefully without `jq` |
119
119
  | 📦 **Distribution & lifecycle** | Plugin **and** pip from one source, **24** ready MCP fragments (version-pinned), edit-preserving `upgrade`, and a root `AGENTS.md` at init so non-Claude agents share the same standards |
@@ -192,7 +192,7 @@ PostgreSQL project, individual scope:
192
192
  |---------|-------:|-------:|------:|
193
193
  | `lean` | 8 | 15 | 36 |
194
194
  | `standard` (default) | 26 | 43 | 36 |
195
- | `enterprise` | 31 | 105 | 36 |
195
+ | `enterprise` | 31 | 107 | 36 |
196
196
 
197
197
  - **Rules are profile-independent** — every profile installs the same 25 core rules + the selected
198
198
  stack's overlays (11 for this stack = 36); rigor changes the *agents and gates*, not the rule set.
@@ -218,7 +218,7 @@ that matters most: **native gives you the agents; claude-kit gives you the gover
218
218
  | **[wshobson/agents](https://github.com/wshobson/agents)** & similar collections | Large libraries of individual subagent prompts you pick from | A smaller, opinionated set wired into a sequenced pipeline — agents are stages that hand off and block on each other, not a menu |
219
219
  | **[GitHub spec-kit](https://github.com/github/spec-kit)** | Spec-driven development as a platform: constitution → spec → tasks → analyze, plus label-driven CI stages | The same coverage-gate idea absorbed into a broader in-session lifecycle — review, security, build, test, release, and observability gates with enforced severity blocking. Complementary: their CI stages, this kit's gate depth ([details](docs/autonomous-operation.md)) |
220
220
  | **claude-flow / multi-agent runtimes** | Runtime orchestrators that *execute* swarms of agents | Portable configuration, not a running process — no daemon, no lock-in, no app code |
221
- | **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | A catalog-driven generator: resolves your stack/profile/scope into the right subset of 25 rules, 28 agents, 105 skills, gates, and hooks — kept upgradeable with your edits preserved |
221
+ | **dotfiles / `CLAUDE.md` starters** | A single rules file or settings snippet | A catalog-driven generator: resolves your stack/profile/scope into the right subset of 25 rules, 28 agents, 107 skills, gates, and hooks — kept upgradeable with your edits preserved |
222
222
 
223
223
  **Choose claude-kit when** you want a consistent, gate-enforced autonomous-SDLC setup that's the
224
224
  same across every repo and stack, installs in seconds, and ships nothing you have to run. It is
@@ -35,6 +35,7 @@ non-duplicative gaps**, minimally and catalog-wired.
35
35
  | **Curated engineering-writing sweep** (a Medium "senior-engineer patterns" prompt → the freely-readable canon: Google SRE Book · AWS Builders' Library · Google API Design Guide & Eng Practices · Martin Fowler · Brendan Gregg · Dan McKinley · Sandi Metz · Stripe/Google idempotency & LRO · Dean/Norvig latency numbers) | Design-time CAP/PACELC + static-stability fallback sizing; error budgets as a release throttle; order-of-magnitude latency table; off-CPU/Amdahl/USL scalability; innovation-token budgeting; the wrong-abstraction cost; Parallel Change (expand→migrate→contract); cursor vs offset pagination; cache-stampede (single-flight + XFetch); DTO/storage decoupling + Idempotency-Key + long-running-operation API shapes; consumer-driven contract testing; "if you can't understand it, that's the finding" | Prose extensions to `resilience-engineering` & `devops-observability` rules + 9 skills (`_references/performance-checklist`, `load-testing`, `library-review`, `over-engineering-review`, `deprecation-and-migration`, `api-pagination-filtering-sorting`, `redis-caching-patterns`, `api-and-interface-design`, `testing-conventions`, `code-review-and-quality`, `notifications-and-messaging`) — **0 new agents/skills/rules; component counts unchanged** | `0.64.0` |
36
36
  | **866-repo AI/Claude/MCP scan** (catalog-additive angle — after five null *prose* passes, targeting the one adoption path with zero always-loaded-context cost: an opt-in `catalog/mcp.yaml` entry) | The metrics/dashboards/alerts side of observability the catalog lacked (`sentry` covers errors only) — maps to the `observability-engineer` + `incident-responder` agents' documented jobs, mirroring the `sentry`/`chrome-devtools` precedent | The **`grafana` MCP fragment** (official [grafana/mcp-grafana](https://github.com/grafana/mcp-grafana), Apache-2.0, read-only via `--disable-write`, pinned, referenced-not-bundled) — **0 new agents/skills/rules; 1 new catalog entry** (deliberately skipped: Figma — no agent consumer; the maintained Go `github-mcp-server` — deferred to its own change; Notion/Cloudflare — no agent / vendor sprawl; code-intel servers — already covered by serena+semble+repowise) | `0.65.0` |
37
37
  | **[basic-memory](https://github.com/basicmachines-co/basic-memory)** (AGPL-3.0 — *ideas absorbed in our own words, zero code/prose copied*; 36 candidate disciplines → 8 survived a 118-agent verify/refute pass → 5 adopted) | A checkpoint is a **resume cursor**: repo/PR identity proven by commands (never conversation memory) and dead-ends recorded so the next session doesn't re-suggest them; memory entries as a **connected store**, not islands; shape conformance as **advisory, never capture-blocking**; promotion to shared config as a **deliberate, confirmed gesture** | The canonical learning shape (fixed the `rules/agent-memory.md` format drift; all four capture paths now agree) + optional reciprocal `## Related` links (union/repoint on consolidation); `git`/`pr` **identity anchors** in `pipeline-snapshot` + a `Repo State` CONTINUITY section + verify-identity-on-resume; the `Attempted & Ruled Out` CONTINUITY section; an advisory shape-check in `consolidate-learnings`; the Promote step now **proposes before writing** (HITL scope-expansion row) with provenance — **0 new agents/skills/rules/hooks** | `0.66.0` |
38
+ | **[Technical-Engineering-Articles](https://github.com/harshit3011/Technical-Engineering-Articles)** (MIT list-repo indexing **46 public X threads by [@Harry_The_Nerd](https://x.com/Harry_The_Nerd)** — thread content © the author, *ideas absorbed in our own words, zero verbatim text*; 46/46 fetched → 614 candidate patterns through a 92-agent digest+verify pass with 3/3 fidelity spot-checks on every digest → global adversarial refute enforced the caps) | System-scale building blocks the kit never taught — rate-limiting algorithms, load balancing, fan-out, unique-ID generation, back-of-envelope estimation, microservice boundary criteria — and state-distribution mechanics (consistent hashing, quorum N/W/R, KV-store anatomy, storage engines); plus six confirmed gaps in existing skills, most notably that upload guidance routed bytes **through the API tier** while seven independent designs converge on presigned direct-to-storage | **2 new collection skills** (`system-design-patterns` · `distributed-systems-patterns`) + **6 capped SKILL.md extensions** (presigned uploads · beyond-cache Redis · event-backbone Kafka · DB concurrency control · HTTP caching & payload efficiency · authz models + OAuth delegation), 43 attributed `htn-` digests in owning skills' `references/`, and the 46-row [`docs/system-design-threads.md`](system-design-threads.md) coverage map (3 threads deliberately not absorbed) | `0.67.0` |
38
39
 
39
40
  > Each adoption is detailed in the [CHANGELOG](../CHANGELOG.md) — including, for every review, what we
40
41
  > deliberately **did not** add because the kit already covered it.
@@ -4,9 +4,9 @@
4
4
 
5
5
  This document analyzes claude-kit's skill inventory — classification, sizing, per-profile footprint, and overlap — to inform future configuration decisions. It proposes no changes to `catalog/profiles.yaml`.
6
6
 
7
- **Date:** 2026-07-03
7
+ **Date:** 2026-07-03 (count anchors refreshed 2026-07-24 at 0.67.0)
8
8
  **Version audited:** 0.57.0
9
- **Total skills on disk:** 104 (56 core + 48 stack-collection)
9
+ **Total skills on disk:** 107 (57 core + 50 stack-collection)
10
10
 
11
11
  ---
12
12
 
@@ -19,8 +19,8 @@ Skills are classified by the presence of a `README.md` file in their directory:
19
19
 
20
20
  This classification is exactly how `scripts/check_docs_consistency.py::_count_skills()` counts them. That function walks `skills/`, skips any entry that is not a directory or whose name starts with `_` (so the shared `_references/` support directory is not counted as a skill), and splits the rest on README presence. The expected split is pinned as anchors that CI checks against the docs:
21
21
 
22
- - 56 core skills (no `README.md`).
23
- - 48 stack-collection skills (with `README.md`).
22
+ - 57 core skills (no `README.md`).
23
+ - 50 stack-collection skills (with `README.md`).
24
24
 
25
25
  Per-profile counts were measured on a `react + fastapi + postgres` project initialized with `--scope individual` for each profile (lean, standard, enterprise), by counting the files actually written under `.claude/`.
26
26
 
@@ -32,11 +32,11 @@ Token estimates are approximate, calculated as `total_bytes / 4`.
32
32
 
33
33
  | Category | Count | Description |
34
34
  |----------|-------|-------------|
35
- | **Core skills** | 56 | Stack-agnostic capabilities (e.g., `sdlc`, `code-review-and-quality`, `test-driven-development`, `planning-and-task-breakdown`, `debugging-and-error-recovery`) |
36
- | **Stack-collection skills** | 48 | Stack or domain-specific skills (e.g., `fastapi-service-patterns`, `react-hook-form-zod-patterns`, `alembic-migrations`, `kubectl-operations`) |
37
- | **Total** | **104** | Full on-disk inventory (excludes the shared `_references/` support directory) |
35
+ | **Core skills** | 57 | Stack-agnostic capabilities (e.g., `sdlc`, `code-review-and-quality`, `test-driven-development`, `planning-and-task-breakdown`, `debugging-and-error-recovery`) |
36
+ | **Stack-collection skills** | 50 | Stack or domain-specific skills (e.g., `fastapi-service-patterns`, `react-hook-form-zod-patterns`, `system-design-patterns`, `kubectl-operations`) |
37
+ | **Total** | **107** | Full on-disk inventory (excludes the shared `_references/` support directory) |
38
38
 
39
- The 48 collection skills are stack/domain add-ons. Note that `postgres-specialist`, `migration-specialist`, and `db-performance-reviewer` are DB-overlay **agents** (under `templates/stacks/db/postgres/agents/`), not skills — they are counted in the agent footprint below, not here.
39
+ The 50 collection skills are stack/domain add-ons. Note that `postgres-specialist`, `migration-specialist`, and `db-performance-reviewer` are DB-overlay **agents** (under `templates/stacks/db/postgres/agents/`), not skills — they are counted in the agent footprint below, not here.
40
40
 
41
41
  ---
42
42
 
@@ -48,11 +48,11 @@ Measured on a `react + fastapi + postgres` project with `--scope individual`:
48
48
  |---------|--------|--------|-------|-------------------------------|
49
49
  | **lean** | 8 | 15 | 36 | ~46K |
50
50
  | **standard** | 26 | 42 | 36 | ~121K |
51
- | **enterprise** | 31 | 104 | 36 | ~895K |
51
+ | **enterprise** | 31 | 107 | 36 | ~895K+ |
52
52
 
53
53
  **Notes:**
54
54
 
55
- - Skill counts are skill *directories* (those containing a `SKILL.md`) — matching `_count_skills()` and the README's "What loads into your context" table. A raw `ls .claude/skills | wc -l` reads one higher (16 / 43 / 105) because each install also copies the shared `_references/` support directory, which is **not** a skill; `_count_skills()` deliberately excludes it. This is a counting convention, not duplicated content.
55
+ - Skill counts are skill *directories* (those containing a `SKILL.md`) — matching `_count_skills()` and the README's "What loads into your context" table. A raw `ls .claude/skills | wc -l` reads one higher (16 / 43 / 108) because each install also copies the shared `_references/` support directory, which is **not** a skill; `_count_skills()` deliberately excludes it. This is a counting convention, not duplicated content.
56
56
  - Since the stack-true reclassification (0.58.1), the six frontend-specific skills (`frontend-ui-engineering`, `component-design`, `ui-ux-design`, `unit-test`, `api-integration`, `manual-test`) ride the React entry in `catalog/stacks.yaml` rather than the standard profile — a backend-only (`frontend: none`) standard install is six skills lighter. Lean gained one on the default stack (the react union now includes `manual-test` and `api-integration`; `api-integration` left the fastapi entry): 14 → 15.
57
57
  - Agent counts exceed the raw profile agent list because the PostgreSQL DB overlay unions in 3 additional agents (`postgres-specialist`, `migration-specialist`, `db-performance-reviewer`).
58
58
  - Rules are profile-independent: 25 core rules + 11 selected stack-overlay rules = 36 for all three profiles.
@@ -62,12 +62,12 @@ Measured on a `react + fastapi + postgres` project with `--scope individual`:
62
62
 
63
63
  ## Finding: Enterprise Over-Install of Stack-Collection Skills
64
64
 
65
- The enterprise profile uses `skills: all` in `catalog/profiles.yaml`, which installs **every skill in the payload** — including all 48 stack-collection skills, regardless of whether the project selected those stacks.
65
+ The enterprise profile uses `skills: all` in `catalog/profiles.yaml`, which installs **every skill in the payload** — including all 50 stack-collection skills, regardless of whether the project selected those stacks.
66
66
 
67
67
  **Impact:**
68
68
 
69
69
  - A `react + fastapi + postgres` project receives skills for stacks and domains it did not select (e.g., MongoDB, Kafka, Temporal, Kubernetes, GCP, and the planned Vue/Svelte/Django/Node collections' analogues) — roughly **895K tokens on disk** vs. standard's **~121K**.
70
- - That is about **7× the on-disk skill footprint** of the standard profile. By skill count the ratio is smaller (104 vs 42, ~2.5×); the 7× gap is driven by size — collection skills carry a `README.md` plus more content per directory. Most of these files are irrelevant to the chosen stack.
70
+ - That is about **7× the on-disk skill footprint** of the standard profile. By skill count the ratio is smaller (107 vs 42, ~2.5×); the 7× gap is driven by size — collection skills carry a `README.md` plus more content per directory. Most of these files are irrelevant to the chosen stack.
71
71
 
72
72
  **Important nuance (do not overstate):** Skills are **on-demand** (activated by context/user request), so this is **disk/selection bloat**, not always-resident context bloat. The harness does not load all skill files into every prompt. What it does do is:
73
73
 
@@ -133,13 +133,15 @@ Potential approaches — all MUST stay `catalog/*.yaml` / config changes with NO
133
133
 
134
134
  **Next steps (if pursued):**
135
135
 
136
- 1. Measure the actual selection-time overhead of a 104-skill vs 42-skill install (do not assume it).
136
+ 1. Measure the actual selection-time overhead of a 107-skill vs 42-skill install (do not assume it).
137
137
  2. Prototype a `stack-relevant` mapping as pure data in `stacks.yaml`, resolved by the existing lookup.
138
138
  3. Add the variant to `catalog/profiles.yaml` and measure the resulting footprint against the numbers above.
139
139
 
140
140
  ### Measured: the stack→skill mapping (2026-07) — and why `stack-relevant` is deferred
141
141
 
142
- The mapping step above was carried out. Classifying all 48 collection skills against the lanes a
142
+ The mapping step above was carried out when the collection held 48 skills (the two
143
+ system-design skills added at 0.67.0 are likewise lane-orthogonal and would not change the
144
+ decision below). Classifying all 48 collection skills against the lanes a
143
145
  user can actually select today (frontend `react|none` · backend `python/fastapi | go/net-http |
144
146
  none` · database `postgres | mongodb | none`; Node/Express, Django, Vue, Svelte are `status:
145
147
  planned`):
@@ -174,7 +176,7 @@ for whoever picks this up.
174
176
 
175
177
  ## Conclusion
176
178
 
177
- - **Total skill inventory:** 104 (56 core + 48 stack-collection).
179
+ - **Total skill inventory:** 107 (57 core + 50 stack-collection).
178
180
  - **Enterprise over-install:** ~7× the on-disk skill footprint (~895K vs ~121K tokens) because `skills: all` installs cross-stack collection skills.
179
181
  - **Risk level:** low for resident context (on-demand activation), but disk/selection bloat is measurable.
180
182
  - **Action taken:** document the trade-off. Optionally evaluate a stack-relevant filter as a config-level change (no `resolve()` branching).
@@ -1,6 +1,6 @@
1
1
  # Production Engineering Skills Collection
2
2
 
3
- These forty-eight Claude Code skills encode production-proven engineering conventions derived from real-world Python/FastAPI, Node/Express, and React services. Each skill was extracted from analyzing patterns across multiple production backend and frontend services, capturing canonical patterns for FastAPI microservices, async Python, Kafka/Temporal integration, multi-tenancy, database access, layered configuration, Redis caching, GCS file handling, LLM integration (Vertex AI / Langfuse), Node/Express services, React frontends (state, data-fetching, forms, design systems, testing), observability (including Grafana dashboards & unified alerting), authentication, containerization (with granular Dockerfile/compose deep-dives), testing, data pipelines, security scanning (OWASP ZAP VAPT/DAST and autonomous AI pentesting), security architecture (edge-to-service signed-identity trust boundary, Kubernetes workload hardening), scheduled & recurring jobs (Kubernetes CronJob + Temporal Schedule), kubectl day-2 operations, and modernization strategies. Use them to align new projects with established patterns, audit existing services, or onboard engineers to modern Python, Node, and React development practices.
3
+ These fifty Claude Code skills encode production-proven engineering conventions derived from real-world Python/FastAPI, Node/Express, and React services, plus system-design pattern references synthesized from public engineering write-ups. Each skill was extracted from analyzing patterns across multiple production backend and frontend services, capturing canonical patterns for FastAPI microservices, async Python, Kafka/Temporal integration, multi-tenancy, database access, layered configuration, Redis caching, GCS file handling, LLM integration (Vertex AI / Langfuse), Node/Express services, React frontends (state, data-fetching, forms, design systems, testing), observability (including Grafana dashboards & unified alerting), authentication, containerization (with granular Dockerfile/compose deep-dives), testing, data pipelines, security scanning (OWASP ZAP VAPT/DAST and autonomous AI pentesting), security architecture (edge-to-service signed-identity trust boundary, Kubernetes workload hardening), scheduled & recurring jobs (Kubernetes CronJob + Temporal Schedule), kubectl day-2 operations, modernization strategies, and system/distributed-systems design building blocks (rate limiting, fan-out, consistent hashing, replication). Use them to align new projects with established patterns, audit existing services, or onboard engineers to modern Python, Node, and React development practices.
4
4
 
5
5
  > **Where these live in this repo:** the skill folders are under [`skills/`](../../skills/) (auto-discovered by the claude-kit plugin). The links below point there.
6
6
 
@@ -18,6 +18,8 @@ These forty-eight Claude Code skills encode production-proven engineering conven
18
18
  | **temporal-developer** | Temporal *fundamentals* (language-agnostic; complement to temporal-config-driven) — durable execution, why workflows must be deterministic (history replay), signals/queries/updates, safe versioning of running workflows (patching/worker versioning), testing (time-skipping/replay), gotchas, the `temporal` CLI dev loop, + Python/Go/TS starters; re-derived from the MIT temporalio/skill-temporal-developer | [SKILL.md](../../skills/temporal-developer/SKILL.md) |
19
19
  | **frontend-repo-architecture** | React + Vite + TypeScript frontend structure — three organizational models (module-scoped, feature-sliced, GraphQL-based), API layer strategies, hand-written types, state management | [SKILL.md](../../skills/frontend-repo-architecture/SKILL.md) |
20
20
  | **design-patterns-and-conventions** | Design conventions across repos — naming (classes/files/routes), error handling (ResponseData envelope), config hierarchy, logging structured-log patterns, code organization | [SKILL.md](../../skills/design-patterns-and-conventions/SKILL.md) |
21
+ | **system-design-patterns** | System-scale building blocks — back-of-envelope estimation, rate-limiting algorithms, load balancing, CDN/edge, caching hierarchy, URL shortening & unique ID generation, notification/news-feed fan-out, autocomplete, chat/real-time, microservice boundaries, and a composite-application pattern map; synthesized (own words, attributed) from 24 public system-design threads by @Harry_The_Nerd | [SKILL.md](../../skills/system-design-patterns/SKILL.md) |
22
+ | **distributed-systems-patterns** | Distributing state — consistent hashing, partitioning/sharding, replication & quorum (N/W/R), distributed KV-store anatomy (hinted handoff, anti-entropy, vector clocks), distributed cache design, failure detection/gossip, B-tree vs LSM storage engines; CAP/clocks stay cross-linked to the always-loaded `resilience-engineering` rule | [SKILL.md](../../skills/distributed-systems-patterns/SKILL.md) |
21
23
  | **multi-tenancy-patterns** | Multi-tenant isolation strategies — tenant resolution (header/JWT/session), Postgres RLS, multi-pool databases, lazy connectors, data-layer org_id tenancy | [SKILL.md](../../skills/multi-tenancy-patterns/SKILL.md) |
22
24
  | **observability-and-logging** | Structured logging, OpenTelemetry tracing, Sentry error tracking, Prometheus metrics, NewRelic, request/correlation IDs, /health and /readiness endpoints | [SKILL.md](../../skills/observability-and-logging/SKILL.md) |
23
25
  | **otel-tracing** | Vendor-neutral distributed tracing *pipeline + backend* (language-agnostic; complement to observability-and-logging) — the OTel trace data model, the standard OTLP env-var contract, the OTLP→Collector→Tempo path, head-plus-tail sampling (loadbalancing exporter, `tail_sampling`), W3C context propagation across async/queue boundaries, the Grafana Tempo backend (distributor/ingester/querier/compactor, retention/compaction, OTLP ports/paths), TraceQL, the metrics-generator (span metrics + service graphs), and trace↔logs↔metrics correlation (exemplars); re-derived from public OpenTelemetry, W3C Trace Context, and Grafana Tempo docs | [SKILL.md](../../skills/otel-tracing/SKILL.md) |
@@ -0,0 +1,61 @@
1
+ # System-design thread coverage map
2
+
3
+ Source: [Technical-Engineering-Articles](https://github.com/harshit3011/Technical-Engineering-Articles)
4
+ (MIT list-repo) — 46 public X long-form articles by Harshit Khosla
5
+ ([@Harry_The_Nerd](https://x.com/Harry_The_Nerd)). All 46 fetched 2026-07-23/24 via logged-out
6
+ browser render. Article content remains © the author; every shipped digest is an own-words summary
7
+ with attribution and no verbatim text (see `docs/influences.md`). Digests are named
8
+ `htn-<slug>.md` and live in the owning skill's `references/` directory.
9
+
10
+ Absorbed in 0.67.0 as: two new collection skills (`system-design-patterns`,
11
+ `distributed-systems-patterns`), six SKILL.md extensions (capped deliberately), and 43 shipped
12
+ digests. Three threads were deliberately not absorbed (rows marked below).
13
+
14
+ | # | Thread | Category | Fetched | Digest | Kit outcome |
15
+ |---|--------|----------|---------|--------|-------------|
16
+ | 1 | [Design Bit.ly and Pastebin](https://x.com/Harry_The_Nerd/status/2044672371546877964) | HLD | yes | `skills/system-design-patterns/references/htn-design-bit-ly-and-pastebin.md` | new-skill section / composite row in `system-design-patterns` |
17
+ | 2 | [Design A Notification System](https://x.com/Harry_The_Nerd/status/2044839667267494292) | HLD | yes | `skills/system-design-patterns/references/htn-design-a-notification-system.md` | new-skill section / composite row in `system-design-patterns` |
18
+ | 3 | [Design A Rate Limiter](https://x.com/Harry_The_Nerd/status/2045533839649624096) | HLD | yes | `skills/system-design-patterns/references/htn-design-a-rate-limiter.md` | new-skill section / composite row in `system-design-patterns` |
19
+ | 4 | [Design Autocomplete For Search Engines](https://x.com/Harry_The_Nerd/status/2045906641967833171) | HLD | yes | `skills/system-design-patterns/references/htn-design-autocomplete-for-search-engines.md` | new-skill section / composite row in `system-design-patterns` |
20
+ | 5 | [Design a Load Balancer](https://x.com/Harry_The_Nerd/status/2046465659551576395) | HLD | yes | `skills/system-design-patterns/references/htn-design-a-load-balancer.md` | new-skill section / composite row in `system-design-patterns` |
21
+ | 6 | [Design a Content Delivery Network](https://x.com/Harry_The_Nerd/status/2046578404758295032) | HLD | yes | `skills/system-design-patterns/references/htn-design-a-content-delivery-network.md` | new-skill section / composite row in `system-design-patterns` |
22
+ | 7 | [Design a Distributed Key-Value store](https://x.com/Harry_The_Nerd/status/2047329176982827353) | HLD | yes | `skills/distributed-systems-patterns/references/htn-design-a-distributed-key-value-store.md` | new-skill section in `distributed-systems-patterns` |
23
+ | 8 | [Design A Distributed Cache](https://x.com/Harry_The_Nerd/status/2048052028174463278) | HLD | yes | `skills/distributed-systems-patterns/references/htn-design-a-distributed-cache.md` | new-skill section in `distributed-systems-patterns` |
24
+ | 9 | [Design an Authentication System](https://x.com/Harry_The_Nerd/status/2048758919770816850) | HLD | yes | `skills/auth-and-rbac/references/htn-design-an-authentication-system.md` | feeds `auth-and-rbac` extension (authz models & OAuth) |
25
+ | 10 | [HTTP & Routing](https://x.com/Harry_The_Nerd/status/2053366145995178087) | Backend Engineering | yes | `skills/api-and-interface-design/references/htn-http-routing.md` | feeds `api-and-interface-design` extension (HTTP caching) |
26
+ | 11 | [Serialization, Deserialization, Authentication and Authorization](https://x.com/Harry_The_Nerd/status/2053487726033559704) | Backend Engineering | yes | `skills/auth-and-rbac/references/htn-serialization-deserialization-authentication-and-authorizati.md` | feeds `auth-and-rbac` extension (authz models & OAuth) |
27
+ | 12 | [Validation, Transformation, Controllers, Middlewares](https://x.com/Harry_The_Nerd/status/2053882356071911853) | Backend Engineering | yes | `skills/design-patterns-and-conventions/references/htn-validation-transformation-controllers-middlewares.md` | digest only (already covered by the owning skill) |
28
+ | 13 | [Rest API Design](https://x.com/Harry_The_Nerd/status/2054882198604628305) | Backend Engineering | yes | `skills/api-and-interface-design/references/htn-rest-api-design.md` | feeds `api-and-interface-design` extension (HTTP caching) |
29
+ | 14 | [LLD Concepts](https://x.com/Harry_The_Nerd/status/2055635966568620167) | LLD | yes | `skills/design-patterns-and-conventions/references/htn-lld-concepts.md` | digest only (already covered by the owning skill) |
30
+ | 15 | [Design a basic Music System](https://x.com/Harry_The_Nerd/status/2056620076246479055) | LLD | yes | `skills/system-design-patterns/references/htn-design-a-basic-music-system.md` | new-skill section / composite row in `system-design-patterns` |
31
+ | 16 | [Tricky HLD Patterns for interviews](https://x.com/Harry_The_Nerd/status/2056739488114856226) | HLD | yes | `skills/distributed-systems-patterns/references/htn-tricky-hld-patterns-for-interviews.md` | new-skill section in `distributed-systems-patterns` |
32
+ | 17 | [Design Consistent Hashing](https://x.com/Harry_The_Nerd/status/2057098732328648808) | HLD | yes | `skills/distributed-systems-patterns/references/htn-design-consistent-hashing.md` | new-skill section in `distributed-systems-patterns` |
33
+ | 18 | [Design A Unique ID Generator in Distributed Systems](https://x.com/Harry_The_Nerd/status/2057461354114728238) | HLD | yes | `skills/system-design-patterns/references/htn-design-a-unique-id-generator-in-distributed-systems.md` | new-skill section / composite row in `system-design-patterns` |
34
+ | 19 | [Design a Parking Lot](https://x.com/Harry_The_Nerd/status/2057821348450402614) | LLD | yes | `skills/system-design-patterns/references/htn-design-a-parking-lot.md` | new-skill section / composite row in `system-design-patterns` |
35
+ | 20 | [Design A News-Feed System](https://x.com/Harry_The_Nerd/status/2058553384735842654) | HLD | yes | `skills/system-design-patterns/references/htn-design-a-news-feed-system.md` | new-skill section (news-feed fan-out) + feeds `kafka-config-driven` (partition keys) |
36
+ | 21 | [Design Youtube](https://x.com/Harry_The_Nerd/status/2060001018134553006) | LLD | yes | `skills/system-design-patterns/references/htn-design-youtube-lld.md` | new-skill section / composite row in `system-design-patterns` |
37
+ | 22 | [Design a Vending Machine](https://x.com/Harry_The_Nerd/status/2060348729929175403) | LLD | yes | `skills/design-patterns-and-conventions/references/htn-design-a-vending-machine.md` | digest only (already covered by the owning skill) |
38
+ | 23 | [A Complete Guide to Redis](https://x.com/Harry_The_Nerd/status/2061076806552392055) | Engineering Articles | yes | `skills/redis-caching-patterns/references/htn-a-complete-guide-to-redis.md` | extends `redis-caching-patterns` (beyond-cache Redis) |
39
+ | 24 | [Design A Chat System](https://x.com/Harry_The_Nerd/status/2061445321910284589) | HLD | yes | `skills/system-design-patterns/references/htn-design-a-chat-system.md` | new-skill section / composite row in `system-design-patterns` |
40
+ | 25 | [Apache Kafka: Crash Course](https://x.com/Harry_The_Nerd/status/2062165677033820383) | Engineering Articles | yes | `skills/kafka-config-driven/references/htn-apache-kafka-crash-course.md` | extends `kafka-config-driven` (event-backbone design) |
41
+ | 26 | [Design Youtube](https://x.com/Harry_The_Nerd/status/2062909779576791167) | HLD | yes | `skills/system-design-patterns/references/htn-design-youtube-hld.md` | composite row + feeds `gcs-file-storage-patterns` extension (presigned uploads) |
42
+ | 27 | [Design Spotify](https://x.com/Harry_The_Nerd/status/2063952850531897396) | HLD | yes | `skills/system-design-patterns/references/htn-design-spotify.md` | new-skill section / composite row in `system-design-patterns` |
43
+ | 28 | [Design Instagram](https://x.com/Harry_The_Nerd/status/2065074213665579192) | HLD | yes | `skills/system-design-patterns/references/htn-design-instagram.md` | composite row + feeds `gcs-file-storage-patterns` extension (presigned uploads) |
44
+ | 29 | [Design Tinder](https://x.com/Harry_The_Nerd/status/2065790968448909572) | HLD | yes | `skills/system-design-patterns/references/htn-design-tinder.md` | composite row + feeds `gcs-file-storage-patterns` extension (presigned uploads) |
45
+ | 30 | [AWS Certified Solutions Architect - Associate SAA-C03 Exam Tricks](https://x.com/Harry_The_Nerd/status/2066793644783513735) | Engineering Articles | yes | — | not absorbed — cloud-exam prep, no SDLC substance for a stack-agnostic kit |
46
+ | 31 | [Design Reddit](https://x.com/Harry_The_Nerd/status/2067615247259811850) | HLD | yes | `skills/system-design-patterns/references/htn-design-reddit.md` | composite row + feeds `gcs-file-storage-patterns` extension (presigned uploads) |
47
+ | 32 | [Design Twitter](https://x.com/Harry_The_Nerd/status/2068309801638195531) | HLD | yes | `skills/system-design-patterns/references/htn-design-twitter.md` | composite row + feeds `gcs-file-storage-patterns` extension (presigned uploads) |
48
+ | 33 | [A Complete Guide For Claude Certified Architect Foundations (CCA-F) Exam](https://x.com/Harry_The_Nerd/status/2069050669487809004) | Engineering Articles | yes | — | not absorbed — exam prep (per plan); platform facts already covered by `anthropic-vertex-integration`/`context-engineering` |
49
+ | 34 | [Netflix Recommendation System - Machine Learning System Design](https://x.com/Harry_The_Nerd/status/2069785739810705773) | Engineering Articles | yes | `skills/system-design-patterns/references/htn-netflix-recommendation-system-machine-learning-system-design.md` | new-skill section / composite row in `system-design-patterns` |
50
+ | 35 | [Design Amazon](https://x.com/Harry_The_Nerd/status/2070543086258979132) | HLD | yes | `skills/system-design-patterns/references/htn-design-amazon.md` | composite row + feeds `kafka-config-driven` extension (sagas) |
51
+ | 36 | [Design Netflix](https://x.com/Harry_The_Nerd/status/2071256571028648283) | HLD | yes | `skills/system-design-patterns/references/htn-design-netflix.md` | new-skill section / composite row in `system-design-patterns` |
52
+ | 37 | [How To Get Started With Writing- Technical and Creative](https://x.com/Harry_The_Nerd/status/2072219094728978564) | Engineering Articles | yes | — | not absorbed — personal writing advice, out of kit scope |
53
+ | 38 | [Databases in Depth Part-1](https://x.com/Harry_The_Nerd/status/2073772366094602241) | Backend Engineering | yes | `skills/distributed-systems-patterns/references/htn-databases-in-depth-part-1.md` | new-skill section in `distributed-systems-patterns` |
54
+ | 39 | [How JavaScript Executes The Code - Behind The Scenes](https://x.com/Harry_The_Nerd/status/2075158256826335454) | Engineering Articles | yes | `skills/performance-optimization/references/htn-how-javascript-executes-the-code-behind-the-scenes.md` | digest only (already covered by the owning skill) |
55
+ | 40 | [Databases in Depth Part-2](https://x.com/Harry_The_Nerd/status/2075942037732667812) | Backend Engineering | yes | `skills/python-dao-and-database/references/htn-databases-in-depth-part-2.md` | extends `python-dao-and-database` (concurrency control) |
56
+ | 41 | [Databases in Depth Part-3](https://x.com/Harry_The_Nerd/status/2076649413435687097) | Backend Engineering | yes | `skills/distributed-systems-patterns/references/htn-databases-in-depth-part-3.md` | new-skill section in `distributed-systems-patterns` |
57
+ | 42 | [Caching, Task Queues, Error Handling, Logging, Monitoring](https://x.com/Harry_The_Nerd/status/2077400118647750968) | Backend Engineering | yes | `skills/observability-and-logging/references/htn-caching-task-queues-error-handling-logging-monitoring.md` | digest only (already covered by the owning skill) |
58
+ | 43 | [Security, Scaling & Performance, Concurrency & Parallelism](https://x.com/Harry_The_Nerd/status/2077722979882963122) | Backend Engineering | yes | `skills/system-design-patterns/references/htn-security-scaling-performance-concurrency-parallelism.md` | feeds `python-dao-and-database` + `api-and-interface-design` extensions |
59
+ | 44 | [Python's Inner Working - Behind The Scenes](https://x.com/Harry_The_Nerd/status/2078116519029129646) | Engineering Articles | yes | `skills/async-python-patterns/references/htn-python-s-inner-working-behind-the-scenes.md` | digest only (already covered by the owning skill) |
60
+ | 45 | [Design Airbnb](https://x.com/Harry_The_Nerd/status/2079561027788611975) | HLD | yes | `skills/system-design-patterns/references/htn-design-airbnb.md` | composite row + feeds `gcs-file-storage-patterns` + `kafka-config-driven` (saga) extensions |
61
+ | 46 | [Mental Model for Microservices](http://x.com/Harry_The_Nerd/status/2080261902593065465) | Microservices | yes | `skills/system-design-patterns/references/htn-mental-model-for-microservices.md` | new-skill section / composite row in `system-design-patterns` |
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "claude-code-kit"
7
- version = "0.66.0"
7
+ version = "0.67.0"
8
8
  description = "Cookiecutter-style scaffolder for an autonomous Claude Code SDLC configuration (no app code, no Docker). Asks ordered questions and installs CLAUDE.md + .claude/ (rules, the chosen profile's agents/skills, hooks, artifact templates) + optional .mcp.json; run /sdlc to drive spec → review → build → test → security → ship through profile-aware quality gates, working memory, and a self-improving learnings loop."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -420,3 +420,7 @@ export default api;
420
420
  | Constrained string values | Enum (backend) or union type (frontend) |
421
421
  | Multiple implementations | Strategy (interface/protocol) |
422
422
  | Cross-cutting render concern | Error Boundary |
423
+
424
+ For system-scale design decisions — rate limiting, load balancing, fan-out, ID generation, service
425
+ boundaries — see the `system-design-patterns` skill; for distributing state — consistent hashing,
426
+ sharding, replication/quorum — see `distributed-systems-patterns`.
@@ -263,6 +263,61 @@ time out.
263
263
  > Per the Google API Design Guide's Long-Running Operations pattern (cloud.google.com/apis/design).
264
264
  > Stack-agnostic.
265
265
 
266
+ ### HTTP Caching & Payload Efficiency
267
+
268
+ Every response declares a caching policy whether you write one or not — with no `Cache-Control`
269
+ header, browsers and CDNs fall back to heuristics and *guess* how long your data stays valid.
270
+ Choose the policy per endpoint, deliberately, as part of the contract:
271
+
272
+ ```
273
+ Cache-Control: public, max-age=31536000 → shared reference data; CDNs may cache it
274
+ Cache-Control: private, max-age=60 → per-user data; browser may cache, shared caches must not
275
+ Cache-Control: no-store → sensitive payloads (auth, payment, PII) — never cached
276
+ Cache-Control: max-age=30, stale-while-revalidate=300
277
+ → serve the stale copy instantly, refresh in the background
278
+ ```
279
+
280
+ Default: `no-store` for anything authenticated or per-user until you decide otherwise; an explicit
281
+ `max-age` for anything shareable. And if a body varies on a negotiated request header (encoding,
282
+ language), list that header in **`Vary`** — omitting it is how a shared cache hands one client's
283
+ compressed variant to a client that can't decode it.
284
+
285
+ **Conditional requests skip the re-transfer.** Fingerprint each response with an **`ETag`**; the
286
+ client echoes it back and an unchanged resource costs a tiny `304` instead of a full body
287
+ (`Last-Modified` / `If-Modified-Since` is the coarser time-based equivalent):
288
+
289
+ ```
290
+ GET /api/tasks/123
291
+ If-None-Match: "a1b2c3"
292
+ → 304 Not Modified // no body — the client's cached copy is still valid
293
+ ```
294
+
295
+ The same fingerprint doubles as an **optimistic-concurrency token** on writes — require `If-Match`
296
+ and reject a stale write with `412` instead of silently letting the last writer win:
297
+
298
+ ```
299
+ PATCH /api/tasks/123
300
+ If-Match: "a1b2c3"
301
+ { "title": "Updated title" }
302
+ → 412 Precondition Failed // someone else changed it since the client read it
303
+ ```
304
+
305
+ **`Retry-After` completes the rate-limit contract.** A bare `429` or `503` invites blind client
306
+ retry loops; pairing it with `Retry-After: 30` turns them into scheduled backoff. If an endpoint
307
+ can return `429`, it should say when to come back.
308
+
309
+ **Payload size is a contract too.** Three bounds, cheapest first:
310
+
311
+ - **Compression** — honor `Accept-Encoding` and compress JSON bodies (gzip works everywhere,
312
+ Brotli compresses further over HTTPS); large text payloads routinely shrink ~5–10×, nearly free.
313
+ - **Sparse fieldsets** — give over-fetch-prone list endpoints a field-selection param
314
+ (`?fields=id,title,status`) so list views stop paying for detail-view payloads.
315
+ - **Pagination caps** — the first payload bound of all: no list endpoint returns unbounded rows.
316
+ Query-param conventions live in `api-pagination-filtering-sorting`.
317
+
318
+ > Per RFC 9110/9111 (HTTP semantics, caching, conditional requests). Stack-agnostic — these are
319
+ > wire-level contracts that browsers, CDNs, and gateways enforce identically for any backend.
320
+
266
321
  ## Type-Safe Interface Patterns
267
322
 
268
323
  ### Use Discriminated Unions for Variants
@@ -352,3 +407,7 @@ After designing an API:
352
407
  - [ ] New fields are additive and optional (backward compatible)
353
408
  - [ ] Naming follows consistent conventions across all endpoints
354
409
  - [ ] API documentation or types are committed alongside the implementation
410
+
411
+ ## References
412
+
413
+ - [htn-http-routing.md](references/htn-http-routing.md) · [htn-rest-api-design.md](references/htn-rest-api-design.md) — own-words digests of the HTTP/routing and REST API design source articles
@@ -0,0 +1,93 @@
1
+ # Digest: HTTP & Routing
2
+
3
+ - **Source:** https://x.com/Harry_The_Nerd/status/2053366145995178087
4
+ - **Author:** Harshit Khosla (@Harry_The_Nerd)
5
+ - **Category:** Backend Engineering (article #1 of the author's backend series)
6
+ - **Fetched:** 2026-07-23/24 via logged-out browser render
7
+ - **License note:** Content (c) the author; this digest is an own-words summary for internal engineering reference — no verbatim text.
8
+
9
+ ## Patterns
10
+
11
+ ### Three-part HTTP response anatomy
12
+ Every response the server returns is built from the same three pieces: a status line (protocol version + numeric code + reason phrase), a header block of metadata that tells the client how to interpret what follows, and an optional body carrying the payload (JSON, HTML, binary, or nothing). Use this decomposition when debugging: the status line answers "did it work?", the headers answer "how should I treat it?", and only then does the body matter. Trade-off awareness: a body-less response is legitimate (e.g., 304), so client code must not assume content is always present.
13
+
14
+ ### Status-code families as a triage system
15
+ Codes are bucketed by their first digit — 1xx informational, 2xx success, 3xx redirection, 4xx caller error, 5xx server fault — so the family alone tells you which side of the wire to blame before reading anything else. The article singles out the codes an engineer should reach for deliberately: 200 (success with data), 201 (resource created), 301 (permanent move; browsers cache it, so it is hard to undo), 304 (client's cached copy is still valid), 400 (malformed input), 401 (authentication missing) vs 403 (authenticated but not authorized — a distinction worth encoding correctly), 404 (no such resource), 429 (rate limited), 500 (unhandled server failure), 503 (server down or saturated). When to use: designing API error semantics and writing client retry logic (429/503 are retryable; 4xx generally are not).
16
+
17
+ ### Cache and security headers that do real work
18
+ A small set of response headers carries most of the operational weight:
19
+ - `Content-Type` declares the body format; without it the client cannot parse reliably.
20
+ - `Cache-Control` sets caching policy — a max-age in seconds for shareable data, `no-store` for anything sensitive, `private` to keep copies out of shared caches/CDNs.
21
+ - `Set-Cookie` with the three hardening flags: `HttpOnly` (script cannot read the cookie), `Secure` (transmitted only over HTTPS), `SameSite=Strict` (never attached to cross-site requests). Default to all three for session cookies.
22
+ - `ETag` gives the response a content fingerprint; the client echoes it on the next request and an unchanged resource comes back as a tiny 304 instead of a full payload — a bandwidth optimization with almost no downside beyond server-side fingerprint computation.
23
+ - `Retry-After` accompanies 429/503 to tell well-behaved clients exactly how long to back off, turning blind retry loops into scheduled ones.
24
+
25
+ ### CORS as a browser-enforced read gate
26
+ When a page calls an origin other than its own (origin = scheme + host + port, so an api subdomain is already a different origin), the browser checks whether the responding server has allow-listed the calling origin via `Access-Control-Allow-Origin`. The threat it neutralizes: because browsers auto-attach cookies to requests toward the cookie's domain, a malicious page could fire an authenticated fetch at your bank and read the reply. CORS does not stop the request or the response — it stops the attacker's JavaScript from *reading* the response when the allow header is absent. Critical operational fact: this is purely a browser mechanism; curl, Postman, and server-side runtimes ignore it entirely, so CORS is user protection, never API access control. Don't mistake a permissive CORS policy for security, and don't expect CORS to defend against non-browser clients.
27
+
28
+ ### Simple vs. preflighted requests and preflight caching
29
+ Browsers split cross-origin calls into two classes. Reads with plain headers (GET, HEAD, basic POST) fly immediately and only the response is policy-checked — safe, because an unreadable response does no harm. Mutating or exotic requests (PUT, DELETE, custom headers like Authorization) trigger an automatic OPTIONS probe first, announcing the intended method and headers; the real request goes out only if the server approves. Rationale: a destructive operation causes damage the moment it executes, so permission must be checked *before* firing, not after. Cost: preflights double round trips; mitigate with `Access-Control-Max-Age` (e.g., 86400 = a day) so the browser reuses one approval instead of re-asking per request.
30
+
31
+ ### Content negotiation across four axes
32
+ Client and server agree on the shape of the payload before it is sent, along four dimensions, each an Accept-style request header answered by a Content-* response header:
33
+ 1. **Format** — `Accept` lists media types with q-weights (0–1 preference scores); the server picks the best supported match and confirms via `Content-Type`, or returns 406 if nothing overlaps.
34
+ 2. **Compression** — `Accept-Encoding` advertises supported codecs; the server answers with `Content-Encoding`. Rough numbers from the article: gzip cuts JSON around 77% and works everywhere; Brotli reaches roughly 82% but is HTTPS-only; Zstandard is newer and decodes faster at comparable ratios. Decompression is transparent to application code.
35
+ 3. **Language** — `Accept-Language` with q-weights lets one URL serve localized bodies, confirmed via `Content-Language`.
36
+ 4. **Charset** — effectively settled; always emit UTF-8.
37
+ Use negotiation whenever one endpoint must serve heterogeneous clients; the trade-off is server-side branching complexity and the caching hazard handled by `Vary` (below).
38
+
39
+ ### Vary as the cache-correctness contract
40
+ Any response whose body differs based on request headers must declare those headers in `Vary` (e.g., encoding and language). This instructs CDNs and intermediary caches to key stored copies on those header values. Omitting it is a classic production bug: a cache stores one client's compressed variant and hands it to a client that cannot decode it. Rule of thumb: whatever you negotiate on, you list in Vary. Cost: more cache keys means lower hit rates, so negotiate only on axes you actually serve differently.
41
+
42
+ ### Method + path as the routing key
43
+ Routing maps the pair (HTTP method, URL path) onto a handler function. Because the method participates in the key, a GET and a POST at the same path are distinct routes with independent logic — the method carries intent (read vs. create vs. replace vs. delete), the path carries destination. This is the foundation for organizing handler code and for the REST convention of one resource path exposing several verbs.
44
+
45
+ ### Static vs. dynamic routes; path vs. query parameters
46
+ Static routes are fixed strings; dynamic routes embed named placeholders (colon-prefixed in Express-style syntax) whose runtime segment values the framework extracts and hands to the handler. Complementing that, the article draws the parameter split: path parameters identify *which* resource (an ID embedded in the path), while query parameters — key/value pairs after the `?` — modify *how* the resource collection is handled: filtering, sorting, searching, pagination. Practical driver: GET requests carry no body, so the query string is their data channel. Design rule: identity in the path, behavior modifiers in the query.
47
+
48
+ ### Nested routes for resource hierarchy
49
+ Parent-child resources can be expressed structurally in the URL (a posts collection scoped under a specific user's ID). Benefit: the route itself documents the relationship and handlers receive both parent and child identifiers. Trade-off: deep nesting couples client URLs to your data model; keep hierarchies shallow.
50
+
51
+ ### Versioning and deprecation lifecycle
52
+ APIs evolve without breaking existing consumers by running multiple versions side by side — commonly a version segment in the path (v1, v2), alternatively a header or query parameter. Retirement is a signaled process, not a surprise: the `Deprecation` and `Sunset` HTTP headers announce that a version is obsolete and when it will disappear, giving clients a migration window before removal.
53
+
54
+ ### Catch-all routes as the fallback layer
55
+ A wildcard route (Express/React Router `*`, Next.js bracket-spread segments) matches anything no explicit route claimed. Standard uses: serving 404 pages, handling arbitrarily deep dynamic paths, and the SPA pattern of routing every unknown path to the app shell so client-side routing can take over. Keep it registered last so it never shadows real routes.
56
+
57
+ ## Not absorbed
58
+
59
+ - **Series announcement intro** — the author launching his backend + system design series and hoping readers enjoy it; personal framing, no engineering content.
60
+ - **"What the heck is your backend?" section** — a beginner-level definition of frontend vs. backend; audience-orientation prose rather than a pattern.
61
+ - **The nightclub/bouncer analogy for CORS** — pedagogical device; the underlying mechanism is captured in the CORS pattern above.
62
+ - **Conversational asides in the status-code list** (jokey glosses on 401/429 etc.) — tone, not substance; the codes themselves are absorbed.
63
+ - **Closing sign-off and engagement counts** (views/likes/reposts) — platform chrome.
64
+
65
+ ## Fidelity check
66
+
67
+ **Post count in capture:** 1 (a single long-form article post; the JSON reports postCount 1 and contains no `---AUTHOR-POST-BREAK---` separators).
68
+
69
+ **Article outline as the author structured it:**
70
+ 1. Series intro
71
+ 2. What the heck is your backend?
72
+ 3. What is HTTP?
73
+ 4. HTTP Responses (status line / headers / body)
74
+ 5. Status Codes
75
+ 6. The Headers That Matter
76
+ 7. CORS: Cross-Origin Resource Sharing (nightclub analogy; Why CORS Exists; Simple vs Preflighted Requests)
77
+ 8. Content Negotiation and Compression (The Core Idea; The Four Things They Negotiate On; Vary; A Full Real-World Exchange)
78
+ 9. Routing (What is Routing; Types of Routes; Path Parameters vs. Query Parameters; Nested Routing; Route Versioning and Deprecation; Catch-All Routes)
79
+ 10. Sign-off
80
+
81
+ **Pattern-to-section citations:**
82
+ - Three-part HTTP response anatomy → section 4, "HTTP Responses"
83
+ - Status-code families as a triage system → section 5, "Status Codes"
84
+ - Cache and security headers that do real work → section 6, "The Headers That Matter"
85
+ - CORS as a browser-enforced read gate → section 7, "CORS" + "Why CORS Exists" (browser-only caveat from the end of the CORS section)
86
+ - Simple vs. preflighted requests and preflight caching → section 7, "Simple vs Preflighted Requests"
87
+ - Content negotiation across four axes → section 8, "The Four Things They Negotiate On"
88
+ - Vary as the cache-correctness contract → section 8, the Vary passage and "A Full Real-World Exchange"
89
+ - Method + path as the routing key → section 9, "What is Routing?"
90
+ - Static vs. dynamic routes; path vs. query parameters → section 9, "Types of Routes" + "Path Parameters vs. Query Parameters"
91
+ - Nested routes for resource hierarchy → section 9, "Nested Routing"
92
+ - Versioning and deprecation lifecycle → section 9, "Route Versioning and Deprecation"
93
+ - Catch-all routes as the fallback layer → section 9, "Catch-All Routes"