@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.
- package/.claude/commands/tool-builder.md +37 -0
- package/.claude/commands/ws-pull.md +44 -0
- package/.claude/settings.json +8 -0
- package/.claude/settings.local.json +49 -0
- package/.claude/skills/activity-api/SKILL.md +96 -0
- package/.claude/skills/activity-api/references/activity-endpoints.md +845 -0
- package/.claude/skills/add-app-member-skill/SKILL.md +977 -0
- package/.claude/skills/agent-building/SKILL.md +243 -0
- package/.claude/skills/agent-building/references/architecture-patterns.md +446 -0
- package/.claude/skills/agent-building/references/code-examples.md +587 -0
- package/.claude/skills/agent-building/references/implementation-guide.md +619 -0
- package/.claude/skills/app-api/SKILL.md +219 -0
- package/.claude/skills/app-api/references/app-endpoints.md +759 -0
- package/.claude/skills/building-hailer-apps-skill/SKILL.md +548 -0
- package/.claude/skills/create-app-skill/SKILL.md +1101 -0
- package/.claude/skills/create-insight-skill/SKILL.md +1317 -0
- package/.claude/skills/get-insight-data-skill/SKILL.md +1053 -0
- package/.claude/skills/hailer-api/SKILL.md +283 -0
- package/.claude/skills/hailer-api/references/activities.md +620 -0
- package/.claude/skills/hailer-api/references/authentication.md +216 -0
- package/.claude/skills/hailer-api/references/datasets.md +437 -0
- package/.claude/skills/hailer-api/references/files.md +301 -0
- package/.claude/skills/hailer-api/references/insights.md +469 -0
- package/.claude/skills/hailer-api/references/workflows.md +720 -0
- package/.claude/skills/hailer-api/references/workspaces-users.md +445 -0
- package/.claude/skills/insight-api/SKILL.md +185 -0
- package/.claude/skills/insight-api/references/insight-endpoints.md +514 -0
- package/.claude/skills/install-workflow-skill/SKILL.md +1056 -0
- package/.claude/skills/list-apps-skill/SKILL.md +1010 -0
- package/.claude/skills/list-workflows-minimal-skill/SKILL.md +992 -0
- package/.claude/skills/local-first-skill/SKILL.md +570 -0
- package/.claude/skills/mcp-tools/SKILL.md +419 -0
- package/.claude/skills/mcp-tools/references/api-endpoints.md +499 -0
- package/.claude/skills/mcp-tools/references/data-structures.md +554 -0
- package/.claude/skills/mcp-tools/references/implementation-patterns.md +717 -0
- package/.claude/skills/preview-insight-skill/SKILL.md +1290 -0
- package/.claude/skills/publish-hailer-app-skill/SKILL.md +453 -0
- package/.claude/skills/remove-app-member-skill/SKILL.md +671 -0
- package/.claude/skills/remove-app-skill/SKILL.md +985 -0
- package/.claude/skills/remove-insight-skill/SKILL.md +1011 -0
- package/.claude/skills/remove-workflow-skill/SKILL.md +920 -0
- package/.claude/skills/scaffold-hailer-app-skill/SKILL.md +1034 -0
- package/.claude/skills/skill-testing/README.md +137 -0
- package/.claude/skills/skill-testing/SKILL.md +348 -0
- package/.claude/skills/skill-testing/references/test-patterns.md +705 -0
- package/.claude/skills/skill-testing/references/testing-guide.md +603 -0
- package/.claude/skills/skill-testing/references/validation-checklist.md +537 -0
- package/.claude/skills/tool-builder/SKILL.md +328 -0
- package/.claude/skills/update-app-skill/SKILL.md +970 -0
- package/.claude/skills/update-workflow-field-skill/SKILL.md +1098 -0
- package/.env.example +81 -0
- package/.mcp.json +13 -0
- package/README.md +297 -0
- package/dist/app.d.ts +4 -0
- package/dist/app.js +74 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.js +5 -0
- package/dist/client/adaptive-documentation-bot.d.ts +108 -0
- package/dist/client/adaptive-documentation-bot.js +475 -0
- package/dist/client/adaptive-documentation-types.d.ts +66 -0
- package/dist/client/adaptive-documentation-types.js +9 -0
- package/dist/client/agent-activity-bot.d.ts +51 -0
- package/dist/client/agent-activity-bot.js +166 -0
- package/dist/client/agent-tracker.d.ts +499 -0
- package/dist/client/agent-tracker.js +659 -0
- package/dist/client/description-updater.d.ts +56 -0
- package/dist/client/description-updater.js +259 -0
- package/dist/client/log-parser.d.ts +72 -0
- package/dist/client/log-parser.js +387 -0
- package/dist/client/mcp-client.d.ts +50 -0
- package/dist/client/mcp-client.js +532 -0
- package/dist/client/message-processor.d.ts +35 -0
- package/dist/client/message-processor.js +352 -0
- package/dist/client/multi-bot-manager.d.ts +24 -0
- package/dist/client/multi-bot-manager.js +74 -0
- package/dist/client/providers/anthropic-provider.d.ts +19 -0
- package/dist/client/providers/anthropic-provider.js +631 -0
- package/dist/client/providers/llm-provider.d.ts +47 -0
- package/dist/client/providers/llm-provider.js +367 -0
- package/dist/client/providers/openai-provider.d.ts +23 -0
- package/dist/client/providers/openai-provider.js +621 -0
- package/dist/client/simple-llm-caller.d.ts +19 -0
- package/dist/client/simple-llm-caller.js +100 -0
- package/dist/client/skill-generator.d.ts +81 -0
- package/dist/client/skill-generator.js +386 -0
- package/dist/client/test-adaptive-bot.d.ts +9 -0
- package/dist/client/test-adaptive-bot.js +82 -0
- package/dist/client/token-pricing.d.ts +38 -0
- package/dist/client/token-pricing.js +127 -0
- package/dist/client/token-tracker.d.ts +232 -0
- package/dist/client/token-tracker.js +457 -0
- package/dist/client/token-usage-bot.d.ts +53 -0
- package/dist/client/token-usage-bot.js +153 -0
- package/dist/client/tool-executor.d.ts +69 -0
- package/dist/client/tool-executor.js +159 -0
- package/dist/client/tool-schema-loader.d.ts +60 -0
- package/dist/client/tool-schema-loader.js +178 -0
- package/dist/client/types.d.ts +69 -0
- package/dist/client/types.js +7 -0
- package/dist/config.d.ts +162 -0
- package/dist/config.js +296 -0
- package/dist/core.d.ts +26 -0
- package/dist/core.js +147 -0
- package/dist/lib/context-manager.d.ts +111 -0
- package/dist/lib/context-manager.js +431 -0
- package/dist/lib/logger.d.ts +74 -0
- package/dist/lib/logger.js +277 -0
- package/dist/lib/materialize.d.ts +3 -0
- package/dist/lib/materialize.js +101 -0
- package/dist/lib/normalizedName.d.ts +7 -0
- package/dist/lib/normalizedName.js +48 -0
- package/dist/lib/prompt-length-manager.d.ts +81 -0
- package/dist/lib/prompt-length-manager.js +457 -0
- package/dist/lib/terminal-prompt.d.ts +9 -0
- package/dist/lib/terminal-prompt.js +108 -0
- package/dist/mcp/UserContextCache.d.ts +56 -0
- package/dist/mcp/UserContextCache.js +163 -0
- package/dist/mcp/auth.d.ts +2 -0
- package/dist/mcp/auth.js +29 -0
- package/dist/mcp/hailer-clients.d.ts +42 -0
- package/dist/mcp/hailer-clients.js +246 -0
- package/dist/mcp/signal-handler.d.ts +45 -0
- package/dist/mcp/signal-handler.js +317 -0
- package/dist/mcp/tool-registry.d.ts +100 -0
- package/dist/mcp/tool-registry.js +306 -0
- package/dist/mcp/tools/activity.d.ts +15 -0
- package/dist/mcp/tools/activity.js +955 -0
- package/dist/mcp/tools/app.d.ts +20 -0
- package/dist/mcp/tools/app.js +1488 -0
- package/dist/mcp/tools/discussion.d.ts +19 -0
- package/dist/mcp/tools/discussion.js +950 -0
- package/dist/mcp/tools/file.d.ts +15 -0
- package/dist/mcp/tools/file.js +119 -0
- package/dist/mcp/tools/insight.d.ts +17 -0
- package/dist/mcp/tools/insight.js +806 -0
- package/dist/mcp/tools/skill.d.ts +10 -0
- package/dist/mcp/tools/skill.js +279 -0
- package/dist/mcp/tools/user.d.ts +10 -0
- package/dist/mcp/tools/user.js +108 -0
- package/dist/mcp/tools/workflow-template.d.ts +19 -0
- package/dist/mcp/tools/workflow-template.js +822 -0
- package/dist/mcp/tools/workflow.d.ts +18 -0
- package/dist/mcp/tools/workflow.js +1362 -0
- package/dist/mcp/utils/api-errors.d.ts +45 -0
- package/dist/mcp/utils/api-errors.js +160 -0
- package/dist/mcp/utils/data-transformers.d.ts +102 -0
- package/dist/mcp/utils/data-transformers.js +194 -0
- package/dist/mcp/utils/file-upload.d.ts +33 -0
- package/dist/mcp/utils/file-upload.js +148 -0
- package/dist/mcp/utils/hailer-api-client.d.ts +120 -0
- package/dist/mcp/utils/hailer-api-client.js +323 -0
- package/dist/mcp/utils/index.d.ts +13 -0
- package/dist/mcp/utils/index.js +39 -0
- package/dist/mcp/utils/logger.d.ts +42 -0
- package/dist/mcp/utils/logger.js +103 -0
- package/dist/mcp/utils/types.d.ts +286 -0
- package/dist/mcp/utils/types.js +7 -0
- package/dist/mcp/workspace-cache.d.ts +42 -0
- package/dist/mcp/workspace-cache.js +97 -0
- package/dist/mcp-server.d.ts +42 -0
- package/dist/mcp-server.js +280 -0
- package/package.json +56 -0
- 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
|