@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.
Files changed (233) hide show
  1. package/CHANGELOG.md +56 -56
  2. package/CLAUDE.md +149 -149
  3. package/LICENSE +21 -21
  4. package/README.md +247 -247
  5. package/dashboard/bin/cli.js +25 -25
  6. package/dashboard/package.json +34 -34
  7. package/dashboard/public/css/layout.css +406 -406
  8. package/dashboard/public/css/status-colors.css +98 -98
  9. package/dashboard/public/js/htmx-title.js +5 -5
  10. package/dashboard/public/js/sidebar-toggle.js +20 -20
  11. package/dashboard/src/app.js +78 -78
  12. package/dashboard/src/middleware/errorHandler.js +52 -52
  13. package/dashboard/src/middleware/notFoundHandler.js +9 -9
  14. package/dashboard/src/repositories/planning.repository.js +128 -128
  15. package/dashboard/src/routes/events.routes.js +40 -40
  16. package/dashboard/src/routes/index.routes.js +31 -31
  17. package/dashboard/src/routes/pages.routes.js +245 -195
  18. package/dashboard/src/server.js +42 -42
  19. package/dashboard/src/services/dashboard.service.js +222 -222
  20. package/dashboard/src/services/phase.service.js +220 -167
  21. package/dashboard/src/services/project.service.js +57 -57
  22. package/dashboard/src/services/roadmap.service.js +171 -171
  23. package/dashboard/src/services/sse.service.js +58 -58
  24. package/dashboard/src/services/todo.service.js +254 -254
  25. package/dashboard/src/services/watcher.service.js +48 -48
  26. package/dashboard/src/views/coming-soon.ejs +11 -11
  27. package/dashboard/src/views/error.ejs +13 -13
  28. package/dashboard/src/views/index.ejs +5 -5
  29. package/dashboard/src/views/layout.ejs +1 -1
  30. package/dashboard/src/views/partials/dashboard-content.ejs +77 -77
  31. package/dashboard/src/views/partials/footer.ejs +3 -3
  32. package/dashboard/src/views/partials/head.ejs +21 -21
  33. package/dashboard/src/views/partials/header.ejs +12 -12
  34. package/dashboard/src/views/partials/layout-bottom.ejs +15 -15
  35. package/dashboard/src/views/partials/layout-top.ejs +8 -8
  36. package/dashboard/src/views/partials/phase-content.ejs +188 -181
  37. package/dashboard/src/views/partials/phase-doc-content.ejs +38 -0
  38. package/dashboard/src/views/partials/phases-content.ejs +117 -117
  39. package/dashboard/src/views/partials/roadmap-content.ejs +142 -142
  40. package/dashboard/src/views/partials/sidebar.ejs +38 -38
  41. package/dashboard/src/views/partials/todo-create-content.ejs +53 -53
  42. package/dashboard/src/views/partials/todo-detail-content.ejs +38 -38
  43. package/dashboard/src/views/partials/todos-content.ejs +53 -53
  44. package/dashboard/src/views/phase-detail.ejs +5 -5
  45. package/dashboard/src/views/phase-doc.ejs +5 -0
  46. package/dashboard/src/views/phases.ejs +5 -5
  47. package/dashboard/src/views/roadmap.ejs +5 -5
  48. package/dashboard/src/views/todo-create.ejs +5 -5
  49. package/dashboard/src/views/todo-detail.ejs +5 -5
  50. package/dashboard/src/views/todos.ejs +5 -5
  51. package/package.json +57 -57
  52. package/plugins/cursor-pbr/.cursor-plugin/plugin.json +22 -0
  53. package/plugins/cursor-pbr/agents/.gitkeep +0 -0
  54. package/plugins/cursor-pbr/assets/.gitkeep +0 -0
  55. package/plugins/cursor-pbr/hooks/hooks.json +11 -0
  56. package/plugins/cursor-pbr/references/.gitkeep +0 -0
  57. package/plugins/cursor-pbr/rules/.gitkeep +0 -0
  58. package/plugins/cursor-pbr/skills/.gitkeep +0 -0
  59. package/plugins/cursor-pbr/templates/.gitkeep +0 -0
  60. package/plugins/pbr/.claude-plugin/plugin.json +13 -13
  61. package/plugins/pbr/UI-CONSISTENCY-GAPS.md +61 -61
  62. package/plugins/pbr/agents/codebase-mapper.md +279 -271
  63. package/plugins/pbr/agents/debugger.md +281 -281
  64. package/plugins/pbr/agents/executor.md +428 -407
  65. package/plugins/pbr/agents/general.md +164 -164
  66. package/plugins/pbr/agents/integration-checker.md +169 -141
  67. package/plugins/pbr/agents/plan-checker.md +296 -280
  68. package/plugins/pbr/agents/planner.md +358 -358
  69. package/plugins/pbr/agents/researcher.md +363 -363
  70. package/plugins/pbr/agents/synthesizer.md +230 -230
  71. package/plugins/pbr/agents/verifier.md +489 -454
  72. package/plugins/pbr/commands/begin.md +5 -5
  73. package/plugins/pbr/commands/build.md +5 -5
  74. package/plugins/pbr/commands/config.md +5 -5
  75. package/plugins/pbr/commands/continue.md +5 -5
  76. package/plugins/pbr/commands/debug.md +5 -5
  77. package/plugins/pbr/commands/discuss.md +5 -5
  78. package/plugins/pbr/commands/explore.md +5 -5
  79. package/plugins/pbr/commands/health.md +5 -5
  80. package/plugins/pbr/commands/help.md +5 -5
  81. package/plugins/pbr/commands/import.md +5 -5
  82. package/plugins/pbr/commands/milestone.md +5 -5
  83. package/plugins/pbr/commands/note.md +5 -5
  84. package/plugins/pbr/commands/pause.md +5 -5
  85. package/plugins/pbr/commands/plan.md +5 -5
  86. package/plugins/pbr/commands/quick.md +5 -5
  87. package/plugins/pbr/commands/resume.md +5 -5
  88. package/plugins/pbr/commands/review.md +5 -5
  89. package/plugins/pbr/commands/scan.md +5 -5
  90. package/plugins/pbr/commands/setup.md +5 -5
  91. package/plugins/pbr/commands/status.md +5 -5
  92. package/plugins/pbr/commands/todo.md +5 -5
  93. package/plugins/pbr/contexts/dev.md +27 -27
  94. package/plugins/pbr/contexts/research.md +28 -28
  95. package/plugins/pbr/contexts/review.md +36 -36
  96. package/plugins/pbr/hooks/hooks.json +183 -183
  97. package/plugins/pbr/references/agent-anti-patterns.md +24 -24
  98. package/plugins/pbr/references/agent-interactions.md +134 -134
  99. package/plugins/pbr/references/agent-teams.md +54 -54
  100. package/plugins/pbr/references/checkpoints.md +157 -157
  101. package/plugins/pbr/references/common-bug-patterns.md +13 -13
  102. package/plugins/pbr/references/config-reference.md +441 -0
  103. package/plugins/pbr/references/continuation-format.md +212 -212
  104. package/plugins/pbr/references/deviation-rules.md +112 -112
  105. package/plugins/pbr/references/git-integration.md +226 -226
  106. package/plugins/pbr/references/integration-patterns.md +117 -117
  107. package/plugins/pbr/references/model-profiles.md +99 -99
  108. package/plugins/pbr/references/model-selection.md +31 -31
  109. package/plugins/pbr/references/pbr-rules.md +193 -193
  110. package/plugins/pbr/references/plan-authoring.md +181 -181
  111. package/plugins/pbr/references/plan-format.md +287 -283
  112. package/plugins/pbr/references/planning-config.md +213 -213
  113. package/plugins/pbr/references/questioning.md +214 -214
  114. package/plugins/pbr/references/reading-verification.md +127 -127
  115. package/plugins/pbr/references/stub-patterns.md +160 -160
  116. package/plugins/pbr/references/subagent-coordination.md +119 -119
  117. package/plugins/pbr/references/ui-formatting.md +461 -399
  118. package/plugins/pbr/references/verification-patterns.md +198 -198
  119. package/plugins/pbr/references/wave-execution.md +95 -95
  120. package/plugins/pbr/scripts/auto-continue.js +80 -80
  121. package/plugins/pbr/scripts/check-dangerous-commands.js +136 -136
  122. package/plugins/pbr/scripts/check-doc-sprawl.js +102 -102
  123. package/plugins/pbr/scripts/check-phase-boundary.js +196 -196
  124. package/plugins/pbr/scripts/check-plan-format.js +270 -270
  125. package/plugins/pbr/scripts/check-roadmap-sync.js +322 -252
  126. package/plugins/pbr/scripts/check-skill-workflow.js +262 -262
  127. package/plugins/pbr/scripts/check-state-sync.js +476 -476
  128. package/plugins/pbr/scripts/check-subagent-output.js +144 -144
  129. package/plugins/pbr/scripts/config-schema.json +251 -251
  130. package/plugins/pbr/scripts/context-budget-check.js +287 -287
  131. package/plugins/pbr/scripts/event-handler.js +151 -151
  132. package/plugins/pbr/scripts/event-logger.js +92 -92
  133. package/plugins/pbr/scripts/hook-logger.js +80 -76
  134. package/plugins/pbr/scripts/hooks-schema.json +79 -79
  135. package/plugins/pbr/scripts/log-subagent.js +164 -152
  136. package/plugins/pbr/scripts/log-tool-failure.js +88 -88
  137. package/plugins/pbr/scripts/pbr-tools.js +1378 -1301
  138. package/plugins/pbr/scripts/post-write-dispatch.js +66 -66
  139. package/plugins/pbr/scripts/post-write-quality.js +207 -207
  140. package/plugins/pbr/scripts/pre-bash-dispatch.js +86 -56
  141. package/plugins/pbr/scripts/pre-write-dispatch.js +97 -62
  142. package/plugins/pbr/scripts/progress-tracker.js +281 -228
  143. package/plugins/pbr/scripts/run-hook.js +92 -0
  144. package/plugins/pbr/scripts/session-cleanup.js +254 -254
  145. package/plugins/pbr/scripts/status-line.js +288 -285
  146. package/plugins/pbr/scripts/suggest-compact.js +119 -119
  147. package/plugins/pbr/scripts/task-completed.js +45 -45
  148. package/plugins/pbr/scripts/track-context-budget.js +149 -119
  149. package/plugins/pbr/scripts/validate-commit.js +200 -200
  150. package/plugins/pbr/scripts/validate-plugin-structure.js +183 -172
  151. package/plugins/pbr/scripts/validate-task.js +106 -0
  152. package/plugins/pbr/skills/begin/SKILL.md +594 -545
  153. package/plugins/pbr/skills/begin/templates/PROJECT.md.tmpl +33 -33
  154. package/plugins/pbr/skills/begin/templates/REQUIREMENTS.md.tmpl +18 -18
  155. package/plugins/pbr/skills/begin/templates/STATE.md.tmpl +49 -49
  156. package/plugins/pbr/skills/begin/templates/config.json.tmpl +64 -63
  157. package/plugins/pbr/skills/begin/templates/researcher-prompt.md.tmpl +19 -19
  158. package/plugins/pbr/skills/begin/templates/roadmap-prompt.md.tmpl +30 -30
  159. package/plugins/pbr/skills/begin/templates/synthesis-prompt.md.tmpl +16 -16
  160. package/plugins/pbr/skills/build/SKILL.md +943 -962
  161. package/plugins/pbr/skills/config/SKILL.md +256 -241
  162. package/plugins/pbr/skills/continue/SKILL.md +164 -127
  163. package/plugins/pbr/skills/debug/SKILL.md +515 -489
  164. package/plugins/pbr/skills/debug/templates/continuation-prompt.md.tmpl +16 -16
  165. package/plugins/pbr/skills/debug/templates/initial-investigation-prompt.md.tmpl +27 -27
  166. package/plugins/pbr/skills/discuss/SKILL.md +347 -338
  167. package/plugins/pbr/skills/discuss/templates/CONTEXT.md.tmpl +61 -61
  168. package/plugins/pbr/skills/discuss/templates/decision-categories.md +9 -9
  169. package/plugins/pbr/skills/explore/SKILL.md +378 -362
  170. package/plugins/pbr/skills/health/SKILL.md +221 -186
  171. package/plugins/pbr/skills/health/templates/check-pattern.md.tmpl +30 -30
  172. package/plugins/pbr/skills/health/templates/output-format.md.tmpl +63 -63
  173. package/plugins/pbr/skills/help/SKILL.md +155 -140
  174. package/plugins/pbr/skills/import/SKILL.md +504 -490
  175. package/plugins/pbr/skills/milestone/SKILL.md +704 -673
  176. package/plugins/pbr/skills/milestone/templates/audit-report.md.tmpl +48 -48
  177. package/plugins/pbr/skills/milestone/templates/stats-file.md.tmpl +30 -30
  178. package/plugins/pbr/skills/note/SKILL.md +231 -212
  179. package/plugins/pbr/skills/pause/SKILL.md +249 -235
  180. package/plugins/pbr/skills/pause/templates/continue-here.md.tmpl +71 -71
  181. package/plugins/pbr/skills/plan/SKILL.md +685 -628
  182. package/plugins/pbr/skills/plan/decimal-phase-calc.md +98 -98
  183. package/plugins/pbr/skills/plan/templates/checker-prompt.md.tmpl +21 -21
  184. package/plugins/pbr/skills/plan/templates/gap-closure-prompt.md.tmpl +32 -32
  185. package/plugins/pbr/skills/plan/templates/planner-prompt.md.tmpl +38 -38
  186. package/plugins/pbr/skills/plan/templates/researcher-prompt.md.tmpl +19 -19
  187. package/plugins/pbr/skills/plan/templates/revision-prompt.md.tmpl +23 -23
  188. package/plugins/pbr/skills/quick/SKILL.md +354 -335
  189. package/plugins/pbr/skills/resume/SKILL.md +402 -388
  190. package/plugins/pbr/skills/review/SKILL.md +686 -652
  191. package/plugins/pbr/skills/review/templates/debugger-prompt.md.tmpl +60 -60
  192. package/plugins/pbr/skills/review/templates/gap-planner-prompt.md.tmpl +40 -40
  193. package/plugins/pbr/skills/review/templates/verifier-prompt.md.tmpl +115 -115
  194. package/plugins/pbr/skills/scan/SKILL.md +304 -269
  195. package/plugins/pbr/skills/scan/templates/mapper-prompt.md.tmpl +201 -201
  196. package/plugins/pbr/skills/setup/SKILL.md +253 -227
  197. package/plugins/pbr/skills/shared/commit-planning-docs.md +35 -35
  198. package/plugins/pbr/skills/shared/config-loading.md +102 -102
  199. package/plugins/pbr/skills/shared/context-budget.md +40 -40
  200. package/plugins/pbr/skills/shared/context-loader-task.md +86 -86
  201. package/plugins/pbr/skills/shared/digest-select.md +79 -79
  202. package/plugins/pbr/skills/shared/domain-probes.md +125 -125
  203. package/plugins/pbr/skills/shared/error-reporting.md +79 -79
  204. package/plugins/pbr/skills/shared/gate-prompts.md +388 -388
  205. package/plugins/pbr/skills/shared/phase-argument-parsing.md +45 -45
  206. package/plugins/pbr/skills/shared/progress-display.md +53 -53
  207. package/plugins/pbr/skills/shared/revision-loop.md +81 -81
  208. package/plugins/pbr/skills/shared/state-loading.md +62 -62
  209. package/plugins/pbr/skills/shared/state-update.md +161 -161
  210. package/plugins/pbr/skills/shared/universal-anti-patterns.md +33 -33
  211. package/plugins/pbr/skills/status/SKILL.md +367 -353
  212. package/plugins/pbr/skills/todo/SKILL.md +198 -181
  213. package/plugins/pbr/templates/CONTEXT.md.tmpl +52 -52
  214. package/plugins/pbr/templates/INTEGRATION-REPORT.md.tmpl +151 -151
  215. package/plugins/pbr/templates/RESEARCH-SUMMARY.md.tmpl +97 -97
  216. package/plugins/pbr/templates/ROADMAP.md.tmpl +40 -40
  217. package/plugins/pbr/templates/SUMMARY.md.tmpl +81 -81
  218. package/plugins/pbr/templates/VERIFICATION-DETAIL.md.tmpl +116 -116
  219. package/plugins/pbr/templates/codebase/ARCHITECTURE.md.tmpl +98 -98
  220. package/plugins/pbr/templates/codebase/CONCERNS.md.tmpl +93 -93
  221. package/plugins/pbr/templates/codebase/CONVENTIONS.md.tmpl +104 -104
  222. package/plugins/pbr/templates/codebase/INTEGRATIONS.md.tmpl +78 -78
  223. package/plugins/pbr/templates/codebase/STACK.md.tmpl +78 -78
  224. package/plugins/pbr/templates/codebase/STRUCTURE.md.tmpl +80 -80
  225. package/plugins/pbr/templates/codebase/TESTING.md.tmpl +107 -107
  226. package/plugins/pbr/templates/continue-here.md.tmpl +73 -73
  227. package/plugins/pbr/templates/prompt-partials/phase-project-context.md.tmpl +37 -37
  228. package/plugins/pbr/templates/research/ARCHITECTURE.md.tmpl +124 -124
  229. package/plugins/pbr/templates/research/STACK.md.tmpl +71 -71
  230. package/plugins/pbr/templates/research/SUMMARY.md.tmpl +112 -112
  231. package/plugins/pbr/templates/research-outputs/phase-research.md.tmpl +81 -81
  232. package/plugins/pbr/templates/research-outputs/project-research.md.tmpl +99 -99
  233. 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}