claude-code-kit 0.7.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 (219) hide show
  1. claude_code_kit-0.7.0/.claude-plugin/marketplace.json +18 -0
  2. claude_code_kit-0.7.0/.claude-plugin/plugin.json +25 -0
  3. claude_code_kit-0.7.0/.gitignore +25 -0
  4. claude_code_kit-0.7.0/CHANGELOG.md +305 -0
  5. claude_code_kit-0.7.0/CLAUDE.md +80 -0
  6. claude_code_kit-0.7.0/CONTRIBUTING.md +93 -0
  7. claude_code_kit-0.7.0/LICENSE +21 -0
  8. claude_code_kit-0.7.0/PKG-INFO +384 -0
  9. claude_code_kit-0.7.0/README.md +357 -0
  10. claude_code_kit-0.7.0/agents/acceptance-reviewer.md +60 -0
  11. claude_code_kit-0.7.0/agents/auditor.md +76 -0
  12. claude_code_kit-0.7.0/agents/dependency-scanner.md +84 -0
  13. claude_code_kit-0.7.0/agents/developer.md +187 -0
  14. claude_code_kit-0.7.0/agents/devils-advocate.md +62 -0
  15. claude_code_kit-0.7.0/agents/devops-engineer.md +134 -0
  16. claude_code_kit-0.7.0/agents/e2e-tester.md +152 -0
  17. claude_code_kit-0.7.0/agents/em-reviewer.md +105 -0
  18. claude_code_kit-0.7.0/agents/incident-responder.md +64 -0
  19. claude_code_kit-0.7.0/agents/merge-reviewer.md +194 -0
  20. claude_code_kit-0.7.0/agents/observability-engineer.md +94 -0
  21. claude_code_kit-0.7.0/agents/orchestrator.md +551 -0
  22. claude_code_kit-0.7.0/agents/owasp-reviewer.md +76 -0
  23. claude_code_kit-0.7.0/agents/policy-validator.md +63 -0
  24. claude_code_kit-0.7.0/agents/pr-raiser.md +138 -0
  25. claude_code_kit-0.7.0/agents/risk-classifier.md +50 -0
  26. claude_code_kit-0.7.0/agents/sdlc-code-reviewer.md +196 -0
  27. claude_code_kit-0.7.0/agents/secret-scanner.md +70 -0
  28. claude_code_kit-0.7.0/agents/security-reviewer.md +80 -0
  29. claude_code_kit-0.7.0/agents/senior-backend-dev.md +199 -0
  30. claude_code_kit-0.7.0/agents/senior-frontend-dev.md +181 -0
  31. claude_code_kit-0.7.0/agents/senior-tester.md +206 -0
  32. claude_code_kit-0.7.0/agents/spec-doc-writer.md +331 -0
  33. claude_code_kit-0.7.0/agents/story-planner.md +56 -0
  34. claude_code_kit-0.7.0/agents/technical-architect.md +139 -0
  35. claude_code_kit-0.7.0/agents/tester.md +193 -0
  36. claude_code_kit-0.7.0/agents/ui-designer.md +73 -0
  37. claude_code_kit-0.7.0/agents/unit-tester.md +119 -0
  38. claude_code_kit-0.7.0/catalog/mcp.yaml +54 -0
  39. claude_code_kit-0.7.0/catalog/org.yaml +145 -0
  40. claude_code_kit-0.7.0/catalog/profiles.yaml +96 -0
  41. claude_code_kit-0.7.0/catalog/stacks.yaml +96 -0
  42. claude_code_kit-0.7.0/commands/init.md +36 -0
  43. claude_code_kit-0.7.0/commands/sdlc.md +18 -0
  44. claude_code_kit-0.7.0/commands/status.md +20 -0
  45. claude_code_kit-0.7.0/docs/agentic-patterns.md +116 -0
  46. claude_code_kit-0.7.0/docs/agents.md +112 -0
  47. claude_code_kit-0.7.0/docs/architecture.md +235 -0
  48. claude_code_kit-0.7.0/docs/org-capabilities.md +200 -0
  49. claude_code_kit-0.7.0/hooks/hooks.json +58 -0
  50. claude_code_kit-0.7.0/hooks/scripts/audit-log.sh +18 -0
  51. claude_code_kit-0.7.0/hooks/scripts/guard-secrets.sh +26 -0
  52. claude_code_kit-0.7.0/hooks/scripts/lint-fix.sh +38 -0
  53. claude_code_kit-0.7.0/hooks/scripts/load-continuity.sh +32 -0
  54. claude_code_kit-0.7.0/hooks/scripts/load-learnings.sh +40 -0
  55. claude_code_kit-0.7.0/hooks/scripts/type-check.sh +23 -0
  56. claude_code_kit-0.7.0/hooks/scripts/validate-frontmatter.sh +34 -0
  57. claude_code_kit-0.7.0/hooks/scripts/validate-settings.sh +21 -0
  58. claude_code_kit-0.7.0/hooks/scripts/warn-large-edits.sh +24 -0
  59. claude_code_kit-0.7.0/hooks/scripts/warn-missing-tests.sh +24 -0
  60. claude_code_kit-0.7.0/hooks/scripts/warn-sensitive-files.sh +30 -0
  61. claude_code_kit-0.7.0/hooks/scripts/warn-shared-modules.sh +33 -0
  62. claude_code_kit-0.7.0/pyproject.toml +97 -0
  63. claude_code_kit-0.7.0/rules/agent-guardrails.md +83 -0
  64. claude_code_kit-0.7.0/rules/agent-memory.md +106 -0
  65. claude_code_kit-0.7.0/rules/agent-resilience.md +61 -0
  66. claude_code_kit-0.7.0/rules/autonomy-levels.md +30 -0
  67. claude_code_kit-0.7.0/rules/code-organization.md +312 -0
  68. claude_code_kit-0.7.0/rules/continuity.md +84 -0
  69. claude_code_kit-0.7.0/rules/design-patterns.md +422 -0
  70. claude_code_kit-0.7.0/rules/devops-observability.md +57 -0
  71. claude_code_kit-0.7.0/rules/documentation.md +326 -0
  72. claude_code_kit-0.7.0/rules/evals.md +62 -0
  73. claude_code_kit-0.7.0/rules/frontend-best-practices.md +157 -0
  74. claude_code_kit-0.7.0/rules/goal-setting-and-monitoring.md +72 -0
  75. claude_code_kit-0.7.0/rules/human-in-the-loop.md +64 -0
  76. claude_code_kit-0.7.0/rules/linting-and-formatting.md +220 -0
  77. claude_code_kit-0.7.0/rules/mandatory-workflow.md +309 -0
  78. claude_code_kit-0.7.0/rules/model-tiers.md +34 -0
  79. claude_code_kit-0.7.0/rules/quality-gates.md +107 -0
  80. claude_code_kit-0.7.0/rules/rarv-cycle.md +31 -0
  81. claude_code_kit-0.7.0/rules/reasoning-techniques.md +62 -0
  82. claude_code_kit-0.7.0/rules/responsive-and-accessibility.md +353 -0
  83. claude_code_kit-0.7.0/rules/risk-classification.md +36 -0
  84. claude_code_kit-0.7.0/rules/testing.md +417 -0
  85. claude_code_kit-0.7.0/rules/tool-design.md +66 -0
  86. claude_code_kit-0.7.0/scripts/init.sh +72 -0
  87. claude_code_kit-0.7.0/skills/_references/accessibility-checklist.md +160 -0
  88. claude_code_kit-0.7.0/skills/_references/orchestration-patterns.md +405 -0
  89. claude_code_kit-0.7.0/skills/_references/performance-checklist.md +153 -0
  90. claude_code_kit-0.7.0/skills/_references/security-checklist.md +134 -0
  91. claude_code_kit-0.7.0/skills/_references/testing-patterns.md +236 -0
  92. claude_code_kit-0.7.0/skills/accessibility-review/SKILL.md +56 -0
  93. claude_code_kit-0.7.0/skills/api-and-interface-design/SKILL.md +294 -0
  94. claude_code_kit-0.7.0/skills/api-integration/SKILL.md +348 -0
  95. claude_code_kit-0.7.0/skills/archive-sprint/SKILL.md +31 -0
  96. claude_code_kit-0.7.0/skills/backlog/SKILL.md +41 -0
  97. claude_code_kit-0.7.0/skills/backlog/item-template.md +20 -0
  98. claude_code_kit-0.7.0/skills/browser-testing-with-devtools/SKILL.md +302 -0
  99. claude_code_kit-0.7.0/skills/ci-cd-and-automation/SKILL.md +402 -0
  100. claude_code_kit-0.7.0/skills/code-review-and-quality/SKILL.md +347 -0
  101. claude_code_kit-0.7.0/skills/code-simplification/SKILL.md +331 -0
  102. claude_code_kit-0.7.0/skills/component-design/SKILL.md +171 -0
  103. claude_code_kit-0.7.0/skills/consolidate-learnings/SKILL.md +55 -0
  104. claude_code_kit-0.7.0/skills/context-engineering/SKILL.md +321 -0
  105. claude_code_kit-0.7.0/skills/debugging-and-error-recovery/SKILL.md +300 -0
  106. claude_code_kit-0.7.0/skills/decision/SKILL.md +46 -0
  107. claude_code_kit-0.7.0/skills/decision/adr-template.md +36 -0
  108. claude_code_kit-0.7.0/skills/deprecation-and-migration/SKILL.md +207 -0
  109. claude_code_kit-0.7.0/skills/documentation-and-adrs/SKILL.md +299 -0
  110. claude_code_kit-0.7.0/skills/doubt-driven-development/SKILL.md +243 -0
  111. claude_code_kit-0.7.0/skills/execute/SKILL.md +27 -0
  112. claude_code_kit-0.7.0/skills/frontend-ui-engineering/SKILL.md +328 -0
  113. claude_code_kit-0.7.0/skills/git-workflow-and-versioning/SKILL.md +300 -0
  114. claude_code_kit-0.7.0/skills/idea-refine/SKILL.md +178 -0
  115. claude_code_kit-0.7.0/skills/idea-refine/examples.md +238 -0
  116. claude_code_kit-0.7.0/skills/idea-refine/frameworks.md +99 -0
  117. claude_code_kit-0.7.0/skills/idea-refine/refinement-criteria.md +113 -0
  118. claude_code_kit-0.7.0/skills/idea-refine/scripts/idea-refine.sh +15 -0
  119. claude_code_kit-0.7.0/skills/incident-postmortem/SKILL.md +74 -0
  120. claude_code_kit-0.7.0/skills/incremental-implementation/SKILL.md +245 -0
  121. claude_code_kit-0.7.0/skills/interview-me/SKILL.md +221 -0
  122. claude_code_kit-0.7.0/skills/load-testing/SKILL.md +83 -0
  123. claude_code_kit-0.7.0/skills/manual-test/SKILL.md +516 -0
  124. claude_code_kit-0.7.0/skills/performance-optimization/SKILL.md +277 -0
  125. claude_code_kit-0.7.0/skills/planning-and-task-breakdown/SKILL.md +223 -0
  126. claude_code_kit-0.7.0/skills/playwright-verification/SKILL.md +205 -0
  127. claude_code_kit-0.7.0/skills/refresh-docs/SKILL.md +63 -0
  128. claude_code_kit-0.7.0/skills/remember/SKILL.md +96 -0
  129. claude_code_kit-0.7.0/skills/scope/SKILL.md +52 -0
  130. claude_code_kit-0.7.0/skills/scope/scope-template.md +82 -0
  131. claude_code_kit-0.7.0/skills/sdlc/SKILL.md +83 -0
  132. claude_code_kit-0.7.0/skills/security-and-hardening/SKILL.md +368 -0
  133. claude_code_kit-0.7.0/skills/security-verification/SKILL.md +209 -0
  134. claude_code_kit-0.7.0/skills/shipping-and-launch/SKILL.md +309 -0
  135. claude_code_kit-0.7.0/skills/smoke-test/SKILL.md +78 -0
  136. claude_code_kit-0.7.0/skills/source-driven-development/SKILL.md +195 -0
  137. claude_code_kit-0.7.0/skills/spec-driven-development/SKILL.md +200 -0
  138. claude_code_kit-0.7.0/skills/sprint/SKILL.md +67 -0
  139. claude_code_kit-0.7.0/skills/sprint/sprint-template.md +90 -0
  140. claude_code_kit-0.7.0/skills/test-driven-development/SKILL.md +383 -0
  141. claude_code_kit-0.7.0/skills/threat-model/SKILL.md +60 -0
  142. claude_code_kit-0.7.0/skills/triage/SKILL.md +87 -0
  143. claude_code_kit-0.7.0/skills/ui-ux-design/SKILL.md +71 -0
  144. claude_code_kit-0.7.0/skills/unit-test/SKILL.md +237 -0
  145. claude_code_kit-0.7.0/skills/using-agent-skills/SKILL.md +180 -0
  146. claude_code_kit-0.7.0/src/claude_kit/__init__.py +10 -0
  147. claude_code_kit-0.7.0/src/claude_kit/__main__.py +8 -0
  148. claude_code_kit-0.7.0/src/claude_kit/catalog.py +476 -0
  149. claude_code_kit-0.7.0/src/claude_kit/cli.py +327 -0
  150. claude_code_kit-0.7.0/src/claude_kit/hooks.py +246 -0
  151. claude_code_kit-0.7.0/src/claude_kit/models.py +205 -0
  152. claude_code_kit-0.7.0/src/claude_kit/prompts.py +209 -0
  153. claude_code_kit-0.7.0/src/claude_kit/render.py +146 -0
  154. claude_code_kit-0.7.0/src/claude_kit/scaffold.py +492 -0
  155. claude_code_kit-0.7.0/src/claude_kit/upgrader.py +294 -0
  156. claude_code_kit-0.7.0/src/claude_kit/validator.py +197 -0
  157. claude_code_kit-0.7.0/templates/CLAUDE.md +238 -0
  158. claude_code_kit-0.7.0/templates/CLAUDE.stack.md.tmpl +53 -0
  159. claude_code_kit-0.7.0/templates/CONTINUITY.template.md +35 -0
  160. claude_code_kit-0.7.0/templates/README.claude-sdlc.md.tmpl +219 -0
  161. claude_code_kit-0.7.0/templates/agent-memory/MEMORY.md +30 -0
  162. claude_code_kit-0.7.0/templates/agent-memory/api/.gitkeep +0 -0
  163. claude_code_kit-0.7.0/templates/agent-memory/architecture/.gitkeep +0 -0
  164. claude_code_kit-0.7.0/templates/agent-memory/debugging/.gitkeep +0 -0
  165. claude_code_kit-0.7.0/templates/agent-memory/gotchas/.gitkeep +0 -0
  166. claude_code_kit-0.7.0/templates/agent-memory/patterns/.gitkeep +0 -0
  167. claude_code_kit-0.7.0/templates/agent-memory/performance/.gitkeep +0 -0
  168. claude_code_kit-0.7.0/templates/artifacts/adr.md +18 -0
  169. claude_code_kit-0.7.0/templates/artifacts/feature-spec.md +29 -0
  170. claude_code_kit-0.7.0/templates/artifacts/release-plan.md +23 -0
  171. claude_code_kit-0.7.0/templates/artifacts/runbook.md +24 -0
  172. claude_code_kit-0.7.0/templates/artifacts/security-review.md +23 -0
  173. claude_code_kit-0.7.0/templates/artifacts/test-plan.md +22 -0
  174. claude_code_kit-0.7.0/templates/org/README.md +53 -0
  175. claude_code_kit-0.7.0/templates/org/agents/data-workflow-agent.md +59 -0
  176. claude_code_kit-0.7.0/templates/org/agents/founder-prototype-agent.md +61 -0
  177. claude_code_kit-0.7.0/templates/org/agents/internal-tools-builder.md +63 -0
  178. claude_code_kit-0.7.0/templates/org/agents/pm-copilot.md +60 -0
  179. claude_code_kit-0.7.0/templates/org/agents/support-ticket-engineer.md +63 -0
  180. claude_code_kit-0.7.0/templates/org/packs/devops-and-release/README.md +46 -0
  181. claude_code_kit-0.7.0/templates/org/packs/devops-and-release/pack.yaml +32 -0
  182. claude_code_kit-0.7.0/templates/org/packs/engineering-core/README.md +46 -0
  183. claude_code_kit-0.7.0/templates/org/packs/engineering-core/pack.yaml +44 -0
  184. claude_code_kit-0.7.0/templates/org/packs/non-engineer-builder/README.md +53 -0
  185. claude_code_kit-0.7.0/templates/org/packs/non-engineer-builder/pack.yaml +39 -0
  186. claude_code_kit-0.7.0/templates/org/packs/onboarding-and-docs/README.md +49 -0
  187. claude_code_kit-0.7.0/templates/org/packs/onboarding-and-docs/pack.yaml +26 -0
  188. claude_code_kit-0.7.0/templates/org/packs/product-to-code/README.md +50 -0
  189. claude_code_kit-0.7.0/templates/org/packs/product-to-code/pack.yaml +34 -0
  190. claude_code_kit-0.7.0/templates/org/packs/quality-and-review/README.md +53 -0
  191. claude_code_kit-0.7.0/templates/org/packs/quality-and-review/pack.yaml +40 -0
  192. claude_code_kit-0.7.0/templates/org/packs/security-and-compliance/README.md +50 -0
  193. claude_code_kit-0.7.0/templates/org/packs/security-and-compliance/pack.yaml +36 -0
  194. claude_code_kit-0.7.0/templates/org/rules/ai-working-agreement.md +45 -0
  195. claude_code_kit-0.7.0/templates/org/rules/ambiguity-resolution.md +36 -0
  196. claude_code_kit-0.7.0/templates/org/rules/branch-and-pr-policy.md +41 -0
  197. claude_code_kit-0.7.0/templates/org/rules/compliance-policy.md +50 -0
  198. claude_code_kit-0.7.0/templates/org/rules/non-engineer-safe-coding.md +37 -0
  199. claude_code_kit-0.7.0/templates/org/rules/pii-policy.md +46 -0
  200. claude_code_kit-0.7.0/templates/org/rules/production-data-policy.md +35 -0
  201. claude_code_kit-0.7.0/templates/org/rules/prompt-to-task-conversion.md +30 -0
  202. claude_code_kit-0.7.0/templates/org/rules/prototype-boundaries.md +40 -0
  203. claude_code_kit-0.7.0/templates/org/rules/secrets-policy.md +34 -0
  204. claude_code_kit-0.7.0/templates/org/skills/customer-issue-to-fix/SKILL.md +61 -0
  205. claude_code_kit-0.7.0/templates/org/skills/feature-from-idea/SKILL.md +56 -0
  206. claude_code_kit-0.7.0/templates/org/skills/prompt-to-safe-task/SKILL.md +59 -0
  207. claude_code_kit-0.7.0/templates/org/skills/prototype-to-production/SKILL.md +61 -0
  208. claude_code_kit-0.7.0/templates/org/skills/repo-onboarding/SKILL.md +60 -0
  209. claude_code_kit-0.7.0/templates/settings.json +53 -0
  210. claude_code_kit-0.7.0/templates/stacks/backend/python/fastapi/rules/fastapi-patterns.md +64 -0
  211. claude_code_kit-0.7.0/templates/stacks/db/mongodb/agents/migration-specialist.md +61 -0
  212. claude_code_kit-0.7.0/templates/stacks/db/mongodb/agents/mongodb-specialist.md +59 -0
  213. claude_code_kit-0.7.0/templates/stacks/db/mongodb/rules/mongodb-patterns.md +39 -0
  214. claude_code_kit-0.7.0/templates/stacks/db/postgres/agents/db-performance-reviewer.md +66 -0
  215. claude_code_kit-0.7.0/templates/stacks/db/postgres/agents/migration-specialist.md +56 -0
  216. claude_code_kit-0.7.0/templates/stacks/db/postgres/agents/postgres-specialist.md +58 -0
  217. claude_code_kit-0.7.0/templates/stacks/db/postgres/rules/database-performance.md +64 -0
  218. claude_code_kit-0.7.0/templates/stacks/db/postgres/rules/postgres-patterns.md +43 -0
  219. claude_code_kit-0.7.0/templates/stacks/frontend/react/rules/react-patterns.md +63 -0
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "claude-kit",
3
+ "description": "claude-kit — an autonomous, stack-agnostic SDLC for Claude Code, delivered as a plugin.",
4
+ "owner": {
5
+ "name": "Arjunsingh Yadav",
6
+ "url": "https://github.com/ajyadav013"
7
+ },
8
+ "plugins": [
9
+ {
10
+ "name": "claude-kit",
11
+ "source": "./",
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.7.0",
14
+ "license": "MIT",
15
+ "keywords": ["sdlc", "agents", "orchestration", "quality-gates", "workflow", "scaffold", "cookiecutter"]
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "claude-kit",
3
+ "version": "0.7.0",
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
+ "author": {
6
+ "name": "Arjunsingh Yadav",
7
+ "url": "https://github.com/ajyadav013"
8
+ },
9
+ "homepage": "https://github.com/ajyadav013/claude-kit",
10
+ "repository": "https://github.com/ajyadav013/claude-kit",
11
+ "license": "MIT",
12
+ "keywords": [
13
+ "sdlc",
14
+ "agents",
15
+ "orchestration",
16
+ "code-review",
17
+ "testing",
18
+ "quality-gates",
19
+ "workflow",
20
+ "automation",
21
+ "scaffold",
22
+ "cookiecutter"
23
+ ],
24
+ "hooks": "./hooks/hooks.json"
25
+ }
@@ -0,0 +1,25 @@
1
+ # Python build artifacts
2
+ dist/
3
+ build/
4
+ *.egg-info/
5
+ __pycache__/
6
+ *.py[cod]
7
+ .venv/
8
+ venv/
9
+
10
+ # OS / editor cruft
11
+ .DS_Store
12
+
13
+ # Stray MCP tool artifacts (e.g. Playwright MCP session logs) — never part of the kit.
14
+ .playwright-mcp/
15
+
16
+ # Reference material kept locally only — never distributed (copyrighted source book whose
17
+ # concepts were paraphrased into rules/, never its text). Keep the binary out of the repo.
18
+ Agentic_Design_Patterns.pdf
19
+
20
+ # Local Claude Code working state (this repo's own; not part of the distributable kit).
21
+ # This already covers the live working-memory file at .claude/CONTINUITY.md.
22
+ # Do NOT add a bare `CONTINUITY.md` here: with no leading slash it matches at every
23
+ # depth, and on case-insensitive filesystems (macOS default) it also swallows
24
+ # rules/continuity.md — the tracked rule file.
25
+ .claude/
@@ -0,0 +1,305 @@
1
+ # Changelog
2
+
3
+ All notable changes to claude-kit are documented here. The format follows
4
+ [Keep a Changelog](https://keepachangelog.com/), and the project uses
5
+ [semantic versioning](https://semver.org/).
6
+
7
+ ## [Unreleased]
8
+
9
+ ### Changed
10
+
11
+ - **PyPI distribution name is now `claude-code-kit`** (was `claude-kit`). The name `claude-kit`
12
+ is blocked on PyPI by its typosquat guard (too similar to the existing `claudekit`), so the
13
+ package is published as `claude-code-kit`: `pip install claude-code-kit`. The CLI commands
14
+ (`claude-kit` / `ckit` / `claude-sdlc`), the import package (`claude_kit`), the GitHub repo, and
15
+ the Claude Code plugin name all remain `claude-kit` — only the PyPI project name changed.
16
+
17
+ ## [0.7.0] — 2026-06-09
18
+
19
+ Adopts durable AI-engineering practices mined from a curated knowledge base of industry articles
20
+ (Anthropic & Cursor engineering blogs, agent-harness write-ups, a security post-mortem, and
21
+ context-engineering essays) into the stack-agnostic core. Only **genuine gaps** were filled; existing
22
+ coverage was left intact to preserve description-based agent selection (golden rule #1). Still
23
+ config-only, stack-agnostic, no app code, no Docker; `resolve()` is unchanged — the two new rules are
24
+ always-on core (not catalog-gated).
25
+
26
+ ### Added
27
+ - **`rules/evals.md`** — eval-driven development for AI/agent features: build a graded set before
28
+ iterating, **grade outcomes not paths**, calibrate LLM-as-judge against human labels, report
29
+ **pass@k vs pass^k**, keep regression + capability suites, re-eval before a model swap.
30
+ *(Source: Anthropic "Demystifying evals for AI agents"; Cursor "Bench".)*
31
+ - **`rules/tool-design.md`** — designing tools/MCP for an agent consumer: composable CLI/code over
32
+ always-loaded servers, progressive disclosure, single-line grep-friendly errors, print-sparsely /
33
+ log-to-file, structured output for machine consumption, least-privilege + idempotency.
34
+ *(Source: "What if you don't need MCP at all?"; "Building a C compiler with parallel Claudes"; "The
35
+ Anatomy of an Agent Harness".)*
36
+ - The core rule set is now **23 files** (was 21); both new rules ship in every profile.
37
+
38
+ ### Changed
39
+ - **`rules/agent-guardrails.md`** — added a **secure-defaults baseline** (localhost binding, no
40
+ plaintext credentials, sandboxed execution, dependency/marketplace distrust) + an OWASP Top-10 for
41
+ Agentic Apps (ASI01–ASI10) reference. *(Source: "From Clawdbot to OpenClaw".)*
42
+ - **`rules/agent-memory.md`** — **record the *why***, not just the *what* (decision traces: decision,
43
+ reasoning, rejected alternatives, refs). *(Source: "Context Graphs".)*
44
+ - **`skills/_references/orchestration-patterns.md`** — the **three failure modes** the patterns counter
45
+ (agentic laziness, self-preferential bias, goal drift) + a **programmatic fan-out** layer
46
+ (fan-out-and-synthesize, generate-and-filter, tournament, loop-until-done).
47
+ *(Source: "A harness for every task: dynamic workflows in Claude Code".)*
48
+ - **`skills/context-engineering/SKILL.md`** — a **context-degradation taxonomy** (poisoning,
49
+ distraction, clash, lost-in-the-middle) + progressive disclosure / compaction / tool-output offloading.
50
+ - **`docs/agentic-patterns.md`** — coverage map updated; new "Digest-sourced additions" section records
51
+ provenance for all of the above.
52
+ - Version bumped to **0.7.0**; `tests/test_scaffold.py` now asserts `evals.md` + `tool-design.md` ship
53
+ in every profile.
54
+
55
+ ### Fixed
56
+ Surfaced by a full install-readiness audit of both distribution paths (plugin + pip):
57
+ - **`git push` guard no longer over-blocks.** The PreToolUse guard matched the bare substrings
58
+ `main`/`master` anywhere after `git push`, blocking legitimate branches (`maintenance`,
59
+ `mainframe-fix`, `remaster-ui`, `domain-model`). It now anchors to the *target* ref token. Fixed in
60
+ all three copies — `hooks/hooks.json`, `templates/settings.json`, and `src/claude_kit/hooks.py`.
61
+ - **Agent frontmatter uses the correct key.** Renamed the invalid `mode:` field to **`permissionMode:`**
62
+ across all 26 agents (core + DB overlays); Claude Code silently ignores `mode:`, so the read-only
63
+ `plan` / `acceptEdits` intent was dead config in scaffolded projects.
64
+ - **pip-CLI installs `skills/_references/`.** `claude-kit init` now copies the shared deep-dive
65
+ references, so the "See Also" links in scaffolded `SKILL.md` files resolve (previously only the
66
+ plugin / `init.sh` path shipped them); the `validate` skill count now requires a `SKILL.md` so the
67
+ shared dir is not counted as a skill.
68
+ - **`rules/quality-gates.md`** scopes the Devil's Advocate pass to the profiles that install the agent
69
+ (standard, enterprise); the **lean** fast track no longer carries a dangling `devils-advocate` ref.
70
+ - **Doc rule counts corrected** to **23** in `README.md` and `docs/architecture.md` (were 21); the
71
+ README rule list now includes `evals` and `tool-design`.
72
+
73
+ ## [0.6.0] — 2026-06-09
74
+
75
+ Adds an **Organization Vibe-Coding Capability Layer** so the kit serves whole organizations —
76
+ engineers, PMs, designers, QA, DevOps, security, data, support, and founders — driving work in natural
77
+ language *safely and consistently*. The design follows "reuse, don't duplicate": capability **packs**
78
+ map roles to the components the kit already ships, and only genuinely-new content (the vibe-coding /
79
+ non-engineer layer, safety & compliance policies, risk classification, and a few deterministic hooks)
80
+ is created. A new **org** install dimension joins `profile` (subset) and `stack` (overlay); it is
81
+ **scope-gated** and activates only when `scope == organization`, so existing team/individual installs
82
+ are unchanged except for two new always-on core rules. Still config-only, stack-agnostic, no app code,
83
+ no Docker; `resolve()` stays branch-free (the org layer is pure `catalog/org.yaml` data +
84
+ `templates/org/` content).
85
+
86
+ ### Added
87
+ - **`catalog/org.yaml`** — the org data contract: `scopes` (individual/team/**organization**, default
88
+ team), `teams`, an **autonomy** model (advisory → assisted → autonomous-local → autonomous-pr →
89
+ enterprise-controlled, default **assisted**) where each level lists the hooks it enables, a
90
+ **strictness** axis (light/standard/regulated) with extra gates, and the **7 packs** mapping roles to
91
+ components. Read the same branch-free way as `profiles.yaml` / `mcp.yaml`.
92
+ - **`templates/org/`** — the org overlay payload, installed only in organization scope: 5 non-engineer
93
+ **skills** (`feature-from-idea`, `prototype-to-production`, `customer-issue-to-fix`,
94
+ `prompt-to-safe-task`, `repo-onboarding`), 5 persona **agents** (`pm-copilot`,
95
+ `founder-prototype-agent`, `support-ticket-engineer`, `data-workflow-agent`, `internal-tools-builder`),
96
+ 10 policy/vibe **rules** (`ai-working-agreement`, `prompt-to-task-conversion`,
97
+ `non-engineer-safe-coding`, `prototype-boundaries`, `ambiguity-resolution`, `secrets-policy`,
98
+ `production-data-policy`, `pii-policy`, `branch-and-pr-policy`, `compliance-policy`), and **7 pack
99
+ manifests + READMEs** (`engineering-core`, `product-to-code`, `quality-and-review`,
100
+ `security-and-compliance`, `devops-and-release`, `onboarding-and-docs`, `non-engineer-builder`).
101
+ Skills/agents/rules install into the auto-discovered `.claude/{skills,agents,rules}`; packs +
102
+ governance index land under `.claude/org-packs/`.
103
+ - **Two core rules** (`rules/`, ship in every profile/scope): `autonomy-levels.md` (the 5 levels and
104
+ what each permits, default assisted) and `risk-classification.md` (low/medium/high/restricted tiers
105
+ + the high-risk protocol: plan · approval · security review · test review · rollback notes ·
106
+ residual-risk summary). Rule set is now **21 files** (was 19).
107
+ - **Two core skills** (`skills/`, activated in `standard`+): `threat-model` and `accessibility-review`
108
+ — two general gaps with no prior dedicated skill. Core skills are now **46** (was 44).
109
+ - **`agents/risk-classifier.md`** — a read-only `plan`-mode agent that classifies work into the risk
110
+ tiers; activated in the `enterprise` profile and in org mode. SDLC agents are now **28** (was 27).
111
+ - **Six deterministic hooks** (`hooks/scripts/` + `HOOK_REGISTRY`), enabled by autonomy level via
112
+ `org.yaml` (kept out of the default profiles): `warn-sensitive-files`, `warn-large-edits`,
113
+ `warn-missing-tests`, `validate-frontmatter`, `validate-settings`, and `audit-log` (appends
114
+ `ts·tool·target` to `.claude/state/audit.log` — **local only**, never external, never file bodies).
115
+ All degrade to no-ops without `jq`.
116
+ - **`docs/org-capabilities.md`** — the requested→existing **coverage map** (the "reuse, not duplicate"
117
+ evidence): every requested agent/skill/rule mapped to an existing component or a new file.
118
+
119
+ ### Changed
120
+ - **CLI / resolver / installer** (`src/claude_kit/`): `Selection` gains org fields
121
+ (`scope`/`teams`/`autonomy`/`review_strictness`/`org_packs`, all defaulted → back-compatible);
122
+ `interactive()` asks scope first and (in organization scope) teams/autonomy/strictness/packs;
123
+ `from_config()` parses the same keys; `catalog.resolve()` builds an `OrgPlan`, unioning pack
124
+ components + autonomy hooks + strictness gates into the plan; `scaffold._install_org()` writes the
125
+ overlay only when `plan.org` is set.
126
+ - **`catalog/profiles.yaml`** — `standard` gains `threat-model` + `accessibility-review`; `enterprise`
127
+ gains `risk-classifier`.
128
+ - **`rules/model-tiers.md`** — records `risk-classifier` (sonnet) and the org persona agents.
129
+ - **CLI stubs** — `claude-sdlc package-org-pack` / `install-org-pack` print a "planned" message
130
+ (mirroring the existing `research import-sources` stub).
131
+ - The generated per-project README gains an **"Organization-wide vibe-coding capabilities"** section
132
+ (capability matrix, autonomy model, risk classification, distribution model, governance, metrics, and
133
+ five worked examples across PM / engineer / QA / support / founder).
134
+ - Docs now reference **28** SDLC agents, **46** skills, and a **21-file** rule set — `README.md`,
135
+ `CLAUDE.md`, `docs/architecture.md`, `docs/agents.md`.
136
+
137
+ ### Notes
138
+ - ~70% of the requested org components already existed and were **mapped**, not recreated (e.g.
139
+ `code-reviewer`→`sdlc-code-reviewer`, `security-engineer`→`security-reviewer`,
140
+ `system-architect`→`technical-architect`, the requested stack rules → existing `templates/stacks/`
141
+ overlays). See `docs/org-capabilities.md` for the full map.
142
+
143
+ ## [0.5.0] — 2026-06-09
144
+
145
+ Imports a curated set of components that were proven in a downstream project and generalized back
146
+ into the kit: two SDLC skills, an incident-response agent, a model-tier reference rule, a commit-time
147
+ secret guard, and PostgreSQL performance overlays. Everything was neutralized of app/stack specifics
148
+ before landing — the agnostic core stays stack-free; PostgreSQL detail lives only in the db overlay.
149
+ No application code, no Docker.
150
+
151
+ ### Added
152
+ - **Two SDLC skills** (`skills/`, activated in `standard` and up):
153
+ - `incident-postmortem` — blameless postmortem: timeline, 5-whys, contributing factors, and tracked
154
+ action items. Reads the project's structured logs / error-tracking and monitoring tooling.
155
+ - `load-testing` — tool-agnostic performance/throughput testing (k6, Locust, etc. as examples).
156
+ Distinct from the frontend `performance-optimization` skill.
157
+ - **`agents/incident-responder.md`** — a `plan`-mode stage-lead that triages live incidents (health/
158
+ readiness checks, recent service logs, common suspects) and hands off to the `incident-postmortem`
159
+ skill. Activated in the `enterprise` profile.
160
+ - **`rules/model-tiers.md`** — a core reference mapping each agent to a model tier
161
+ (critical → opus, default → sonnet, fast → haiku), so model selection is explicit and auditable.
162
+ Cross-linked from `reasoning-techniques.md`. Rule set is now **19 files** (was 18).
163
+ - **`hooks/scripts/guard-secrets.sh`** + the `guard-commit-secrets` hook (`PreToolUse`/`Bash`,
164
+ `standard`+) — blocks `git commit` when staged files or staged content look like secrets. Complements
165
+ the existing read-time `protect-secrets` guard.
166
+ - **PostgreSQL overlays** (`templates/stacks/db/postgres/`, installed only when PostgreSQL is chosen):
167
+ - `rules/database-performance.md` — N+1 avoidance, composite/tenant indexes, keyset pagination,
168
+ async connection-pool tuning.
169
+ - `agents/db-performance-reviewer.md` — a `plan`-mode reviewer for query/index/pooling regressions.
170
+
171
+ ### Changed
172
+ - `catalog/profiles.yaml` — `standard` gains the two skills + the commit-secret hook; `enterprise`
173
+ gains `incident-responder`.
174
+ - `catalog/stacks.yaml` — the PostgreSQL stack wires the new overlay rule + overlay agent.
175
+ - Docs now reference **27** SDLC agents (was 26) and a **19-file** rule set (was 18) — `README.md`,
176
+ `CLAUDE.md`, `docs/architecture.md`, `docs/agents.md`, `docs/agentic-patterns.md`.
177
+
178
+ ### Notes
179
+ - Four other candidate skills from the source project were evaluated and **not** imported — already
180
+ covered by existing kit skills (e.g. security hardening, debugging/error recovery, planning).
181
+
182
+ ## [0.4.0] — 2026-06-09
183
+
184
+ Adds the **agent-operation layer** distilled from *Agentic Design Patterns* (A. Gulli). A full
185
+ cross-map of the book's 21 patterns against the kit found most already covered by existing rules,
186
+ agents, skills, and the orchestration model; the genuine gap was how the **agents themselves** reason,
187
+ stay safe, and recover (as opposed to how the **product** they build is secured and tested). Five new
188
+ always-on, stack-agnostic rules fill it. No application code, no Docker, no catalog change — core
189
+ rules ship to every profile.
190
+
191
+ ### Added
192
+ - **Five agent-operation rules** (`rules/`, installed in every profile):
193
+ - `reasoning-techniques.md` — Chain-of-Thought, ReAct (reason→act→observe), Tree-of-Thought /
194
+ self-consistency, step-back, extended-thinking effort budget, and resource-aware model-tier
195
+ selection.
196
+ - `agent-guardrails.md` — treat fetched/tool/file content as untrusted (prompt-injection defense),
197
+ validate own output before handoff, and tool least-privilege. Distinct from the product-security
198
+ agents/skills.
199
+ - `agent-resilience.md` — bounded retries with backoff, fallback, circuit-breaker, graceful
200
+ degradation, idempotency, and checkpointing via CONTINUITY.
201
+ - `goal-setting-and-monitoring.md` — measurable/verifiable success criteria, progress monitoring,
202
+ and prioritization (urgency · importance · dependencies) with dynamic re-prioritization.
203
+ - `human-in-the-loop.md` — the consolidated set of decision points where the pipeline must pause for
204
+ a human, plus the escalation protocol.
205
+ - **`docs/agentic-patterns.md`** — a coverage map of all 21 patterns + Appendix A onto the kit, and a
206
+ record of what was deliberately left out (vector RAG, exploration/discovery, redundant rules) and why.
207
+
208
+ ### Changed
209
+ - `rules/agent-memory.md` — added the **working / episodic / semantic / procedural** memory taxonomy,
210
+ mapped onto the existing CONTINUITY + `agent-memory/` split.
211
+ - `rules/mandatory-workflow.md` — added an "Agent operating disciplines" pointer to the five new rules
212
+ and linked the "When to STOP and ask the user" section to `human-in-the-loop.md`.
213
+ - Docs now reference an **18-file** rule set (was 13) — `README.md`, `CLAUDE.md`, `docs/architecture.md`.
214
+
215
+ ## [0.3.0] — 2026-06-08
216
+
217
+ Reshapes claude-kit into a **Cookiecutter-style scaffolder for the Claude Code _configuration_
218
+ only** — catalog-driven, profile-aware, and with no application code or Docker anywhere. The
219
+ `claude-kit new` app generator from 0.2.0 is **removed**; the FastAPI/React knowledge it carried is
220
+ preserved as catalog **overlay rules**.
221
+
222
+ ### Added
223
+ - **Catalog-driven extensibility** (`catalog/{stacks,profiles,mcp}.yaml`) — adding a frontend
224
+ framework, backend language/framework, database, profile, or MCP server is a **data change** plus a
225
+ `templates/stacks/<dir>/` folder, never a code change. Live: React · Python/FastAPI ·
226
+ PostgreSQL/MongoDB; Vue/Svelte/Django/Express are listed as `planned`.
227
+ - **Ordered `init` prompts** — target path, frontend framework + language, backend language +
228
+ framework, database, SDLC profile, and optional MCP integrations; with existing-`.claude/` handling
229
+ (**merge / overwrite / backup / abort**).
230
+ - **SDLC profiles** — `lean ⊊ standard ⊊ enterprise` select which agents, skills, hooks, and quality
231
+ gates are activated (composed via `inherit:` + an `all` token).
232
+ - **`/sdlc` skill** — the single, profile-aware pipeline entrypoint; it reads the resolved gate set
233
+ from `.claude/config/stack-catalog.snapshot.yaml` and delegates to the `orchestrator`.
234
+ - **Lifecycle commands** — `validate`, `doctor`, `diff`, `upgrade [--force]`, `list-options`, plus a
235
+ `claude-sdlc` alias entry point. Upgrades are checksum-tracked via
236
+ `.claude/config/init-options.json` (per-file `owner`: kit / overlay / user-editable), so kit files
237
+ refresh while user edits are protected with `.claude-kit` sidecars and changed/removed files are
238
+ backed up.
239
+ - **Optional MCP** — selecting integrations writes a project-root `.mcp.json` (env-placeholder
240
+ config only, never credentials); nothing is written if none are selected.
241
+ - **New core agents** — `story-planner` (spec → ordered, parallelizable stories) and
242
+ `acceptance-reviewer` (delivery vs. acceptance criteria before the human gate). A lightweight
243
+ `tier:` field (orchestrator / stage-lead / specialist / review) is recorded on every agent.
244
+ - **Database overlay agents** — `postgres-specialist`, `mongodb-specialist`, and a per-database
245
+ `migration-specialist`, installed only for the selected database.
246
+ - **Artifact templates** in `.claude/templates/` (feature-spec, ADR, test-plan, security-review,
247
+ release-plan, runbook) and a generated `README.claude-sdlc.md`.
248
+
249
+ ### Changed
250
+ - **No Docker, no app code** — the kit installs configuration only. `devops-engineer` is rewritten to
251
+ be **container-optional** (CI/build/release/migrations/health for any runtime) and Docker is
252
+ scrubbed from the agnostic core.
253
+ - Tooling adopted: **Typer** (CLI), **Jinja2** (`StrictUndefined`, `.tmpl`-gated rendering, `dot__`
254
+ dotfile convention), and **PyYAML** (catalog).
255
+ - `/claude-kit:init` now prefers the pip CLI when on PATH and falls back to a thin `scripts/init.sh`;
256
+ `/claude-kit:sdlc` delegates to the `sdlc` skill.
257
+
258
+ ### Removed
259
+ - **`claude-kit new`** app generator, the `/claude-kit:new` command, `scripts/new.py`, and all
260
+ generated application source + Docker assets under `templates/stacks/*/files/`.
261
+
262
+ ## [0.2.0] — 2026-06-08
263
+
264
+ Adds a cookiecutter-style **project generator** alongside the existing config scaffolder.
265
+
266
+ ### Added
267
+ - **`claude-kit new`** (and the **`/claude-kit:new`** plugin command) — generate a batteries-included
268
+ monorepo with the SDLC config baked in. Interactive prompts (or `--no-input`) for the stack;
269
+ `--backend`, `--frontend`, `--db`, `--here`, `--force` flags.
270
+ - **Stack registry** under `templates/stacks/` — each stack is a folder with a `stack.json`; adding a
271
+ stack is a data change, not a code change. Ships **`python-fastapi`** (async SQLAlchemy 2.0 +
272
+ Alembic + Postgres, layered router→service→repository→model, pytest-asyncio) and **`react`**
273
+ (TypeScript + Vite + Vitest/RTL, typed Axios client, feature folders).
274
+ - **Generated app is batteries-included**: `docker compose up` (db + backend + frontend, zero local
275
+ installs) *and* a `Makefile` for native dev; a worked **items** vertical slice with tests on both
276
+ sides; an initial Alembic migration so `alembic upgrade head` works out of the box.
277
+ - **Stack overlay rules** — `fastapi-patterns.md` and `react-patterns.md` are installed into
278
+ `.claude/rules/` only for the chosen stacks, and the generated `CLAUDE.md` "Project-specific rules"
279
+ section is filled with the concrete commands and layout, so the agents follow the stack.
280
+ - **`docs/agents.md`** — a dedicated guide to using the agents.
281
+ - Zero-dependency template renderer (`*.tmpl` substitution; `dot__`-prefixed dotfiles) and a
282
+ source-checkout fallback so the CLI runs from a clone.
283
+
284
+ ## [0.1.0] — 2026-06-08
285
+
286
+ Initial release.
287
+
288
+ ### Added
289
+ - **Autonomous SDLC pipeline** — 24 specialized agents (`orchestrator`, spec/dev-doc writer,
290
+ UI designer, senior developers, technical architect, EM reviewer, merge reviewer, developer,
291
+ code reviewer, unit/e2e/integration testers, senior tester, auditor, devil's advocate,
292
+ security reviewer + 4 sub-scanners, devops & observability engineers, PR raiser).
293
+ - **13 stack-agnostic rules** — workflow, quality gates, RARV self-check, working memory,
294
+ agent memory, documentation, design patterns, code organization, linting/formatting, testing,
295
+ frontend best practices, responsive/accessibility, and devops/observability.
296
+ - **42 on-demand skills** spanning planning, implementation, testing, review, security, and ops.
297
+ - **Two install channels from one source of truth**:
298
+ - Claude Code **plugin** (`.claude-plugin/plugin.json` + `marketplace.json`, root-level
299
+ component auto-discovery, portable hooks via `${CLAUDE_PLUGIN_ROOT}`).
300
+ - **pip package** `claude-kit` (CLI `claude-kit` / `ckit`) that scaffolds the payload into any
301
+ project's `.claude/` and root `CLAUDE.md`.
302
+ - **Slash commands** `/claude-kit:init`, `/claude-kit:sdlc`, `/claude-kit:status`.
303
+ - **Working memory** (`CONTINUITY.md`) and a **self-improving learnings loop** (`agent-memory/`)
304
+ wired through SessionStart hooks.
305
+ - **Architecture documentation** with diagrams (`docs/architecture.md`).
@@ -0,0 +1,80 @@
1
+ # Developing claude-kit
2
+
3
+ This repository **is** claude-kit — a Cookiecutter-style scaffolder that installs a stack-agnostic,
4
+ autonomous-SDLC **configuration** (no application code, no Docker) into a Claude Code project. It is
5
+ distributed two ways from one source of truth:
6
+
7
+ 1. **As a Claude Code plugin** — components are auto-discovered from the repo root.
8
+ 2. **As a pip package** — `claude-kit` (CLI: `claude-kit` / `ckit` / `claude-sdlc`) scaffolds the
9
+ same content into any project's `.claude/`, driven by the `catalog/` (stacks · profiles · MCP).
10
+
11
+ > Note: the files in this repo are the **kit's payload**, not rules for this repo itself. The
12
+ > generic engineering ruleset that gets installed into user projects lives in
13
+ > `templates/CLAUDE.md`, **not** this file.
14
+
15
+ ## Repository layout
16
+
17
+ | Path | Purpose |
18
+ |------|---------|
19
+ | `.claude-plugin/plugin.json` | Plugin manifest (name, version, hooks path) |
20
+ | `.claude-plugin/marketplace.json` | Marketplace entry so `/plugin marketplace add` works |
21
+ | `agents/` | SDLC pipeline subagents (auto-discovered by the plugin); each carries a `tier:` field |
22
+ | `skills/` | Agent skills (auto-discovered by the plugin); `skills/sdlc/` is the `/sdlc` entrypoint |
23
+ | `commands/` | Slash commands: `/claude-kit:init`, `:sdlc`, `:status` (init prefers the pip CLI, falls back to `init.sh`; sdlc delegates to the `sdlc` skill) |
24
+ | `hooks/hooks.json` + `hooks/scripts/` | Event hooks (paths via `${CLAUDE_PLUGIN_ROOT}`) |
25
+ | `rules/` | The 23-file stack-agnostic engineering rule set (scaffolded into `.claude/rules/`), including the agent-operation rules (reasoning, guardrails, resilience, goal-setting, human-in-the-loop, model-tiers, evals, tool-design — see `docs/agentic-patterns.md`) and the org-core rules `autonomy-levels` + `risk-classification` (see `docs/org-capabilities.md`) |
26
+ | `catalog/` | **Data-driven registry** — `stacks.yaml` · `profiles.yaml` · `mcp.yaml` · `org.yaml`. The only thing that decides what `resolve()` installs. Adding a stack/profile/server/pack is a data change here. |
27
+ | `templates/` | `CLAUDE.md`, `CLAUDE.stack.md.tmpl`, `README.claude-sdlc.md.tmpl`, `CONTINUITY.template.md`, `settings.json`, `artifacts/`, `agent-memory/` seed |
28
+ | `templates/stacks/<kind>/<id>/` | Per-stack **overlay** content: `rules/` (+ `agents/` for DB stacks). **No application code, no Docker** — the only place stack-specific content lives. |
29
+ | `templates/org/` | **Org overlay** content (scope-gated, organization only): `skills/`, `agents/` (personas), `rules/` (policy/vibe), `packs/<pack>/{pack.yaml,README.md}`, `README.md`. Wired via `catalog/org.yaml`. The only place org-specific content lives. |
30
+ | `scripts/init.sh` | Thin no-pip fallback scaffolder (copies the full payload; no catalog resolution) |
31
+ | `src/claude_kit/` | The pip CLI (Typer): `cli.py`, `catalog.py` (resolver), `prompts.py`, `models.py`, `scaffold.py` (installer), `render.py` (Jinja2), `hooks.py`, `validator.py`, `upgrader.py` |
32
+ | `tests/` | pytest suite (catalog, render, scaffold, validator, upgrader, CLI) |
33
+ | `docs/architecture.md` · `docs/agents.md` | Architecture diagrams · agent guide |
34
+ | `pyproject.toml` | Packaging (deps: typer/jinja2/pyyaml); `[tool.hatch...force-include]` bundles the payload into the wheel |
35
+
36
+ **One source of truth:** `agents/ skills/ commands/ hooks/ rules/ templates/ catalog/` at the repo
37
+ root are read directly by the plugin **and** bundled into the wheel (mapped to
38
+ `claude_kit/_payload/`) for the pip CLI. Never duplicate this content.
39
+
40
+ ## Golden rules for changes here
41
+
42
+ 1. **Keep the core payload stack-agnostic.** No FastAPI/React/Python/TypeScript/Docker/etc.
43
+ specifics in `rules/`, `agents/`, or `skills/`. Use neutral phrasing ("the project's linter /
44
+ test runner / build"); the `devops-engineer` is **container-optional**, never Docker-required.
45
+ The backend/frontend split may appear only as the canonical example of two independent parallel
46
+ lanes. **All** stack-specific content (overlay rules like `fastapi-patterns.md`, DB overlay agents
47
+ like `postgres-specialist`, exact commands) lives **only** under `templates/stacks/<kind>/<id>/`
48
+ and is wired up via `catalog/stacks.yaml` — never leak it into the agnostic core, and never add
49
+ application code or Docker anywhere.
50
+ 2. **Reference rules by their canonical filename** under `.claude/rules/…` (that's where they
51
+ land in a user project). The current core rule set is the 23 files in `rules/` (org policy/vibe
52
+ rules under `templates/org/rules/` install only in organization scope).
53
+ 3. **Plugin components live at the repo root**, never inside `.claude-plugin/` (only the
54
+ manifest goes there).
55
+ 4. **Hook scripts use `${CLAUDE_PLUGIN_ROOT}`** for plugin context and degrade to no-ops when
56
+ a tool isn't present (stack detection, never hard failure).
57
+ 5. **Bump the version** in all four places together for a release — `pyproject.toml`,
58
+ `.claude-plugin/plugin.json`, the `.claude-plugin/marketplace.json` entry, and
59
+ `src/claude_kit/__init__.py` (`__version__`, what the CLI prints) — and add a `CHANGELOG.md` entry.
60
+ 6. **Extend via the catalog, not code.** A new framework/database/profile/MCP server is a
61
+ `catalog/*.yaml` edit plus a `templates/stacks/<dir>/` folder; a new org pack/team/autonomy level
62
+ is a `catalog/org.yaml` edit plus content under `templates/org/`. `catalog.resolve()` must not grow
63
+ stack- or org-specific branches (the org layer is the same scope-gated lookup/union as profiles/mcp).
64
+ Mark not-yet-shipped entries `status: planned`.
65
+ 7. **Keep the org layer scope-gated and reuse-first.** Org content installs **only** when
66
+ `scope == organization`; packs MAP roles to existing components (`existing: true`) and create only
67
+ genuinely-new content (`existing: false`) — never a competing duplicate of an existing
68
+ agent/skill/rule. Org rules/skills/agents are stack-agnostic too. See `docs/org-capabilities.md`.
69
+
70
+ ## Dogfooding / local testing
71
+
72
+ - **Plugin:** `claude` → `/plugin marketplace add .` → `/plugin install claude-kit` (loads the
73
+ agents/skills/commands/hooks from this checkout).
74
+ - **CLI:** `pip install -e '.[dev]'` then `claude-kit init /tmp/demo --defaults` (or interactive),
75
+ `claude-kit validate /tmp/demo`, `claude-kit diff /tmp/demo`, and inspect the result.
76
+ - **Tests:** `pytest` (the suite installs into temp dirs and asserts the no-Docker, profile-subset,
77
+ MCP-gating, and upgrade-safety invariants).
78
+ - **Build:** `python3 -m build && python3 -m twine check dist/*`.
79
+
80
+ See `CONTRIBUTING.md` for the full contributor workflow.
@@ -0,0 +1,93 @@
1
+ # Contributing to claude-kit
2
+
3
+ Thanks for helping improve claude-kit! This guide covers the repo conventions, how to test
4
+ locally, and how to release.
5
+
6
+ ## Mental model
7
+
8
+ - The directories at the repo root — `agents/`, `skills/`, `commands/`, `hooks/`, `rules/`,
9
+ `templates/`, `catalog/` — are the **kit payload** and the **single source of truth**.
10
+ - The plugin reads them directly from the root; the pip wheel bundles them under
11
+ `claude_kit/_payload/` via `force-include` in `pyproject.toml`. **Never duplicate this content.**
12
+ - `src/claude_kit/` is the pip CLI (the canonical scaffolder). `scripts/init.sh` is a **thin no-pip
13
+ fallback** for the `/claude-kit:init` plugin command — it copies the full payload with no catalog
14
+ resolution; don't reimplement the resolver in bash.
15
+ - claude-kit installs **configuration only** — never application code, never Docker.
16
+
17
+ ## Golden rules
18
+
19
+ 1. **Keep the payload stack-agnostic.** No language/framework/Docker assumptions in `rules/`,
20
+ `agents/`, or `skills/`. Use neutral phrasing ("the project's linter / test runner / build"); the
21
+ `devops-engineer` is container-optional. The backend/frontend split may appear only as the
22
+ canonical example of two independent parallel work streams.
23
+ 2. **All stack-specific content lives under `templates/stacks/<kind>/<id>/`** and is wired via
24
+ `catalog/stacks.yaml` — overlay rules, and DB overlay agents. Nothing stack-specific in the core.
25
+ 3. **Reference rules by their canonical filename** under `.claude/rules/…` — that's where they land.
26
+ 4. **Plugin components live at the repo root**, never inside `.claude-plugin/` (only the two
27
+ manifests go there).
28
+ 5. **Hook scripts** use `${CLAUDE_PLUGIN_ROOT}` for plugin context and **degrade to no-ops** when a
29
+ tool isn't present — detect, never hard-fail.
30
+
31
+ ## Adding components
32
+
33
+ - **Agent** → add `agents/<name>.md` with YAML frontmatter (`name`, `description`, `tools`, optional
34
+ `model`, `color`, and a `tier:` of orchestrator/stage-lead/specialist/review). The `description`
35
+ drives selection — make it accurate and trigger-friendly. Add the name to the relevant profile(s)
36
+ in `catalog/profiles.yaml` so it gets installed.
37
+ - **Skill** → add `skills/<name>/SKILL.md` (uppercase `SKILL.md`). Keep the `description` focused on
38
+ *when* to use it. Add it to the relevant profile(s) in `catalog/profiles.yaml`.
39
+ - **Rule** → add `rules/<name>.md`; cross-reference siblings as `.claude/rules/<name>.md`.
40
+ - **Hook** → add a script to `hooks/scripts/`, register it in the `HOOK_REGISTRY` in
41
+ `src/claude_kit/hooks.py`, wire it in `hooks/hooks.json` (plugin), and list its id in the relevant
42
+ profile's `hooks:`.
43
+ - **Stack** (framework / database) → a **data change**: add an entry to `catalog/stacks.yaml`
44
+ (`label`, `overlay_rules`, optional `overlay_agents`, `skills`, `stack_dir`, `commands`) and create
45
+ `templates/stacks/<stack_dir>/rules/<name>.md` (+ `agents/` for a database). Mark not-yet-ready
46
+ entries `status: planned`. No Python change is needed — `catalog.resolve()` must stay branch-free.
47
+ - **Profile** → add an entry to `catalog/profiles.yaml` (compose with `inherit:`; `all` selects
48
+ everything). **MCP server** → add an entry to `catalog/mcp.yaml` with a `config` fragment using
49
+ `${ENV}` placeholders (never real credentials).
50
+
51
+ ## Local testing
52
+
53
+ ```bash
54
+ # Plugin (dogfood this checkout):
55
+ # in Claude Code: /plugin marketplace add . then /plugin install claude-kit
56
+
57
+ # CLI:
58
+ pip install -e '.[dev]'
59
+ claude-kit list-options
60
+ claude-kit init /tmp/ck-demo --defaults && ls -R /tmp/ck-demo/.claude
61
+ claude-kit validate /tmp/ck-demo
62
+ claude-kit diff /tmp/ck-demo
63
+
64
+ # Tests:
65
+ pytest
66
+
67
+ # Build + validate the package:
68
+ python3 -m build
69
+ python3 -m twine check dist/*
70
+ ```
71
+
72
+ Verify there's no stack/Docker leakage in the **core** payload before opening a PR (stack specifics
73
+ belong under `templates/stacks/`, which is intentionally excluded here):
74
+
75
+ ```bash
76
+ grep -rInE 'fastapi|sqlalchemy|alembic|docker' rules agents skills && echo "REVIEW these" || echo "clean"
77
+ ```
78
+
79
+ (Balanced multi-framework *example* lists are acceptable; a real leak is agnostic logic branching on
80
+ a specific stack — `pytest` enforces the no-Docker invariant on a scaffolded project.)
81
+
82
+ ## Releasing
83
+
84
+ 1. Bump the version in **all four** places: `pyproject.toml`, `.claude-plugin/plugin.json`, the
85
+ `.claude-plugin/marketplace.json` entry, and `src/claude_kit/__init__.py`.
86
+ 2. Add a `CHANGELOG.md` entry.
87
+ 3. `pytest` green, then `python3 -m build && python3 -m twine check dist/*`.
88
+ 4. `python3 -m twine upload dist/*` (PyPI).
89
+ 5. Tag the release and push so plugin users get the update.
90
+
91
+ ## License
92
+
93
+ By contributing you agree your contributions are licensed under the project's [MIT License](LICENSE).
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Arjunsingh Yadav
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.