@hailer/mcp 1.1.11 → 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.
- package/dist/app.js +18 -5
- package/dist/bot/bot-config.d.ts +12 -1
- package/dist/bot/bot-config.js +98 -14
- package/dist/bot/bot-manager.d.ts +13 -3
- package/dist/bot/bot-manager.js +80 -25
- package/dist/bot/bot.d.ts +46 -0
- package/dist/bot/bot.js +542 -166
- package/dist/bot/services/message-classifier.js +17 -0
- package/dist/bot/services/permission-guard.d.ts +52 -0
- package/dist/bot/services/permission-guard.js +149 -0
- package/dist/bot/services/types.d.ts +5 -0
- package/dist/bot/services/typing-indicator.d.ts +6 -1
- package/dist/bot/services/typing-indicator.js +19 -3
- package/dist/config.d.ts +6 -1
- package/dist/config.js +43 -0
- package/dist/core.js +3 -6
- package/dist/mcp/UserContextCache.d.ts +5 -0
- package/dist/mcp/UserContextCache.js +51 -19
- package/dist/mcp/hailer-clients.d.ts +19 -1
- package/dist/mcp/hailer-clients.js +157 -20
- package/dist/mcp/session-store.d.ts +68 -0
- package/dist/mcp/session-store.js +169 -0
- package/dist/mcp/signal-handler.js +12 -12
- package/dist/mcp/tool-registry.d.ts +17 -4
- package/dist/mcp/tool-registry.js +37 -7
- package/dist/mcp/tools/activity.js +99 -7
- package/dist/mcp/tools/app-scaffold.js +304 -336
- package/dist/mcp/tools/company.d.ts +9 -0
- package/dist/mcp/tools/company.js +88 -0
- package/dist/mcp/tools/discussion.js +68 -0
- package/dist/mcp/tools/workflow-permissions.d.ts +15 -0
- package/dist/mcp/tools/workflow-permissions.js +204 -0
- package/dist/mcp/tools/workflow.js +57 -18
- package/dist/mcp/utils/index.d.ts +2 -0
- package/dist/mcp/utils/index.js +12 -1
- package/dist/mcp/utils/role-utils.d.ts +74 -0
- package/dist/mcp/utils/role-utils.js +151 -0
- package/dist/mcp/utils/types.d.ts +43 -1
- package/dist/mcp/utils/types.js +14 -0
- package/dist/mcp/webhook-handler.d.ts +6 -0
- package/dist/mcp/webhook-handler.js +11 -0
- package/dist/mcp-server.d.ts +23 -2
- package/dist/mcp-server.js +639 -111
- package/dist/plugins/vipunen/client.d.ts +150 -0
- package/dist/plugins/vipunen/client.js +535 -0
- package/dist/plugins/vipunen/config/schema-config.json +19 -0
- package/dist/plugins/vipunen/config/schema-doc.json +22 -0
- package/dist/plugins/vipunen/index.d.ts +41 -0
- package/dist/plugins/vipunen/index.js +88 -0
- package/dist/plugins/vipunen/tools.d.ts +26 -0
- package/dist/plugins/vipunen/tools.js +501 -0
- package/package.json +2 -1
- package/.claude/.context-watchdog.json +0 -1
- package/.claude/.session-checked +0 -1
- package/.claude/CLAUDE.md +0 -370
- package/.claude/agents/agent-ada-skill-builder.md +0 -94
- package/.claude/agents/agent-alejandro-function-fields.md +0 -342
- package/.claude/agents/agent-bjorn-config-audit.md +0 -103
- package/.claude/agents/agent-builder-agent-creator.md +0 -130
- package/.claude/agents/agent-code-simplifier.md +0 -53
- package/.claude/agents/agent-dmitri-activity-crud.md +0 -159
- package/.claude/agents/agent-giuseppe-app-builder.md +0 -247
- package/.claude/agents/agent-gunther-mcp-tools.md +0 -39
- package/.claude/agents/agent-helga-workflow-config.md +0 -204
- package/.claude/agents/agent-igor-activity-mover-automation.md +0 -125
- package/.claude/agents/agent-ingrid-doc-templates.md +0 -261
- package/.claude/agents/agent-ivan-monolith.md +0 -154
- package/.claude/agents/agent-kenji-data-reader.md +0 -86
- package/.claude/agents/agent-lars-code-inspector.md +0 -102
- package/.claude/agents/agent-marco-mockup-builder.md +0 -110
- package/.claude/agents/agent-marcus-api-documenter.md +0 -323
- package/.claude/agents/agent-marketplace-publisher.md +0 -280
- package/.claude/agents/agent-marketplace-reviewer.md +0 -309
- package/.claude/agents/agent-permissions-handler.md +0 -208
- package/.claude/agents/agent-simple-writer.md +0 -48
- package/.claude/agents/agent-svetlana-code-review.md +0 -171
- package/.claude/agents/agent-tanya-test-runner.md +0 -333
- package/.claude/agents/agent-ui-designer.md +0 -100
- package/.claude/agents/agent-viktor-sql-insights.md +0 -212
- package/.claude/agents/agent-web-search.md +0 -55
- package/.claude/agents/agent-yevgeni-discussions.md +0 -45
- package/.claude/agents/agent-zara-zapier.md +0 -159
- package/.claude/commands/app-squad.md +0 -135
- package/.claude/commands/audit-squad.md +0 -158
- package/.claude/commands/autoplan.md +0 -563
- package/.claude/commands/cleanup-squad.md +0 -98
- package/.claude/commands/config-squad.md +0 -106
- package/.claude/commands/crud-squad.md +0 -87
- package/.claude/commands/data-squad.md +0 -97
- package/.claude/commands/debug-squad.md +0 -303
- package/.claude/commands/doc-squad.md +0 -65
- package/.claude/commands/handoff.md +0 -137
- package/.claude/commands/health.md +0 -49
- package/.claude/commands/help.md +0 -29
- package/.claude/commands/help:agents.md +0 -151
- package/.claude/commands/help:commands.md +0 -78
- package/.claude/commands/help:faq.md +0 -79
- package/.claude/commands/help:plugins.md +0 -50
- package/.claude/commands/help:skills.md +0 -93
- package/.claude/commands/help:tools.md +0 -75
- package/.claude/commands/hotfix-squad.md +0 -112
- package/.claude/commands/integration-squad.md +0 -82
- package/.claude/commands/janitor-squad.md +0 -167
- package/.claude/commands/learn-auto.md +0 -120
- package/.claude/commands/learn.md +0 -120
- package/.claude/commands/mcp-list.md +0 -27
- package/.claude/commands/onboard-squad.md +0 -140
- package/.claude/commands/plan-workspace.md +0 -732
- package/.claude/commands/prd.md +0 -130
- package/.claude/commands/project-status.md +0 -82
- package/.claude/commands/publish.md +0 -138
- package/.claude/commands/recap.md +0 -69
- package/.claude/commands/restore.md +0 -64
- package/.claude/commands/review-squad.md +0 -152
- package/.claude/commands/save.md +0 -24
- package/.claude/commands/stats.md +0 -19
- package/.claude/commands/swarm.md +0 -210
- package/.claude/commands/tool-builder.md +0 -39
- package/.claude/commands/ws-pull.md +0 -44
- package/.claude/hooks/_shared-memory.cjs +0 -305
- package/.claude/hooks/_utils.cjs +0 -108
- package/.claude/hooks/agent-failure-detector.cjs +0 -383
- package/.claude/hooks/agent-usage-logger.cjs +0 -204
- package/.claude/hooks/app-edit-guard.cjs +0 -494
- package/.claude/hooks/auto-learn.cjs +0 -304
- package/.claude/hooks/bash-guard.cjs +0 -272
- package/.claude/hooks/builder-mode-manager.cjs +0 -354
- package/.claude/hooks/bulk-activity-guard.cjs +0 -271
- package/.claude/hooks/context-watchdog.cjs +0 -230
- package/.claude/hooks/delegation-reminder.cjs +0 -465
- package/.claude/hooks/design-system-lint.cjs +0 -271
- package/.claude/hooks/post-scaffold-hook.cjs +0 -181
- package/.claude/hooks/prompt-guard.cjs +0 -354
- package/.claude/hooks/publish-template-guard.cjs +0 -147
- package/.claude/hooks/session-start.cjs +0 -35
- package/.claude/hooks/shared-memory-writer.cjs +0 -147
- package/.claude/hooks/skill-injector.cjs +0 -140
- package/.claude/hooks/skill-usage-logger.cjs +0 -258
- package/.claude/hooks/src-edit-guard.cjs +0 -240
- package/.claude/hooks/sync-marketplace-agents.cjs +0 -346
- package/.claude/settings.json +0 -257
- package/.claude/skills/SDK-activity-patterns/SKILL.md +0 -428
- package/.claude/skills/SDK-document-templates/SKILL.md +0 -1033
- package/.claude/skills/SDK-function-fields/SKILL.md +0 -542
- package/.claude/skills/SDK-generate-skill/SKILL.md +0 -92
- package/.claude/skills/SDK-init-skill/SKILL.md +0 -127
- package/.claude/skills/SDK-insight-queries/SKILL.md +0 -787
- package/.claude/skills/SDK-ws-config-skill/SKILL.md +0 -1139
- package/.claude/skills/agent-structure/SKILL.md +0 -98
- package/.claude/skills/api-documentation-patterns/SKILL.md +0 -474
- package/.claude/skills/chrome-mcp-reference/SKILL.md +0 -370
- package/.claude/skills/delegation-routing/SKILL.md +0 -202
- package/.claude/skills/frontend-design/SKILL.md +0 -254
- package/.claude/skills/hailer-activity-mover/SKILL.md +0 -213
- package/.claude/skills/hailer-api-client/SKILL.md +0 -518
- package/.claude/skills/hailer-app-builder/SKILL.md +0 -1434
- package/.claude/skills/hailer-apps-pictures/SKILL.md +0 -269
- package/.claude/skills/hailer-design-system/SKILL.md +0 -235
- package/.claude/skills/hailer-monolith-automations/SKILL.md +0 -686
- package/.claude/skills/hailer-permissions-system/SKILL.md +0 -121
- package/.claude/skills/hailer-project-protocol/SKILL.md +0 -488
- package/.claude/skills/hailer-rest-api/SKILL.md +0 -61
- package/.claude/skills/hailer-rest-api/hailer-activities.md +0 -184
- package/.claude/skills/hailer-rest-api/hailer-admin.md +0 -473
- package/.claude/skills/hailer-rest-api/hailer-calendar.md +0 -256
- package/.claude/skills/hailer-rest-api/hailer-feed.md +0 -249
- package/.claude/skills/hailer-rest-api/hailer-insights.md +0 -195
- package/.claude/skills/hailer-rest-api/hailer-messaging.md +0 -276
- package/.claude/skills/hailer-rest-api/hailer-workflows.md +0 -283
- package/.claude/skills/insight-join-patterns/SKILL.md +0 -174
- package/.claude/skills/integration-patterns/SKILL.md +0 -421
- package/.claude/skills/json-only-output/SKILL.md +0 -72
- package/.claude/skills/lsp-setup/SKILL.md +0 -160
- package/.claude/skills/mcp-direct-tools/SKILL.md +0 -153
- package/.claude/skills/optional-parameters/SKILL.md +0 -72
- package/.claude/skills/publish-hailer-app/SKILL.md +0 -244
- package/.claude/skills/testing-patterns/SKILL.md +0 -630
- package/.claude/skills/tool-builder/SKILL.md +0 -250
- package/.claude/skills/tool-parameter-usage/SKILL.md +0 -126
- package/.claude/skills/tool-response-verification/SKILL.md +0 -92
- package/.claude/skills/zapier-hailer-patterns/SKILL.md +0 -581
- package/.hailer-mcp-port +0 -1
- package/.mcp.json +0 -13
- package/.opencode/agent/agent-ada-skill-builder.md +0 -35
- package/.opencode/agent/agent-alejandro-function-fields.md +0 -39
- package/.opencode/agent/agent-bjorn-config-audit.md +0 -36
- package/.opencode/agent/agent-builder-agent-creator.md +0 -39
- package/.opencode/agent/agent-code-simplifier.md +0 -31
- package/.opencode/agent/agent-dmitri-activity-crud.md +0 -40
- package/.opencode/agent/agent-giuseppe-app-builder.md +0 -37
- package/.opencode/agent/agent-gunther-mcp-tools.md +0 -39
- package/.opencode/agent/agent-helga-workflow-config.md +0 -204
- package/.opencode/agent/agent-igor-activity-mover-automation.md +0 -46
- package/.opencode/agent/agent-ingrid-doc-templates.md +0 -39
- package/.opencode/agent/agent-ivan-monolith.md +0 -46
- package/.opencode/agent/agent-kenji-data-reader.md +0 -53
- package/.opencode/agent/agent-lars-code-inspector.md +0 -28
- package/.opencode/agent/agent-marco-mockup-builder.md +0 -42
- package/.opencode/agent/agent-marcus-api-documenter.md +0 -53
- package/.opencode/agent/agent-marketplace-publisher.md +0 -44
- package/.opencode/agent/agent-marketplace-reviewer.md +0 -42
- package/.opencode/agent/agent-permissions-handler.md +0 -50
- package/.opencode/agent/agent-simple-writer.md +0 -45
- package/.opencode/agent/agent-svetlana-code-review.md +0 -39
- package/.opencode/agent/agent-tanya-test-runner.md +0 -57
- package/.opencode/agent/agent-ui-designer.md +0 -56
- package/.opencode/agent/agent-viktor-sql-insights.md +0 -34
- package/.opencode/agent/agent-web-search.md +0 -42
- package/.opencode/agent/agent-yevgeni-discussions.md +0 -37
- package/.opencode/agent/agent-zara-zapier.md +0 -53
- package/.opencode/commands/app-squad.md +0 -135
- package/.opencode/commands/audit-squad.md +0 -158
- package/.opencode/commands/autoplan.md +0 -563
- package/.opencode/commands/cleanup-squad.md +0 -98
- package/.opencode/commands/config-squad.md +0 -106
- package/.opencode/commands/crud-squad.md +0 -87
- package/.opencode/commands/data-squad.md +0 -97
- package/.opencode/commands/debug-squad.md +0 -303
- package/.opencode/commands/doc-squad.md +0 -65
- package/.opencode/commands/handoff.md +0 -137
- package/.opencode/commands/health.md +0 -49
- package/.opencode/commands/help-agents.md +0 -151
- package/.opencode/commands/help-commands.md +0 -32
- package/.opencode/commands/help-faq.md +0 -29
- package/.opencode/commands/help-plugins.md +0 -28
- package/.opencode/commands/help-skills.md +0 -7
- package/.opencode/commands/help-tools.md +0 -40
- package/.opencode/commands/help.md +0 -28
- package/.opencode/commands/hotfix-squad.md +0 -112
- package/.opencode/commands/integration-squad.md +0 -82
- package/.opencode/commands/janitor-squad.md +0 -167
- package/.opencode/commands/learn-auto.md +0 -120
- package/.opencode/commands/learn.md +0 -120
- package/.opencode/commands/mcp-list.md +0 -27
- package/.opencode/commands/onboard-squad.md +0 -140
- package/.opencode/commands/plan-workspace.md +0 -732
- package/.opencode/commands/prd.md +0 -131
- package/.opencode/commands/project-status.md +0 -82
- package/.opencode/commands/publish.md +0 -138
- package/.opencode/commands/recap.md +0 -69
- package/.opencode/commands/restore.md +0 -64
- package/.opencode/commands/review-squad.md +0 -152
- package/.opencode/commands/save.md +0 -24
- package/.opencode/commands/stats.md +0 -19
- package/.opencode/commands/swarm.md +0 -210
- package/.opencode/commands/tool-builder.md +0 -39
- package/.opencode/commands/ws-pull.md +0 -44
- package/.opencode/opencode.json +0 -21
- package/inbox/failures.log +0 -1
- package/inbox/usage.jsonl +0 -4
- package/scripts/postinstall.cjs +0 -64
- 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" |
|