prizmkit 1.0.0 → 1.0.1

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 (89) hide show
  1. package/bundled/VERSION.json +5 -0
  2. package/bundled/adapters/claude/agent-adapter.js +108 -0
  3. package/bundled/adapters/claude/command-adapter.js +104 -0
  4. package/bundled/adapters/claude/paths.js +35 -0
  5. package/bundled/adapters/claude/rules-adapter.js +77 -0
  6. package/bundled/adapters/claude/settings-adapter.js +73 -0
  7. package/bundled/adapters/claude/team-adapter.js +183 -0
  8. package/bundled/adapters/codebuddy/agent-adapter.js +43 -0
  9. package/bundled/adapters/codebuddy/paths.js +29 -0
  10. package/bundled/adapters/codebuddy/settings-adapter.js +47 -0
  11. package/bundled/adapters/codebuddy/skill-adapter.js +68 -0
  12. package/bundled/adapters/codebuddy/team-adapter.js +46 -0
  13. package/bundled/adapters/shared/frontmatter.js +77 -0
  14. package/bundled/agents/prizm-dev-team-coordinator.md +142 -0
  15. package/bundled/agents/prizm-dev-team-dev.md +99 -0
  16. package/bundled/agents/prizm-dev-team-pm.md +114 -0
  17. package/bundled/agents/prizm-dev-team-reviewer.md +119 -0
  18. package/bundled/dev-pipeline/README.md +482 -0
  19. package/bundled/dev-pipeline/assets/feature-list-example.json +147 -0
  20. package/bundled/dev-pipeline/assets/prizm-dev-team-integration.md +138 -0
  21. package/bundled/dev-pipeline/launch-bugfix-daemon.sh +425 -0
  22. package/bundled/dev-pipeline/launch-daemon.sh +549 -0
  23. package/bundled/dev-pipeline/reset-feature.sh +209 -0
  24. package/bundled/dev-pipeline/retry-bug.sh +344 -0
  25. package/bundled/dev-pipeline/retry-feature.sh +338 -0
  26. package/bundled/dev-pipeline/run-bugfix.sh +638 -0
  27. package/bundled/dev-pipeline/run.sh +845 -0
  28. package/bundled/dev-pipeline/scripts/check-session-status.py +158 -0
  29. package/bundled/dev-pipeline/scripts/detect-stuck.py +385 -0
  30. package/bundled/dev-pipeline/scripts/generate-bootstrap-prompt.py +598 -0
  31. package/bundled/dev-pipeline/scripts/generate-bugfix-prompt.py +402 -0
  32. package/bundled/dev-pipeline/scripts/init-bugfix-pipeline.py +294 -0
  33. package/bundled/dev-pipeline/scripts/init-dev-team.py +134 -0
  34. package/bundled/dev-pipeline/scripts/init-pipeline.py +335 -0
  35. package/bundled/dev-pipeline/scripts/update-bug-status.py +748 -0
  36. package/bundled/dev-pipeline/scripts/update-feature-status.py +1076 -0
  37. package/bundled/dev-pipeline/templates/bootstrap-prompt.md +262 -0
  38. package/bundled/dev-pipeline/templates/bug-fix-list-schema.json +159 -0
  39. package/bundled/dev-pipeline/templates/bugfix-bootstrap-prompt.md +291 -0
  40. package/bundled/dev-pipeline/templates/feature-list-schema.json +112 -0
  41. package/bundled/dev-pipeline/templates/session-status-schema.json +77 -0
  42. package/bundled/skills/_metadata.json +267 -0
  43. package/bundled/skills/app-planner/SKILL.md +580 -0
  44. package/bundled/skills/app-planner/assets/planning-guide.md +313 -0
  45. package/bundled/skills/app-planner/scripts/validate-and-generate.py +758 -0
  46. package/bundled/skills/bug-planner/SKILL.md +235 -0
  47. package/bundled/skills/bugfix-pipeline-launcher/SKILL.md +252 -0
  48. package/bundled/skills/dev-pipeline-launcher/SKILL.md +223 -0
  49. package/bundled/skills/prizm-kit/SKILL.md +151 -0
  50. package/bundled/skills/prizm-kit/assets/claude-md-template.md +38 -0
  51. package/bundled/skills/prizm-kit/assets/codebuddy-md-template.md +35 -0
  52. package/bundled/skills/prizm-kit/assets/hooks/prizm-commit-hook.json +15 -0
  53. package/bundled/skills/prizmkit-adr-manager/SKILL.md +68 -0
  54. package/bundled/skills/prizmkit-adr-manager/assets/adr-template.md +26 -0
  55. package/bundled/skills/prizmkit-analyze/SKILL.md +194 -0
  56. package/bundled/skills/prizmkit-api-doc-generator/SKILL.md +56 -0
  57. package/bundled/skills/prizmkit-bug-fix-workflow/SKILL.md +351 -0
  58. package/bundled/skills/prizmkit-bug-reproducer/SKILL.md +62 -0
  59. package/bundled/skills/prizmkit-ci-cd-generator/SKILL.md +54 -0
  60. package/bundled/skills/prizmkit-clarify/SKILL.md +52 -0
  61. package/bundled/skills/prizmkit-code-review/SKILL.md +70 -0
  62. package/bundled/skills/prizmkit-committer/SKILL.md +117 -0
  63. package/bundled/skills/prizmkit-db-migration/SKILL.md +65 -0
  64. package/bundled/skills/prizmkit-dependency-health/SKILL.md +123 -0
  65. package/bundled/skills/prizmkit-deployment-strategy/SKILL.md +58 -0
  66. package/bundled/skills/prizmkit-error-triage/SKILL.md +55 -0
  67. package/bundled/skills/prizmkit-implement/SKILL.md +47 -0
  68. package/bundled/skills/prizmkit-init/SKILL.md +156 -0
  69. package/bundled/skills/prizmkit-log-analyzer/SKILL.md +55 -0
  70. package/bundled/skills/prizmkit-monitoring-setup/SKILL.md +75 -0
  71. package/bundled/skills/prizmkit-onboarding-generator/SKILL.md +70 -0
  72. package/bundled/skills/prizmkit-perf-profiler/SKILL.md +55 -0
  73. package/bundled/skills/prizmkit-plan/SKILL.md +54 -0
  74. package/bundled/skills/prizmkit-plan/assets/plan-template.md +37 -0
  75. package/bundled/skills/prizmkit-prizm-docs/SKILL.md +140 -0
  76. package/bundled/skills/prizmkit-prizm-docs/assets/PRIZM-SPEC.md +943 -0
  77. package/bundled/skills/prizmkit-retrospective/SKILL.md +79 -0
  78. package/bundled/skills/prizmkit-security-audit/SKILL.md +130 -0
  79. package/bundled/skills/prizmkit-specify/SKILL.md +52 -0
  80. package/bundled/skills/prizmkit-specify/assets/spec-template.md +37 -0
  81. package/bundled/skills/prizmkit-summarize/SKILL.md +51 -0
  82. package/bundled/skills/prizmkit-summarize/assets/registry-template.md +18 -0
  83. package/bundled/skills/prizmkit-tasks/SKILL.md +50 -0
  84. package/bundled/skills/prizmkit-tasks/assets/tasks-template.md +21 -0
  85. package/bundled/skills/prizmkit-tech-debt-tracker/SKILL.md +139 -0
  86. package/bundled/team/prizm-dev-team.json +47 -0
  87. package/bundled/templates/claude-md-template.md +38 -0
  88. package/bundled/templates/codebuddy-md-template.md +35 -0
  89. package/package.json +2 -1
