devflow-kit 0.8.1 → 1.0.0
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/CHANGELOG.md +185 -29
- package/LICENSE +1 -1
- package/README.md +179 -308
- package/dist/cli.js +3 -1
- package/dist/commands/init.d.ts +21 -0
- package/dist/commands/init.js +311 -575
- package/dist/commands/list.d.ts +3 -0
- package/dist/commands/list.js +20 -0
- package/dist/commands/uninstall.d.ts +10 -0
- package/dist/commands/uninstall.js +351 -78
- package/dist/plugins.d.ts +46 -0
- package/dist/plugins.js +162 -0
- package/dist/utils/cli.d.ts +5 -0
- package/dist/utils/cli.js +14 -0
- package/dist/utils/installer.d.ts +41 -0
- package/dist/utils/installer.js +177 -0
- package/dist/utils/paths.d.ts +10 -0
- package/dist/utils/paths.js +23 -3
- package/dist/utils/post-install.d.ts +68 -0
- package/dist/utils/post-install.js +427 -0
- package/dist/utils/safe-delete-install.d.ts +22 -0
- package/dist/utils/safe-delete-install.js +156 -0
- package/dist/utils/safe-delete.d.ts +12 -0
- package/dist/utils/safe-delete.js +83 -0
- package/package.json +18 -8
- package/plugins/devflow-audit-claude/.claude-plugin/plugin.json +7 -0
- package/plugins/devflow-audit-claude/README.md +46 -0
- package/plugins/devflow-audit-claude/agents/claude-md-auditor.md +134 -0
- package/plugins/devflow-audit-claude/commands/audit-claude.md +85 -0
- package/plugins/devflow-code-review/.claude-plugin/plugin.json +31 -0
- package/plugins/devflow-code-review/README.md +73 -0
- package/plugins/devflow-code-review/agents/git.md +272 -0
- package/plugins/devflow-code-review/agents/reviewer.md +119 -0
- package/plugins/devflow-code-review/agents/synthesizer.md +204 -0
- package/plugins/devflow-code-review/commands/code-review-teams.md +262 -0
- package/plugins/devflow-code-review/commands/code-review.md +141 -0
- package/plugins/devflow-code-review/skills/accessibility/SKILL.md +229 -0
- package/plugins/devflow-code-review/skills/accessibility/references/detection.md +171 -0
- package/plugins/devflow-code-review/skills/accessibility/references/patterns.md +670 -0
- package/plugins/devflow-code-review/skills/accessibility/references/violations.md +419 -0
- package/plugins/devflow-code-review/skills/agent-teams/SKILL.md +124 -0
- package/plugins/devflow-code-review/skills/agent-teams/references/cleanup.md +104 -0
- package/plugins/devflow-code-review/skills/agent-teams/references/communication.md +122 -0
- package/plugins/devflow-code-review/skills/agent-teams/references/team-patterns.md +217 -0
- package/plugins/devflow-code-review/skills/architecture-patterns/SKILL.md +153 -0
- package/plugins/devflow-code-review/skills/architecture-patterns/references/detection.md +337 -0
- package/plugins/devflow-code-review/skills/architecture-patterns/references/patterns.md +873 -0
- package/plugins/devflow-code-review/skills/architecture-patterns/references/violations.md +575 -0
- package/plugins/devflow-code-review/skills/complexity-patterns/SKILL.md +143 -0
- package/plugins/devflow-code-review/skills/complexity-patterns/references/detection.md +264 -0
- package/plugins/devflow-code-review/skills/complexity-patterns/references/patterns.md +487 -0
- package/plugins/devflow-code-review/skills/complexity-patterns/references/violations.md +361 -0
- package/plugins/devflow-code-review/skills/consistency-patterns/SKILL.md +140 -0
- package/plugins/devflow-code-review/skills/consistency-patterns/references/detection.md +207 -0
- package/plugins/devflow-code-review/skills/consistency-patterns/references/patterns.md +202 -0
- package/plugins/devflow-code-review/skills/consistency-patterns/references/violations.md +213 -0
- package/plugins/devflow-code-review/skills/database-patterns/SKILL.md +134 -0
- package/plugins/devflow-code-review/skills/database-patterns/references/detection.md +208 -0
- package/plugins/devflow-code-review/skills/database-patterns/references/patterns.md +394 -0
- package/plugins/devflow-code-review/skills/database-patterns/references/violations.md +332 -0
- package/plugins/devflow-code-review/skills/dependencies-patterns/SKILL.md +141 -0
- package/plugins/devflow-code-review/skills/dependencies-patterns/references/detection.md +181 -0
- package/plugins/devflow-code-review/skills/dependencies-patterns/references/patterns.md +225 -0
- package/plugins/devflow-code-review/skills/dependencies-patterns/references/violations.md +247 -0
- package/plugins/devflow-code-review/skills/documentation-patterns/SKILL.md +125 -0
- package/plugins/devflow-code-review/skills/documentation-patterns/references/detection.md +190 -0
- package/plugins/devflow-code-review/skills/documentation-patterns/references/patterns.md +189 -0
- package/plugins/devflow-code-review/skills/documentation-patterns/references/violations.md +163 -0
- package/plugins/devflow-code-review/skills/frontend-design/SKILL.md +254 -0
- package/plugins/devflow-code-review/skills/frontend-design/references/detection.md +184 -0
- package/plugins/devflow-code-review/skills/frontend-design/references/patterns.md +511 -0
- package/plugins/devflow-code-review/skills/frontend-design/references/violations.md +453 -0
- package/plugins/devflow-code-review/skills/performance-patterns/SKILL.md +154 -0
- package/plugins/devflow-code-review/skills/performance-patterns/references/detection.md +351 -0
- package/plugins/devflow-code-review/skills/performance-patterns/references/patterns.md +503 -0
- package/plugins/devflow-code-review/skills/performance-patterns/references/violations.md +354 -0
- package/plugins/devflow-code-review/skills/react/SKILL.md +276 -0
- package/plugins/devflow-code-review/skills/react/references/patterns.md +1331 -0
- package/plugins/devflow-code-review/skills/react/references/violations.md +565 -0
- package/plugins/devflow-code-review/skills/regression-patterns/SKILL.md +146 -0
- package/plugins/devflow-code-review/skills/regression-patterns/references/detection.md +237 -0
- package/plugins/devflow-code-review/skills/regression-patterns/references/patterns.md +226 -0
- package/plugins/devflow-code-review/skills/regression-patterns/references/violations.md +225 -0
- package/plugins/devflow-code-review/skills/review-methodology/SKILL.md +119 -0
- package/plugins/devflow-code-review/skills/review-methodology/references/patterns.md +186 -0
- package/plugins/devflow-code-review/skills/review-methodology/references/report-template.md +142 -0
- package/plugins/devflow-code-review/skills/review-methodology/references/violations.md +125 -0
- package/plugins/devflow-code-review/skills/security-patterns/SKILL.md +156 -0
- package/plugins/devflow-code-review/skills/security-patterns/references/detection.md +287 -0
- package/plugins/devflow-code-review/skills/security-patterns/references/patterns.md +507 -0
- package/plugins/devflow-code-review/skills/security-patterns/references/violations.md +237 -0
- package/plugins/devflow-code-review/skills/test-patterns/SKILL.md +183 -0
- package/plugins/devflow-code-review/skills/test-patterns/references/detection.md +149 -0
- package/plugins/devflow-code-review/skills/test-patterns/references/patterns.md +220 -0
- package/plugins/devflow-code-review/skills/test-patterns/references/report-template.md +108 -0
- package/plugins/devflow-code-review/skills/test-patterns/references/violations.md +221 -0
- package/plugins/devflow-core-skills/.claude-plugin/plugin.json +27 -0
- package/plugins/devflow-core-skills/README.md +50 -0
- package/plugins/devflow-core-skills/skills/accessibility/SKILL.md +229 -0
- package/plugins/devflow-core-skills/skills/accessibility/references/detection.md +171 -0
- package/plugins/devflow-core-skills/skills/accessibility/references/patterns.md +670 -0
- package/plugins/devflow-core-skills/skills/accessibility/references/violations.md +419 -0
- package/plugins/devflow-core-skills/skills/core-patterns/SKILL.md +162 -0
- package/plugins/devflow-core-skills/skills/core-patterns/references/checklist.md +276 -0
- package/plugins/devflow-core-skills/skills/core-patterns/references/code-smell-violations.md +144 -0
- package/plugins/devflow-core-skills/skills/core-patterns/references/detection.md +303 -0
- package/plugins/devflow-core-skills/skills/core-patterns/references/patterns.md +576 -0
- package/plugins/devflow-core-skills/skills/core-patterns/references/violations.md +369 -0
- package/plugins/devflow-core-skills/skills/docs-framework/SKILL.md +134 -0
- package/plugins/devflow-core-skills/skills/docs-framework/references/patterns.md +346 -0
- package/plugins/devflow-core-skills/skills/docs-framework/references/violations.md +221 -0
- package/plugins/devflow-core-skills/skills/frontend-design/SKILL.md +254 -0
- package/plugins/devflow-core-skills/skills/frontend-design/references/detection.md +184 -0
- package/plugins/devflow-core-skills/skills/frontend-design/references/patterns.md +511 -0
- package/plugins/devflow-core-skills/skills/frontend-design/references/violations.md +453 -0
- package/plugins/devflow-core-skills/skills/git-safety/SKILL.md +122 -0
- package/plugins/devflow-core-skills/skills/git-safety/references/detection.md +290 -0
- package/plugins/devflow-core-skills/skills/git-safety/references/patterns.md +289 -0
- package/plugins/devflow-core-skills/skills/git-safety/references/violations.md +18 -0
- package/plugins/devflow-core-skills/skills/git-workflow/SKILL.md +158 -0
- package/plugins/devflow-core-skills/skills/git-workflow/references/commit-patterns.md +115 -0
- package/plugins/devflow-core-skills/skills/git-workflow/references/commit-violations.md +77 -0
- package/plugins/devflow-core-skills/skills/git-workflow/references/pr-patterns.md +127 -0
- package/plugins/devflow-core-skills/skills/git-workflow/references/pr-violations.md +96 -0
- package/plugins/devflow-core-skills/skills/github-patterns/SKILL.md +153 -0
- package/plugins/devflow-core-skills/skills/github-patterns/references/patterns.md +572 -0
- package/plugins/devflow-core-skills/skills/github-patterns/references/violations.md +298 -0
- package/plugins/devflow-core-skills/skills/input-validation/SKILL.md +148 -0
- package/plugins/devflow-core-skills/skills/input-validation/references/detection.md +283 -0
- package/plugins/devflow-core-skills/skills/input-validation/references/patterns.md +361 -0
- package/plugins/devflow-core-skills/skills/input-validation/references/violations.md +224 -0
- package/plugins/devflow-core-skills/skills/react/SKILL.md +276 -0
- package/plugins/devflow-core-skills/skills/react/references/patterns.md +1331 -0
- package/plugins/devflow-core-skills/skills/react/references/violations.md +565 -0
- package/plugins/devflow-core-skills/skills/test-patterns/SKILL.md +183 -0
- package/plugins/devflow-core-skills/skills/test-patterns/references/detection.md +149 -0
- package/plugins/devflow-core-skills/skills/test-patterns/references/patterns.md +220 -0
- package/plugins/devflow-core-skills/skills/test-patterns/references/report-template.md +108 -0
- package/plugins/devflow-core-skills/skills/test-patterns/references/violations.md +221 -0
- package/plugins/devflow-core-skills/skills/typescript/SKILL.md +176 -0
- package/plugins/devflow-core-skills/skills/typescript/references/patterns.md +1105 -0
- package/plugins/devflow-core-skills/skills/typescript/references/violations.md +433 -0
- package/plugins/devflow-debug/.claude-plugin/plugin.json +18 -0
- package/plugins/devflow-debug/README.md +65 -0
- package/plugins/devflow-debug/agents/git.md +272 -0
- package/plugins/devflow-debug/commands/debug-teams.md +231 -0
- package/plugins/devflow-debug/commands/debug.md +160 -0
- package/plugins/devflow-debug/skills/agent-teams/SKILL.md +124 -0
- package/plugins/devflow-debug/skills/agent-teams/references/cleanup.md +104 -0
- package/plugins/devflow-debug/skills/agent-teams/references/communication.md +122 -0
- package/plugins/devflow-debug/skills/agent-teams/references/team-patterns.md +217 -0
- package/plugins/devflow-debug/skills/git-safety/SKILL.md +122 -0
- package/plugins/devflow-debug/skills/git-safety/references/detection.md +290 -0
- package/plugins/devflow-debug/skills/git-safety/references/patterns.md +289 -0
- package/plugins/devflow-debug/skills/git-safety/references/violations.md +18 -0
- package/plugins/devflow-implement/.claude-plugin/plugin.json +21 -0
- package/plugins/devflow-implement/README.md +71 -0
- package/plugins/devflow-implement/agents/coder.md +122 -0
- package/plugins/devflow-implement/agents/git.md +272 -0
- package/plugins/devflow-implement/agents/scrutinizer.md +80 -0
- package/plugins/devflow-implement/agents/shepherd.md +94 -0
- package/plugins/devflow-implement/agents/simplifier.md +62 -0
- package/plugins/devflow-implement/agents/skimmer.md +88 -0
- package/plugins/devflow-implement/agents/synthesizer.md +204 -0
- package/plugins/devflow-implement/agents/validator.md +86 -0
- package/plugins/devflow-implement/commands/implement-teams.md +608 -0
- package/plugins/devflow-implement/commands/implement.md +426 -0
- package/plugins/devflow-implement/skills/accessibility/SKILL.md +229 -0
- package/plugins/devflow-implement/skills/accessibility/references/detection.md +171 -0
- package/plugins/devflow-implement/skills/accessibility/references/patterns.md +670 -0
- package/plugins/devflow-implement/skills/accessibility/references/violations.md +419 -0
- package/plugins/devflow-implement/skills/agent-teams/SKILL.md +124 -0
- package/plugins/devflow-implement/skills/agent-teams/references/cleanup.md +104 -0
- package/plugins/devflow-implement/skills/agent-teams/references/communication.md +122 -0
- package/plugins/devflow-implement/skills/agent-teams/references/team-patterns.md +217 -0
- package/plugins/devflow-implement/skills/frontend-design/SKILL.md +254 -0
- package/plugins/devflow-implement/skills/frontend-design/references/detection.md +184 -0
- package/plugins/devflow-implement/skills/frontend-design/references/patterns.md +511 -0
- package/plugins/devflow-implement/skills/frontend-design/references/violations.md +453 -0
- package/plugins/devflow-implement/skills/implementation-patterns/SKILL.md +162 -0
- package/plugins/devflow-implement/skills/implementation-patterns/references/patterns.md +1063 -0
- package/plugins/devflow-implement/skills/implementation-patterns/references/violations.md +483 -0
- package/plugins/devflow-implement/skills/self-review/SKILL.md +149 -0
- package/plugins/devflow-implement/skills/self-review/references/patterns.md +405 -0
- package/plugins/devflow-implement/skills/self-review/references/report-template.md +253 -0
- package/plugins/devflow-implement/skills/self-review/references/violations.md +308 -0
- package/plugins/devflow-resolve/.claude-plugin/plugin.json +19 -0
- package/plugins/devflow-resolve/README.md +65 -0
- package/plugins/devflow-resolve/agents/git.md +272 -0
- package/plugins/devflow-resolve/agents/resolver.md +131 -0
- package/plugins/devflow-resolve/agents/simplifier.md +62 -0
- package/plugins/devflow-resolve/commands/resolve-teams.md +298 -0
- package/plugins/devflow-resolve/commands/resolve.md +237 -0
- package/plugins/devflow-resolve/skills/agent-teams/SKILL.md +124 -0
- package/plugins/devflow-resolve/skills/agent-teams/references/cleanup.md +104 -0
- package/plugins/devflow-resolve/skills/agent-teams/references/communication.md +122 -0
- package/plugins/devflow-resolve/skills/agent-teams/references/team-patterns.md +217 -0
- package/plugins/devflow-resolve/skills/implementation-patterns/SKILL.md +162 -0
- package/plugins/devflow-resolve/skills/implementation-patterns/references/patterns.md +1063 -0
- package/plugins/devflow-resolve/skills/implementation-patterns/references/violations.md +483 -0
- package/plugins/devflow-resolve/skills/security-patterns/SKILL.md +156 -0
- package/plugins/devflow-resolve/skills/security-patterns/references/detection.md +287 -0
- package/plugins/devflow-resolve/skills/security-patterns/references/patterns.md +507 -0
- package/plugins/devflow-resolve/skills/security-patterns/references/violations.md +237 -0
- package/plugins/devflow-self-review/.claude-plugin/plugin.json +7 -0
- package/plugins/devflow-self-review/README.md +38 -0
- package/plugins/devflow-self-review/agents/scrutinizer.md +80 -0
- package/plugins/devflow-self-review/agents/simplifier.md +62 -0
- package/plugins/devflow-self-review/agents/validator.md +86 -0
- package/plugins/devflow-self-review/commands/self-review.md +126 -0
- package/plugins/devflow-self-review/skills/core-patterns/SKILL.md +162 -0
- package/plugins/devflow-self-review/skills/core-patterns/references/checklist.md +276 -0
- package/plugins/devflow-self-review/skills/core-patterns/references/code-smell-violations.md +144 -0
- package/plugins/devflow-self-review/skills/core-patterns/references/detection.md +303 -0
- package/plugins/devflow-self-review/skills/core-patterns/references/patterns.md +576 -0
- package/plugins/devflow-self-review/skills/core-patterns/references/violations.md +369 -0
- package/plugins/devflow-self-review/skills/self-review/SKILL.md +149 -0
- package/plugins/devflow-self-review/skills/self-review/references/patterns.md +405 -0
- package/plugins/devflow-self-review/skills/self-review/references/report-template.md +253 -0
- package/plugins/devflow-self-review/skills/self-review/references/violations.md +308 -0
- package/plugins/devflow-specify/.claude-plugin/plugin.json +15 -0
- package/plugins/devflow-specify/README.md +46 -0
- package/plugins/devflow-specify/agents/skimmer.md +88 -0
- package/plugins/devflow-specify/agents/synthesizer.md +204 -0
- package/plugins/devflow-specify/commands/specify-teams.md +314 -0
- package/plugins/devflow-specify/commands/specify.md +179 -0
- package/plugins/devflow-specify/skills/agent-teams/SKILL.md +124 -0
- package/plugins/devflow-specify/skills/agent-teams/references/cleanup.md +104 -0
- package/plugins/devflow-specify/skills/agent-teams/references/communication.md +122 -0
- package/plugins/devflow-specify/skills/agent-teams/references/team-patterns.md +217 -0
- package/scripts/hooks/background-memory-update.sh +167 -0
- package/scripts/hooks/pre-compact-memory.sh +81 -0
- package/scripts/hooks/session-start-memory.sh +84 -0
- package/scripts/hooks/stop-update-memory.sh +81 -0
- package/shared/agents/coder.md +122 -0
- package/shared/agents/git.md +272 -0
- package/shared/agents/resolver.md +131 -0
- package/shared/agents/reviewer.md +119 -0
- package/shared/agents/scrutinizer.md +80 -0
- package/shared/agents/shepherd.md +94 -0
- package/shared/agents/simplifier.md +62 -0
- package/shared/agents/skimmer.md +88 -0
- package/shared/agents/synthesizer.md +204 -0
- package/shared/agents/validator.md +86 -0
- package/shared/skills/accessibility/SKILL.md +229 -0
- package/shared/skills/accessibility/references/detection.md +171 -0
- package/shared/skills/accessibility/references/patterns.md +670 -0
- package/shared/skills/accessibility/references/violations.md +419 -0
- package/shared/skills/agent-teams/SKILL.md +124 -0
- package/shared/skills/agent-teams/references/cleanup.md +104 -0
- package/shared/skills/agent-teams/references/communication.md +122 -0
- package/shared/skills/agent-teams/references/team-patterns.md +217 -0
- package/shared/skills/architecture-patterns/SKILL.md +153 -0
- package/shared/skills/architecture-patterns/references/detection.md +337 -0
- package/shared/skills/architecture-patterns/references/patterns.md +873 -0
- package/shared/skills/architecture-patterns/references/violations.md +575 -0
- package/shared/skills/complexity-patterns/SKILL.md +143 -0
- package/shared/skills/complexity-patterns/references/detection.md +264 -0
- package/shared/skills/complexity-patterns/references/patterns.md +487 -0
- package/shared/skills/complexity-patterns/references/violations.md +361 -0
- package/shared/skills/consistency-patterns/SKILL.md +140 -0
- package/shared/skills/consistency-patterns/references/detection.md +207 -0
- package/shared/skills/consistency-patterns/references/patterns.md +202 -0
- package/shared/skills/consistency-patterns/references/violations.md +213 -0
- package/shared/skills/core-patterns/SKILL.md +162 -0
- package/shared/skills/core-patterns/references/checklist.md +276 -0
- package/shared/skills/core-patterns/references/code-smell-violations.md +144 -0
- package/shared/skills/core-patterns/references/detection.md +303 -0
- package/shared/skills/core-patterns/references/patterns.md +576 -0
- package/shared/skills/core-patterns/references/violations.md +369 -0
- package/shared/skills/database-patterns/SKILL.md +134 -0
- package/shared/skills/database-patterns/references/detection.md +208 -0
- package/shared/skills/database-patterns/references/patterns.md +394 -0
- package/shared/skills/database-patterns/references/violations.md +332 -0
- package/shared/skills/dependencies-patterns/SKILL.md +141 -0
- package/shared/skills/dependencies-patterns/references/detection.md +181 -0
- package/shared/skills/dependencies-patterns/references/patterns.md +225 -0
- package/shared/skills/dependencies-patterns/references/violations.md +247 -0
- package/shared/skills/docs-framework/SKILL.md +134 -0
- package/shared/skills/docs-framework/references/patterns.md +346 -0
- package/shared/skills/docs-framework/references/violations.md +221 -0
- package/shared/skills/documentation-patterns/SKILL.md +125 -0
- package/shared/skills/documentation-patterns/references/detection.md +190 -0
- package/shared/skills/documentation-patterns/references/patterns.md +189 -0
- package/shared/skills/documentation-patterns/references/violations.md +163 -0
- package/shared/skills/frontend-design/SKILL.md +254 -0
- package/shared/skills/frontend-design/references/detection.md +184 -0
- package/shared/skills/frontend-design/references/patterns.md +511 -0
- package/shared/skills/frontend-design/references/violations.md +453 -0
- package/shared/skills/git-safety/SKILL.md +122 -0
- package/shared/skills/git-safety/references/detection.md +290 -0
- package/shared/skills/git-safety/references/patterns.md +289 -0
- package/shared/skills/git-safety/references/violations.md +18 -0
- package/shared/skills/git-workflow/SKILL.md +158 -0
- package/shared/skills/git-workflow/references/commit-patterns.md +115 -0
- package/shared/skills/git-workflow/references/commit-violations.md +77 -0
- package/shared/skills/git-workflow/references/pr-patterns.md +127 -0
- package/shared/skills/git-workflow/references/pr-violations.md +96 -0
- package/shared/skills/github-patterns/SKILL.md +153 -0
- package/shared/skills/github-patterns/references/patterns.md +572 -0
- package/shared/skills/github-patterns/references/violations.md +298 -0
- package/shared/skills/implementation-patterns/SKILL.md +162 -0
- package/shared/skills/implementation-patterns/references/patterns.md +1063 -0
- package/shared/skills/implementation-patterns/references/violations.md +483 -0
- package/shared/skills/input-validation/SKILL.md +148 -0
- package/shared/skills/input-validation/references/detection.md +283 -0
- package/shared/skills/input-validation/references/patterns.md +361 -0
- package/shared/skills/input-validation/references/violations.md +224 -0
- package/shared/skills/performance-patterns/SKILL.md +154 -0
- package/shared/skills/performance-patterns/references/detection.md +351 -0
- package/shared/skills/performance-patterns/references/patterns.md +503 -0
- package/shared/skills/performance-patterns/references/violations.md +354 -0
- package/shared/skills/react/SKILL.md +276 -0
- package/shared/skills/react/references/patterns.md +1331 -0
- package/shared/skills/react/references/violations.md +565 -0
- package/shared/skills/regression-patterns/SKILL.md +146 -0
- package/shared/skills/regression-patterns/references/detection.md +237 -0
- package/shared/skills/regression-patterns/references/patterns.md +226 -0
- package/shared/skills/regression-patterns/references/violations.md +225 -0
- package/shared/skills/review-methodology/SKILL.md +119 -0
- package/shared/skills/review-methodology/references/patterns.md +186 -0
- package/shared/skills/review-methodology/references/report-template.md +142 -0
- package/shared/skills/review-methodology/references/violations.md +125 -0
- package/shared/skills/security-patterns/SKILL.md +156 -0
- package/shared/skills/security-patterns/references/detection.md +287 -0
- package/shared/skills/security-patterns/references/patterns.md +507 -0
- package/shared/skills/security-patterns/references/violations.md +237 -0
- package/shared/skills/self-review/SKILL.md +149 -0
- package/shared/skills/self-review/references/patterns.md +405 -0
- package/shared/skills/self-review/references/report-template.md +253 -0
- package/shared/skills/self-review/references/violations.md +308 -0
- package/shared/skills/test-patterns/SKILL.md +183 -0
- package/shared/skills/test-patterns/references/detection.md +149 -0
- package/shared/skills/test-patterns/references/patterns.md +220 -0
- package/shared/skills/test-patterns/references/report-template.md +108 -0
- package/shared/skills/test-patterns/references/violations.md +221 -0
- package/shared/skills/typescript/SKILL.md +176 -0
- package/shared/skills/typescript/references/patterns.md +1105 -0
- package/shared/skills/typescript/references/violations.md +433 -0
- package/src/templates/claudeignore.template +188 -0
- package/src/templates/managed-settings.json +146 -0
- package/src/templates/settings.json +59 -0
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/uninstall.d.ts.map +0 -1
- package/dist/commands/uninstall.js.map +0 -1
- package/dist/utils/git.d.ts.map +0 -1
- package/dist/utils/git.js.map +0 -1
- package/dist/utils/paths.d.ts.map +0 -1
- package/dist/utils/paths.js.map +0 -1
- package/src/claude/CLAUDE.md +0 -400
- package/src/claude/agents/devflow/audit-architecture.md +0 -132
- package/src/claude/agents/devflow/audit-complexity.md +0 -132
- package/src/claude/agents/devflow/audit-database.md +0 -132
- package/src/claude/agents/devflow/audit-dependencies.md +0 -132
- package/src/claude/agents/devflow/audit-documentation.md +0 -132
- package/src/claude/agents/devflow/audit-performance.md +0 -256
- package/src/claude/agents/devflow/audit-security.md +0 -259
- package/src/claude/agents/devflow/audit-tests.md +0 -132
- package/src/claude/agents/devflow/audit-typescript.md +0 -132
- package/src/claude/agents/devflow/brainstorm.md +0 -279
- package/src/claude/agents/devflow/catch-up.md +0 -345
- package/src/claude/agents/devflow/code-review.md +0 -307
- package/src/claude/agents/devflow/commit.md +0 -380
- package/src/claude/agents/devflow/debug.md +0 -476
- package/src/claude/agents/devflow/design.md +0 -491
- package/src/claude/agents/devflow/pr-comments.md +0 -285
- package/src/claude/agents/devflow/project-state.md +0 -419
- package/src/claude/agents/devflow/pull-request.md +0 -423
- package/src/claude/agents/devflow/release.md +0 -1137
- package/src/claude/agents/devflow/tech-debt.md +0 -338
- package/src/claude/commands/devflow/brainstorm.md +0 -68
- package/src/claude/commands/devflow/breakdown.md +0 -125
- package/src/claude/commands/devflow/catch-up.md +0 -29
- package/src/claude/commands/devflow/code-review.md +0 -237
- package/src/claude/commands/devflow/commit.md +0 -17
- package/src/claude/commands/devflow/debug.md +0 -56
- package/src/claude/commands/devflow/design.md +0 -82
- package/src/claude/commands/devflow/devlog.md +0 -408
- package/src/claude/commands/devflow/implement.md +0 -100
- package/src/claude/commands/devflow/plan.md +0 -223
- package/src/claude/commands/devflow/pull-request.md +0 -269
- package/src/claude/commands/devflow/release.md +0 -251
- package/src/claude/commands/devflow/resolve-comments.md +0 -583
- package/src/claude/scripts/statusline.sh +0 -47
- package/src/claude/settings.json +0 -6
- package/src/claude/skills/devflow/code-smell/SKILL.md +0 -428
- package/src/claude/skills/devflow/debug/SKILL.md +0 -119
- package/src/claude/skills/devflow/error-handling/SKILL.md +0 -597
- package/src/claude/skills/devflow/input-validation/SKILL.md +0 -514
- package/src/claude/skills/devflow/pattern-check/SKILL.md +0 -238
- package/src/claude/skills/devflow/research/SKILL.md +0 -138
- package/src/claude/skills/devflow/test-design/SKILL.md +0 -384
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
# Self-Review Violations
|
|
2
|
+
|
|
3
|
+
Common anti-patterns and code violations organized by the 9 pillars.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Self-Review Process Violations
|
|
8
|
+
|
|
9
|
+
| Violation | Problem | Fix |
|
|
10
|
+
|-----------|---------|-----|
|
|
11
|
+
| Skipping pillars | Incomplete review | Check all 9 pillars |
|
|
12
|
+
| Ignoring P0/P1 issues | Returning broken code | Fix before returning |
|
|
13
|
+
| Surface-level review | Missing deep issues | Review each pillar thoroughly |
|
|
14
|
+
| No evidence | Unverifiable claims | Reference specific code |
|
|
15
|
+
| Deferring critical fixes | Technical debt | Fix CRITICAL/HIGH immediately |
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## P0 Pillars (MUST Fix)
|
|
20
|
+
|
|
21
|
+
### 1. Design Violations
|
|
22
|
+
|
|
23
|
+
**Question**: Does the implementation fit the architecture?
|
|
24
|
+
|
|
25
|
+
**Red Flags**:
|
|
26
|
+
```typescript
|
|
27
|
+
// BAD: Direct database access in controller
|
|
28
|
+
class UserController {
|
|
29
|
+
async getUser(req, res) {
|
|
30
|
+
const user = await db.query('SELECT * FROM users WHERE id = ?', [req.params.id]);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// BAD: God class doing everything
|
|
35
|
+
class ApplicationManager {
|
|
36
|
+
createUser() {}
|
|
37
|
+
processPayment() {}
|
|
38
|
+
sendEmail() {}
|
|
39
|
+
generateReport() {}
|
|
40
|
+
// 500 more methods...
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
// BAD: Circular dependencies
|
|
44
|
+
// a.ts imports b.ts, b.ts imports a.ts
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
**Checklist**:
|
|
48
|
+
- [ ] Follows existing patterns in codebase
|
|
49
|
+
- [ ] Respects layer boundaries (controller/service/repository)
|
|
50
|
+
- [ ] Dependencies injected, not instantiated
|
|
51
|
+
- [ ] Not over-engineering (YAGNI)
|
|
52
|
+
- [ ] Not under-engineering (technical debt)
|
|
53
|
+
- [ ] Interactions with other components are sound
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
### 2. Functionality Violations
|
|
58
|
+
|
|
59
|
+
**Question**: Does the code work as intended?
|
|
60
|
+
|
|
61
|
+
**Red Flags**:
|
|
62
|
+
```typescript
|
|
63
|
+
// BAD: Missing null check
|
|
64
|
+
function getDisplayName(user: User) {
|
|
65
|
+
return user.profile.displayName; // user.profile could be undefined!
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// BAD: Race condition
|
|
69
|
+
let balance = await getBalance();
|
|
70
|
+
if (balance >= amount) {
|
|
71
|
+
await withdraw(amount); // Balance could change between check and withdraw!
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// BAD: Off-by-one error
|
|
75
|
+
for (let i = 0; i <= array.length; i++) { // Should be < not <=
|
|
76
|
+
process(array[i]);
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
**Checklist**:
|
|
81
|
+
- [ ] Happy path works correctly
|
|
82
|
+
- [ ] Edge cases handled (null, empty, boundary values)
|
|
83
|
+
- [ ] Error cases handled gracefully
|
|
84
|
+
- [ ] No race conditions in concurrent code
|
|
85
|
+
- [ ] No infinite loops or recursion without base case
|
|
86
|
+
- [ ] State mutations are intentional and correct
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
### 3. Security Violations
|
|
91
|
+
|
|
92
|
+
**Question**: Are there security vulnerabilities?
|
|
93
|
+
|
|
94
|
+
**Red Flags**:
|
|
95
|
+
```typescript
|
|
96
|
+
// BAD: SQL injection
|
|
97
|
+
const query = `SELECT * FROM users WHERE email = '${email}'`;
|
|
98
|
+
|
|
99
|
+
// BAD: Command injection
|
|
100
|
+
exec(`ls ${userInput}`);
|
|
101
|
+
|
|
102
|
+
// BAD: Hardcoded secret
|
|
103
|
+
const API_KEY = 'sk-abc123xyz789';
|
|
104
|
+
|
|
105
|
+
// BAD: Missing auth check
|
|
106
|
+
app.delete('/api/users/:id', async (req, res) => {
|
|
107
|
+
await deleteUser(req.params.id); // No auth!
|
|
108
|
+
});
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
**Checklist**:
|
|
112
|
+
- [ ] No SQL/NoSQL injection
|
|
113
|
+
- [ ] No command injection
|
|
114
|
+
- [ ] No XSS vulnerabilities
|
|
115
|
+
- [ ] Input validated at boundaries
|
|
116
|
+
- [ ] No hardcoded secrets
|
|
117
|
+
- [ ] Authentication/authorization checked
|
|
118
|
+
- [ ] Sensitive data not logged
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## P1 Pillars (SHOULD Fix)
|
|
123
|
+
|
|
124
|
+
### 4. Complexity Violations
|
|
125
|
+
|
|
126
|
+
**Question**: Can a reader understand this in 5 minutes?
|
|
127
|
+
|
|
128
|
+
**Red Flags**:
|
|
129
|
+
```typescript
|
|
130
|
+
// BAD: Deep nesting
|
|
131
|
+
if (a) {
|
|
132
|
+
if (b) {
|
|
133
|
+
if (c) {
|
|
134
|
+
if (d) {
|
|
135
|
+
if (e) {
|
|
136
|
+
// actual logic buried here
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
// BAD: Magic numbers
|
|
144
|
+
setTimeout(callback, 86400000);
|
|
145
|
+
if (status === 3) { }
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
**Checklist**:
|
|
149
|
+
- [ ] Functions are < 50 lines
|
|
150
|
+
- [ ] Nesting depth < 4 levels
|
|
151
|
+
- [ ] Cyclomatic complexity < 10
|
|
152
|
+
- [ ] No magic numbers/strings
|
|
153
|
+
- [ ] Single responsibility per function
|
|
154
|
+
- [ ] Complex logic has explanatory comments
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
### 5. Error Handling Violations
|
|
159
|
+
|
|
160
|
+
**Question**: Are errors handled explicitly and consistently?
|
|
161
|
+
|
|
162
|
+
**Red Flags**:
|
|
163
|
+
```typescript
|
|
164
|
+
// BAD: Swallowed exception
|
|
165
|
+
try {
|
|
166
|
+
await riskyOperation();
|
|
167
|
+
} catch (e) {
|
|
168
|
+
// silently ignored!
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
// BAD: Generic error message
|
|
172
|
+
throw new Error('Something went wrong');
|
|
173
|
+
|
|
174
|
+
// BAD: Resource leak on error
|
|
175
|
+
const file = await openFile(path);
|
|
176
|
+
await processFile(file); // If this throws, file never closed!
|
|
177
|
+
await file.close();
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
**Checklist**:
|
|
181
|
+
- [ ] Errors are caught and handled appropriately
|
|
182
|
+
- [ ] Error messages are helpful (not generic)
|
|
183
|
+
- [ ] No silent failures (swallowed exceptions)
|
|
184
|
+
- [ ] Consistent error handling pattern (Result types or throws)
|
|
185
|
+
- [ ] Resources cleaned up in error paths
|
|
186
|
+
- [ ] Errors logged with context
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
### 6. Tests Violations
|
|
191
|
+
|
|
192
|
+
**Question**: Is the new functionality tested?
|
|
193
|
+
|
|
194
|
+
**Red Flags**:
|
|
195
|
+
```typescript
|
|
196
|
+
// BAD: No tests for new function
|
|
197
|
+
export function calculateDiscount(price, type) {
|
|
198
|
+
// 20 lines of logic with no tests
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
// BAD: Test that doesn't verify behavior
|
|
202
|
+
it('creates user', async () => {
|
|
203
|
+
await createUser(data);
|
|
204
|
+
expect(mockDb.insert).toHaveBeenCalled(); // Only checks mock was called
|
|
205
|
+
});
|
|
206
|
+
|
|
207
|
+
// BAD: Missing edge case tests
|
|
208
|
+
describe('divide', () => {
|
|
209
|
+
it('divides numbers', () => {
|
|
210
|
+
expect(divide(10, 2)).toBe(5);
|
|
211
|
+
});
|
|
212
|
+
// No test for divide by zero!
|
|
213
|
+
});
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
**Checklist**:
|
|
217
|
+
- [ ] New code has corresponding tests
|
|
218
|
+
- [ ] Tests cover happy path
|
|
219
|
+
- [ ] Tests cover error cases
|
|
220
|
+
- [ ] Tests cover edge cases
|
|
221
|
+
- [ ] Tests are not brittle (test behavior, not implementation)
|
|
222
|
+
- [ ] Tests would fail if code breaks
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## P2 Pillars (FIX if Time Permits)
|
|
227
|
+
|
|
228
|
+
### 7. Naming Violations
|
|
229
|
+
|
|
230
|
+
**Question**: Are names clear and descriptive?
|
|
231
|
+
|
|
232
|
+
**Red Flags**:
|
|
233
|
+
```typescript
|
|
234
|
+
// BAD: Cryptic names
|
|
235
|
+
const d = new Date();
|
|
236
|
+
const r = items.filter(i => i.t > d);
|
|
237
|
+
const x = r.reduce((a, b) => a + b.p, 0);
|
|
238
|
+
|
|
239
|
+
// BAD: Misleading name
|
|
240
|
+
function getUser(id) {
|
|
241
|
+
return db.users.findAll(); // Returns ALL users, not one!
|
|
242
|
+
}
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
**Checklist**:
|
|
246
|
+
- [ ] Variable names describe content
|
|
247
|
+
- [ ] Function names describe action
|
|
248
|
+
- [ ] No single-letter names (except loop indices)
|
|
249
|
+
- [ ] No abbreviations that aren't universal
|
|
250
|
+
- [ ] Consistent naming style (camelCase/snake_case)
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
### 8. Consistency Violations
|
|
255
|
+
|
|
256
|
+
**Question**: Does this match existing patterns?
|
|
257
|
+
|
|
258
|
+
**Red Flags**:
|
|
259
|
+
```typescript
|
|
260
|
+
// BAD: Different style than rest of codebase
|
|
261
|
+
// Existing code uses Result types
|
|
262
|
+
function existingFunction(): Result<User, Error> { }
|
|
263
|
+
|
|
264
|
+
// Your code throws instead
|
|
265
|
+
function yourFunction(): User {
|
|
266
|
+
throw new Error('...'); // Inconsistent!
|
|
267
|
+
}
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
**Checklist**:
|
|
271
|
+
- [ ] Follows existing code style
|
|
272
|
+
- [ ] Uses same patterns as surrounding code
|
|
273
|
+
- [ ] Error handling matches project conventions
|
|
274
|
+
- [ ] Import organization matches existing files
|
|
275
|
+
- [ ] No unnecessary divergence from norms
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
### 9. Documentation Violations
|
|
280
|
+
|
|
281
|
+
**Question**: Will others understand this code?
|
|
282
|
+
|
|
283
|
+
**Red Flags**:
|
|
284
|
+
```typescript
|
|
285
|
+
// BAD: Missing docs on complex function
|
|
286
|
+
export function calculateProratedBilling(plan, start, end, previous) {
|
|
287
|
+
// 50 lines of complex billing logic with no explanation
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
// BAD: Outdated comment
|
|
291
|
+
// Returns user's full name
|
|
292
|
+
function getDisplayName(user) {
|
|
293
|
+
return user.username; // Actually returns username!
|
|
294
|
+
}
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
**Checklist**:
|
|
298
|
+
- [ ] Complex logic has explanatory comments
|
|
299
|
+
- [ ] Public APIs have JSDoc/docstrings
|
|
300
|
+
- [ ] README updated if behavior changes
|
|
301
|
+
- [ ] No outdated comments
|
|
302
|
+
- [ ] Comments explain "why", not "what"
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## Quick Reference
|
|
307
|
+
|
|
308
|
+
See [patterns.md](patterns.md) for correct patterns and [report-template.md](report-template.md) for self-review format.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "devflow-specify",
|
|
3
|
+
"description": "Interactive feature specification - creates well-defined GitHub issues through requirements exploration and clarification",
|
|
4
|
+
"author": {
|
|
5
|
+
"name": "DevFlow Contributors",
|
|
6
|
+
"email": "dean@keren.dev"
|
|
7
|
+
},
|
|
8
|
+
"version": "1.0.0",
|
|
9
|
+
"homepage": "https://github.com/dean0x/devflow",
|
|
10
|
+
"repository": "https://github.com/dean0x/devflow",
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"keywords": ["specification", "requirements", "planning", "issues", "github"],
|
|
13
|
+
"agents": ["skimmer", "synthesizer"],
|
|
14
|
+
"skills": ["agent-teams"]
|
|
15
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# devflow-specify
|
|
2
|
+
|
|
3
|
+
Interactive feature specification plugin for Claude Code. Creates well-defined GitHub issues through requirements exploration and clarification.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# Via DevFlow CLI
|
|
9
|
+
npx devflow-kit init --plugin=specify
|
|
10
|
+
|
|
11
|
+
# Via Claude Code (when available)
|
|
12
|
+
/plugin install dean0x/devflow-specify
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Usage
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
/specify [feature idea]
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
The command guides you through mandatory clarification gates:
|
|
22
|
+
1. **Gate 0**: Confirm understanding of feature idea
|
|
23
|
+
2. **Gate 1**: Validate scope and priorities after exploration
|
|
24
|
+
3. **Gate 2**: Confirm acceptance criteria before issue creation
|
|
25
|
+
|
|
26
|
+
## Components
|
|
27
|
+
|
|
28
|
+
### Command
|
|
29
|
+
- `/specify` - Interactive feature specification workflow
|
|
30
|
+
|
|
31
|
+
### Agents
|
|
32
|
+
- `skimmer` - Codebase orientation using skim for file/function discovery
|
|
33
|
+
- `synthesizer` - Combines exploration outputs into coherent summary
|
|
34
|
+
|
|
35
|
+
## Output
|
|
36
|
+
|
|
37
|
+
Creates a well-defined GitHub issue with:
|
|
38
|
+
- Clear title and description
|
|
39
|
+
- Acceptance criteria
|
|
40
|
+
- Technical context from codebase exploration
|
|
41
|
+
- Priority and scope boundaries
|
|
42
|
+
|
|
43
|
+
## Related Plugins
|
|
44
|
+
|
|
45
|
+
- [devflow-implement](../devflow-implement) - Implement the specified feature
|
|
46
|
+
- [devflow-code-review](../devflow-code-review) - Review the implementation
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Skimmer
|
|
3
|
+
description: Codebase orientation using skim to identify relevant files, functions, and patterns for a feature or task
|
|
4
|
+
model: inherit
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Skimmer Agent
|
|
8
|
+
|
|
9
|
+
You are a codebase orientation specialist using `skim` to efficiently understand codebases. Extract structure without implementation noise - find entry points, data flow, and integration points quickly.
|
|
10
|
+
|
|
11
|
+
## Input Context
|
|
12
|
+
|
|
13
|
+
You receive from orchestrator:
|
|
14
|
+
- **TASK_DESCRIPTION**: What feature/task needs to be implemented or understood
|
|
15
|
+
|
|
16
|
+
## Responsibilities
|
|
17
|
+
|
|
18
|
+
1. **Get project overview** - Identify project type, entry points, source directories
|
|
19
|
+
2. **Skim key directories** - Extract structure from src/, lib/, or app/ with `npx rskim --mode structure --show-stats`
|
|
20
|
+
3. **Search for task-relevant code** - Find files matching task keywords
|
|
21
|
+
4. **Identify integration points** - Exports, entry points, import patterns
|
|
22
|
+
5. **Generate orientation summary** - Structured output for implementation planning
|
|
23
|
+
|
|
24
|
+
## Tool Invocation
|
|
25
|
+
|
|
26
|
+
Always invoke skim via `npx rskim`. This works whether or not skim is globally installed — npx downloads and caches it transparently.
|
|
27
|
+
|
|
28
|
+
## Skim Modes
|
|
29
|
+
|
|
30
|
+
| Mode | Use When | Command |
|
|
31
|
+
|------|----------|---------|
|
|
32
|
+
| `structure` | High-level overview | `npx rskim src/ --mode structure` |
|
|
33
|
+
| `signatures` | Need API/function details | `npx rskim src/ --mode signatures` |
|
|
34
|
+
| `types` | Working with type definitions | `npx rskim src/ --mode types` |
|
|
35
|
+
|
|
36
|
+
## Output
|
|
37
|
+
|
|
38
|
+
```markdown
|
|
39
|
+
## Codebase Orientation
|
|
40
|
+
|
|
41
|
+
### Project Type
|
|
42
|
+
{Language/framework from package.json, Cargo.toml, etc.}
|
|
43
|
+
|
|
44
|
+
### Token Statistics
|
|
45
|
+
{From skim --show-stats: original vs skimmed tokens}
|
|
46
|
+
|
|
47
|
+
### Directory Structure
|
|
48
|
+
| Directory | Purpose |
|
|
49
|
+
|-----------|---------|
|
|
50
|
+
| src/ | {description} |
|
|
51
|
+
| lib/ | {description} |
|
|
52
|
+
|
|
53
|
+
### Relevant Files for Task
|
|
54
|
+
| File | Purpose | Key Exports |
|
|
55
|
+
|------|---------|-------------|
|
|
56
|
+
| `path/file.ts` | {description} | {functions, types} |
|
|
57
|
+
|
|
58
|
+
### Key Functions/Types
|
|
59
|
+
{Specific functions, classes, or types related to task}
|
|
60
|
+
|
|
61
|
+
### Integration Points
|
|
62
|
+
{Where new code connects to existing code}
|
|
63
|
+
|
|
64
|
+
### Patterns Observed
|
|
65
|
+
{Existing patterns to follow}
|
|
66
|
+
|
|
67
|
+
### Suggested Approach
|
|
68
|
+
{Brief recommendation based on codebase structure}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Principles
|
|
72
|
+
|
|
73
|
+
1. **Speed over depth** - Get oriented quickly, don't deep dive everything
|
|
74
|
+
2. **Pattern discovery first** - Find existing patterns before recommending approaches
|
|
75
|
+
3. **Be decisive** - Make confident recommendations about where to integrate
|
|
76
|
+
4. **Token efficiency** - Use skim stats to show compression ratio
|
|
77
|
+
5. **Task-focused** - Only explore what's relevant to the task
|
|
78
|
+
|
|
79
|
+
## Boundaries
|
|
80
|
+
|
|
81
|
+
**Handle autonomously:**
|
|
82
|
+
- Directory structure exploration
|
|
83
|
+
- Pattern identification
|
|
84
|
+
- Generating orientation summaries
|
|
85
|
+
|
|
86
|
+
**Escalate to orchestrator:**
|
|
87
|
+
- No source directories found (ask user for structure)
|
|
88
|
+
- Ambiguous project structure (report findings, ask for clarification)
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Synthesizer
|
|
3
|
+
description: Combines outputs from multiple agents into actionable summaries (modes: exploration, planning, review)
|
|
4
|
+
model: haiku
|
|
5
|
+
skills: review-methodology, docs-framework
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Synthesizer Agent
|
|
9
|
+
|
|
10
|
+
You are a synthesis specialist. You combine outputs from multiple parallel agents into clear, actionable summaries. You operate in three modes: exploration, planning, and review.
|
|
11
|
+
|
|
12
|
+
## Input
|
|
13
|
+
|
|
14
|
+
The orchestrator provides:
|
|
15
|
+
- **Mode**: `exploration` | `planning` | `review`
|
|
16
|
+
- **Agent outputs**: Results from parallel agents to synthesize
|
|
17
|
+
- **Output path**: Where to save synthesis (if applicable)
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Mode: Exploration
|
|
22
|
+
|
|
23
|
+
Synthesize outputs from 4 Explore agents (architecture, integration, reusable code, edge cases).
|
|
24
|
+
|
|
25
|
+
**Process:**
|
|
26
|
+
1. Extract key findings from each explorer
|
|
27
|
+
2. Identify patterns that appear across multiple explorations
|
|
28
|
+
3. Resolve conflicts if explorers found contradictory patterns
|
|
29
|
+
4. Prioritize by relevance to the task
|
|
30
|
+
|
|
31
|
+
**Output:**
|
|
32
|
+
```markdown
|
|
33
|
+
## Exploration Synthesis
|
|
34
|
+
|
|
35
|
+
### Patterns to Follow
|
|
36
|
+
| Pattern | Location | Usage |
|
|
37
|
+
|---------|----------|-------|
|
|
38
|
+
| {pattern} | `file:line` | {when to use} |
|
|
39
|
+
|
|
40
|
+
### Integration Points
|
|
41
|
+
| Entry Point | File | How to Integrate |
|
|
42
|
+
|-------------|------|------------------|
|
|
43
|
+
| {point} | `file:line` | {description} |
|
|
44
|
+
|
|
45
|
+
### Reusable Code
|
|
46
|
+
| Utility | Location | Purpose |
|
|
47
|
+
|---------|----------|---------|
|
|
48
|
+
| {function} | `file:line` | {what it does} |
|
|
49
|
+
|
|
50
|
+
### Edge Cases
|
|
51
|
+
| Scenario | Pattern | Example |
|
|
52
|
+
|----------|---------|---------|
|
|
53
|
+
| {case} | {handling} | `file:line` |
|
|
54
|
+
|
|
55
|
+
### Key Insights
|
|
56
|
+
1. {insight}
|
|
57
|
+
2. {insight}
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## Mode: Planning
|
|
63
|
+
|
|
64
|
+
Synthesize outputs from 3 Plan agents (implementation, testing, execution strategy).
|
|
65
|
+
|
|
66
|
+
**Process:**
|
|
67
|
+
1. Merge implementation steps with testing strategy
|
|
68
|
+
2. Apply execution strategy analysis to determine Coder deployment
|
|
69
|
+
3. Identify dependencies between steps
|
|
70
|
+
4. Assess context risk based on file count and module breadth
|
|
71
|
+
|
|
72
|
+
**Execution Strategy Decision:**
|
|
73
|
+
|
|
74
|
+
Analyze 3 axes to determine strategy:
|
|
75
|
+
|
|
76
|
+
| Axis | Signals | Impact |
|
|
77
|
+
|------|---------|--------|
|
|
78
|
+
| **Artifact Independence** | Shared contracts? Integration points? Cross-file dependencies? | If coupled → SINGLE_CODER |
|
|
79
|
+
| **Context Capacity** | File count, module breadth, pattern complexity | HIGH/CRITICAL → SEQUENTIAL_CODERS |
|
|
80
|
+
| **Domain Specialization** | Tech stack detected (backend, frontend, tests) | Determines DOMAIN hints |
|
|
81
|
+
|
|
82
|
+
**Context Risk Levels:**
|
|
83
|
+
- **LOW**: <10 files, single module → SINGLE_CODER
|
|
84
|
+
- **MEDIUM**: 10-20 files, 2-3 modules → Consider SEQUENTIAL_CODERS
|
|
85
|
+
- **HIGH**: 20-30 files, multiple modules → SEQUENTIAL_CODERS (2-3 phases)
|
|
86
|
+
- **CRITICAL**: >30 files, cross-cutting concerns → SEQUENTIAL_CODERS (more phases)
|
|
87
|
+
|
|
88
|
+
**Strategy Selection:**
|
|
89
|
+
- **SINGLE_CODER** (~80%): Default. Coherent A→Z implementation. Best for consistency in naming, patterns, error handling.
|
|
90
|
+
- **SEQUENTIAL_CODERS** (~15%): Context overflow risk or layered dependencies. Split into phases with handoff summaries.
|
|
91
|
+
- **PARALLEL_CODERS** (~5%): True artifact independence - no shared contracts, no integration points. Rare.
|
|
92
|
+
|
|
93
|
+
**Output:**
|
|
94
|
+
```markdown
|
|
95
|
+
## Planning Synthesis
|
|
96
|
+
|
|
97
|
+
### Execution Strategy
|
|
98
|
+
**Type**: {SINGLE_CODER | SEQUENTIAL_CODERS | PARALLEL_CODERS}
|
|
99
|
+
**Context Risk**: {LOW | MEDIUM | HIGH | CRITICAL}
|
|
100
|
+
**File Estimate**: {n} files across {m} modules
|
|
101
|
+
**Reason**: {why this strategy}
|
|
102
|
+
|
|
103
|
+
### Subtask Breakdown (if not SINGLE_CODER)
|
|
104
|
+
| Phase | Domain | Description | Files | Depends On |
|
|
105
|
+
|-------|--------|-------------|-------|------------|
|
|
106
|
+
| 1 | backend | {description} | `file1`, `file2` | - |
|
|
107
|
+
| 2 | frontend | {description} | `file3`, `file4` | Phase 1 |
|
|
108
|
+
|
|
109
|
+
### Implementation Plan
|
|
110
|
+
| Step | Action | Files | Tests | Depends On |
|
|
111
|
+
|------|--------|-------|-------|------------|
|
|
112
|
+
| 1 | {action} | `file` | `test_file` | - |
|
|
113
|
+
| 2 | {action} | `file` | `test_file` | Step 1 |
|
|
114
|
+
|
|
115
|
+
### Risk Assessment
|
|
116
|
+
| Risk | Mitigation |
|
|
117
|
+
|------|------------|
|
|
118
|
+
| {issue} | {approach} |
|
|
119
|
+
|
|
120
|
+
### Complexity
|
|
121
|
+
{Low | Medium | High} - {reasoning}
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## Mode: Review
|
|
127
|
+
|
|
128
|
+
Synthesize outputs from multiple Reviewer agents. Apply strict merge rules.
|
|
129
|
+
|
|
130
|
+
**Process:**
|
|
131
|
+
1. Read all review reports from `${REVIEW_BASE_DIR}/*-report.*.md`
|
|
132
|
+
2. Categorize issues into 3 buckets (from review-methodology)
|
|
133
|
+
3. Count by severity (CRITICAL, HIGH, MEDIUM, LOW)
|
|
134
|
+
4. Determine merge recommendation based on blocking issues
|
|
135
|
+
|
|
136
|
+
**Issue Categories:**
|
|
137
|
+
- **Blocking** (Category 1): Issues in YOUR changes - CRITICAL/HIGH must block
|
|
138
|
+
- **Should-Fix** (Category 2): Issues in code you touched - HIGH/MEDIUM
|
|
139
|
+
- **Pre-existing** (Category 3): Legacy issues - informational only
|
|
140
|
+
|
|
141
|
+
**Merge Rules:**
|
|
142
|
+
| Condition | Recommendation |
|
|
143
|
+
|-----------|----------------|
|
|
144
|
+
| Any CRITICAL in blocking | BLOCK MERGE |
|
|
145
|
+
| Any HIGH in blocking | CHANGES REQUESTED |
|
|
146
|
+
| Only MEDIUM in blocking | APPROVED WITH COMMENTS |
|
|
147
|
+
| No blocking issues | APPROVED |
|
|
148
|
+
|
|
149
|
+
**Output:**
|
|
150
|
+
**CRITICAL**: Write the summary to disk using the Write tool:
|
|
151
|
+
1. Create directory: `mkdir -p ${REVIEW_BASE_DIR}`
|
|
152
|
+
2. Write to `${REVIEW_BASE_DIR}/review-summary.${TIMESTAMP}.md` using Write tool
|
|
153
|
+
3. Confirm file written in final message
|
|
154
|
+
|
|
155
|
+
Report format:
|
|
156
|
+
|
|
157
|
+
```markdown
|
|
158
|
+
# Code Review Summary
|
|
159
|
+
|
|
160
|
+
**Branch**: {branch} -> {base}
|
|
161
|
+
**Date**: {timestamp}
|
|
162
|
+
|
|
163
|
+
## Merge Recommendation: {BLOCK | CHANGES_REQUESTED | APPROVED}
|
|
164
|
+
|
|
165
|
+
{Brief reasoning}
|
|
166
|
+
|
|
167
|
+
## Issue Summary
|
|
168
|
+
| Category | CRITICAL | HIGH | MEDIUM | LOW | Total |
|
|
169
|
+
|----------|----------|------|--------|-----|-------|
|
|
170
|
+
| Blocking | {n} | {n} | {n} | - | {n} |
|
|
171
|
+
| Should Fix | - | {n} | {n} | - | {n} |
|
|
172
|
+
| Pre-existing | - | - | {n} | {n} | {n} |
|
|
173
|
+
|
|
174
|
+
## Blocking Issues
|
|
175
|
+
{List with file:line and suggested fix}
|
|
176
|
+
|
|
177
|
+
## Action Plan
|
|
178
|
+
1. {Priority fix}
|
|
179
|
+
2. {Next fix}
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
## Principles
|
|
185
|
+
|
|
186
|
+
1. **No new research** - Only synthesize what agents found
|
|
187
|
+
2. **Preserve references** - Keep file:line from source agents
|
|
188
|
+
3. **Resolve conflicts** - If agents disagree, pick best pattern with justification
|
|
189
|
+
4. **Actionable output** - Results must be executable by next phase
|
|
190
|
+
5. **Accurate counts** - Issue counts must match reality (review mode)
|
|
191
|
+
6. **Honest recommendation** - Never approve with blocking issues (review mode)
|
|
192
|
+
7. **Be decisive** - Make confident synthesis choices
|
|
193
|
+
|
|
194
|
+
## Boundaries
|
|
195
|
+
|
|
196
|
+
**Handle autonomously:**
|
|
197
|
+
- Combining agent outputs
|
|
198
|
+
- Resolving conflicts between agents
|
|
199
|
+
- Generating structured summaries
|
|
200
|
+
- Determining merge recommendations
|
|
201
|
+
|
|
202
|
+
**Escalate to orchestrator:**
|
|
203
|
+
- Fundamental disagreements between agents that need user input
|
|
204
|
+
- Missing critical agent outputs
|