claude-code-kit 0.60.0__tar.gz → 0.62.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 (601) hide show
  1. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/.claude-plugin/marketplace.json +1 -1
  2. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/.claude-plugin/plugin.json +1 -1
  3. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/CHANGELOG.md +148 -0
  4. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/PKG-INFO +1 -1
  5. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/orchestrator.md +6 -3
  6. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/commands/init.md +13 -3
  7. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/eval-harness.md +44 -0
  8. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/influences.md +1 -0
  9. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/launch/directory-submission.md +54 -0
  10. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/org-capabilities.md +17 -0
  11. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/guard-kubectl-delete.sh +1 -0
  12. claude_code_kit-0.62.0/hooks/scripts/warn-missing-tests.sh +90 -0
  13. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/pyproject.toml +1 -1
  14. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/agent-guardrails.md +17 -2
  15. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/autonomy-levels.md +10 -0
  16. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/evals.md +32 -0
  17. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/goal-setting-and-monitoring.md +9 -0
  18. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/tool-design.md +104 -0
  19. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/wave-orchestration.md +8 -0
  20. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/context-engineering/SKILL.md +63 -3
  21. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/documentation-and-adrs/SKILL.md +16 -0
  22. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/frontend-ui-engineering/SKILL.md +17 -0
  23. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/refresh-docs/SKILL.md +35 -18
  24. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/__init__.py +1 -1
  25. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/README.md +4 -0
  26. claude_code_kit-0.60.0/hooks/scripts/warn-missing-tests.sh +0 -28
  27. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/.gitignore +0 -0
  28. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/CLAUDE.md +0 -0
  29. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/CONTRIBUTING.md +0 -0
  30. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/LICENSE +0 -0
  31. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/README.md +0 -0
  32. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/acceptance-reviewer.md +0 -0
  33. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/auditor.md +0 -0
  34. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/dependency-scanner.md +0 -0
  35. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/developer.md +0 -0
  36. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/devils-advocate.md +0 -0
  37. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/devops-engineer.md +0 -0
  38. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/e2e-tester.md +0 -0
  39. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/em-reviewer.md +0 -0
  40. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/incident-responder.md +0 -0
  41. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/merge-reviewer.md +0 -0
  42. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/observability-engineer.md +0 -0
  43. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/owasp-reviewer.md +0 -0
  44. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/policy-validator.md +0 -0
  45. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/pr-raiser.md +0 -0
  46. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/risk-classifier.md +0 -0
  47. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/sdlc-code-reviewer.md +0 -0
  48. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/secret-scanner.md +0 -0
  49. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/security-reviewer.md +0 -0
  50. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/senior-backend-dev.md +0 -0
  51. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/senior-frontend-dev.md +0 -0
  52. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/senior-tester.md +0 -0
  53. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/spec-doc-writer.md +0 -0
  54. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/story-planner.md +0 -0
  55. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/technical-architect.md +0 -0
  56. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/tester.md +0 -0
  57. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/ui-designer.md +0 -0
  58. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/agents/unit-tester.md +0 -0
  59. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/catalog/capture.yaml +0 -0
  60. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/catalog/mcp.yaml +0 -0
  61. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/catalog/org.yaml +0 -0
  62. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/catalog/profiles.yaml +0 -0
  63. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/catalog/stacks.yaml +0 -0
  64. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/commands/abort.md +0 -0
  65. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/commands/sdlc.md +0 -0
  66. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/commands/status.md +0 -0
  67. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/KNOWN_LIMITATIONS.md +0 -0
  68. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/RELEASE-POLICY.md +0 -0
  69. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/agentic-patterns.md +0 -0
  70. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/agents.md +0 -0
  71. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/architecture.md +0 -0
  72. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/autonomous-operation.md +0 -0
  73. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/capture-a-real-run.md +0 -0
  74. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/cli.md +0 -0
  75. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/coverage-audit.md +0 -0
  76. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/cursor-export.md +0 -0
  77. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/install.md +0 -0
  78. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/launch/awesome-prs.md +0 -0
  79. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/launch/demo-script.md +0 -0
  80. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/launch/github-about.md +0 -0
  81. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/launch/posts.md +0 -0
  82. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/launch/road-to-1.0.md +0 -0
  83. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/launch/seed-issues.md +0 -0
  84. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/rules-context-budget.md +0 -0
  85. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/skill-audit.md +0 -0
  86. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/stack-skills/GAP-ANALYSIS.md +0 -0
  87. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/stack-skills/README.md +0 -0
  88. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/docs/stack-skills/REPO-INVENTORY.md +0 -0
  89. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/hooks.json +0 -0
  90. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/audit-log.sh +0 -0
  91. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/capture-learnings.sh +0 -0
  92. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/guard-destructive-git.sh +0 -0
  93. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/guard-push-main.sh +0 -0
  94. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/guard-secrets.sh +0 -0
  95. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/lint-fix.sh +0 -0
  96. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/load-autonomy.sh +0 -0
  97. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/load-continuity.sh +0 -0
  98. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/load-learnings.sh +0 -0
  99. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/type-check.sh +0 -0
  100. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/validate-frontmatter.sh +0 -0
  101. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/validate-settings.sh +0 -0
  102. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/warn-large-edits.sh +0 -0
  103. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/warn-llm-io.sh +0 -0
  104. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/warn-sensitive-files.sh +0 -0
  105. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/hooks/scripts/warn-shared-modules.sh +0 -0
  106. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/agent-memory.md +0 -0
  107. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/agent-resilience.md +0 -0
  108. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/code-organization.md +0 -0
  109. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/continuity.md +0 -0
  110. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/design-patterns.md +0 -0
  111. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/devops-observability.md +0 -0
  112. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/documentation.md +0 -0
  113. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/frontend-best-practices.md +0 -0
  114. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/human-in-the-loop.md +0 -0
  115. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/linting-and-formatting.md +0 -0
  116. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/mandatory-workflow.md +0 -0
  117. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/model-tiers.md +0 -0
  118. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/quality-gates.md +0 -0
  119. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/rarv-cycle.md +0 -0
  120. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/reasoning-techniques.md +0 -0
  121. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/resilience-engineering.md +0 -0
  122. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/responsive-and-accessibility.md +0 -0
  123. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/risk-classification.md +0 -0
  124. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/rules/testing.md +0 -0
  125. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/schemas/README.md +0 -0
  126. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/schemas/catalog-capture.schema.json +0 -0
  127. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/schemas/catalog-mcp.schema.json +0 -0
  128. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/schemas/catalog-org.schema.json +0 -0
  129. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/schemas/catalog-profiles.schema.json +0 -0
  130. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/schemas/catalog-stacks.schema.json +0 -0
  131. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/schemas/mcp-lock.schema.json +0 -0
  132. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/schemas/org-pack.schema.json +0 -0
  133. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/schemas/pipeline-snapshot.schema.json +0 -0
  134. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/scripts/backfill-releases.sh +0 -0
  135. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/scripts/capture-sdlc-run.sh +0 -0
  136. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/scripts/check_cross_references.py +0 -0
  137. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/scripts/check_docs_consistency.py +0 -0
  138. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/scripts/check_mcp_pins.py +0 -0
  139. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/scripts/check_rule_sizes.py +0 -0
  140. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/scripts/check_skill_descriptions.py +0 -0
  141. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/scripts/gen_hooks.py +0 -0
  142. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/scripts/init.sh +0 -0
  143. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/_references/accessibility-checklist.md +0 -0
  144. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/_references/orchestration-patterns.md +0 -0
  145. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/_references/performance-checklist.md +0 -0
  146. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/_references/security-checklist.md +0 -0
  147. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/_references/testing-patterns.md +0 -0
  148. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/accessibility-review/SKILL.md +0 -0
  149. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/alembic-migrations/README.md +0 -0
  150. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/alembic-migrations/SKILL.md +0 -0
  151. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/alembic-migrations/references/alembic-setup-and-env.md +0 -0
  152. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/alembic-migrations/references/async-and-multitenant-migrations.md +0 -0
  153. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/alembic-migrations/references/repo-evidence.md +0 -0
  154. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/alembic-migrations/references/troubleshooting-and-debugging.md +0 -0
  155. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/alembic-migrations/references/writing-migrations.md +0 -0
  156. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/anthropic-vertex-integration/README.md +0 -0
  157. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/anthropic-vertex-integration/SKILL.md +0 -0
  158. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/anthropic-vertex-integration/references/generate-helpers-and-retry.md +0 -0
  159. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/anthropic-vertex-integration/references/repo-evidence.md +0 -0
  160. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/anthropic-vertex-integration/references/vertex-client-and-auth.md +0 -0
  161. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/api-and-interface-design/SKILL.md +0 -0
  162. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/api-integration/SKILL.md +0 -0
  163. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/api-pagination-filtering-sorting/README.md +0 -0
  164. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/api-pagination-filtering-sorting/SKILL.md +0 -0
  165. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/api-pagination-filtering-sorting/references/query-params-conventions.md +0 -0
  166. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/api-pagination-filtering-sorting/references/repo-evidence.md +0 -0
  167. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/api-pagination-filtering-sorting/references/response-metadata.md +0 -0
  168. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/archive-sprint/SKILL.md +0 -0
  169. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/async-python-patterns/README.md +0 -0
  170. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/async-python-patterns/SKILL.md +0 -0
  171. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/async-python-patterns/references/async-boundaries.md +0 -0
  172. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/async-python-patterns/references/lifecycle-and-gather.md +0 -0
  173. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/async-python-patterns/references/repo-evidence.md +0 -0
  174. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/auth-and-rbac/README.md +0 -0
  175. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/auth-and-rbac/SKILL.md +0 -0
  176. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/auth-and-rbac/references/auth-dependencies.md +0 -0
  177. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/auth-and-rbac/references/rbac-and-permissions.md +0 -0
  178. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/auth-and-rbac/references/repo-evidence.md +0 -0
  179. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/auth-and-rbac/references/security-hardening.md +0 -0
  180. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/auth-and-rbac/references/tokens-and-hashing.md +0 -0
  181. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/backend-repo-architecture/README.md +0 -0
  182. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/backend-repo-architecture/SKILL.md +0 -0
  183. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/backend-repo-architecture/references/deployment-patterns.md +0 -0
  184. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/backend-repo-architecture/references/entrypoint-and-config.md +0 -0
  185. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/backend-repo-architecture/references/repo-evidence.md +0 -0
  186. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/backend-repo-architecture/references/structure-patterns.md +0 -0
  187. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/backend-repo-architecture/references/troubleshooting.md +0 -0
  188. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/backlog/SKILL.md +0 -0
  189. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/backlog/item-template.md +0 -0
  190. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/browser-testing-with-devtools/SKILL.md +0 -0
  191. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/bug-hunt/SKILL.md +0 -0
  192. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/ci-cd-and-automation/SKILL.md +0 -0
  193. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/code-review-and-quality/SKILL.md +0 -0
  194. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/code-simplification/SKILL.md +0 -0
  195. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/component-design/SKILL.md +0 -0
  196. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/configargparse-yaml-env-layering/README.md +0 -0
  197. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/configargparse-yaml-env-layering/SKILL.md +0 -0
  198. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/configargparse-yaml-env-layering/references/config-layering-anatomy.md +0 -0
  199. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/configargparse-yaml-env-layering/references/mode-dispatch-and-precedence.md +0 -0
  200. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/configargparse-yaml-env-layering/references/repo-evidence.md +0 -0
  201. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/consolidate-learnings/SKILL.md +0 -0
  202. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/containerization-and-deployment/README.md +0 -0
  203. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/containerization-and-deployment/SKILL.md +0 -0
  204. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/containerization-and-deployment/references/deployment-and-secrets.md +0 -0
  205. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/containerization-and-deployment/references/dockerfile-and-compose.md +0 -0
  206. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/containerization-and-deployment/references/entrypoint-and-modes.md +0 -0
  207. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/containerization-and-deployment/references/kerberos-kinit-bootstrap.md +0 -0
  208. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/containerization-and-deployment/references/makefile-dev-workflow.md +0 -0
  209. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/containerization-and-deployment/references/repo-evidence.md +0 -0
  210. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/cron-and-scheduled-jobs/README.md +0 -0
  211. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/cron-and-scheduled-jobs/SKILL.md +0 -0
  212. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/cron-and-scheduled-jobs/references/choosing-and-operations.md +0 -0
  213. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/cron-and-scheduled-jobs/references/kubernetes-cronjob.md +0 -0
  214. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/cron-and-scheduled-jobs/references/repo-evidence.md +0 -0
  215. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/cron-and-scheduled-jobs/references/temporal-schedules.md +0 -0
  216. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/data-engineering-bigquery-gcs/README.md +0 -0
  217. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/data-engineering-bigquery-gcs/SKILL.md +0 -0
  218. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/data-engineering-bigquery-gcs/references/bigquery-advanced-patterns.md +0 -0
  219. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/data-engineering-bigquery-gcs/references/bigquery-gcs-io.md +0 -0
  220. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/data-engineering-bigquery-gcs/references/medallion-architecture.md +0 -0
  221. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/data-engineering-bigquery-gcs/references/repo-evidence.md +0 -0
  222. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/data-engineering-bigquery-gcs/references/temp-table-merge-pattern.md +0 -0
  223. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/debugging-and-error-recovery/SKILL.md +0 -0
  224. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/decision/SKILL.md +0 -0
  225. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/decision/adr-template.md +0 -0
  226. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/dependency-verification/SKILL.md +0 -0
  227. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/deploy/SKILL.md +0 -0
  228. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/deprecation-and-migration/SKILL.md +0 -0
  229. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-patterns-and-conventions/README.md +0 -0
  230. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-patterns-and-conventions/SKILL.md +0 -0
  231. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-patterns-and-conventions/references/anti-patterns.md +0 -0
  232. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-patterns-and-conventions/references/naming-and-layout.md +0 -0
  233. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-patterns-and-conventions/references/patterns-catalog.md +0 -0
  234. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-patterns-and-conventions/references/repo-evidence.md +0 -0
  235. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-patterns-and-conventions/references/testing-patterns.md +0 -0
  236. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-patterns-and-conventions/references/troubleshooting.md +0 -0
  237. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-system-ops/README.md +0 -0
  238. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-system-ops/SKILL.md +0 -0
  239. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-system-ops/references/ai-readiness.md +0 -0
  240. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-system-ops/references/drift-detection.md +0 -0
  241. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-system-ops/references/governance-and-adoption.md +0 -0
  242. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-system-ops/references/system-health-and-maturity.md +0 -0
  243. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/design-system-ops/references/token-architecture.md +0 -0
  244. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/doc-consolidation/SKILL.md +0 -0
  245. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-compose/README.md +0 -0
  246. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-compose/SKILL.md +0 -0
  247. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-compose/references/compose-services-and-healthchecks.md +0 -0
  248. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-compose/references/compose-skeletons.md +0 -0
  249. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-compose/references/dev-vs-prod-variants.md +0 -0
  250. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-compose/references/repo-evidence.md +0 -0
  251. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-shared/README.md +0 -0
  252. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-shared/SKILL.md +0 -0
  253. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-shared/references/dockerignore-and-build-secrets.md +0 -0
  254. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-shared/references/repo-evidence.md +0 -0
  255. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-shared/references/shared-base-images.md +0 -0
  256. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/docker-shared/references/shared-compose-fragments.md +0 -0
  257. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/dockerfile-backend/README.md +0 -0
  258. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/dockerfile-backend/SKILL.md +0 -0
  259. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/dockerfile-backend/references/backend-dockerfile-anatomy.md +0 -0
  260. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/dockerfile-backend/references/repo-evidence.md +0 -0
  261. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/dockerfile-backend/references/system-deps-and-caching.md +0 -0
  262. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/dockerfile-frontend/README.md +0 -0
  263. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/dockerfile-frontend/SKILL.md +0 -0
  264. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/dockerfile-frontend/references/build-args-and-nginx.md +0 -0
  265. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/dockerfile-frontend/references/frontend-dockerfile-anatomy.md +0 -0
  266. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/dockerfile-frontend/references/repo-evidence.md +0 -0
  267. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/doubt-driven-development/SKILL.md +0 -0
  268. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/edge-to-service-trust-boundary/README.md +0 -0
  269. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/edge-to-service-trust-boundary/SKILL.md +0 -0
  270. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/edge-to-service-trust-boundary/references/repo-evidence.md +0 -0
  271. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/edge-to-service-trust-boundary/references/trust-contract.md +0 -0
  272. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/execute/SKILL.md +0 -0
  273. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/fastapi-service-patterns/README.md +0 -0
  274. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/fastapi-service-patterns/SKILL.md +0 -0
  275. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/fastapi-service-patterns/references/api-versioning.md +0 -0
  276. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/fastapi-service-patterns/references/app-factory-and-lifespan.md +0 -0
  277. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/fastapi-service-patterns/references/custom-route-and-middleware.md +0 -0
  278. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/fastapi-service-patterns/references/dependency-injection.md +0 -0
  279. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/fastapi-service-patterns/references/model-and-serialization-patterns.md +0 -0
  280. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/fastapi-service-patterns/references/repo-evidence.md +0 -0
  281. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/file-export-and-reporting/README.md +0 -0
  282. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/file-export-and-reporting/SKILL.md +0 -0
  283. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/file-export-and-reporting/references/excel-generation.md +0 -0
  284. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/file-export-and-reporting/references/repo-evidence.md +0 -0
  285. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/file-export-and-reporting/references/streaming-and-downloads.md +0 -0
  286. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/frontend-repo-architecture/README.md +0 -0
  287. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/frontend-repo-architecture/SKILL.md +0 -0
  288. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/frontend-repo-architecture/references/api-layer-and-types.md +0 -0
  289. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/frontend-repo-architecture/references/divergences.md +0 -0
  290. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/frontend-repo-architecture/references/repo-evidence.md +0 -0
  291. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/frontend-repo-architecture/references/structure-and-state.md +0 -0
  292. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/frontend-repo-architecture/references/testing-patterns.md +0 -0
  293. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/gcp-cloud-run-github-actions/README.md +0 -0
  294. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/gcp-cloud-run-github-actions/SKILL.md +0 -0
  295. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/gcp-cloud-run-github-actions/references/cloud-run-deploy.md +0 -0
  296. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/gcp-cloud-run-github-actions/references/repo-evidence.md +0 -0
  297. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/gcp-cloud-run-github-actions/references/workflow-structure.md +0 -0
  298. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/gcs-file-storage-patterns/README.md +0 -0
  299. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/gcs-file-storage-patterns/SKILL.md +0 -0
  300. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/gcs-file-storage-patterns/references/client-and-uploads.md +0 -0
  301. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/gcs-file-storage-patterns/references/repo-evidence.md +0 -0
  302. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/gcs-file-storage-patterns/references/signed-urls-and-reads.md +0 -0
  303. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/git-workflow-and-versioning/SKILL.md +0 -0
  304. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/grafana-dashboards-and-alerts/README.md +0 -0
  305. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/grafana-dashboards-and-alerts/SKILL.md +0 -0
  306. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/grafana-dashboards-and-alerts/references/dashboard-json-and-templating.md +0 -0
  307. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/grafana-dashboards-and-alerts/references/provisioning-and-organization.md +0 -0
  308. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/grafana-dashboards-and-alerts/references/red-dashboard-skeleton.md +0 -0
  309. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/grafana-dashboards-and-alerts/references/red-metrics-queries.md +0 -0
  310. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/grafana-dashboards-and-alerts/references/repo-evidence.md +0 -0
  311. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/grafana-dashboards-and-alerts/references/unified-alerting.md +0 -0
  312. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/graphql-patterns/README.md +0 -0
  313. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/graphql-patterns/SKILL.md +0 -0
  314. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/graphql-patterns/references/apollo-client-frontend.md +0 -0
  315. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/graphql-patterns/references/apollo-client-setup.md +0 -0
  316. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/graphql-patterns/references/repo-evidence.md +0 -0
  317. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/graphql-patterns/references/strawberry-backend.md +0 -0
  318. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/graphql-patterns/references/when-to-use-graphql.md +0 -0
  319. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/idea-refine/SKILL.md +0 -0
  320. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/idea-refine/examples.md +0 -0
  321. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/idea-refine/frameworks.md +0 -0
  322. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/idea-refine/refinement-criteria.md +0 -0
  323. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/idea-refine/scripts/idea-refine.sh +0 -0
  324. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/incident-postmortem/SKILL.md +0 -0
  325. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/incremental-implementation/SKILL.md +0 -0
  326. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/interview-me/SKILL.md +0 -0
  327. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kafka-config-driven/README.md +0 -0
  328. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kafka-config-driven/SKILL.md +0 -0
  329. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kafka-config-driven/references/config-and-sasl-kerberos.md +0 -0
  330. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kafka-config-driven/references/consumer-producer-patterns.md +0 -0
  331. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kafka-config-driven/references/repo-evidence.md +0 -0
  332. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kafka-config-driven/references/troubleshooting-and-patterns.md +0 -0
  333. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubectl-operations/README.md +0 -0
  334. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubectl-operations/SKILL.md +0 -0
  335. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubectl-operations/references/command-reference.md +0 -0
  336. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubectl-operations/references/context-namespace-rbac.md +0 -0
  337. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubectl-operations/references/debugging-playbooks.md +0 -0
  338. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubectl-operations/references/output-formats-and-selectors.md +0 -0
  339. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubectl-operations/references/repo-evidence.md +0 -0
  340. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubernetes-workload-hardening/README.md +0 -0
  341. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubernetes-workload-hardening/SKILL.md +0 -0
  342. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubernetes-workload-hardening/references/networkpolicy-and-rbac.md +0 -0
  343. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubernetes-workload-hardening/references/repo-evidence.md +0 -0
  344. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/kubernetes-workload-hardening/references/securitycontext-and-podsecurity.md +0 -0
  345. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/langfuse-llm-tracing/README.md +0 -0
  346. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/langfuse-llm-tracing/SKILL.md +0 -0
  347. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/langfuse-llm-tracing/references/langfuse-client-and-tracing.md +0 -0
  348. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/langfuse-llm-tracing/references/python-and-typescript.md +0 -0
  349. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/langfuse-llm-tracing/references/repo-evidence.md +0 -0
  350. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/library-review/SKILL.md +0 -0
  351. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/load-testing/SKILL.md +0 -0
  352. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/manual-test/SKILL.md +0 -0
  353. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/modernization-and-migration/README.md +0 -0
  354. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/modernization-and-migration/SKILL.md +0 -0
  355. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/modernization-and-migration/references/migration-best-practices.md +0 -0
  356. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/modernization-and-migration/references/pydantic-v1-to-v2.md +0 -0
  357. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/modernization-and-migration/references/repo-evidence.md +0 -0
  358. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/modernization-and-migration/references/shared-internal-library.md +0 -0
  359. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/modernization-and-migration/references/sqlalchemy-14-to-20.md +0 -0
  360. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/multi-tenancy-patterns/README.md +0 -0
  361. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/multi-tenancy-patterns/SKILL.md +0 -0
  362. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/multi-tenancy-patterns/references/caching-patterns.md +0 -0
  363. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/multi-tenancy-patterns/references/isolation-strategies.md +0 -0
  364. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/multi-tenancy-patterns/references/repo-evidence.md +0 -0
  365. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/multi-tenancy-patterns/references/tenant-resolution.md +0 -0
  366. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/node-express-service/README.md +0 -0
  367. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/node-express-service/SKILL.md +0 -0
  368. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/node-express-service/references/app-factory-and-mode-dispatch.md +0 -0
  369. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/node-express-service/references/config-and-module-alias.md +0 -0
  370. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/node-express-service/references/middleware-patterns.md +0 -0
  371. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/node-express-service/references/repo-evidence.md +0 -0
  372. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/node-objection-knex/README.md +0 -0
  373. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/node-objection-knex/SKILL.md +0 -0
  374. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/node-objection-knex/references/migrations-and-validation.md +0 -0
  375. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/node-objection-knex/references/objection-model-and-knex.md +0 -0
  376. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/node-objection-knex/references/repo-evidence.md +0 -0
  377. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/notifications-and-messaging/README.md +0 -0
  378. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/notifications-and-messaging/SKILL.md +0 -0
  379. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/notifications-and-messaging/references/provider-abstraction.md +0 -0
  380. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/notifications-and-messaging/references/repo-evidence.md +0 -0
  381. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/notifications-and-messaging/references/templates-and-fallback.md +0 -0
  382. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/observability-and-logging/README.md +0 -0
  383. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/observability-and-logging/SKILL.md +0 -0
  384. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/observability-and-logging/references/health-and-readiness.md +0 -0
  385. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/observability-and-logging/references/logging-and-structlog.md +0 -0
  386. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/observability-and-logging/references/outbound-metrics-and-multi-mode.md +0 -0
  387. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/observability-and-logging/references/pii-redaction.md +0 -0
  388. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/observability-and-logging/references/repo-evidence.md +0 -0
  389. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/observability-and-logging/references/tracing-and-metrics.md +0 -0
  390. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/otel-tracing/README.md +0 -0
  391. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/otel-tracing/SKILL.md +0 -0
  392. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/otel-tracing/references/collector.md +0 -0
  393. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/otel-tracing/references/correlation.md +0 -0
  394. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/otel-tracing/references/gotchas.md +0 -0
  395. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/otel-tracing/references/instrumentation.md +0 -0
  396. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/otel-tracing/references/sampling.md +0 -0
  397. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/otel-tracing/references/tempo.md +0 -0
  398. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/over-engineering-review/SKILL.md +0 -0
  399. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/performance-optimization/SKILL.md +0 -0
  400. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/planning-and-task-breakdown/SKILL.md +0 -0
  401. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/playwright-verification/SKILL.md +0 -0
  402. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/pydantic-schema-patterns/README.md +0 -0
  403. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/pydantic-schema-patterns/SKILL.md +0 -0
  404. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/pydantic-schema-patterns/references/repo-evidence.md +0 -0
  405. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/pydantic-schema-patterns/references/settings-and-validation.md +0 -0
  406. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/pydantic-schema-patterns/references/troubleshooting-and-common-errors.md +0 -0
  407. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/pydantic-schema-patterns/references/v1-vs-v2.md +0 -0
  408. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/python-dao-and-database/README.md +0 -0
  409. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/python-dao-and-database/SKILL.md +0 -0
  410. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/python-dao-and-database/references/advanced-query-patterns.md +0 -0
  411. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/python-dao-and-database/references/basedao-and-sessions.md +0 -0
  412. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/python-dao-and-database/references/mongodb-advanced.md +0 -0
  413. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/python-dao-and-database/references/other-db-mongodb.md +0 -0
  414. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/python-dao-and-database/references/repo-evidence.md +0 -0
  415. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/python-dao-and-database/references/sqlalchemy-1x-vs-2x.md +0 -0
  416. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/radix-tailwind-component-patterns/README.md +0 -0
  417. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/radix-tailwind-component-patterns/SKILL.md +0 -0
  418. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/radix-tailwind-component-patterns/references/radix-primitives-and-variants.md +0 -0
  419. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/radix-tailwind-component-patterns/references/repo-evidence.md +0 -0
  420. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/radix-tailwind-component-patterns/references/tailwind-theme-and-cn.md +0 -0
  421. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/react-hook-form-zod-patterns/README.md +0 -0
  422. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/react-hook-form-zod-patterns/SKILL.md +0 -0
  423. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/react-hook-form-zod-patterns/references/form-setup-and-zod.md +0 -0
  424. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/react-hook-form-zod-patterns/references/multi-step-and-modes.md +0 -0
  425. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/react-hook-form-zod-patterns/references/repo-evidence.md +0 -0
  426. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/redis-caching-patterns/README.md +0 -0
  427. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/redis-caching-patterns/SKILL.md +0 -0
  428. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/redis-caching-patterns/references/cache-manager-and-fallback.md +0 -0
  429. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/redis-caching-patterns/references/namespacing-and-invalidation.md +0 -0
  430. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/redis-caching-patterns/references/repo-evidence.md +0 -0
  431. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/remember/SKILL.md +0 -0
  432. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/safety-critical-patterns/SKILL.md +0 -0
  433. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/scope/SKILL.md +0 -0
  434. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/scope/scope-template.md +0 -0
  435. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/sdlc/SKILL.md +0 -0
  436. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/security-and-hardening/SKILL.md +0 -0
  437. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/security-and-hardening/references/input-validation-and-uploads.md +0 -0
  438. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/security-and-hardening/references/llm-guardrails.md +0 -0
  439. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/security-and-hardening/references/owasp-top10-prevention.md +0 -0
  440. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/security-and-hardening/references/supply-chain-and-dependencies.md +0 -0
  441. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/security-verification/SKILL.md +0 -0
  442. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/shannon-ai-pentest/README.md +0 -0
  443. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/shannon-ai-pentest/SKILL.md +0 -0
  444. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/shannon-ai-pentest/references/operating-guide.md +0 -0
  445. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/shell-review/SKILL.md +0 -0
  446. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/shipping-and-launch/SKILL.md +0 -0
  447. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/simplification-debt/SKILL.md +0 -0
  448. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/smoke-test/SKILL.md +0 -0
  449. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/source-driven-development/SKILL.md +0 -0
  450. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/spec-driven-development/SKILL.md +0 -0
  451. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/sprint/SKILL.md +0 -0
  452. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/sprint/sprint-template.md +0 -0
  453. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/tanstack-react-query-patterns/README.md +0 -0
  454. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/tanstack-react-query-patterns/SKILL.md +0 -0
  455. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/tanstack-react-query-patterns/references/mutations-and-cache.md +0 -0
  456. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/tanstack-react-query-patterns/references/query-keys-and-hooks.md +0 -0
  457. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/tanstack-react-query-patterns/references/repo-evidence.md +0 -0
  458. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/task-tracker-sync/SKILL.md +0 -0
  459. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-config-driven/README.md +0 -0
  460. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-config-driven/SKILL.md +0 -0
  461. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-config-driven/references/config-and-retry-idempotency.md +0 -0
  462. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-config-driven/references/dag-dsl-interpreter.md +0 -0
  463. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-config-driven/references/repo-evidence.md +0 -0
  464. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-config-driven/references/schedule-registration.md +0 -0
  465. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-config-driven/references/schedules-and-cron.md +0 -0
  466. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-config-driven/references/worker-workflow-activity-patterns.md +0 -0
  467. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-developer/README.md +0 -0
  468. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-developer/SKILL.md +0 -0
  469. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-developer/references/cli.md +0 -0
  470. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-developer/references/determinism.md +0 -0
  471. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-developer/references/gotchas.md +0 -0
  472. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-developer/references/languages.md +0 -0
  473. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-developer/references/testing.md +0 -0
  474. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/temporal-developer/references/versioning.md +0 -0
  475. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/test-driven-development/SKILL.md +0 -0
  476. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/test-plan-review/SKILL.md +0 -0
  477. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/testing-conventions/README.md +0 -0
  478. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/testing-conventions/SKILL.md +0 -0
  479. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/testing-conventions/references/async-and-mocking.md +0 -0
  480. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/testing-conventions/references/coverage-gap-and-recommendations.md +0 -0
  481. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/testing-conventions/references/github-actions-test-orchestration.md +0 -0
  482. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/testing-conventions/references/pytest-and-fixtures.md +0 -0
  483. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/testing-conventions/references/pytest-asyncio-modes.md +0 -0
  484. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/testing-conventions/references/repo-evidence.md +0 -0
  485. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/testing-conventions/references/security-regression-tests.md +0 -0
  486. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/testing-conventions/references/vitest-frontend-testing.md +0 -0
  487. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/threat-model/SKILL.md +0 -0
  488. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/triage/SKILL.md +0 -0
  489. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/ui-ux-design/SKILL.md +0 -0
  490. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/unit-test/SKILL.md +0 -0
  491. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/using-agent-skills/SKILL.md +0 -0
  492. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/vitest-rtl-msw-patterns/README.md +0 -0
  493. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/vitest-rtl-msw-patterns/SKILL.md +0 -0
  494. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/vitest-rtl-msw-patterns/references/msw-and-contract-tests.md +0 -0
  495. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/vitest-rtl-msw-patterns/references/repo-evidence.md +0 -0
  496. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/vitest-rtl-msw-patterns/references/vitest-rtl-setup.md +0 -0
  497. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/zap-vapt-scanning/README.md +0 -0
  498. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/zap-vapt-scanning/SKILL.md +0 -0
  499. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/zap-vapt-scanning/references/operating-guide.md +0 -0
  500. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/zap-vapt-scanning/scripts/endpoints.example.txt +0 -0
  501. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/zap-vapt-scanning/scripts/requirements.txt +0 -0
  502. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/zap-vapt-scanning/scripts/zap_vapt.py +0 -0
  503. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/zustand-state-patterns/README.md +0 -0
  504. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/zustand-state-patterns/SKILL.md +0 -0
  505. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/zustand-state-patterns/references/async-polling-and-persistence.md +0 -0
  506. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/zustand-state-patterns/references/repo-evidence.md +0 -0
  507. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/skills/zustand-state-patterns/references/store-structure-and-selectors.md +0 -0
  508. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/__main__.py +0 -0
  509. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/catalog.py +0 -0
  510. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/cli.py +0 -0
  511. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/detect.py +0 -0
  512. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/export.py +0 -0
  513. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/hooks.py +0 -0
  514. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/models.py +0 -0
  515. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/pipeline.py +0 -0
  516. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/prompts.py +0 -0
  517. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/render.py +0 -0
  518. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/report.py +0 -0
  519. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/scaffold.py +0 -0
  520. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/schemas.py +0 -0
  521. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/upgrader.py +0 -0
  522. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/src/claude_kit/validator.py +0 -0
  523. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/CLAUDE.md +0 -0
  524. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/CLAUDE.stack.md.tmpl +0 -0
  525. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/CONTINUITY.template.md +0 -0
  526. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/README.claude-sdlc.md.tmpl +0 -0
  527. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/agent-memory/MEMORY.md +0 -0
  528. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/agent-memory/api/.gitkeep +0 -0
  529. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/agent-memory/architecture/.gitkeep +0 -0
  530. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/agent-memory/debugging/.gitkeep +0 -0
  531. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/agent-memory/gotchas/.gitkeep +0 -0
  532. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/agent-memory/patterns/.gitkeep +0 -0
  533. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/agent-memory/performance/.gitkeep +0 -0
  534. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/artifacts/adr.md +0 -0
  535. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/artifacts/api-change-report.md +0 -0
  536. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/artifacts/change-proposal.md +0 -0
  537. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/artifacts/feature-spec.md +0 -0
  538. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/artifacts/release-plan.md +0 -0
  539. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/artifacts/runbook.md +0 -0
  540. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/artifacts/security-review.md +0 -0
  541. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/artifacts/test-plan.md +0 -0
  542. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/export/sdlc-workflow-guide.md.tmpl +0 -0
  543. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/agents/data-workflow-agent.md +0 -0
  544. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/agents/founder-prototype-agent.md +0 -0
  545. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/agents/internal-tools-builder.md +0 -0
  546. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/agents/pm-copilot.md +0 -0
  547. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/agents/staff-pm-reviewer.md +0 -0
  548. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/agents/support-ticket-engineer.md +0 -0
  549. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/devops-and-release/README.md +0 -0
  550. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/devops-and-release/pack.yaml +0 -0
  551. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/engineering-core/README.md +0 -0
  552. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/engineering-core/pack.yaml +0 -0
  553. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/non-engineer-builder/README.md +0 -0
  554. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/non-engineer-builder/pack.yaml +0 -0
  555. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/onboarding-and-docs/README.md +0 -0
  556. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/onboarding-and-docs/pack.yaml +0 -0
  557. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/product-to-code/README.md +0 -0
  558. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/product-to-code/pack.yaml +0 -0
  559. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/quality-and-review/README.md +0 -0
  560. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/quality-and-review/pack.yaml +0 -0
  561. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/security-and-compliance/README.md +0 -0
  562. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/packs/security-and-compliance/pack.yaml +0 -0
  563. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/rules/ai-working-agreement.md +0 -0
  564. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/rules/ambiguity-resolution.md +0 -0
  565. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/rules/branch-and-pr-policy.md +0 -0
  566. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/rules/compliance-policy.md +0 -0
  567. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/rules/non-engineer-safe-coding.md +0 -0
  568. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/rules/pii-policy.md +0 -0
  569. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/rules/production-data-policy.md +0 -0
  570. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/rules/prompt-to-task-conversion.md +0 -0
  571. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/rules/prototype-boundaries.md +0 -0
  572. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/rules/secrets-policy.md +0 -0
  573. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/skills/customer-issue-to-fix/SKILL.md +0 -0
  574. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/skills/feature-from-idea/SKILL.md +0 -0
  575. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/skills/prompt-to-safe-task/SKILL.md +0 -0
  576. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/skills/prototype-to-production/SKILL.md +0 -0
  577. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/skills/repo-onboarding/SKILL.md +0 -0
  578. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/skills/review-scope/SKILL.md +0 -0
  579. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/skills/review-sprint/SKILL.md +0 -0
  580. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/skills/review-sprint-plan/SKILL.md +0 -0
  581. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/org/skills/review-ux-flow/SKILL.md +0 -0
  582. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/scripts/sdlc-loop.sh +0 -0
  583. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/settings.json +0 -0
  584. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/backend/go/net-http/rules/go-patterns.md +0 -0
  585. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/backend/python/fastapi/rules/fastapi-patterns.md +0 -0
  586. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/db/mongodb/agents/migration-specialist.md +0 -0
  587. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/db/mongodb/agents/mongodb-specialist.md +0 -0
  588. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/db/mongodb/rules/mongodb-patterns.md +0 -0
  589. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/db/postgres/agents/db-performance-reviewer.md +0 -0
  590. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/db/postgres/agents/migration-specialist.md +0 -0
  591. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/db/postgres/agents/postgres-specialist.md +0 -0
  592. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/db/postgres/rules/database-performance.md +0 -0
  593. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/db/postgres/rules/postgres-patterns.md +0 -0
  594. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/frontend/react/rules/design-system-compliance.md +0 -0
  595. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/frontend/react/rules/mobile-design-guidelines.md +0 -0
  596. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/frontend/react/rules/react-patterns.md +0 -0
  597. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/frontend/react/rules/ui-components.md +0 -0
  598. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/frontend/react/rules/ui-design-system.md +0 -0
  599. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/frontend/react/rules/ui-layout-and-motion.md +0 -0
  600. {claude_code_kit-0.60.0 → claude_code_kit-0.62.0}/templates/stacks/frontend/react/rules/ux-dashboard-patterns.md +0 -0
  601. {claude_code_kit-0.60.0 → claude_code_kit-0.62.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.60.0",
13
+ "version": "0.62.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.60.0",
3
+ "version": "0.62.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,154 @@ 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.62.0] — 2026-07-15
8
+
9
+ **OSS-adoption wave 3 — the two L-sized consolidation items that close out the implement-now
10
+ backlog from the 1,345-repo scan** (waves 1–2 = 0.60.0/0.61.0 below). Same discipline: everything
11
+ re-derived as stack-agnostic prose; referenced, never vendored. With this release the scan's
12
+ 20-item implement-now backlog is **fully shipped**; the remaining 10 ideas are user-gated
13
+ (listed under "Not adopted" in the 0.60.0 entry) and await an owner decision.
14
+
15
+ ### Added
16
+
17
+ - **`context-engineering` skill consolidation pass** (merges 8 verified proposals):
18
+ - **Five primitives** (was four) — new "Think in code" primitive: when the question is
19
+ aggregation over data, one throwaway script that prints only the answer replaces the
20
+ thousand lines the agent would otherwise read (from `gsd-build/get-shit-done`).
21
+ - **Content-type-aware compression recipes** in Tool-output offloading — JSON arrays keep
22
+ first/last few + 100% of errors/outliers/relevant matches; logs keep errors/failures/summary
23
+ and drop PASSED noise; search results keep exact + diverse hits; diffs keep hunks only — with
24
+ a **~200-token floor** below which compression costs more than it saves, and the
25
+ **reversible-marker discipline**: full original to a file, inline marker with the dropped-item
26
+ count + retrieval path — a compression the agent can't undo is a deletion (Apache-2.0
27
+ `headroomlabs-ai/headroom`).
28
+ - **"Retrieval discipline: read symbols, not files"** — a three-rung ladder: symbol-level
29
+ retrieval first (harness LSP / IDE / the `serena` MCP fragment; one atomic go-to-definition
30
+ replaces the 8–12-step open-scroll-grep dance), semantic search + code-graph navigation
31
+ second, grep only for exhaustive literal jobs; prefer chunks that *define* a symbol over ones
32
+ that mention it (MIT `oraios/serena` · `MinishLab/semble`).
33
+ - **"Making the budget visible"** (native statusline API; `jarrodwatts/claude-hud` referenced)
34
+ and **"Observable symptoms of subagent context pressure"** (silent partial completion,
35
+ increasing vagueness, skipped protocol steps — verify handoffs against the task's
36
+ **must-haves, not file existence**), echoed in the orchestrator's rotate-before-degradation
37
+ bullet.
38
+ - **Tribal-standards sub-step** in the comprehension pipeline — the four-part tribal test (new
39
+ dev guesses wrong / corrected in review / has a why / stable) and the one-pattern-at-a-time
40
+ elicitation loop (from `buildermethods/agent-os`).
41
+ - **`tool-design` rule expansion pass** (merges 7 verified proposals; 9.7k → 17.2k chars):
42
+ - **§9 Anchor edits to content, not position** — content hash captured at read, re-verified at
43
+ apply, fail fast with a drift report (fuzzy recovery opt-in only); a byte-identical edit
44
+ returns "the bug is elsewhere" and N consecutive no-ops is a hard error (MIT
45
+ `can1357/oh-my-pi`).
46
+ - **§10 Write the tool description like an API contract** — surface not machinery; the six-part
47
+ anatomy (purpose, input grammar, 3–8 worked examples, agent-owned failure shapes, WRONG/RIGHT
48
+ pairs, recap); evidence-based pruning — "the model could infer this" is necessary but never
49
+ sufficient to cut a line (MIT `gsd-build/get-shit-done`).
50
+ - **§11 Errors an agent can parse — and denials an agent can act on** — success/error envelope
51
+ split, wire-stable category IDs with exit codes derived from category, actionable hint
52
+ carrying the exact recovery command, never branch on an upstream `code == 0` (MIT
53
+ `larksuite/cli`); plus the **deny-message rubric**: every denial states CASE A (redirect —
54
+ name the approved route) or CASE B (policy — stop, don't route around).
55
+ - **§1 pre-run MCP audit** (schema cost compounds per-turn × per-subagent;
56
+ `enabledMcpjsonServers`/`disabledMcpjsonServers` carry a server without loading it —
57
+ `mksglu/context-mode`, referenced) and **§4 "Compress at the source"** (compact modes first:
58
+ failures-only, `--quiet`/`--porcelain`, JSON + selector, dedup-with-count, one-line success
59
+ acks — Apache-2.0 `rtk-ai/rtk`) + the reversible-compression marker (producer-side twin of
60
+ the context-engineering rule).
61
+ - **`docs/influences.md`** gains the 1,345-repo OSS adoption scan row (sources, licenses, and the
62
+ 0.60.0–0.62.0 landing map).
63
+
64
+ ### Changed
65
+
66
+ - **`guard-kubectl-delete.sh`** deny message gains the explicit CASE B clause the new §11 rubric
67
+ requires: "a human operator must run it directly — do not work around this guard." (The kit's
68
+ other three guards already named their approved routes; content-only edit, hook registry
69
+ untouched.)
70
+ - **`agents/orchestrator.md`** rotate-before-degradation bullet now names the three context-
71
+ pressure symptoms and requires handoff verification against must-haves, not file existence.
72
+
73
+ ### Not adopted (deliberately)
74
+
75
+ - **The 10 user-gated backlog items remain gated** (Stop-hook guard, warn-context-flood hook,
76
+ DESIGN.md template, marketplace split, skills export target, React perf overlay, visual-report
77
+ skill, detect-correction hook, org skill-governance rule, whole-payload compression pass) —
78
+ each changes kit behavior, scope, or structure in a way the owner should decide, not a scan.
79
+ Full rationale in the 0.60.0 entry.
80
+ - **Vendoring any scanned code** — every adoption in waves 1–3 is re-derived prose with source
81
+ attribution; `rtk`, `claude-hud`, `context-mode`, `serena`, and `semble` are referenced or
82
+ wired as opt-in MCP fragments, never copied in.
83
+ - **Renumbering `tool-design` sections** — the new material lands as §9–§11 after the existing
84
+ §1–§8 so cross-references from other rules/skills stay stable.
85
+
86
+ ## [0.61.0] — 2026-07-15
87
+
88
+ **OSS-adoption wave 2 — nine more items from the 1,345-repo scan backlog** (wave 1 = 0.60.0 below).
89
+ Same discipline: everything re-derived as stack-agnostic prose/data; nothing vendored.
90
+
91
+ ### Added
92
+
93
+ - **`agent-guardrails` hardening pass** (completes the three guardrails items begun in 0.60.0):
94
+ the unfamiliar-CLI protocol (`--help` on the *exact leaf command* before first use — validation
95
+ is not transitive from parent groups; single-item schema discovery before unconstrained list
96
+ queries), cloud control-plane categories added to the §3 Block tier (IAM/role-binding, billing,
97
+ org governance, KMS-class key ops, enabling paid APIs, autonomous IaC apply — dry-run/preview
98
+ mandatory where offered), and a graceful-degradation token ladder in the §4 resource bounds
99
+ (warn fraction → wrap-up, hard-stop fraction → final answer, ceiling coupled to compaction).
100
+ - **Evals upgrade** (`rules/evals.md` §9–10 + `docs/eval-harness.md`): evals as one versioned
101
+ declarative config gated in CI (path filters, parsed JSON/JUnit pass-rate, prompt-set-hash
102
+ response cache, SHA + run-id lineage); colocate a skill's evals beside its `SKILL.md` with
103
+ with/without-skill A/B judged on the skill's own claims. The harness doc gains the
104
+ skill-activation eval (trigger F1 + Wilson/Clopper-Pearson/bootstrap certification — the
105
+ routing-layer failure mode neither arm measured), the falsifiability discipline (assertions must
106
+ fail in baseline; Signal/Baseline/Unreachable/Regression quadrants; labeled delta bands;
107
+ path-scoped isolation caveat), and fixed-overhead accounting (always-injected prose is a
108
+ per-turn flat tax; billing A/B is the only honest end-to-end number).
109
+ - **Pre-run budget declarations**: `goal-setting-and-monitoring` §4 budgets the run from its
110
+ orchestration shape (>2× single-agent needs written justification; estimate-vs-actual recorded;
111
+ on-exceed action declared up front) and `wave-orchestration`'s manifest extends
112
+ announce-the-spend to a full per-wave envelope (hard spawn cap, per-worker max turns, wall-clock
113
+ timeout, token ceiling) declared as data.
114
+ - **Org governance**: `autonomy-levels` precedence — repo/user overrides may only **tighten**
115
+ (autonomy = min, allow = intersect, deny = union); `docs/org-capabilities.md` gains the **bypass
116
+ contract** — every legitimate bypass surface named in one table with its guardrail
117
+ (`upgrade --force`, sidecar take-ownership, breakglass, `bypassPermissions` + its org disable).
118
+ - **Evidence-based `warn-missing-tests` hook**: convention-named test-file search (same dir +
119
+ `tests//test//__tests__` walking up) silences the old blanket nag when a test exists; specific
120
+ messages otherwise ("no test file for X" vs "no RED test recorded — write it first" via
121
+ `.pytest_cache`); curated skip list for generated/infra trees. Still advisory; still no-ops
122
+ without `jq`.
123
+ - **`/claude-kit:init` self-install loop**: a missing CLI now offers "Install claude-code-kit now
124
+ (Recommended)" (pipx, else pip) with re-detection before proceeding; skip/failure/no-installer
125
+ keep the stop-with-instructions behavior.
126
+ - **Doc-skill upgrades**: `refresh-docs` diffs the documented surface against the code surface and
127
+ classifies each divergence (`missing_in_docs` / `missing_in_code` / `signature_mismatch` /
128
+ `description_mismatch`, severity-guided); `documentation-and-adrs` gains the derived-artifact
129
+ discipline (edit the structured source, regenerate the deliverable, label source-vs-derived,
130
+ drift-check in CI).
131
+ - **Design intent capture** (`frontend-ui-engineering`): one concrete world-reference over
132
+ adjective lists; short intentional Do's/Don'ts; tokens are context serving the reference, not
133
+ rendering instructions.
134
+ - **Directory-review self-audit** (`docs/launch/directory-submission.md`): the reviewer's pass/fail
135
+ criteria plus the audit run against the kit's own registry — all 21 hooks tabulated (event,
136
+ gated/advisory, network, plugin-vs-starter); finding: zero direct network calls, one disclosed
137
+ indirect family (learning capture's background `claude` job, opt-out
138
+ `CLAUDE_KIT_NO_AUTOCAPTURE=1`).
139
+
140
+ ### Fixed
141
+
142
+ - `refresh-docs` shipped another project's literal doc paths and a nonexistent `frontend-dev`
143
+ agent name in its examples — now marked as example shapes / corrected to general-purpose
144
+ subagents.
145
+
146
+ ### Not adopted (deliberately)
147
+
148
+ - **The two L-sized scan items** — the `context-engineering` consolidation (8 merged proposals)
149
+ and the `tool-design` expansion (7 merged proposals) — are deferred to their own focused wave:
150
+ they overlap each other on the same two files and deserve a single coherent editing pass, not a
151
+ tail-end squeeze.
152
+ - **The 10 user-gated items** remain gated (list in the 0.60.0 block below) — unchanged, awaiting
153
+ owner decisions.
154
+
7
155
  ## [0.60.0] — 2026-07-15