@@ -0,0 +1,223 @@
1
+ ---
2
+ name: "dev-pipeline-launcher"
3
+ description: "Launch and manage the dev-pipeline from within a cbc session. Start pipeline in background, monitor logs, check status, stop pipeline. Invoke when user wants to start building features, run the pipeline, or check pipeline progress. (project)"
4
+ ---
5
+
6
+ # Dev-Pipeline Launcher
7
+
8
+ Launch the autonomous development pipeline from within a cbc conversation. The pipeline runs as a fully detached background process -- closing the cbc session does NOT stop the pipeline.
9
+
10
+ ### When to Use
11
+
12
+ **Start pipeline** -- User says:
13
+ - "run pipeline", "start pipeline", "start building", "launch dev-pipeline"
14
+ - "run the features", "execute feature list", "start implementing"
15
+ - "启动流水线", "开始实现", "运行流水线", "开始自动开发"
16
+ - "实现接下来的步骤", "执行 feature list", "开始构建"
17
+ - After app-planner completes: "go", "start", "build it", "开始吧"
18
+
19
+ **Check status** -- User says:
20
+ - "pipeline status", "check pipeline", "how's it going", "progress"
21
+ - "流水线状态", "查看进度", "现在什么情况"
22
+
23
+ **Stop pipeline** -- User says:
24
+ - "stop pipeline", "kill pipeline", "halt", "pause"
25
+ - "停止流水线", "暂停流水线"
26
+
27
+ **Show logs** -- User says:
28
+ - "show logs", "pipeline logs", "tail logs", "what's happening"
29
+ - "查看日志", "流水线日志", "看看日志"
30
+
31
+ **Do NOT use this skill when:**
32
+ - User wants to plan features (use `app-planner` instead)
33
+ - User wants to implement a single feature manually within current session (use `prizmkit-implement`)
34
+ - User wants to define specs/plan (use `prizmkit-specify` / `prizmkit-plan`)
35
+
36
+ ### Prerequisites
37
+
38
+ Before any action, validate:
39
+
40
+ 1. **dev-pipeline exists**: Confirm `dev-pipeline/launch-daemon.sh` is present and executable
41
+ 2. **For start**: `feature-list.json` must exist in project root (or user-specified path)
42
+ 3. **Dependencies**: `jq`, `python3`, `cbc` must be in PATH
43
+
44
+ Quick check:
45
+ ```bash
46
+ command -v jq && command -v python3 && command -v cbc && echo "All dependencies OK"
47
+ ```
48
+
49
+ If `feature-list.json` is missing, inform user:
50
+ > "No feature-list.json found. Run the `app-planner` skill first to generate one, or provide a path to your feature list."
51
+
52
+ ### Workflow
53
+
54
+ Detect user intent from their message, then follow the corresponding workflow:
55
+
56
+ ---
57
+
58
+ #### Intent A: Start Pipeline
59
+
60
+ 1. **Check prerequisites**:
61
+ ```bash
62
+ ls feature-list.json 2>/dev/null && echo "Found" || echo "Missing"
63
+ ```
64
+
65
+ 2. **Check not already running**:
66
+ ```bash
67
+ dev-pipeline/launch-daemon.sh status 2>/dev/null
68
+ ```
69
+ If running, inform user and ask: "Pipeline is already running. Want to restart it, check status, or view logs?"
70
+
71
+ 3. **Show feature summary** (so user knows what will be built):
72
+ ```bash
73
+ python3 -c "
74
+ import json
75
+ with open('feature-list.json') as f:
76
+ data = json.load(f)
77
+ features = data.get('features', [])
78
+ print(f'Total features: {len(features)}')
79
+ for f in features:
80
+ print(f\" {f['id']}: {f.get('title', 'untitled')}\")
81
+ "
82
+ ```
83
+ If pipeline state already exists, use the status command instead:
84
+ ```bash
85
+ python3 dev-pipeline/scripts/update-feature-status.py \
86
+ --feature-list feature-list.json \
87
+ --state-dir dev-pipeline/state \
88
+ --action status 2>/dev/null
89
+ ```
90
+
91
+ 4. **Ask user to confirm**: "Ready to launch the pipeline? It will process N features in the background."
92
+
93
+ 5. **Launch**:
94
+ ```bash
95
+ dev-pipeline/launch-daemon.sh start feature-list.json
96
+ ```
97
+ If user specified environment overrides (e.g. timeout, retries, verbose):
98
+ ```bash
99
+ dev-pipeline/launch-daemon.sh start feature-list.json --env "SESSION_TIMEOUT=7200 MAX_RETRIES=5"
100
+ ```
101
+
102
+ 6. **Verify launch**:
103
+ ```bash
104
+ dev-pipeline/launch-daemon.sh status
105
+ ```
106
+
107
+ 7. **Start log monitoring** -- Use the Bash tool with `run_in_background: true`:
108
+ ```bash
109
+ tail -f dev-pipeline/state/pipeline-daemon.log
110
+ ```
111
+ This runs in background so you can continue interacting with the user.
112
+
113
+ 8. **Report to user**:
114
+ - Pipeline PID
115
+ - Log file location
116
+ - "You can ask me 'pipeline status' or 'show logs' at any time"
117
+ - "Closing this session will NOT stop the pipeline"
118
+
119
+ ---
120
+
121
+ #### Intent B: Check Status
122
+
123
+ 1. **Check daemon status**:
124
+ ```bash
125
+ dev-pipeline/launch-daemon.sh status
126
+ ```
127
+
128
+ 2. **Show feature-level progress**:
129
+ ```bash
130
+ python3 dev-pipeline/scripts/update-feature-status.py \
131
+ --feature-list feature-list.json \
132
+ --state-dir dev-pipeline/state \
133
+ --action status
134
+ ```
135
+
136
+ 3. **Show recent log activity** (last 20 lines):
137
+ ```bash
138
+ tail -20 dev-pipeline/state/pipeline-daemon.log
139
+ ```
140
+
141
+ 4. **Summarize** to user: total features, completed, in-progress, failed, pending.
142
+
143
+ ---
144
+
145
+ #### Intent C: Stop Pipeline
146
+
147
+ 1. **Stop the daemon**:
148
+ ```bash
149
+ dev-pipeline/launch-daemon.sh stop
150
+ ```
151
+
152
+ 2. **Verify stopped**:
153
+ ```bash
154
+ dev-pipeline/launch-daemon.sh status 2>/dev/null || true
155
+ ```
156
+
157
+ 3. **Inform user**: "Pipeline stopped. State is preserved -- you can resume later with 'start pipeline' and it will pick up where it left off."
158
+
159
+ ---
160
+
161
+ #### Intent D: Show Logs
162
+
163
+ 1. **Check if running**:
164
+ ```bash
165
+ dev-pipeline/launch-daemon.sh status 2>/dev/null
166
+ ```
167
+
168
+ 2. **If running** -- Start live tail with Bash tool `run_in_background: true`:
169
+ ```bash
170
+ tail -f dev-pipeline/state/pipeline-daemon.log
171
+ ```
172
+
173
+ 3. **If not running** -- Show last 50 lines:
174
+ ```bash
175
+ tail -50 dev-pipeline/state/pipeline-daemon.log
176
+ ```
177
+
178
+ 4. **For per-feature session logs** (when user asks about a specific feature):
179
+ ```bash
180
+ # Find current/recent session
181
+ cat dev-pipeline/state/current-session.json 2>/dev/null
182
+ # Then tail that feature's session log
183
+ tail -100 dev-pipeline/state/features/<FEATURE_ID>/sessions/<SESSION_ID>/logs/session.log
184
+ ```
185
+
186
+ ---
187
+
188
+ #### Intent E: Custom Parameters
189
+
190
+ When user specifies custom settings, map to environment variables:
191
+
192
+ | User says | Environment variable |
193
+ |-----------|---------------------|
194
+ | "timeout 2 hours" / "超时2小时" | `SESSION_TIMEOUT=7200` |
195
+ | "max 5 retries" / "最多重试5次" | `MAX_RETRIES=5` |
196
+ | "verbose mode" / "详细模式" | `VERBOSE=1` |
197
+ | "heartbeat every 60s" | `HEARTBEAT_INTERVAL=60` |
198
+
199
+ Pass via `--env`:
200
+ ```bash
201
+ dev-pipeline/launch-daemon.sh start feature-list.json --env "SESSION_TIMEOUT=7200 MAX_RETRIES=5 VERBOSE=1"
202
+ ```
203
+
204
+ ### Error Handling
205
+
206
+ | Error | Action |
207
+ |-------|--------|
208
+ | `feature-list.json` not found | Tell user to run `app-planner` skill first |
209
+ | `jq` not installed | Suggest: `brew install jq` |
210
+ | `cbc` not in PATH | Check CodeBuddy CLI installation |
211
+ | Pipeline already running | Show status, ask if user wants to stop and restart |
212
+ | PID file stale (process dead) | `launch-daemon.sh` auto-cleans, retry start |
213
+ | Launch failed (process died immediately) | Show last 20 lines of log: `tail -20 dev-pipeline/state/pipeline-daemon.log` |
214
+ | All features blocked/failed | Show status, suggest resetting failed features: `dev-pipeline/run.sh run <F-XXX> --clean` |
215
+ | Permission denied on script | Run `chmod +x dev-pipeline/launch-daemon.sh dev-pipeline/run.sh` |
216
+
217
+ ### Integration Notes
218
+
219
+ - **After app-planner**: This is the natural next step. When user finishes planning and has `feature-list.json`, suggest launching the pipeline.
220
+ - **Session independence**: The pipeline runs completely detached. User can close cbc, open a new session later, and use this skill to check progress or stop the pipeline.
221
+ - **Single instance**: Only one pipeline can run at a time. The PID file prevents duplicates.
222
+ - **State preservation**: Stopping and restarting the pipeline resumes from where it left off -- completed features are not re-run.
223
+ - **HANDOFF**: After pipeline completes all features, suggest running `prizmkit-code-review` for overall review, or `prizmkit-summarize` to archive.
@@ -0,0 +1,151 @@
1
+ ---
2
+ name: "prizm-kit"
3
+ description: "Full-lifecycle dev toolkit. Covers spec-driven development, Prizm context docs, code quality, debugging, deployment, and knowledge management. Use 'prizmkit.*' for help. (project)"
4
+ ---
5
+
6
+ # PrizmKit — Full-Lifecycle Development Toolkit
7
+
8
+ PrizmKit is a comprehensive, independent AI development toolkit that covers the complete development lifecycle from project inception to delivery and maintenance. It can take over any project and keep documentation in sync with code.
9
+
10
+ ## Quick Start
11
+
12
+ **CodeBuddy:**
13
+ ```
14
+ prizmkit.init # Take over a project (scan, assess, generate docs)
15
+ prizmkit.specify # Create feature specification
16
+ prizmkit.plan # Generate implementation plan
17
+ prizmkit.tasks # Break down into executable tasks
18
+ prizmkit.analyze # Cross-document consistency check (recommended)
19
+ prizmkit.implement # Execute implementation
20
+ prizmkit.commit # Commit with auto doc update
21
+ ```
22
+
23
+ **Claude Code:**
24
+ ```
25
+ /prizmkit-init # Take over a project (scan, assess, generate docs)
26
+ /prizmkit-specify # Create feature specification
27
+ /prizmkit-plan # Generate implementation plan
28
+ /prizmkit-tasks # Break down into executable tasks
29
+ /prizmkit-analyze # Cross-document consistency check (recommended)
30
+ /prizmkit-implement # Execute implementation
31
+ /prizmkit-committer # Commit with auto doc update
32
+ ```
33
+
34
+ ## When to Use the Full Workflow
35
+
36
+ **Use full workflow (specify -> plan -> tasks -> implement):**
37
+ - New features or user-facing capabilities
38
+ - Multi-file coordinated changes
39
+ - Architectural decisions
40
+ - Data model or API changes
41
+
42
+ **Use fast path (implement -> commit directly):**
43
+ - Bug fixes with clear root cause
44
+ - Single-file config or typo fixes
45
+ - Simple refactors (rename, extract)
46
+ - Documentation-only changes
47
+ - Test additions for existing code
48
+
49
+ For fast-path changes, you can directly use the implement command with inline task description, then the commit command.
50
+ - CodeBuddy: `prizmkit.implement` → `prizmkit.commit`
51
+ - Claude Code: `/prizmkit-implement` → `/prizmkit-committer`
52
+
53
+ ### Bug Fix Documentation Policy
54
+
55
+ **Bug fixes MUST NOT create new documentation entries.** Bug fixes are refinements of incomplete existing features — they complete what was already planned, not introduce new functionality. Specifically:
56
+
57
+ - Do NOT run `prizmkit.summarize` for bug fix commits (no new REGISTRY.md entries)
58
+ - Do NOT create new spec/plan/tasks under `.prizmkit/specs/` for bug fixes
59
+ - Do NOT update `.prizm-docs/` module docs for pure bug fixes (no interface/dependency change)
60
+ - Bug fix commits use `fix(<scope>):` prefix in Conventional Commits, not `feat:`
61
+
62
+ All documentation records are for: features, projects, code logic, and module indexes. Bug fixes do not alter the system's functional scope — they bring existing features to their intended state.
63
+
64
+ ## Architecture
65
+
66
+ PrizmKit produces two complementary knowledge layers:
67
+
68
+ ```
69
+ .prizm-docs/ → Project "what is" (static: structure, interfaces, rules, traps, decisions)
70
+ .prizmkit/specs/ → Feature "what to do" (workflow: spec → plan → tasks → code)
71
+ ```
72
+
73
+ ## Skill Inventory (32 skills)
74
+
75
+ ### Foundation (3)
76
+ - **prizm-kit** — Full-lifecycle dev toolkit entry point
77
+ - **prizmkit-init** — Project takeover: scan → assess → generate docs → initialize
78
+ - **prizmkit-prizm-docs** — Prizm documentation framework: `prizmkit.doc.init`, `prizmkit.doc.update`, `prizmkit.doc.status`, `prizmkit.doc.rebuild`, `prizmkit.doc.validate`, `prizmkit.doc.migrate`
79
+
80
+ ### Spec-Driven Workflow (10)
81
+ - **prizmkit-specify** — Create structured feature specifications from natural language
82
+ - **prizmkit-clarify** — Interactive requirement clarification
83
+ - **prizmkit-plan** — Generate technical plan + data model + API contracts
84
+ - **prizmkit-tasks** — Break plan into executable task list
85
+ - **prizmkit-analyze** — Cross-document consistency analysis (spec ↔ plan ↔ tasks)
86
+ - **prizmkit-implement** — Execute tasks following TDD approach
87
+ - **prizmkit-code-review** — Review code against spec and plan
88
+ - **prizmkit-summarize** — Archive completed features to REGISTRY.md
89
+ - **prizmkit-committer** — Commit workflow with automatic Prizm doc update
90
+ - **prizmkit-retrospective** — Post-feature learning: extract lessons → update Prizm docs
91
+
92
+ ### Quality Assurance (5)
93
+ - **prizmkit-tech-debt-tracker** — [Tier 1] Technical debt identification and tracking via code pattern analysis
94
+ - **prizmkit-bug-reproducer** — [Tier 1] Generate minimal reproduction scripts and test cases
95
+ - **prizmkit-adr-manager** — [Tier 1] Architecture Decision Records management
96
+ - **prizmkit-security-audit** — [Tier 2] AI-assisted security review checklist via static analysis
97
+ - **prizmkit-dependency-health** — [Tier 2] Dependency review based on manifest files
98
+
99
+ ### Operations & Deployment (4)
100
+ - **prizmkit-ci-cd-generator** — [Tier 2] Generate CI/CD pipeline config templates
101
+ - **prizmkit-deployment-strategy** — [Tier 2] Deployment planning with rollback procedures
102
+ - **prizmkit-db-migration** — [Tier 2] Database migration script generation
103
+ - **prizmkit-monitoring-setup** — [Tier 2] Generate monitoring config templates
104
+
105
+ ### Debugging & Troubleshooting (3)
106
+ - **prizmkit-error-triage** — [Tier 2] Error categorization and root cause analysis
107
+ - **prizmkit-log-analyzer** — [Tier 2] Log pattern recognition via text analysis
108
+ - **prizmkit-perf-profiler** — [Tier 2] Static analysis for performance issues
109
+
110
+ ### Documentation (2)
111
+ - **prizmkit-onboarding-generator** — [Tier 2] Generate developer onboarding guides
112
+ - **prizmkit-api-doc-generator** — [Tier 2] Extract API documentation from source code
113
+
114
+ ### Pipeline & Companion (5)
115
+ - **prizmkit-bug-fix-workflow** — [Tier 1] End-to-end bug fix workflow: triage → reproduce → fix → verify → commit
116
+ - **app-planner** — Interactive app planning that produces feature-list.json for dev-pipeline
117
+ - **bug-planner** — Interactive bug planning that produces bug-fix-list.json for bugfix-pipeline
118
+ - **dev-pipeline-launcher** — Launch and manage the dev-pipeline from within a CLI session
119
+ - **bugfix-pipeline-launcher** — Launch and manage the bugfix pipeline from within a CLI session
120
+
121
+ ### Tier Definitions
122
+
123
+ - **Tier 1**: AI can perform well independently — these tasks align with AI's core strengths (documentation, code pattern analysis, test generation)
124
+ - **Tier 2**: Useful as guidance/checklist — AI provides static analysis and recommendations, but lacks access to real external tools (scanners, profilers, package registries, runtime environments)
125
+ - **Core skills** (no tier label): The 12 foundational, documentation, spec-driven workflow, and commit skills that form PrizmKit's primary value
126
+
127
+ ## Installation
128
+
129
+ **Option 1: npm CLI (recommended — works for both platforms)**
130
+ ```bash
131
+ npx prizmkit init
132
+ ```
133
+ Interactive installer auto-detects your platform and guides you through configuration.
134
+
135
+ **Option 2: Claude Code Plugin**
136
+ Install the `prizmkit` plugin via Claude Code's plugin system, then run `/prizmkit-init`.
137
+
138
+ **Option 3: Manual Install (CodeBuddy)**
139
+ ```bash
140
+ python3 ${SKILL_DIR}/scripts/install-prizmkit.py --target <project-skills-dir>
141
+ ```
142
+
143
+ ## Hook / Rules Configuration
144
+
145
+ **CodeBuddy:** Uses native `type: prompt` hooks for automatic doc updates before commits.
146
+ The hook is configured automatically by `prizmkit-init`. See `assets/hooks/prizm-commit-hook.json`.
147
+
148
+ **Claude Code:** Uses `.claude/rules/` glob-scoped markdown files for automatic enforcement.
149
+ Rules are created automatically by `prizmkit-init` (or `/prizmkit-init`). See:
150
+ - `assets/claude-md-template.md` for the project memory template
151
+ - The init skill creates `prizm-documentation.md` and `prizm-commit-workflow.md` rules
@@ -0,0 +1,38 @@
1
+ ## PrizmKit Documentation Framework
2
+
3
+ This project uses PrizmKit with the Prizm documentation system for AI-optimized progressive context loading.
4
+
5
+ ### Progressive Loading Protocol
6
+ - ON SESSION START: Always read `.prizm-docs/root.prizm` first (L0 — project map)
7
+ - ON TASK: Read L1 (`.prizm-docs/<module>.prizm`) for relevant modules referenced in MODULE_INDEX
8
+ - ON FILE EDIT: Read L2 (`.prizm-docs/<module>/<submodule>.prizm`) before modifying files. Pay attention to TRAPS and DECISIONS.
9
+ - NEVER load all .prizm docs at once. Load only what is needed for the current task.
10
+
11
+ ### Auto-Update Protocol
12
+ - BEFORE EVERY COMMIT: Update affected `.prizm-docs/` files
13
+ - The `.claude/rules/` files will enforce this automatically
14
+ - Use `/prizmkit-committer` command for the complete commit workflow
15
+
16
+ ### Doc Format Rules
17
+ - All `.prizm` files use KEY: value format, not prose
18
+ - Size limits: L0 = 4KB, L1 = 3KB, L2 = 5KB
19
+ - Arrow notation (->) indicates load pointers to other .prizm docs
20
+ - DECISIONS and CHANGELOG are append-only (never delete entries)
21
+
22
+ ### Creating New L2 Docs
23
+ - When you first modify files in a sub-module that has no L2 doc:
24
+ 1. Read the source files in that sub-module
25
+ 2. Generate a new L2 `.prizm` file following Prizm specification
26
+ 3. Add a pointer in the parent L1 doc's SUBDIRS section
27
+
28
+ ### Available Commands
29
+ Run `/prizm-kit` to see all available PrizmKit commands.
30
+
31
+ ### Fast Path for Simple Changes
32
+ Not every change needs the full spec -> plan -> tasks workflow. Use fast path for:
33
+ - Bug fixes with clear root cause, config tweaks, typo fixes, simple refactors
34
+ - Documentation-only changes, test additions for existing code
35
+ - Directly use `/prizmkit-implement` with inline task description, then `/prizmkit-committer`
36
+
37
+ Use the full workflow (/prizmkit-specify -> /prizmkit-plan -> /prizmkit-tasks -> /prizmkit-analyze -> /prizmkit-implement) for:
38
+ - New features, multi-file coordinated changes, architectural decisions, data model or API changes
@@ -0,0 +1,35 @@
1
+ ## PrizmKit Documentation Framework
2
+
3
+ This project uses PrizmKit with the Prizm documentation system for AI-optimized progressive context loading.
4
+
5
+ ### Progressive Loading Protocol
6
+ - ON SESSION START: Always read `.prizm-docs/root.prizm` first (L0 — project map)
7
+ - ON TASK: Read L1 (`.prizm-docs/<module>.prizm`) for relevant modules referenced in MODULE_INDEX
8
+ - ON FILE EDIT: Read L2 (`.prizm-docs/<module>/<submodule>.prizm`) before modifying files. Pay attention to TRAPS and DECISIONS.
9
+ - NEVER load all .prizm docs at once. Load only what is needed for the current task.
10
+
11
+ ### Auto-Update Protocol
12
+ - BEFORE EVERY COMMIT: Update affected `.prizm-docs/` files
13
+ - The UserPromptSubmit hook will remind you automatically
14
+ - Use `prizmkit-committer` skill for the complete commit workflow
15
+
16
+ ### Doc Format Rules
17
+ - All `.prizm` files use KEY: value format, not prose
18
+ - Size limits: L0 = 4KB, L1 = 3KB, L2 = 5KB
19
+ - Arrow notation (->) indicates load pointers to other .prizm docs
20
+ - DECISIONS and CHANGELOG are append-only (never delete entries)
21
+
22
+ ### Creating New L2 Docs
23
+ - When you first modify files in a sub-module that has no L2 doc:
24
+ 1. Read the source files in that sub-module
25
+ 2. Generate a new L2 `.prizm` file following Prizm specification
26
+ 3. Add a pointer in the parent L1 doc's SUBDIRS section
27
+
28
+ ### Fast Path for Simple Changes
29
+ Not every change needs the full spec -> plan -> tasks workflow. Use fast path for:
30
+ - Bug fixes with clear root cause, config tweaks, typo fixes, simple refactors
31
+ - Documentation-only changes, test additions for existing code
32
+ - Directly use `prizmkit.implement` with inline task description, then `prizmkit.commit`
33
+
34
+ Use the full workflow (specify -> plan -> tasks -> analyze -> implement) for:
35
+ - New features, multi-file coordinated changes, architectural decisions, data model or API changes
@@ -0,0 +1,15 @@
1
+ {
2
+ "hooks": {
3
+ "UserPromptSubmit": [
4
+ {
5
+ "hooks": [
6
+ {
7
+ "type": "prompt",
8
+ "prompt": "You are a commit-intent detector for PrizmKit. Analyze the user prompt and determine if the user intends to COMMIT, PUSH, FINISH, SHIP, MERGE, or create a PULL REQUEST.\n\nUser prompt: $ARGUMENTS\n\nIF commit intent detected, respond with:\n{\"ok\": true, \"reason\": \"PRIZMKIT_DOC_UPDATE_REQUIRED: Before committing, you MUST update .prizm-docs/ per Prizm auto-update protocol. Steps: 1) Run git diff --cached --name-status. 2) Map changed files to modules via root.prizm MODULE_INDEX. 3) Read and update affected .prizm files (only changed sections). 4) Append to changelog.prizm. 5) Stage .prizm files with git add .prizm-docs/. 6) Then proceed with commit using prizmkit-committer workflow. RULES: Never rewrite entire .prizm files. Never add prose. Only update affected sections.\"}\n\nIF no commit intent, respond with:\n{\"ok\": true}\n\nRespond with JSON only. No explanation.",
9
+ "timeout": 10
10
+ }
11
+ ]
12
+ }
13
+ ]
14
+ }
15
+ }
@@ -0,0 +1,68 @@
1
+ ---
2
+ name: "prizmkit-adr-manager"
3
+ tier: 1
4
+ description: "[Tier 1] Manage Architecture Decision Records. Create, list, and supersede ADRs with full context. AI excels at documentation tasks. (project)"
5
+ ---
6
+
7
+ # PrizmKit ADR Manager
8
+
9
+ Manage Architecture Decision Records (ADRs) to document and track architectural decisions with full context, alternatives, and consequences.
10
+
11
+ ## Commands
12
+
13
+ ### prizmkit.adr.new \<title\>
14
+
15
+ Create a new Architecture Decision Record.
16
+
17
+ **STEPS:**
18
+
19
+ 1. Determine next ADR number from `docs/adr/` directory (scan existing files, increment highest number)
20
+ 2. Generate ADR from template (`${SKILL_DIR}/assets/adr-template.md`):
21
+ - **Title**: Provided by user
22
+ - **Date**: Current date
23
+ - **Status**: Proposed
24
+ - **Context**: Ask user what issue is motivating this decision
25
+ - **Decision**: Ask user what change is being proposed
26
+ - **Consequences**: Identify positive and negative consequences
27
+ - **Alternatives considered**: Ask user about alternatives and why they were rejected
28
+ 3. Write to `docs/adr/NNNN-title.md` (zero-padded number, kebab-case title)
29
+ 4. Also record in `.prizm-docs/` DECISIONS section of relevant module doc
30
+
31
+ ### prizmkit.adr.list
32
+
33
+ Show all ADRs with their current status.
34
+
35
+ **STEPS:**
36
+
37
+ 1. Scan `docs/adr/` directory for ADR files
38
+ 2. Parse each file for number, title, and status
39
+ 3. Display table:
40
+ - Number | Title | Status | Date
41
+ - Status values: Proposed, Accepted, Deprecated, Superseded
42
+ 4. Highlight any ADRs in Proposed status that may need review
43
+
44
+ ### prizmkit.adr.supersede \<number\> \<new-title\>
45
+
46
+ Mark an existing ADR as superseded and create a replacement.
47
+
48
+ **STEPS:**
49
+
50
+ 1. Read the existing ADR with the given number from `docs/adr/`
51
+ 2. Update its status to "Superseded by [ADR-NNNN]" (the new ADR number)
52
+ 3. Create a new ADR using the `prizmkit.adr.new` flow:
53
+ - Pre-populate context with reference to the superseded ADR
54
+ - Include "Supersedes [ADR-NNNN]" in the new ADR
55
+ 4. Write both updated files
56
+
57
+ ## Template
58
+
59
+ The ADR template is located at `${SKILL_DIR}/assets/adr-template.md` and follows the standard ADR format with Context, Decision, Consequences, and Alternatives sections.
60
+
61
+ ## Path References
62
+
63
+ All internal asset paths MUST use `${SKILL_DIR}` placeholder for cross-IDE compatibility.
64
+
65
+ ## Output
66
+
67
+ - ADR files in `docs/adr/` directory
68
+ - Updated DECISIONS section in relevant `.prizm-docs/` module doc
@@ -0,0 +1,26 @@
1
+ # [NUMBER]. [TITLE]
2
+
3
+ **Date**: YYYY-MM-DD
4
+ **Status**: Proposed | Accepted | Deprecated | Superseded by [ADR-NNNN]
5
+
6
+ ## Context
7
+
8
+ [What is the issue that we're seeing that is motivating this decision or change?]
9
+
10
+ ## Decision
11
+
12
+ [What is the change that we're proposing and/or doing?]
13
+
14
+ ## Consequences
15
+
16
+ ### Positive
17
+ - [Consequence 1]
18
+
19
+ ### Negative
20
+ - [Consequence 1]
21
+
22
+ ## Alternatives Considered
23
+
24
+ ### [Alternative 1]
25
+ - **Description**: [What it is]
26
+ - **Reason rejected**: [Why not chosen]