@hailer/mcp 0.0.1

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 (163) hide show
  1. package/.claude/commands/tool-builder.md +37 -0
  2. package/.claude/commands/ws-pull.md +44 -0
  3. package/.claude/settings.json +8 -0
  4. package/.claude/settings.local.json +49 -0
  5. package/.claude/skills/activity-api/SKILL.md +96 -0
  6. package/.claude/skills/activity-api/references/activity-endpoints.md +845 -0
  7. package/.claude/skills/add-app-member-skill/SKILL.md +977 -0
  8. package/.claude/skills/agent-building/SKILL.md +243 -0
  9. package/.claude/skills/agent-building/references/architecture-patterns.md +446 -0
  10. package/.claude/skills/agent-building/references/code-examples.md +587 -0
  11. package/.claude/skills/agent-building/references/implementation-guide.md +619 -0
  12. package/.claude/skills/app-api/SKILL.md +219 -0
  13. package/.claude/skills/app-api/references/app-endpoints.md +759 -0
  14. package/.claude/skills/building-hailer-apps-skill/SKILL.md +548 -0
  15. package/.claude/skills/create-app-skill/SKILL.md +1101 -0
  16. package/.claude/skills/create-insight-skill/SKILL.md +1317 -0
  17. package/.claude/skills/get-insight-data-skill/SKILL.md +1053 -0
  18. package/.claude/skills/hailer-api/SKILL.md +283 -0
  19. package/.claude/skills/hailer-api/references/activities.md +620 -0
  20. package/.claude/skills/hailer-api/references/authentication.md +216 -0
  21. package/.claude/skills/hailer-api/references/datasets.md +437 -0
  22. package/.claude/skills/hailer-api/references/files.md +301 -0
  23. package/.claude/skills/hailer-api/references/insights.md +469 -0
  24. package/.claude/skills/hailer-api/references/workflows.md +720 -0
  25. package/.claude/skills/hailer-api/references/workspaces-users.md +445 -0
  26. package/.claude/skills/insight-api/SKILL.md +185 -0
  27. package/.claude/skills/insight-api/references/insight-endpoints.md +514 -0
  28. package/.claude/skills/install-workflow-skill/SKILL.md +1056 -0
  29. package/.claude/skills/list-apps-skill/SKILL.md +1010 -0
  30. package/.claude/skills/list-workflows-minimal-skill/SKILL.md +992 -0
  31. package/.claude/skills/local-first-skill/SKILL.md +570 -0
  32. package/.claude/skills/mcp-tools/SKILL.md +419 -0
  33. package/.claude/skills/mcp-tools/references/api-endpoints.md +499 -0
  34. package/.claude/skills/mcp-tools/references/data-structures.md +554 -0
  35. package/.claude/skills/mcp-tools/references/implementation-patterns.md +717 -0
  36. package/.claude/skills/preview-insight-skill/SKILL.md +1290 -0
  37. package/.claude/skills/publish-hailer-app-skill/SKILL.md +453 -0
  38. package/.claude/skills/remove-app-member-skill/SKILL.md +671 -0
  39. package/.claude/skills/remove-app-skill/SKILL.md +985 -0
  40. package/.claude/skills/remove-insight-skill/SKILL.md +1011 -0
  41. package/.claude/skills/remove-workflow-skill/SKILL.md +920 -0
  42. package/.claude/skills/scaffold-hailer-app-skill/SKILL.md +1034 -0
  43. package/.claude/skills/skill-testing/README.md +137 -0
  44. package/.claude/skills/skill-testing/SKILL.md +348 -0
  45. package/.claude/skills/skill-testing/references/test-patterns.md +705 -0
  46. package/.claude/skills/skill-testing/references/testing-guide.md +603 -0
  47. package/.claude/skills/skill-testing/references/validation-checklist.md +537 -0
  48. package/.claude/skills/tool-builder/SKILL.md +328 -0
  49. package/.claude/skills/update-app-skill/SKILL.md +970 -0
  50. package/.claude/skills/update-workflow-field-skill/SKILL.md +1098 -0
  51. package/.env.example +81 -0
  52. package/.mcp.json +13 -0
  53. package/README.md +297 -0
  54. package/dist/app.d.ts +4 -0
  55. package/dist/app.js +74 -0
  56. package/dist/cli.d.ts +3 -0
  57. package/dist/cli.js +5 -0
  58. package/dist/client/adaptive-documentation-bot.d.ts +108 -0
  59. package/dist/client/adaptive-documentation-bot.js +475 -0
  60. package/dist/client/adaptive-documentation-types.d.ts +66 -0
  61. package/dist/client/adaptive-documentation-types.js +9 -0
  62. package/dist/client/agent-activity-bot.d.ts +51 -0
  63. package/dist/client/agent-activity-bot.js +166 -0
  64. package/dist/client/agent-tracker.d.ts +499 -0
  65. package/dist/client/agent-tracker.js +659 -0
  66. package/dist/client/description-updater.d.ts +56 -0
  67. package/dist/client/description-updater.js +259 -0
  68. package/dist/client/log-parser.d.ts +72 -0
  69. package/dist/client/log-parser.js +387 -0
  70. package/dist/client/mcp-client.d.ts +50 -0
  71. package/dist/client/mcp-client.js +532 -0
  72. package/dist/client/message-processor.d.ts +35 -0
  73. package/dist/client/message-processor.js +352 -0
  74. package/dist/client/multi-bot-manager.d.ts +24 -0
  75. package/dist/client/multi-bot-manager.js +74 -0
  76. package/dist/client/providers/anthropic-provider.d.ts +19 -0
  77. package/dist/client/providers/anthropic-provider.js +631 -0
  78. package/dist/client/providers/llm-provider.d.ts +47 -0
  79. package/dist/client/providers/llm-provider.js +367 -0
  80. package/dist/client/providers/openai-provider.d.ts +23 -0
  81. package/dist/client/providers/openai-provider.js +621 -0
  82. package/dist/client/simple-llm-caller.d.ts +19 -0
  83. package/dist/client/simple-llm-caller.js +100 -0
  84. package/dist/client/skill-generator.d.ts +81 -0
  85. package/dist/client/skill-generator.js +386 -0
  86. package/dist/client/test-adaptive-bot.d.ts +9 -0
  87. package/dist/client/test-adaptive-bot.js +82 -0
  88. package/dist/client/token-pricing.d.ts +38 -0
  89. package/dist/client/token-pricing.js +127 -0
  90. package/dist/client/token-tracker.d.ts +232 -0
  91. package/dist/client/token-tracker.js +457 -0
  92. package/dist/client/token-usage-bot.d.ts +53 -0
  93. package/dist/client/token-usage-bot.js +153 -0
  94. package/dist/client/tool-executor.d.ts +69 -0
  95. package/dist/client/tool-executor.js +159 -0
  96. package/dist/client/tool-schema-loader.d.ts +60 -0
  97. package/dist/client/tool-schema-loader.js +178 -0
  98. package/dist/client/types.d.ts +69 -0
  99. package/dist/client/types.js +7 -0
  100. package/dist/config.d.ts +162 -0
  101. package/dist/config.js +296 -0
  102. package/dist/core.d.ts +26 -0
  103. package/dist/core.js +147 -0
  104. package/dist/lib/context-manager.d.ts +111 -0
  105. package/dist/lib/context-manager.js +431 -0
  106. package/dist/lib/logger.d.ts +74 -0
  107. package/dist/lib/logger.js +277 -0
  108. package/dist/lib/materialize.d.ts +3 -0
  109. package/dist/lib/materialize.js +101 -0
  110. package/dist/lib/normalizedName.d.ts +7 -0
  111. package/dist/lib/normalizedName.js +48 -0
  112. package/dist/lib/prompt-length-manager.d.ts +81 -0
  113. package/dist/lib/prompt-length-manager.js +457 -0
  114. package/dist/lib/terminal-prompt.d.ts +9 -0
  115. package/dist/lib/terminal-prompt.js +108 -0
  116. package/dist/mcp/UserContextCache.d.ts +56 -0
  117. package/dist/mcp/UserContextCache.js +163 -0
  118. package/dist/mcp/auth.d.ts +2 -0
  119. package/dist/mcp/auth.js +29 -0
  120. package/dist/mcp/hailer-clients.d.ts +42 -0
  121. package/dist/mcp/hailer-clients.js +246 -0
  122. package/dist/mcp/signal-handler.d.ts +45 -0
  123. package/dist/mcp/signal-handler.js +317 -0
  124. package/dist/mcp/tool-registry.d.ts +100 -0
  125. package/dist/mcp/tool-registry.js +306 -0
  126. package/dist/mcp/tools/activity.d.ts +15 -0
  127. package/dist/mcp/tools/activity.js +955 -0
  128. package/dist/mcp/tools/app.d.ts +20 -0
  129. package/dist/mcp/tools/app.js +1488 -0
  130. package/dist/mcp/tools/discussion.d.ts +19 -0
  131. package/dist/mcp/tools/discussion.js +950 -0
  132. package/dist/mcp/tools/file.d.ts +15 -0
  133. package/dist/mcp/tools/file.js +119 -0
  134. package/dist/mcp/tools/insight.d.ts +17 -0
  135. package/dist/mcp/tools/insight.js +806 -0
  136. package/dist/mcp/tools/skill.d.ts +10 -0
  137. package/dist/mcp/tools/skill.js +279 -0
  138. package/dist/mcp/tools/user.d.ts +10 -0
  139. package/dist/mcp/tools/user.js +108 -0
  140. package/dist/mcp/tools/workflow-template.d.ts +19 -0
  141. package/dist/mcp/tools/workflow-template.js +822 -0
  142. package/dist/mcp/tools/workflow.d.ts +18 -0
  143. package/dist/mcp/tools/workflow.js +1362 -0
  144. package/dist/mcp/utils/api-errors.d.ts +45 -0
  145. package/dist/mcp/utils/api-errors.js +160 -0
  146. package/dist/mcp/utils/data-transformers.d.ts +102 -0
  147. package/dist/mcp/utils/data-transformers.js +194 -0
  148. package/dist/mcp/utils/file-upload.d.ts +33 -0
  149. package/dist/mcp/utils/file-upload.js +148 -0
  150. package/dist/mcp/utils/hailer-api-client.d.ts +120 -0
  151. package/dist/mcp/utils/hailer-api-client.js +323 -0
  152. package/dist/mcp/utils/index.d.ts +13 -0
  153. package/dist/mcp/utils/index.js +39 -0
  154. package/dist/mcp/utils/logger.d.ts +42 -0
  155. package/dist/mcp/utils/logger.js +103 -0
  156. package/dist/mcp/utils/types.d.ts +286 -0
  157. package/dist/mcp/utils/types.js +7 -0
  158. package/dist/mcp/workspace-cache.d.ts +42 -0
  159. package/dist/mcp/workspace-cache.js +97 -0
  160. package/dist/mcp-server.d.ts +42 -0
  161. package/dist/mcp-server.js +280 -0
  162. package/package.json +56 -0
  163. package/tsconfig.json +23 -0