8
156
 
9
157
  **OSS-adoption wave 1 — the first tranche from a 1,345-repo scan.** 39 provenance-tagged GitHub
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-code-kit
3
- Version: 0.60.0
3
+ Version: 0.62.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
@@ -581,9 +581,12 @@ become blockers — don't just wait at the next join:
581
581
  hand it a pre-planned buffer task (investigation, doc refresh, test hardening, design validation).
582
582
  Keep a small buffer list ready when you spawn the lanes (see the sprint plan's extra-tasks list).
583
583
  - **Context exhaustion → rotate before degradation.** Watch each long-running agent's commit cadence
584
- and output quality as a proxy for context budget. Rotate in a fresh agent *before* quality decays,
585
- capturing state to working memory first see the Agent Capacity & Replacement guidance in the
586
- `sprint` skill and `.claude/rules/agent-resilience.md`. Don't run one agent until it falls over.
584
+ and output quality as a proxy for context budget. The observable pressure symptoms (per the
585
+ `context-engineering` skill): silent partial completion, increasing vagueness, skipped protocol
586
+ steps. Rotate in a fresh agent *before* quality decays, capturing state to working memory first —
587
+ and verify the rotated-out agent's handoff against the task's **must-haves, not file existence**.
588
+ See the Agent Capacity & Replacement guidance in the `sprint` skill and
589
+ `.claude/rules/agent-resilience.md`. Don't run one agent until it falls over.
587
590
  - **Critical-path slippage → re-balance.** If the slowest lane *on the critical path* slips, pull a
588
591
  parallelizable task forward onto a free agent, or flag the slip — don't silently absorb it into a
589
592
  blown join.
@@ -17,9 +17,19 @@ command -v claude-kit >/dev/null 2>&1 && echo "CKIT_CLI=claude-kit" \
17
17
  || echo "CKIT_CLI_MISSING"; }; }
