@hailer/mcp 1.1.13 → 1.1.15

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 (176) hide show
  1. package/.claude/.context-watchdog.json +1 -0
  2. package/.claude/.session-checked +1 -0
  3. package/.claude/CLAUDE.md +370 -0
  4. package/.claude/agents/agent-ada-skill-builder.md +94 -0
  5. package/.claude/agents/agent-alejandro-function-fields.md +342 -0
  6. package/.claude/agents/agent-bjorn-config-audit.md +103 -0
  7. package/.claude/agents/agent-builder-agent-creator.md +130 -0
  8. package/.claude/agents/agent-code-simplifier.md +53 -0
  9. package/.claude/agents/agent-dmitri-activity-crud.md +159 -0
  10. package/.claude/agents/agent-giuseppe-app-builder.md +208 -0
  11. package/.claude/agents/agent-gunther-mcp-tools.md +39 -0
  12. package/.claude/agents/agent-helga-workflow-config.md +204 -0
  13. package/.claude/agents/agent-igor-activity-mover-automation.md +125 -0
  14. package/.claude/agents/agent-ingrid-doc-templates.md +261 -0
  15. package/.claude/agents/agent-ivan-monolith.md +154 -0
  16. package/.claude/agents/agent-kenji-data-reader.md +86 -0
  17. package/.claude/agents/agent-lars-code-inspector.md +102 -0
  18. package/.claude/agents/agent-marco-mockup-builder.md +110 -0
  19. package/.claude/agents/agent-marcus-api-documenter.md +323 -0
  20. package/.claude/agents/agent-marketplace-publisher.md +280 -0
  21. package/.claude/agents/agent-marketplace-reviewer.md +309 -0
  22. package/.claude/agents/agent-permissions-handler.md +208 -0
  23. package/.claude/agents/agent-simple-writer.md +48 -0
  24. package/.claude/agents/agent-svetlana-code-review.md +171 -0
  25. package/.claude/agents/agent-tanya-test-runner.md +333 -0
  26. package/.claude/agents/agent-ui-designer.md +100 -0
  27. package/.claude/agents/agent-viktor-sql-insights.md +212 -0
  28. package/.claude/agents/agent-web-search.md +55 -0
  29. package/.claude/agents/agent-yevgeni-discussions.md +45 -0
  30. package/.claude/agents/agent-zara-zapier.md +159 -0
  31. package/.claude/agents/ragnar.md +68 -0
  32. package/.claude/commands/app-squad.md +135 -0
  33. package/.claude/commands/audit-squad.md +158 -0
  34. package/.claude/commands/autoplan.md +563 -0
  35. package/.claude/commands/cleanup-squad.md +98 -0
  36. package/.claude/commands/config-squad.md +106 -0
  37. package/.claude/commands/crud-squad.md +87 -0
  38. package/.claude/commands/data-squad.md +97 -0
  39. package/.claude/commands/debug-squad.md +303 -0
  40. package/.claude/commands/doc-squad.md +65 -0
  41. package/.claude/commands/handoff.md +137 -0
  42. package/.claude/commands/health.md +49 -0
  43. package/.claude/commands/help.md +29 -0
  44. package/.claude/commands/help:agents.md +151 -0
  45. package/.claude/commands/help:commands.md +78 -0
  46. package/.claude/commands/help:faq.md +79 -0
  47. package/.claude/commands/help:plugins.md +50 -0
  48. package/.claude/commands/help:skills.md +93 -0
  49. package/.claude/commands/help:tools.md +75 -0
  50. package/.claude/commands/hotfix-squad.md +112 -0
  51. package/.claude/commands/integration-squad.md +82 -0
  52. package/.claude/commands/janitor-squad.md +167 -0
  53. package/.claude/commands/learn-auto.md +120 -0
  54. package/.claude/commands/learn.md +120 -0
  55. package/.claude/commands/mcp-list.md +27 -0
  56. package/.claude/commands/onboard-squad.md +140 -0
  57. package/.claude/commands/plan-workspace.md +732 -0
  58. package/.claude/commands/prd.md +130 -0
  59. package/.claude/commands/project-status.md +82 -0
  60. package/.claude/commands/publish.md +138 -0
  61. package/.claude/commands/recap.md +69 -0
  62. package/.claude/commands/restore.md +64 -0
  63. package/.claude/commands/review-squad.md +152 -0
  64. package/.claude/commands/save.md +24 -0
  65. package/.claude/commands/stats.md +19 -0
  66. package/.claude/commands/swarm.md +210 -0
  67. package/.claude/commands/tool-builder.md +39 -0
  68. package/.claude/commands/ws-pull.md +44 -0
  69. package/.claude/skills/SDK-activity-patterns/SKILL.md +428 -0
  70. package/.claude/skills/SDK-document-templates/SKILL.md +1033 -0
  71. package/.claude/skills/SDK-function-fields/SKILL.md +542 -0
  72. package/.claude/skills/SDK-generate-skill/SKILL.md +92 -0
  73. package/.claude/skills/SDK-init-skill/SKILL.md +127 -0
  74. package/.claude/skills/SDK-insight-queries/SKILL.md +787 -0
  75. package/.claude/skills/SDK-ws-config-skill/SKILL.md +1139 -0
  76. package/.claude/skills/agent-structure/SKILL.md +98 -0
  77. package/.claude/skills/api-documentation-patterns/SKILL.md +474 -0
  78. package/.claude/skills/chrome-mcp-reference/SKILL.md +370 -0
  79. package/.claude/skills/delegation-routing/SKILL.md +202 -0
  80. package/.claude/skills/frontend-design/SKILL.md +254 -0
  81. package/.claude/skills/hailer-activity-mover/SKILL.md +213 -0
  82. package/.claude/skills/hailer-api-client/SKILL.md +518 -0
  83. package/.claude/skills/hailer-app-builder/SKILL.md +1440 -0
  84. package/.claude/skills/hailer-apps-pictures/SKILL.md +269 -0
  85. package/.claude/skills/hailer-design-system/SKILL.md +231 -0
  86. package/.claude/skills/hailer-monolith-automations/SKILL.md +686 -0
  87. package/.claude/skills/hailer-permissions-system/SKILL.md +121 -0
  88. package/.claude/skills/hailer-project-protocol/SKILL.md +488 -0
  89. package/.claude/skills/hailer-rest-api/SKILL.md +61 -0
  90. package/.claude/skills/hailer-rest-api/hailer-activities.md +184 -0
  91. package/.claude/skills/hailer-rest-api/hailer-admin.md +473 -0
  92. package/.claude/skills/hailer-rest-api/hailer-calendar.md +256 -0
  93. package/.claude/skills/hailer-rest-api/hailer-feed.md +249 -0
  94. package/.claude/skills/hailer-rest-api/hailer-insights.md +195 -0
  95. package/.claude/skills/hailer-rest-api/hailer-messaging.md +276 -0
  96. package/.claude/skills/hailer-rest-api/hailer-workflows.md +283 -0
  97. package/.claude/skills/insight-join-patterns/SKILL.md +174 -0
  98. package/.claude/skills/integration-patterns/SKILL.md +421 -0
  99. package/.claude/skills/json-only-output/SKILL.md +72 -0
  100. package/.claude/skills/lsp-setup/SKILL.md +160 -0
  101. package/.claude/skills/mcp-direct-tools/SKILL.md +153 -0
  102. package/.claude/skills/optional-parameters/SKILL.md +72 -0
  103. package/.claude/skills/publish-hailer-app/SKILL.md +221 -0
  104. package/.claude/skills/testing-patterns/SKILL.md +630 -0
  105. package/.claude/skills/tool-builder/SKILL.md +250 -0
  106. package/.claude/skills/tool-parameter-usage/SKILL.md +126 -0
  107. package/.claude/skills/tool-response-verification/SKILL.md +92 -0
  108. package/.claude/skills/zapier-hailer-patterns/SKILL.md +581 -0
  109. package/.opencode/agent/agent-ada-skill-builder.md +35 -0
  110. package/.opencode/agent/agent-alejandro-function-fields.md +39 -0
  111. package/.opencode/agent/agent-bjorn-config-audit.md +36 -0
  112. package/.opencode/agent/agent-builder-agent-creator.md +39 -0
  113. package/.opencode/agent/agent-code-simplifier.md +31 -0
  114. package/.opencode/agent/agent-dmitri-activity-crud.md +40 -0
  115. package/.opencode/agent/agent-giuseppe-app-builder.md +37 -0
  116. package/.opencode/agent/agent-gunther-mcp-tools.md +39 -0
  117. package/.opencode/agent/agent-helga-workflow-config.md +204 -0
  118. package/.opencode/agent/agent-igor-activity-mover-automation.md +46 -0
  119. package/.opencode/agent/agent-ingrid-doc-templates.md +39 -0
  120. package/.opencode/agent/agent-ivan-monolith.md +46 -0
  121. package/.opencode/agent/agent-kenji-data-reader.md +53 -0
  122. package/.opencode/agent/agent-lars-code-inspector.md +28 -0
  123. package/.opencode/agent/agent-marco-mockup-builder.md +42 -0
  124. package/.opencode/agent/agent-marcus-api-documenter.md +53 -0
  125. package/.opencode/agent/agent-marketplace-publisher.md +44 -0
  126. package/.opencode/agent/agent-marketplace-reviewer.md +42 -0
  127. package/.opencode/agent/agent-permissions-handler.md +50 -0
  128. package/.opencode/agent/agent-simple-writer.md +45 -0
  129. package/.opencode/agent/agent-svetlana-code-review.md +39 -0
  130. package/.opencode/agent/agent-tanya-test-runner.md +57 -0
  131. package/.opencode/agent/agent-ui-designer.md +56 -0
  132. package/.opencode/agent/agent-viktor-sql-insights.md +34 -0
  133. package/.opencode/agent/agent-web-search.md +42 -0
  134. package/.opencode/agent/agent-yevgeni-discussions.md +37 -0
  135. package/.opencode/agent/agent-zara-zapier.md +53 -0
  136. package/.opencode/commands/app-squad.md +135 -0
  137. package/.opencode/commands/audit-squad.md +158 -0
  138. package/.opencode/commands/autoplan.md +563 -0
  139. package/.opencode/commands/cleanup-squad.md +98 -0
  140. package/.opencode/commands/config-squad.md +106 -0
  141. package/.opencode/commands/crud-squad.md +87 -0
  142. package/.opencode/commands/data-squad.md +97 -0
  143. package/.opencode/commands/debug-squad.md +303 -0
  144. package/.opencode/commands/doc-squad.md +65 -0
  145. package/.opencode/commands/handoff.md +137 -0
  146. package/.opencode/commands/health.md +49 -0
  147. package/.opencode/commands/help-agents.md +151 -0
  148. package/.opencode/commands/help-commands.md +32 -0
  149. package/.opencode/commands/help-faq.md +29 -0
  150. package/.opencode/commands/help-plugins.md +28 -0
  151. package/.opencode/commands/help-skills.md +7 -0
  152. package/.opencode/commands/help-tools.md +40 -0
  153. package/.opencode/commands/help.md +28 -0
  154. package/.opencode/commands/hotfix-squad.md +112 -0
  155. package/.opencode/commands/integration-squad.md +82 -0
  156. package/.opencode/commands/janitor-squad.md +167 -0
  157. package/.opencode/commands/learn-auto.md +120 -0
  158. package/.opencode/commands/learn.md +120 -0
  159. package/.opencode/commands/mcp-list.md +27 -0
  160. package/.opencode/commands/onboard-squad.md +140 -0
  161. package/.opencode/commands/plan-workspace.md +732 -0
  162. package/.opencode/commands/prd.md +131 -0
  163. package/.opencode/commands/project-status.md +82 -0
  164. package/.opencode/commands/publish.md +138 -0
  165. package/.opencode/commands/recap.md +69 -0
  166. package/.opencode/commands/restore.md +64 -0
  167. package/.opencode/commands/review-squad.md +152 -0
  168. package/.opencode/commands/save.md +24 -0
  169. package/.opencode/commands/stats.md +19 -0
  170. package/.opencode/commands/swarm.md +210 -0
  171. package/.opencode/commands/tool-builder.md +39 -0
  172. package/.opencode/commands/ws-pull.md +44 -0
  173. package/.opencode/opencode.json +21 -0
  174. package/package.json +1 -1
  175. package/scripts/postinstall.cjs +64 -0
  176. package/scripts/test-hal-tools.ts +154 -0
