claude-code-kit 0.38.0__tar.gz → 0.40.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 (533) hide show
  1. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/.claude-plugin/marketplace.json +1 -1
  2. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/.claude-plugin/plugin.json +1 -1
  3. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/CHANGELOG.md +35 -0
  4. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/PKG-INFO +4 -4
  5. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/README.md +3 -3
  6. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/dependency-scanner.md +23 -0
  7. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/pyproject.toml +1 -1
  8. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/code-review-and-quality/SKILL.md +17 -0
  9. claude_code_kit-0.40.0/skills/dependency-verification/SKILL.md +101 -0
  10. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/library-review/SKILL.md +2 -1
  11. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/over-engineering-review/SKILL.md +31 -0
  12. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/security-and-hardening/SKILL.md +6 -0
  13. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/__init__.py +1 -1
  14. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/.gitignore +0 -0
  15. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/CLAUDE.md +0 -0
  16. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/CONTRIBUTING.md +0 -0
  17. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/LICENSE +0 -0
  18. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/acceptance-reviewer.md +0 -0
  19. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/auditor.md +0 -0
  20. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/developer.md +0 -0
  21. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/devils-advocate.md +0 -0
  22. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/devops-engineer.md +0 -0
  23. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/e2e-tester.md +0 -0
  24. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/em-reviewer.md +0 -0
  25. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/incident-responder.md +0 -0
  26. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/merge-reviewer.md +0 -0
  27. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/observability-engineer.md +0 -0
  28. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/orchestrator.md +0 -0
  29. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/owasp-reviewer.md +0 -0
  30. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/policy-validator.md +0 -0
  31. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/pr-raiser.md +0 -0
  32. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/risk-classifier.md +0 -0
  33. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/sdlc-code-reviewer.md +0 -0
  34. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/secret-scanner.md +0 -0
  35. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/security-reviewer.md +0 -0
  36. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/senior-backend-dev.md +0 -0
  37. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/senior-frontend-dev.md +0 -0
  38. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/senior-tester.md +0 -0
  39. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/spec-doc-writer.md +0 -0
  40. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/story-planner.md +0 -0
  41. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/technical-architect.md +0 -0
  42. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/tester.md +0 -0
  43. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/ui-designer.md +0 -0
  44. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/agents/unit-tester.md +0 -0
  45. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/catalog/capture.yaml +0 -0
  46. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/catalog/mcp.yaml +0 -0
  47. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/catalog/org.yaml +0 -0
  48. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/catalog/profiles.yaml +0 -0
  49. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/catalog/stacks.yaml +0 -0
  50. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/commands/abort.md +0 -0
  51. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/commands/init.md +0 -0
  52. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/commands/sdlc.md +0 -0
  53. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/commands/status.md +0 -0
  54. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/docs/agentic-patterns.md +0 -0
  55. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/docs/agents.md +0 -0
  56. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/docs/architecture.md +0 -0
  57. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/docs/capture-a-real-run.md +0 -0
  58. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/docs/coverage-audit.md +0 -0
  59. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/docs/eval-harness.md +0 -0
  60. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/docs/org-capabilities.md +0 -0
  61. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/docs/stack-skills/GAP-ANALYSIS.md +0 -0
  62. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/docs/stack-skills/README.md +0 -0
  63. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/docs/stack-skills/REPO-INVENTORY.md +0 -0
  64. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/hooks.json +0 -0
  65. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/audit-log.sh +0 -0
  66. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/capture-learnings.sh +0 -0
  67. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/guard-destructive-git.sh +0 -0
  68. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/guard-kubectl-delete.sh +0 -0
  69. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/guard-secrets.sh +0 -0
  70. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/lint-fix.sh +0 -0
  71. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/load-autonomy.sh +0 -0
  72. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/load-continuity.sh +0 -0
  73. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/load-learnings.sh +0 -0
  74. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/type-check.sh +0 -0
  75. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/validate-frontmatter.sh +0 -0
  76. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/validate-settings.sh +0 -0
  77. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/warn-large-edits.sh +0 -0
  78. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/warn-llm-io.sh +0 -0
  79. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/warn-missing-tests.sh +0 -0
  80. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/warn-sensitive-files.sh +0 -0
  81. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/hooks/scripts/warn-shared-modules.sh +0 -0
  82. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/agent-guardrails.md +0 -0
  83. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/agent-memory.md +0 -0
  84. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/agent-resilience.md +0 -0
  85. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/autonomy-levels.md +0 -0
  86. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/code-organization.md +0 -0
  87. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/continuity.md +0 -0
  88. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/design-patterns.md +0 -0
  89. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/devops-observability.md +0 -0
  90. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/documentation.md +0 -0
  91. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/evals.md +0 -0
  92. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/frontend-best-practices.md +0 -0
  93. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/goal-setting-and-monitoring.md +0 -0
  94. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/human-in-the-loop.md +0 -0
  95. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/linting-and-formatting.md +0 -0
  96. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/mandatory-workflow.md +0 -0
  97. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/model-tiers.md +0 -0
  98. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/quality-gates.md +0 -0
  99. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/rarv-cycle.md +0 -0
  100. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/reasoning-techniques.md +0 -0
  101. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/responsive-and-accessibility.md +0 -0
  102. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/risk-classification.md +0 -0
  103. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/testing.md +0 -0
  104. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/rules/tool-design.md +0 -0
  105. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/scripts/capture-sdlc-run.sh +0 -0
  106. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/scripts/check_docs_consistency.py +0 -0
  107. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/scripts/gen_hooks.py +0 -0
  108. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/scripts/init.sh +0 -0
  109. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/_references/accessibility-checklist.md +0 -0
  110. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/_references/orchestration-patterns.md +0 -0
  111. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/_references/performance-checklist.md +0 -0
  112. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/_references/security-checklist.md +0 -0
  113. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/_references/testing-patterns.md +0 -0
  114. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/accessibility-review/SKILL.md +0 -0
  115. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/alembic-migrations/README.md +0 -0
  116. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/alembic-migrations/SKILL.md +0 -0
  117. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/alembic-migrations/references/alembic-setup-and-env.md +0 -0
  118. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/alembic-migrations/references/async-and-multitenant-migrations.md +0 -0
  119. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/alembic-migrations/references/repo-evidence.md +0 -0
  120. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/alembic-migrations/references/troubleshooting-and-debugging.md +0 -0
  121. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/alembic-migrations/references/writing-migrations.md +0 -0
  122. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/anthropic-vertex-integration/README.md +0 -0
  123. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/anthropic-vertex-integration/SKILL.md +0 -0
  124. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/anthropic-vertex-integration/references/generate-helpers-and-retry.md +0 -0
  125. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/anthropic-vertex-integration/references/repo-evidence.md +0 -0
  126. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/anthropic-vertex-integration/references/vertex-client-and-auth.md +0 -0
  127. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/api-and-interface-design/SKILL.md +0 -0
  128. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/api-integration/SKILL.md +0 -0
  129. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/api-pagination-filtering-sorting/README.md +0 -0
  130. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/api-pagination-filtering-sorting/SKILL.md +0 -0
  131. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/api-pagination-filtering-sorting/references/query-params-conventions.md +0 -0
  132. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/api-pagination-filtering-sorting/references/repo-evidence.md +0 -0
  133. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/api-pagination-filtering-sorting/references/response-metadata.md +0 -0
  134. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/archive-sprint/SKILL.md +0 -0
  135. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/async-python-patterns/README.md +0 -0
  136. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/async-python-patterns/SKILL.md +0 -0
  137. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/async-python-patterns/references/async-boundaries.md +0 -0
  138. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/async-python-patterns/references/lifecycle-and-gather.md +0 -0
  139. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/async-python-patterns/references/repo-evidence.md +0 -0
  140. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/auth-and-rbac/README.md +0 -0
  141. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/auth-and-rbac/SKILL.md +0 -0
  142. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/auth-and-rbac/references/auth-dependencies.md +0 -0
  143. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/auth-and-rbac/references/rbac-and-permissions.md +0 -0
  144. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/auth-and-rbac/references/repo-evidence.md +0 -0
  145. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/auth-and-rbac/references/security-hardening.md +0 -0
  146. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/auth-and-rbac/references/tokens-and-hashing.md +0 -0
  147. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/backend-repo-architecture/README.md +0 -0
  148. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/backend-repo-architecture/SKILL.md +0 -0
  149. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/backend-repo-architecture/references/deployment-patterns.md +0 -0
  150. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/backend-repo-architecture/references/entrypoint-and-config.md +0 -0
  151. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/backend-repo-architecture/references/repo-evidence.md +0 -0
  152. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/backend-repo-architecture/references/structure-patterns.md +0 -0
  153. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/backend-repo-architecture/references/troubleshooting.md +0 -0
  154. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/backlog/SKILL.md +0 -0
  155. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/backlog/item-template.md +0 -0
  156. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/browser-testing-with-devtools/SKILL.md +0 -0
  157. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/bug-hunt/SKILL.md +0 -0
  158. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/ci-cd-and-automation/SKILL.md +0 -0
  159. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/code-simplification/SKILL.md +0 -0
  160. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/component-design/SKILL.md +0 -0
  161. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/configargparse-yaml-env-layering/README.md +0 -0
  162. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/configargparse-yaml-env-layering/SKILL.md +0 -0
  163. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/configargparse-yaml-env-layering/references/config-layering-anatomy.md +0 -0
  164. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/configargparse-yaml-env-layering/references/mode-dispatch-and-precedence.md +0 -0
  165. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/configargparse-yaml-env-layering/references/repo-evidence.md +0 -0
  166. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/consolidate-learnings/SKILL.md +0 -0
  167. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/containerization-and-deployment/README.md +0 -0
  168. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/containerization-and-deployment/SKILL.md +0 -0
  169. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/containerization-and-deployment/references/deployment-and-secrets.md +0 -0
  170. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/containerization-and-deployment/references/dockerfile-and-compose.md +0 -0
  171. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/containerization-and-deployment/references/entrypoint-and-modes.md +0 -0
  172. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/containerization-and-deployment/references/kerberos-kinit-bootstrap.md +0 -0
  173. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/containerization-and-deployment/references/makefile-dev-workflow.md +0 -0
  174. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/containerization-and-deployment/references/repo-evidence.md +0 -0
  175. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/context-engineering/SKILL.md +0 -0
  176. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/cron-and-scheduled-jobs/README.md +0 -0
  177. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/cron-and-scheduled-jobs/SKILL.md +0 -0
  178. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/cron-and-scheduled-jobs/references/choosing-and-operations.md +0 -0
  179. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/cron-and-scheduled-jobs/references/kubernetes-cronjob.md +0 -0
  180. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/cron-and-scheduled-jobs/references/repo-evidence.md +0 -0
  181. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/cron-and-scheduled-jobs/references/temporal-schedules.md +0 -0
  182. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/data-engineering-bigquery-gcs/README.md +0 -0
  183. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/data-engineering-bigquery-gcs/SKILL.md +0 -0
  184. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/data-engineering-bigquery-gcs/references/bigquery-advanced-patterns.md +0 -0
  185. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/data-engineering-bigquery-gcs/references/bigquery-gcs-io.md +0 -0
  186. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/data-engineering-bigquery-gcs/references/medallion-architecture.md +0 -0
  187. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/data-engineering-bigquery-gcs/references/repo-evidence.md +0 -0
  188. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/data-engineering-bigquery-gcs/references/temp-table-merge-pattern.md +0 -0
  189. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/debugging-and-error-recovery/SKILL.md +0 -0
  190. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/decision/SKILL.md +0 -0
  191. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/decision/adr-template.md +0 -0
  192. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/deprecation-and-migration/SKILL.md +0 -0
  193. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/design-patterns-and-conventions/README.md +0 -0
  194. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/design-patterns-and-conventions/SKILL.md +0 -0
  195. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/design-patterns-and-conventions/references/anti-patterns.md +0 -0
  196. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/design-patterns-and-conventions/references/naming-and-layout.md +0 -0
  197. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/design-patterns-and-conventions/references/patterns-catalog.md +0 -0
  198. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/design-patterns-and-conventions/references/repo-evidence.md +0 -0
  199. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/design-patterns-and-conventions/references/testing-patterns.md +0 -0
  200. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/design-patterns-and-conventions/references/troubleshooting.md +0 -0
  201. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/docker-compose/README.md +0 -0
  202. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/docker-compose/SKILL.md +0 -0
  203. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/docker-compose/references/compose-services-and-healthchecks.md +0 -0
  204. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/docker-compose/references/dev-vs-prod-variants.md +0 -0
  205. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/docker-compose/references/repo-evidence.md +0 -0
  206. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/docker-shared/README.md +0 -0
  207. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/docker-shared/SKILL.md +0 -0
  208. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/docker-shared/references/dockerignore-and-build-secrets.md +0 -0
  209. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/docker-shared/references/repo-evidence.md +0 -0
  210. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/docker-shared/references/shared-base-images.md +0 -0
  211. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/docker-shared/references/shared-compose-fragments.md +0 -0
  212. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/dockerfile-backend/README.md +0 -0
  213. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/dockerfile-backend/SKILL.md +0 -0
  214. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/dockerfile-backend/references/backend-dockerfile-anatomy.md +0 -0
  215. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/dockerfile-backend/references/repo-evidence.md +0 -0
  216. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/dockerfile-backend/references/system-deps-and-caching.md +0 -0
  217. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/dockerfile-frontend/README.md +0 -0
  218. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/dockerfile-frontend/SKILL.md +0 -0
  219. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/dockerfile-frontend/references/build-args-and-nginx.md +0 -0
  220. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/dockerfile-frontend/references/frontend-dockerfile-anatomy.md +0 -0
  221. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/dockerfile-frontend/references/repo-evidence.md +0 -0
  222. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/documentation-and-adrs/SKILL.md +0 -0
  223. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/doubt-driven-development/SKILL.md +0 -0
  224. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/edge-to-service-trust-boundary/README.md +0 -0
  225. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/edge-to-service-trust-boundary/SKILL.md +0 -0
  226. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/edge-to-service-trust-boundary/references/repo-evidence.md +0 -0
  227. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/edge-to-service-trust-boundary/references/trust-contract.md +0 -0
  228. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/execute/SKILL.md +0 -0
  229. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/fastapi-service-patterns/README.md +0 -0
  230. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/fastapi-service-patterns/SKILL.md +0 -0
  231. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/fastapi-service-patterns/references/api-versioning.md +0 -0
  232. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/fastapi-service-patterns/references/app-factory-and-lifespan.md +0 -0
  233. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/fastapi-service-patterns/references/custom-route-and-middleware.md +0 -0
  234. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/fastapi-service-patterns/references/dependency-injection.md +0 -0
  235. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/fastapi-service-patterns/references/model-and-serialization-patterns.md +0 -0
  236. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/fastapi-service-patterns/references/repo-evidence.md +0 -0
  237. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/file-export-and-reporting/README.md +0 -0
  238. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/file-export-and-reporting/SKILL.md +0 -0
  239. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/file-export-and-reporting/references/excel-generation.md +0 -0
  240. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/file-export-and-reporting/references/repo-evidence.md +0 -0
  241. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/file-export-and-reporting/references/streaming-and-downloads.md +0 -0
  242. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/frontend-repo-architecture/README.md +0 -0
  243. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/frontend-repo-architecture/SKILL.md +0 -0
  244. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/frontend-repo-architecture/references/api-layer-and-types.md +0 -0
  245. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/frontend-repo-architecture/references/divergences.md +0 -0
  246. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/frontend-repo-architecture/references/repo-evidence.md +0 -0
  247. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/frontend-repo-architecture/references/structure-and-state.md +0 -0
  248. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/frontend-repo-architecture/references/testing-patterns.md +0 -0
  249. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/frontend-ui-engineering/SKILL.md +0 -0
  250. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/gcp-cloud-run-github-actions/README.md +0 -0
  251. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/gcp-cloud-run-github-actions/SKILL.md +0 -0
  252. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/gcp-cloud-run-github-actions/references/cloud-run-deploy.md +0 -0
  253. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/gcp-cloud-run-github-actions/references/repo-evidence.md +0 -0
  254. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/gcp-cloud-run-github-actions/references/workflow-structure.md +0 -0
  255. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/gcs-file-storage-patterns/README.md +0 -0
  256. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/gcs-file-storage-patterns/SKILL.md +0 -0
  257. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/gcs-file-storage-patterns/references/client-and-uploads.md +0 -0
  258. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/gcs-file-storage-patterns/references/repo-evidence.md +0 -0
  259. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/gcs-file-storage-patterns/references/signed-urls-and-reads.md +0 -0
  260. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/git-workflow-and-versioning/SKILL.md +0 -0
  261. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/grafana-dashboards-and-alerts/README.md +0 -0
  262. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/grafana-dashboards-and-alerts/SKILL.md +0 -0
  263. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/grafana-dashboards-and-alerts/references/dashboard-json-and-templating.md +0 -0
  264. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/grafana-dashboards-and-alerts/references/provisioning-and-organization.md +0 -0
  265. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/grafana-dashboards-and-alerts/references/red-metrics-queries.md +0 -0
  266. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/grafana-dashboards-and-alerts/references/repo-evidence.md +0 -0
  267. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/grafana-dashboards-and-alerts/references/unified-alerting.md +0 -0
  268. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/graphql-patterns/README.md +0 -0
  269. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/graphql-patterns/SKILL.md +0 -0
  270. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/graphql-patterns/references/apollo-client-frontend.md +0 -0
  271. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/graphql-patterns/references/apollo-client-setup.md +0 -0
  272. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/graphql-patterns/references/repo-evidence.md +0 -0
  273. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/graphql-patterns/references/strawberry-backend.md +0 -0
  274. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/graphql-patterns/references/when-to-use-graphql.md +0 -0
  275. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/idea-refine/SKILL.md +0 -0
  276. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/idea-refine/examples.md +0 -0
  277. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/idea-refine/frameworks.md +0 -0
  278. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/idea-refine/refinement-criteria.md +0 -0
  279. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/idea-refine/scripts/idea-refine.sh +0 -0
  280. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/incident-postmortem/SKILL.md +0 -0
  281. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/incremental-implementation/SKILL.md +0 -0
  282. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/interview-me/SKILL.md +0 -0
  283. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kafka-config-driven/README.md +0 -0
  284. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kafka-config-driven/SKILL.md +0 -0
  285. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kafka-config-driven/references/config-and-sasl-kerberos.md +0 -0
  286. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kafka-config-driven/references/consumer-producer-patterns.md +0 -0
  287. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kafka-config-driven/references/repo-evidence.md +0 -0
  288. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kafka-config-driven/references/troubleshooting-and-patterns.md +0 -0
  289. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubectl-operations/README.md +0 -0
  290. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubectl-operations/SKILL.md +0 -0
  291. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubectl-operations/references/command-reference.md +0 -0
  292. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubectl-operations/references/context-namespace-rbac.md +0 -0
  293. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubectl-operations/references/debugging-playbooks.md +0 -0
  294. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubectl-operations/references/output-formats-and-selectors.md +0 -0
  295. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubectl-operations/references/repo-evidence.md +0 -0
  296. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubernetes-workload-hardening/README.md +0 -0
  297. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubernetes-workload-hardening/SKILL.md +0 -0
  298. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubernetes-workload-hardening/references/networkpolicy-and-rbac.md +0 -0
  299. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubernetes-workload-hardening/references/repo-evidence.md +0 -0
  300. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/kubernetes-workload-hardening/references/securitycontext-and-podsecurity.md +0 -0
  301. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/langfuse-llm-tracing/README.md +0 -0
  302. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/langfuse-llm-tracing/SKILL.md +0 -0
  303. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/langfuse-llm-tracing/references/langfuse-client-and-tracing.md +0 -0
  304. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/langfuse-llm-tracing/references/python-and-typescript.md +0 -0
  305. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/langfuse-llm-tracing/references/repo-evidence.md +0 -0
  306. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/load-testing/SKILL.md +0 -0
  307. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/manual-test/SKILL.md +0 -0
  308. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/modernization-and-migration/README.md +0 -0
  309. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/modernization-and-migration/SKILL.md +0 -0
  310. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/modernization-and-migration/references/migration-best-practices.md +0 -0
  311. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/modernization-and-migration/references/pydantic-v1-to-v2.md +0 -0
  312. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/modernization-and-migration/references/repo-evidence.md +0 -0
  313. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/modernization-and-migration/references/shared-internal-library.md +0 -0
  314. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/modernization-and-migration/references/sqlalchemy-14-to-20.md +0 -0
  315. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/multi-tenancy-patterns/README.md +0 -0
  316. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/multi-tenancy-patterns/SKILL.md +0 -0
  317. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/multi-tenancy-patterns/references/caching-patterns.md +0 -0
  318. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/multi-tenancy-patterns/references/isolation-strategies.md +0 -0
  319. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/multi-tenancy-patterns/references/repo-evidence.md +0 -0
  320. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/multi-tenancy-patterns/references/tenant-resolution.md +0 -0
  321. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/node-express-service/README.md +0 -0
  322. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/node-express-service/SKILL.md +0 -0
  323. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/node-express-service/references/app-factory-and-mode-dispatch.md +0 -0
  324. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/node-express-service/references/config-and-module-alias.md +0 -0
  325. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/node-express-service/references/middleware-patterns.md +0 -0
  326. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/node-express-service/references/repo-evidence.md +0 -0
  327. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/node-objection-knex/README.md +0 -0
  328. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/node-objection-knex/SKILL.md +0 -0
  329. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/node-objection-knex/references/migrations-and-validation.md +0 -0
  330. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/node-objection-knex/references/objection-model-and-knex.md +0 -0
  331. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/node-objection-knex/references/repo-evidence.md +0 -0
  332. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/notifications-and-messaging/README.md +0 -0
  333. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/notifications-and-messaging/SKILL.md +0 -0
  334. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/notifications-and-messaging/references/provider-abstraction.md +0 -0
  335. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/notifications-and-messaging/references/repo-evidence.md +0 -0
  336. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/notifications-and-messaging/references/templates-and-fallback.md +0 -0
  337. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/observability-and-logging/README.md +0 -0
  338. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/observability-and-logging/SKILL.md +0 -0
  339. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/observability-and-logging/references/health-and-readiness.md +0 -0
  340. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/observability-and-logging/references/logging-and-structlog.md +0 -0
  341. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/observability-and-logging/references/outbound-metrics-and-multi-mode.md +0 -0
  342. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/observability-and-logging/references/pii-redaction.md +0 -0
  343. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/observability-and-logging/references/repo-evidence.md +0 -0
  344. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/observability-and-logging/references/tracing-and-metrics.md +0 -0
  345. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/performance-optimization/SKILL.md +0 -0
  346. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/planning-and-task-breakdown/SKILL.md +0 -0
  347. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/playwright-verification/SKILL.md +0 -0
  348. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/pydantic-schema-patterns/README.md +0 -0
  349. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/pydantic-schema-patterns/SKILL.md +0 -0
  350. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/pydantic-schema-patterns/references/repo-evidence.md +0 -0
  351. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/pydantic-schema-patterns/references/settings-and-validation.md +0 -0
  352. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/pydantic-schema-patterns/references/troubleshooting-and-common-errors.md +0 -0
  353. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/pydantic-schema-patterns/references/v1-vs-v2.md +0 -0
  354. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/python-dao-and-database/README.md +0 -0
  355. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/python-dao-and-database/SKILL.md +0 -0
  356. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/python-dao-and-database/references/advanced-query-patterns.md +0 -0
  357. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/python-dao-and-database/references/basedao-and-sessions.md +0 -0
  358. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/python-dao-and-database/references/mongodb-advanced.md +0 -0
  359. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/python-dao-and-database/references/other-db-mongodb.md +0 -0
  360. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/python-dao-and-database/references/repo-evidence.md +0 -0
  361. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/python-dao-and-database/references/sqlalchemy-1x-vs-2x.md +0 -0
  362. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/radix-tailwind-component-patterns/README.md +0 -0
  363. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/radix-tailwind-component-patterns/SKILL.md +0 -0
  364. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/radix-tailwind-component-patterns/references/radix-primitives-and-variants.md +0 -0
  365. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/radix-tailwind-component-patterns/references/repo-evidence.md +0 -0
  366. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/radix-tailwind-component-patterns/references/tailwind-theme-and-cn.md +0 -0
  367. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/react-hook-form-zod-patterns/README.md +0 -0
  368. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/react-hook-form-zod-patterns/SKILL.md +0 -0
  369. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/react-hook-form-zod-patterns/references/form-setup-and-zod.md +0 -0
  370. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/react-hook-form-zod-patterns/references/multi-step-and-modes.md +0 -0
  371. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/react-hook-form-zod-patterns/references/repo-evidence.md +0 -0
  372. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/redis-caching-patterns/README.md +0 -0
  373. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/redis-caching-patterns/SKILL.md +0 -0
  374. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/redis-caching-patterns/references/cache-manager-and-fallback.md +0 -0
  375. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/redis-caching-patterns/references/namespacing-and-invalidation.md +0 -0
  376. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/redis-caching-patterns/references/repo-evidence.md +0 -0
  377. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/refresh-docs/SKILL.md +0 -0
  378. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/remember/SKILL.md +0 -0
  379. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/scope/SKILL.md +0 -0
  380. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/scope/scope-template.md +0 -0
  381. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/sdlc/SKILL.md +0 -0
  382. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/security-verification/SKILL.md +0 -0
  383. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/shannon-ai-pentest/README.md +0 -0
  384. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/shannon-ai-pentest/SKILL.md +0 -0
  385. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/shannon-ai-pentest/references/operating-guide.md +0 -0
  386. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/shipping-and-launch/SKILL.md +0 -0
  387. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/simplification-debt/SKILL.md +0 -0
  388. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/smoke-test/SKILL.md +0 -0
  389. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/source-driven-development/SKILL.md +0 -0
  390. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/spec-driven-development/SKILL.md +0 -0
  391. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/sprint/SKILL.md +0 -0
  392. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/sprint/sprint-template.md +0 -0
  393. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/tanstack-react-query-patterns/README.md +0 -0
  394. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/tanstack-react-query-patterns/SKILL.md +0 -0
  395. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/tanstack-react-query-patterns/references/mutations-and-cache.md +0 -0
  396. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/tanstack-react-query-patterns/references/query-keys-and-hooks.md +0 -0
  397. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/tanstack-react-query-patterns/references/repo-evidence.md +0 -0
  398. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/task-tracker-sync/SKILL.md +0 -0
  399. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-config-driven/README.md +0 -0
  400. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-config-driven/SKILL.md +0 -0
  401. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-config-driven/references/config-and-retry-idempotency.md +0 -0
  402. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-config-driven/references/dag-dsl-interpreter.md +0 -0
  403. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-config-driven/references/repo-evidence.md +0 -0
  404. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-config-driven/references/schedule-registration.md +0 -0
  405. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-config-driven/references/schedules-and-cron.md +0 -0
  406. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-config-driven/references/worker-workflow-activity-patterns.md +0 -0
  407. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-developer/README.md +0 -0
  408. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-developer/SKILL.md +0 -0
  409. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-developer/references/cli.md +0 -0
  410. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-developer/references/determinism.md +0 -0
  411. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-developer/references/gotchas.md +0 -0
  412. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-developer/references/languages.md +0 -0
  413. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-developer/references/testing.md +0 -0
  414. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/temporal-developer/references/versioning.md +0 -0
  415. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/test-driven-development/SKILL.md +0 -0
  416. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/test-plan-review/SKILL.md +0 -0
  417. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/testing-conventions/README.md +0 -0
  418. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/testing-conventions/SKILL.md +0 -0
  419. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/testing-conventions/references/async-and-mocking.md +0 -0
  420. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/testing-conventions/references/coverage-gap-and-recommendations.md +0 -0
  421. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/testing-conventions/references/github-actions-test-orchestration.md +0 -0
  422. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/testing-conventions/references/pytest-and-fixtures.md +0 -0
  423. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/testing-conventions/references/pytest-asyncio-modes.md +0 -0
  424. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/testing-conventions/references/repo-evidence.md +0 -0
  425. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/testing-conventions/references/security-regression-tests.md +0 -0
  426. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/testing-conventions/references/vitest-frontend-testing.md +0 -0
  427. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/threat-model/SKILL.md +0 -0
  428. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/triage/SKILL.md +0 -0
  429. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/ui-ux-design/SKILL.md +0 -0
  430. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/unit-test/SKILL.md +0 -0
  431. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/using-agent-skills/SKILL.md +0 -0
  432. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/vitest-rtl-msw-patterns/README.md +0 -0
  433. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/vitest-rtl-msw-patterns/SKILL.md +0 -0
  434. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/vitest-rtl-msw-patterns/references/msw-and-contract-tests.md +0 -0
  435. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/vitest-rtl-msw-patterns/references/repo-evidence.md +0 -0
  436. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/vitest-rtl-msw-patterns/references/vitest-rtl-setup.md +0 -0
  437. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/zap-vapt-scanning/README.md +0 -0
  438. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/zap-vapt-scanning/SKILL.md +0 -0
  439. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/zap-vapt-scanning/references/operating-guide.md +0 -0
  440. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/zap-vapt-scanning/scripts/endpoints.example.txt +0 -0
  441. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/zap-vapt-scanning/scripts/requirements.txt +0 -0
  442. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/zap-vapt-scanning/scripts/zap_vapt.py +0 -0
  443. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/zustand-state-patterns/README.md +0 -0
  444. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/zustand-state-patterns/SKILL.md +0 -0
  445. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/zustand-state-patterns/references/async-polling-and-persistence.md +0 -0
  446. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/zustand-state-patterns/references/repo-evidence.md +0 -0
  447. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/skills/zustand-state-patterns/references/store-structure-and-selectors.md +0 -0
  448. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/__main__.py +0 -0
  449. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/catalog.py +0 -0
  450. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/cli.py +0 -0
  451. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/hooks.py +0 -0
  452. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/models.py +0 -0
  453. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/pipeline.py +0 -0
  454. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/prompts.py +0 -0
  455. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/render.py +0 -0
  456. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/scaffold.py +0 -0
  457. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/upgrader.py +0 -0
  458. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/src/claude_kit/validator.py +0 -0
  459. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/CLAUDE.md +0 -0
  460. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/CLAUDE.stack.md.tmpl +0 -0
  461. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/CONTINUITY.template.md +0 -0
  462. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/README.claude-sdlc.md.tmpl +0 -0
  463. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/agent-memory/MEMORY.md +0 -0
  464. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/agent-memory/api/.gitkeep +0 -0
  465. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/agent-memory/architecture/.gitkeep +0 -0
  466. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/agent-memory/debugging/.gitkeep +0 -0
  467. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/agent-memory/gotchas/.gitkeep +0 -0
  468. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/agent-memory/patterns/.gitkeep +0 -0
  469. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/agent-memory/performance/.gitkeep +0 -0
  470. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/artifacts/adr.md +0 -0
  471. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/artifacts/api-change-report.md +0 -0
  472. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/artifacts/change-proposal.md +0 -0
  473. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/artifacts/feature-spec.md +0 -0
  474. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/artifacts/release-plan.md +0 -0
  475. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/artifacts/runbook.md +0 -0
  476. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/artifacts/security-review.md +0 -0
  477. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/artifacts/test-plan.md +0 -0
  478. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/README.md +0 -0
  479. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/agents/data-workflow-agent.md +0 -0
  480. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/agents/founder-prototype-agent.md +0 -0
  481. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/agents/internal-tools-builder.md +0 -0
  482. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/agents/pm-copilot.md +0 -0
  483. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/agents/staff-pm-reviewer.md +0 -0
  484. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/agents/support-ticket-engineer.md +0 -0
  485. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/devops-and-release/README.md +0 -0
  486. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/devops-and-release/pack.yaml +0 -0
  487. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/engineering-core/README.md +0 -0
  488. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/engineering-core/pack.yaml +0 -0
  489. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/non-engineer-builder/README.md +0 -0
  490. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/non-engineer-builder/pack.yaml +0 -0
  491. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/onboarding-and-docs/README.md +0 -0
  492. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/onboarding-and-docs/pack.yaml +0 -0
  493. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/product-to-code/README.md +0 -0
  494. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/product-to-code/pack.yaml +0 -0
  495. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/quality-and-review/README.md +0 -0
  496. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/quality-and-review/pack.yaml +0 -0
  497. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/security-and-compliance/README.md +0 -0
  498. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/packs/security-and-compliance/pack.yaml +0 -0
  499. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/rules/ai-working-agreement.md +0 -0
  500. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/rules/ambiguity-resolution.md +0 -0
  501. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/rules/branch-and-pr-policy.md +0 -0
  502. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/rules/compliance-policy.md +0 -0
  503. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/rules/non-engineer-safe-coding.md +0 -0
  504. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/rules/pii-policy.md +0 -0
  505. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/rules/production-data-policy.md +0 -0
  506. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/rules/prompt-to-task-conversion.md +0 -0
  507. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/rules/prototype-boundaries.md +0 -0
  508. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/rules/secrets-policy.md +0 -0
  509. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/skills/customer-issue-to-fix/SKILL.md +0 -0
  510. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/skills/feature-from-idea/SKILL.md +0 -0
  511. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/skills/prompt-to-safe-task/SKILL.md +0 -0
  512. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/skills/prototype-to-production/SKILL.md +0 -0
  513. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/skills/repo-onboarding/SKILL.md +0 -0
  514. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/skills/review-scope/SKILL.md +0 -0
  515. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/skills/review-sprint/SKILL.md +0 -0
  516. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/skills/review-sprint-plan/SKILL.md +0 -0
  517. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/org/skills/review-ux-flow/SKILL.md +0 -0
  518. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/settings.json +0 -0
  519. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/backend/go/net-http/rules/go-patterns.md +0 -0
  520. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/backend/python/fastapi/rules/fastapi-patterns.md +0 -0
  521. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/db/mongodb/agents/migration-specialist.md +0 -0
  522. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/db/mongodb/agents/mongodb-specialist.md +0 -0
  523. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/db/mongodb/rules/mongodb-patterns.md +0 -0
  524. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/db/postgres/agents/db-performance-reviewer.md +0 -0
  525. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/db/postgres/agents/migration-specialist.md +0 -0
  526. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/db/postgres/agents/postgres-specialist.md +0 -0
  527. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/db/postgres/rules/database-performance.md +0 -0
  528. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/db/postgres/rules/postgres-patterns.md +0 -0
  529. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/frontend/react/rules/design-system-compliance.md +0 -0
  530. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/frontend/react/rules/mobile-design-guidelines.md +0 -0
  531. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/frontend/react/rules/react-patterns.md +0 -0
  532. {claude_code_kit-0.38.0 → claude_code_kit-0.40.0}/templates/stacks/frontend/react/rules/ui-design-system.md +0 -0
  533. {claude_code_kit-0.38.0 → claude_code_kit-0.40.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.38.0",
13
+ "version": "0.40.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.38.0",
3
+ "version": "0.40.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,41 @@ 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.40.0] — 2026-06-26
8
+
9
+ **Review grounding + addition scrutiny** (PR 2 of 4 from the MIT `athola/claude-night-market` audit;
10
+ re-derived stack-agnostic, count-neutral — both are edits to existing skills).
11
+
12
+ - **`skills/code-review-and-quality`** — Step 4 now requires every finding to be **grounded**: a
13
+ `file:line` Location + a verbatim Anchor snippet, re-verified before reporting; a finding whose
14
+ location/anchor doesn't resolve is dropped or labelled `UNVERIFIED`. Stops AI reviewers from
15
+ hallucinating locations/issues; the review-level form of the §2.5 evidence rule in `quality-gates.md`.
16
+ - **`skills/over-engineering-review`** — new **Burden-of-Proof Scrutiny** section that inverts the
17
+ default for *additions* in diff mode: 5 scrutiny questions (priority/criticality/simplicity/evidence/
18
+ consequence), 6 AI-additive anti-patterns (wheel reinvention, hallucinated issue, test manipulation,
19
+ complexity creep, priority deviation, gold plating), a justified/needs-evidence/unjustified verdict,
20
+ and the subtractive question. Collapses the upstream additive-bias-defense + justify + bloat-detector
21
+ ideas into the kit's existing complexity-review skill.
22
+
23
+ ## [0.39.0] — 2026-06-26
24
+
25
+ **Supply-chain defense** (first of four adoptions from the MIT [`athola/claude-night-market`](https://github.com/athola/claude-night-market);
26
+ re-derived stack-agnostic, nothing vendored). Closes the pre-install gap between "should we add a dep"
27
+ (§2a.5 / `library-review`) and "are our installed deps vulnerable" (`dependency-scanner`).
28
+
29
+ - **`skills/dependency-verification/`** (new core skill) — pre-install verification that a package
30
+ **name** actually exists in its registry (PyPI/npm/crates.io/…) and isn't a typosquat/slopsquat,
31
+ before any install command or manifest edit. Defends against LLM-hallucinated package names
32
+ (~5–22% of model-suggested packages don't exist; the recurring names get pre-registered with
33
+ malware). Three states — exists / nonexistent / unverified — and **never fails closed on a network
34
+ error**. Cross-linked into the supply-chain layer chain (§2a.5 → library-review → this → install →
35
+ dependency-scanner).
36
+ - **`agents/dependency-scanner.md`** gains a **Supply-Chain Integrity mode** (post-resolve):
37
+ lockfile/hash integrity, artifact + lifecycle-script scanning, known-bad-versions cross-check, and
38
+ provenance signals — beyond the existing CVE audit.
39
+ - **`skills/security-and-hardening`** + **`skills/library-review`** updated to point at the new layers.
40
+ - Counts: **98 → 99** total skills (**52 → 53** core; stack-collection unchanged at 46).
41
+
7
42
  ## [0.38.0] — 2026-06-26
8
43
 
9
44
  **New `library-review` core skill + a property-based-testing note** (two genuinely-new ideas
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-code-kit
3
- Version: 0.38.0
3
+ Version: 0.40.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
@@ -84,7 +84,7 @@ Quick start) for the full breakdown of any row.
84
84
  | 🔁 **Pipeline & quality gates** | Gate-enforced progression (zero open Critical/High/Medium to advance), per-profile gate sets, a fast-track for small changes, and an anti-sycophancy `devils-advocate` pass |
85
85
  | 🤖 **Agent roster** | **28** tiered agents + per-database overlays + **6** org personas, led by an Orchestrator that never writes code |
86
86
  | 🔍 **Self-verification & review** | RARV green-Verify (real commands, not imagined), blind parallel review, and read-only risk classification |
87
- | 📐 **Rules & skills** | **23** stack-agnostic core rules (incl. 8 agent-operation rules) + **98** context-activated skills (52 core + 46 stack-collection) |
87
+ | 📐 **Rules & skills** | **23** stack-agnostic core rules (incl. 8 agent-operation rules) + **99** context-activated skills (53 core + 46 stack-collection) |
88
88
  | 🧱 **Stacks & overlays** | Stack-agnostic core + **10** overlay rule sets (React · FastAPI · Go · Postgres · Mongo) wired to your exact commands, incl. a full React design system |
89
89
  | 🎚️ **Profiles, scopes & org** | **3** rigor profiles · **3** scopes · **5** autonomy levels · **7** org packs + **10** policy rules |
90
90
  | 🧠 **Memory & learning** | Working memory across context compaction + a cost-aware learnings loop (`capture_mode`) so the same mistake isn't repeated |
@@ -281,7 +281,7 @@ need.
281
281
  - **23 stack-agnostic core rules** in [`rules/`](rules/) — `mandatory-workflow`, `quality-gates`,
282
282
  `rarv-cycle`, `continuity`, plus eight agent-operation rules and `autonomy-levels` +
283
283
  `risk-classification` (see [`docs/agentic-patterns.md`](docs/agentic-patterns.md)).
284
- - **98 on-demand skills** in [`skills/`](skills/) (52 core + 46 stack-collection) — spec-driven dev, planning, TDD, debugging, code
284
+ - **99 on-demand skills** in [`skills/`](skills/) (53 core + 46 stack-collection) — spec-driven dev, planning, TDD, debugging, code
285
285
  review, threat modeling, and more — activated by context and led by the `sdlc` entrypoint.
286
286
  - **Profile-subset install** — each profile installs a strict subset of agents, skills, hooks, and
287
287
  rules (`lean ⊂ standard ⊂ enterprise`), from fast track to full audit.
@@ -437,7 +437,7 @@ owned gates, and the rule that **no gate passes on an unproven verdict**.
437
437
  | **[wshobson/agents](https://github.com/wshobson/agents)** & similar agent collections | Large libraries of individual subagent prompts you pick from | A **smaller, opinionated set wired into a sequenced pipeline with owned quality gates** — agents aren't a menu, they're stages that hand off and block on each other. Adopt-by-reuse, not by accumulation. |
438
438
  | **[GitHub spec-kit](https://github.com/github/spec-kit)** | A spec-driven workflow (constitution → spec → tasks → analyze) | The same coverage-gate idea (the `story-planner` 1f gate + `task-tracker-sync`) **absorbed into a broader** lifecycle that also covers review, security, build, test, release, and observability gates. Complementary, wider scope. |
439
439
  | **claude-flow / multi-agent runtimes** | Runtime orchestrators that *execute* swarms of agents | **Portable configuration**, not a running process — the orchestration is described in rules the host (Claude Code) executes. No daemon, no lock-in, no app code. |
440
- | **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 23 rules, 28 agents, 98 skills, gates, and hooks, kept **upgradeable** (`claude-kit upgrade` preserves your edits via owner + checksum). |
440
+ | **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 23 rules, 28 agents, 99 skills, gates, and hooks, kept **upgradeable** (`claude-kit upgrade` preserves your edits via owner + checksum). |
441
441
 
442
442
  **Choose claude-kit when** you want a consistent, reviewable, **gate-enforced** autonomous-SDLC setup
443
443
  that's the same across every repo and stack, installs in seconds, ships nothing you have to run, and
@@ -54,7 +54,7 @@ Quick start) for the full breakdown of any row.
54
54
  | 🔁 **Pipeline & quality gates** | Gate-enforced progression (zero open Critical/High/Medium to advance), per-profile gate sets, a fast-track for small changes, and an anti-sycophancy `devils-advocate` pass |
55
55
  | 🤖 **Agent roster** | **28** tiered agents + per-database overlays + **6** org personas, led by an Orchestrator that never writes code |
56
56
  | 🔍 **Self-verification & review** | RARV green-Verify (real commands, not imagined), blind parallel review, and read-only risk classification |
57
- | 📐 **Rules & skills** | **23** stack-agnostic core rules (incl. 8 agent-operation rules) + **98** context-activated skills (52 core + 46 stack-collection) |
57
+ | 📐 **Rules & skills** | **23** stack-agnostic core rules (incl. 8 agent-operation rules) + **99** context-activated skills (53 core + 46 stack-collection) |
58
58
  | 🧱 **Stacks & overlays** | Stack-agnostic core + **10** overlay rule sets (React · FastAPI · Go · Postgres · Mongo) wired to your exact commands, incl. a full React design system |
59
59
  | 🎚️ **Profiles, scopes & org** | **3** rigor profiles · **3** scopes · **5** autonomy levels · **7** org packs + **10** policy rules |
60
60
  | 🧠 **Memory & learning** | Working memory across context compaction + a cost-aware learnings loop (`capture_mode`) so the same mistake isn't repeated |
@@ -251,7 +251,7 @@ need.
251
251
  - **23 stack-agnostic core rules** in [`rules/`](rules/) — `mandatory-workflow`, `quality-gates`,
252
252
  `rarv-cycle`, `continuity`, plus eight agent-operation rules and `autonomy-levels` +
253
253
  `risk-classification` (see [`docs/agentic-patterns.md`](docs/agentic-patterns.md)).
254
- - **98 on-demand skills** in [`skills/`](skills/) (52 core + 46 stack-collection) — spec-driven dev, planning, TDD, debugging, code
254
+ - **99 on-demand skills** in [`skills/`](skills/) (53 core + 46 stack-collection) — spec-driven dev, planning, TDD, debugging, code
255
255
  review, threat modeling, and more — activated by context and led by the `sdlc` entrypoint.
256
256
  - **Profile-subset install** — each profile installs a strict subset of agents, skills, hooks, and
257
257
  rules (`lean ⊂ standard ⊂ enterprise`), from fast track to full audit.
@@ -407,7 +407,7 @@ owned gates, and the rule that **no gate passes on an unproven verdict**.
407
407
  | **[wshobson/agents](https://github.com/wshobson/agents)** & similar agent collections | Large libraries of individual subagent prompts you pick from | A **smaller, opinionated set wired into a sequenced pipeline with owned quality gates** — agents aren't a menu, they're stages that hand off and block on each other. Adopt-by-reuse, not by accumulation. |
408
408
  | **[GitHub spec-kit](https://github.com/github/spec-kit)** | A spec-driven workflow (constitution → spec → tasks → analyze) | The same coverage-gate idea (the `story-planner` 1f gate + `task-tracker-sync`) **absorbed into a broader** lifecycle that also covers review, security, build, test, release, and observability gates. Complementary, wider scope. |
409
409
  | **claude-flow / multi-agent runtimes** | Runtime orchestrators that *execute* swarms of agents | **Portable configuration**, not a running process — the orchestration is described in rules the host (Claude Code) executes. No daemon, no lock-in, no app code. |
410
- | **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 23 rules, 28 agents, 98 skills, gates, and hooks, kept **upgradeable** (`claude-kit upgrade` preserves your edits via owner + checksum). |
410
+ | **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 23 rules, 28 agents, 99 skills, gates, and hooks, kept **upgradeable** (`claude-kit upgrade` preserves your edits via owner + checksum). |
411
411
 
412
412
  **Choose claude-kit when** you want a consistent, reviewable, **gate-enforced** autonomous-SDLC setup
413
413
  that's the same across every repo and stack, installs in seconds, ships nothing you have to run, and
@@ -83,6 +83,29 @@ Backend deps: {N} · Frontend deps: {N} · Vulns: Critical {N} / High {N} / Medi
83
83
 
84
84
  Return counts by severity + the finding table to `security-reviewer`. If a CVE has no patch, recommend a workaround or replacement and mark it for an allowlist-with-review-date decision (route to the human via the Orchestrator). Log durable findings to `.claude/CONTINUITY.md`.
85
85
 
86
+ ## SUPPLY-CHAIN INTEGRITY MODE (beyond CVEs)
87
+
88
+ CVE scanning catches *known-vulnerable* versions; it does not catch a *compromised* or *impersonated*
89
+ package. When auditing for a supply-chain advisory, during incident response, or before a release, add
90
+ these checks (still report-only — never modify lockfiles):
91
+
92
+ - **Lockfile / hash integrity.** Confirm the lockfile pins integrity hashes and that resolved
93
+ artifacts match them (`pip`'s `--require-hashes`, `npm ci` against `package-lock.json`,
94
+ `cargo`'s `Cargo.lock`, `go.sum`). Flag lockfile drift (manifest and lockfile disagree) and any
95
+ dependency resolved from an unexpected source/registry.
96
+ - **Artifact scan.** Inspect what an install would actually run: post-install/lifecycle scripts
97
+ (`package.json` `postinstall`, `pyproject`/`setup.py` build hooks), and suspicious payload files
98
+ (e.g. `.pth` files that execute on interpreter start, obfuscated blobs). Report; don't execute.
99
+ - **Known-bad versions.** Cross-check resolved versions against a known-bad/compromised-version list
100
+ for the project's ecosystem (maintain the project's own list and the public advisory feeds). A
101
+ matched version is an **auto-Critical** finding.
102
+ - **Provenance signals.** Prefer packages with signed releases / 2FA-published maintainers; flag a
103
+ dependency that recently changed maintainer or publishing key.
104
+
105
+ This is the **post-resolve** half of the kit's supply-chain story; the **pre-install** half (verifying
106
+ a package *name* exists and isn't a typosquat/slopsquat, before it ever enters a lockfile) is the
107
+ `.claude/skills/dependency-verification` skill. Cite it; don't restate it.
108
+
86
109
  ## CADENCE MODE (whole-project maintenance pass)
87
110
 
88
111
  The same audit can be dispatched **standalone** — outside any one feature — as a recurring
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "claude-code-kit"
7
- version = "0.38.0"
7
+ version = "0.40.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"
@@ -181,6 +181,23 @@ Label every comment with its severity so the author knows what's required vs opt
181
181
 
182
182
  This prevents authors from treating all feedback as mandatory and wasting time on optional suggestions.
183
183
 
184
+ #### Every finding must be grounded
185
+
186
+ A review finding is a **claim about a specific place in the code**, so it must be falsifiable — a
187
+ citation a second pass (human or agent) can mechanically re-read and confirm. AI reviewers in
188
+ particular hallucinate locations and issues; grounding is what stops that.
189
+
190
+ Every finding carries:
191
+
192
+ - **Location** — `file:line` (a concrete, current line, not "somewhere in the auth module").
193
+ - **Anchor** — a short *verbatim* snippet copied from that line, so the citation can be re-verified by
194
+ matching text even if line numbers shift.
195
+
196
+ Verify before reporting: re-read each cited `file:line` and confirm the anchor text is actually
197
+ present. A finding whose location or anchor doesn't resolve is **dropped or labelled `UNVERIFIED`** —
198
+ it never enters the verdict. This is the review-level form of the evidence rule in
199
+ `.claude/rules/quality-gates.md` (§2.5): an uncited finding is a TODO, not a finding.
200
+
184
201
  ### Step 5: Verify the Verification
185
202
 
186
203
  Check the author's verification story:
@@ -0,0 +1,101 @@
1
+ ---
2
+ name: dependency-verification
3
+ description: Pre-install verification that a package NAME actually exists in its registry (PyPI/npm/crates.io/…) and is not a typosquat/slopsquat, before you run an install command or write it into a manifest. Defends against LLM-hallucinated package names — a measured 5–22% of model-suggested packages do not exist, and attackers pre-register the names that recur. Use before adding, installing, or recommending any dependency. Do NOT use to judge whether a real package is worth adopting (use library-review) or to audit ALREADY-installed dependencies for known CVEs (use the dependency-scanner agent) — this is the narrower "does this name even exist" check that runs first.
4
+ ---
5
+
6
+ # Dependency Verification (pre-install name check)
7
+
8
+ > A package name the model produced is a **claim**, not a fact. The registry is the fact. Verify
9
+ > before you install. Adapted (stack-agnostic) from the MIT-licensed
10
+ > [`athola/claude-night-market`](https://github.com/athola/claude-night-market) `dependency-verification` skill.
11
+
12
+ ## Why this exists
13
+
14
+ Code-generating models recommend packages that **do not exist** at a measured rate of ~5% (commercial
15
+ models) to ~22% (open models), and ~58% of the hallucinated names *recur* across reruns — so an
16
+ attacker can predict a commonly-hallucinated name, register the empty slot, and ship malware. This is
17
+ **"slopsquatting"** (the LLM-era cousin of typosquatting). A proof-of-concept package registered
18
+ against a frequently-hallucinated name drew tens of thousands of installs. The rate does *not* fall to
19
+ zero with a better model. The defense is cheap: **confirm the name exists in its registry before you
20
+ install or recommend it.**
21
+
22
+ ## When to use
23
+
24
+ Before any of:
25
+ - running an install command — `pip install`, `uv add`, `npm install`, `pnpm add`, `yarn add`,
26
+ `cargo add`, `go get`, `poetry add`, `gem install`, `composer require`, …
27
+ - writing a dependency into a manifest — `pyproject.toml`, `requirements.txt`, `package.json`,
28
+ `Cargo.toml`, `go.mod`, `Gemfile`, …
29
+ - **recommending a package to the user in prose** (a hallucinated recommendation is still a defect).
30
+
31
+ ## The two failure signals
32
+
33
+ A candidate fails verification on **either**:
34
+
35
+ 1. **Nonexistent** — the name is absent from its registry (e.g. HTTP 404). Likely a hallucination.
36
+ Do not install; find the correct name, or confirm the package was renamed/removed.
37
+ 2. **Typosquat / slopsquat** — the name is one or two edits from a popular package (`reqeusts` vs
38
+ `requests`, `python-dateutil` vs a look-alike). Either a typo or deliberate impersonation —
39
+ restate the exact name you intend and confirm before proceeding.
40
+
41
+ ## Three states (never fail closed on a network error)
42
+
43
+ | State | Registry result | Action |
44
+ |-------|-----------------|--------|
45
+ | **exists** | 200 / found | pass |
46
+ | **nonexistent** | 404 / not found | block — likely hallucination |
47
+ | **unverified** | timeout / rate-limit / offline / non-404 error | **warn only, never block** — don't fail closed on a network problem |
48
+
49
+ ## Verification procedure
50
+
51
+ 1. Extract the exact names the command or manifest edit would fetch (strip version specifiers/flags).
52
+ 2. Confirm existence in the ecosystem's registry. A common, well-known package needn't be checked;
53
+ verify anything unfamiliar, freshly-suggested, or near a popular name.
54
+ 3. For any name close to a popular package, restate the intended name and confirm.
55
+ 4. Capture the check as evidence (registry URL + HTTP status) when the install lands in a PR.
56
+
57
+ ### Registry existence endpoints
58
+
59
+ | Ecosystem | URL (`{name}` = package) | Exists / Absent |
60
+ |-----------|--------------------------|------------------|
61
+ | PyPI | `https://pypi.org/pypi/{name}/json` | 200 / 404 |
62
+ | npm | `https://registry.npmjs.org/{name}` | 200 / 404 |
63
+ | crates.io | `https://crates.io/api/v1/crates/{name}` | 200 / 404 |
64
+ | other | the ecosystem's registry/index API | found / not-found |
65
+
66
+ ```bash
67
+ # Prints the HTTP status: 200 = exists, 404 = does not. (PyPI shown; swap the URL per ecosystem.)
68
+ curl -s -o /dev/null -w '%{http_code}\n' "https://pypi.org/pypi/requests/json"
69
+ ```
70
+
71
+ ## A confidence signal, not a second gate
72
+
73
+ Once a name clears the two signals, real-world usage is a *softer* signal that the name is the
74
+ established one, not a freshly-registered impostor: GitHub dependents / code-search hits for the exact
75
+ name, repo stars + recent activity, download history (a popular-sounding name registered yesterday is
76
+ a red flag; a modest name with years of releases is reassuring). **Low usage never blocks on its own**
77
+ — new, niche, internal, and private packages are legitimately low-usage. Use it to build confidence
78
+ and disambiguate two similar names, then hand a *real* candidate to `library-review` for the full
79
+ adopt/reject evaluation.
80
+
81
+ ## Where this sits (the supply-chain layers)
82
+
83
+ ```
84
+ need a dep at all? → mandatory-workflow.md §2a.5 (Reuse & YAGNI gate)
85
+ which dep, is it healthy?→ library-review skill (adopt/reject evaluation)
86
+ does this NAME exist? → THIS skill (pre-install: hallucination/typosquat) ◄── you are here
87
+ install
88
+ installed deps: CVEs? → dependency-scanner agent (post-install CVE/outdated audit)
89
+ lockfile/artifact integrity? → dependency-scanner agent (supply-chain integrity mode)
90
+ ```
91
+
92
+ **Optional enforcement:** a `PreToolUse` hook on install commands can run this check automatically
93
+ (warn-by-default; block on nonexistent/typosquat when configured). The hook is a backstop — verify
94
+ deliberately when you add a dependency rather than waiting for the gate.
95
+
96
+ ## Exit criteria
97
+
98
+ - [ ] Every package in the install command / manifest edit is confirmed present in its registry, or the install is abandoned
99
+ - [ ] Any name within ~2 edits of a popular package is restated and confirmed before install
100
+ - [ ] A name that couldn't be verified online is reported as *unverified* and not silently installed
101
+ - [ ] For PR-bound installs, the registry check is captured as evidence
@@ -99,6 +99,7 @@ worth recording too, so the question isn't re-litigated.
99
99
 
100
100
  - `.claude/rules/mandatory-workflow.md` (§2a.5 Reuse & YAGNI Gate) — the gate that decides *whether* a dep is needed
101
101
  - `over-engineering-review` — reactive twin of §2a.5; stdlib/native/yagni lenses
102
- - `dependency-scanner` agent audits *already-installed* deps for CVEs (this skill's post-add counterpart)
102
+ - `dependency-verification` — the *pre-install* name check (does this package name even exist / is it a typosquat) that runs before this evaluation
103
+ - `dependency-scanner` agent — audits *already-installed* deps for CVEs + lockfile/artifact integrity (this skill's post-add counterpart)
103
104
  - `code-review-and-quality` (Dependency Discipline) — the quick 5-point form of this evaluation
104
105
  - `documentation-and-adrs` — record a consequential adopt/reject as an ADR
@@ -55,6 +55,37 @@ Dependencies the stdlib or platform already ships · single-implementation inter
55
55
  one product · wrappers that only delegate · modules exporting one thing · dead flags and config ·
56
56
  hand-rolled stdlib · speculative "for later" scaffolding.
57
57
 
58
+ ## Burden of proof — scrutinize each addition
59
+
60
+ The five tags catch complexity that already exists. In **diff mode**, also invert the burden of proof
61
+ on what the change *adds* — LLM-written code is additive by default (it reinvents wheels, gilds error
62
+ handling, and abstracts for a single caller). **The default answer to "should we add this?" is no;
63
+ the addition must earn its place.** For each added file / function / abstraction / config / dependency,
64
+ ask:
65
+
66
+ 1. **Priority** — does this serve the current task/spec, or is it a detour?
67
+ 2. **Criticality** — is it needed *now*, or speculative "for later"?
68
+ 3. **Simplicity** — does a simpler or subtractive solution exist?
69
+ 4. **Evidence** — what proves it's needed (a failing test, a real requirement) rather than assumed?
70
+ 5. **Consequence** — what concretely breaks if it's omitted?
71
+
72
+ If 4 and 5 can't be answered with evidence, the addition is unjustified. Watch for these **AI-additive
73
+ anti-patterns**:
74
+
75
+ | Anti-pattern | Signal | Challenge |
76
+ |---|---|---|
77
+ | Wheel reinvention | New helper overlapping existing code/stdlib | "Does X already do this?" |
78
+ | Hallucinated issue | A fix for a bug with no reproduction | "Show the failing test before the fix." |
79
+ | Test manipulation | Test changed to match new behavior, not the spec | "Did the spec change, or did you change the test?" |
80
+ | Complexity creep | Abstraction for a single use case | "Is this the 3rd use, or the 1st?" |
81
+ | Priority deviation | Work not traceable to the task/spec | "Which requirement does this serve?" |
82
+ | Gold plating | Error handling / flexibility beyond need | "What breaks without this?" |
83
+
84
+ Give each scrutinized addition a one-word verdict — **justified** (evidence supports it → keep),
85
+ **needs-evidence** (plausible but unproven → prove or cut), **unjustified** (no evidence, likely
86
+ additive bias → cut) — and fold the cuts into the delete-list below. Before accepting any addition,
87
+ ask the subtractive question: *could this be achieved by removing code instead of adding it?*
88
+
58
89
  ## Output format
59
90
 
60
91
  One line per finding. Diff mode:
@@ -322,6 +322,12 @@ def validate_upload(content_type: str, size: int) -> None:
322
322
 
323
323
  ## Triaging Dependency Audit Results
324
324
 
325
+ > **Supply-chain layers.** A CVE audit catches *known-vulnerable* versions — it does not catch a
326
+ > *hallucinated*, *typosquatted*, or *compromised* package. Pair it with the `dependency-verification`
327
+ > skill (pre-install: confirm the package name exists and isn't a typosquat/slopsquat) and the
328
+ > `dependency-scanner` agent's supply-chain integrity mode (post-resolve: lockfile-hash + artifact
329
+ > scanning + known-bad versions). Pre-install name check → install → CVE + integrity audit.
330
+
325
331
  Not every finding is an emergency. Decision tree:
326
332
 
327
333
  ```
@@ -7,4 +7,4 @@ Docker): ``claude-kit init`` asks ordered questions and lays down ``CLAUDE.md``
7
7
  as a plugin. Extensibility is data-driven via the ``catalog/`` (stacks, profiles, MCP).
8
8
  """
9
9
 
10
- __version__ = "0.38.0"
10
+ __version__ = "0.40.0"