18
18
  ```
19
19
 
20
- **If the output is `CKIT_CLI_MISSING`, STOPdo not scaffold anything.** The CLI is not installed
21
- under any of its names. Tell the user it is required and how to install it, then have them re-run
22
- `/claude-kit:init`. Do **not** silently fall back to a partial install:
20
+ **If the output is `CKIT_CLI_MISSING`, offer to install it never scaffold without it.** The CLI
21
+ is not installed under any of its names. When an installer is available on PATH (`pipx`, else
22
+ `pip`/`pip3`), ask ONE AskUserQuestion with the install option first:
23
+
24
+ - **"Install claude-code-kit now (Recommended)"** — on accept, run `pipx install claude-code-kit`
25
+ (fall back to `pip install claude-code-kit` when pipx is absent), then **re-run the detection
26
+ block above** and proceed only if a CLI name now resolves.
27
+ - **"Skip"** — or if the install fails, or no installer is on PATH: STOP — do not scaffold
28
+ anything. Tell the user the CLI is required, show both install commands below, and have them
29
+ re-run `/claude-kit:init`. Do not silently fall back to a partial install.
30
+
31
+ Never ask when the CLI is already present, and never ask when no installer exists on PATH (nothing
32
+ to offer — go straight to the stop-with-instructions):
23
33
 
24
34
  - Recommended: `pipx install claude-code-kit`
25
35
  - Or: `pip install claude-code-kit`
@@ -48,6 +48,50 @@ class Y, Z% of the time."
48
48
  > The pipeline costs more per task by design (more agents, more gates). The question this harness
49
49
  > answers is whether the **defects caught** (and their severity) justify that delta **for your task mix**.
50
50
 
51
+ ## Skill-activation eval (the routing layer)
52
+
53
+ The arms above grade what happens *after* a skill or rule fires. A separate failure mode sits in
54
+ front of both: does the skill **activate when it should — and stay quiet when it shouldn't**?
55
+ Neither arm measures routing; add it as its own small suite.
56
+
57
+ - **Trigger F1.** Build two prompt lists per skill: *should-activate* (phrasings a real user would
58
+ use) and *should-not-activate* (near-misses from neighboring domains). Run both, score activation
59
+ as binary, report **precision / recall / F1**. A skill with great content and 40% recall is a
60
+ great document nobody reads; one that fires on near-misses taxes every unrelated task.
61
+ - **Monte Carlo certification for any number you publish.** Activation is stochastic — run each list
62
+ repeatedly and report the **Wilson confidence interval** on the activation rate, a
63
+ **Clopper-Pearson bound** on the should-activate failure rate (the conservative "at worst" claim),
64
+ and a **bootstrap consistency** check across resamples. "Activates 19/20, 95% CI [86%, 99%]" is a
65
+ claim; "it seems to trigger" is not.
66
+
67
+ ## Falsifiability discipline (before you trust any delta)
68
+
69
+ - **The falsifiability gate.** Every assertion must **fail in the baseline arm** at least sometimes —
70
+ an assertion that passes in both arms measures the model, not the pipeline, and supports no claim.
71
+ Drop it or sharpen it.
72
+ - **Quadrant-classify each row before averaging anything:** **Signal** (fails A, passes B — the
73
+ pipeline earned it) · **Baseline** (passes both — too easy, doesn't count) · **Unreachable**
74
+ (fails both — can't discriminate at this model tier) · **Regression** (passes A, fails B — the
75
+ pipeline *hurt*; investigate before shipping). Only Signal rows support a value claim; every
76
+ Regression row is a finding in its own right.
77
+ - **Label delta bands.** Report deltas with a qualitative band (noise / weak / strong at your N)
78
+ rather than celebrating a 3% move the confidence interval can't distinguish from zero.
79
+ - **Path-scoped isolation caveat.** If a rule/overlay is path-scoped (loads only when matching files
80
+ are touched), confirm both arms actually touch those paths — otherwise the comparison silently
81
+ measures *activation*, not content.
82
+
83
+ ## Fixed-overhead accounting
84
+
85
+ Always-injected prose is a **flat tax on every turn**, paid whether or not the content helps that
86
+ turn (measure your own install — see `docs/rules-context-budget.md`; even a single always-on rule
87
+ file costs on the order of 1–1.5k tokens per turn, and a full rule set far more). So the eval
88
+ question is not "does the pipeline help" but "does the help **beat the tax** for your task mix":
89
+
90
+ - Put the per-turn injected overhead in the Cost table, not only per-task totals.
91
+ - The only honest end-to-end number is a **billing A/B** — the same task mix with and without,
92
+ compared on what you were actually charged. Token figures extrapolated from a single run are
93
+ estimates: label them **est.**
94
+
51
95
  ## Honesty rules
52
96
 
53
97
  - **Never publish numbers you did not run.** A "90%" from one run and from twenty runs are not the same
@@ -31,6 +31,7 @@ non-duplicative gaps**, minimally and catalog-wired.
31
31
  | **[google](https://github.com/google) org review** (all 2,881 repos) | Reproducible-build verification & source-level missing-patch detection; secure-by-construction injection defense; archive-extraction & ReDoS hardening; multi-party authorization / breakglass; coverage-guided & continuous fuzzing; parameterized + semantic-equality + parallel/flaky testing; compile-time logic-bug & license-header lint layers + deterministic block sorting; multi-window burn-rate alerting & log rate-limiting; long-document extraction; prompt-as-code; statistical browser benchmarking; durable atomic writes; record-replay API testing; first-party SecOps MCP servers | Prose extensions across `security-and-hardening` (reproducible-build · missing-patch · secure-by-construction · archive · ReDoS), `human-in-the-loop` (MPA/breakglass), `testing` (fuzzing · parameterized · semantic-equality · parallel/flaky), `linting-and-formatting` (logic-bug + license-header layers · block sorting), `devops-observability` (burn-rate · log rate-limit), `context-engineering` (long-doc extraction), `reasoning-techniques` (prompt-as-code), `performance-optimization` (statistical benchmarking), `tool-design` (durable atomic writes), `api-integration` (record-replay) + **4 first-party SecOps MCP fragments** (Chronicle SIEM · GTI · SCC · SOAR) — **0 new agents/skills/rules** (from oss-rebuild · vanir · safe-active-record/mug · safearchive · re2 · building-secure-and-reliable-systems · patrick · go-cmp · atheris/honggfuzz/clusterfuzzlite · gtest-parallel · error-prone · addlicense · keep-sorted · prometheus-slo-burn · flogger · langextract · dotprompt · tachometer · renameio · test-server · mcp-security) | `0.51.0` |
32
32
  | **[facebook](https://github.com/facebook) (Meta) org review** (all 168 repos) | Interprocedural taint / data-flow security analysis (source→sink across functions); continuous A/B performance-regression CI gate; defense-in-depth agent-sandbox enforcement (argument validation + OS-level backstop) | Prose extensions to `linting-and-formatting` (taint/data-flow layer), `devops-observability` (perf-regression gate), `agent-guardrails` (§4 layered sandbox enforcement) — **0 new agents/skills/rules** (from pyre-check/Pysa · mariana-trench · FAI-PEP · mcpguard-dynamic; the org is mostly libraries/frameworks, so the verify pass *dropped* the rest — `DNE-TaaC`, `mbt`, plus already-covered `infer`/`mariana-trench`-as-tool, `fbt`, `memlab`, …) | `0.52.0` |
33
33
  | **[Netflix](https://github.com/Netflix) · [aws](https://github.com/aws) · [apple](https://github.com/apple) org review** (all **1,214** repos) | Service-level resilience the kit lacked entirely — stability patterns (timeout/retry-budget/circuit-breaker/bulkhead) + adaptive concurrency limiting, chaos engineering, and bounded-clock distributed time; failure-domain-aware progressive rollout; deterministic simulation testing; a formal RFC process (working-backwards + API bar-raiser); continuous usage-based least-privilege | The **new `resilience-engineering` rule** (chaos + stability patterns + bounded clocks, from `Netflix/concurrency-limits` · `Netflix/chaosmonkey` · `aws/clock-bound`); plus prose extensions to `devops-observability` (failure-domain rollout, from `aws/zone-aware-controllers-for-k8s`), `testing` (deterministic simulation testing, from `apple/foundationdb`), `spec-driven-development` (RFC track, from `aws/aws-cdk-rfcs`), and `security-and-hardening` (continuous least-privilege, from `Netflix/repokid`) — **1 new rule, 0 new agents/skills** (the orgs are overwhelmingly SDKs/CLIs/services, so the survey kept only 7 of 1,214) | `0.53.0` |
34
+ | **1,345-repo OSS adoption scan** (39 provenance-tagged searches across the AI/Claude/MCP/context ecosystem; 76 verified adoption ideas → 30-item backlog) | Agent-config supply-chain vetting + toxic-flow legs taxonomy; hidden-Unicode detection; content-type-aware **reversible** output compression (~200-token floor) + "think in code" (from Apache-2.0 `headroomlabs-ai/headroom` · `gsd-build/get-shit-done`; deterministic shell-side companion `rtk-ai/rtk`, referenced); symbol-first retrieval ladder (from MIT `oraios/serena` · `MinishLab/semble`); budget-visible statusline HUDs (`jarrodwatts/claude-hud`, referenced); tribal-standards elicitation (from `buildermethods/agent-os`); evidence-based test nagging + falsifiability eval discipline (from `maxritter/pilot-shell`); colocated skill evals (from `darkrishabh/agent-skills-eval`) | Waves across `dependency-verification` (vetting canon), `catalog/mcp.yaml` (+5 fragments → 22, all leg-annotated), `validator.py` (Unicode scan + INFO channel), **new `check_cross_references.py` CI gardener**, `context-engineering` (compression recipes · 5th primitive · retrieval ladder · budget visibility · pressure symptoms · tribal test), `tool-design`, `evals` §9–10 + `eval-harness`, `agent-guardrails` §3/§4, orchestrator VALIDATE, consolidate-learnings Promote, and ~10 more files — **0 new agents/skills, 1 new CI script** | `0.60.0`–`0.62.0` |
34
35
 
35
36
  > Each adoption is detailed in the [CHANGELOG](../CHANGELOG.md) — including, for every review, what we
36
37
  > deliberately **did not** add because the kit already covered it.
@@ -68,10 +68,64 @@ Before submitting, **re-check the live documentation** at the URLs below. Plugin
68
68
  - Plugin marketplaces: [code.claude.com/docs/en/plugin-marketplaces](https://code.claude.com/docs/en/plugin-marketplaces)
69
69
  - Plugin reference: [code.claude.com/docs/en/plugins-reference](https://code.claude.com/docs/en/plugins-reference)
70
70
 
71
+ ## Directory Review Self-Audit
72
+
73
+ Directory reviewers apply pass/fail criteria a submitter can run against themselves first. Three
74
+ that decide outcomes:
75
+
76
+ 1. **Description-matches-behavior (the surprise test).** For every hook, command, and skill: would
77
+ a user who read only its description be *surprised* by anything it actually does? Any surprise
78
+ is a fix-before-submitting.
79
+ 2. **Undisclosed outbound calls = automatic fail.** Every network touch (direct or via a spawned
80
+ tool) must be disclosed in the component's description *and* have an opt-out.
81
+ 3. **The whole shipped payload is in scope — including directories the plugin doesn't load.**
82
+ A git-source install clones everything (`scripts/`, `templates/`, `catalog/`, `examples/`), so
83
+ the audit covers the full tree, not just auto-discovered components.
84
+
85
+ ### First-party hook audit (run against this kit's own registry)
86
+
87
+ All hooks in the shipped registry, in the reviewer's format — `EVENT:hook — gated|advisory —
88
+ network`. **gated** = can block the action (exit 2 / deny); **advisory** = warn-or-context only,
89
+ always exits 0. Every script degrades to a no-op without `jq`. Regenerate this table when the
90
+ registry changes (`src/claude_kit/hooks.py` is the source of truth; `gen_hooks.py --check` pins the
91
+ generated configs).
92
+
93
+ | Hook | Event | Mode | Network | In plugin hooks.json |
94
+ |------|-------|------|---------|----------------------|
95
+ | load-continuity | SessionStart | advisory | no | yes |
96
+ | load-learnings | SessionStart | advisory | no | yes |
97
+ | load-autonomy | SessionStart | advisory | no | yes |
98
+ | capture-learnings-catchup | SessionStart | advisory | **indirect** — spawns a background `claude` job (model API); disclosed, opt-out `CLAUDE_KIT_NO_AUTOCAPTURE=1` | yes |
99
+ | guard-rm-rf | PreToolUse | **gated** (inline) | no | yes |
100
+ | guard-push-main | PreToolUse | **gated** | no | yes |
101
+ | guard-destructive-git | PreToolUse | **gated** | no | yes |
102
+ | protect-secrets | PreToolUse | **gated** (inline) | no | yes |
103
+ | guard-commit-secrets | PreToolUse | **gated** | no | yes |
104
+ | validate-settings | PreToolUse | **gated** | no | yes |
105
+ | warn-shared-modules | PreToolUse | advisory | no | yes |
106
+ | warn-llm-io | PreToolUse | advisory | no | yes |
107
+ | warn-sensitive-files | PreToolUse | advisory | no | yes |
108
+ | warn-large-edits | PreToolUse | advisory | no | starter only |
109
+ | validate-frontmatter | PreToolUse | advisory | no | starter only |
110
+ | warn-missing-tests | PostToolUse | advisory | no | starter only |
111
+ | audit-log | PostToolUse | advisory | no | starter only |
112
+ | lint-fix | Stop | advisory (runs the project's linter) | no | yes |
113
+ | type-check | Stop | advisory (runs the project's type-checker) | no | yes |
114
+ | capture-learnings-stop | Stop | advisory | indirect — same `claude` job + opt-out as above | starter only |
115
+ | capture-learnings | SessionEnd | advisory | indirect — same `claude` job + opt-out as above | yes |
116
+
117
+ **Audit result:** 21 registry hooks (16 ride the plugin's `hooks.json`; the rest install via the
118
+ scaffolded starter `settings.json`). One behavior family touches the network, *indirectly*, via a
119
+ spawned `claude` background job (learning capture) — disclosed in the init interview, surfaced by
120
+ `doctor`, and opt-out via `CLAUDE_KIT_NO_AUTOCAPTURE=1`. No hook makes a direct outbound call. All
121
+ gated hooks are deterministic string/path guards with no data egress. This passes criteria 1–3
122
+ above as of the audit date; re-run after any hook change.
123
+
71
124
  ## Owner Submission Checklist
72
125
 
73
126
  - [ ] Run `claude plugin validate .` and `claude plugin validate . --strict`
74
127
  - [ ] Fix any validation errors (warnings are optional)
128
+ - [ ] Re-run the Directory Review Self-Audit above (hook table current, no undisclosed network, no description surprises)
75
129
  - [ ] Verify the live submission form and documentation links above
76
130
  - [ ] Consider the optional manifest hygiene items (not required)
77
131
  - [ ] Choose submission path: solo (platform.claude.com) or organization (claude.ai)
@@ -189,6 +189,23 @@ via `/deprecation-and-migration`; have security/DevOps approve hooks and sensiti
189
189
  and roll out repo-by-repo with `claude-kit diff` → `claude-kit upgrade`; run different autonomy levels
190
190
  per repo; capture recurring prompts (→ skills) and mistakes (→ rules) via the `remember` skill.
191
191
 
192
+ ### Precedence & the bypass contract
193
+
194
+ **Overrides only tighten.** Repo- and user-level settings may lower autonomy, add gates/denies, or
195
+ escalate a warn to a block — never the reverse (allow = intersect, deny = union, autonomy =
196
+ min(org, repo)); see `.claude/rules/autonomy-levels.md` "Precedence". The corollary is that every
197
+ *legitimate* way around the policy must be **named**, so none is discoverable-only. The kit's real
198
+ bypass surfaces are exactly these:
199
+
200
+ | Bypass surface | What it bypasses | Guardrail around it |
201
+ |----------------|------------------|---------------------|
202
+ | `claude-kit upgrade --force` | edit-preserving upgrade (overwrites drifted kit files) | drifted originals are backed up as sidecars; diff first |
203
+ | Sidecar take-ownership (keep your edit, discard the kit's `.claude-kit` sidecar) | kit ownership of a file | the manifest marks it user-owned from then on — upgrades stop touching it |
204
+ | Breakglass (emergency human override) | a gate or block during an incident | scoped + logged per `.claude/rules/human-in-the-loop.md`; reviewed afterwards |
205
+ | `bypassPermissions` mode | Claude Code's permission prompts | org-side `disableBypassPermissionsMode` can remove it entirely |
206
+
207
+ Anything not on this list that circumvents policy is a finding, not a feature.
208
+
192
209
  ### Planned
193
210
 
194
211
  `claude-sdlc package-org-pack` / `install-org-pack` are registered as **planned** stubs — they will
@@ -33,6 +33,7 @@ if printf '%s' "$CMD" | tr -d '"\047\134' | tr ';|&' '\n\n\n' \
33
33
  echo "BLOCKED: 'kubectl delete' is disabled by claude-kit -- destructive deletes must not run from an agent session." >&2
34
34
  echo " Use a reversible alternative: 'kubectl scale --replicas=0' to stop a workload, 'kubectl rollout undo' to roll back," >&2
35
35
  echo " or remove the resource from the Git/Helm source and let the pipeline reconcile." >&2
36
+ echo " If a true delete is genuinely required, a human operator must run it directly -- do not work around this guard." >&2
36
37
  echo " Read-only checks still work ('kubectl auth can-i delete <res>', 'kubectl get/describe'). (guard-kubectl-delete.sh)" >&2
37
38
  exit 2
38
39
  fi
@@ -0,0 +1,90 @@
1
+ #!/usr/bin/env bash
2
+ # PostToolUse(Edit|Write): after a source-code change, check for EVIDENCE of tests before nudging.
3
+ # Evidence-based, not a blanket reminder: looks for a sibling/convention-named test file
4
+ # (test_<stem>.py, <stem>_test.py, <stem>.test|spec.<ext>, <stem>_test.go, <stem>Test(s).cs, ...)
5
+ # in the same dir and in tests//test//__tests__ dirs walking up from the file; if a test file
6
+ # exists, checks .pytest_cache/v/cache/lastfailed for a recorded RED test for the module (Python).
7
+ # Emits a SPECIFIC message only when evidence is absent; stays quiet when a test file exists.
8
+ # Advisory only (always exits 0). Quiet for test files, docs, config, generated/infra trees, and
9
+ # the .claude/ config itself. Degrades to a no-op without jq.
10
+ # The reminder returns as hookSpecificOutput.additionalContext JSON on stdout (Claude reads it next
11
+ # to the tool result, per the current hooks reference) -- exit-0 stderr is debug-log-only.
12
+ command -v jq >/dev/null 2>&1 || exit 0
13
+ INPUT="$(cat)"
14
+ FILE_PATH="$(echo "$INPUT" | jq -r '.tool_input.file_path // .tool_response.filePath // empty' 2>/dev/null || true)"
15
+ [ -z "$FILE_PATH" ] || [ "$FILE_PATH" = "null" ] && exit 0
16
+
17
+ low="$(printf '%s' "$FILE_PATH" | tr '[:upper:]' '[:lower:]')"
18
+
19
+ # Skip non-source: tests, docs, config, markdown, and the kit's own config.
20
+ case "$low" in
21
+ *test*|*spec*|*.md|*.markdown|*.json|*.ya?ml|*.toml|*.ini|*.cfg|*.txt|*.lock|*/.claude/*)
22
+ exit 0 ;;
23
+ esac
24
+
25
+ # Curated skip list: trees that legitimately ship without sibling tests (generated, infra, vendored).
26
+ case "$low" in
27
+ */migrations/*|*/alembic/*|*/terraform/*|*/generated/*|*/proto/*|*/infra/*|*/dist/*|*/build/*|*/node_modules/*|*/vendor/*|*/.venv/*)
28
+ exit 0 ;;
29
+ esac
30
+
31
+ # Only check recognisable source files.
32
+ case "$low" in
33
+ *.py|*.ts|*.tsx|*.js|*.jsx|*.go|*.rs|*.rb|*.java|*.kt|*.cs|*.php|*.swift|*.scala|*.c|*.cc|*.cpp|*.h|*.hpp) : ;;
34
+ *) exit 0 ;;
35
+ esac
36
+
37
+ base="$(basename "$FILE_PATH")"
38
+ dir="$(dirname "$FILE_PATH")"
39
+ stem="${base%.*}"
40
+ ext="${base##*.}"
41
+
42
+ # Test-file name candidates per ecosystem convention.
43
+ cands=()
44
+ case "$ext" in
45
+ py) cands=("test_${stem}.py" "${stem}_test.py") ;;
46
+ go) cands=("${stem}_test.go") ;;
47
+ cs) cands=("${stem}Tests.cs" "${stem}Test.cs") ;;
48
+ rb) cands=("${stem}_spec.rb" "${stem}_test.rb") ;;
49
+ ts|tsx|js|jsx) cands=("${stem}.test.${ext}" "${stem}.spec.${ext}") ;;
50
+ *) cands=("test_${stem}.${ext}" "${stem}_test.${ext}" "${stem}.test.${ext}" "${stem}.spec.${ext}") ;;
51
+ esac
52
+
53
+ # Evidence search: sibling in the same dir, then tests//test//__tests__ dirs walking up (bounded).
54
+ found=""
55
+ for cand in "${cands[@]}"; do
56
+ [ -f "$dir/$cand" ] && { found=1; break; }
57
+ done
58
+ if [ -z "$found" ]; then
59
+ d="$dir"
60
+ for _ in 1 2 3 4 5 6; do
61
+ for td in tests test __tests__; do
62
+ [ -d "$d/$td" ] || continue
63
+ for cand in "${cands[@]}"; do
64
+ if find "$d/$td" -maxdepth 4 -name "$cand" -print -quit 2>/dev/null | grep -q .; then
65
+ found=1
66
+ break 3
67
+ fi
68
+ done
69
+ done
70
+ parent="$(dirname "$d")"
71
+ [ "$parent" = "$d" ] && break
72
+ d="$parent"
73
+ done
74
+ fi
75
+
76
+ W=""
77
+ if [ -z "$found" ]; then
78
+ W="REMINDER: no test file found for $FILE_PATH (searched sibling + tests//test//__tests__ conventions: ${cands[*]}) -- create one before marking work complete (.claude/rules/testing.md)."
79
+ elif [ "$ext" = "py" ] && [ -f ".pytest_cache/v/cache/lastfailed" ]; then
80
+ # A test file exists; for Python, check whether a RED test was ever recorded for this module.
81
+ if ! jq -r 'keys[]' .pytest_cache/v/cache/lastfailed 2>/dev/null | grep -q "$stem"; then
82
+ W="NOTE: tests exist for $stem but no failing test was recorded for it -- if this change adds behavior, write the RED test first (.claude/rules/testing.md)."
83
+ fi
84
+ fi
85
+
86
+ if [ -n "$W" ]; then
87
+ # stdout must be ONLY the JSON object for Claude Code to process it.
88
+ jq -n --arg ctx "$W" '{hookSpecificOutput: {hookEventName: "PostToolUse", additionalContext: $ctx}}'
89
+ fi
90
+ exit 0
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "claude-code-kit"
7
- version = "0.60.0"
7
+ version = "0.62.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"
@@ -72,6 +72,13 @@ Before declaring a stage done or handing to the next agent/human:
72
72
  filesystem or data guarantee; and any client-side flag is **secondary to the real authorization
73
73
  boundary** — the backend's IAM/role grants are what actually limit blast radius, so scope those
74
74
  first and treat the flag as a second layer, never the first.
75
+ - **Unfamiliar-CLI protocol — validate the leaf, then discover the schema.** Before first use of a
76
+ CLI subcommand you haven't run in this project, read `--help` on the **exact leaf command** you are
77
+ about to invoke — validation is not transitive from a parent group (`tool db --help` tells you
78
+ nothing about `tool db restore`'s destructive flags). And before any unconstrained list/query
79
+ call, do **single-item schema discovery** first (`--limit 1` + machine-readable output), then
80
+ re-query projected to only the fields you need — you learn the response shape without flooding
81
+ your context or hammering the backend.
75
82
  - **Destructive or outward-facing actions are gated.** Deleting/overwriting files you didn't create,
76
83
  force-pushing, deploying, publishing, or sending data to an external service are **human decision
77
84
  points** — see `.claude/rules/human-in-the-loop.md`. Confirm first.
@@ -86,7 +93,11 @@ and act on it — do not improvise a destructive step because it seems convenien
86
93
  - **Block — never autonomously.** Force-push, rewriting already-published history, deleting a branch
87
94
  or tag, a destructive schema change against live data (`DROP` / `TRUNCATE` / column drop / a
88
95
  narrowing or `NOT NULL` on existing rows), bulk or recursive deletion, or disabling a safety
89
- control. These need explicit human authorization first the **restricted** tier of
96
+ control. In cloud control planes the same tier covers: **IAM / role-binding changes, billing
97
+ changes, org-level governance edits, KMS-class key operations** (schedule-delete, disable,
98
+ rotation changes), **enabling paid APIs/services, and an autonomous IaC apply** — where the tool
99
+ offers a dry-run/preview/plan mode, running it is mandatory and its output goes to the human with
100
+ the request. These need explicit human authorization first — the **restricted** tier of
90
101
  `.claude/rules/risk-classification.md`. Several are also stopped deterministically by
91
102
  `hooks/scripts/guard-destructive-git.sh` and the `rm -rf` / push-to-main guards.
92
103
  - **Confirm — pause and get a yes.** Deleting or overwriting a file you did not create, applying a
@@ -126,7 +137,11 @@ agent on a broken foundation.* Before worrying about prompt injection, enforce t
126
137
  default (never "the whole disk, minus a deny-list").
127
138
  - **Network** — deny outbound by default; allowlist only the hosts the task genuinely needs.
128
139
  - **Resource bounds** — wall-clock timeout plus memory/output caps, so a runaway or adversarial step
129
- fails *closed* instead of hanging or flooding.
140
+ fails *closed* instead of hanging or flooding. For token budgets, degrade **gracefully** rather
141
+ than cliff-stopping: a warn fraction (~80%) injects a wrap-up signal (finish the current step,
142
+ persist state), a hard-stop fraction forces a final answer from what is in hand, and the ceiling
143
+ is set with compaction in mind — when compaction is active the ceiling bounds a *window*, not
144
+ the run, so couple the two deliberately.
130
145
  - **Versioned & runtime-updatable** — keep the policy as data you can tighten mid-run (ties to §5's
131
146
  revocable authz) and review afterward, not constants baked into the agent.
132
147
 
@@ -13,6 +13,16 @@ deterministic parts are enforced by hooks and `settings.permissions`, the rest i
13
13
  | **autonomous-pr** | create branches + PR-ready changes | **merge** — human review is required before merge |
14
14
  | **enterprise-controlled** | work only through strict gates with an audit trail | edit sensitive files without approval; complete without the security + review agents passing |
15
15
 
16
+ ## Precedence — overrides may only tighten
17
+
18
+ When org policy and a repo- or user-level setting disagree, the resolution is always the **stricter**
19
+ of the two: effective autonomy = **min(org, repo)**; allow-lists **intersect**; deny-lists **union**;
20
+ a warn may be escalated to a block locally, but a block is never downgraded to a warn. A repo can
21
+ run *more* cautiously than its org demands, never less — there is no repo-level "loosen" switch.
22
+ Legitimate exceptions go through the named bypass surfaces (the "Bypass contract" in
23
+ `docs/org-capabilities.md` of the claude-kit repo), which are explicit and auditable — not a quiet
24
+ config override.
25
+
16
26
  ## Rules
17
27
 
18
28
  - **Never exceed the active level.** If a task needs more autonomy than granted, stop and ask — do not
@@ -142,6 +142,38 @@ A single-turn eval will not catch this; claude-kit's own agents run over long mu
142
142
  > [`microsoft/lost_in_conversation`](https://github.com/microsoft/lost_in_conversation). Re-derived in
143
143
  > prose; not vendored.
144
144
 
145
+ ## 9. Evals as versioned, declarative config — gated in CI
146
+
147
+ Keep the eval suite as **one declarative config file in the repo** — cases × graders × pass
148
+ thresholds together (the shape popularized by promptfoo-style runners; any runner with those three
149
+ parts qualifies). Config-as-data is what makes the Rules below enforceable: the eval diff rides in
150
+ the same PR as the behavior change, and CI — not memory — runs it.
151
+
152
+ - **Trigger on behavior-changing paths.** Path-filter the CI job to the files that change model
153
+ behavior (prompts, rules, skills, agent definitions, model/tier config) so the suite runs when it
154
+ must and stays out of unrelated PRs.
155
+ - **Gate on parsed results, not exit codes alone.** Emit machine-readable output (JSON / JUnit),
156
+ parse the pass rate, and fail the job against the declared threshold — that is what turns the eval
157
+ into a *gate* (§6) instead of a log line.
158
+ - **Cache responses keyed on the prompt-set hash.** Reruns whose inputs didn't change replay from
159
+ cache — CI stays fast and cheap, and a score delta isolates the change you actually made.
160
+ - **Record lineage.** Stamp every run with the git SHA and a run id, so any score is traceable to
161
+ the exact config + code that produced it.
162
+
163
+ ## 10. Colocate a skill's evals with the skill
164
+
165
+ A skill's eval lives **beside the skill** — an `evals/evals.json` next to its `SKILL.md` declaring
166
+ the cases (the emerging agent-skills colocation convention) — not in a central suite it will drift
167
+ from. Two properties matter more than the file layout:
168
+
169
+ - **A/B against the skill's absence.** Each case runs *with* and *without* the skill and is judged
170
+ on assertions the skill's own prose claims (cited criteria, not vibes). A skill that does not
171
+ measurably beat its absence on its own claims is context cost with no return — the same
172
+ with/without method as the kit-level harness (`docs/eval-harness.md` in the claude-kit repo),
173
+ applied per skill.
174
+ - **Runners are referenced, not bundled.** Ready runners exist for exactly this layout (e.g.
175
+ `agent-skills-eval`); any tool that executes colocated cases with/without the skill qualifies.
176
+
145
177
  ## Rules
146
178
 
147
179
  1. **No prompt/rule/tool/model change ships without an eval run** that covers the affected behavior.
@@ -80,6 +80,15 @@ This turns "I think the run is progressing" into a measured session you can grad
80
80
  (`.claude/rules/evals.md`) and trend. (This is *agent-run* telemetry; **app and LLM** observability
81
81
  live in the `observability-and-logging`, `otel-tracing`, and `langfuse-llm-tracing` skills.)
82
82
 
83
+ **Budget the run before you launch it.** Spend is a criterion too — declare it up front like any
84
+ other goal, derived from the orchestration shape: single agent ≈ 1×, maker-checker ≈ 2×,
85
+ parallel-N ≈ N+1× (workers + a merge pass), debate-R ≈ 1+R×. Anything over ~2× the single-agent
86
+ baseline needs a written justification before tokens go out, not an apology after. Record
87
+ **estimate vs actual** in the run telemetry above, and define the **on-exceed action** with the
88
+ budget: stop spawning, checkpoint state to `.claude/CONTINUITY.md`, and escalate per
89
+ `.claude/rules/human-in-the-loop.md` — never silently run past the number you announced. (Wave-scale
90
+ declarations live in `.claude/rules/wave-orchestration.md`'s manifest.)
91
+
83
92
  > Stack-agnostic adaptation of the agent-session instrumentation pattern in the Apache-2.0
84
93
  > [`alibaba/loongsuite-js`](https://github.com/alibaba/loongsuite-js) (session→turn→tool/LLM span
85
94
  > hierarchy via runtime hooks, GenAI semantic-convention attributes). Re-derived in prose; not vendored.