@sienklogic/plan-build-run 2.0.0 → 2.0.2
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 +56 -56
- package/CLAUDE.md +149 -149
- package/LICENSE +21 -21
- package/README.md +247 -247
- package/dashboard/bin/cli.js +25 -25
- package/dashboard/package.json +34 -34
- package/dashboard/public/css/layout.css +406 -406
- package/dashboard/public/css/status-colors.css +98 -98
- package/dashboard/public/js/htmx-title.js +5 -5
- package/dashboard/public/js/sidebar-toggle.js +20 -20
- package/dashboard/src/app.js +78 -78
- package/dashboard/src/middleware/errorHandler.js +52 -52
- package/dashboard/src/middleware/notFoundHandler.js +9 -9
- package/dashboard/src/repositories/planning.repository.js +128 -128
- package/dashboard/src/routes/events.routes.js +40 -40
- package/dashboard/src/routes/index.routes.js +31 -31
- package/dashboard/src/routes/pages.routes.js +245 -195
- package/dashboard/src/server.js +42 -42
- package/dashboard/src/services/dashboard.service.js +222 -222
- package/dashboard/src/services/phase.service.js +220 -167
- package/dashboard/src/services/project.service.js +57 -57
- package/dashboard/src/services/roadmap.service.js +171 -171
- package/dashboard/src/services/sse.service.js +58 -58
- package/dashboard/src/services/todo.service.js +254 -254
- package/dashboard/src/services/watcher.service.js +48 -48
- package/dashboard/src/views/coming-soon.ejs +11 -11
- package/dashboard/src/views/error.ejs +13 -13
- package/dashboard/src/views/index.ejs +5 -5
- package/dashboard/src/views/layout.ejs +1 -1
- package/dashboard/src/views/partials/dashboard-content.ejs +77 -77
- package/dashboard/src/views/partials/footer.ejs +3 -3
- package/dashboard/src/views/partials/head.ejs +21 -21
- package/dashboard/src/views/partials/header.ejs +12 -12
- package/dashboard/src/views/partials/layout-bottom.ejs +15 -15
- package/dashboard/src/views/partials/layout-top.ejs +8 -8
- package/dashboard/src/views/partials/phase-content.ejs +188 -181
- package/dashboard/src/views/partials/phase-doc-content.ejs +38 -0
- package/dashboard/src/views/partials/phases-content.ejs +117 -117
- package/dashboard/src/views/partials/roadmap-content.ejs +142 -142
- package/dashboard/src/views/partials/sidebar.ejs +38 -38
- package/dashboard/src/views/partials/todo-create-content.ejs +53 -53
- package/dashboard/src/views/partials/todo-detail-content.ejs +38 -38
- package/dashboard/src/views/partials/todos-content.ejs +53 -53
- package/dashboard/src/views/phase-detail.ejs +5 -5
- package/dashboard/src/views/phase-doc.ejs +5 -0
- package/dashboard/src/views/phases.ejs +5 -5
- package/dashboard/src/views/roadmap.ejs +5 -5
- package/dashboard/src/views/todo-create.ejs +5 -5
- package/dashboard/src/views/todo-detail.ejs +5 -5
- package/dashboard/src/views/todos.ejs +5 -5
- package/package.json +57 -57
- package/plugins/cursor-pbr/.cursor-plugin/plugin.json +22 -0
- package/plugins/cursor-pbr/agents/.gitkeep +0 -0
- package/plugins/cursor-pbr/assets/.gitkeep +0 -0
- package/plugins/cursor-pbr/hooks/hooks.json +11 -0
- package/plugins/cursor-pbr/references/.gitkeep +0 -0
- package/plugins/cursor-pbr/rules/.gitkeep +0 -0
- package/plugins/cursor-pbr/skills/.gitkeep +0 -0
- package/plugins/cursor-pbr/templates/.gitkeep +0 -0
- package/plugins/pbr/.claude-plugin/plugin.json +13 -13
- package/plugins/pbr/UI-CONSISTENCY-GAPS.md +61 -61
- package/plugins/pbr/agents/codebase-mapper.md +279 -271
- package/plugins/pbr/agents/debugger.md +281 -281
- package/plugins/pbr/agents/executor.md +428 -407
- package/plugins/pbr/agents/general.md +164 -164
- package/plugins/pbr/agents/integration-checker.md +169 -141
- package/plugins/pbr/agents/plan-checker.md +296 -280
- package/plugins/pbr/agents/planner.md +358 -358
- package/plugins/pbr/agents/researcher.md +363 -363
- package/plugins/pbr/agents/synthesizer.md +230 -230
- package/plugins/pbr/agents/verifier.md +489 -454
- package/plugins/pbr/commands/begin.md +5 -5
- package/plugins/pbr/commands/build.md +5 -5
- package/plugins/pbr/commands/config.md +5 -5
- package/plugins/pbr/commands/continue.md +5 -5
- package/plugins/pbr/commands/debug.md +5 -5
- package/plugins/pbr/commands/discuss.md +5 -5
- package/plugins/pbr/commands/explore.md +5 -5
- package/plugins/pbr/commands/health.md +5 -5
- package/plugins/pbr/commands/help.md +5 -5
- package/plugins/pbr/commands/import.md +5 -5
- package/plugins/pbr/commands/milestone.md +5 -5
- package/plugins/pbr/commands/note.md +5 -5
- package/plugins/pbr/commands/pause.md +5 -5
- package/plugins/pbr/commands/plan.md +5 -5
- package/plugins/pbr/commands/quick.md +5 -5
- package/plugins/pbr/commands/resume.md +5 -5
- package/plugins/pbr/commands/review.md +5 -5
- package/plugins/pbr/commands/scan.md +5 -5
- package/plugins/pbr/commands/setup.md +5 -5
- package/plugins/pbr/commands/status.md +5 -5
- package/plugins/pbr/commands/todo.md +5 -5
- package/plugins/pbr/contexts/dev.md +27 -27
- package/plugins/pbr/contexts/research.md +28 -28
- package/plugins/pbr/contexts/review.md +36 -36
- package/plugins/pbr/hooks/hooks.json +183 -183
- package/plugins/pbr/references/agent-anti-patterns.md +24 -24
- package/plugins/pbr/references/agent-interactions.md +134 -134
- package/plugins/pbr/references/agent-teams.md +54 -54
- package/plugins/pbr/references/checkpoints.md +157 -157
- package/plugins/pbr/references/common-bug-patterns.md +13 -13
- package/plugins/pbr/references/config-reference.md +441 -0
- package/plugins/pbr/references/continuation-format.md +212 -212
- package/plugins/pbr/references/deviation-rules.md +112 -112
- package/plugins/pbr/references/git-integration.md +226 -226
- package/plugins/pbr/references/integration-patterns.md +117 -117
- package/plugins/pbr/references/model-profiles.md +99 -99
- package/plugins/pbr/references/model-selection.md +31 -31
- package/plugins/pbr/references/pbr-rules.md +193 -193
- package/plugins/pbr/references/plan-authoring.md +181 -181
- package/plugins/pbr/references/plan-format.md +287 -283
- package/plugins/pbr/references/planning-config.md +213 -213
- package/plugins/pbr/references/questioning.md +214 -214
- package/plugins/pbr/references/reading-verification.md +127 -127
- package/plugins/pbr/references/stub-patterns.md +160 -160
- package/plugins/pbr/references/subagent-coordination.md +119 -119
- package/plugins/pbr/references/ui-formatting.md +461 -399
- package/plugins/pbr/references/verification-patterns.md +198 -198
- package/plugins/pbr/references/wave-execution.md +95 -95
- package/plugins/pbr/scripts/auto-continue.js +80 -80
- package/plugins/pbr/scripts/check-dangerous-commands.js +136 -136
- package/plugins/pbr/scripts/check-doc-sprawl.js +102 -102
- package/plugins/pbr/scripts/check-phase-boundary.js +196 -196
- package/plugins/pbr/scripts/check-plan-format.js +270 -270
- package/plugins/pbr/scripts/check-roadmap-sync.js +322 -252
- package/plugins/pbr/scripts/check-skill-workflow.js +262 -262
- package/plugins/pbr/scripts/check-state-sync.js +476 -476
- package/plugins/pbr/scripts/check-subagent-output.js +144 -144
- package/plugins/pbr/scripts/config-schema.json +251 -251
- package/plugins/pbr/scripts/context-budget-check.js +287 -287
- package/plugins/pbr/scripts/event-handler.js +151 -151
- package/plugins/pbr/scripts/event-logger.js +92 -92
- package/plugins/pbr/scripts/hook-logger.js +80 -76
- package/plugins/pbr/scripts/hooks-schema.json +79 -79
- package/plugins/pbr/scripts/log-subagent.js +164 -152
- package/plugins/pbr/scripts/log-tool-failure.js +88 -88
- package/plugins/pbr/scripts/pbr-tools.js +1378 -1301
- package/plugins/pbr/scripts/post-write-dispatch.js +66 -66
- package/plugins/pbr/scripts/post-write-quality.js +207 -207
- package/plugins/pbr/scripts/pre-bash-dispatch.js +86 -56
- package/plugins/pbr/scripts/pre-write-dispatch.js +97 -62
- package/plugins/pbr/scripts/progress-tracker.js +281 -228
- package/plugins/pbr/scripts/run-hook.js +92 -0
- package/plugins/pbr/scripts/session-cleanup.js +254 -254
- package/plugins/pbr/scripts/status-line.js +288 -285
- package/plugins/pbr/scripts/suggest-compact.js +119 -119
- package/plugins/pbr/scripts/task-completed.js +45 -45
- package/plugins/pbr/scripts/track-context-budget.js +149 -119
- package/plugins/pbr/scripts/validate-commit.js +200 -200
- package/plugins/pbr/scripts/validate-plugin-structure.js +183 -172
- package/plugins/pbr/scripts/validate-task.js +106 -0
- package/plugins/pbr/skills/begin/SKILL.md +594 -545
- package/plugins/pbr/skills/begin/templates/PROJECT.md.tmpl +33 -33
- package/plugins/pbr/skills/begin/templates/REQUIREMENTS.md.tmpl +18 -18
- package/plugins/pbr/skills/begin/templates/STATE.md.tmpl +49 -49
- package/plugins/pbr/skills/begin/templates/config.json.tmpl +64 -63
- package/plugins/pbr/skills/begin/templates/researcher-prompt.md.tmpl +19 -19
- package/plugins/pbr/skills/begin/templates/roadmap-prompt.md.tmpl +30 -30
- package/plugins/pbr/skills/begin/templates/synthesis-prompt.md.tmpl +16 -16
- package/plugins/pbr/skills/build/SKILL.md +943 -962
- package/plugins/pbr/skills/config/SKILL.md +256 -241
- package/plugins/pbr/skills/continue/SKILL.md +164 -127
- package/plugins/pbr/skills/debug/SKILL.md +515 -489
- package/plugins/pbr/skills/debug/templates/continuation-prompt.md.tmpl +16 -16
- package/plugins/pbr/skills/debug/templates/initial-investigation-prompt.md.tmpl +27 -27
- package/plugins/pbr/skills/discuss/SKILL.md +347 -338
- package/plugins/pbr/skills/discuss/templates/CONTEXT.md.tmpl +61 -61
- package/plugins/pbr/skills/discuss/templates/decision-categories.md +9 -9
- package/plugins/pbr/skills/explore/SKILL.md +378 -362
- package/plugins/pbr/skills/health/SKILL.md +221 -186
- package/plugins/pbr/skills/health/templates/check-pattern.md.tmpl +30 -30
- package/plugins/pbr/skills/health/templates/output-format.md.tmpl +63 -63
- package/plugins/pbr/skills/help/SKILL.md +155 -140
- package/plugins/pbr/skills/import/SKILL.md +504 -490
- package/plugins/pbr/skills/milestone/SKILL.md +704 -673
- package/plugins/pbr/skills/milestone/templates/audit-report.md.tmpl +48 -48
- package/plugins/pbr/skills/milestone/templates/stats-file.md.tmpl +30 -30
- package/plugins/pbr/skills/note/SKILL.md +231 -212
- package/plugins/pbr/skills/pause/SKILL.md +249 -235
- package/plugins/pbr/skills/pause/templates/continue-here.md.tmpl +71 -71
- package/plugins/pbr/skills/plan/SKILL.md +685 -628
- package/plugins/pbr/skills/plan/decimal-phase-calc.md +98 -98
- package/plugins/pbr/skills/plan/templates/checker-prompt.md.tmpl +21 -21
- package/plugins/pbr/skills/plan/templates/gap-closure-prompt.md.tmpl +32 -32
- package/plugins/pbr/skills/plan/templates/planner-prompt.md.tmpl +38 -38
- package/plugins/pbr/skills/plan/templates/researcher-prompt.md.tmpl +19 -19
- package/plugins/pbr/skills/plan/templates/revision-prompt.md.tmpl +23 -23
- package/plugins/pbr/skills/quick/SKILL.md +354 -335
- package/plugins/pbr/skills/resume/SKILL.md +402 -388
- package/plugins/pbr/skills/review/SKILL.md +686 -652
- package/plugins/pbr/skills/review/templates/debugger-prompt.md.tmpl +60 -60
- package/plugins/pbr/skills/review/templates/gap-planner-prompt.md.tmpl +40 -40
- package/plugins/pbr/skills/review/templates/verifier-prompt.md.tmpl +115 -115
- package/plugins/pbr/skills/scan/SKILL.md +304 -269
- package/plugins/pbr/skills/scan/templates/mapper-prompt.md.tmpl +201 -201
- package/plugins/pbr/skills/setup/SKILL.md +253 -227
- package/plugins/pbr/skills/shared/commit-planning-docs.md +35 -35
- package/plugins/pbr/skills/shared/config-loading.md +102 -102
- package/plugins/pbr/skills/shared/context-budget.md +40 -40
- package/plugins/pbr/skills/shared/context-loader-task.md +86 -86
- package/plugins/pbr/skills/shared/digest-select.md +79 -79
- package/plugins/pbr/skills/shared/domain-probes.md +125 -125
- package/plugins/pbr/skills/shared/error-reporting.md +79 -79
- package/plugins/pbr/skills/shared/gate-prompts.md +388 -388
- package/plugins/pbr/skills/shared/phase-argument-parsing.md +45 -45
- package/plugins/pbr/skills/shared/progress-display.md +53 -53
- package/plugins/pbr/skills/shared/revision-loop.md +81 -81
- package/plugins/pbr/skills/shared/state-loading.md +62 -62
- package/plugins/pbr/skills/shared/state-update.md +161 -161
- package/plugins/pbr/skills/shared/universal-anti-patterns.md +33 -33
- package/plugins/pbr/skills/status/SKILL.md +367 -353
- package/plugins/pbr/skills/todo/SKILL.md +198 -181
- package/plugins/pbr/templates/CONTEXT.md.tmpl +52 -52
- package/plugins/pbr/templates/INTEGRATION-REPORT.md.tmpl +151 -151
- package/plugins/pbr/templates/RESEARCH-SUMMARY.md.tmpl +97 -97
- package/plugins/pbr/templates/ROADMAP.md.tmpl +40 -40
- package/plugins/pbr/templates/SUMMARY.md.tmpl +81 -81
- package/plugins/pbr/templates/VERIFICATION-DETAIL.md.tmpl +116 -116
- package/plugins/pbr/templates/codebase/ARCHITECTURE.md.tmpl +98 -98
- package/plugins/pbr/templates/codebase/CONCERNS.md.tmpl +93 -93
- package/plugins/pbr/templates/codebase/CONVENTIONS.md.tmpl +104 -104
- package/plugins/pbr/templates/codebase/INTEGRATIONS.md.tmpl +78 -78
- package/plugins/pbr/templates/codebase/STACK.md.tmpl +78 -78
- package/plugins/pbr/templates/codebase/STRUCTURE.md.tmpl +80 -80
- package/plugins/pbr/templates/codebase/TESTING.md.tmpl +107 -107
- package/plugins/pbr/templates/continue-here.md.tmpl +73 -73
- package/plugins/pbr/templates/prompt-partials/phase-project-context.md.tmpl +37 -37
- package/plugins/pbr/templates/research/ARCHITECTURE.md.tmpl +124 -124
- package/plugins/pbr/templates/research/STACK.md.tmpl +71 -71
- package/plugins/pbr/templates/research/SUMMARY.md.tmpl +112 -112
- package/plugins/pbr/templates/research-outputs/phase-research.md.tmpl +81 -81
- package/plugins/pbr/templates/research-outputs/project-research.md.tmpl +99 -99
- package/plugins/pbr/templates/research-outputs/synthesis.md.tmpl +36 -36
|
@@ -1,201 +1,201 @@
|
|
|
1
|
-
<!-- Source: scan/SKILL.md | Purpose: Prompt template for spawning codebase-mapper agents during /pbr:scan -->
|
|
2
|
-
|
|
3
|
-
You are codebase-mapper with focus="{focus_area}".
|
|
4
|
-
|
|
5
|
-
<reconnaissance>
|
|
6
|
-
{recon_data}
|
|
7
|
-
</reconnaissance>
|
|
8
|
-
|
|
9
|
-
<project>
|
|
10
|
-
Working directory: {project_path}
|
|
11
|
-
Scale: {scale}
|
|
12
|
-
</project>
|
|
13
|
-
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
## Scale-Aware Guidance
|
|
17
|
-
|
|
18
|
-
### Small projects (< 50 files)
|
|
19
|
-
- Be thorough — read most files
|
|
20
|
-
- Output should be concise (don't pad)
|
|
21
|
-
- Findings lists may be short — that's fine
|
|
22
|
-
|
|
23
|
-
### Medium projects (50-200 files)
|
|
24
|
-
- Sample representative files
|
|
25
|
-
- Focus on entry points, configuration, and key modules
|
|
26
|
-
- Use Grep patterns to find conventions rather than reading every file
|
|
27
|
-
|
|
28
|
-
### Large projects (200-1000 files)
|
|
29
|
-
- Be selective — read key files only
|
|
30
|
-
- Use Glob and Grep extensively for pattern detection
|
|
31
|
-
- Focus on architecture and module boundaries
|
|
32
|
-
- Sample 3-5 files per module for conventions
|
|
33
|
-
|
|
34
|
-
### Very large projects (1000+ files)
|
|
35
|
-
- Limit file reads aggressively
|
|
36
|
-
- Architecture focus > file-level detail
|
|
37
|
-
- Sample at most 2-3 files per module
|
|
38
|
-
|
|
39
|
-
---
|
|
40
|
-
|
|
41
|
-
## Focus Area Instructions
|
|
42
|
-
|
|
43
|
-
### If focus="tech"
|
|
44
|
-
|
|
45
|
-
Analyze the codebase technology stack and external integrations.
|
|
46
|
-
|
|
47
|
-
1. STACK.md — Technology inventory
|
|
48
|
-
- Languages and versions (from config files, shebang lines, etc.)
|
|
49
|
-
- Frameworks and their versions
|
|
50
|
-
- Build tools and configuration
|
|
51
|
-
- Package manager and dependency count
|
|
52
|
-
- Runtime requirements
|
|
53
|
-
- Development tools (linters, formatters, type checkers)
|
|
54
|
-
|
|
55
|
-
2. INTEGRATIONS.md — External connections
|
|
56
|
-
- APIs consumed (look for HTTP clients, SDK imports, API keys)
|
|
57
|
-
- Databases used (look for connection strings, ORM configs, migrations)
|
|
58
|
-
- Third-party services (auth providers, payment, email, etc.)
|
|
59
|
-
- Message queues, caches, file storage
|
|
60
|
-
- CI/CD pipelines (GitHub Actions, Jenkins, etc.)
|
|
61
|
-
- Deployment targets (Docker, Kubernetes, serverless, etc.)
|
|
62
|
-
|
|
63
|
-
Write both files to .planning/codebase/
|
|
64
|
-
|
|
65
|
-
Read `templates/codebase/STACK.md.tmpl` for the STACK.md output format.
|
|
66
|
-
Read `templates/codebase/INTEGRATIONS.md.tmpl` for the INTEGRATIONS.md output format.
|
|
67
|
-
Fill in all placeholder fields with data from your codebase analysis.
|
|
68
|
-
|
|
69
|
-
### If focus="arch"
|
|
70
|
-
|
|
71
|
-
Analyze the codebase architecture and structure.
|
|
72
|
-
|
|
73
|
-
1. ARCHITECTURE.md — High-level architecture
|
|
74
|
-
- Architecture style (monolith, microservices, serverless, MVC, etc.)
|
|
75
|
-
- Layer structure (presentation, business logic, data access)
|
|
76
|
-
- Module boundaries and how they communicate
|
|
77
|
-
- Data flow through the system
|
|
78
|
-
- Key abstractions and interfaces
|
|
79
|
-
- State management approach
|
|
80
|
-
- Error handling strategy
|
|
81
|
-
- Authentication/authorization architecture
|
|
82
|
-
|
|
83
|
-
2. STRUCTURE.md — Directory and file organization
|
|
84
|
-
- Directory tree with annotations
|
|
85
|
-
- File naming conventions
|
|
86
|
-
- Module organization pattern
|
|
87
|
-
- Entry points and their roles
|
|
88
|
-
- Configuration file locations
|
|
89
|
-
- Environment-specific files
|
|
90
|
-
|
|
91
|
-
Write both files to .planning/codebase/
|
|
92
|
-
|
|
93
|
-
Read `templates/codebase/ARCHITECTURE.md.tmpl` for the ARCHITECTURE.md output format.
|
|
94
|
-
Read `templates/codebase/STRUCTURE.md.tmpl` for the STRUCTURE.md output format.
|
|
95
|
-
Fill in all placeholder fields with data from your codebase analysis.
|
|
96
|
-
|
|
97
|
-
### If focus="quality"
|
|
98
|
-
|
|
99
|
-
Analyze the codebase quality, conventions, and testing approach.
|
|
100
|
-
|
|
101
|
-
1. CONVENTIONS.md — Coding standards in practice
|
|
102
|
-
- Naming conventions (files, functions, variables, classes)
|
|
103
|
-
- Code style (indentation, quotes, semicolons, etc.)
|
|
104
|
-
- Import/export patterns
|
|
105
|
-
- Comment style and documentation patterns
|
|
106
|
-
- Error handling patterns
|
|
107
|
-
- Logging patterns
|
|
108
|
-
- Configuration patterns (env vars, config files, constants)
|
|
109
|
-
|
|
110
|
-
IMPORTANT: Document what the codebase ACTUALLY does, not what it should do.
|
|
111
|
-
Look at multiple files to identify the dominant pattern.
|
|
112
|
-
|
|
113
|
-
2. TESTING.md — Test infrastructure and coverage
|
|
114
|
-
- Test framework(s) used
|
|
115
|
-
- Test file organization
|
|
116
|
-
- Test types present (unit, integration, e2e)
|
|
117
|
-
- Test coverage (rough estimate from test file count vs source file count)
|
|
118
|
-
- Mocking patterns
|
|
119
|
-
- Test data management
|
|
120
|
-
- CI test configuration
|
|
121
|
-
- Notable gaps in testing
|
|
122
|
-
|
|
123
|
-
Write both files to .planning/codebase/
|
|
124
|
-
|
|
125
|
-
Read `templates/codebase/CONVENTIONS.md.tmpl` for the CONVENTIONS.md output format.
|
|
126
|
-
Read `templates/codebase/TESTING.md.tmpl` for the TESTING.md output format.
|
|
127
|
-
Fill in all placeholder fields with data from your codebase analysis.
|
|
128
|
-
|
|
129
|
-
### If focus="concerns"
|
|
130
|
-
|
|
131
|
-
Identify concerns, risks, and improvement opportunities in the codebase.
|
|
132
|
-
|
|
133
|
-
Write CONCERNS.md to .planning/codebase/
|
|
134
|
-
|
|
135
|
-
Analyze the codebase for:
|
|
136
|
-
|
|
137
|
-
1. Security concerns
|
|
138
|
-
- Hardcoded secrets or credentials
|
|
139
|
-
- Injection vulnerabilities
|
|
140
|
-
- Insecure authentication patterns
|
|
141
|
-
- Missing input validation
|
|
142
|
-
- Outdated dependencies with known vulnerabilities
|
|
143
|
-
|
|
144
|
-
2. Technical debt
|
|
145
|
-
- TODO/FIXME/HACK comments
|
|
146
|
-
- Dead code (unused exports, unreachable branches)
|
|
147
|
-
- Copy-pasted code (duplication)
|
|
148
|
-
- Overly complex functions
|
|
149
|
-
- Missing error handling
|
|
150
|
-
- Inconsistent patterns
|
|
151
|
-
|
|
152
|
-
3. Scalability concerns
|
|
153
|
-
- N+1 query patterns
|
|
154
|
-
- Missing pagination
|
|
155
|
-
- Unbounded data loading
|
|
156
|
-
- Synchronous blocking operations
|
|
157
|
-
- Missing caching opportunities
|
|
158
|
-
|
|
159
|
-
4. Maintainability concerns
|
|
160
|
-
- Missing documentation
|
|
161
|
-
- Complex inheritance hierarchies
|
|
162
|
-
- Tight coupling between modules
|
|
163
|
-
- Magic numbers/strings
|
|
164
|
-
- Missing type safety
|
|
165
|
-
|
|
166
|
-
5. Operational concerns
|
|
167
|
-
- Missing health checks
|
|
168
|
-
- Insufficient logging
|
|
169
|
-
- No monitoring hooks
|
|
170
|
-
- Unclear deployment process
|
|
171
|
-
|
|
172
|
-
Read `templates/codebase/CONCERNS.md.tmpl` for the CONCERNS.md output format.
|
|
173
|
-
Fill in all placeholder fields with data from your codebase analysis.
|
|
174
|
-
|
|
175
|
-
---
|
|
176
|
-
|
|
177
|
-
## Reconnaissance Detection Reference
|
|
178
|
-
|
|
179
|
-
### Project Type Detection
|
|
180
|
-
Look for:
|
|
181
|
-
- package.json -> Node.js/JavaScript/TypeScript
|
|
182
|
-
- requirements.txt / setup.py / pyproject.toml -> Python
|
|
183
|
-
- CMakeLists.txt -> C/C++
|
|
184
|
-
- go.mod -> Go
|
|
185
|
-
- Cargo.toml -> Rust
|
|
186
|
-
- pom.xml / build.gradle -> Java
|
|
187
|
-
- *.sln / *.csproj -> .NET
|
|
188
|
-
- Gemfile -> Ruby
|
|
189
|
-
- composer.json -> PHP
|
|
190
|
-
|
|
191
|
-
### Key Directory Detection
|
|
192
|
-
Look for:
|
|
193
|
-
- src/, lib/, app/ -> source code
|
|
194
|
-
- test/, tests/, __tests__/, spec/ -> tests
|
|
195
|
-
- docs/ -> documentation
|
|
196
|
-
- config/, .config/ -> configuration
|
|
197
|
-
- scripts/ -> build/deploy scripts
|
|
198
|
-
- public/, static/, assets/ -> static assets
|
|
199
|
-
- migrations/ -> database migrations
|
|
200
|
-
|
|
201
|
-
Write output to: {output_path}
|
|
1
|
+
<!-- Source: scan/SKILL.md | Purpose: Prompt template for spawning codebase-mapper agents during /pbr:scan -->
|
|
2
|
+
|
|
3
|
+
You are codebase-mapper with focus="{focus_area}".
|
|
4
|
+
|
|
5
|
+
<reconnaissance>
|
|
6
|
+
{recon_data}
|
|
7
|
+
</reconnaissance>
|
|
8
|
+
|
|
9
|
+
<project>
|
|
10
|
+
Working directory: {project_path}
|
|
11
|
+
Scale: {scale}
|
|
12
|
+
</project>
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Scale-Aware Guidance
|
|
17
|
+
|
|
18
|
+
### Small projects (< 50 files)
|
|
19
|
+
- Be thorough — read most files
|
|
20
|
+
- Output should be concise (don't pad)
|
|
21
|
+
- Findings lists may be short — that's fine
|
|
22
|
+
|
|
23
|
+
### Medium projects (50-200 files)
|
|
24
|
+
- Sample representative files
|
|
25
|
+
- Focus on entry points, configuration, and key modules
|
|
26
|
+
- Use Grep patterns to find conventions rather than reading every file
|
|
27
|
+
|
|
28
|
+
### Large projects (200-1000 files)
|
|
29
|
+
- Be selective — read key files only
|
|
30
|
+
- Use Glob and Grep extensively for pattern detection
|
|
31
|
+
- Focus on architecture and module boundaries
|
|
32
|
+
- Sample 3-5 files per module for conventions
|
|
33
|
+
|
|
34
|
+
### Very large projects (1000+ files)
|
|
35
|
+
- Limit file reads aggressively
|
|
36
|
+
- Architecture focus > file-level detail
|
|
37
|
+
- Sample at most 2-3 files per module
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Focus Area Instructions
|
|
42
|
+
|
|
43
|
+
### If focus="tech"
|
|
44
|
+
|
|
45
|
+
Analyze the codebase technology stack and external integrations.
|
|
46
|
+
|
|
47
|
+
1. STACK.md — Technology inventory
|
|
48
|
+
- Languages and versions (from config files, shebang lines, etc.)
|
|
49
|
+
- Frameworks and their versions
|
|
50
|
+
- Build tools and configuration
|
|
51
|
+
- Package manager and dependency count
|
|
52
|
+
- Runtime requirements
|
|
53
|
+
- Development tools (linters, formatters, type checkers)
|
|
54
|
+
|
|
55
|
+
2. INTEGRATIONS.md — External connections
|
|
56
|
+
- APIs consumed (look for HTTP clients, SDK imports, API keys)
|
|
57
|
+
- Databases used (look for connection strings, ORM configs, migrations)
|
|
58
|
+
- Third-party services (auth providers, payment, email, etc.)
|
|
59
|
+
- Message queues, caches, file storage
|
|
60
|
+
- CI/CD pipelines (GitHub Actions, Jenkins, etc.)
|
|
61
|
+
- Deployment targets (Docker, Kubernetes, serverless, etc.)
|
|
62
|
+
|
|
63
|
+
Write both files to .planning/codebase/
|
|
64
|
+
|
|
65
|
+
Read `templates/codebase/STACK.md.tmpl` for the STACK.md output format.
|
|
66
|
+
Read `templates/codebase/INTEGRATIONS.md.tmpl` for the INTEGRATIONS.md output format.
|
|
67
|
+
Fill in all placeholder fields with data from your codebase analysis.
|
|
68
|
+
|
|
69
|
+
### If focus="arch"
|
|
70
|
+
|
|
71
|
+
Analyze the codebase architecture and structure.
|
|
72
|
+
|
|
73
|
+
1. ARCHITECTURE.md — High-level architecture
|
|
74
|
+
- Architecture style (monolith, microservices, serverless, MVC, etc.)
|
|
75
|
+
- Layer structure (presentation, business logic, data access)
|
|
76
|
+
- Module boundaries and how they communicate
|
|
77
|
+
- Data flow through the system
|
|
78
|
+
- Key abstractions and interfaces
|
|
79
|
+
- State management approach
|
|
80
|
+
- Error handling strategy
|
|
81
|
+
- Authentication/authorization architecture
|
|
82
|
+
|
|
83
|
+
2. STRUCTURE.md — Directory and file organization
|
|
84
|
+
- Directory tree with annotations
|
|
85
|
+
- File naming conventions
|
|
86
|
+
- Module organization pattern
|
|
87
|
+
- Entry points and their roles
|
|
88
|
+
- Configuration file locations
|
|
89
|
+
- Environment-specific files
|
|
90
|
+
|
|
91
|
+
Write both files to .planning/codebase/
|
|
92
|
+
|
|
93
|
+
Read `templates/codebase/ARCHITECTURE.md.tmpl` for the ARCHITECTURE.md output format.
|
|
94
|
+
Read `templates/codebase/STRUCTURE.md.tmpl` for the STRUCTURE.md output format.
|
|
95
|
+
Fill in all placeholder fields with data from your codebase analysis.
|
|
96
|
+
|
|
97
|
+
### If focus="quality"
|
|
98
|
+
|
|
99
|
+
Analyze the codebase quality, conventions, and testing approach.
|
|
100
|
+
|
|
101
|
+
1. CONVENTIONS.md — Coding standards in practice
|
|
102
|
+
- Naming conventions (files, functions, variables, classes)
|
|
103
|
+
- Code style (indentation, quotes, semicolons, etc.)
|
|
104
|
+
- Import/export patterns
|
|
105
|
+
- Comment style and documentation patterns
|
|
106
|
+
- Error handling patterns
|
|
107
|
+
- Logging patterns
|
|
108
|
+
- Configuration patterns (env vars, config files, constants)
|
|
109
|
+
|
|
110
|
+
IMPORTANT: Document what the codebase ACTUALLY does, not what it should do.
|
|
111
|
+
Look at multiple files to identify the dominant pattern.
|
|
112
|
+
|
|
113
|
+
2. TESTING.md — Test infrastructure and coverage
|
|
114
|
+
- Test framework(s) used
|
|
115
|
+
- Test file organization
|
|
116
|
+
- Test types present (unit, integration, e2e)
|
|
117
|
+
- Test coverage (rough estimate from test file count vs source file count)
|
|
118
|
+
- Mocking patterns
|
|
119
|
+
- Test data management
|
|
120
|
+
- CI test configuration
|
|
121
|
+
- Notable gaps in testing
|
|
122
|
+
|
|
123
|
+
Write both files to .planning/codebase/
|
|
124
|
+
|
|
125
|
+
Read `templates/codebase/CONVENTIONS.md.tmpl` for the CONVENTIONS.md output format.
|
|
126
|
+
Read `templates/codebase/TESTING.md.tmpl` for the TESTING.md output format.
|
|
127
|
+
Fill in all placeholder fields with data from your codebase analysis.
|
|
128
|
+
|
|
129
|
+
### If focus="concerns"
|
|
130
|
+
|
|
131
|
+
Identify concerns, risks, and improvement opportunities in the codebase.
|
|
132
|
+
|
|
133
|
+
Write CONCERNS.md to .planning/codebase/
|
|
134
|
+
|
|
135
|
+
Analyze the codebase for:
|
|
136
|
+
|
|
137
|
+
1. Security concerns
|
|
138
|
+
- Hardcoded secrets or credentials
|
|
139
|
+
- Injection vulnerabilities
|
|
140
|
+
- Insecure authentication patterns
|
|
141
|
+
- Missing input validation
|
|
142
|
+
- Outdated dependencies with known vulnerabilities
|
|
143
|
+
|
|
144
|
+
2. Technical debt
|
|
145
|
+
- TODO/FIXME/HACK comments
|
|
146
|
+
- Dead code (unused exports, unreachable branches)
|
|
147
|
+
- Copy-pasted code (duplication)
|
|
148
|
+
- Overly complex functions
|
|
149
|
+
- Missing error handling
|
|
150
|
+
- Inconsistent patterns
|
|
151
|
+
|
|
152
|
+
3. Scalability concerns
|
|
153
|
+
- N+1 query patterns
|
|
154
|
+
- Missing pagination
|
|
155
|
+
- Unbounded data loading
|
|
156
|
+
- Synchronous blocking operations
|
|
157
|
+
- Missing caching opportunities
|
|
158
|
+
|
|
159
|
+
4. Maintainability concerns
|
|
160
|
+
- Missing documentation
|
|
161
|
+
- Complex inheritance hierarchies
|
|
162
|
+
- Tight coupling between modules
|
|
163
|
+
- Magic numbers/strings
|
|
164
|
+
- Missing type safety
|
|
165
|
+
|
|
166
|
+
5. Operational concerns
|
|
167
|
+
- Missing health checks
|
|
168
|
+
- Insufficient logging
|
|
169
|
+
- No monitoring hooks
|
|
170
|
+
- Unclear deployment process
|
|
171
|
+
|
|
172
|
+
Read `templates/codebase/CONCERNS.md.tmpl` for the CONCERNS.md output format.
|
|
173
|
+
Fill in all placeholder fields with data from your codebase analysis.
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## Reconnaissance Detection Reference
|
|
178
|
+
|
|
179
|
+
### Project Type Detection
|
|
180
|
+
Look for:
|
|
181
|
+
- package.json -> Node.js/JavaScript/TypeScript
|
|
182
|
+
- requirements.txt / setup.py / pyproject.toml -> Python
|
|
183
|
+
- CMakeLists.txt -> C/C++
|
|
184
|
+
- go.mod -> Go
|
|
185
|
+
- Cargo.toml -> Rust
|
|
186
|
+
- pom.xml / build.gradle -> Java
|
|
187
|
+
- *.sln / *.csproj -> .NET
|
|
188
|
+
- Gemfile -> Ruby
|
|
189
|
+
- composer.json -> PHP
|
|
190
|
+
|
|
191
|
+
### Key Directory Detection
|
|
192
|
+
Look for:
|
|
193
|
+
- src/, lib/, app/ -> source code
|
|
194
|
+
- test/, tests/, __tests__/, spec/ -> tests
|
|
195
|
+
- docs/ -> documentation
|
|
196
|
+
- config/, .config/ -> configuration
|
|
197
|
+
- scripts/ -> build/deploy scripts
|
|
198
|
+
- public/, static/, assets/ -> static assets
|
|
199
|
+
- migrations/ -> database migrations
|
|
200
|
+
|
|
201
|
+
Write output to: {output_path}
|