@@ -0,0 +1,219 @@
1
+ ---
2
+ name: App API Reference
3
+ description: Complete reference for Hailer App API - use when building app management MCP tools
4
+ ---
5
+
6
+ # App API Reference Skill
7
+
8
+ This skill provides comprehensive documentation for Hailer App API endpoints. Apps are custom applications that integrate with Hailer workspaces, extending functionality with custom UIs and workflows.
9
+
10
+ ## When to Use This Skill
11
+
12
+ Invoke this skill when:
13
+ - Building app management MCP tools
14
+ - Creating or managing Hailer apps
15
+ - Working with app permissions and members
16
+ - Installing marketplace apps
17
+ - Understanding app configuration
18
+
19
+ ## What are Hailer Apps?
20
+
21
+ **Apps = Custom web applications that run within Hailer**
22
+
23
+ Think of them as:
24
+ - **Custom UIs**: React/vanilla JS applications
25
+ - **Workspace Extensions**: Add new capabilities to Hailer
26
+ - **Development Apps**: Point to localhost for development
27
+ - **Published Apps**: Deployed to apps.hailer.com or custom URLs
28
+
29
+ ## Quick Navigation
30
+
31
+ ### Core App Operations
32
+ - **v3.app.create** - Create new app entry
33
+ - **v3.app.list** - List all apps in workspace
34
+ - **v3.app.update** - Update existing app
35
+ - **v3.app.remove** - Delete app entry
36
+ - **v3.app.config.update** - Edit app configuration
37
+
38
+ ### App Permission Management
39
+ - **v3.app.member.add** - Add member permissions (users, teams, workspace)
40
+ - **v3.app.member.remove** - Remove member permissions
41
+
42
+ ### Marketplace Operations
43
+ - **v3.app.product.create** - Create marketplace product
44
+ - **v3.app.product.get** - Get product details
45
+ - **v3.app.product.install** - Install marketplace app
46
+ - **v3.app.product.getManifest** - Get app manifest
47
+ - **v3.app.product.isProductInstalled** - Check installation status
48
+
49
+ ## Key Concepts
50
+
51
+ ### App Types
52
+
53
+ **1. Development Apps**
54
+ - URL points to localhost (e.g., `http://localhost:3000`)
55
+ - Used during development
56
+ - Hot reload, live updates
57
+ - Accessible only to developers
58
+
59
+ **2. Published Apps**
60
+ - URL empty or points to production (e.g., `https://apps.hailer.com/app/xyz`)
61
+ - Deployed to production
62
+ - Accessible based on permissions
63
+ - Version controlled
64
+
65
+ ### App Structure
66
+
67
+ ```javascript
68
+ {
69
+ name: 'My App',
70
+ description: 'Cool app description',
71
+ url: 'http://localhost:3000', // or empty for published
72
+ image: '<imageId>', // Optional app icon
73
+ config: { // Optional configuration
74
+ fields: {}
75
+ }
76
+ }
77
+ ```
78
+
79
+ ### App Permissions
80
+
81
+ Apps support member-based permissions:
82
+ - **Workspace**: `network_<networkId>` - All workspace members
83
+ - **Team**: `team_<teamId>` - Specific team members
84
+ - **User**: `user_<userId>` - Individual users
85
+ - **Group**: `group_<groupId>` - Custom user groups
86
+
87
+ Default: Only creator and admins can see/use the app
88
+
89
+ ## Common Use Cases
90
+
91
+ 1. **Create Development App**: Point to localhost for local development
92
+ 2. **Create Published App**: Empty URL for deployment
93
+ 3. **Manage Permissions**: Control who can access the app
94
+ 4. **List Apps**: See all apps in workspace
95
+ 5. **Update App**: Change name, description, URL, icon
96
+ 6. **Install Marketplace App**: Add pre-built apps from Hailer marketplace
97
+
98
+ ## App Development Workflow
99
+
100
+ ### 1. Create Development App Entry
101
+ ```javascript
102
+ v3.app.create({
103
+ name: 'Local Development',
104
+ description: 'App pointing to local server',
105
+ url: 'http://localhost:3000'
106
+ })
107
+ ```
108
+
109
+ ### 2. Scaffold App from Template
110
+ ```bash
111
+ npm create @hailer/app@latest
112
+ # Select: react-ts, react-swc-ts, or vanilla
113
+ ```
114
+
115
+ ### 3. Develop Locally
116
+ ```bash
117
+ cd my-app
118
+ npm install
119
+ npm run dev
120
+ # App runs on http://localhost:3000
121
+ ```
122
+
123
+ ### 4. Create Published App Entry
124
+ ```javascript
125
+ v3.app.create({
126
+ name: 'Published App',
127
+ description: 'Production app',
128
+ url: '' // Empty for auto URL
129
+ })
130
+ ```
131
+
132
+ ### 5. Configure manifest.json
133
+ ```javascript
134
+ {
135
+ "appId": "<published-app-id>",
136
+ "name": "My App",
137
+ "version": "1.0.0"
138
+ }
139
+ ```
140
+
141
+ ### 6. Publish App
142
+ ```bash
143
+ EMAIL=user@example.com npm run publish-production
144
+ ```
145
+
146
+ ## Documentation
147
+
148
+ See [App API Endpoints](references/app-endpoints.md) for complete endpoint documentation with request/response schemas and examples.
149
+
150
+ ## MCP Tool Building Rules
151
+
152
+ When building App MCP tools:
153
+
154
+ 1. **Use workspace context**: Apps are workspace-specific
155
+ 2. **Handle permissions**: Only creators/admins can manage apps
156
+ 3. **Support both dev and prod**: Dev apps have URL, published apps may not
157
+ 4. **Member management**: Support user, team, workspace, group permissions
158
+ 5. **Clear feedback**: Show app ID, URL, and access info
159
+
160
+ ## Example Patterns
161
+
162
+ ### Create Development App
163
+ ```javascript
164
+ create_app({
165
+ name: 'Task Manager Dev',
166
+ description: 'Local development version',
167
+ url: 'http://localhost:3000'
168
+ })
169
+ ```
170
+
171
+ ### Create Published App
172
+ ```javascript
173
+ create_app({
174
+ name: 'Task Manager',
175
+ description: 'Production task management app',
176
+ url: '' // Auto URL
177
+ })
178
+ ```
179
+
180
+ ### Share App with Team
181
+ ```javascript
182
+ add_app_member({
183
+ appId: '<app-id>',
184
+ member: 'team_<team-id>'
185
+ })
186
+ ```
187
+
188
+ ### Share App with Entire Workspace
189
+ ```javascript
190
+ add_app_member({
191
+ appId: '<app-id>',
192
+ member: 'network_<workspace-id>'
193
+ })
194
+ ```
195
+
196
+ ## Important Notes
197
+
198
+ **App Entry vs App Code**:
199
+ - **App Entry**: Hailer metadata (name, URL, permissions) - managed via API
200
+ - **App Code**: React/JS source code - developed separately, published via CLI
201
+
202
+ **URL Behavior**:
203
+ - **With URL**: App loads from specified URL (development)
204
+ - **Empty URL**: Hailer sets default publication URL (production)
205
+
206
+ **Permissions**:
207
+ - Default: Creator + workspace admins
208
+ - Use member.add to grant access to others
209
+ - Use member.remove to revoke access
210
+
211
+ **Marketplace Apps**:
212
+ - Pre-built apps available in Hailer marketplace
213
+ - Can be installed into workspaces
214
+ - May have dependencies or configuration requirements
215
+
216
+ ## Next Steps
217
+
218
+ For complete endpoint documentation with request/response schemas, see:
219
+ - [App API Endpoints](references/app-endpoints.md) - All v3.app.* endpoints