claude-code-kit 0.7.0__py3-none-any.whl

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 (209) hide show
  1. claude_code_kit-0.7.0.dist-info/METADATA +384 -0
  2. claude_code_kit-0.7.0.dist-info/RECORD +209 -0
  3. claude_code_kit-0.7.0.dist-info/WHEEL +4 -0
  4. claude_code_kit-0.7.0.dist-info/entry_points.txt +4 -0
  5. claude_code_kit-0.7.0.dist-info/licenses/LICENSE +21 -0
  6. claude_kit/__init__.py +10 -0
  7. claude_kit/__main__.py +8 -0
  8. claude_kit/_payload/agents/acceptance-reviewer.md +60 -0
  9. claude_kit/_payload/agents/auditor.md +76 -0
  10. claude_kit/_payload/agents/dependency-scanner.md +84 -0
  11. claude_kit/_payload/agents/developer.md +187 -0
  12. claude_kit/_payload/agents/devils-advocate.md +62 -0
  13. claude_kit/_payload/agents/devops-engineer.md +134 -0
  14. claude_kit/_payload/agents/e2e-tester.md +152 -0
  15. claude_kit/_payload/agents/em-reviewer.md +105 -0
  16. claude_kit/_payload/agents/incident-responder.md +64 -0
  17. claude_kit/_payload/agents/merge-reviewer.md +194 -0
  18. claude_kit/_payload/agents/observability-engineer.md +94 -0
  19. claude_kit/_payload/agents/orchestrator.md +551 -0
  20. claude_kit/_payload/agents/owasp-reviewer.md +76 -0
  21. claude_kit/_payload/agents/policy-validator.md +63 -0
  22. claude_kit/_payload/agents/pr-raiser.md +138 -0
  23. claude_kit/_payload/agents/risk-classifier.md +50 -0
  24. claude_kit/_payload/agents/sdlc-code-reviewer.md +196 -0
  25. claude_kit/_payload/agents/secret-scanner.md +70 -0
  26. claude_kit/_payload/agents/security-reviewer.md +80 -0
  27. claude_kit/_payload/agents/senior-backend-dev.md +199 -0
  28. claude_kit/_payload/agents/senior-frontend-dev.md +181 -0
  29. claude_kit/_payload/agents/senior-tester.md +206 -0
  30. claude_kit/_payload/agents/spec-doc-writer.md +331 -0
  31. claude_kit/_payload/agents/story-planner.md +56 -0
  32. claude_kit/_payload/agents/technical-architect.md +139 -0
  33. claude_kit/_payload/agents/tester.md +193 -0
  34. claude_kit/_payload/agents/ui-designer.md +73 -0
  35. claude_kit/_payload/agents/unit-tester.md +119 -0
  36. claude_kit/_payload/catalog/mcp.yaml +54 -0
  37. claude_kit/_payload/catalog/org.yaml +145 -0
  38. claude_kit/_payload/catalog/profiles.yaml +96 -0
  39. claude_kit/_payload/catalog/stacks.yaml +96 -0
  40. claude_kit/_payload/commands/init.md +36 -0
  41. claude_kit/_payload/commands/sdlc.md +18 -0
  42. claude_kit/_payload/commands/status.md +20 -0
  43. claude_kit/_payload/hooks/hooks.json +58 -0
  44. claude_kit/_payload/hooks/scripts/audit-log.sh +18 -0
  45. claude_kit/_payload/hooks/scripts/guard-secrets.sh +26 -0
  46. claude_kit/_payload/hooks/scripts/lint-fix.sh +38 -0
  47. claude_kit/_payload/hooks/scripts/load-continuity.sh +32 -0
  48. claude_kit/_payload/hooks/scripts/load-learnings.sh +40 -0
  49. claude_kit/_payload/hooks/scripts/type-check.sh +23 -0
  50. claude_kit/_payload/hooks/scripts/validate-frontmatter.sh +34 -0
  51. claude_kit/_payload/hooks/scripts/validate-settings.sh +21 -0
  52. claude_kit/_payload/hooks/scripts/warn-large-edits.sh +24 -0
  53. claude_kit/_payload/hooks/scripts/warn-missing-tests.sh +24 -0
  54. claude_kit/_payload/hooks/scripts/warn-sensitive-files.sh +30 -0
  55. claude_kit/_payload/hooks/scripts/warn-shared-modules.sh +33 -0
  56. claude_kit/_payload/rules/agent-guardrails.md +83 -0
  57. claude_kit/_payload/rules/agent-memory.md +106 -0
  58. claude_kit/_payload/rules/agent-resilience.md +61 -0
  59. claude_kit/_payload/rules/autonomy-levels.md +30 -0
  60. claude_kit/_payload/rules/code-organization.md +312 -0
  61. claude_kit/_payload/rules/continuity.md +84 -0
  62. claude_kit/_payload/rules/design-patterns.md +422 -0
  63. claude_kit/_payload/rules/devops-observability.md +57 -0
  64. claude_kit/_payload/rules/documentation.md +326 -0
  65. claude_kit/_payload/rules/evals.md +62 -0
  66. claude_kit/_payload/rules/frontend-best-practices.md +157 -0
  67. claude_kit/_payload/rules/goal-setting-and-monitoring.md +72 -0
  68. claude_kit/_payload/rules/human-in-the-loop.md +64 -0
  69. claude_kit/_payload/rules/linting-and-formatting.md +220 -0
  70. claude_kit/_payload/rules/mandatory-workflow.md +309 -0
  71. claude_kit/_payload/rules/model-tiers.md +34 -0
  72. claude_kit/_payload/rules/quality-gates.md +107 -0
  73. claude_kit/_payload/rules/rarv-cycle.md +31 -0
  74. claude_kit/_payload/rules/reasoning-techniques.md +62 -0
  75. claude_kit/_payload/rules/responsive-and-accessibility.md +353 -0
  76. claude_kit/_payload/rules/risk-classification.md +36 -0
  77. claude_kit/_payload/rules/testing.md +417 -0
  78. claude_kit/_payload/rules/tool-design.md +66 -0
  79. claude_kit/_payload/skills/_references/accessibility-checklist.md +160 -0
  80. claude_kit/_payload/skills/_references/orchestration-patterns.md +405 -0
  81. claude_kit/_payload/skills/_references/performance-checklist.md +153 -0
  82. claude_kit/_payload/skills/_references/security-checklist.md +134 -0
  83. claude_kit/_payload/skills/_references/testing-patterns.md +236 -0
  84. claude_kit/_payload/skills/accessibility-review/SKILL.md +56 -0
  85. claude_kit/_payload/skills/api-and-interface-design/SKILL.md +294 -0
  86. claude_kit/_payload/skills/api-integration/SKILL.md +348 -0
  87. claude_kit/_payload/skills/archive-sprint/SKILL.md +31 -0
  88. claude_kit/_payload/skills/backlog/SKILL.md +41 -0
  89. claude_kit/_payload/skills/backlog/item-template.md +20 -0
  90. claude_kit/_payload/skills/browser-testing-with-devtools/SKILL.md +302 -0
  91. claude_kit/_payload/skills/ci-cd-and-automation/SKILL.md +402 -0
  92. claude_kit/_payload/skills/code-review-and-quality/SKILL.md +347 -0
  93. claude_kit/_payload/skills/code-simplification/SKILL.md +331 -0
  94. claude_kit/_payload/skills/component-design/SKILL.md +171 -0
  95. claude_kit/_payload/skills/consolidate-learnings/SKILL.md +55 -0
  96. claude_kit/_payload/skills/context-engineering/SKILL.md +321 -0
  97. claude_kit/_payload/skills/debugging-and-error-recovery/SKILL.md +300 -0
  98. claude_kit/_payload/skills/decision/SKILL.md +46 -0
  99. claude_kit/_payload/skills/decision/adr-template.md +36 -0
  100. claude_kit/_payload/skills/deprecation-and-migration/SKILL.md +207 -0
  101. claude_kit/_payload/skills/documentation-and-adrs/SKILL.md +299 -0
  102. claude_kit/_payload/skills/doubt-driven-development/SKILL.md +243 -0
  103. claude_kit/_payload/skills/execute/SKILL.md +27 -0
  104. claude_kit/_payload/skills/frontend-ui-engineering/SKILL.md +328 -0
  105. claude_kit/_payload/skills/git-workflow-and-versioning/SKILL.md +300 -0
  106. claude_kit/_payload/skills/idea-refine/SKILL.md +178 -0
  107. claude_kit/_payload/skills/idea-refine/examples.md +238 -0
  108. claude_kit/_payload/skills/idea-refine/frameworks.md +99 -0
  109. claude_kit/_payload/skills/idea-refine/refinement-criteria.md +113 -0
  110. claude_kit/_payload/skills/idea-refine/scripts/idea-refine.sh +15 -0
  111. claude_kit/_payload/skills/incident-postmortem/SKILL.md +74 -0
  112. claude_kit/_payload/skills/incremental-implementation/SKILL.md +245 -0
  113. claude_kit/_payload/skills/interview-me/SKILL.md +221 -0
  114. claude_kit/_payload/skills/load-testing/SKILL.md +83 -0
  115. claude_kit/_payload/skills/manual-test/SKILL.md +516 -0
  116. claude_kit/_payload/skills/performance-optimization/SKILL.md +277 -0
  117. claude_kit/_payload/skills/planning-and-task-breakdown/SKILL.md +223 -0
  118. claude_kit/_payload/skills/playwright-verification/SKILL.md +205 -0
  119. claude_kit/_payload/skills/refresh-docs/SKILL.md +63 -0
  120. claude_kit/_payload/skills/remember/SKILL.md +96 -0
  121. claude_kit/_payload/skills/scope/SKILL.md +52 -0
  122. claude_kit/_payload/skills/scope/scope-template.md +82 -0
  123. claude_kit/_payload/skills/sdlc/SKILL.md +83 -0
  124. claude_kit/_payload/skills/security-and-hardening/SKILL.md +368 -0
  125. claude_kit/_payload/skills/security-verification/SKILL.md +209 -0
  126. claude_kit/_payload/skills/shipping-and-launch/SKILL.md +309 -0
  127. claude_kit/_payload/skills/smoke-test/SKILL.md +78 -0
  128. claude_kit/_payload/skills/source-driven-development/SKILL.md +195 -0
  129. claude_kit/_payload/skills/spec-driven-development/SKILL.md +200 -0
  130. claude_kit/_payload/skills/sprint/SKILL.md +67 -0
  131. claude_kit/_payload/skills/sprint/sprint-template.md +90 -0
  132. claude_kit/_payload/skills/test-driven-development/SKILL.md +383 -0
  133. claude_kit/_payload/skills/threat-model/SKILL.md +60 -0
  134. claude_kit/_payload/skills/triage/SKILL.md +87 -0
  135. claude_kit/_payload/skills/ui-ux-design/SKILL.md +71 -0
  136. claude_kit/_payload/skills/unit-test/SKILL.md +237 -0
  137. claude_kit/_payload/skills/using-agent-skills/SKILL.md +180 -0
  138. claude_kit/_payload/templates/CLAUDE.md +238 -0
  139. claude_kit/_payload/templates/CLAUDE.stack.md.tmpl +53 -0
  140. claude_kit/_payload/templates/CONTINUITY.template.md +35 -0
  141. claude_kit/_payload/templates/README.claude-sdlc.md.tmpl +219 -0
  142. claude_kit/_payload/templates/agent-memory/MEMORY.md +30 -0
  143. claude_kit/_payload/templates/agent-memory/api/.gitkeep +0 -0
  144. claude_kit/_payload/templates/agent-memory/architecture/.gitkeep +0 -0
  145. claude_kit/_payload/templates/agent-memory/debugging/.gitkeep +0 -0
  146. claude_kit/_payload/templates/agent-memory/gotchas/.gitkeep +0 -0
  147. claude_kit/_payload/templates/agent-memory/patterns/.gitkeep +0 -0
  148. claude_kit/_payload/templates/agent-memory/performance/.gitkeep +0 -0
  149. claude_kit/_payload/templates/artifacts/adr.md +18 -0
  150. claude_kit/_payload/templates/artifacts/feature-spec.md +29 -0
  151. claude_kit/_payload/templates/artifacts/release-plan.md +23 -0
  152. claude_kit/_payload/templates/artifacts/runbook.md +24 -0
  153. claude_kit/_payload/templates/artifacts/security-review.md +23 -0
  154. claude_kit/_payload/templates/artifacts/test-plan.md +22 -0
  155. claude_kit/_payload/templates/org/README.md +53 -0
  156. claude_kit/_payload/templates/org/agents/data-workflow-agent.md +59 -0
  157. claude_kit/_payload/templates/org/agents/founder-prototype-agent.md +61 -0
  158. claude_kit/_payload/templates/org/agents/internal-tools-builder.md +63 -0
  159. claude_kit/_payload/templates/org/agents/pm-copilot.md +60 -0
  160. claude_kit/_payload/templates/org/agents/support-ticket-engineer.md +63 -0
  161. claude_kit/_payload/templates/org/packs/devops-and-release/README.md +46 -0
  162. claude_kit/_payload/templates/org/packs/devops-and-release/pack.yaml +32 -0
  163. claude_kit/_payload/templates/org/packs/engineering-core/README.md +46 -0
  164. claude_kit/_payload/templates/org/packs/engineering-core/pack.yaml +44 -0
  165. claude_kit/_payload/templates/org/packs/non-engineer-builder/README.md +53 -0
  166. claude_kit/_payload/templates/org/packs/non-engineer-builder/pack.yaml +39 -0
  167. claude_kit/_payload/templates/org/packs/onboarding-and-docs/README.md +49 -0
  168. claude_kit/_payload/templates/org/packs/onboarding-and-docs/pack.yaml +26 -0
  169. claude_kit/_payload/templates/org/packs/product-to-code/README.md +50 -0
  170. claude_kit/_payload/templates/org/packs/product-to-code/pack.yaml +34 -0
  171. claude_kit/_payload/templates/org/packs/quality-and-review/README.md +53 -0
  172. claude_kit/_payload/templates/org/packs/quality-and-review/pack.yaml +40 -0
  173. claude_kit/_payload/templates/org/packs/security-and-compliance/README.md +50 -0
  174. claude_kit/_payload/templates/org/packs/security-and-compliance/pack.yaml +36 -0
  175. claude_kit/_payload/templates/org/rules/ai-working-agreement.md +45 -0
  176. claude_kit/_payload/templates/org/rules/ambiguity-resolution.md +36 -0
  177. claude_kit/_payload/templates/org/rules/branch-and-pr-policy.md +41 -0
  178. claude_kit/_payload/templates/org/rules/compliance-policy.md +50 -0
  179. claude_kit/_payload/templates/org/rules/non-engineer-safe-coding.md +37 -0
  180. claude_kit/_payload/templates/org/rules/pii-policy.md +46 -0
  181. claude_kit/_payload/templates/org/rules/production-data-policy.md +35 -0
  182. claude_kit/_payload/templates/org/rules/prompt-to-task-conversion.md +30 -0
  183. claude_kit/_payload/templates/org/rules/prototype-boundaries.md +40 -0
  184. claude_kit/_payload/templates/org/rules/secrets-policy.md +34 -0
  185. claude_kit/_payload/templates/org/skills/customer-issue-to-fix/SKILL.md +61 -0
  186. claude_kit/_payload/templates/org/skills/feature-from-idea/SKILL.md +56 -0
  187. claude_kit/_payload/templates/org/skills/prompt-to-safe-task/SKILL.md +59 -0
  188. claude_kit/_payload/templates/org/skills/prototype-to-production/SKILL.md +61 -0
  189. claude_kit/_payload/templates/org/skills/repo-onboarding/SKILL.md +60 -0
  190. claude_kit/_payload/templates/settings.json +53 -0
  191. claude_kit/_payload/templates/stacks/backend/python/fastapi/rules/fastapi-patterns.md +64 -0
  192. claude_kit/_payload/templates/stacks/db/mongodb/agents/migration-specialist.md +61 -0
  193. claude_kit/_payload/templates/stacks/db/mongodb/agents/mongodb-specialist.md +59 -0
  194. claude_kit/_payload/templates/stacks/db/mongodb/rules/mongodb-patterns.md +39 -0
  195. claude_kit/_payload/templates/stacks/db/postgres/agents/db-performance-reviewer.md +66 -0
  196. claude_kit/_payload/templates/stacks/db/postgres/agents/migration-specialist.md +56 -0
  197. claude_kit/_payload/templates/stacks/db/postgres/agents/postgres-specialist.md +58 -0
  198. claude_kit/_payload/templates/stacks/db/postgres/rules/database-performance.md +64 -0
  199. claude_kit/_payload/templates/stacks/db/postgres/rules/postgres-patterns.md +43 -0
  200. claude_kit/_payload/templates/stacks/frontend/react/rules/react-patterns.md +63 -0
  201. claude_kit/catalog.py +476 -0
  202. claude_kit/cli.py +327 -0
  203. claude_kit/hooks.py +246 -0
  204. claude_kit/models.py +205 -0
  205. claude_kit/prompts.py +209 -0
  206. claude_kit/render.py +146 -0
  207. claude_kit/scaffold.py +492 -0
  208. claude_kit/upgrader.py +294 -0
  209. claude_kit/validator.py +197 -0
