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.
- package/bundled/VERSION.json +5 -0
- package/bundled/adapters/claude/agent-adapter.js +108 -0
- package/bundled/adapters/claude/command-adapter.js +104 -0
- package/bundled/adapters/claude/paths.js +35 -0
- package/bundled/adapters/claude/rules-adapter.js +77 -0
- package/bundled/adapters/claude/settings-adapter.js +73 -0
- package/bundled/adapters/claude/team-adapter.js +183 -0
- package/bundled/adapters/codebuddy/agent-adapter.js +43 -0
- package/bundled/adapters/codebuddy/paths.js +29 -0
- package/bundled/adapters/codebuddy/settings-adapter.js +47 -0
- package/bundled/adapters/codebuddy/skill-adapter.js +68 -0
- package/bundled/adapters/codebuddy/team-adapter.js +46 -0
- package/bundled/adapters/shared/frontmatter.js +77 -0
- package/bundled/agents/prizm-dev-team-coordinator.md +142 -0
- package/bundled/agents/prizm-dev-team-dev.md +99 -0
- package/bundled/agents/prizm-dev-team-pm.md +114 -0
- package/bundled/agents/prizm-dev-team-reviewer.md +119 -0
- package/bundled/dev-pipeline/README.md +482 -0
- package/bundled/dev-pipeline/assets/feature-list-example.json +147 -0
- package/bundled/dev-pipeline/assets/prizm-dev-team-integration.md +138 -0
- package/bundled/dev-pipeline/launch-bugfix-daemon.sh +425 -0
- package/bundled/dev-pipeline/launch-daemon.sh +549 -0
- package/bundled/dev-pipeline/reset-feature.sh +209 -0
- package/bundled/dev-pipeline/retry-bug.sh +344 -0
- package/bundled/dev-pipeline/retry-feature.sh +338 -0
- package/bundled/dev-pipeline/run-bugfix.sh +638 -0
- package/bundled/dev-pipeline/run.sh +845 -0
- package/bundled/dev-pipeline/scripts/check-session-status.py +158 -0
- package/bundled/dev-pipeline/scripts/detect-stuck.py +385 -0
- package/bundled/dev-pipeline/scripts/generate-bootstrap-prompt.py +598 -0
- package/bundled/dev-pipeline/scripts/generate-bugfix-prompt.py +402 -0
- package/bundled/dev-pipeline/scripts/init-bugfix-pipeline.py +294 -0
- package/bundled/dev-pipeline/scripts/init-dev-team.py +134 -0
- package/bundled/dev-pipeline/scripts/init-pipeline.py +335 -0
- package/bundled/dev-pipeline/scripts/update-bug-status.py +748 -0
- package/bundled/dev-pipeline/scripts/update-feature-status.py +1076 -0
- package/bundled/dev-pipeline/templates/bootstrap-prompt.md +262 -0
- package/bundled/dev-pipeline/templates/bug-fix-list-schema.json +159 -0
- package/bundled/dev-pipeline/templates/bugfix-bootstrap-prompt.md +291 -0
- package/bundled/dev-pipeline/templates/feature-list-schema.json +112 -0
- package/bundled/dev-pipeline/templates/session-status-schema.json +77 -0
- package/bundled/skills/_metadata.json +267 -0
- package/bundled/skills/app-planner/SKILL.md +580 -0
- package/bundled/skills/app-planner/assets/planning-guide.md +313 -0
- package/bundled/skills/app-planner/scripts/validate-and-generate.py +758 -0
- package/bundled/skills/bug-planner/SKILL.md +235 -0
- package/bundled/skills/bugfix-pipeline-launcher/SKILL.md +252 -0
- package/bundled/skills/dev-pipeline-launcher/SKILL.md +223 -0
- package/bundled/skills/prizm-kit/SKILL.md +151 -0
- package/bundled/skills/prizm-kit/assets/claude-md-template.md +38 -0
- package/bundled/skills/prizm-kit/assets/codebuddy-md-template.md +35 -0
- package/bundled/skills/prizm-kit/assets/hooks/prizm-commit-hook.json +15 -0
- package/bundled/skills/prizmkit-adr-manager/SKILL.md +68 -0
- package/bundled/skills/prizmkit-adr-manager/assets/adr-template.md +26 -0
- package/bundled/skills/prizmkit-analyze/SKILL.md +194 -0
- package/bundled/skills/prizmkit-api-doc-generator/SKILL.md +56 -0
- package/bundled/skills/prizmkit-bug-fix-workflow/SKILL.md +351 -0
- package/bundled/skills/prizmkit-bug-reproducer/SKILL.md +62 -0
- package/bundled/skills/prizmkit-ci-cd-generator/SKILL.md +54 -0
- package/bundled/skills/prizmkit-clarify/SKILL.md +52 -0
- package/bundled/skills/prizmkit-code-review/SKILL.md +70 -0
- package/bundled/skills/prizmkit-committer/SKILL.md +117 -0
- package/bundled/skills/prizmkit-db-migration/SKILL.md +65 -0
- package/bundled/skills/prizmkit-dependency-health/SKILL.md +123 -0
- package/bundled/skills/prizmkit-deployment-strategy/SKILL.md +58 -0
- package/bundled/skills/prizmkit-error-triage/SKILL.md +55 -0
- package/bundled/skills/prizmkit-implement/SKILL.md +47 -0
- package/bundled/skills/prizmkit-init/SKILL.md +156 -0
- package/bundled/skills/prizmkit-log-analyzer/SKILL.md +55 -0
- package/bundled/skills/prizmkit-monitoring-setup/SKILL.md +75 -0
- package/bundled/skills/prizmkit-onboarding-generator/SKILL.md +70 -0
- package/bundled/skills/prizmkit-perf-profiler/SKILL.md +55 -0
- package/bundled/skills/prizmkit-plan/SKILL.md +54 -0
- package/bundled/skills/prizmkit-plan/assets/plan-template.md +37 -0
- package/bundled/skills/prizmkit-prizm-docs/SKILL.md +140 -0
- package/bundled/skills/prizmkit-prizm-docs/assets/PRIZM-SPEC.md +943 -0
- package/bundled/skills/prizmkit-retrospective/SKILL.md +79 -0
- package/bundled/skills/prizmkit-security-audit/SKILL.md +130 -0
- package/bundled/skills/prizmkit-specify/SKILL.md +52 -0
- package/bundled/skills/prizmkit-specify/assets/spec-template.md +37 -0
- package/bundled/skills/prizmkit-summarize/SKILL.md +51 -0
- package/bundled/skills/prizmkit-summarize/assets/registry-template.md +18 -0
- package/bundled/skills/prizmkit-tasks/SKILL.md +50 -0
- package/bundled/skills/prizmkit-tasks/assets/tasks-template.md +21 -0
- package/bundled/skills/prizmkit-tech-debt-tracker/SKILL.md +139 -0
- package/bundled/team/prizm-dev-team.json +47 -0
- package/bundled/templates/claude-md-template.md +38 -0
- package/bundled/templates/codebuddy-md-template.md +35 -0
- package/package.json +2 -1
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "prizmkit-ci-cd-generator"
|
|
3
|
+
tier: 2
|
|
4
|
+
description: "[Tier 2] Generate CI/CD pipeline config templates for GitHub Actions/GitLab CI/Jenkins. Cannot validate or test pipelines. (project)"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# PrizmKit CI/CD Generator
|
|
8
|
+
|
|
9
|
+
Generate production-ready CI/CD pipeline configurations derived from your project's tech stack context.
|
|
10
|
+
|
|
11
|
+
## Commands
|
|
12
|
+
|
|
13
|
+
### prizmkit.ci-cd
|
|
14
|
+
|
|
15
|
+
Generate a CI/CD pipeline configuration for the project.
|
|
16
|
+
|
|
17
|
+
**STEPS:**
|
|
18
|
+
|
|
19
|
+
1. Read `.prizm-docs/root.prizm` for tech stack context (LANG, FRAMEWORK, BUILD, TEST)
|
|
20
|
+
2. Ask user: target platform
|
|
21
|
+
- GitHub Actions
|
|
22
|
+
- GitLab CI
|
|
23
|
+
- Jenkins
|
|
24
|
+
- Other (specify)
|
|
25
|
+
3. Ask user: environments to configure (dev, staging, production)
|
|
26
|
+
4. Generate pipeline config with stages:
|
|
27
|
+
- **Install dependencies**: Use project's package manager (npm, pip, cargo, etc.)
|
|
28
|
+
- **Lint/format check**: Run linter and formatter configured in project
|
|
29
|
+
- **Run tests**: Execute test suite with coverage reporting
|
|
30
|
+
- **Build artifact**: Compile/bundle project output
|
|
31
|
+
- **Deploy**: Per-environment deployment steps
|
|
32
|
+
5. Include in generated config:
|
|
33
|
+
- Dependency caching (language-appropriate cache keys)
|
|
34
|
+
- Artifact management (build outputs, test reports)
|
|
35
|
+
- Environment variable placeholders with descriptive comments
|
|
36
|
+
6. Write config to standard location:
|
|
37
|
+
- GitHub Actions: `.github/workflows/ci.yml` and `.github/workflows/deploy.yml`
|
|
38
|
+
- GitLab CI: `.gitlab-ci.yml`
|
|
39
|
+
- Jenkins: `Jenkinsfile`
|
|
40
|
+
7. Add environment-specific secrets as placeholders with `# TODO: Configure in CI/CD settings` comments
|
|
41
|
+
8. Generate a README section documenting the CI/CD setup:
|
|
42
|
+
- Pipeline overview
|
|
43
|
+
- Required secrets and environment variables
|
|
44
|
+
- How to trigger deployments
|
|
45
|
+
- How to add new stages
|
|
46
|
+
|
|
47
|
+
## Path References
|
|
48
|
+
|
|
49
|
+
All internal asset paths MUST use `${SKILL_DIR}` placeholder for cross-IDE compatibility.
|
|
50
|
+
|
|
51
|
+
## Output
|
|
52
|
+
|
|
53
|
+
- Pipeline configuration file(s) in the appropriate standard location
|
|
54
|
+
- README section or standalone CI/CD documentation
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "prizmkit-clarify"
|
|
3
|
+
description: "Interactive requirement clarification. Resolves ambiguities in feature specs by asking sequential questions. Invoke after 'specify' or when spec has NEEDS CLARIFICATION markers. (project)"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# PrizmKit Clarify
|
|
7
|
+
|
|
8
|
+
Interactive requirement clarification that resolves ambiguities in feature specifications. Asks focused questions one at a time, updating the spec atomically after each answer.
|
|
9
|
+
|
|
10
|
+
## Commands
|
|
11
|
+
|
|
12
|
+
### prizmkit.clarify
|
|
13
|
+
|
|
14
|
+
Resolve ambiguities and underspecified areas in a feature specification.
|
|
15
|
+
|
|
16
|
+
**PRECONDITION:** `spec.md` exists in current feature directory (`.prizmkit/specs/###-feature-name/`)
|
|
17
|
+
|
|
18
|
+
**STEPS:**
|
|
19
|
+
|
|
20
|
+
1. Read `spec.md` from `.prizmkit/specs/###-feature-name/`
|
|
21
|
+
2. Scan for `[NEEDS CLARIFICATION]` markers and underspecified areas
|
|
22
|
+
3. Categorize ambiguities by dimension:
|
|
23
|
+
- Functional scope
|
|
24
|
+
- Data model
|
|
25
|
+
- UX flow
|
|
26
|
+
- Non-functional requirements
|
|
27
|
+
- Error handling
|
|
28
|
+
- Edge cases
|
|
29
|
+
- Integration points
|
|
30
|
+
- Security
|
|
31
|
+
- Performance
|
|
32
|
+
- Accessibility
|
|
33
|
+
4. Ask questions ONE AT A TIME (not all at once), max 5 questions
|
|
34
|
+
5. For each question: provide a recommended answer with rationale
|
|
35
|
+
6. After each answer: immediately update `spec.md` atomically (not batch)
|
|
36
|
+
7. Support early termination: user says "done" or "stop"
|
|
37
|
+
8. Remove resolved `[NEEDS CLARIFICATION]` markers
|
|
38
|
+
9. After all questions resolved or user terminates: output summary of changes made
|
|
39
|
+
|
|
40
|
+
**KEY RULES:**
|
|
41
|
+
- NEVER ask all questions at once — sequential, one at a time
|
|
42
|
+
- ALWAYS provide a recommended answer with rationale for each question
|
|
43
|
+
- Updates to `spec.md` MUST be atomic (after each answer, not batched)
|
|
44
|
+
- Max 5 questions per session
|
|
45
|
+
- Respect early termination — "done" or "stop" ends the session immediately
|
|
46
|
+
- Do NOT introduce implementation details — keep spec at WHAT/WHY level
|
|
47
|
+
|
|
48
|
+
**HANDOFF:** `prizmkit.plan`
|
|
49
|
+
|
|
50
|
+
## Output
|
|
51
|
+
|
|
52
|
+
Updates are made directly to `.prizmkit/specs/###-feature-name/spec.md`. No new files are created.
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "prizmkit-code-review"
|
|
3
|
+
description: "Code review against spec, plan, and best practices. Read-only analysis with severity ratings. Invoke after implementation or when user requests review. (project)"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# PrizmKit Code Review
|
|
7
|
+
|
|
8
|
+
Perform a comprehensive code review against the feature spec, implementation plan, and project best practices. Produces a structured review report with severity ratings. This skill is strictly read-only and does not modify any files.
|
|
9
|
+
|
|
10
|
+
## Commands
|
|
11
|
+
|
|
12
|
+
### prizmkit.code-review
|
|
13
|
+
|
|
14
|
+
Review implemented code against spec and plan.
|
|
15
|
+
|
|
16
|
+
**PRECONDITION:** `spec.md`, `plan.md`, `tasks.md` exist in `.prizmkit/specs/###-feature-name/` with completed tasks
|
|
17
|
+
|
|
18
|
+
**STEPS:**
|
|
19
|
+
|
|
20
|
+
1. Read `spec.md`, `plan.md`, `tasks.md` as review baseline
|
|
21
|
+
2. Read `.prizm-docs/root.prizm` RULES for project conventions
|
|
22
|
+
3. Scan all code files referenced in completed tasks
|
|
23
|
+
4. Review across 6 dimensions:
|
|
24
|
+
- **Spec compliance**: Does code implement all acceptance criteria?
|
|
25
|
+
- **Plan adherence**: Does implementation follow architectural decisions?
|
|
26
|
+
- **Code quality**: Naming, structure, complexity, DRY
|
|
27
|
+
- **Security**: Common vulnerabilities (injection, auth, data exposure)
|
|
28
|
+
- **Consistency**: Follows project patterns from `.prizm-docs/` PATTERNS
|
|
29
|
+
- **Test coverage**: Are critical paths tested?
|
|
30
|
+
5. Generate findings with severity: `CRITICAL` > `HIGH` > `MEDIUM` > `LOW`
|
|
31
|
+
6. Max 30 findings
|
|
32
|
+
7. Verdict: `PASS` | `PASS WITH WARNINGS` | `NEEDS FIXES`
|
|
33
|
+
8. OUTPUT: Structured review report (to conversation only, NOT written to file)
|
|
34
|
+
|
|
35
|
+
**KEY RULES:**
|
|
36
|
+
- This is STRICTLY READ-ONLY — does NOT modify any files
|
|
37
|
+
- Output goes to conversation ONLY, not to any file
|
|
38
|
+
- Max 30 findings to keep review actionable
|
|
39
|
+
- Every CRITICAL finding MUST include a specific fix suggestion
|
|
40
|
+
- Spec compliance failures are always rated HIGH or CRITICAL
|
|
41
|
+
- Security findings are always rated HIGH or CRITICAL
|
|
42
|
+
|
|
43
|
+
**VERDICT CRITERIA:**
|
|
44
|
+
- `PASS`: No CRITICAL or HIGH findings
|
|
45
|
+
- `PASS WITH WARNINGS`: No CRITICAL findings, some HIGH findings
|
|
46
|
+
- `NEEDS FIXES`: Any CRITICAL findings present
|
|
47
|
+
|
|
48
|
+
**HANDOFF:** `prizmkit.summarize` (if PASS) or `prizmkit.implement` (if NEEDS FIXES)
|
|
49
|
+
|
|
50
|
+
## Output
|
|
51
|
+
|
|
52
|
+
Review report is output to conversation only. No files are created or modified.
|
|
53
|
+
|
|
54
|
+
**Report Format:**
|
|
55
|
+
```
|
|
56
|
+
## Code Review: [Feature Name]
|
|
57
|
+
|
|
58
|
+
### Summary
|
|
59
|
+
- Files reviewed: N
|
|
60
|
+
- Findings: N (Critical: N, High: N, Medium: N, Low: N)
|
|
61
|
+
- Verdict: [PASS | PASS WITH WARNINGS | NEEDS FIXES]
|
|
62
|
+
|
|
63
|
+
### Findings
|
|
64
|
+
|
|
65
|
+
#### [SEVERITY] Finding Title
|
|
66
|
+
- File: path/to/file:line
|
|
67
|
+
- Dimension: [spec-compliance | plan-adherence | code-quality | security | consistency | test-coverage]
|
|
68
|
+
- Description: [What was found]
|
|
69
|
+
- Suggestion: [How to fix]
|
|
70
|
+
```
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "prizmkit-committer"
|
|
3
|
+
description: "Commit workflow with automatic Prizm doc updates, changelog management, and learning capture. Invoke when user wants to commit, finish task, or ship changes. (project)"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# PrizmKit Committer
|
|
7
|
+
|
|
8
|
+
Automated commit workflow that keeps Prizm documentation in sync, manages changelog entries, and captures learnings from each commit.
|
|
9
|
+
|
|
10
|
+
### When to Use
|
|
11
|
+
- User says "commit", "提交", "finish", "done with this task", "ship it"
|
|
12
|
+
- After implementing a feature or fixing a bug
|
|
13
|
+
- CodeBuddy: the UserPromptSubmit hook will remind to use this skill
|
|
14
|
+
- Claude Code: the `.claude/rules/prizm-commit-workflow.md` rule will enforce this
|
|
15
|
+
|
|
16
|
+
### Workflow
|
|
17
|
+
|
|
18
|
+
Follow these steps STRICTLY in order:
|
|
19
|
+
|
|
20
|
+
#### Step 1: Status Check
|
|
21
|
+
```bash
|
|
22
|
+
git status
|
|
23
|
+
```
|
|
24
|
+
- If "nothing to commit, working tree clean": inform user and stop
|
|
25
|
+
- If there are changes: proceed
|
|
26
|
+
|
|
27
|
+
#### Step 2: Prizm Documentation Update (CRITICAL — must complete before commit)
|
|
28
|
+
|
|
29
|
+
2a. Get changed files:
|
|
30
|
+
```bash
|
|
31
|
+
git diff --cached --name-status
|
|
32
|
+
```
|
|
33
|
+
If nothing staged, also check:
|
|
34
|
+
```bash
|
|
35
|
+
git diff --name-status
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
2b. Read .prizm-docs/root.prizm to get MODULE_INDEX
|
|
39
|
+
|
|
40
|
+
2c. Map each changed file to its module using MODULE_INDEX paths
|
|
41
|
+
|
|
42
|
+
2d. For each affected module:
|
|
43
|
+
- IF L2 doc exists (.prizm-docs/<module>/<submodule>.prizm):
|
|
44
|
+
- Update KEY_FILES (add new files, remove deleted, note modified)
|
|
45
|
+
- Update INTERFACES (if public signatures changed)
|
|
46
|
+
- Update DEPENDENCIES (if imports changed)
|
|
47
|
+
- Append to module CHANGELOG section
|
|
48
|
+
- Update UPDATED timestamp
|
|
49
|
+
- IF L1 doc exists (.prizm-docs/<module>.prizm):
|
|
50
|
+
- Update FILES count
|
|
51
|
+
- Update KEY_FILES (if major files added/removed)
|
|
52
|
+
- Update UPDATED timestamp
|
|
53
|
+
- Update root.prizm:
|
|
54
|
+
- Update MODULE_INDEX file counts (only if counts changed)
|
|
55
|
+
- UPDATED timestamp (only if structural changes)
|
|
56
|
+
|
|
57
|
+
2e. Append to .prizm-docs/changelog.prizm:
|
|
58
|
+
Format: `- YYYY-MM-DD | <module-path> | <verb>: <one-line description>`
|
|
59
|
+
Verbs: add, update, fix, remove, refactor, rename, deprecate
|
|
60
|
+
|
|
61
|
+
2f. Stage prizm docs:
|
|
62
|
+
```bash
|
|
63
|
+
git add .prizm-docs/
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
SKIP CONDITIONS for doc update:
|
|
67
|
+
- Only internal implementation changed (no interface/dependency change)
|
|
68
|
+
- Only comments, whitespace, or formatting changed
|
|
69
|
+
- Only test files changed
|
|
70
|
+
- Only .prizm files changed (avoid circular updates)
|
|
71
|
+
- Bug fixes to existing features (bugs are incomplete features being refined, not new functionality — no new doc entries needed)
|
|
72
|
+
|
|
73
|
+
#### Step 3: Diff Analysis
|
|
74
|
+
```bash
|
|
75
|
+
git diff HEAD
|
|
76
|
+
```
|
|
77
|
+
Analyze:
|
|
78
|
+
- Type: feat, fix, refactor, docs, test, chore, perf, style, ci, build
|
|
79
|
+
- Scope: affected module name
|
|
80
|
+
- Description: imperative mood summary
|
|
81
|
+
|
|
82
|
+
#### Step 4: Update CHANGELOG.md
|
|
83
|
+
If CHANGELOG.md exists, append entry following Keep a Changelog format.
|
|
84
|
+
If manage_changelog.py exists in skill scripts:
|
|
85
|
+
```bash
|
|
86
|
+
python3 ${SKILL_DIR}/scripts/manage_changelog.py add --type <type> --message "<description>"
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
#### Step 5: Git Commit
|
|
90
|
+
```bash
|
|
91
|
+
git add .
|
|
92
|
+
git commit -m "<type>(<scope>): <description>"
|
|
93
|
+
```
|
|
94
|
+
Follow Conventional Commits format.
|
|
95
|
+
|
|
96
|
+
#### Step 6: Verification
|
|
97
|
+
```bash
|
|
98
|
+
git log -1 --stat
|
|
99
|
+
```
|
|
100
|
+
Confirm the commit was recorded.
|
|
101
|
+
|
|
102
|
+
Then verify working tree is clean:
|
|
103
|
+
```bash
|
|
104
|
+
git status
|
|
105
|
+
```
|
|
106
|
+
- If "nothing to commit, working tree clean": commit verified successfully, proceed
|
|
107
|
+
- If there are uncommitted changes remaining: **STOP** and report error — all changes must be captured in the commit. Run `git add . && git commit --amend --no-edit` to include missed files, then re-verify
|
|
108
|
+
|
|
109
|
+
#### Step 7: Optional Push
|
|
110
|
+
Ask user: "Push to remote?"
|
|
111
|
+
- Yes: `git push`
|
|
112
|
+
- No: Stop
|
|
113
|
+
|
|
114
|
+
### Error Handling
|
|
115
|
+
- If git diff is empty but untracked files exist: run `git add -N .` first
|
|
116
|
+
- If CHANGELOG.md script fails: update manually or ask user
|
|
117
|
+
- If .prizm-docs/ doesn't exist: skip Step 2 entirely (project not initialized)
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "prizmkit-db-migration"
|
|
3
|
+
tier: 2
|
|
4
|
+
description: "[Tier 2] Database migration script generation with rollback plans. Cannot validate against actual database. (project)"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# PrizmKit Database Migration
|
|
8
|
+
|
|
9
|
+
Plan safe database schema changes with forward and backward migration scripts, risk assessment, and verification queries.
|
|
10
|
+
|
|
11
|
+
## Commands
|
|
12
|
+
|
|
13
|
+
### prizmkit.db-migrate
|
|
14
|
+
|
|
15
|
+
Generate a database migration plan with scripts and rollback procedures.
|
|
16
|
+
|
|
17
|
+
**STEPS:**
|
|
18
|
+
|
|
19
|
+
1. Read current data model from `.prizmkit/specs/` or `.prizm-docs/` (entity definitions, relationships, constraints)
|
|
20
|
+
2. Ask user: describe the schema change needed
|
|
21
|
+
- What tables/collections are affected
|
|
22
|
+
- What is the desired end state
|
|
23
|
+
- Any data transformation requirements
|
|
24
|
+
3. Analyze change type:
|
|
25
|
+
- **Additive** (safe): New tables, new nullable columns, new indexes
|
|
26
|
+
- **Destructive** (risky): Drop tables, drop columns, change types with data loss
|
|
27
|
+
- **Transformative** (complex): Rename columns, split/merge tables, data backfill
|
|
28
|
+
4. Generate migration plan:
|
|
29
|
+
- **Pre-migration**:
|
|
30
|
+
- Backup command for affected tables
|
|
31
|
+
- List of affected tables and estimated row counts
|
|
32
|
+
- Estimated downtime (if any)
|
|
33
|
+
- **Forward migration**: SQL or ORM migration script
|
|
34
|
+
- Schema DDL statements
|
|
35
|
+
- Data migration DML statements (if applicable)
|
|
36
|
+
- Index creation (CONCURRENTLY where supported)
|
|
37
|
+
- **Backward migration (rollback)**: Reverse SQL or ORM script
|
|
38
|
+
- Reverse DDL statements
|
|
39
|
+
- Data restoration approach
|
|
40
|
+
- MUST be tested before deploying forward migration
|
|
41
|
+
- **Data verification**: Queries to validate migration success
|
|
42
|
+
- Row count comparisons
|
|
43
|
+
- Data integrity checks
|
|
44
|
+
- Constraint validation
|
|
45
|
+
5. Risk assessment:
|
|
46
|
+
- **Data loss potential**: NONE / LOW / MEDIUM / HIGH
|
|
47
|
+
- **Downtime estimate**: Zero / Seconds / Minutes / Hours
|
|
48
|
+
- **Recommended deployment strategy**: Online migration vs offline migration
|
|
49
|
+
- **Lock contention risk**: Which tables will be locked and for how long
|
|
50
|
+
6. Write migration files to project's migration directory convention (detect from existing migrations or ask user)
|
|
51
|
+
7. Generate `migration-plan.md` with complete procedure:
|
|
52
|
+
- Step-by-step execution guide
|
|
53
|
+
- Monitoring queries to run during migration
|
|
54
|
+
- Success criteria
|
|
55
|
+
- Abort conditions
|
|
56
|
+
|
|
57
|
+
## Path References
|
|
58
|
+
|
|
59
|
+
All internal asset paths MUST use `${SKILL_DIR}` placeholder for cross-IDE compatibility.
|
|
60
|
+
|
|
61
|
+
## Output
|
|
62
|
+
|
|
63
|
+
- Migration script file(s) in the project's migration directory
|
|
64
|
+
- Rollback script file(s) alongside migration scripts
|
|
65
|
+
- `migration-plan.md`: Complete migration procedure with risk assessment
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "prizmkit-dependency-health"
|
|
3
|
+
tier: 2
|
|
4
|
+
description: "[Tier 2] Dependency review based on manifest files. Analyzes version patterns; cannot query package registries for real-time vulnerability data. (project)"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# PrizmKit Dependency Health
|
|
8
|
+
|
|
9
|
+
Audit project dependencies across all supported ecosystems. Identifies outdated packages, known vulnerabilities, license conflicts, and abandoned projects. Generates a health report with prioritized upgrade recommendations.
|
|
10
|
+
|
|
11
|
+
### When to Use
|
|
12
|
+
- User says "check dependencies", "dependency audit", "are my packages up to date"
|
|
13
|
+
- Before a major release or deployment
|
|
14
|
+
- Periodically as part of maintenance workflow
|
|
15
|
+
- After security advisories are published
|
|
16
|
+
|
|
17
|
+
### prizmkit.dependency-health
|
|
18
|
+
|
|
19
|
+
### Steps
|
|
20
|
+
|
|
21
|
+
#### Step 1: Detect Dependency Files
|
|
22
|
+
Scan project root and subdirectories for:
|
|
23
|
+
- **Node.js**: package.json + package-lock.json / yarn.lock / pnpm-lock.yaml
|
|
24
|
+
- **Python**: requirements.txt / Pipfile / pyproject.toml / setup.py
|
|
25
|
+
- **Go**: go.mod / go.sum
|
|
26
|
+
- **Rust**: Cargo.toml / Cargo.lock
|
|
27
|
+
- **Java**: pom.xml / build.gradle / build.gradle.kts
|
|
28
|
+
- **Ruby**: Gemfile / Gemfile.lock
|
|
29
|
+
- **PHP**: composer.json / composer.lock
|
|
30
|
+
- **.NET**: *.csproj / packages.config
|
|
31
|
+
|
|
32
|
+
#### Step 2: Analyze Each Dependency
|
|
33
|
+
For each dependency found:
|
|
34
|
+
- Current version pinned in manifest
|
|
35
|
+
- Latest available version (if determinable from lock files or version patterns)
|
|
36
|
+
- Major/minor/patch version delta
|
|
37
|
+
- Known security advisories (if detectable from version ranges)
|
|
38
|
+
- License type and compatibility
|
|
39
|
+
|
|
40
|
+
#### Step 3: Classify Health Status
|
|
41
|
+
- **HEALTHY**: Up to date or within 1 minor version, no known issues
|
|
42
|
+
- **STALE**: 1+ major version behind latest
|
|
43
|
+
- **VULNERABLE**: Known security advisory for current version
|
|
44
|
+
- **ABANDONED**: No updates in 2+ years (based on available metadata)
|
|
45
|
+
- **INCOMPATIBLE**: License conflict with project license
|
|
46
|
+
|
|
47
|
+
#### Step 4: Generate Recommendations
|
|
48
|
+
Prioritized by risk:
|
|
49
|
+
|
|
50
|
+
**Safe Updates** (low risk):
|
|
51
|
+
- Patch version bumps (bug fixes only)
|
|
52
|
+
- Minor version bumps within same major (backward compatible)
|
|
53
|
+
|
|
54
|
+
**Breaking Updates** (medium risk):
|
|
55
|
+
- Major version bumps — list known breaking changes where identifiable
|
|
56
|
+
- Suggest migration steps if available
|
|
57
|
+
|
|
58
|
+
**Replacements** (high effort):
|
|
59
|
+
- For abandoned packages — suggest actively maintained alternatives
|
|
60
|
+
- For packages with unresolved vulnerabilities — suggest secure alternatives
|
|
61
|
+
|
|
62
|
+
#### Step 5: Generate Report
|
|
63
|
+
Output health report to conversation (READ-ONLY):
|
|
64
|
+
|
|
65
|
+
```markdown
|
|
66
|
+
# Dependency Health Report
|
|
67
|
+
Date: YYYY-MM-DD
|
|
68
|
+
Project: <project-name>
|
|
69
|
+
|
|
70
|
+
## Summary
|
|
71
|
+
- Total dependencies: N
|
|
72
|
+
- Healthy: N | Stale: N | Vulnerable: N | Abandoned: N
|
|
73
|
+
|
|
74
|
+
## Ecosystem: <Node.js / Python / etc.>
|
|
75
|
+
|
|
76
|
+
### Vulnerable (Action Required)
|
|
77
|
+
| Package | Current | Latest | Advisory | Severity |
|
|
78
|
+
|---------|---------|--------|----------|----------|
|
|
79
|
+
| example | 1.2.3 | 1.2.5 | CVE-XXX | HIGH |
|
|
80
|
+
|
|
81
|
+
### Stale (Upgrade Recommended)
|
|
82
|
+
| Package | Current | Latest | Versions Behind |
|
|
83
|
+
|---------|---------|--------|-----------------|
|
|
84
|
+
| example | 2.0.0 | 4.1.0 | 2 major |
|
|
85
|
+
|
|
86
|
+
### Abandoned (Consider Replacing)
|
|
87
|
+
| Package | Last Update | Suggested Alternative |
|
|
88
|
+
|---------|-------------|----------------------|
|
|
89
|
+
| example | 2021-01-01 | better-example |
|
|
90
|
+
|
|
91
|
+
### Healthy
|
|
92
|
+
N packages up to date.
|
|
93
|
+
|
|
94
|
+
## Recommended Actions
|
|
95
|
+
1. Run: <package-manager-specific update commands>
|
|
96
|
+
2. Review breaking changes for: <packages>
|
|
97
|
+
3. Evaluate replacements for: <packages>
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
#### Step 6: Suggest Update Commands
|
|
101
|
+
Provide copy-paste commands for the project's package manager:
|
|
102
|
+
|
|
103
|
+
**Node.js**:
|
|
104
|
+
```bash
|
|
105
|
+
npm update # safe updates
|
|
106
|
+
npm install <pkg>@latest # major updates (one at a time)
|
|
107
|
+
npx npm-check-updates -u # update all to latest
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
**Python**:
|
|
111
|
+
```bash
|
|
112
|
+
pip install --upgrade <pkg> # upgrade specific
|
|
113
|
+
pip install -r requirements.txt --upgrade # upgrade all
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
**Go**:
|
|
117
|
+
```bash
|
|
118
|
+
go get -u ./... # update all
|
|
119
|
+
go get <pkg>@latest # update specific
|
|
120
|
+
go mod tidy # clean up
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
Adapt commands to the detected package manager.
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "prizmkit-deployment-strategy"
|
|
3
|
+
tier: 2
|
|
4
|
+
description: "[Tier 2] Deployment planning with rollback procedures for blue-green/canary/rolling strategies. Planning only, cannot execute. (project)"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# PrizmKit Deployment Strategy
|
|
8
|
+
|
|
9
|
+
Plan comprehensive deployment strategies with rollback procedures tailored to your project's infrastructure.
|
|
10
|
+
|
|
11
|
+
## Commands
|
|
12
|
+
|
|
13
|
+
### prizmkit.deploy-plan
|
|
14
|
+
|
|
15
|
+
Generate a deployment plan with rollback procedures.
|
|
16
|
+
|
|
17
|
+
**STEPS:**
|
|
18
|
+
|
|
19
|
+
1. Read project context from `.prizm-docs/` (architecture, tech stack, infrastructure references)
|
|
20
|
+
2. Ask user: deployment target
|
|
21
|
+
- Cloud provider (AWS, GCP, Azure)
|
|
22
|
+
- Container orchestration (Kubernetes, Docker Swarm, ECS)
|
|
23
|
+
- Bare metal / VM-based
|
|
24
|
+
- Serverless (Lambda, Cloud Functions, Vercel)
|
|
25
|
+
3. Ask user: strategy preference
|
|
26
|
+
- **Blue-green**: Zero-downtime with full environment swap
|
|
27
|
+
- **Canary**: Gradual traffic shift to new version
|
|
28
|
+
- **Rolling**: Incremental instance replacement
|
|
29
|
+
- **Recreate**: Stop old, start new (accepts brief downtime)
|
|
30
|
+
4. Generate `deployment-plan.md` containing:
|
|
31
|
+
- **Pre-deployment checklist**:
|
|
32
|
+
- All tests passing on target branch
|
|
33
|
+
- Database migrations prepared and tested
|
|
34
|
+
- Backups completed (database, config, artifacts)
|
|
35
|
+
- Monitoring and alerting confirmed operational
|
|
36
|
+
- Communication sent to stakeholders
|
|
37
|
+
- **Deployment steps**: Specific commands for the chosen strategy and target
|
|
38
|
+
- **Health check configuration**: Endpoints, thresholds, intervals
|
|
39
|
+
- **Rollback procedure**: Step-by-step commands to revert to previous version
|
|
40
|
+
- **Monitoring points**: What to watch during and after deployment
|
|
41
|
+
- **Post-deployment verification**:
|
|
42
|
+
- Smoke test endpoints
|
|
43
|
+
- Key metric baselines to compare
|
|
44
|
+
- User-facing feature verification
|
|
45
|
+
5. Generate rollback script (`rollback.sh`) if applicable:
|
|
46
|
+
- Automated rollback with safety checks
|
|
47
|
+
- Confirmation prompts before destructive operations
|
|
48
|
+
- Logging of rollback actions
|
|
49
|
+
6. Write to `.prizmkit/deployment-plan.md`
|
|
50
|
+
|
|
51
|
+
## Path References
|
|
52
|
+
|
|
53
|
+
All internal asset paths MUST use `${SKILL_DIR}` placeholder for cross-IDE compatibility.
|
|
54
|
+
|
|
55
|
+
## Output
|
|
56
|
+
|
|
57
|
+
- `.prizmkit/deployment-plan.md`: Complete deployment procedure
|
|
58
|
+
- `rollback.sh` (if applicable): Executable rollback script
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "prizmkit-error-triage"
|
|
3
|
+
tier: 2
|
|
4
|
+
description: "[Tier 2] Error categorization and root cause analysis via pattern matching. Checks Prizm TRAPS for known issues; no runtime debugger. (project)"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# PrizmKit Error Triage
|
|
8
|
+
|
|
9
|
+
Systematically categorize errors, perform root cause analysis, and check Prizm docs TRAPS for known patterns.
|
|
10
|
+
|
|
11
|
+
## Commands
|
|
12
|
+
|
|
13
|
+
### prizmkit.error-triage \<error-description-or-log\>
|
|
14
|
+
|
|
15
|
+
Triage an error by classifying it, identifying root cause, and suggesting fixes.
|
|
16
|
+
|
|
17
|
+
**STEPS:**
|
|
18
|
+
|
|
19
|
+
1. Parse error input (stack trace, error message, log snippet, or user description)
|
|
20
|
+
2. Classify error category:
|
|
21
|
+
- **Runtime**: null reference, type error, out of bounds, division by zero
|
|
22
|
+
- **Network**: timeout, DNS resolution, connection refused, SSL/TLS handshake
|
|
23
|
+
- **Auth**: 401/403 responses, token expired, permission denied, CORS
|
|
24
|
+
- **Data**: validation failure, serialization error, encoding mismatch, corruption
|
|
25
|
+
- **Resource**: OOM, disk full, connection pool exhausted, file handle leak
|
|
26
|
+
- **Logic**: incorrect output, race condition, deadlock, infinite loop
|
|
27
|
+
- **Config**: missing env var, wrong endpoint, version mismatch, malformed config
|
|
28
|
+
- **External**: third-party API failure, dependency bug, upstream service degradation
|
|
29
|
+
3. Check `.prizm-docs/` for known issues:
|
|
30
|
+
- Read TRAPS sections of affected modules for documented pitfalls
|
|
31
|
+
- Check DECISIONS sections for prior choices that may relate to the error
|
|
32
|
+
4. If known trap matches:
|
|
33
|
+
- Suggest documented solution from TRAPS
|
|
34
|
+
- Reference the specific `.prizm-docs/` file and entry
|
|
35
|
+
5. If no match: analyze root cause from first principles:
|
|
36
|
+
a. Identify the error origin (file, line, function) from stack trace or context
|
|
37
|
+
b. Trace the call chain to find the triggering condition
|
|
38
|
+
c. Identify the most likely root cause
|
|
39
|
+
d. Suggest fix approach with specific code pointers
|
|
40
|
+
6. Generate structured triage report:
|
|
41
|
+
- **Category and subcategory**: e.g., Runtime > NullReference
|
|
42
|
+
- **Root cause**: confirmed or suspected, with reasoning
|
|
43
|
+
- **Affected files/modules**: list of files involved in the error path
|
|
44
|
+
- **Suggested fix**: concrete steps or code changes to resolve
|
|
45
|
+
- **Prevention**: what check, test, or guard would have caught this earlier
|
|
46
|
+
7. Suggest updating `.prizm-docs/` TRAPS section with newly discovered pitfalls to prevent recurrence
|
|
47
|
+
|
|
48
|
+
## Path References
|
|
49
|
+
|
|
50
|
+
All internal asset paths MUST use `${SKILL_DIR}` placeholder for cross-IDE compatibility.
|
|
51
|
+
|
|
52
|
+
## Output
|
|
53
|
+
|
|
54
|
+
- Structured triage report printed to console
|
|
55
|
+
- Suggestion to update `.prizm-docs/` TRAPS with new findings
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "prizmkit-implement"
|
|
3
|
+
description: "Execute implementation following tasks.md. Respects task ordering, dependencies, and TDD approach. Marks tasks complete as they finish. Invoke with 'implement' or 'build'. (project)"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# PrizmKit Implement
|
|
7
|
+
|
|
8
|
+
Execute implementation by following the task breakdown in tasks.md. Respects task ordering, dependency constraints, and applies a TDD approach where applicable. Marks each task complete as it finishes.
|
|
9
|
+
|
|
10
|
+
## Commands
|
|
11
|
+
|
|
12
|
+
### prizmkit.implement
|
|
13
|
+
|
|
14
|
+
Implement the feature by executing tasks from tasks.md.
|
|
15
|
+
|
|
16
|
+
**PRECONDITION:** `tasks.md` exists in `.prizmkit/specs/###-feature-name/` with unchecked tasks
|
|
17
|
+
|
|
18
|
+
**STEPS:**
|
|
19
|
+
|
|
20
|
+
1. Read `tasks.md`, `plan.md`, `spec.md` for full context
|
|
21
|
+
2. Read relevant `.prizm-docs/` L1/L2 for affected modules (check TRAPS and DECISIONS sections)
|
|
22
|
+
3. Check if checkpoint tasks are complete before proceeding to next phase
|
|
23
|
+
4. For each unchecked task in order:
|
|
24
|
+
a. If task has `[P]` marker and previous parallel tasks are running, can proceed in parallel
|
|
25
|
+
b. Read L2 doc for target file's module (if exists)
|
|
26
|
+
c. Implement following TDD: write test first if applicable
|
|
27
|
+
d. Mark task as `[x]` in `tasks.md`
|
|
28
|
+
e. If error occurs: for sequential tasks, stop and report; for parallel tasks, continue others
|
|
29
|
+
5. At each checkpoint: verify build passes and tests pass
|
|
30
|
+
6. After all tasks: run full test suite
|
|
31
|
+
7. Output: implementation summary with pass/fail status
|
|
32
|
+
|
|
33
|
+
**KEY RULES:**
|
|
34
|
+
- NEVER skip a checkpoint — build and tests MUST pass before proceeding to next phase
|
|
35
|
+
- Sequential tasks MUST execute in order — stop on failure
|
|
36
|
+
- Parallel tasks (`[P]` marker) MAY continue if one fails, but report all failures
|
|
37
|
+
- TDD approach: write test first, then implement, then verify test passes
|
|
38
|
+
- Read `.prizm-docs/` TRAPS section before implementing to avoid known pitfalls
|
|
39
|
+
- Mark each task `[x]` in `tasks.md` immediately upon completion (not batched)
|
|
40
|
+
|
|
41
|
+
**HANDOFF:** `prizmkit.code-review`
|
|
42
|
+
|
|
43
|
+
## Output
|
|
44
|
+
|
|
45
|
+
- Code files created/modified as specified in tasks.md
|
|
46
|
+
- `tasks.md` updated with completion markers `[x]`
|
|
47
|
+
- Implementation summary output to conversation
|