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.
- claude_code_kit-0.7.0/.claude-plugin/marketplace.json +18 -0
- claude_code_kit-0.7.0/.claude-plugin/plugin.json +25 -0
- claude_code_kit-0.7.0/.gitignore +25 -0
- claude_code_kit-0.7.0/CHANGELOG.md +305 -0
- claude_code_kit-0.7.0/CLAUDE.md +80 -0
- claude_code_kit-0.7.0/CONTRIBUTING.md +93 -0
- claude_code_kit-0.7.0/LICENSE +21 -0
- claude_code_kit-0.7.0/PKG-INFO +384 -0
- claude_code_kit-0.7.0/README.md +357 -0
- claude_code_kit-0.7.0/agents/acceptance-reviewer.md +60 -0
- claude_code_kit-0.7.0/agents/auditor.md +76 -0
- claude_code_kit-0.7.0/agents/dependency-scanner.md +84 -0
- claude_code_kit-0.7.0/agents/developer.md +187 -0
- claude_code_kit-0.7.0/agents/devils-advocate.md +62 -0
- claude_code_kit-0.7.0/agents/devops-engineer.md +134 -0
- claude_code_kit-0.7.0/agents/e2e-tester.md +152 -0
- claude_code_kit-0.7.0/agents/em-reviewer.md +105 -0
- claude_code_kit-0.7.0/agents/incident-responder.md +64 -0
- claude_code_kit-0.7.0/agents/merge-reviewer.md +194 -0
- claude_code_kit-0.7.0/agents/observability-engineer.md +94 -0
- claude_code_kit-0.7.0/agents/orchestrator.md +551 -0
- claude_code_kit-0.7.0/agents/owasp-reviewer.md +76 -0
- claude_code_kit-0.7.0/agents/policy-validator.md +63 -0
- claude_code_kit-0.7.0/agents/pr-raiser.md +138 -0
- claude_code_kit-0.7.0/agents/risk-classifier.md +50 -0
- claude_code_kit-0.7.0/agents/sdlc-code-reviewer.md +196 -0
- claude_code_kit-0.7.0/agents/secret-scanner.md +70 -0
- claude_code_kit-0.7.0/agents/security-reviewer.md +80 -0
- claude_code_kit-0.7.0/agents/senior-backend-dev.md +199 -0
- claude_code_kit-0.7.0/agents/senior-frontend-dev.md +181 -0
- claude_code_kit-0.7.0/agents/senior-tester.md +206 -0
- claude_code_kit-0.7.0/agents/spec-doc-writer.md +331 -0
- claude_code_kit-0.7.0/agents/story-planner.md +56 -0
- claude_code_kit-0.7.0/agents/technical-architect.md +139 -0
- claude_code_kit-0.7.0/agents/tester.md +193 -0
- claude_code_kit-0.7.0/agents/ui-designer.md +73 -0
- claude_code_kit-0.7.0/agents/unit-tester.md +119 -0
- claude_code_kit-0.7.0/catalog/mcp.yaml +54 -0
- claude_code_kit-0.7.0/catalog/org.yaml +145 -0
- claude_code_kit-0.7.0/catalog/profiles.yaml +96 -0
- claude_code_kit-0.7.0/catalog/stacks.yaml +96 -0
- claude_code_kit-0.7.0/commands/init.md +36 -0
- claude_code_kit-0.7.0/commands/sdlc.md +18 -0
- claude_code_kit-0.7.0/commands/status.md +20 -0
- claude_code_kit-0.7.0/docs/agentic-patterns.md +116 -0
- claude_code_kit-0.7.0/docs/agents.md +112 -0
- claude_code_kit-0.7.0/docs/architecture.md +235 -0
- claude_code_kit-0.7.0/docs/org-capabilities.md +200 -0
- claude_code_kit-0.7.0/hooks/hooks.json +58 -0
- claude_code_kit-0.7.0/hooks/scripts/audit-log.sh +18 -0
- claude_code_kit-0.7.0/hooks/scripts/guard-secrets.sh +26 -0
- claude_code_kit-0.7.0/hooks/scripts/lint-fix.sh +38 -0
- claude_code_kit-0.7.0/hooks/scripts/load-continuity.sh +32 -0
- claude_code_kit-0.7.0/hooks/scripts/load-learnings.sh +40 -0
- claude_code_kit-0.7.0/hooks/scripts/type-check.sh +23 -0
- claude_code_kit-0.7.0/hooks/scripts/validate-frontmatter.sh +34 -0
- claude_code_kit-0.7.0/hooks/scripts/validate-settings.sh +21 -0
- claude_code_kit-0.7.0/hooks/scripts/warn-large-edits.sh +24 -0
- claude_code_kit-0.7.0/hooks/scripts/warn-missing-tests.sh +24 -0
- claude_code_kit-0.7.0/hooks/scripts/warn-sensitive-files.sh +30 -0
- claude_code_kit-0.7.0/hooks/scripts/warn-shared-modules.sh +33 -0
- claude_code_kit-0.7.0/pyproject.toml +97 -0
- claude_code_kit-0.7.0/rules/agent-guardrails.md +83 -0
- claude_code_kit-0.7.0/rules/agent-memory.md +106 -0
- claude_code_kit-0.7.0/rules/agent-resilience.md +61 -0
- claude_code_kit-0.7.0/rules/autonomy-levels.md +30 -0
- claude_code_kit-0.7.0/rules/code-organization.md +312 -0
- claude_code_kit-0.7.0/rules/continuity.md +84 -0
- claude_code_kit-0.7.0/rules/design-patterns.md +422 -0
- claude_code_kit-0.7.0/rules/devops-observability.md +57 -0
- claude_code_kit-0.7.0/rules/documentation.md +326 -0
- claude_code_kit-0.7.0/rules/evals.md +62 -0
- claude_code_kit-0.7.0/rules/frontend-best-practices.md +157 -0
- claude_code_kit-0.7.0/rules/goal-setting-and-monitoring.md +72 -0
- claude_code_kit-0.7.0/rules/human-in-the-loop.md +64 -0
- claude_code_kit-0.7.0/rules/linting-and-formatting.md +220 -0
- claude_code_kit-0.7.0/rules/mandatory-workflow.md +309 -0
- claude_code_kit-0.7.0/rules/model-tiers.md +34 -0
- claude_code_kit-0.7.0/rules/quality-gates.md +107 -0
- claude_code_kit-0.7.0/rules/rarv-cycle.md +31 -0
- claude_code_kit-0.7.0/rules/reasoning-techniques.md +62 -0
- claude_code_kit-0.7.0/rules/responsive-and-accessibility.md +353 -0
- claude_code_kit-0.7.0/rules/risk-classification.md +36 -0
- claude_code_kit-0.7.0/rules/testing.md +417 -0
- claude_code_kit-0.7.0/rules/tool-design.md +66 -0
- claude_code_kit-0.7.0/scripts/init.sh +72 -0
- claude_code_kit-0.7.0/skills/_references/accessibility-checklist.md +160 -0
- claude_code_kit-0.7.0/skills/_references/orchestration-patterns.md +405 -0
- claude_code_kit-0.7.0/skills/_references/performance-checklist.md +153 -0
- claude_code_kit-0.7.0/skills/_references/security-checklist.md +134 -0
- claude_code_kit-0.7.0/skills/_references/testing-patterns.md +236 -0
- claude_code_kit-0.7.0/skills/accessibility-review/SKILL.md +56 -0
- claude_code_kit-0.7.0/skills/api-and-interface-design/SKILL.md +294 -0
- claude_code_kit-0.7.0/skills/api-integration/SKILL.md +348 -0
- claude_code_kit-0.7.0/skills/archive-sprint/SKILL.md +31 -0
- claude_code_kit-0.7.0/skills/backlog/SKILL.md +41 -0
- claude_code_kit-0.7.0/skills/backlog/item-template.md +20 -0
- claude_code_kit-0.7.0/skills/browser-testing-with-devtools/SKILL.md +302 -0
- claude_code_kit-0.7.0/skills/ci-cd-and-automation/SKILL.md +402 -0
- claude_code_kit-0.7.0/skills/code-review-and-quality/SKILL.md +347 -0
- claude_code_kit-0.7.0/skills/code-simplification/SKILL.md +331 -0
- claude_code_kit-0.7.0/skills/component-design/SKILL.md +171 -0
- claude_code_kit-0.7.0/skills/consolidate-learnings/SKILL.md +55 -0
- claude_code_kit-0.7.0/skills/context-engineering/SKILL.md +321 -0
- claude_code_kit-0.7.0/skills/debugging-and-error-recovery/SKILL.md +300 -0
- claude_code_kit-0.7.0/skills/decision/SKILL.md +46 -0
- claude_code_kit-0.7.0/skills/decision/adr-template.md +36 -0
- claude_code_kit-0.7.0/skills/deprecation-and-migration/SKILL.md +207 -0
- claude_code_kit-0.7.0/skills/documentation-and-adrs/SKILL.md +299 -0
- claude_code_kit-0.7.0/skills/doubt-driven-development/SKILL.md +243 -0
- claude_code_kit-0.7.0/skills/execute/SKILL.md +27 -0
- claude_code_kit-0.7.0/skills/frontend-ui-engineering/SKILL.md +328 -0
- claude_code_kit-0.7.0/skills/git-workflow-and-versioning/SKILL.md +300 -0
- claude_code_kit-0.7.0/skills/idea-refine/SKILL.md +178 -0
- claude_code_kit-0.7.0/skills/idea-refine/examples.md +238 -0
- claude_code_kit-0.7.0/skills/idea-refine/frameworks.md +99 -0
- claude_code_kit-0.7.0/skills/idea-refine/refinement-criteria.md +113 -0
- claude_code_kit-0.7.0/skills/idea-refine/scripts/idea-refine.sh +15 -0
- claude_code_kit-0.7.0/skills/incident-postmortem/SKILL.md +74 -0
- claude_code_kit-0.7.0/skills/incremental-implementation/SKILL.md +245 -0
- claude_code_kit-0.7.0/skills/interview-me/SKILL.md +221 -0
- claude_code_kit-0.7.0/skills/load-testing/SKILL.md +83 -0
- claude_code_kit-0.7.0/skills/manual-test/SKILL.md +516 -0
- claude_code_kit-0.7.0/skills/performance-optimization/SKILL.md +277 -0
- claude_code_kit-0.7.0/skills/planning-and-task-breakdown/SKILL.md +223 -0
- claude_code_kit-0.7.0/skills/playwright-verification/SKILL.md +205 -0
- claude_code_kit-0.7.0/skills/refresh-docs/SKILL.md +63 -0
- claude_code_kit-0.7.0/skills/remember/SKILL.md +96 -0
- claude_code_kit-0.7.0/skills/scope/SKILL.md +52 -0
- claude_code_kit-0.7.0/skills/scope/scope-template.md +82 -0
- claude_code_kit-0.7.0/skills/sdlc/SKILL.md +83 -0
- claude_code_kit-0.7.0/skills/security-and-hardening/SKILL.md +368 -0
- claude_code_kit-0.7.0/skills/security-verification/SKILL.md +209 -0
- claude_code_kit-0.7.0/skills/shipping-and-launch/SKILL.md +309 -0
- claude_code_kit-0.7.0/skills/smoke-test/SKILL.md +78 -0
- claude_code_kit-0.7.0/skills/source-driven-development/SKILL.md +195 -0
- claude_code_kit-0.7.0/skills/spec-driven-development/SKILL.md +200 -0
- claude_code_kit-0.7.0/skills/sprint/SKILL.md +67 -0
- claude_code_kit-0.7.0/skills/sprint/sprint-template.md +90 -0
- claude_code_kit-0.7.0/skills/test-driven-development/SKILL.md +383 -0
- claude_code_kit-0.7.0/skills/threat-model/SKILL.md +60 -0
- claude_code_kit-0.7.0/skills/triage/SKILL.md +87 -0
- claude_code_kit-0.7.0/skills/ui-ux-design/SKILL.md +71 -0
- claude_code_kit-0.7.0/skills/unit-test/SKILL.md +237 -0
- claude_code_kit-0.7.0/skills/using-agent-skills/SKILL.md +180 -0
- claude_code_kit-0.7.0/src/claude_kit/__init__.py +10 -0
- claude_code_kit-0.7.0/src/claude_kit/__main__.py +8 -0
- claude_code_kit-0.7.0/src/claude_kit/catalog.py +476 -0
- claude_code_kit-0.7.0/src/claude_kit/cli.py +327 -0
- claude_code_kit-0.7.0/src/claude_kit/hooks.py +246 -0
- claude_code_kit-0.7.0/src/claude_kit/models.py +205 -0
- claude_code_kit-0.7.0/src/claude_kit/prompts.py +209 -0
- claude_code_kit-0.7.0/src/claude_kit/render.py +146 -0
- claude_code_kit-0.7.0/src/claude_kit/scaffold.py +492 -0
- claude_code_kit-0.7.0/src/claude_kit/upgrader.py +294 -0
- claude_code_kit-0.7.0/src/claude_kit/validator.py +197 -0
- claude_code_kit-0.7.0/templates/CLAUDE.md +238 -0
- claude_code_kit-0.7.0/templates/CLAUDE.stack.md.tmpl +53 -0
- claude_code_kit-0.7.0/templates/CONTINUITY.template.md +35 -0
- claude_code_kit-0.7.0/templates/README.claude-sdlc.md.tmpl +219 -0
- claude_code_kit-0.7.0/templates/agent-memory/MEMORY.md +30 -0
- claude_code_kit-0.7.0/templates/agent-memory/api/.gitkeep +0 -0
- claude_code_kit-0.7.0/templates/agent-memory/architecture/.gitkeep +0 -0
- claude_code_kit-0.7.0/templates/agent-memory/debugging/.gitkeep +0 -0
- claude_code_kit-0.7.0/templates/agent-memory/gotchas/.gitkeep +0 -0
- claude_code_kit-0.7.0/templates/agent-memory/patterns/.gitkeep +0 -0
- claude_code_kit-0.7.0/templates/agent-memory/performance/.gitkeep +0 -0
- claude_code_kit-0.7.0/templates/artifacts/adr.md +18 -0
- claude_code_kit-0.7.0/templates/artifacts/feature-spec.md +29 -0
- claude_code_kit-0.7.0/templates/artifacts/release-plan.md +23 -0
- claude_code_kit-0.7.0/templates/artifacts/runbook.md +24 -0
- claude_code_kit-0.7.0/templates/artifacts/security-review.md +23 -0
- claude_code_kit-0.7.0/templates/artifacts/test-plan.md +22 -0
- claude_code_kit-0.7.0/templates/org/README.md +53 -0
- claude_code_kit-0.7.0/templates/org/agents/data-workflow-agent.md +59 -0
- claude_code_kit-0.7.0/templates/org/agents/founder-prototype-agent.md +61 -0
- claude_code_kit-0.7.0/templates/org/agents/internal-tools-builder.md +63 -0
- claude_code_kit-0.7.0/templates/org/agents/pm-copilot.md +60 -0
- claude_code_kit-0.7.0/templates/org/agents/support-ticket-engineer.md +63 -0
- claude_code_kit-0.7.0/templates/org/packs/devops-and-release/README.md +46 -0
- claude_code_kit-0.7.0/templates/org/packs/devops-and-release/pack.yaml +32 -0
- claude_code_kit-0.7.0/templates/org/packs/engineering-core/README.md +46 -0
- claude_code_kit-0.7.0/templates/org/packs/engineering-core/pack.yaml +44 -0
- claude_code_kit-0.7.0/templates/org/packs/non-engineer-builder/README.md +53 -0
- claude_code_kit-0.7.0/templates/org/packs/non-engineer-builder/pack.yaml +39 -0
- claude_code_kit-0.7.0/templates/org/packs/onboarding-and-docs/README.md +49 -0
- claude_code_kit-0.7.0/templates/org/packs/onboarding-and-docs/pack.yaml +26 -0
- claude_code_kit-0.7.0/templates/org/packs/product-to-code/README.md +50 -0
- claude_code_kit-0.7.0/templates/org/packs/product-to-code/pack.yaml +34 -0
- claude_code_kit-0.7.0/templates/org/packs/quality-and-review/README.md +53 -0
- claude_code_kit-0.7.0/templates/org/packs/quality-and-review/pack.yaml +40 -0
- claude_code_kit-0.7.0/templates/org/packs/security-and-compliance/README.md +50 -0
- claude_code_kit-0.7.0/templates/org/packs/security-and-compliance/pack.yaml +36 -0
- claude_code_kit-0.7.0/templates/org/rules/ai-working-agreement.md +45 -0
- claude_code_kit-0.7.0/templates/org/rules/ambiguity-resolution.md +36 -0
- claude_code_kit-0.7.0/templates/org/rules/branch-and-pr-policy.md +41 -0
- claude_code_kit-0.7.0/templates/org/rules/compliance-policy.md +50 -0
- claude_code_kit-0.7.0/templates/org/rules/non-engineer-safe-coding.md +37 -0
- claude_code_kit-0.7.0/templates/org/rules/pii-policy.md +46 -0
- claude_code_kit-0.7.0/templates/org/rules/production-data-policy.md +35 -0
- claude_code_kit-0.7.0/templates/org/rules/prompt-to-task-conversion.md +30 -0
- claude_code_kit-0.7.0/templates/org/rules/prototype-boundaries.md +40 -0
- claude_code_kit-0.7.0/templates/org/rules/secrets-policy.md +34 -0
- claude_code_kit-0.7.0/templates/org/skills/customer-issue-to-fix/SKILL.md +61 -0
- claude_code_kit-0.7.0/templates/org/skills/feature-from-idea/SKILL.md +56 -0
- claude_code_kit-0.7.0/templates/org/skills/prompt-to-safe-task/SKILL.md +59 -0
- claude_code_kit-0.7.0/templates/org/skills/prototype-to-production/SKILL.md +61 -0
- claude_code_kit-0.7.0/templates/org/skills/repo-onboarding/SKILL.md +60 -0
- claude_code_kit-0.7.0/templates/settings.json +53 -0
- claude_code_kit-0.7.0/templates/stacks/backend/python/fastapi/rules/fastapi-patterns.md +64 -0
- claude_code_kit-0.7.0/templates/stacks/db/mongodb/agents/migration-specialist.md +61 -0
- claude_code_kit-0.7.0/templates/stacks/db/mongodb/agents/mongodb-specialist.md +59 -0
- claude_code_kit-0.7.0/templates/stacks/db/mongodb/rules/mongodb-patterns.md +39 -0
- claude_code_kit-0.7.0/templates/stacks/db/postgres/agents/db-performance-reviewer.md +66 -0
- claude_code_kit-0.7.0/templates/stacks/db/postgres/agents/migration-specialist.md +56 -0
- claude_code_kit-0.7.0/templates/stacks/db/postgres/agents/postgres-specialist.md +58 -0
- claude_code_kit-0.7.0/templates/stacks/db/postgres/rules/database-performance.md +64 -0
- claude_code_kit-0.7.0/templates/stacks/db/postgres/rules/postgres-patterns.md +43 -0
- 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.
|