@hailer/mcp 1.1.12 → 1.1.13

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 (271) hide show
  1. package/CHANGELOG.md +0 -7
  2. package/{.claude → dist}/CLAUDE.md +2 -2
  3. package/dist/app.js +18 -5
  4. package/dist/bot/bot-config.d.ts +10 -1
  5. package/dist/bot/bot-config.js +64 -3
  6. package/dist/bot/bot-manager.d.ts +2 -0
  7. package/dist/bot/bot-manager.js +9 -2
  8. package/dist/bot/bot.d.ts +33 -0
  9. package/dist/bot/bot.js +461 -160
  10. package/dist/bot/services/message-classifier.js +17 -0
  11. package/dist/bot/services/permission-guard.d.ts +52 -0
  12. package/dist/bot/services/permission-guard.js +149 -0
  13. package/dist/bot/services/types.d.ts +5 -0
  14. package/dist/bot/services/typing-indicator.d.ts +6 -1
  15. package/dist/bot/services/typing-indicator.js +19 -3
  16. package/dist/cli.js +0 -0
  17. package/dist/config.d.ts +6 -1
  18. package/dist/config.js +43 -0
  19. package/dist/core.js +3 -6
  20. package/dist/lib/discussion-lock.d.ts +42 -0
  21. package/dist/lib/discussion-lock.js +110 -0
  22. package/dist/mcp/UserContextCache.d.ts +5 -0
  23. package/dist/mcp/UserContextCache.js +51 -19
  24. package/dist/mcp/hailer-clients.d.ts +19 -1
  25. package/dist/mcp/hailer-clients.js +158 -24
  26. package/dist/mcp/session-store.d.ts +68 -0
  27. package/dist/mcp/session-store.js +169 -0
  28. package/dist/mcp/signal-handler.js +2 -0
  29. package/dist/mcp/tool-registry.d.ts +17 -4
  30. package/dist/mcp/tool-registry.js +37 -7
  31. package/dist/mcp/tools/activity.js +99 -7
  32. package/dist/mcp/tools/app-scaffold.js +304 -336
  33. package/dist/mcp/tools/bot-config/constants.d.ts +23 -0
  34. package/dist/mcp/tools/bot-config/constants.js +94 -0
  35. package/dist/mcp/tools/bot-config/core.d.ts +253 -0
  36. package/dist/mcp/tools/bot-config/core.js +2456 -0
  37. package/dist/mcp/tools/bot-config/index.d.ts +10 -0
  38. package/dist/mcp/tools/bot-config/index.js +59 -0
  39. package/dist/mcp/tools/bot-config/tools.d.ts +7 -0
  40. package/dist/mcp/tools/bot-config/tools.js +15 -0
  41. package/dist/mcp/tools/bot-config/types.d.ts +50 -0
  42. package/dist/mcp/tools/bot-config/types.js +6 -0
  43. package/dist/mcp/tools/bug-fixer-tools.d.ts +45 -0
  44. package/dist/mcp/tools/bug-fixer-tools.js +1096 -0
  45. package/dist/mcp/tools/company.d.ts +9 -0
  46. package/dist/mcp/tools/company.js +88 -0
  47. package/dist/mcp/tools/discussion.js +68 -0
  48. package/dist/mcp/tools/document.d.ts +11 -0
  49. package/dist/mcp/tools/document.js +741 -0
  50. package/dist/mcp/tools/investigate.d.ts +9 -0
  51. package/dist/mcp/tools/investigate.js +254 -0
  52. package/dist/mcp/tools/workflow-permissions.d.ts +15 -0
  53. package/dist/mcp/tools/workflow-permissions.js +204 -0
  54. package/dist/mcp/tools/workflow.js +57 -18
  55. package/dist/mcp/utils/index.d.ts +2 -0
  56. package/dist/mcp/utils/index.js +12 -1
  57. package/dist/mcp/utils/role-utils.d.ts +74 -0
  58. package/dist/mcp/utils/role-utils.js +151 -0
  59. package/dist/mcp/utils/types.d.ts +43 -1
  60. package/dist/mcp/utils/types.js +14 -0
  61. package/dist/mcp/webhook-handler.d.ts +4 -0
  62. package/dist/mcp/webhook-handler.js +8 -0
  63. package/dist/mcp-server.d.ts +23 -2
  64. package/dist/mcp-server.js +639 -127
  65. package/dist/plugins/vipunen/client.d.ts +150 -0
  66. package/dist/plugins/vipunen/client.js +535 -0
  67. package/dist/plugins/vipunen/config/schema-config.json +19 -0
  68. package/dist/plugins/vipunen/config/schema-doc.json +22 -0
  69. package/dist/plugins/vipunen/index.d.ts +41 -0
  70. package/dist/plugins/vipunen/index.js +88 -0
  71. package/dist/plugins/vipunen/tools.d.ts +26 -0
  72. package/dist/plugins/vipunen/tools.js +501 -0
  73. package/dist/stdio-server.d.ts +14 -0
  74. package/dist/stdio-server.js +101 -0
  75. package/package.json +2 -1
  76. package/.claude/agents/agent-ada-skill-builder.md +0 -94
  77. package/.claude/agents/agent-alejandro-function-fields.md +0 -342
  78. package/.claude/agents/agent-bjorn-config-audit.md +0 -103
  79. package/.claude/agents/agent-builder-agent-creator.md +0 -130
  80. package/.claude/agents/agent-code-simplifier.md +0 -53
  81. package/.claude/agents/agent-dmitri-activity-crud.md +0 -159
  82. package/.claude/agents/agent-giuseppe-app-builder.md +0 -247
  83. package/.claude/agents/agent-gunther-mcp-tools.md +0 -39
  84. package/.claude/agents/agent-helga-workflow-config.md +0 -204
  85. package/.claude/agents/agent-igor-activity-mover-automation.md +0 -125
  86. package/.claude/agents/agent-ingrid-doc-templates.md +0 -261
  87. package/.claude/agents/agent-ivan-monolith.md +0 -154
  88. package/.claude/agents/agent-kenji-data-reader.md +0 -86
  89. package/.claude/agents/agent-lars-code-inspector.md +0 -102
  90. package/.claude/agents/agent-marco-mockup-builder.md +0 -110
  91. package/.claude/agents/agent-marcus-api-documenter.md +0 -323
  92. package/.claude/agents/agent-marketplace-publisher.md +0 -280
  93. package/.claude/agents/agent-marketplace-reviewer.md +0 -309
  94. package/.claude/agents/agent-permissions-handler.md +0 -208
  95. package/.claude/agents/agent-simple-writer.md +0 -48
  96. package/.claude/agents/agent-svetlana-code-review.md +0 -171
  97. package/.claude/agents/agent-tanya-test-runner.md +0 -333
  98. package/.claude/agents/agent-ui-designer.md +0 -100
  99. package/.claude/agents/agent-viktor-sql-insights.md +0 -212
  100. package/.claude/agents/agent-web-search.md +0 -55
  101. package/.claude/agents/agent-yevgeni-discussions.md +0 -45
  102. package/.claude/agents/agent-zara-zapier.md +0 -159
  103. package/.claude/commands/app-squad.md +0 -135
  104. package/.claude/commands/audit-squad.md +0 -158
  105. package/.claude/commands/autoplan.md +0 -563
  106. package/.claude/commands/cleanup-squad.md +0 -98
  107. package/.claude/commands/config-squad.md +0 -106
  108. package/.claude/commands/crud-squad.md +0 -87
  109. package/.claude/commands/data-squad.md +0 -97
  110. package/.claude/commands/debug-squad.md +0 -303
  111. package/.claude/commands/doc-squad.md +0 -65
  112. package/.claude/commands/handoff.md +0 -137
  113. package/.claude/commands/health.md +0 -49
  114. package/.claude/commands/help.md +0 -29
  115. package/.claude/commands/help:agents.md +0 -151
  116. package/.claude/commands/help:commands.md +0 -78
  117. package/.claude/commands/help:faq.md +0 -79
  118. package/.claude/commands/help:plugins.md +0 -50
  119. package/.claude/commands/help:skills.md +0 -93
  120. package/.claude/commands/help:tools.md +0 -75
  121. package/.claude/commands/hotfix-squad.md +0 -112
  122. package/.claude/commands/integration-squad.md +0 -82
  123. package/.claude/commands/janitor-squad.md +0 -167
  124. package/.claude/commands/learn-auto.md +0 -120
  125. package/.claude/commands/learn.md +0 -120
  126. package/.claude/commands/mcp-list.md +0 -27
  127. package/.claude/commands/onboard-squad.md +0 -140
  128. package/.claude/commands/plan-workspace.md +0 -732
  129. package/.claude/commands/prd.md +0 -130
  130. package/.claude/commands/project-status.md +0 -82
  131. package/.claude/commands/publish.md +0 -138
  132. package/.claude/commands/recap.md +0 -69
  133. package/.claude/commands/restore.md +0 -64
  134. package/.claude/commands/review-squad.md +0 -152
  135. package/.claude/commands/save.md +0 -24
  136. package/.claude/commands/stats.md +0 -19
  137. package/.claude/commands/swarm.md +0 -210
  138. package/.claude/commands/tool-builder.md +0 -39
  139. package/.claude/commands/ws-pull.md +0 -44
  140. package/.claude/hooks/_shared-memory.cjs +0 -305
  141. package/.claude/hooks/_utils.cjs +0 -108
  142. package/.claude/hooks/agent-failure-detector.cjs +0 -383
  143. package/.claude/hooks/agent-usage-logger.cjs +0 -204
  144. package/.claude/hooks/app-edit-guard.cjs +0 -494
  145. package/.claude/hooks/auto-learn.cjs +0 -304
  146. package/.claude/hooks/bash-guard.cjs +0 -272
  147. package/.claude/hooks/builder-mode-manager.cjs +0 -354
  148. package/.claude/hooks/bulk-activity-guard.cjs +0 -271
  149. package/.claude/hooks/context-watchdog.cjs +0 -230
  150. package/.claude/hooks/delegation-reminder.cjs +0 -465
  151. package/.claude/hooks/design-system-lint.cjs +0 -271
  152. package/.claude/hooks/post-scaffold-hook.cjs +0 -181
  153. package/.claude/hooks/prompt-guard.cjs +0 -354
  154. package/.claude/hooks/publish-template-guard.cjs +0 -147
  155. package/.claude/hooks/session-start.cjs +0 -35
  156. package/.claude/hooks/shared-memory-writer.cjs +0 -147
  157. package/.claude/hooks/skill-injector.cjs +0 -140
  158. package/.claude/hooks/skill-usage-logger.cjs +0 -258
  159. package/.claude/hooks/src-edit-guard.cjs +0 -240
  160. package/.claude/hooks/sync-marketplace-agents.cjs +0 -346
  161. package/.claude/settings.json +0 -257
  162. package/.claude/skills/SDK-activity-patterns/SKILL.md +0 -428
  163. package/.claude/skills/SDK-document-templates/SKILL.md +0 -1033
  164. package/.claude/skills/SDK-function-fields/SKILL.md +0 -542
  165. package/.claude/skills/SDK-generate-skill/SKILL.md +0 -92
  166. package/.claude/skills/SDK-init-skill/SKILL.md +0 -127
  167. package/.claude/skills/SDK-insight-queries/SKILL.md +0 -787
  168. package/.claude/skills/SDK-ws-config-skill/SKILL.md +0 -1139
  169. package/.claude/skills/agent-structure/SKILL.md +0 -98
  170. package/.claude/skills/api-documentation-patterns/SKILL.md +0 -474
  171. package/.claude/skills/chrome-mcp-reference/SKILL.md +0 -370
  172. package/.claude/skills/delegation-routing/SKILL.md +0 -202
  173. package/.claude/skills/frontend-design/SKILL.md +0 -254
  174. package/.claude/skills/hailer-activity-mover/SKILL.md +0 -213
  175. package/.claude/skills/hailer-api-client/SKILL.md +0 -518
  176. package/.claude/skills/hailer-app-builder/SKILL.md +0 -1434
  177. package/.claude/skills/hailer-apps-pictures/SKILL.md +0 -269
  178. package/.claude/skills/hailer-design-system/SKILL.md +0 -235
  179. package/.claude/skills/hailer-monolith-automations/SKILL.md +0 -686
  180. package/.claude/skills/hailer-permissions-system/SKILL.md +0 -121
  181. package/.claude/skills/hailer-project-protocol/SKILL.md +0 -488
  182. package/.claude/skills/hailer-rest-api/SKILL.md +0 -61
  183. package/.claude/skills/hailer-rest-api/hailer-activities.md +0 -184
  184. package/.claude/skills/hailer-rest-api/hailer-admin.md +0 -473
  185. package/.claude/skills/hailer-rest-api/hailer-calendar.md +0 -256
  186. package/.claude/skills/hailer-rest-api/hailer-feed.md +0 -249
  187. package/.claude/skills/hailer-rest-api/hailer-insights.md +0 -195
  188. package/.claude/skills/hailer-rest-api/hailer-messaging.md +0 -276
  189. package/.claude/skills/hailer-rest-api/hailer-workflows.md +0 -283
  190. package/.claude/skills/insight-join-patterns/SKILL.md +0 -174
  191. package/.claude/skills/integration-patterns/SKILL.md +0 -421
  192. package/.claude/skills/json-only-output/SKILL.md +0 -72
  193. package/.claude/skills/lsp-setup/SKILL.md +0 -160
  194. package/.claude/skills/mcp-direct-tools/SKILL.md +0 -153
  195. package/.claude/skills/optional-parameters/SKILL.md +0 -72
  196. package/.claude/skills/publish-hailer-app/SKILL.md +0 -244
  197. package/.claude/skills/testing-patterns/SKILL.md +0 -630
  198. package/.claude/skills/tool-builder/SKILL.md +0 -250
  199. package/.claude/skills/tool-parameter-usage/SKILL.md +0 -126
  200. package/.claude/skills/tool-response-verification/SKILL.md +0 -92
  201. package/.claude/skills/zapier-hailer-patterns/SKILL.md +0 -581
  202. package/.mcp.json +0 -13
  203. package/.opencode/agent/agent-ada-skill-builder.md +0 -35
  204. package/.opencode/agent/agent-alejandro-function-fields.md +0 -39
  205. package/.opencode/agent/agent-bjorn-config-audit.md +0 -36
  206. package/.opencode/agent/agent-builder-agent-creator.md +0 -39
  207. package/.opencode/agent/agent-code-simplifier.md +0 -31
  208. package/.opencode/agent/agent-dmitri-activity-crud.md +0 -40
  209. package/.opencode/agent/agent-giuseppe-app-builder.md +0 -37
  210. package/.opencode/agent/agent-gunther-mcp-tools.md +0 -39
  211. package/.opencode/agent/agent-helga-workflow-config.md +0 -203
  212. package/.opencode/agent/agent-igor-activity-mover-automation.md +0 -46
  213. package/.opencode/agent/agent-ingrid-doc-templates.md +0 -39
  214. package/.opencode/agent/agent-ivan-monolith.md +0 -46
  215. package/.opencode/agent/agent-kenji-data-reader.md +0 -53
  216. package/.opencode/agent/agent-lars-code-inspector.md +0 -28
  217. package/.opencode/agent/agent-marco-mockup-builder.md +0 -42
  218. package/.opencode/agent/agent-marcus-api-documenter.md +0 -53
  219. package/.opencode/agent/agent-marketplace-publisher.md +0 -44
  220. package/.opencode/agent/agent-marketplace-reviewer.md +0 -42
  221. package/.opencode/agent/agent-permissions-handler.md +0 -50
  222. package/.opencode/agent/agent-simple-writer.md +0 -45
  223. package/.opencode/agent/agent-svetlana-code-review.md +0 -39
  224. package/.opencode/agent/agent-tanya-test-runner.md +0 -57
  225. package/.opencode/agent/agent-ui-designer.md +0 -56
  226. package/.opencode/agent/agent-viktor-sql-insights.md +0 -34
  227. package/.opencode/agent/agent-web-search.md +0 -42
  228. package/.opencode/agent/agent-yevgeni-discussions.md +0 -37
  229. package/.opencode/agent/agent-zara-zapier.md +0 -53
  230. package/.opencode/commands/app-squad.md +0 -135
  231. package/.opencode/commands/audit-squad.md +0 -158
  232. package/.opencode/commands/autoplan.md +0 -563
  233. package/.opencode/commands/cleanup-squad.md +0 -98
  234. package/.opencode/commands/config-squad.md +0 -106
  235. package/.opencode/commands/crud-squad.md +0 -87
  236. package/.opencode/commands/data-squad.md +0 -97
  237. package/.opencode/commands/debug-squad.md +0 -303
  238. package/.opencode/commands/doc-squad.md +0 -65
  239. package/.opencode/commands/handoff.md +0 -137
  240. package/.opencode/commands/health.md +0 -49
  241. package/.opencode/commands/help-agents.md +0 -151
  242. package/.opencode/commands/help-commands.md +0 -32
  243. package/.opencode/commands/help-faq.md +0 -29
  244. package/.opencode/commands/help-plugins.md +0 -28
  245. package/.opencode/commands/help-skills.md +0 -7
  246. package/.opencode/commands/help-tools.md +0 -40
  247. package/.opencode/commands/help.md +0 -28
  248. package/.opencode/commands/hotfix-squad.md +0 -112
  249. package/.opencode/commands/integration-squad.md +0 -82
  250. package/.opencode/commands/janitor-squad.md +0 -167
  251. package/.opencode/commands/learn-auto.md +0 -120
  252. package/.opencode/commands/learn.md +0 -120
  253. package/.opencode/commands/mcp-list.md +0 -27
  254. package/.opencode/commands/onboard-squad.md +0 -140
  255. package/.opencode/commands/plan-workspace.md +0 -732
  256. package/.opencode/commands/prd.md +0 -131
  257. package/.opencode/commands/project-status.md +0 -82
  258. package/.opencode/commands/publish.md +0 -138
  259. package/.opencode/commands/recap.md +0 -69
  260. package/.opencode/commands/restore.md +0 -64
  261. package/.opencode/commands/review-squad.md +0 -152
  262. package/.opencode/commands/save.md +0 -24
  263. package/.opencode/commands/stats.md +0 -19
  264. package/.opencode/commands/swarm.md +0 -210
  265. package/.opencode/commands/tool-builder.md +0 -39
  266. package/.opencode/commands/ws-pull.md +0 -44
  267. package/.opencode/opencode.json +0 -28
  268. package/SESSION-HANDOFF.md +0 -68
  269. package/inbox/2026-03-04-bot-config-patterns.md +0 -24
  270. package/scripts/postinstall.cjs +0 -64
  271. package/scripts/test-hal-tools.ts +0 -154
@@ -1,563 +0,0 @@
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. Run `/yolo docs/prd-feature-1.md` to start building
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. Run `/yolo docs/prd-new-feature.md` to implement
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
@@ -1,98 +0,0 @@
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.