@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,121 +0,0 @@
1
- ---
2
- name: hailer-permissions-system
3
- description: Hailer app permissions - users, teams, and access control
4
- version: 1.1.0
5
- triggers: Grant access, permissions, app access, user permissions, team access
6
- ---
7
-
8
- # Hailer Permissions System
9
-
10
- Managing access to Hailer **apps** for users and teams.
11
-
12
- <scope-notice>
13
- **This skill covers APP permissions only.**
14
-
15
- For other permission types, see:
16
- - **Workflow permissions** (who can access a workflow) → SDK-ws-config-skill, main.ts `members[]`
17
- - **Phase permissions** (field visibility, transitions) → SDK-ws-config-skill, phases.ts
18
- - **Team management** (create/edit teams) → SDK-ws-config-skill, teams.ts
19
-
20
- App permissions = who can see/use an app in Hailer UI.
21
- Workflow permissions = who can see/edit activities in a workflow.
22
- </scope-notice>
23
-
24
- ## Overview
25
-
26
- Hailer apps can have restricted access. Users must be explicitly granted access to see/use an app.
27
-
28
- **Access can be granted to:**
29
- - Individual users (by email/ID)
30
- - Teams (groups of users)
31
-
32
- ---
33
-
34
- ## MCP Tools
35
-
36
- | Tool | Purpose |
37
- |------|---------|
38
- | `mcp__hailer__list_apps` | List all apps in workspace |
39
- | `mcp__hailer__search_workspace_users` | Find user by email/name |
40
- | `mcp__hailer__add_app_member` | Grant access |
41
- | `mcp__hailer__remove_app_member` | Revoke access |
42
-
43
- ---
44
-
45
- ## Common Workflows
46
-
47
- ### Grant User Access
48
-
49
- 1. **Search for user:**
50
- ```
51
- mcp__hailer__search_workspace_users({ query: "john@example.com" })
52
- ```
53
-
54
- 2. **Get app ID (if not known):**
55
- ```
56
- mcp__hailer__list_apps({})
57
- ```
58
-
59
- 3. **Add user as member:**
60
- ```
61
- mcp__hailer__add_app_member({
62
- appId: "64a1b2c3d4e5f6a7b8c9d0e1",
63
- memberId: "user_64a1b2c3d4e5f6a7b8c9d0e2",
64
- memberType: "user"
65
- })
66
- ```
67
-
68
- ### Grant Team Access
69
-
70
- 1. **Get team ID from workspace config:**
71
- ```typescript
72
- // Read from workspace/teams.ts or workspace/enums.ts
73
- import { TeamIds } from './workspace/enums';
74
- ```
75
-
76
- 2. **Add team as member:**
77
- ```
78
- mcp__hailer__add_app_member({
79
- appId: "64a1b2c3d4e5f6a7b8c9d0e1",
80
- memberId: TeamIds.sales_team,
81
- memberType: "team"
82
- })
83
- ```
84
-
85
- ### Revoke Access
86
-
87
- ```
88
- mcp__hailer__remove_app_member({
89
- appId: "64a1b2c3d4e5f6a7b8c9d0e1",
90
- memberId: "user_64a1b2c3d4e5f6a7b8c9d0e2",
91
- memberType: "user"
92
- })
93
- ```
94
-
95
- ---
96
-
97
- ## Public vs Authenticated Apps
98
-
99
- | Type | Access | Use Case |
100
- |------|--------|----------|
101
- | Public | Anyone with URL | Customer-facing portals using public insights |
102
- | Authenticated | Only granted users/teams | Internal tools, admin dashboards |
103
-
104
- **Public apps:**
105
- - Use public insights for data
106
- - No Hailer login required
107
- - Read-only typically
108
-
109
- **Authenticated apps:**
110
- - Use Hailer user management
111
- - Can read/write based on user permissions
112
- - Full Hailer SDK capabilities
113
-
114
- ---
115
-
116
- ## Best Practices
117
-
118
- 1. **Verify before granting** - Search for user first to confirm they exist
119
- 2. **Use teams for groups** - Easier to manage than individual users
120
- 3. **Audit periodically** - Review who has access to sensitive apps
121
- 4. **Confirm revocations** - Double-check before removing access
@@ -1,488 +0,0 @@
1
- ---
2
- name: hailer-project-protocol
3
- description: Complete Hailer project management workflow schemas, field definitions, and protocols for SDK projects
4
- version: 1.0.1
5
- ---
6
-
7
- # Hailer Project Management Protocol
8
-
9
- This skill contains the complete Hailer project management workflow schemas, field definitions, and protocols for working with Hailer SDK projects.
10
-
11
- ---
12
-
13
- <critical-rules>
14
- ## Overview
15
-
16
- Every Hailer workspace uses project management workflows. Claude installs and maintains these automatically using MCP or SDK.
17
-
18
- **CRITICAL: Real-Time Updates**
19
- - Update Hailer items IN REAL-TIME as work progresses
20
- - Do NOT batch updates - update immediately when status changes
21
- - When completing a task, update Hailer BEFORE moving to next task
22
-
23
- **Context File Hierarchy**
24
- 1. **SESSION-HANDOFF.md** - Previous session state (read first when resuming)
25
- 2. **DEVELOPMENT.md** - Local backup/snapshot of Hailer state
26
- 3. **Hailer Workflows** - Source of truth for project data
27
- </critical-rules>
28
-
29
- ---
30
-
31
- ## Workflow 1: Project Planning
32
-
33
- **Workflow name:** `Project Planning`
34
-
35
- ### Phases (in order)
36
- 1. `Planning`
37
- 2. `In Progress`
38
- 3. `On Hold`
39
- 4. `Completed`
40
-
41
- ### Fields
42
-
43
- | Field Name | Field Type | Configuration |
44
- |------------|------------|---------------|
45
- | Title | Text | - |
46
- | Description | Long text | - |
47
- | Type | Predefined options (single) | Options: `Project`, `Feature`, `Session Handoff`, `PRD` |
48
- | Project | Activity link | Links to: `Project Planning` workflow |
49
- | Child Features | Linked from | Linked from: `Project Planning` → `Project` field |
50
- | Dev Tasks | Linked from | Linked from: `Dev Tasks` → `Feature` field |
51
- | Goal | Long text | - |
52
- | Documentation | Long text | - |
53
- | Technical Notes | Long text | - |
54
- | Blockers | Long text | - |
55
- | User Stories | Long text | PRD: As a [user], I want [X] so that [Y] |
56
- | Acceptance Criteria | Long text | PRD: Checklist of "done" conditions |
57
- | Technical Constraints | Long text | PRD: Performance, security, compatibility |
58
- | Out of Scope | Long text | PRD: What this feature does NOT include |
59
-
60
- ### Field Explanations
61
- - **Project**: Features use this to link UP to their parent Project
62
- - **Child Features**: Automatically shows Features that link to this Project
63
- - **Dev Tasks**: Automatically shows Tasks/Bugs that link to this Feature
64
- - **Documentation**: How it works, usage instructions, user-facing docs
65
- - **Technical Notes**: Architecture decisions, implementation details
66
- - **User Stories/Acceptance Criteria/Technical Constraints/Out of Scope**: PRD fields for requirements
67
-
68
- ---
69
-
70
- ## Workflow 2: Dev Tasks
71
-
72
- **Workflow name:** `Dev Tasks`
73
-
74
- ### Phases (in order)
75
- 1. `Backlog`
76
- 2. `Todo`
77
- 3. `In Progress`
78
- 4. `Review`
79
- 5. `Done`
80
-
81
- ### Fields
82
-
83
- | Field Name | Field Type | Configuration |
84
- |------------|------------|---------------|
85
- | Title | Text | - |
86
- | Description | Long text | - |
87
- | Type | Predefined options (single) | Options: `Task`, `Bug`, `Tech Debt` |
88
- | Priority | Predefined options (single) | Options: `HIGH`, `MEDIUM`, `LOW` |
89
- | Feature | Activity link | Links to: `Project Planning` workflow |
90
- | Blocked By | Activity link | Links to: `Dev Tasks` workflow |
91
- | Blocks | Linked from | Linked from: `Dev Tasks` → `Blocked By` field |
92
- | Related Items | Activity link | Links to: `Dev Tasks` workflow |
93
- | Related From | Linked from | Linked from: `Dev Tasks` → `Related Items` field |
94
- | Files Modified | Text | - |
95
- | Commits | Text | - |
96
-
97
- ### Field Explanations
98
- - **Feature**: Links UP to parent Feature in Project Planning
99
- - **Blocked By**: Links to other Dev Tasks that block this one
100
- - **Blocks**: Automatically shows Dev Tasks that this task blocks
101
- - **Related Items**: Links to related Tasks/Bugs (e.g., Bug → Task that caused it)
102
- - **Related From**: Automatically shows items that link to this one
103
-
104
- ---
105
-
106
- ## Link Relationship Summary
107
-
108
- ```
109
- Project Planning Dev Tasks
110
- ┌─────────────────────┐ ┌─────────────────────┐
111
- │ Project │ │ Task/Bug/Tech Debt │
112
- │ │ │ │
113
- │ Child Features ◄────┼── Project ───────┼── (not used) │
114
- │ (linked from) │ │ │
115
- └─────────────────────┘ │ │
116
- ▲ │ │
117
- │ │ │
118
- ┌────────┴────────────┐ │ │
119
- │ Feature / PRD │ │ │
120
- │ │ │ │
121
- │ Project ────────────┼─► Project │ │
122
- │ (activity link) │ │ │
123
- │ │ │ │
124
- │ Dev Tasks ◄─────────┼──────────────────┼── Feature │
125
- │ (linked from) │ │ (activity link) │
126
- └─────────────────────┘ │ │
127
- │ Blocked By ─────────┼─► Dev Tasks
128
- │ (activity link) │
129
- │ │
130
- │ Blocks ◄────────────┼── Blocked By
131
- │ (linked from) │ (from other)
132
- └─────────────────────┘
133
- ```
134
-
135
- ---
136
-
137
- ## Protocol: Starting in a Workspace
138
-
139
- ### Step 1: Check for Existing Workflows
140
-
141
- **AUTOMATIC CREATION: If workflows don't exist, CREATE THEM.**
142
-
143
- Look for workflows named exactly:
144
- - `Project Planning`
145
- - `Dev Tasks`
146
-
147
- ### Step 2: Create Workflows if Missing
148
-
149
- **This is NOT optional - create them automatically.**
150
-
151
- Notify user: "Setting up project management workflows for this workspace..."
152
-
153
- #### Create Project Planning Workflow
154
-
155
- ```typescript
156
- // Using Hailer MCP or SDK
157
- {
158
- name: "Project Planning",
159
- phases: ["Planning", "In Progress", "On Hold", "Completed"],
160
- fields: [
161
- { name: "Title", type: "text" },
162
- { name: "Description", type: "longtext" },
163
- { name: "Type", type: "predefined_single", options: ["Project", "Feature", "Session Handoff", "PRD"] },
164
- { name: "Project", type: "activity_link", linkedWorkflow: "Project Planning" },
165
- { name: "Goal", type: "longtext" },
166
- { name: "Documentation", type: "longtext" },
167
- { name: "Technical Notes", type: "longtext" },
168
- { name: "Blockers", type: "longtext" },
169
- // PRD fields
170
- { name: "User Stories", type: "longtext" },
171
- { name: "Acceptance Criteria", type: "longtext" },
172
- { name: "Technical Constraints", type: "longtext" },
173
- { name: "Out of Scope", type: "longtext" }
174
- ]
175
- }
176
- ```
177
-
178
- #### Create Dev Tasks Workflow
179
-
180
- ```typescript
181
- {
182
- name: "Dev Tasks",
183
- phases: ["Backlog", "Todo", "In Progress", "Review", "Done"],
184
- fields: [
185
- { name: "Title", type: "text" },
186
- { name: "Description", type: "longtext" },
187
- { name: "Type", type: "predefined_single", options: ["Task", "Bug", "Tech Debt"] },
188
- { name: "Priority", type: "predefined_single", options: ["HIGH", "MEDIUM", "LOW"] },
189
- { name: "Feature", type: "activity_link", linkedWorkflow: "Project Planning" },
190
- { name: "Blocked By", type: "activity_link", linkedWorkflow: "Dev Tasks" },
191
- { name: "Related Items", type: "activity_link", linkedWorkflow: "Dev Tasks" },
192
- { name: "Files Modified", type: "text" },
193
- { name: "Commits", type: "text" }
194
- ]
195
- }
196
- ```
197
-
198
- ### Step 3: Verify PRD Fields Exist
199
-
200
- If `Project Planning` workflow exists but is missing PRD fields, ADD THEM:
201
- - User Stories
202
- - Acceptance Criteria
203
- - Technical Constraints
204
- - Out of Scope
205
-
206
- ### Step 4: Read Current State
207
-
208
- Before starting work:
209
- 1. Check for SESSION-HANDOFF.md - read if exists (previous session context)
210
- 2. Check for active Project (Type = `Project`, Phase = `In Progress`)
211
- 3. If no Project exists, ask user for project name and create one
212
- 4. Fetch In Progress Features and Tasks
213
- 5. Check for recent Session Handoff (Type = `Session Handoff`)
214
- 6. Summarize state to user
215
-
216
- ---
217
-
218
- ## Protocol: During Development (Real-Time Updates)
219
-
220
- ### Starting New Work
221
- 1. Ensure a Feature exists (Type = `Feature`)
222
- - Set `Project` field to link to parent Project
223
- 2. Create Task in Dev Tasks (Type = `Task`)
224
- - Set `Feature` field to link to parent Feature
225
- 3. **IMMEDIATELY** move Task to `In Progress`
226
- 4. Keep only ONE task `In Progress` at a time
227
-
228
- ### Completing Work
229
- 1. **IMMEDIATELY** update Task:
230
- - `Files Modified`: List changed files
231
- - `Commits`: Add commit hashes
232
- 2. **IMMEDIATELY** move to `Done`
233
- 3. If new work discovered → create new Tasks in `Backlog`
234
-
235
- ### Finding Bugs
236
- 1. **IMMEDIATELY** create item in Dev Tasks (Type = `Bug`)
237
- 2. Set `Feature` to link to relevant Feature
238
- 3. Set `Priority` based on severity
239
- 4. Optionally set `Related Items` to link to Task that caused it
240
-
241
- ### Blocked Tasks
242
- 1. Set `Blocked By` to link to blocking Task(s)
243
- 2. Update Description with blocker details
244
- 3. When blocker resolved, clear `Blocked By` and continue
245
-
246
- ### Technical Decisions
247
- Update the Feature's `Technical Notes` field with:
248
- - Architecture decisions and rationale
249
- - Important discoveries
250
- - Trade-offs considered
251
-
252
- ### Documentation
253
- When feature is complete or stable, update `Documentation` field with:
254
- - How it works
255
- - Usage instructions
256
- - Configuration options
257
-
258
- ---
259
-
260
- ## Protocol: Session Handoff
261
-
262
- ### When to Create
263
- - Context reaches 70-80%
264
- - Before ending a long session
265
- - User requests it
266
-
267
- ### Create Session Handoff Item
268
- In Project Planning workflow:
269
-
270
- | Field | Value |
271
- |-------|-------|
272
- | Title | `Session Handoff - YYYY-MM-DD HH:MM` |
273
- | Type | `Session Handoff` |
274
- | Project | Link to active Project |
275
- | Phase | `Completed` |
276
- | Description | See template below |
277
- | Technical Notes | Key discoveries and decisions |
278
- | Blockers | Unresolved issues, next steps |
279
-
280
- **Description template:**
281
- ```
282
- ## Completed This Session
283
- - [List completed tasks]
284
-
285
- ## In Progress
286
- - [Current work state]
287
-
288
- ## Next Steps
289
- - [What to do when resuming]
290
- ```
291
-
292
- ### Local SESSION-HANDOFF.md
293
- Also create/update `SESSION-HANDOFF.md` in project root:
294
-
295
- ```markdown
296
- ## Session Handoff - YYYY-MM-DD HH:MM
297
-
298
- ### Completed This Session
299
- - [What was accomplished]
300
-
301
- ### Current State
302
- - [Work in progress, any partial implementations]
303
-
304
- ### Blockers / Issues Found
305
- - [Problems encountered, unresolved errors]
306
-
307
- ### Next Steps
308
- - [Immediate actions for next session]
309
-
310
- ### Key Decisions Made
311
- - [Important context that shouldn't be lost]
312
-
313
- ### Files Modified
314
- - [List of changed files with brief description]
315
- ```
316
-
317
- ---
318
-
319
- ## Protocol: Creating Items
320
-
321
- ### New Project
322
- | Field | Value |
323
- |-------|-------|
324
- | Title | Project name (ask user) |
325
- | Type | `Project` |
326
- | Phase | `In Progress` |
327
- | Description | Project overview |
328
- | Goal | What success looks like |
329
-
330
- ### New Feature
331
- | Field | Value |
332
- |-------|-------|
333
- | Title | Feature name (use prefixes: `Sales Orders → Automations`) |
334
- | Type | `Feature` |
335
- | Project | Link to parent Project |
336
- | Phase | `Planning` or `In Progress` |
337
- | Description | Scope and requirements |
338
- | Goal | Acceptance criteria |
339
- | Documentation | How it works (fill when complete) |
340
- | Technical Notes | Architecture decisions |
341
-
342
- ### New PRD (Product Requirements Document)
343
- | Field | Value |
344
- |-------|-------|
345
- | Title | `PRD: [Feature Name]` |
346
- | Type | `PRD` |
347
- | Project | Link to parent Project |
348
- | Phase | `Planning` |
349
- | Description | Executive summary |
350
- | Goal | Success metrics |
351
- | User Stories | As a [user], I want [X] so that [Y] |
352
- | Acceptance Criteria | - [ ] Criterion 1<br>- [ ] Criterion 2 |
353
- | Technical Constraints | Performance, security, compatibility needs |
354
- | Out of Scope | What this does NOT include |
355
-
356
- ### New Task
357
- | Field | Value |
358
- |-------|-------|
359
- | Title | Specific, actionable description |
360
- | Type | `Task` |
361
- | Feature | Link to parent Feature |
362
- | Priority | `MEDIUM` (default) |
363
- | Phase | `Backlog` or `Todo` |
364
- | Description | Implementation details |
365
-
366
- ### New Bug
367
- | Field | Value |
368
- |-------|-------|
369
- | Title | Clear bug description with context |
370
- | Type | `Bug` |
371
- | Feature | Link to affected Feature |
372
- | Priority | Based on severity |
373
- | Phase | `Backlog` or `Todo` |
374
- | Description | Steps to reproduce, expected vs actual |
375
- | Related Items | Link to Task that caused it (if known) |
376
-
377
- ---
378
-
379
- ## Protocol: DEVELOPMENT.md Sync
380
-
381
- When user requests sync (`/project-status`):
382
-
383
- 1. Fetch all data from Hailer workflows:
384
- - Active Project
385
- - All Features with their phases
386
- - All Dev Tasks (grouped by phase)
387
- - Recent Session Handoffs
388
-
389
- 2. Generate DEVELOPMENT.md:
390
- ```markdown
391
- # [Project Title] Development Status
392
-
393
- **Last Updated:** YYYY-MM-DD
394
- **Hailer Sync:** YYYY-MM-DD HH:MM
395
-
396
- ---
397
-
398
- ## Active Feature
399
- **Name:** [Feature Title]
400
- **Goal:** [Feature Goal]
401
- **Status:** [Phase]
402
-
403
- ---
404
-
405
- ## Current Sprint
406
-
407
- ### In Progress
408
- - [ ] [Task Title] (Feature: [Feature Name])
409
-
410
- ### Completed This Session
411
- - [x] [Task Title] (YYYY-MM-DD)
412
-
413
- ### Blocked
414
- - [ ] [Task Title] - **Blocker:** [reason]
415
-
416
- ---
417
-
418
- ## Backlog
419
- - [ ] [Task Title] (Feature: [Feature Name], Priority: [Priority])
420
-
421
- ---
422
-
423
- ## Known Issues
424
- | Priority | Issue | Status |
425
- |----------|-------|--------|
426
- | HIGH | [Bug Title] | [Phase] |
427
-
428
- ---
429
-
430
- ## Technical Notes
431
- [Aggregated from Features' Technical Notes fields]
432
-
433
- ---
434
-
435
- ## Session Notes
436
- [Local notes not synced to Hailer]
437
- ```
438
-
439
- ---
440
-
441
- ## Naming Conventions
442
-
443
- ### Features
444
- Use arrow prefix for related features:
445
- - `Sales Orders` (main workflow)
446
- - `Sales Orders → Automations`
447
- - `Sales Orders → ERP Integration`
448
-
449
- ### Tasks
450
- Specific and actionable:
451
- - `Add customer reference field to orders`
452
- - `Work on orders`
453
-
454
- ### Bugs
455
- Include context:
456
- - `Order total wrong when discount applied`
457
- - `Calculation bug`
458
-
459
- ### PRDs
460
- Always prefix with "PRD:":
461
- - `PRD: User Authentication`
462
- - `PRD: Sales Order Automations`
463
-
464
- ---
465
-
466
- ## Hailer Project Structure
467
-
468
- ```
469
- workspace/ # Local config (check FIRST)
470
- apps/ # Frontend apps (if monorepo)
471
- integrations/ # Backend services (if monorepo)
472
- .claude/
473
- agents/ # Agent definitions
474
- hooks/ # Safety hooks
475
- skills/ # On-demand documentation
476
- commands/ # Slash commands
477
- settings.json # Permissions
478
- CLAUDE.md # Project instructions
479
- DEVELOPMENT.md # Project state (synced with Hailer)
480
- SESSION-HANDOFF.md # Previous session context
481
- ```
482
-
483
- ### Key Principles
484
- - **Local-first**: Check `workspace/` before making API calls
485
- - **Skills before actions**: Load relevant skill before SDK/MCP commands
486
- - **Hooks protect you**: Push commands require confirmation via hooks
487
- - **Check scripts**: Run `npm run` to see available commands
488
- - **Session continuity**: Read SESSION-HANDOFF.md when resuming work
@@ -1,61 +0,0 @@
1
- ---
2
- name: hailer-rest-api
3
- description: Direct HTTP endpoints for Hailer platform operations
4
- version: 1.1.0
5
- triggers:
6
- - REST API
7
- - HTTP endpoint
8
- - curl
9
- - direct API call
10
- - backend integration
11
- - fallback when SDK lacks method
12
- ---
13
-
14
- # Hailer REST API Reference
15
-
16
- Direct HTTP endpoints for Hailer platform operations.
17
-
18
- ## When to Use
19
-
20
- - **Integrations** (Igor): Backend services that don't use `@hailer/cli`
21
- - **Apps** (Giuseppe): Fallback when `@hailer/app-sdk` lacks a method
22
- - **Documentation** (Marcus): Reference when documenting API endpoints
23
-
24
- ## Files
25
-
26
- | File | Domain | Key Operations |
27
- |------|--------|----------------|
28
- | `hailer-activities.md` | Activities | CRUD, kanban, timeline, linked, import |
29
- | `hailer-workflows.md` | Workflows | CRUD, fields, phases, permissions, templates |
30
- | `hailer-insights.md` | Insights | SQL views, execution, public insights |
31
- | `hailer-admin.md` | Admin | Auth, workspaces, users, teams, groups, apps, files |
32
- | `hailer-messaging.md` | Messaging | Discussions, messages, reactions, video |
33
- | `hailer-calendar.md` | Calendar | Calendars, events, recurring, iCal |
34
- | `hailer-feed.md` | Feed/Wall | Posts, comments, likes, pins |
35
-
36
- ## Common Patterns
37
-
38
- **Base URLs:**
39
- - Production: `https://api.hailer.com/api`
40
- - Staging: `https://api.hailer.biz/api`
41
-
42
- **Authentication:**
43
- ```bash
44
- -H "hlrkey: YOUR_SESSION_KEY"
45
- ```
46
-
47
- **Request format:** JSON-RPC style POST with array params
48
- ```bash
49
- curl -X POST "https://api.hailer.com/api/v3/endpoint" \
50
- -H "Content-Type: application/json" \
51
- -H "hlrkey: SESSION_KEY" \
52
- -d '["param1", {"option": "value"}]'
53
- ```
54
-
55
- ## Legacy Naming
56
-
57
- | Current | Legacy | Notes |
58
- |---------|--------|-------|
59
- | workflowId | processId | Used interchangeably |
60
- | workspaceId | networkId, cid, companyId | All refer to workspace |
61
- | activityId | - | Sometimes called "row" |