@@ -0,0 +1,563 @@
1
+ ---
2
+ description: Create project plan with workspace structure and PRDs
3
+ argument-hint: <project description>
4
+ ---
5
+ # Autoplan Command
6
+
7
+ Create a complete project plan: workspace structure, DEVELOPMENT.md (big picture), and PRDs (feature details).
8
+
9
+ ## Usage
10
+ ```
11
+ /autoplan "Build a booking system with customer portal and admin dashboard"
12
+ ```
13
+
14
+ ## Instructions
15
+
16
+ ### Phase 1: Understand the Project
17
+
18
+ 1. **Parse the prompt** - Identify:
19
+ - Project name/purpose
20
+ - Individual features/apps mentioned
21
+ - Any technical requirements mentioned
22
+
23
+ 2. **Detect project state:**
24
+
25
+ | Indicator | State | Action |
26
+ |-----------|-------|--------|
27
+ | Has `workspace/` with workflows | Existing Hailer | Audit first, then plan additions |
28
+ | Has `workspace/` empty/minimal | New Hailer | Plan from scratch |
29
+ | Has `DEVELOPMENT.md` | Existing project | Read it, plan additions |
30
+ | Nothing | New project | Plan from scratch |
31
+
32
+ 3. **For EXISTING Hailer projects — audit first:**
33
+
34
+ ```bash
35
+ # Read what already exists
36
+ ls workspace/ # List workflows
37
+ ls apps/ 2>/dev/null # List apps (if any)
38
+ ls docs/prd-*.md 2>/dev/null # List existing PRDs
39
+ ```
40
+
41
+ Use Kenji agent to read:
42
+ - Existing workflows and their fields/phases
43
+ - Existing insights
44
+ - Existing apps and their purpose
45
+
46
+ **Then ask:**
47
+ - What do you want to ADD to this project?
48
+ - Any existing features need changes?
49
+
50
+ 4. **For NEW Hailer projects:**
51
+ - What workflows/data do you need?
52
+ - Need custom apps? (or just use built-in UI)
53
+ - If apps: Public or authenticated?
54
+
55
+ 5. **For standard projects:**
56
+ - Tech stack preferences?
57
+ - Any existing codebase to integrate with?
58
+
59
+ 6. **Apply design patterns** (see below) when structuring workflows.
60
+
61
+ ---
62
+
63
+ ## Design Patterns (Quick Reference)
64
+
65
+ ### Workflow Structure
66
+
67
+ **Header + Rows (Two Workflows)**
68
+ Any entity with line items needs two workflows:
69
+ - Sales Orders → Order Rows (link to Products, Services)
70
+ - Purchase Orders → PO Rows
71
+ - Invoices → Invoice Rows (or link to existing Order Rows)
72
+ - Quotes → Quote Lines
73
+
74
+ **Row Source Flexibility:** Order rows can link to multiple catalogs (Products, Services, Materials) - use separate row workflows when types differ significantly.
75
+
76
+ **Dataset vs Workflow**
77
+ - **Dataset:** Static/reference data (Products, Customers) - phases are categories, activities don't transition
78
+ - **Workflow:** Lifecycle data (Orders, Invoices) - phases are stages, activities progress through them
79
+
80
+ **Master Data vs Transactional**
81
+ - Master data: `enableUnlinkedMode: true` - Customers, Products, Suppliers
82
+ - Transactional: `enableUnlinkedMode: false` - Orders, Invoices, Rows
83
+
84
+ **Phase-Specific Field Visibility**
85
+ Different phases can show different fields:
86
+ - Workflow: Draft (basic fields) → Confirmed (+ date, by) → Shipped (+ tracking)
87
+ - Dataset: Products (dimensions, weight) vs Services (hourly rate, duration)
88
+
89
+ **Domain Prefixes (30+ workflows):** Use `INV-`, `MYY-`, `OST-`, `VH-` prefixes to organize.
90
+
91
+ ---
92
+
93
+ ### Row Lifecycle
94
+
95
+ **Pattern A: Rows progress through phases**
96
+ ```
97
+ Order Row → "Ordered" → "Shipped" → "Invoiced"
98
+ ```
99
+ Use when: Simple 1:1 process, no integrations
100
+
101
+ **Pattern B: Rows generate new activities**
102
+ ```
103
+ Order Row → creates → Invoice Row
104
+ ```
105
+ Use when: Partial invoicing, consolidated invoicing, accounting integration, different pricing
106
+
107
+ ---
108
+
109
+ ### Integration Patterns
110
+
111
+ | Need | Solution |
112
+ |------|----------|
113
+ | Phase cascades | Activity Mover |
114
+ | Simple notifications | Zapier webhooks |
115
+ | Complex automations | Project Monolith |
116
+ | No integration | Export insight (CSV) |
117
+
118
+ ---
119
+
120
+ ### Document Templates
121
+
122
+ For invoices, quotes, order confirmations - pull header + linked rows into PDF.
123
+
124
+ ### Phase 2: Create Project Structure
125
+
126
+ **For Hailer projects:**
127
+
128
+ Note: `workspace/` is created by the Hailer SDK, not manually. It starts with one workflow.
129
+
130
+ ```bash
131
+ # Only create if custom apps are needed
132
+ mkdir -p apps
133
+ mkdir -p docs
134
+
135
+ # Copy Hailer agents/skills/hooks if not present
136
+ # (suggest running /setup-hailer)
137
+ ```
138
+
139
+ **For standard projects:**
140
+ ```bash
141
+ mkdir -p docs
142
+ mkdir -p apps # Only if multiple apps mentioned
143
+ ```
144
+
145
+ ### Phase 3: Create/Update DEVELOPMENT.md
146
+
147
+ **For EXISTING projects:**
148
+ - If DEVELOPMENT.md exists → READ it first, then UPDATE (don't overwrite)
149
+ - Add new features to existing Roadmap table
150
+ - Document existing workflows/apps if not already documented
151
+ - Preserve existing Technical Decisions
152
+
153
+ **For NEW projects:** Create from scratch using templates below.
154
+
155
+ ---
156
+
157
+ **For Hailer projects:**
158
+
159
+ ```markdown
160
+ # [Project Name]
161
+
162
+ **Type:** Hailer SDK Project
163
+ **Workspace:** [workspace name in Hailer]
164
+ **Run:** `npm run dev` (if apps)
165
+
166
+ ---
167
+
168
+ ## What This Project Does
169
+ [2-3 sentences from the prompt]
170
+
171
+ ---
172
+
173
+ ## Data Model (Workflows)
174
+
175
+ | Workflow | Purpose | Key Fields |
176
+ |----------|---------|------------|
177
+ | [Workflow 1] | [What it stores] | [Important fields] |
178
+ | [Workflow 2] | [What it stores] | [Important fields] |
179
+
180
+ ---
181
+
182
+ ## Apps
183
+
184
+ | App | Type | Description |
185
+ |-----|------|-------------|
186
+ | [app-name] | Public / Authenticated | [What it does] |
187
+
188
+ **Public apps** use public insights (no login required)
189
+ **Authenticated apps** use Hailer user management
190
+
191
+ ---
192
+
193
+ ## Architecture
194
+
195
+ ```
196
+ project/
197
+ ├── workspace/ # Data model (SDK-managed)
198
+ │ └── [Workflow]_id/ # Fields, phases, functions
199
+ ├── apps/ # Custom frontends (if needed)
200
+ │ └── [app-name]/
201
+ └── docs/
202
+ └── prd-*.md
203
+ ```
204
+
205
+ ---
206
+
207
+ ## Roadmap
208
+
209
+ | Feature | PRD | Status |
210
+ |---------|-----|--------|
211
+ | [Workflow: Name] | [docs/prd-workflow-name.md](docs/prd-workflow-name.md) | Planned |
212
+ | [App: Name] | [docs/prd-app-name.md](docs/prd-app-name.md) | Planned |
213
+ | [Insight: Name] | [docs/prd-insight-name.md](docs/prd-insight-name.md) | Planned |
214
+
215
+ ---
216
+
217
+ ## Current Status
218
+ **Active:** Planning phase
219
+ **Blocked:** None
220
+
221
+ ---
222
+
223
+ ## Known Issues
224
+ - [ ] None yet
225
+
226
+ ---
227
+
228
+ ## Technical Decisions
229
+ | Decision | Rationale | Date |
230
+ |----------|-----------|------|
231
+ ```
232
+
233
+ **For standard projects:**
234
+
235
+ ```markdown
236
+ # [Project Name]
237
+
238
+ **Stack:** [Detected or asked]
239
+ **Entry:** [Main entry point]
240
+ **Run:** [Dev command]
241
+
242
+ ---
243
+
244
+ ## What This Project Does
245
+ [2-3 sentences from the prompt]
246
+
247
+ ---
248
+
249
+ ## Architecture
250
+
251
+ ```
252
+ project/
253
+ ├── apps/
254
+ │ └── [app-name]/
255
+ ├── docs/
256
+ │ └── prd-*.md
257
+ └── [other relevant dirs]
258
+ ```
259
+
260
+ ---
261
+
262
+ ## Roadmap
263
+
264
+ | Feature | PRD | Status |
265
+ |---------|-----|--------|
266
+ | [Feature 1] | [docs/prd-feature-1.md](docs/prd-feature-1.md) | Planned |
267
+
268
+ ---
269
+
270
+ ## Current Status
271
+ **Active:** Planning phase
272
+ **Blocked:** None
273
+
274
+ ---
275
+
276
+ ## Known Issues
277
+ - [ ] None yet
278
+
279
+ ---
280
+
281
+ ## Technical Decisions
282
+ | Decision | Rationale | Date |
283
+ |----------|-----------|------|
284
+ ```
285
+
286
+ ### Phase 4: Create PRDs for New Features
287
+
288
+ **For EXISTING projects:**
289
+ - Check `docs/prd-*.md` for existing PRDs
290
+ - Only create PRDs for NEW features being added
291
+ - Don't duplicate existing documentation
292
+ - If existing feature needs changes → update existing PRD or create a new one with `-v2` suffix
293
+
294
+ **For Hailer projects, create PRDs by type:**
295
+
296
+ **Workflow PRD** (`docs/prd-workflow-[name].md`):
297
+ ```markdown
298
+ # PRD: Workflow - [Name]
299
+
300
+ **Status:** Planned
301
+ **Created:** YYYY-MM-DD
302
+ **Parent:** [DEVELOPMENT.md](../DEVELOPMENT.md)
303
+
304
+ ---
305
+
306
+ ## Purpose
307
+ [What data this workflow stores and why]
308
+
309
+ ---
310
+
311
+ ## Fields
312
+
313
+ | Field | Type | Required | Description |
314
+ |-------|------|----------|-------------|
315
+ | [name] | text/date/dropdown/link/etc | Yes/No | [purpose] |
316
+
317
+ ---
318
+
319
+ ## Phases
320
+
321
+ | Phase | Description | Visible Fields |
322
+ |-------|-------------|----------------|
323
+ | [phase] | [when activity is in this state] | [which fields show] |
324
+
325
+ ---
326
+
327
+ ## Function Fields (calculated values)
328
+
329
+ | Field | Type | Formula/Logic | Variables |
330
+ |-------|------|---------------|-----------|
331
+ | [total] | function | qty × price | qty, price |
332
+ | [days_open] | function | today - created_date | created_date |
333
+ | [status_text] | function | if priority=high → "🔴" | priority |
334
+
335
+ **Common patterns:**
336
+ - Arithmetic: `qty * price`, `subtotal + tax`
337
+ - Date diff: `Math.floor((new Date() - created) / 86400000)`
338
+ - Conditional: `priority === 'high' ? '🔴 Urgent' : '🟢 Normal'`
339
+ - Backlink count: Count linked activities from another workflow
340
+
341
+ ---
342
+
343
+ ## Name Function
344
+
345
+ **Pattern:** `[prefix]-[number] [distinctive field]`
346
+ **Example:** `ORD-001 Acme Corp`
347
+ **Key field:** [which field makes activities identifiable]
348
+
349
+ ---
350
+
351
+ ## Implementation Steps
352
+ 1. [ ] Add workflow via SDK
353
+ 2. [ ] Define fields in fields.ts
354
+ 3. [ ] Define phases in phases.ts
355
+ 4. [ ] Push and pull (get IDs) - Helga auto-spawns Alejandro for nameFunction + function fields (if any)
356
+ 5. [ ] Verify in Hailer
357
+
358
+ ---
359
+
360
+ ## Verification
361
+ - [ ] Workflow appears in Hailer
362
+ - [ ] All fields work correctly
363
+ - [ ] Phase transitions work
364
+ ```
365
+
366
+ **App PRD** (`docs/prd-app-[name].md`):
367
+ ```markdown
368
+ # PRD: App - [Name]
369
+
370
+ **Status:** Planned
371
+ **Created:** YYYY-MM-DD
372
+ **Parent:** [DEVELOPMENT.md](../DEVELOPMENT.md)
373
+ **Type:** Public / Authenticated
374
+
375
+ ---
376
+
377
+ ## Purpose
378
+ [What this app does for users]
379
+
380
+ ---
381
+
382
+ ## Data Sources
383
+ - **Workflow:** [which workflow(s) it reads/writes]
384
+ - **Insight:** [which insight(s) power the views]
385
+ - **Public insight?** [Yes = public app possible, No = requires auth]
386
+
387
+ ---
388
+
389
+ ## Data Access (Phase Rationalization)
390
+
391
+ | View | Phases Fetched | Rationale |
392
+ |------|----------------|-----------|
393
+ | [Main list] | [which phases] | [why these phases for this user] |
394
+ | [Dashboard] | [which phases] | [why] |
395
+
396
+ ---
397
+
398
+ ## User Stories
399
+ - As a [user type], I want to [action] so that [benefit]
400
+
401
+ ---
402
+
403
+ ## Screens/Views
404
+ 1. [Screen name] - [what it shows]
405
+ 2. [Screen name] - [what it shows]
406
+
407
+ ---
408
+
409
+ ## Implementation Steps
410
+ 1. [ ] Create insight for data (if needed)
411
+ 2. [ ] Scaffold app with MCP tool
412
+ 3. [ ] Build components
413
+ 4. [ ] Connect to Hailer data
414
+ 5. [ ] Test and deploy
415
+
416
+ ---
417
+
418
+ ## Verification
419
+ - [ ] App loads correctly
420
+ - [ ] Data displays from Hailer
421
+ - [ ] User actions work (if authenticated)
422
+ ```
423
+
424
+ **Insight PRD** (`docs/prd-insight-[name].md`):
425
+ ```markdown
426
+ # PRD: Insight - [Name]
427
+
428
+ **Status:** Planned
429
+ **Created:** YYYY-MM-DD
430
+ **Parent:** [DEVELOPMENT.md](../DEVELOPMENT.md)
431
+ **Public:** Yes / No
432
+
433
+ ---
434
+
435
+ ## Purpose
436
+ [What data this insight provides and for what use]
437
+
438
+ ---
439
+
440
+ ## Query Design
441
+ - **Source workflow(s):** [which workflows]
442
+ - **Joins:** [if linking workflows]
443
+ - **Filters:** [default filters]
444
+ - **Grouping:** [if aggregating]
445
+
446
+ ---
447
+
448
+ ## Output Fields
449
+ | Field | Source | Description |
450
+ |-------|--------|-------------|
451
+ | [name] | [workflow.field] | [purpose] |
452
+
453
+ ---
454
+
455
+ ## Implementation Steps
456
+ 1. [ ] Create insight via Viktor agent
457
+ 2. [ ] Test query results
458
+ 3. [ ] Set public flag (if needed for public app)
459
+
460
+ ---
461
+
462
+ ## Verification
463
+ - [ ] Insight returns correct data
464
+ - [ ] Performance is acceptable
465
+ ```
466
+
467
+ **For standard projects:**
468
+
469
+ ```markdown
470
+ # PRD: [Feature Name]
471
+
472
+ **Status:** Planned
473
+ **Created:** YYYY-MM-DD
474
+ **Parent:** [DEVELOPMENT.md](../DEVELOPMENT.md)
475
+
476
+ ---
477
+
478
+ ## Overview
479
+ [What this feature does, 2-3 sentences]
480
+
481
+ ---
482
+
483
+ ## User Stories
484
+ - As a [user type], I want to [action] so that [benefit]
485
+
486
+ ---
487
+
488
+ ## Requirements
489
+
490
+ ### Must Have
491
+ - [ ] Requirement 1
492
+ - [ ] Requirement 2
493
+
494
+ ### Nice to Have
495
+ - [ ] Optional requirement
496
+
497
+ ---
498
+
499
+ ## Technical Approach
500
+ [How to implement - key files, patterns, integrations]
501
+
502
+ **Files to create/modify:**
503
+ - `path/to/file` - [purpose]
504
+
505
+ ---
506
+
507
+ ## Implementation Steps
508
+ 1. [ ] Step 1 with file references
509
+ 2. [ ] Step 2 with file references
510
+
511
+ ---
512
+
513
+ ## Verification
514
+ - [ ] How to test this feature works
515
+
516
+ ---
517
+
518
+ ## Open Questions
519
+ - [Any unresolved decisions]
520
+ ```
521
+
522
+ ### Phase 5: Report
523
+
524
+ **For NEW projects:**
525
+ ```
526
+ ## Project Planned: [Name]
527
+
528
+ **Created:**
529
+ - DEVELOPMENT.md (big picture)
530
+ - docs/prd-feature-1.md
531
+ - docs/prd-feature-2.md
532
+ - Directory structure
533
+
534
+ **Next steps:**
535
+ 1. Review PRDs and refine requirements
536
+ 2. Start building from a PRD: review requirements, then implement
537
+ ```
538
+
539
+ **For EXISTING projects:**
540
+ ```
541
+ ## Project Updated: [Name]
542
+
543
+ **Existing (documented):**
544
+ - [X workflows already in place]
545
+ - [X apps already built]
546
+ - [X existing PRDs]
547
+
548
+ **Added:**
549
+ - Updated DEVELOPMENT.md with current state
550
+ - docs/prd-new-feature.md
551
+
552
+ **Next steps:**
553
+ 1. Review new PRDs
554
+ 2. Start implementing from the PRD
555
+ ```
556
+
557
+ ## Important
558
+
559
+ - **Big picture → DEVELOPMENT.md** (architecture, roadmap, status)
560
+ - **Feature details → PRDs** (requirements, steps, verification)
561
+ - PRDs are linked from DEVELOPMENT.md roadmap table
562
+ - Each PRD is self-contained but references parent DEVELOPMENT.md
563
+ - Don't start implementing - only plan
@@ -0,0 +1,98 @@
1
+ ---
2
+ description: Clean up codebase with Bjorn, Code Simplifier, and Lars
3
+ argument-hint: [files, directory, or blank for recent changes]
4
+ allowed-tools: Task, Bash
5
+ ---
6
+ # Cleanup Squad
7
+
8
+ Run parallel codebase cleanup using three agents simultaneously.
9
+
10
+ **Agents:**
11
+ - **Bjorn** - Configuration audit (verify CLAUDE.md, hooks, workspace structure)
12
+ - **Code Simplifier** - Refactor (improve code clarity and maintainability)
13
+ - **Lars** - Dead code detection (find unused imports, dead code, type errors)
14
+
15
+ **Target:** $ARGUMENTS (if blank, use recent git changes)
16
+
17
+ **Changed files (auto-injected):**
18
+ !git diff --name-only HEAD
19
+
20
+ ## Protocol
21
+
22
+ ### Step 1: Determine Target
23
+
24
+ If `$ARGUMENTS` has specific files/directories, use those.
25
+ Otherwise, use the changed files list above as the target.
26
+
27
+ If `$ARGUMENTS` contains `--skip-config`:
28
+ - Remove flag from target
29
+ - Skip Bjorn in Step 2
30
+
31
+ If `$ARGUMENTS` contains `--skip-dead-code`:
32
+ - Remove flag from target
33
+ - Skip Lars in Step 2
34
+
35
+ ### Step 2: Launch Agents in Parallel
36
+
37
+ Spawn all agents simultaneously using multiple Task tool calls in a single message:
38
+
39
+ **Bjorn:**
40
+ ```
41
+ Task(subagent_type="agent-bjorn-config-audit", prompt="Audit codebase configuration for: [TARGET]. Check:\n- CLAUDE.md accuracy and completeness\n- Hook configurations\n- Workspace structure\n- Agent definitions\n\nReturn list of issues found with severity levels.")
42
+ ```
43
+
44
+ **Code Simplifier:**
45
+ ```
46
+ Task(subagent_type="agent-code-simplifier", prompt="Refactor these files for clarity and maintainability: [TARGET]. Focus on:\n- Variable naming\n- Function complexity\n- Comment clarity\n- Code organization\n\nReturn refactoring suggestions with before/after examples.")
47
+ ```
48
+
49
+ **Lars:**
50
+ ```
51
+ Task(subagent_type="agent-lars-code-inspector", prompt="Inspect these files for dead code: [TARGET]. Find:\n- Unused imports\n- Unreachable code\n- Unused variables\n- Type errors\n\nUse LSP if available. Return detailed list grouped by file.")
52
+ ```
53
+
54
+ ### Step 3: Aggregate Results
55
+
56
+ Compile a unified cleanup report:
57
+
58
+ ```markdown
59
+ ## Cleanup Squad Report
60
+
61
+ ### Bjorn (Config Audit)
62
+ - Issues found: X
63
+ - Critical: X
64
+ - Warnings: X
65
+ - [Issues grouped by category]
66
+
67
+ ### Code Simplifier (Refactoring)
68
+ - Files analyzed: X
69
+ - Refactoring suggestions: X
70
+ - [Suggestions grouped by file]
71
+
72
+ ### Lars (Dead Code)
73
+ - Unused imports: X
74
+ - Dead code blocks: X
75
+ - Type errors: X
76
+ - [Details grouped by file]
77
+
78
+ ### Summary
79
+ [Overall assessment of codebase health]
80
+ [Prioritized action items]
81
+
82
+ ### Recommended Order
83
+ 1. [Fix critical config issues first]
84
+ 2. [Remove dead code]
85
+ 3. [Apply refactoring suggestions]
86
+ ```
87
+
88
+ If any agent fails or times out, report partial results from successful agents, note which failed, and offer to re-run individually.
89
+
90
+ ## Options
91
+
92
+ | Flag | Effect |
93
+ |------|--------|
94
+ | `--skip-config` | Skip Bjorn (faster, no config validation) |
95
+ | `--skip-dead-code` | Skip Lars (when LSP not configured) |
96
+ | `--bg` | Run all agents in background mode |
97
+
98
+ If `--bg` is present, launch all agents with `run_in_background: true` and tell the user they'll be notified when complete.