@elevasis/sdk 1.28.1 → 1.29.0
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/cli.cjs +4 -2
- package/dist/index.d.ts +18 -0
- package/dist/test-utils/index.d.ts +18 -0
- package/package.json +4 -4
- package/reference/_navigation.md +4 -4
- package/reference/_reference-manifest.json +8 -8
- package/reference/claude-config/hooks/scaffold-registry-reminder.mjs +3 -3
- package/reference/claude-config/skills/tutorial/technical.md +5 -5
- package/reference/claude-config/sync-notes/2026-05-24-platform-invite-router-core-baseline.md +28 -0
- package/reference/core/exports.mdx +16 -0
- package/reference/core/index.mdx +58 -0
- package/reference/index.mdx +36 -67
- package/reference/scaffold/operations/propagation-pipeline.md +152 -152
- package/reference/{cli-management.mdx → sdk/cli-management.mdx} +159 -13
- package/reference/{cli.mdx → sdk/cli.mdx} +68 -12
- package/reference/sdk/exports.mdx +14 -0
- package/reference/sdk/index.mdx +93 -0
- package/reference/sdk/platform-tools/adapters-integration.mdx +25 -0
- package/reference/sdk/platform-tools/adapters-platform.mdx +24 -0
- package/reference/{platform-tools → sdk/platform-tools}/index.mdx +9 -30
- package/reference/{resources → sdk/resources}/patterns.mdx +29 -11
- package/reference/ui/exports.mdx +60 -0
- package/reference/ui/index.mdx +75 -0
- package/reference/platform-tools/adapters-integration.mdx +0 -300
- package/reference/platform-tools/adapters-platform.mdx +0 -552
- /package/reference/{concepts.mdx → sdk/concepts.mdx} +0 -0
- /package/reference/{deployment → sdk/deployment}/command-center.mdx +0 -0
- /package/reference/{deployment → sdk/deployment}/execution-reference.mdx +0 -0
- /package/reference/{deployment → sdk/deployment}/index.mdx +0 -0
- /package/reference/{framework → sdk/framework}/agent.mdx +0 -0
- /package/reference/{framework → sdk/framework}/index.mdx +0 -0
- /package/reference/{framework → sdk/framework}/interaction-guidance.mdx +0 -0
- /package/reference/{framework → sdk/framework}/memory.mdx +0 -0
- /package/reference/{framework → sdk/framework}/project-structure.mdx +0 -0
- /package/reference/{framework → sdk/framework}/resource-documentation.mdx +0 -0
- /package/reference/{framework → sdk/framework}/tutorial-system.mdx +0 -0
- /package/reference/{getting-started.mdx → sdk/getting-started.mdx} +0 -0
- /package/reference/{platform-tools → sdk/platform-tools}/type-safety.mdx +0 -0
- /package/reference/{resources → sdk/resources}/index.mdx +0 -0
- /package/reference/{resources → sdk/resources}/types.mdx +0 -0
- /package/reference/{roadmap.mdx → sdk/roadmap.mdx} +0 -0
- /package/reference/{runtime.mdx → sdk/runtime.mdx} +0 -0
- /package/reference/{templates → sdk/templates}/data-enrichment.mdx +0 -0
- /package/reference/{templates → sdk/templates}/email-sender.mdx +0 -0
- /package/reference/{templates → sdk/templates}/index.mdx +0 -0
- /package/reference/{templates → sdk/templates}/lead-scorer.mdx +0 -0
- /package/reference/{templates → sdk/templates}/pdf-generator.mdx +0 -0
- /package/reference/{templates → sdk/templates}/recurring-job.mdx +0 -0
- /package/reference/{templates → sdk/templates}/text-classifier.mdx +0 -0
- /package/reference/{templates → sdk/templates}/web-scraper.mdx +0 -0
- /package/reference/{troubleshooting.mdx → sdk/troubleshooting.mdx} +0 -0
|
@@ -405,36 +405,49 @@ elevasis-sdk describe onboard-client
|
|
|
405
405
|
|
|
406
406
|
## elevasis-sdk creds
|
|
407
407
|
|
|
408
|
-
Manage credentials for your
|
|
408
|
+
Manage credentials for your organization. Credentials store API keys and secrets server-side so they never appear in your worker code.
|
|
409
409
|
|
|
410
410
|
**Synopsis:**
|
|
411
411
|
|
|
412
412
|
```
|
|
413
413
|
elevasis-sdk creds list
|
|
414
|
-
elevasis-sdk creds
|
|
415
|
-
elevasis-sdk creds
|
|
414
|
+
elevasis-sdk creds create --name <name> --type <type> [--value <json>]
|
|
415
|
+
elevasis-sdk creds update <name> --value <json>
|
|
416
|
+
elevasis-sdk creds rename <name> --to <newName>
|
|
417
|
+
elevasis-sdk creds delete <name> [--force]
|
|
416
418
|
```
|
|
417
419
|
|
|
418
|
-
**
|
|
420
|
+
**Subcommands:**
|
|
419
421
|
|
|
420
|
-
- `list` -- display all credentials
|
|
421
|
-
- `
|
|
422
|
-
- `
|
|
422
|
+
- `list` -- display all credentials (metadata only, no secret values)
|
|
423
|
+
- `create` -- create a new credential; `--name` and `--type` are required; `--value` is an optional JSON string for the initial value
|
|
424
|
+
- `update <name>` -- replace the value of an existing credential; `--value` (JSON) is required
|
|
425
|
+
- `rename <name>` -- rename a credential; `--to <newName>` is required
|
|
426
|
+
- `delete <name>` -- delete a credential; pass `--force` to skip the confirmation prompt
|
|
423
427
|
|
|
424
428
|
**Flags:**
|
|
425
429
|
|
|
426
|
-
| Flag | Description
|
|
427
|
-
| ------------------- |
|
|
428
|
-
| `--
|
|
430
|
+
| Flag | Description |
|
|
431
|
+
| ------------------- | -------------------------------------------------- |
|
|
432
|
+
| `--name <name>` | Credential name (create: required) |
|
|
433
|
+
| `--type <type>` | Credential type, e.g. `api-key` (create: required) |
|
|
434
|
+
| `--value <json>` | Credential value as a JSON string |
|
|
435
|
+
| `--to <newName>` | New name (rename: required) |
|
|
436
|
+
| `--force` | Skip confirmation prompt (delete) |
|
|
437
|
+
| `--api-url <url>` | Override the API base URL |
|
|
429
438
|
|
|
430
439
|
**Examples:**
|
|
431
440
|
|
|
432
441
|
```bash
|
|
433
442
|
elevasis-sdk creds list
|
|
434
|
-
elevasis-sdk creds
|
|
435
|
-
elevasis-sdk creds
|
|
443
|
+
elevasis-sdk creds create --name openai-key --type api-key --value '{"key":"sk-proj-***"}'
|
|
444
|
+
elevasis-sdk creds update openai-key --value '{"key":"sk-proj-new"}'
|
|
445
|
+
elevasis-sdk creds rename openai-key --to openai-prod-key
|
|
446
|
+
elevasis-sdk creds delete openai-prod-key --force
|
|
436
447
|
```
|
|
437
448
|
|
|
449
|
+
**Implementation:** `packages/sdk/src/cli/commands/creds/creds.ts`
|
|
450
|
+
|
|
438
451
|
---
|
|
439
452
|
|
|
440
453
|
## elevasis-sdk rename
|
|
@@ -558,6 +571,49 @@ pnpm -C external/<project>/operations exec elevasis-sdk cli
|
|
|
558
571
|
|
|
559
572
|
---
|
|
560
573
|
|
|
574
|
+
## elevasis-sdk doctor
|
|
575
|
+
|
|
576
|
+
Check that your Elevasis project is correctly configured.
|
|
577
|
+
|
|
578
|
+
**Synopsis:**
|
|
579
|
+
|
|
580
|
+
```
|
|
581
|
+
elevasis-sdk doctor [--verbose]
|
|
582
|
+
```
|
|
583
|
+
|
|
584
|
+
**Behavior:**
|
|
585
|
+
|
|
586
|
+
Runs four sequential checks and reports `[OK]` / `[FAIL]` / `[WARN]` for each. Exits with code 1 if any check fails. Later checks are skipped when a prerequisite fails.
|
|
587
|
+
|
|
588
|
+
1. Project root resolved -- locates the `.elevasis` marker file from the current working directory
|
|
589
|
+
2. `.env` found at project root
|
|
590
|
+
3. `ELEVASIS_PLATFORM_KEY` present and non-empty
|
|
591
|
+
4. API reachable and key valid -- calls `GET /api/external/health`
|
|
592
|
+
|
|
593
|
+
**Flags:**
|
|
594
|
+
|
|
595
|
+
| Flag | Description |
|
|
596
|
+
| ----------- | ------------------------------------------------------------------- |
|
|
597
|
+
| `--verbose` | Print full paths, response bodies, and error details for each check |
|
|
598
|
+
|
|
599
|
+
**Example output (all passing):**
|
|
600
|
+
|
|
601
|
+
```
|
|
602
|
+
Running Elevasis SDK doctor checks...
|
|
603
|
+
|
|
604
|
+
[OK] Project root: /path/to/my-project
|
|
605
|
+
[OK] .env: Found at /path/to/my-project/.env
|
|
606
|
+
[OK] API key: Set (length: 56)
|
|
607
|
+
[OK] API: Reachable. Workspace: Acme Corp (ws_abc123)
|
|
608
|
+
[WARN] SDK compat: server minSdkVersion is 1.25.0; check is advisory in v1.
|
|
609
|
+
|
|
610
|
+
All checks passed. Your Elevasis project is correctly configured.
|
|
611
|
+
```
|
|
612
|
+
|
|
613
|
+
**Implementation:** `packages/sdk/src/cli/commands/doctor.ts`
|
|
614
|
+
|
|
615
|
+
---
|
|
616
|
+
|
|
561
617
|
## Global Flags
|
|
562
618
|
|
|
563
619
|
These flags are accepted by all commands:
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "@elevasis/sdk Export Catalog"
|
|
3
|
+
description: "Auto-generated catalog of all published @elevasis/sdk subpath exports, derived from packages/sdk/reference-manifest.ts."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
{/* @generated by .claude/_gen/sync-sdk-catalog.ts — DO NOT EDIT */}
|
|
7
|
+
{/* Regenerate: pnpm gen:sdk-catalog */}
|
|
8
|
+
|
|
9
|
+
| Import | Title | Group | Description |
|
|
10
|
+
| --- | --- | --- | --- |
|
|
11
|
+
| `@elevasis/sdk` | SDK | Getting Started | Root SDK types, config, runtime errors, and registry surface. |
|
|
12
|
+
| `@elevasis/sdk/worker` | Worker Runtime | Runtime | Worker runtime entrypoint, adapters, and platform execution surface. |
|
|
13
|
+
| `@elevasis/sdk/test-utils` | Test Utils | Testing | Workflow runner, registry assertion, and typed adapter mocks for SDK consumers. |
|
|
14
|
+
| `@elevasis/sdk/node` | Node Build Tooling | Tooling | Node-only build helpers: knowledge codegen and other fs/path/process utilities. Not browser-safe. |
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Elevasis SDK
|
|
3
|
+
description: Build and deploy workflows, agents, and resources with the Elevasis SDK
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
`@elevasis/sdk` lets you build workflows, agents, and resources in TypeScript and deploy them to the Elevasis platform with a single command. The developer experience is Vercel-style: write TypeScript, validate locally, deploy -- the platform handles execution, tool access, and observability. You never manage infrastructure. Zod 4.1 is the only peer dependency.
|
|
7
|
+
|
|
8
|
+
Workflows are step-based automations with typed inputs and outputs. Agents are autonomous AI resources with access to platform tools. Both are defined in TypeScript, exported from a single entry point, and deployed with `elevasis-sdk deploy`. Resources appear in AI Studio immediately after a successful deploy.
|
|
9
|
+
|
|
10
|
+
The SDK ships with a full CLI (`elevasis-sdk`) for validation, deployment, execution, inspection, and project-management operations. Platform tools expose 25 adapters (13 integration + 12 platform) across integration adapters and platform services -- Gmail, Stripe, Google Sheets, Attio, and more -- with credentials managed server-side so API keys never cross the execution boundary.
|
|
11
|
+
|
|
12
|
+
## Quick Start
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
pnpm dlx @elevasis/sdk init my-project
|
|
16
|
+
cd my-project
|
|
17
|
+
pnpm install
|
|
18
|
+
elevasis-sdk deploy
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
After `pnpm dlx @elevasis/sdk init`, your project is scaffolded with a working echo workflow, config file, TypeScript setup, and a `CLAUDE.md` that gives Claude Code full awareness of the SDK.
|
|
22
|
+
|
|
23
|
+
## What You Can Build
|
|
24
|
+
|
|
25
|
+
- **Workflows** -- Step-based automation with typed inputs and outputs. Steps can be linear, conditional, or branching. Each step is a plain async function. See [Resources](resources/index.mdx) for the complete definition API.
|
|
26
|
+
- **Agents** -- Autonomous AI resources with access to platform tools. Agents run in the worker runtime with full LLM access and platform tool support. Use `--async` when executing agents to avoid HTTP timeout limits on long-running runs.
|
|
27
|
+
- **Feature-driven apps** -- The published `@elevasis/ui` surface includes manifest-backed shared features for Lead Gen, CRM, Projects, Operations, Monitoring, Settings, and SEO, plus dashboard-oriented compatibility components for host-owned shells. See [Provided Features](deployment/index.mdx#provided-features).
|
|
28
|
+
|
|
29
|
+
## Platform Tools
|
|
30
|
+
|
|
31
|
+
The platform exposes 25 adapters (13 integration + 12 platform) across integration adapters and platform services -- Gmail, Stripe, Google Sheets, Attio, and more. Import typed adapters from `@elevasis/sdk/worker` inside any workflow step or agent. Credentials are managed server-side; API keys never cross the execution boundary.
|
|
32
|
+
|
|
33
|
+
See [Platform Tools](platform-tools/index.mdx) for the full catalog, adapter reference, and credential setup.
|
|
34
|
+
|
|
35
|
+
## Known Limitations
|
|
36
|
+
|
|
37
|
+
- **No streaming logs** -- Execution logs are returned in the response body after completion. Real-time log streaming is not available.
|
|
38
|
+
- **Agent HTTP timeouts** -- Use `elevasis-sdk exec --async` for agent executions. Agents can run for minutes; the synchronous endpoint will time out for long-running runs. The `--async` flag returns an execution ID immediately and polls for the result.
|
|
39
|
+
|
|
40
|
+
## Documentation
|
|
41
|
+
|
|
42
|
+
### Getting Started
|
|
43
|
+
|
|
44
|
+
- [Getting Started](getting-started.mdx) - Installation, authentication, first workflow, and project structure
|
|
45
|
+
|
|
46
|
+
### Core Concepts
|
|
47
|
+
|
|
48
|
+
- [Resources](resources/index.mdx) - Workflow and agent definition patterns, Zod schemas, step types, and routing
|
|
49
|
+
- [Platform Tools](platform-tools/index.mdx) - Full catalog of 25 adapters (13 integration + 12 platform), integration adapters, and credential management
|
|
50
|
+
- [Credential Security](platform-tools/index.mdx#credential-security) - Three-layer credential model, HTTP tool patterns, and credential management
|
|
51
|
+
|
|
52
|
+
### Reference
|
|
53
|
+
|
|
54
|
+
- [Concepts](concepts.mdx) - Plain-English concept explanations, glossary, Zod guide, execution model, and common errors
|
|
55
|
+
- [Templates](templates/index.mdx) - 7 workflow templates: web-scraper, data-enrichment, email-sender, lead-scorer, and more
|
|
56
|
+
- [CLI Reference](cli.mdx) - Core commands: check, deploy, exec, resources, executions, deployments, describe, creds, and rename
|
|
57
|
+
- [CLI Management Commands](cli-management.mdx) - Management families: project:\*, note:\*, acquisition:\*, client:\*, agent:\*, session:\*, queue:\*, schedule:\*, om:\*, and ui:\*
|
|
58
|
+
- [Deployment](deployment/index.mdx) - Deploy pipeline, versioning, bundle upload, and registry registration
|
|
59
|
+
- [Runtime](runtime.mdx) - Worker execution model, concurrency, timeouts, cancellation, resource limits, and v1 limitations
|
|
60
|
+
|
|
61
|
+
### Typed Adapters
|
|
62
|
+
|
|
63
|
+
- [Integration Adapters](platform-tools/adapters-integration.mdx) - Integration adapter catalog for Attio, Stripe, Google Sheets, Resend, and more
|
|
64
|
+
- [Platform Adapters](platform-tools/adapters-platform.mdx) - All 12 platform service adapters: scheduler, storage, llm, pdf, approval, and more
|
|
65
|
+
|
|
66
|
+
### Framework
|
|
67
|
+
|
|
68
|
+
- [Development Framework](framework/index.mdx) - How Claude Code helps you build: project structure, agent integration, memory, and documentation
|
|
69
|
+
- [Project Structure](framework/project-structure.mdx) - Scaffolded file layout, domain barrels, src/index.ts entry point, and config files
|
|
70
|
+
- [Agent Configuration](framework/agent.mdx) - Agent capabilities, tool access, model config, and Claude Code integration patterns
|
|
71
|
+
- [Memory](framework/memory.mdx) - Agent memory system, session state, developer profiles, and workspace conventions
|
|
72
|
+
- [Interaction Guidance](framework/interaction-guidance.mdx) - Skill dimension adaptation rules for platform navigation, API integration, and automation concepts
|
|
73
|
+
- [Tutorial System](framework/tutorial-system.mdx) - 21-item tutorial menu, skill-adaptive lesson variants, progress tracking, and module contents
|
|
74
|
+
- [Resource Documentation](framework/resource-documentation.mdx) - Docs directory structure, frontmatter schema, size limits, deploy behavior, and /docs command reference
|
|
75
|
+
|
|
76
|
+
### Resources Subpages
|
|
77
|
+
|
|
78
|
+
- [SDK Types](resources/types.mdx) - Complete type reference for `@elevasis/sdk` exports, config fields, and step handler context
|
|
79
|
+
- [Common Patterns](resources/patterns.mdx) - Sequential steps, conditional branching, error handling, and resource status patterns
|
|
80
|
+
|
|
81
|
+
### Deployment Subpages
|
|
82
|
+
|
|
83
|
+
- [Command Center](deployment/command-center.mdx) - Resource graph, relationships, node types, and post-deployment UI reference
|
|
84
|
+
- [Execution Reference](deployment/execution-reference.mdx) - REST endpoints for executing resources, managing deployments, and React UI components for custom Run dialogs
|
|
85
|
+
|
|
86
|
+
### More
|
|
87
|
+
|
|
88
|
+
- [Troubleshooting](troubleshooting.mdx) - Static error catalog for CLI, deployment, schema, and runtime failures
|
|
89
|
+
- [Roadmap](roadmap.mdx) - Planned features including error taxonomy, retry semantics, circuit breaker, and metrics
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
**Last Updated:** 2026-05-19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Integration Adapters"
|
|
3
|
+
description: "Auto-generated table of all 13 integration (credential-bound) adapters exported from @elevasis/sdk/worker, derived from static analysis of the adapter source files."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
{/* @generated by .claude/_gen/sync-sdk-adapters.ts — DO NOT EDIT */}
|
|
7
|
+
{/* Regenerate: pnpm gen:sdk-adapters */}
|
|
8
|
+
|
|
9
|
+
Integration adapters use a factory pattern. Call `create*Adapter(credential)` with a credential name configured in the Command Center to get a typed adapter object.
|
|
10
|
+
|
|
11
|
+
| Adapter | Factory | Methods | Description |
|
|
12
|
+
| --- | --- | --- | --- |
|
|
13
|
+
| Attio | `createAttioAdapter(credential)` | `createRecord`, `updateRecord`, `listRecords`, `getRecord`, `deleteRecord`, `listObjects`, `listAttributes`, `createAttribute`, `updateAttribute`, `createNote`, `listNotes`, `deleteNote` | Attio CRM — create, read, update, delete records, objects, attributes, and notes. |
|
|
14
|
+
| Apify | `createApifyAdapter(credential)` | `runActor`, `getDatasetItems`, `startActor` | Apify — run actors and retrieve dataset items from web scraping runs. |
|
|
15
|
+
| ClickUp | `createClickUpAdapter(credential)` | `verify`, `createTask` | ClickUp — verify connection and create tasks in ClickUp lists. |
|
|
16
|
+
| Dropbox | `createDropboxAdapter(credential)` | `uploadFile`, `createFolder` | Dropbox — upload files and create folders. |
|
|
17
|
+
| Gmail | `createGmailAdapter(credential)` | `sendEmail` | Gmail — send emails via a bound Gmail credential. |
|
|
18
|
+
| GoogleSheets | `createGoogleSheetsAdapter(credential)` | `readSheet`, `writeSheet`, `appendRows`, `clearRange`, `getSpreadsheetMetadata`, `batchUpdate`, `getHeaders`, `getLastRow`, `getRowByValue`, `updateRowByValue`, `upsertRow`, `filterRows`, `deleteRowByValue` | Google Sheets — read, write, append, filter, and manage spreadsheet data. |
|
|
19
|
+
| Instantly | `createInstantlyAdapter(credential)` | `sendReply`, `removeFromSubsequence`, `getEmails`, `updateInterestStatus`, `addToCampaign`, `listCampaigns`, `getCampaign`, `updateCampaign`, `pauseCampaign`, `activateCampaign`, `getCampaignAnalytics`, `getStepAnalytics`, `bulkAddLeads`, `getAccountHealth`, `createInboxTest`, `createCampaign`, `getDailyCampaignAnalytics`, `listLeads`, `bulkDeleteLeads`, `deleteCampaign`, `patchLead` | Instantly — manage email outreach campaigns, leads, analytics, and inbox health. |
|
|
20
|
+
| MillionVerifier | `createMillionVerifierAdapter(credential)` | `verifyEmail`, `checkCredits` | MillionVerifier — verify email deliverability and check account credits. |
|
|
21
|
+
| Anymailfinder | `createAnymailfinderAdapter(credential)` | `findCompanyEmail`, `findPersonEmail`, `findDecisionMakerEmail`, `verifyEmail` | Anymailfinder — find and verify company and person email addresses. |
|
|
22
|
+
| Tomba | `createTombaAdapter(credential)` | `emailFinder`, `domainSearch`, `emailVerifier` | Tomba — email finder, domain search, and email verifier for prospecting. |
|
|
23
|
+
| Resend | `createResendAdapter(credential)` | `sendEmail`, `getEmail` | Resend — send and retrieve transactional emails. |
|
|
24
|
+
| SignatureApi | `createSignatureApiAdapter(credential)` | `createEnvelope`, `voidEnvelope`, `downloadDocument`, `getEnvelope` | SignatureAPI — create, void, download, and retrieve eSignature envelopes. |
|
|
25
|
+
| Stripe | `createStripeAdapter(credential)` | `createPaymentLink`, `getPaymentLink`, `updatePaymentLink`, `listPaymentLinks`, `createAutoPaymentLink`, `createCheckoutSession` | Stripe — create and manage payment links and checkout sessions. |
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Platform Adapters"
|
|
3
|
+
description: "Auto-generated table of all 12 platform (singleton, no credential) adapters exported from @elevasis/sdk/worker, derived from static analysis of the adapter source files."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
{/* @generated by .claude/_gen/sync-sdk-adapters.ts — DO NOT EDIT */}
|
|
7
|
+
{/* Regenerate: pnpm gen:sdk-adapters */}
|
|
8
|
+
|
|
9
|
+
Platform adapters are singletons — import them directly, no credential required.
|
|
10
|
+
|
|
11
|
+
| Adapter | Export | Methods | Description |
|
|
12
|
+
| --- | --- | --- | --- |
|
|
13
|
+
| Scheduler | `scheduler` | `createSchedule`, `updateAnchor`, `deleteSchedule`, `findByIdempotencyKey`, `deleteScheduleByIdempotencyKey`, `listSchedules`, `getSchedule`, `cancelSchedule`, `cancelSchedulesByMetadata`, `cancelScheduleByIdempotencyKey` | Scheduler — create, update, cancel, and query task schedules. |
|
|
14
|
+
| Llm | `llm` | `generate` | LLM — generate structured or unstructured text via OpenAI, Anthropic, OpenRouter, or Google. |
|
|
15
|
+
| Storage | `storage` | `upload`, `download`, `createSignedUrl`, `delete`, `list` | Storage — upload, download, list, delete files, and create signed URLs in org-scoped buckets. |
|
|
16
|
+
| Notifications | `notifications` | `create` | Notifications — send in-platform notifications to team members. |
|
|
17
|
+
| AcqDb | `acqDb` | `listLists`, `createList`, `updateList`, `deleteList`, `addContactsToList`, `addCompaniesToList`, `updateCompanyStage`, `updateContactStage`, `createCompany`, `upsertCompany`, `updateCompany`, `getCompany`, `listCompanies`, `deleteCompany`, `createContact`, `upsertContact`, `updateContact`, `getContact`, `getContactByEmail`, `listContacts`, `deleteContact`, `bulkImportContacts`, `bulkImportCompanies`, `deactivateContactsByCompany`, `upsertDeal`, `getDealByEmail`, `getDealByEnvelopeId`, `updateDealEnvelopeId`, `getDealById`, `getContactById`, `getCompanyById`, `updateDiscoveryData`, `updateProposalData`, `markProposalSent`, `markProposalReviewed`, `updateCloseLostReason`, `updateFees`, `cacheInstantlyThreadIds`, `transitionItem`, `setContactNurture`, `cancelSchedulesAndHitlByEmail`, `cancelHitlByDealId`, `clearDealFields`, `deleteDeal`, `recordDealActivity`, `setDealStateKey`, `transitionDeal`, `loadDeal`, `createDealNote`, `listDealNotes`, `createDealTask`, `listDealTasks`, `listDealTasksDue`, `completeDealTask`, `mergeEnrichmentData`, `upsertSocialPosts` | AcqDb — full acquisition database: lists, companies, contacts, deals, notes, tasks, and enrichment. |
|
|
18
|
+
| Projects | `projects` | `listProjects`, `getProject`, `createProject`, `updateProject`, `deleteProject`, `listMilestones`, `createMilestone`, `updateMilestone`, `deleteMilestone`, `listTasks`, `getTask`, `createTask`, `updateTask`, `deleteTask`, `mergeTaskResumeContext`, `listNotes`, `createNote`, `updateNote`, `deleteNote` | Projects — manage delivery projects, milestones, tasks, notes, and resume context. |
|
|
19
|
+
| Crm | `crm` | `getRecentActivity`, `listDeals`, `getDeal`, `getDealByEmail`, `createDealNote`, `listDealNotes`, `createDealTask`, `listDealTasks`, `listDealTasksDue`, `completeDealTask`, `recordActivity`, `deleteDeal` | CRM — read and update deals, notes, tasks, activity, and stage transitions. |
|
|
20
|
+
| List | `list` | `getConfig`, `recordExecution`, `updateCompanyStage`, `updateContactStage`, `listPendingCompanyIds`, `listPendingContactIds` | List — list-scoped workflow execution tracking and stage updates. |
|
|
21
|
+
| Pdf | `pdf` | `render`, `renderToBuffer` | PDF — render PDF documents from structured page definitions. |
|
|
22
|
+
| Approval | `approval` | `create`, `deleteByMetadata` | Approval — create and manage HITL (human-in-the-loop) tasks. |
|
|
23
|
+
| Execution | `execution` | `trigger`, `triggerAsync` | Execution — trigger other workflows or agents within the same organization. |
|
|
24
|
+
| Email | `email` | `send` | Email — send platform emails (from notifications@elevasis.io) to organization members. |
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
title: Platform Tools
|
|
3
|
-
description: Access
|
|
3
|
+
description: Access 25 adapters (13 integration + 12 platform) from your SDK workflows -- typed adapters, credential security model, and working code examples
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
Your SDK workflows have access to
|
|
6
|
+
Your SDK workflows have access to 25 adapters (13 integration + 12 platform) -- Gmail, Stripe, Google Sheets, PDF generation, human-in-the-loop approvals, storage, scheduling, and more. Credentials are managed server-side and never appear in your code.
|
|
7
7
|
|
|
8
8
|
**Typed adapters** are the recommended way to call tools. They provide full TypeScript autocomplete, compile-time method checking, and eliminate boilerplate. Use `platform.call()` only for tools that don't have an adapter yet.
|
|
9
9
|
|
|
@@ -39,20 +39,9 @@ Both patterns return a Promise that resolves with the tool result or rejects wit
|
|
|
39
39
|
|
|
40
40
|
## Integration Adapters
|
|
41
41
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
| ------------- | ----------------------------- | ------------------------ |
|
|
46
|
-
| Attio | 12 (CRUD + schema + notes) | `{ apiKey }` |
|
|
47
|
-
| Google Sheets | 13 (read/write/filter/upsert) | OAuth2 / service account |
|
|
48
|
-
| Stripe | 6 (payment links + checkout) | `{ secretKey }` |
|
|
49
|
-
| Instantly | 5 (email campaigns) | `{ apiKey }` |
|
|
50
|
-
| SignatureAPI | 4 (envelopes) | `{ apiKey }` |
|
|
51
|
-
| Tomba | 3 (email discovery) | `api-key-secret` |
|
|
52
|
-
| Gmail | 2 (send email) | OAuth2 / service account |
|
|
53
|
-
| Resend | 2 (send/get email) | `{ apiKey }` |
|
|
54
|
-
| Dropbox | 2 (upload/folder) | `{ accessToken }` |
|
|
55
|
-
| Apify | 1 (run actor) | `{ token }` |
|
|
42
|
+
The SDK ships 13 integration adapters (credential-bound factory functions) covering third-party APIs -- Attio, Apify, ClickUp, Dropbox, Gmail, Google Sheets, Instantly, MillionVerifier, Anymailfinder, Tomba, Resend, SignatureAPI, and Stripe. Pass the credential name once at adapter creation. Supabase is covered separately under [Database Access](#database-access) below.
|
|
43
|
+
|
|
44
|
+
For the full per-adapter method tables, credential shapes, and code examples, see [Integration Adapters](adapters-integration.mdx) -- generated from the adapter source so it never drifts.
|
|
56
45
|
|
|
57
46
|
## Credential Security
|
|
58
47
|
|
|
@@ -131,19 +120,9 @@ Credentials are created in the command center UI: navigate to Credentials -> Add
|
|
|
131
120
|
|
|
132
121
|
## Platform Services
|
|
133
122
|
|
|
134
|
-
|
|
123
|
+
The SDK ships 12 platform service singletons available without a `credential` field -- imported directly from `@elevasis/sdk/worker`: `scheduler`, `llm`, `storage`, `notifications`, `acqDb`, `projects`, `crm`, `list`, `pdf`, `approval`, `execution`, and `email`. The platform injects context server-side, so no credential is passed.
|
|
135
124
|
|
|
136
|
-
|
|
137
|
-
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
|
|
138
|
-
| `acqDb` | 35 methods (CRUD + sync) | Acquisition database -- `acqDb` adapter |
|
|
139
|
-
| `email` | `send` | Send email to org members -- `email` adapter |
|
|
140
|
-
| `storage` | `upload`, `download`, `createSignedUrl`, `delete`, `list` | File storage -- `storage` adapter |
|
|
141
|
-
| `pdf` | `render`, `renderToBuffer` | PDF rendering -- `pdf` adapter |
|
|
142
|
-
| `notification` | `create` | In-app notifications -- `notifications` adapter |
|
|
143
|
-
| `approval` | `create`, `deleteByMetadata` | HITL approval gates -- `approval` adapter |
|
|
144
|
-
| `scheduler` | `createSchedule`, `updateAnchor`, `deleteSchedule`, `findByIdempotencyKey`, `deleteScheduleByIdempotencyKey`, `listSchedules`, `getSchedule`, `cancelSchedule`, `cancelSchedulesByMetadata` | Task scheduling -- `scheduler` adapter |
|
|
145
|
-
| `llm` | `generate` | LLM inference -- `llm` adapter |
|
|
146
|
-
| `execution` | `trigger` | Nested child execution -- `execution` adapter |
|
|
125
|
+
For the full per-service method tables (including the `acqDb` 41-method surface), see [Platform Adapters](adapters-platform.mdx) -- generated from the adapter source.
|
|
147
126
|
|
|
148
127
|
## LLM Tool
|
|
149
128
|
|
|
@@ -207,8 +186,8 @@ const qualified = await platform.call({
|
|
|
207
186
|
|
|
208
187
|
## Documentation
|
|
209
188
|
|
|
210
|
-
- [Integration Adapters](adapters-integration.mdx) - All
|
|
211
|
-
- [Platform Adapters](adapters-platform.mdx) - All
|
|
189
|
+
- [Integration Adapters](adapters-integration.mdx) - All 13 integration adapters with method tables and code examples
|
|
190
|
+
- [Platform Adapters](adapters-platform.mdx) - All 12 platform service adapters with method tables and code examples
|
|
212
191
|
- [Adapter Type Safety](type-safety.mdx) - Required fields, discriminated unions, and intentionally loose adapter types
|
|
213
192
|
|
|
214
193
|
---
|
|
@@ -11,19 +11,23 @@ This page collects the patterns you will reach for most often when writing resou
|
|
|
11
11
|
|
|
12
12
|
The simplest pattern: a chain of steps where each step feeds its output into the next.
|
|
13
13
|
|
|
14
|
+
Each `WorkflowStep` requires `id`, `name`, `description`, `handler`, `inputSchema`, `outputSchema`, and `next`. There is no `type` field on a step -- `StepType` (`LINEAR` / `CONDITIONAL`) is a label for `next.type` only, not a step property.
|
|
15
|
+
|
|
14
16
|
```typescript
|
|
15
17
|
import { z } from 'zod';
|
|
16
|
-
import { StepType } from '@elevasis/sdk';
|
|
17
18
|
import type { WorkflowDefinition, WorkflowStep } from '@elevasis/sdk';
|
|
18
19
|
|
|
19
20
|
const inputSchema = z.object({ orderId: z.string() });
|
|
20
21
|
const outputSchema = z.object({ shipped: z.boolean(), trackingNumber: z.string() });
|
|
21
22
|
|
|
22
23
|
type Input = z.infer<typeof inputSchema>;
|
|
23
|
-
type Output = z.infer<typeof outputSchema>;
|
|
24
24
|
|
|
25
25
|
const validateStep: WorkflowStep = {
|
|
26
|
-
|
|
26
|
+
id: 'validate',
|
|
27
|
+
name: 'Validate Order',
|
|
28
|
+
description: 'Checks the order exists before shipping',
|
|
29
|
+
inputSchema: z.object({ orderId: z.string() }),
|
|
30
|
+
outputSchema: z.object({ order: z.unknown() }),
|
|
27
31
|
handler: async (input: Input) => {
|
|
28
32
|
const order = await getOrder(input.orderId);
|
|
29
33
|
if (!order) throw new Error(`Order ${input.orderId} not found`);
|
|
@@ -33,7 +37,11 @@ const validateStep: WorkflowStep = {
|
|
|
33
37
|
};
|
|
34
38
|
|
|
35
39
|
const shipStep: WorkflowStep = {
|
|
36
|
-
|
|
40
|
+
id: 'ship',
|
|
41
|
+
name: 'Ship Order',
|
|
42
|
+
description: 'Creates a shipment and returns the tracking number',
|
|
43
|
+
inputSchema: z.object({ order: z.unknown() }),
|
|
44
|
+
outputSchema: z.object({ shipped: z.boolean(), trackingNumber: z.string() }),
|
|
37
45
|
handler: async (input) => {
|
|
38
46
|
const tracking = await createShipment(input.order);
|
|
39
47
|
return { shipped: true, trackingNumber: tracking.number };
|
|
@@ -51,23 +59,29 @@ const fulfillOrder: WorkflowDefinition = {
|
|
|
51
59
|
|
|
52
60
|
**Key points:**
|
|
53
61
|
|
|
54
|
-
- `
|
|
62
|
+
- Steps require `id`, `name`, `description`, `inputSchema`, `outputSchema`, `handler`, and `next`
|
|
63
|
+
- `next.type` is `'linear'` or `'conditional'` -- this is where `StepType` values apply; the step itself has no `type` field
|
|
64
|
+
- `next: { type: 'linear', target: 'stepName' }` routes to the next step
|
|
55
65
|
- `next: null` marks the terminal step
|
|
56
66
|
- Each step receives the full return value of the previous step as its `input`
|
|
57
|
-
- The terminal step's return value must satisfy `contract.
|
|
67
|
+
- The terminal step's return value must satisfy `contract.outputSchema`
|
|
58
68
|
|
|
59
69
|
---
|
|
60
70
|
|
|
61
71
|
## Conditional Branching
|
|
62
72
|
|
|
63
|
-
Use `
|
|
73
|
+
Use a `next.type` of `'conditional'` when the next step depends on the output of the current step. The step itself still has no `type` field -- the routing decision lives entirely in `next`.
|
|
64
74
|
|
|
65
75
|
```typescript
|
|
66
|
-
import {
|
|
76
|
+
import { z } from 'zod';
|
|
67
77
|
import type { WorkflowStep } from '@elevasis/sdk';
|
|
68
78
|
|
|
69
79
|
const scoreStep: WorkflowStep = {
|
|
70
|
-
|
|
80
|
+
id: 'score',
|
|
81
|
+
name: 'Score Application',
|
|
82
|
+
description: 'Calculates a risk score and routes on the result',
|
|
83
|
+
inputSchema: z.object({ applicationId: z.string() }),
|
|
84
|
+
outputSchema: z.object({ score: z.number(), applicationId: z.string() }),
|
|
71
85
|
handler: async (input) => {
|
|
72
86
|
const score = await calculateRiskScore(input.applicationId);
|
|
73
87
|
return { score, applicationId: input.applicationId };
|
|
@@ -103,12 +117,16 @@ const scoreStep: WorkflowStep = {
|
|
|
103
117
|
Platform tools let your steps call integrations managed by Elevasis (email, CRM, databases, etc.). Import `platform` from `@elevasis/sdk/worker` and call it with the tool name, method, parameters, and an optional credential reference when the tool requires one.
|
|
104
118
|
|
|
105
119
|
```typescript
|
|
120
|
+
import { z } from 'zod';
|
|
106
121
|
import { platform, PlatformToolError } from '@elevasis/sdk/worker';
|
|
107
122
|
import type { WorkflowStep } from '@elevasis/sdk';
|
|
108
|
-
import { StepType } from '@elevasis/sdk';
|
|
109
123
|
|
|
110
124
|
const sendEmailStep: WorkflowStep = {
|
|
111
|
-
|
|
125
|
+
id: 'sendEmail',
|
|
126
|
+
name: 'Send Email',
|
|
127
|
+
description: 'Sends a transactional email via the platform email tool',
|
|
128
|
+
inputSchema: z.object({ recipientEmail: z.string(), subject: z.string(), body: z.string() }),
|
|
129
|
+
outputSchema: z.object({ sent: z.boolean(), messageId: z.string() }),
|
|
112
130
|
handler: async (input, context) => {
|
|
113
131
|
const result = await platform.call({
|
|
114
132
|
tool: 'email',
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "@elevasis/ui Export Catalog"
|
|
3
|
+
description: "Auto-generated catalog of all published @elevasis/ui subpath exports, derived from packages/ui/reference-manifest.ts."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
{/* @generated by .claude/_gen/sync-sdk-catalog.ts — DO NOT EDIT */}
|
|
7
|
+
{/* Regenerate: pnpm gen:sdk-catalog */}
|
|
8
|
+
|
|
9
|
+
| Import | Title | Group | Description |
|
|
10
|
+
| --- | --- | --- | --- |
|
|
11
|
+
| `@elevasis/ui/provider` | Provider | Provider | Published provider and feature-shell contract for downstream apps. |
|
|
12
|
+
| `@elevasis/ui/provider/ui` | Provider UI | Provider | Published provider UI entry for downstream applications. |
|
|
13
|
+
| `@elevasis/ui/auth` | Auth | Foundation | Published authentication surface for UI integrations. |
|
|
14
|
+
| `@elevasis/ui/auth/context` | Auth Context | Foundation | Published auth context entry for UI integrations. |
|
|
15
|
+
| `@elevasis/ui/hooks` | Hooks | Hooks | Headless hooks surface for executions, sessions, observability, and operations. |
|
|
16
|
+
| `@elevasis/ui/hooks/access` | Hooks Access | Hooks | Published Access Model hook surface for checking route, section, and action access. |
|
|
17
|
+
| `@elevasis/ui/sse` | SSE | Foundation | Published server-sent events helpers and connection utilities. |
|
|
18
|
+
| `@elevasis/ui/initialization` | Initialization | Foundation | Published app initialization provider and bootstrap helpers. |
|
|
19
|
+
| `@elevasis/ui/profile` | Profile | Foundation | Published user profile surface for UI applications. |
|
|
20
|
+
| `@elevasis/ui/organization` | Organization | Foundation | Published organization shell, store, and helper surface. |
|
|
21
|
+
| `@elevasis/ui/features/auth` | Features Auth | Features | Published auth feature surface for downstream shells. |
|
|
22
|
+
| `@elevasis/ui/features/clients` | Features Clients | Features | Published clients feature surface for downstream shells. |
|
|
23
|
+
| `@elevasis/ui/features/crm` | Features CRM | Features | Published CRM feature surface for downstream shells. |
|
|
24
|
+
| `@elevasis/ui/features/dashboard` | Features Dashboard | Features | Published dashboard feature surface for downstream shells. |
|
|
25
|
+
| `@elevasis/ui/features/delivery` | Features Delivery | Features | Published delivery feature surface for downstream shells. |
|
|
26
|
+
| `@elevasis/ui/features/lead-gen` | Features Lead Gen | Features | Published lead generation feature surface for downstream shells. |
|
|
27
|
+
| `@elevasis/ui/features/operations` | Features Operations | Features | Published operations feature surface for downstream shells. |
|
|
28
|
+
| `@elevasis/ui/features/monitoring` | Features Monitoring | Features | Published monitoring feature surface for downstream shells. |
|
|
29
|
+
| `@elevasis/ui/features/monitoring/requests` | Features Monitoring Requests | Features | Published submitted-requests list, detail, and triage surface for downstream shells. |
|
|
30
|
+
| `@elevasis/ui/features/seo` | Features SEO | Features | Published SEO feature surface for downstream shells. |
|
|
31
|
+
| `@elevasis/ui/features/knowledge` | Features Knowledge | Features | Published knowledge feature manifest for downstream shells. |
|
|
32
|
+
| `@elevasis/ui/features/notes` | Features Notes | Features | Published Notes panel view and supporting note components for shared right-panel integrations. |
|
|
33
|
+
| `@elevasis/ui/features/right-panel-host` | Features Right Panel Host | Features | Published right-panel host provider, layer, trigger, keyboard shortcut, store, and view contract. |
|
|
34
|
+
| `@elevasis/ui/knowledge` | Knowledge | Visual | Published knowledge browser primitives: Browser, Tree, NodeList, NodeView, SearchBar, MDX provider, and the generated KNOWLEDGE_BODIES map. |
|
|
35
|
+
| `@elevasis/ui/vite` | Vite | Build | Composite Vite plugin factory (elevasisVite) that bundles all @elevasis/ui Vite plugins into a single array for consumer vite.config.ts files. |
|
|
36
|
+
| `@elevasis/ui/vite-plugin-knowledge` | Vite Plugin Knowledge | Build | Vite plugin that regenerates the build-time knowledge MDX bodies and search index, with HMR support. |
|
|
37
|
+
| `@elevasis/ui/features/settings` | Features Settings | Features | Published settings feature surface for downstream shells. |
|
|
38
|
+
| `@elevasis/ui/types` | Types | Foundation | Published UI types entry for downstream applications. |
|
|
39
|
+
| `@elevasis/ui/components` | Components | Components | Published UI component barrel for downstream applications. |
|
|
40
|
+
| `@elevasis/ui/components/navigation` | Navigation Components | Components | Published navigation component entry for downstream applications. |
|
|
41
|
+
| `@elevasis/ui/components/chat` | Chat Components | Components | Published chat component entry for downstream applications. |
|
|
42
|
+
| `@elevasis/ui/layout` | Layout | Components | Published layout component entry for downstream applications. |
|
|
43
|
+
| `@elevasis/ui/charts` | Charts | Components | Published chart component entry for downstream applications. |
|
|
44
|
+
| `@elevasis/ui/theme` | Theme | Visual | Published theme entry for downstream applications. |
|
|
45
|
+
| `@elevasis/ui/theme/presets` | Theme Presets | Visual | Re-exports the canonical THEME_PRESETS tuple, ThemePresetName union, and ThemePresetEnum Zod enum from @repo/core. Single source of truth for preset names across UI, schemas, and Zustand state. |
|
|
46
|
+
| `@elevasis/ui/api` | API | Foundation | Published API client entry for downstream applications. |
|
|
47
|
+
| `@elevasis/ui/utils` | Utils | Foundation | Published utility entry for downstream applications. |
|
|
48
|
+
| `@elevasis/ui/graph` | Graph | Visual | Published graph helper and visualization entry. |
|
|
49
|
+
| `@elevasis/ui/execution` | Execution | Foundation | Published execution visualization and helper entry. |
|
|
50
|
+
| `@elevasis/ui/router` | Router | Foundation | Published router entry for downstream applications. |
|
|
51
|
+
| `@elevasis/ui/router/context` | Router Context | Foundation | Published router context entry for downstream applications. |
|
|
52
|
+
| `@elevasis/ui/zustand` | Zustand | Foundation | Published Zustand slice entry for downstream applications. |
|
|
53
|
+
| `@elevasis/ui/app` | App | Foundation | Published app factory that composes providers, router, auth, and theme into a mountable React app. |
|
|
54
|
+
| `@elevasis/ui/provider/ElevasisServiceContext` | Elevasis Service Context | Provider | Standalone service context and provider that supplies apiRequest, organizationId, and isReady to child components. |
|
|
55
|
+
| `@elevasis/ui/hooks/delivery` | Hooks Delivery | Hooks | Published delivery hooks for projects, milestones, tasks, and notes. |
|
|
56
|
+
| `@elevasis/ui/hooks/user-notes` | Hooks User Notes | Hooks | Published user-notes query and mutation hooks used by shared Notes surfaces. |
|
|
57
|
+
| `@elevasis/ui/hooks/operations/command-view/utils/transformCommandViewData` | Transform Command View Data | Hooks | Utility that transforms backend CommandViewData arrays into a unified frontend CommandViewGraph with nodes and edges. |
|
|
58
|
+
| `@elevasis/ui/test-utils` | Test Utils | Testing | Published rendering helpers, auth mocks, MSW handlers, and test provider utilities. |
|
|
59
|
+
| `@elevasis/ui/test-utils/setup` | Test Utils Setup | Testing | Vitest setup file for UI consumers using browser mocks and MSW. |
|
|
60
|
+
| `@elevasis/ui/test-utils/setup-integration` | Test Utils Integration Setup | Testing | Vitest setup file for integration tests that avoid MSW and use real network boundaries. |
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "@elevasis/ui"
|
|
3
|
+
description: The shared React 19 feature-shell and manifest-backed feature modules for Elevasis — Lead Gen, CRM, Projects, Operations, Monitoring, Settings, SEO, and more. Embeds into any host UI via ElevasisProvider.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
`@elevasis/ui` is the shared React feature-shell for the Elevasis platform. It provides an `ElevasisProvider` and a set of manifest-backed feature modules that a host UI embeds and composes. The model is: your shell owns the layout and routing; Elevasis features plug in as self-contained modules.
|
|
7
|
+
|
|
8
|
+
## Install
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
pnpm add @elevasis/ui
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
Many peer dependencies are optional. Pull only the peers that the features you use require. If you are not using the graph visualization features, you do not need `cytoscape`. If you are not using TanStack Router, you do not need it either.
|
|
15
|
+
|
|
16
|
+
## Peer Dependencies
|
|
17
|
+
|
|
18
|
+
`@elevasis/ui` has a broad peer dependency set. The required peers are React 19 and Mantine 8.2.7. Most others are optional and only needed when specific feature modules are activated.
|
|
19
|
+
|
|
20
|
+
- **React 19** -- required. The feature modules use React 19 APIs.
|
|
21
|
+
- **Mantine 8.2.7** -- required. The component layer and theming foundation.
|
|
22
|
+
- **TanStack Query** -- required for data-fetching features (most modules).
|
|
23
|
+
- **TanStack Router** -- optional; required if you want the routing-aware feature shells.
|
|
24
|
+
- **Zod 4.1** -- required for schema validation in form-backed features.
|
|
25
|
+
- **Zustand 5** -- required for state management in multi-panel features.
|
|
26
|
+
- **cytoscape** -- optional; required for the graph/knowledge visualization modules only.
|
|
27
|
+
|
|
28
|
+
## Provider and Feature-Shell Model
|
|
29
|
+
|
|
30
|
+
The entry point is `ElevasisProvider`, imported from `@elevasis/ui/provider`. Wrap your application root with it to give all child feature modules access to the platform context, auth session, and manifest registry.
|
|
31
|
+
|
|
32
|
+
```tsx
|
|
33
|
+
import { ElevasisProvider } from "@elevasis/ui/provider";
|
|
34
|
+
|
|
35
|
+
export function AppRoot() {
|
|
36
|
+
return (
|
|
37
|
+
<ElevasisProvider config={elevasisConfig}>
|
|
38
|
+
{/* your shell and routes */}
|
|
39
|
+
</ElevasisProvider>
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Feature modules are imported from their own subpaths (e.g. `@elevasis/ui/features/lead-gen`, `@elevasis/ui/features/crm`) and rendered inside the provider tree. Each module is manifest-backed: it reads the platform manifest at runtime to know which resources and workflows are available, so no hard-coded resource IDs are needed in the host UI.
|
|
45
|
+
|
|
46
|
+
## Available Feature Modules
|
|
47
|
+
|
|
48
|
+
The published feature surface includes modules for:
|
|
49
|
+
|
|
50
|
+
- **Lead Gen** -- prospecting pipeline, campaign review, acquisition workflows
|
|
51
|
+
- **CRM** -- client management, deal tracking, contact records
|
|
52
|
+
- **Projects** -- task tracking, project lifecycle, milestones
|
|
53
|
+
- **Operations** -- workflow execution history, operations dashboard
|
|
54
|
+
- **Monitoring** -- execution health, error log, platform diagnostics
|
|
55
|
+
- **Settings** -- organization settings, credential management, member management
|
|
56
|
+
- **SEO** -- content and SEO tooling modules
|
|
57
|
+
- **Notes** -- note capture and structured annotations
|
|
58
|
+
- **Knowledge** -- knowledge base viewer and search UI
|
|
59
|
+
- **Dashboard** -- compatibility components for host-owned dashboard shells
|
|
60
|
+
|
|
61
|
+
Each module has its own `@elevasis/ui/features/<name>` subpath. See the [Export Catalog](exports.mdx) for the full generated list.
|
|
62
|
+
|
|
63
|
+
## When To Use @elevasis/ui
|
|
64
|
+
|
|
65
|
+
Use `@elevasis/ui` when you are building a host application that needs to embed Elevasis features -- lead-gen pipelines, CRM views, operations dashboards -- without re-implementing them. The provider/feature-shell model means you own the shell, navigation, and layout; Elevasis owns the feature logic and UI internals.
|
|
66
|
+
|
|
67
|
+
You do not need `@elevasis/ui` if you are only writing backend workflows and agents. Tenant automation projects use `@elevasis/sdk` alone.
|
|
68
|
+
|
|
69
|
+
## Composition With @elevasis/core
|
|
70
|
+
|
|
71
|
+
`@elevasis/ui` uses `@elevasis/core` internally for entity schemas, org-model types, and auth contracts. Installing `@elevasis/ui` will pull in `@elevasis/core` as a dependency. You do not need to install `@elevasis/core` separately unless you need direct access to its subpaths.
|
|
72
|
+
|
|
73
|
+
## Export Catalog
|
|
74
|
+
|
|
75
|
+
See [Export Catalog](exports.mdx) for a generated table of all published subpath exports derived from the reference manifest.
|