@@ -0,0 +1,34 @@
1
+ # Org capability pack manifest. References components by name; they install in the standard
2
+ # auto-discovered .claude/ locations. `existing: true` = ships with claude-kit already (reused, not
3
+ # duplicated); `existing: false` = added by the org layer (templates/org/).
4
+ id: product-to-code
5
+ label: "Product to Code"
6
+ version: 0.1.0
7
+ purpose: >
8
+ Turn ideas, tickets, PRDs, and customer feedback into specs, user stories, acceptance criteria,
9
+ implementation plans, and reviewable tasks — the path from intent to ready-to-build work.
10
+ teams: [product, founders]
11
+ risk_default: medium
12
+
13
+ skills:
14
+ - { name: idea-refine, existing: true }
15
+ - { name: interview-me, existing: true }
16
+ - { name: spec-driven-development, existing: true }
17
+ - { name: planning-and-task-breakdown, existing: true }
18
+ - { name: scope, existing: true }
19
+ - { name: feature-from-idea, existing: false }
20
+ - { name: prompt-to-safe-task, existing: false }
21
+ agents:
22
+ - { name: pm-copilot, existing: false }
23
+ - { name: spec-doc-writer, existing: true }
24
+ - { name: story-planner, existing: true }
25
+ - { name: ui-designer, existing: true }
26
+ - { name: orchestrator, existing: true }
27
+ - { name: risk-classifier, existing: true }
28
+ rules:
29
+ - { name: ambiguity-resolution.md, existing: false }
30
+ - { name: prompt-to-task-conversion.md, existing: false }
31
+ - { name: non-engineer-safe-coding.md, existing: false }
32
+ - { name: goal-setting-and-monitoring.md, existing: true }
33
+ hooks:
34
+ - { name: warn-large-edits, existing: false }
@@ -0,0 +1,53 @@
1
+ # Quality & Review
2
+
3
+ The verification loop: test planning, regression analysis, PR review, security review, performance
4
+ review, accessibility review, and acceptance review — everything that gates a change before it ships.
5
+
6
+ **Primary teams:** QA · Engineering · **Default risk:** medium · **Manifest:** `pack.yaml`
7
+
8
+ ## Who uses it
9
+ QA engineers and any engineer wearing a reviewer or tester hat — the pack for verifying work, not
10
+ producing it. Pairs with `engineering-core` (which builds) and `security-and-compliance` (deeper
11
+ security gates).
12
+
13
+ ## Role → component mapping
14
+ This pack bundles components that already ship with claude-kit (reused, not duplicated). It introduces
15
+ no competing agents — every reviewer and tester role maps to an existing pipeline agent.
16
+
17
+ | Need | Use |
18
+ |------|-----|
19
+ | Review a PR / change for correctness and quality | `/code-review-and-quality` → `sdlc-code-reviewer` |
20
+ | Plan and write tests before/with the change | `/test-driven-development` → `tester` |
21
+ | Add or strengthen unit coverage | `/unit-test` → `unit-tester` |
22
+ | Verify end-to-end / acceptance flows | `e2e-tester` (then `acceptance-reviewer`) |
23
+ | Independently re-verify coverage and findings | `senior-tester` |
24
+ | Security review of the change | `/security-verification` (`threat-model` for design risk) |
25
+ | Performance review / regression check | `/performance-optimization` |
26
+ | Accessibility review | `/accessibility-review` |
27
+ | Stress-test a unanimous PASS (anti-sycophancy) | `devils-advocate` |
28
+ | Probe assumptions before approving | `/doubt-driven-development` |
29
+ | Manual / smoke check before sign-off | `/manual-test`, `/smoke-test` |
30
+ | Confirm cross-stream coverage has no gaps | `merge-reviewer` |
31
+
32
+ ## Rules it leans on
33
+ `quality-gates.md` (severity model + blind review + Devil's Advocate), `testing.md` (coverage
34
+ expectations and lanes), `rarv-cycle.md` (every reviewer shows a green Verify before handoff).
35
+
36
+ ## Hooks it expects
37
+ `warn-missing-tests` (flags changes that touch behavior without test coverage), plus `lint-fix` and
38
+ `type-check` so review starts from a clean baseline.
39
+
40
+ ## Examples
41
+ ```
42
+ /review-pr Check the latest change to the items service # → code-review-and-quality
43
+ /write-tests Add regression coverage for the failed-login path # → test-driven-development
44
+ /security-verification Review the new file-upload handler # → security-verification
45
+ /accessibility-review Audit the new settings screen # → accessibility-review
46
+ ```
47
+
48
+ ## Autonomy & risk
49
+ Reviewers and testers **plan and delegate only** — they do not write or run application code; they
50
+ verify, classify findings (Critical/High/Medium/Low/Cosmetic), and gate. A gate passes only with zero
51
+ Critical/High/Medium open (`quality-gates.md`). Anything in a sensitive area (auth, payments, secrets,
52
+ migrations, infrastructure) is at least **high** risk and requires security + test review plus explicit
53
+ human approval before the gate counts (`.claude/rules/risk-classification.md`).
@@ -0,0 +1,40 @@
1
+ # Org capability pack manifest. References components by name; they install in the standard
2
+ # auto-discovered .claude/ locations. `existing: true` = ships with claude-kit already (reused, not
3
+ # duplicated); `existing: false` = added by the org layer (templates/org/).
4
+ id: quality-and-review
5
+ label: "Quality & Review"
6
+ version: 0.1.0
7
+ purpose: >
8
+ Standardise test planning, regression analysis, PR review, security review, performance review,
9
+ accessibility review, and acceptance review — the verification loop that gates every change.
10
+ teams: [qa, engineering]
11
+ risk_default: medium
12
+
13
+ skills:
14
+ - { name: code-review-and-quality, existing: true }
15
+ - { name: test-driven-development, existing: true }
16
+ - { name: unit-test, existing: true }
17
+ - { name: security-verification, existing: true }
18
+ - { name: performance-optimization, existing: true }
19
+ - { name: accessibility-review, existing: true }
20
+ - { name: threat-model, existing: true }
21
+ - { name: doubt-driven-development, existing: true }
22
+ - { name: manual-test, existing: true }
23
+ - { name: smoke-test, existing: true }
24
+ agents:
25
+ - { name: sdlc-code-reviewer, existing: true }
26
+ - { name: senior-tester, existing: true }
27
+ - { name: unit-tester, existing: true }
28
+ - { name: e2e-tester, existing: true }
29
+ - { name: tester, existing: true }
30
+ - { name: devils-advocate, existing: true }
31
+ - { name: acceptance-reviewer, existing: true }
32
+ - { name: merge-reviewer, existing: true }
33
+ rules:
34
+ - { name: quality-gates.md, existing: true }
35
+ - { name: testing.md, existing: true }
36
+ - { name: rarv-cycle.md, existing: true }
37
+ hooks:
38
+ - { name: warn-missing-tests, existing: false }
39
+ - { name: lint-fix, existing: true }
40
+ - { name: type-check, existing: true }
@@ -0,0 +1,50 @@
1
+ # Security & Compliance
2
+
3
+ The guardrail layer: prevent secrets exposure, insecure code, unsafe commands, dependency risks, auth
4
+ flaws, data leakage, and unreviewed sensitive changes.
5
+
6
+ **Primary teams:** Security · DevOps · **Default risk:** high · **Manifest:** `pack.yaml`
7
+
8
+ ## Who uses it
9
+ Security engineers and DevOps owners who review changes, set policy, and gate sensitive work — plus any
10
+ engineer touching a restricted surface (auth, secrets, production data, infrastructure). It runs
11
+ alongside the everyday loop, not instead of it.
12
+
13
+ ## Role → component mapping
14
+ This pack reuses the security components that already ship with claude-kit (no competing agents) and
15
+ adds four policy rules plus three hooks at the org layer.
16
+
17
+ | Need | Use |
18
+ |------|-----|
19
+ | Harden code / fix an insecure pattern | `/security-and-hardening` → `security-reviewer` |
20
+ | Verify a change is safe before merge | `/security-verification` → `security-reviewer` |
21
+ | Model threats for a feature | `/threat-model` → `security-reviewer` |
22
+ | Audit dependencies for known risk | `/security-verification` → `dependency-scanner` |
23
+ | Find leaked secrets / credentials | `secret-scanner` agent (`secrets-policy.md`) |
24
+ | Check OWASP-class flaws (auth, injection, access control) | `owasp-reviewer` agent |
25
+ | Confirm a change meets policy | `policy-validator` agent (`compliance-policy.md`) |
26
+ | Decide how risky / restricted a change is | `risk-classifier` agent (`risk-classification.md`) |
27
+
28
+ These agents **plan and delegate** — they review, classify, and flag; they do not write or run code.
29
+
30
+ ## Rules it leans on
31
+ `secrets-policy.md`, `pii-policy.md`, `production-data-policy.md`, `compliance-policy.md`,
32
+ `agent-guardrails.md`, `risk-classification.md`.
33
+
34
+ ## Hooks it expects
35
+ `protect-secrets`, `guard-commit-secrets`, and (added by the org layer) `warn-sensitive-files`,
36
+ `validate-settings`, `audit-log`. Security-relevant hooks change only through review by the owning team.
37
+
38
+ ## Examples
39
+ ```
40
+ /security-review Harden the session-handling path before launch # → security-and-hardening
41
+ /threat-model Map the abuse cases for the new public upload endpoint # → threat-model
42
+ /dependency-audit Flag risky/outdated packages in the data store layer # → security-verification + dependency-scanner
43
+ ```
44
+
45
+ ## Autonomy & risk
46
+ Default risk is **high** — this is the pack that enforces the line. Any work in a sensitive area (auth,
47
+ secrets, production data, PII, migrations, infrastructure) requires a plan, explicit human approval,
48
+ security + test review, and rollback notes before it proceeds, regardless of autonomy level
49
+ (`risk-classification.md`, `agent-guardrails.md`). Secrets and production data never enter the
50
+ repo, logs, or prompts (`secrets-policy.md`, `production-data-policy.md`, `pii-policy.md`).
@@ -0,0 +1,36 @@
1
+ # Org capability pack manifest. References components by name; they install in the standard
2
+ # auto-discovered .claude/ locations. `existing: true` = ships with claude-kit already (reused, not
3
+ # duplicated); `existing: false` = added by the org layer (templates/org/).
4
+ id: security-and-compliance
5
+ label: "Security & Compliance"
6
+ version: 0.1.0
7
+ purpose: >
8
+ Prevent secrets exposure, insecure code, unsafe shell commands, dependency risks, auth flaws, data
9
+ leakage, and unreviewed sensitive changes — the guardrails that keep delivery safe and compliant.
10
+ teams: [security, devops]
11
+ risk_default: high
12
+
13
+ skills:
14
+ - { name: security-and-hardening, existing: true }
15
+ - { name: security-verification, existing: true }
16
+ - { name: threat-model, existing: true }
17
+ agents:
18
+ - { name: security-reviewer, existing: true }
19
+ - { name: secret-scanner, existing: true }
20
+ - { name: dependency-scanner, existing: true }
21
+ - { name: owasp-reviewer, existing: true }
22
+ - { name: policy-validator, existing: true }
23
+ - { name: risk-classifier, existing: true }
24
+ rules:
25
+ - { name: secrets-policy.md, existing: false }
26
+ - { name: pii-policy.md, existing: false }
27
+ - { name: production-data-policy.md, existing: false }
28
+ - { name: compliance-policy.md, existing: false }
29
+ - { name: agent-guardrails.md, existing: true }
30
+ - { name: risk-classification.md, existing: true }
31
+ hooks:
32
+ - { name: protect-secrets, existing: true }
33
+ - { name: guard-commit-secrets, existing: true }
34
+ - { name: warn-sensitive-files, existing: false }
35
+ - { name: validate-settings, existing: false }
36
+ - { name: audit-log, existing: false }
@@ -0,0 +1,45 @@
1
+ # AI Working Agreement
2
+
3
+ This is the charter for how humans and Claude work together in this project. It is the umbrella over
4
+ the organization capability layer: a short summary of the contract, with each clause pointing at the
5
+ rule that defines it in full. When the rules below conflict, the stricter one wins.
6
+
7
+ ## The agreement
8
+
9
+ 1. **Plan before large edits.** State the goal, scope, and steps before changing anything beyond a
10
+ trivial fix; turn a raw prompt into a scoped, verifiable task first.
11
+ See `.claude/rules/prompt-to-task-conversion.md` and `.claude/rules/mandatory-workflow.md`.
12
+ 2. **Stay within the granted autonomy level.** Act only as far as you're authorized; if the task needs
13
+ more autonomy than granted, stop and ask. See `.claude/rules/autonomy-levels.md`.
14
+ 3. **Classify the risk of every change** as low / medium / high / restricted, and apply the matching
15
+ protocol. See `.claude/rules/risk-classification.md`.
16
+ 4. **Ask when unsure.** Resolve ambiguity instead of guessing; never invent a missing requirement.
17
+ See `.claude/rules/human-in-the-loop.md`.
18
+ 5. **Make it safe for non-engineers.** Explain in plain language, keep changes reversible, and use the
19
+ guardrails for vibe-coding. See `.claude/rules/non-engineer-safe-coding.md`.
20
+ 6. **Never touch secrets, production data, or PII without approval.** No reading, writing, copying, or
21
+ exposing them outside the sanctioned path. See `.claude/rules/secrets-policy.md`,
22
+ `.claude/rules/production-data-policy.md`, and `.claude/rules/pii-policy.md`.
23
+ 7. **Always test and review.** Every change meets the project's linter / test runner / build and passes
24
+ review before it ships. See `.claude/rules/quality-gates.md`.
25
+ 8. **Use branches and PRs; never push to the protected branch directly.**
26
+ See `.claude/rules/branch-and-pr-policy.md`.
27
+ 9. **Get human approval for high- and restricted-risk work**, and respect any regulatory obligations.
28
+ See `.claude/rules/human-in-the-loop.md` and `.claude/rules/compliance-policy.md`.
29
+
30
+ ## Rules
31
+
32
+ - **This charter only summarizes.** The linked rule is always the source of truth for its clause;
33
+ read it before acting in that area.
34
+ - **The strictest applicable rule applies.** A higher risk tier or a stricter policy overrides a more
35
+ permissive default.
36
+ - **The workflow is non-negotiable.** No clause here lets you skip the pipeline or its gates
37
+ (`.claude/rules/mandatory-workflow.md`, `.claude/rules/quality-gates.md`).
38
+
39
+ > Part of claude-kit's organization capability layer (vibe-coding). It points at, and is bound by,
40
+ > `.claude/rules/autonomy-levels.md`, `.claude/rules/risk-classification.md`,
41
+ > `.claude/rules/human-in-the-loop.md`, `.claude/rules/prompt-to-task-conversion.md`,
42
+ > `.claude/rules/non-engineer-safe-coding.md`, `.claude/rules/secrets-policy.md`,
43
+ > `.claude/rules/production-data-policy.md`, `.claude/rules/pii-policy.md`,
44
+ > `.claude/rules/branch-and-pr-policy.md`, `.claude/rules/compliance-policy.md`,
45
+ > `.claude/rules/mandatory-workflow.md`, and `.claude/rules/quality-gates.md`.
@@ -0,0 +1,36 @@
1
+ # Ambiguity Resolution
2
+
3
+ When a request is unclear, the choice is **ask or assume** — and the wrong call is expensive either way:
4
+ a needless question stalls flow; a silent guess ships the wrong thing. This rule sets the line so agents
5
+ ask when it matters and proceed when it doesn't.
6
+
7
+ ## Ask when
8
+
9
+ 1. **The goal is unclear** — you can't state in one sentence what "done" means.
10
+ 2. **The scope is unclear** — you don't know which areas it should (and should not) touch.
11
+ 3. **Success is unmeasurable** — there's no test, check, or observable behavior that proves it works.
12
+ 4. **Interpretations compete** — two or more readings would lead to materially different work.
13
+ 5. **It's high-risk** — auth, payments, secrets, production data, migrations, or infrastructure are
14
+ involved. Default to **asking** here even if you have a plausible default (`.claude/rules/risk-classification.md`).
15
+
16
+ ## Assume when
17
+
18
+ - A sensible default exists, the cost of being wrong is low, and the work is easy to reverse. **State the
19
+ assumption out loud and proceed** — don't manufacture a question for a choice you can safely make.
20
+
21
+ ## Rules
22
+
23
+ - **Present competing interpretations; never silently pick one.** When readings diverge, lay out each
24
+ option with its trade-off and your recommendation — let the human choose.
25
+ - **Record assumptions explicitly.** Surface every inference so a human can correct it before it hardens
26
+ into shipped work. Never fabricate a missing requirement — reasoning cannot supply a fact you were
27
+ never given.
28
+ - **Keep questions few and high-leverage.** Batch the smallest set that unblocks the most work; ask the
29
+ question whose answer changes what you build, not trivia. One question at a time when extracting intent.
30
+ - **Bias to asking as risk rises.** A cheap question now beats an expensive wrong-direction unwind later;
31
+ the higher the risk tier, the lower the bar for stopping.
32
+
33
+ > Part of claude-kit's organization capability layer (vibe-coding). Cross-refs
34
+ > `.claude/rules/prompt-to-task-conversion.md`, `.claude/rules/human-in-the-loop.md`,
35
+ > `.claude/rules/risk-classification.md`. The `interview-me` and `idea-refine` skills extract true intent
36
+ > one question at a time when a request is underspecified.
@@ -0,0 +1,41 @@
1
+ # Branch & PR Policy
2
+
3
+ Code reaches the main line through one path only: a feature branch, a small reviewed pull request, and
4
+ a merge after approval. Never commit straight to `main`/`master`, and never push to it directly — the
5
+ `guard-push-main` hook blocks it, but the policy holds even where no hook runs.
6
+
7
+ ## Always work on a branch
8
+
9
+ 1. **Branch from the main line** for every change — features, fixes, docs, config. One branch per task.
10
+ 2. **Name it for the work** — a short, descriptive slug (e.g. `feat/<thing>`, `fix/<thing>`); avoid
11
+ long-lived shared branches that drift.
12
+ 3. **Keep `main` releasable.** It builds, passes the project's test runner and linter, and is never the
13
+ target of a direct commit or push.
14
+
15
+ ## Keep PRs small and single-purpose
16
+
17
+ - **One concern per PR.** A PR does one thing — don't bundle a refactor, a feature, and a config change.
18
+ If it grows, split it.
19
+ - **Smallest reviewable diff** that delivers the change; large PRs hide defects and slow review.
20
+ - **No drive-by edits.** Touch only what the task needs (see the surgical-changes rule of conduct).
21
+
22
+ ## Write a clear PR
23
+
24
+ Every PR description states, in plain language:
25
+
26
+ 1. **What & why** — the change and the reason for it, not just the mechanism.
27
+ 2. **Scope** — what it touches, and what it deliberately leaves out.
28
+ 3. **How it was verified** — tests, checks, or observable behavior proving it works.
29
+ 4. **Checklist** — gates passed, docs updated, no secrets, breaking changes called out.
30
+
31
+ ## Review before merge
32
+
33
+ - **Human review is required** before merge — at least one approval. Code review is a quality gate, not
34
+ a formality (`.claude/rules/quality-gates.md`).
35
+ - **Quality gates pass first.** Build, linter, tests, and security checks are green before review counts.
36
+ - **Merging is an outward-facing, hard-to-reverse action** — it stays within the granted autonomy level
37
+ (`.claude/rules/autonomy-levels.md`); opening or merging to a protected branch needs human approval.
38
+
39
+ > Part of claude-kit's organization capability layer. Enforced by the `guard-push-main` hook. The
40
+ > `/git-workflow-and-versioning` skill drives branching and PRs interactively, and the `pr-raiser` agent
41
+ > opens the PR. Cross-refs `.claude/rules/quality-gates.md`, `.claude/rules/autonomy-levels.md`.
@@ -0,0 +1,50 @@
1
+ # Compliance Policy
2
+
3
+ When review strictness is set to **regulated**, ordinary delivery is not enough: the work must be
4
+ **auditable, signed-off, and change-controlled**. This rule adds the extra obligations that apply to
5
+ regulated work, on top of the normal pipeline. It is standard-neutral — it names *what* evidence and
6
+ control to keep, not which framework demands it.
7
+
8
+ ## When this applies
9
+
10
+ Regulated mode is on when the org config sets review strictness to `regulated`, or when a task touches a
11
+ compliance-sensitive area (audited flows, financial records, regulated data, anything classified at least
12
+ **high** per `.claude/rules/risk-classification.md`). When in doubt, treat it as regulated.
13
+
14
+ ## What regulated work requires
15
+
16
+ 1. **Audit trail** — keep a local, append-only record of who/what/when for every gated action. The
17
+ **audit-log** hook writes it; never disable or edit it. The trail must let a reviewer reconstruct the
18
+ change after the fact.
19
+ 2. **Human sign-offs at gates** — a named human must approve at each gate; an agent PASS is not a
20
+ sign-off. Record the approver and time alongside the gate result.
21
+ 3. **Evidence of passes** — retain proof that the review, security, and test gates passed: reviewer
22
+ notes, the **security-clear** result (secret/dependency/OWASP/policy scans), and test/coverage
23
+ reports. Link each to the change it covers.
24
+ 4. **Change control** — no change reaches a protected branch without a tracked request: spec, approvals,
25
+ evidence, and rollback notes attached. Follow `.claude/rules/branch-and-pr-policy.md`.
26
+
27
+ ## Extra gates (beyond the normal pipeline)
28
+
29
+ | Gate | Owner | Passes when |
30
+ |------|-------|-------------|
31
+ | **security-clear** | `security-reviewer` (+ sub-scanners) | zero Critical/High/Medium open; secrets, dependency, and policy scans clean |
32
+ | **acceptance** | `acceptance-reviewer` | every acceptance criterion is met **and** signed off by a named human |
33
+
34
+ Both gates are mandatory in regulated mode and run before the PR. A failed gate blocks delivery and is
35
+ recorded in the audit trail — never waive a gate silently.
36
+
37
+ ## Rules
38
+
39
+ - **Evidence before assertion.** Do not claim a gate passed without the artifact that proves it.
40
+ - **Sign-offs are scoped.** Approval covers one change in one context; re-confirm for each gated step
41
+ (`.claude/rules/quality-gates.md`).
42
+ - **Secrets and PII stay protected.** Apply `.claude/rules/secrets-policy.md` and
43
+ `.claude/rules/pii-policy.md`; a violation is an auto-Critical that blocks every gate.
44
+ - **Tamper-evidence.** Any attempt to disable the audit-log hook or remove evidence is a restricted
45
+ action — stop and escalate to a human.
46
+
47
+ > Part of claude-kit's organization capability layer. Cross-refs
48
+ > `.claude/rules/risk-classification.md`, `.claude/rules/quality-gates.md`,
49
+ > `.claude/rules/secrets-policy.md`, `.claude/rules/pii-policy.md`. Enforced by the **audit-log** hook
50
+ > and the **security-clear** / **acceptance** gates.
@@ -0,0 +1,37 @@
1
+ # Non-Engineer-Safe Coding
2
+
3
+ When a non-engineer drives the work — a founder, PM, support agent, or operator describing what they
4
+ want — the agent supplies the engineering judgment they cannot. The driver owns the *intent*; the agent
5
+ owns *how it's built safely*. These guardrails keep "just make it do X" from quietly becoming a risky
6
+ change nobody reviewed.
7
+
8
+ ## Guardrails
9
+
10
+ 1. **Clarify intent before acting.** Turn the request into a goal, scope, and success criteria first;
11
+ if any is unclear, ask in plain language — don't guess. See
12
+ `.claude/rules/prompt-to-task-conversion.md` and `.claude/rules/ambiguity-resolution.md`.
13
+ 2. **Smallest safe scope.** Make the minimal change that meets the goal. State an explicit out-of-scope
14
+ line and never silently expand it.
15
+ 3. **Never touch sensitive areas without an engineer.** Auth, payments, secrets, production data,
16
+ migrations, and infrastructure are off-limits to a non-engineer-driven change — stop and bring in an
17
+ engineer (these are at least **high** risk per `.claude/rules/risk-classification.md`).
18
+ 4. **Always require tests + review.** No change ships without the project's test runner passing and a
19
+ human review. Don't lower the quality bar because the driver isn't technical.
20
+ 5. **Human approval before implementation.** Present the plan and get an explicit yes before editing —
21
+ stay within `.claude/rules/autonomy-levels.md`; if the task needs more autonomy than granted, ask.
22
+ 6. **Plain-language summaries.** Before and after, say in non-technical terms *what will change and why*,
23
+ and *what to verify*. The driver must be able to confirm it's right without reading code.
24
+
25
+ ## When to STOP and escalate
26
+
27
+ - The request reaches a sensitive area (rule 3), or risk classifies as high/restricted.
28
+ - Intent, scope, or "done" can't be made concrete after asking once.
29
+ - The safe change is larger than the driver expects, or needs a dependency, config, or data change.
30
+
31
+ When you stop, follow the escalation protocol in `.claude/rules/human-in-the-loop.md`: state the
32
+ decision, why it's a stop, the options with a recommendation, and what's safe to do meanwhile.
33
+
34
+ > Part of claude-kit's organization capability layer (vibe-coding). Cross-refs
35
+ > `.claude/rules/prompt-to-task-conversion.md`, `.claude/rules/ambiguity-resolution.md`,
36
+ > `.claude/rules/autonomy-levels.md`, `.claude/rules/risk-classification.md`,
37
+ > `.claude/rules/human-in-the-loop.md`. The `prompt-to-safe-task` skill applies this rule interactively.
@@ -0,0 +1,46 @@
1
+ # PII Policy
2
+
3
+ Personally identifiable information (PII) is any data that identifies a person — names, emails,
4
+ phone numbers, addresses, government IDs, location, device IDs, health or financial details. Treat
5
+ it as a liability, not an asset: the safest PII is the data you never collected. Identify it early
6
+ and handle it under this policy for the whole task.
7
+
8
+ ## Identify PII first
9
+
10
+ 1. **Spot it at intake.** When a prompt or spec involves user data, name which fields are PII before
11
+ designing anything. If unsure whether a field is PII, treat it as PII (see
12
+ `.claude/rules/ambiguity-resolution.md`).
13
+ 2. **Minimise collection.** Capture only the fields the goal actually needs; drop or aggregate the
14
+ rest. Prefer a non-identifying token over the raw value where one will do.
15
+ 3. **Mark the boundary.** Note where PII enters, where it is stored, and where it leaves — so every
16
+ later step knows what it is handling.
17
+
18
+ ## Handling rules
19
+
20
+ - **Never log PII.** No PII in application logs, console output, traces, metrics, analytics events,
21
+ or error reports — redact or hash before anything is written out. Same bar as secrets
22
+ (`.claude/rules/secrets-policy.md`).
23
+ - **Encrypt in transit and at rest.** PII moves only over encrypted transport and is stored only in
24
+ the project's encrypted data store; no plaintext PII in flat files, tickets, or chat.
25
+ - **Enforce access controls.** Least privilege — only the components and roles that need a field may
26
+ read it. No broad "read everything" access to PII stores.
27
+ - **Limit retention.** Keep PII only as long as the goal requires, then delete or anonymise it;
28
+ never retain "just in case." Honour any deletion request.
29
+ - **Scrub fixtures and test data.** Use synthetic or anonymised data in tests, seeds, and demos —
30
+ never real PII (`.claude/rules/production-data-policy.md`).
31
+ - **Scrub error reports.** Strip PII from stack traces, crash dumps, and bug reports before they
32
+ leave the system or reach a third party.
33
+
34
+ ## Rules
35
+
36
+ 1. **When in doubt, redact.** Withholding a field is cheap; leaking one is not reversible — it may be
37
+ cached, indexed, or shipped before anyone notices.
38
+ 2. **Escalate exposure.** Any PII in a log, fixture, or external payload is at least **high** risk
39
+ (`.claude/rules/risk-classification.md`) — stop, report it, and get a human decision
40
+ (`.claude/rules/human-in-the-loop.md`).
41
+ 3. **Don't move PII across boundaries** (new store, external service, lower environment) without
42
+ explicit approval.
43
+
44
+ > Part of claude-kit's organization capability layer. Cross-refs `.claude/rules/secrets-policy.md`,
45
+ > `.claude/rules/production-data-policy.md`, `.claude/rules/compliance-policy.md`. The
46
+ > `security-reviewer` and `policy-validator` agents enforce this at the gate.
@@ -0,0 +1,35 @@
1
+ # Production Data Policy
2
+
3
+ Never operate on production data without explicit, recorded human approval. Production data is the
4
+ highest-trust surface in the project — getting it wrong is rarely reversible. Default to synthetic,
5
+ sample, or anonymised data for every build, test, and demo; touch the real data store only when there
6
+ is no safe alternative and a human has said yes in writing.
7
+
8
+ ## Default posture
9
+
10
+ 1. **Prefer fake data.** Use synthetic, sample, or anonymised fixtures for development, tests, and
11
+ prototypes. If you need realistic data, generate or anonymise it — never copy production records.
12
+ 2. **No destructive operations against production.** No deletes, overwrites, bulk updates, truncation,
13
+ or schema drops on the live data store. These are at least **high** risk per
14
+ `.claude/rules/risk-classification.md`.
15
+ 3. **Least-privilege read only.** Read access to production is granted only when justified, scoped to
16
+ what the task needs, and time-boxed. Never request write access by default.
17
+ 4. **No exfiltration.** Don't copy production data into logs, prompts, fixtures, screenshots, or
18
+ external services. Personal data is additionally governed by `.claude/rules/pii-policy.md`.
19
+
20
+ ## Rules
21
+
22
+ - **Explicit, recorded approval.** Any operation on production data stops and asks a human; record who
23
+ approved, what was approved, and when. See `.claude/rules/human-in-the-loop.md`.
24
+ - **Approval is scoped and single-use.** Permission for one read/operation does not extend to the next
25
+ or to a wider dataset — re-confirm each time.
26
+ - **Migrations follow the high-risk protocol.** A migration that runs against production is high risk:
27
+ write a plan, capture rollback notes (how to undo, and the point of no return), get approval before
28
+ running, and report the outcome faithfully — including failures.
29
+ - **State the blast radius.** Before any approved operation, say what it touches, how many records, and
30
+ whether it can be undone, so the human can weigh the cost of getting it wrong.
31
+
32
+ > Part of claude-kit's organization capability layer. Cross-refs
33
+ > `.claude/rules/risk-classification.md`, `.claude/rules/pii-policy.md`, and
34
+ > `.claude/rules/human-in-the-loop.md`. Sensitive-area escalation is also wired into
35
+ > `.claude/rules/prompt-to-task-conversion.md`.
@@ -0,0 +1,30 @@
1
+ # Prompt → Task Conversion
2
+
3
+ A natural-language prompt is not yet a safe task. Before acting on any free-form request — especially
4
+ from a non-engineer — convert it into a scoped, risk-classified, verifiable task. This is the front door
5
+ for vibe-coding; it makes "just build X" safe.
6
+
7
+ ## Convert every prompt into
8
+
9
+ 1. **Goal** — the outcome in one sentence (what "done" means), not the mechanism.
10
+ 2. **Scope** — the files/areas it should touch, and an explicit **out-of-scope** line.
11
+ 3. **Risk tier** — low / medium / high / restricted per `.claude/rules/risk-classification.md`.
12
+ 4. **Success criteria** — how the result will be verified (tests, a check, an observable behavior).
13
+ 5. **Plan** — the ordered steps; for anything above low risk, write it down before editing.
14
+ 6. **Approval point** — who must say yes, and before which step (see below).
15
+
16
+ ## Rules
17
+
18
+ - **Resolve ambiguity first.** If the goal, scope, or success is unclear, ask — do not guess. See
19
+ `.claude/rules/ambiguity-resolution.md`.
20
+ - **Smallest safe scope.** Prefer the minimal change that meets the goal; never silently expand scope.
21
+ - **Match the autonomy level.** Stay within `.claude/rules/autonomy-levels.md`; if the task needs more
22
+ autonomy than granted, stop and ask.
23
+ - **Sensitive areas escalate automatically.** Auth, payments, secrets, production data, migrations, and
24
+ infrastructure are at least **high** risk — apply the high-risk protocol and get explicit approval.
25
+ - **State assumptions.** Surface what you inferred so a human can correct it before work proceeds.
26
+
27
+ > Part of claude-kit's organization capability layer (vibe-coding). Cross-refs
28
+ > `.claude/rules/non-engineer-safe-coding.md`, `.claude/rules/ambiguity-resolution.md`,
29
+ > `.claude/rules/risk-classification.md`, `.claude/rules/autonomy-levels.md`. The `prompt-to-safe-task`
30
+ > skill applies this rule interactively.
@@ -0,0 +1,40 @@
1
+ # Prototype Boundaries
2
+
3
+ A prototype exists to learn — to answer a question, prove a flow, or show an idea — not to serve real
4
+ users. It runs under relaxed process so it can move fast, which is only safe while its blast radius stays
5
+ tiny. The moment a prototype is meant to handle real traffic, data, or money, it stops being a prototype
6
+ and must be hardened first.
7
+
8
+ ## A prototype MAY
9
+
10
+ - Use fake, synthetic, or seeded sample data; placeholder copy; and throwaway accounts.
11
+ - Skip the full review chain and run under the lighter non-engineer flow (`.claude/rules/non-engineer-safe-coding.md`).
12
+ - Cut corners on edge cases, polish, and breadth — enough to demonstrate the idea, no more.
13
+ - Live in a clearly disposable place (a scratch branch, a sandbox, a demo space) labeled **PROTOTYPE**.
14
+
15
+ ## A prototype MUST NOT
16
+
17
+ - **Use real secrets** — no live API keys, tokens, or credentials (`.claude/rules/secrets-policy.md`).
18
+ - **Touch production data** — no real customer or user records, read or write (`.claude/rules/production-data-policy.md`).
19
+ - **Reach real users or external systems** — no production endpoints, no money movement, no outbound
20
+ messages to real people.
21
+ - **Be silently promoted.** Shipping a prototype as-is is forbidden; promotion goes through the checklist.
22
+
23
+ ## Hardening checklist — required BEFORE promotion to production
24
+
25
+ A prototype is **medium or higher** risk once promotion is proposed (`.claude/rules/risk-classification.md`).
26
+ Every item below must pass before it serves real traffic or data:
27
+
28
+ - [ ] **Input validation** — all external input is validated and rejected when malformed.
29
+ - [ ] **Authn / authz** — real authentication and authorization replace any bypass or stub.
30
+ - [ ] **Error handling** — failures are caught and handled; no crashes or leaked internals on bad input.
31
+ - [ ] **Structured logging** — observable events are logged (no secrets/PII), per `.claude/rules/devops-observability.md`.
32
+ - [ ] **Tests** — meaningful tests exist and pass via the project's test runner (`.claude/rules/testing.md`).
33
+ - [ ] **Rate limiting / quotas** — abuse and runaway cost are bounded.
34
+ - [ ] **Real data & secrets swapped in** — synthetic data and placeholder keys replaced by managed ones.
35
+ - [ ] **Review** — the change goes through the full review chain (`.claude/rules/mandatory-workflow.md`).
36
+
37
+ > Part of claude-kit's organization capability layer (vibe-coding). Cross-refs
38
+ > `.claude/rules/risk-classification.md`, `.claude/rules/non-engineer-safe-coding.md`,
39
+ > `.claude/rules/production-data-policy.md`, `.claude/rules/secrets-policy.md`. The
40
+ > `prototype-to-production` skill applies this rule and walks the hardening checklist.
@@ -0,0 +1,34 @@
1
+ # Secrets Policy
2
+
3
+ Secrets are never code. API keys, passwords, tokens, private keys, connection strings, and signing
4
+ material must never be read into context, printed, logged, committed, or pasted into a chat. This rule
5
+ makes "just make it work with my key" safe — credentials stay out of the repo and out of the model.
6
+
7
+ ## Never do
8
+
9
+ 1. **Read or open** a secret-bearing file (`.env`, key files, credential dumps) to "see what's there".
10
+ 2. **Print or log** a secret value — not in output, not in a debug line, not in an error message.
11
+ 3. **Commit or push** a secret — config files, fixtures, and history all count.
12
+ 4. **Hardcode** a credential inline instead of referencing an environment variable or secret manager.
13
+ 5. **Echo a secret back** to the user or any external service.
14
+
15
+ ## Do instead
16
+
17
+ - **Reference, don't embed.** Read secrets from environment variables or the project's secret manager
18
+ at runtime; the code names the variable, never the value.
19
+ - **Keep a `.env.example`** with placeholder keys (no real values) so others know what to provide.
20
+ - **Gitignore real secret files** (`.env` and friends); only the example is tracked.
21
+ - **Rotate immediately on exposure.** If a secret is ever printed, logged, or committed, treat it as
22
+ compromised: rotate it, then purge it from history — do not just delete the line.
23
+ - **Ask before touching** anything that looks secret-bearing; stop and escalate rather than guess.
24
+
25
+ ## Enforcement
26
+
27
+ - The **protect-secrets** hook blocks reads of secret-bearing paths; the **guard-commit-secrets** hook
28
+ blocks commits that contain credential patterns. Do not work around either — if one trips, stop.
29
+ - The **secret-scanner** agent audits a change for leaked credentials before delivery; a finding is at
30
+ least **high** risk and blocks the security gate.
31
+
32
+ > Part of claude-kit's organization capability layer. Cross-refs `.claude/rules/agent-guardrails.md`
33
+ > (privilege/guardrail trips), `.claude/rules/pii-policy.md` (personal data handling), and
34
+ > `.claude/rules/compliance-policy.md` (regulatory obligations on exposure).