@elevasis/sdk 1.28.1 → 1.30.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.
Files changed (87) hide show
  1. package/dist/cli.cjs +1611 -595
  2. package/dist/index.d.ts +105 -1
  3. package/dist/index.js +30 -25
  4. package/dist/node/index.d.ts +84 -1
  5. package/dist/test-utils/index.d.ts +102 -1
  6. package/dist/test-utils/index.js +242 -23
  7. package/dist/worker/index.js +1 -0
  8. package/package.json +4 -4
  9. package/reference/_navigation.md +4 -4
  10. package/reference/_reference-manifest.json +8 -8
  11. package/reference/claude-config/hooks/scaffold-registry-reminder.mjs +3 -3
  12. package/reference/claude-config/rules/topbar-actions.md +70 -0
  13. package/reference/claude-config/skills/om/SKILL.md +18 -1
  14. package/reference/claude-config/skills/tutorial/technical.md +5 -5
  15. package/reference/claude-config/sync-notes/2026-05-04-knowledge-bundle.md +83 -83
  16. package/reference/claude-config/sync-notes/2026-05-14-organization-model-ontology-refactor.md +45 -45
  17. package/reference/claude-config/sync-notes/2026-05-15-om-skill-rename-and-write-family.md +52 -52
  18. package/reference/claude-config/sync-notes/2026-05-17-sdk-boundary-consolidation.md +33 -33
  19. package/reference/claude-config/sync-notes/2026-05-20-om-define-helpers.md +32 -32
  20. package/reference/claude-config/sync-notes/2026-05-22-access-model-and-right-panel.md +43 -43
  21. package/reference/claude-config/sync-notes/2026-05-22-lead-gen-tenant-config.md +40 -40
  22. package/reference/claude-config/sync-notes/2026-05-22-org-model-multi-file-split.md +61 -61
  23. package/reference/claude-config/sync-notes/2026-05-23-branding-names-to-identity.md +49 -49
  24. package/reference/claude-config/sync-notes/2026-05-23-lead-gen-manage-access.md +31 -31
  25. package/reference/claude-config/sync-notes/2026-05-23-om-deployment-drift-detection.md +42 -42
  26. package/reference/claude-config/sync-notes/2026-05-23-om-full-model-deploy-contract.md +33 -33
  27. package/reference/claude-config/sync-notes/2026-05-23-ui-sdk-package-fixes.md +37 -37
  28. package/reference/claude-config/sync-notes/2026-05-24-platform-invite-router-core-baseline.md +28 -0
  29. package/reference/claude-config/sync-notes/2026-05-24-system-interface-readiness.md +43 -43
  30. package/reference/claude-config/sync-notes/2026-05-25-invitation-login-loader.md +26 -0
  31. package/reference/claude-config/sync-notes/2026-05-25-om-topbar-requests.md +33 -0
  32. package/reference/claude-config/sync-notes/2026-05-25-system-interface-profile-registry-and-substrate.md +35 -0
  33. package/reference/claude-config/sync-notes/2026-05-25-tenant-om-scaffold-cli.md +49 -0
  34. package/reference/claude-config/sync-notes/2026-05-25-vibe-operate-intent.md +47 -0
  35. package/reference/core/exports.mdx +16 -0
  36. package/reference/core/index.mdx +58 -0
  37. package/reference/examples/organization-model.ts +18 -0
  38. package/reference/index.mdx +36 -67
  39. package/reference/rules/organization-model.md +4 -1
  40. package/reference/rules/organization-os.md +7 -1
  41. package/reference/rules/ui.md +207 -207
  42. package/reference/rules/vibe.md +52 -18
  43. package/reference/scaffold/index.mdx +9 -7
  44. package/reference/scaffold/operations/propagation-pipeline.md +152 -152
  45. package/reference/scaffold/operations/scaffold-maintenance.md +14 -4
  46. package/reference/scaffold/reference/contracts.md +423 -338
  47. package/reference/scaffold/reference/glossary.md +14 -2
  48. package/reference/scaffold/reference/system-interface-capabilities.md +50 -0
  49. package/reference/{cli-management.mdx → sdk/cli-management.mdx} +159 -13
  50. package/reference/{cli.mdx → sdk/cli.mdx} +68 -12
  51. package/reference/sdk/exports.mdx +14 -0
  52. package/reference/sdk/index.mdx +93 -0
  53. package/reference/sdk/platform-tools/adapters-integration.mdx +25 -0
  54. package/reference/sdk/platform-tools/adapters-platform.mdx +24 -0
  55. package/reference/{platform-tools → sdk/platform-tools}/index.mdx +9 -30
  56. package/reference/{resources → sdk/resources}/patterns.mdx +29 -11
  57. package/reference/ui/exports.mdx +60 -0
  58. package/reference/ui/index.mdx +75 -0
  59. package/reference/platform-tools/adapters-integration.mdx +0 -300
  60. package/reference/platform-tools/adapters-platform.mdx +0 -552
  61. /package/reference/claude-config/skills/deploy/{skill.md → SKILL.md} +0 -0
  62. /package/reference/{concepts.mdx → sdk/concepts.mdx} +0 -0
  63. /package/reference/{deployment → sdk/deployment}/command-center.mdx +0 -0
  64. /package/reference/{deployment → sdk/deployment}/execution-reference.mdx +0 -0
  65. /package/reference/{deployment → sdk/deployment}/index.mdx +0 -0
  66. /package/reference/{framework → sdk/framework}/agent.mdx +0 -0
  67. /package/reference/{framework → sdk/framework}/index.mdx +0 -0
  68. /package/reference/{framework → sdk/framework}/interaction-guidance.mdx +0 -0
  69. /package/reference/{framework → sdk/framework}/memory.mdx +0 -0
  70. /package/reference/{framework → sdk/framework}/project-structure.mdx +0 -0
  71. /package/reference/{framework → sdk/framework}/resource-documentation.mdx +0 -0
  72. /package/reference/{framework → sdk/framework}/tutorial-system.mdx +0 -0
  73. /package/reference/{getting-started.mdx → sdk/getting-started.mdx} +0 -0
  74. /package/reference/{platform-tools → sdk/platform-tools}/type-safety.mdx +0 -0
  75. /package/reference/{resources → sdk/resources}/index.mdx +0 -0
  76. /package/reference/{resources → sdk/resources}/types.mdx +0 -0
  77. /package/reference/{roadmap.mdx → sdk/roadmap.mdx} +0 -0
  78. /package/reference/{runtime.mdx → sdk/runtime.mdx} +0 -0
  79. /package/reference/{templates → sdk/templates}/data-enrichment.mdx +0 -0
  80. /package/reference/{templates → sdk/templates}/email-sender.mdx +0 -0
  81. /package/reference/{templates → sdk/templates}/index.mdx +0 -0
  82. /package/reference/{templates → sdk/templates}/lead-scorer.mdx +0 -0
  83. /package/reference/{templates → sdk/templates}/pdf-generator.mdx +0 -0
  84. /package/reference/{templates → sdk/templates}/recurring-job.mdx +0 -0
  85. /package/reference/{templates → sdk/templates}/text-classifier.mdx +0 -0
  86. /package/reference/{templates → sdk/templates}/web-scraper.mdx +0 -0
  87. /package/reference/{troubleshooting.mdx → sdk/troubleshooting.mdx} +0 -0
@@ -14,10 +14,16 @@ description: Terminology disambiguation for Organization OS concepts used in the
14
14
 
15
15
  **AccessKeys** -- exported access-key constants from `@elevasis/core/auth` / `@repo/core/auth` for platform-admin, diagnostic, and permission-backed gates.
16
16
 
17
- **Contract** -- the publishable boundary a consumer depends on: Zod schemas, TypeScript types, provider props, resource definitions, or workflow I/O schemas.
17
+ **Boundary invariant** -- Organization Model rule that local resources may bind local System ontology directly, while sibling-System API behavior needs explicit scope through topology. For System Interfaces, lead-gen-to-CRM handoff is allowed through the `sales.lead-gen/crm-handoff` consumer, the `sales.crm/api` provider, scoped resources, and a `metadata.systemInterfaceGrant` topology grant.
18
+
19
+ **Capability catalog** -- generated SDK-bundled reference that lists the closed System Interface profiles supported by the installed package, their required System paths, interface keys, and derived-readiness requirements. Current source: `packages/core/src/reference/_generated/system-interface-capabilities.md`; SDK mirror: `node_modules/@elevasis/sdk/reference/scaffold/reference/system-interface-capabilities.md`.
20
+
21
+ **Contract** -- the publishable boundary a consumer depends on: Zod schemas, TypeScript types, provider props, resource definitions, resource ontology workflow I/O refs, or generated reference docs. Retired authored System/Bridge Contract surfaces such as `System.contracts`, `bridgeContracts`, and versioned `*@v1` OM contract IDs are not current authoring patterns.
18
22
 
19
23
  **DeploymentSpec** -- runtime/deploy assembly for one organization: workflows, agents, triggers, integrations, relationships, external resources, and human checkpoints. It assembles executable behavior around Organization Model resource descriptors; it is not the source of resource identity.
20
24
 
25
+ **Derived readiness** -- readiness computed from resolved Organization Model facts instead of hand-authored readiness declarations. For System Interfaces, the checker evaluates the active `apiInterface` marker, scoped resource IDs, active resources, `resource.ontology` bindings, owned ontology, required catalogs, provider readiness, and scoped topology grants.
26
+
21
27
  **Feature** -- legacy or UI-package wording for a platform capability area. In the current Organization Model, use **System** for semantic ownership and **navigation surface** for shell placement. Keep "feature" only when referring to existing UI package folders, exported manifest names, or legacy compatibility recipes.
22
28
 
23
29
  **SystemGuard** -- retired route-level System gate. Use **AccessGuard** with a System path or `AccessKeys` constant.
@@ -48,6 +54,10 @@ description: Terminology disambiguation for Organization OS concepts used in the
48
54
 
49
55
  **System** -- tenant-defined bounded context in `OrganizationModel.systems` that groups operational resources and carries governance metadata such as responsible role, governing knowledge, driven goals, kind, lifecycle, System-local ontology, and System-local config.
50
56
 
57
+ **System Interface** -- flat `System.apiInterface` marker that adopts a platform-provided API capability for a System. It declares intent through lifecycle, a closed `readinessProfile`, and optional scoped resource IDs; readiness is derived. Custom tenant Systems should not add custom `apiInterface` profiles. They extend behavior through workflows/operations plus ontology, resources, catalogs, topology, and navigation.
58
+
59
+ **System Interface profile** -- platform-owned readiness profile from `SYSTEM_INTERFACE_PROFILES`, such as `sales.lead-gen.api`, `sales.crm.api`, or `sales.lead-gen.crm-handoff`. Profiles are a closed literal union tied to platform API consumers and readiness checkers, not tenant-defined extension strings.
60
+
51
61
  **ResourceCategory** -- resource metadata category: `production`, `diagnostic`, `internal`, or `testing`.
52
62
 
53
63
  **ResourceLink** -- graph binding on resource metadata: `{ nodeId, kind }`.
@@ -58,7 +68,9 @@ description: Terminology disambiguation for Organization OS concepts used in the
58
68
 
59
69
  **Subshell / Sidebar** -- System- or route-prefix-scoped UI region rendered when the current route matches a module whose manifest supplies a sidebar.
60
70
 
61
- **Topology** -- durable OM operational wiring declared in `OrganizationModel.topology.relationships`. Initial relationship kinds are `triggers`, `uses`, and `approval`; relationships use typed refs such as `{ kind: 'resource', id: 'lead-import' }`.
71
+ **Scoped topology bridge** -- topology relationship scoped to a System or interface boundary, with metadata that grants a specific consumer interface access to a provider interface. It replaces authored Bridge Contract declarations for API handoff while keeping the bridge in `OrganizationModel.topology.relationships`.
72
+
73
+ **Topology** -- durable OM operational wiring declared in `OrganizationModel.topology.relationships`. Relationship kinds are the closed set `triggers`, `uses`, and `approval`; relationships use typed refs such as `{ kind: 'resource', id: 'lead-import' }` and may carry structured metadata such as `systemInterfaceGrant`.
62
74
 
63
75
  ## Package Boundary
64
76
 
@@ -0,0 +1,50 @@
1
+ <!-- @generated by packages/sdk/scripts/copy-reference-docs.mjs -- DO NOT EDIT -->
2
+ <!-- Regenerate: pnpm scaffold:sync -->
3
+
4
+ <!-- @generated by scripts/monorepo/generate-scaffold-contracts.js -- DO NOT EDIT -->
5
+ <!-- Regenerate: pnpm scaffold:sync -->
6
+
7
+ # System Interface Capabilities
8
+
9
+ This catalog is generated from `SYSTEM_INTERFACE_PROFILES` and the derived-readiness checks in `packages/core/src/business/acquisition/ontology-validation.ts`.
10
+
11
+ System Interface profiles are a closed platform adoption handshake. Tenant custom Systems should extend behavior through workflows/operations plus ontology, resources, and topology instead of declaring custom `apiInterface.readinessProfile` values.
12
+
13
+ | Profile | Required System path | Interface key |
14
+ | --- | --- | --- |
15
+ | `sales.lead-gen.api` | `sales.lead-gen` | `api` |
16
+ | `sales.crm.api` | `sales.crm` | `api` |
17
+ | `sales.lead-gen.crm-handoff` | `sales.lead-gen` | `crm-handoff` |
18
+
19
+ ## `sales.lead-gen.api`
20
+
21
+ - Required System path: `sales.lead-gen`
22
+ - Interface key: `api`
23
+ - Derived-readiness requirements:
24
+ - System Interface marker must be active and scope at least one active `sales.lead-gen` Resource.
25
+ - Object types: `sales.lead-gen:object/list`, `sales.lead-gen:object/company`, `sales.lead-gen:object/contact`.
26
+ - Scoped Resource `ontology.reads` bindings for each required object type.
27
+ - Catalog types with entries: `sales.lead-gen:catalog/build-template`, `sales.lead-gen:catalog/company-stage`, `sales.lead-gen:catalog/contact-stage`, and derived `sales.lead-gen:catalog/lead-gen.stage-catalog`.
28
+ - Scoped Resource `ontology.usesCatalogs` bindings for each required catalog.
29
+ - A lead-gen template-step catalog owned by `sales.lead-gen` whose `appliesTo` value is `sales.lead-gen:object/list`, plus a scoped `ontology.usesCatalogs` binding for it.
30
+
31
+ ## `sales.crm.api`
32
+
33
+ - Required System path: `sales.crm`
34
+ - Interface key: `api`
35
+ - Derived-readiness requirements:
36
+ - System Interface marker must be active and scope at least one active `sales.crm` Resource.
37
+ - Catalog type with entries: `sales.crm:catalog/crm.pipeline`.
38
+ - Scoped Resource `ontology.usesCatalogs` binding for `sales.crm:catalog/crm.pipeline`.
39
+
40
+ ## `sales.lead-gen.crm-handoff`
41
+
42
+ - Required System path: `sales.lead-gen`
43
+ - Interface key: `crm-handoff`
44
+ - Derived-readiness requirements:
45
+ - Derived handoff readiness is evaluated for `sales.lead-gen/crm-handoff`; it is not authored as a separate custom tenant API surface.
46
+ - Lead-gen API readiness requirements must pass for `sales.lead-gen/api`.
47
+ - CRM pipeline catalog must exist with entries: `sales.crm:catalog/crm.pipeline`. Foreign ownership is allowed because the provider is `sales.crm/api`.
48
+ - Derived scoped resources are active `sales.lead-gen` Resources whose `ontology.usesCatalogs` includes `sales.crm:catalog/crm.pipeline`.
49
+ - Provider readiness must pass for `sales.crm/api`.
50
+ - Topology must include a scoped `systemInterfaceGrant` relationship from consumer `sales.lead-gen/crm-handoff` to provider `sales.crm/api`.
@@ -60,14 +60,26 @@ elevasis-sdk project:task:delete <id>
60
60
  Task commands also expose agent-oriented resume state:
61
61
 
62
62
  ```bash
63
- elevasis-sdk project:task:resume <id> --pretty
64
- elevasis-sdk project:task:save <id> --current-state "Implemented the route layer"
63
+ elevasis-sdk project:task:resume <id> [--pretty]
64
+ elevasis-sdk project:task:save <id> --current-state <text> [--files-modified <json>] [--next-steps <text>] [--key-docs <json>] [--tools <json>]
65
65
  ```
66
66
 
67
- - `project:task:resume` reads the task's `resume_context`
68
- - `project:task:save` merges fields into `resume_context`
67
+ - `project:task:resume <id>` -- reads the task's `resume_context` JSONB; `--pretty` renders a human-readable briefing with current state, next steps, files modified, key docs, and tools used
68
+ - `project:task:save <id>` -- merges fields into `resume_context`; `--current-state` is required; all other flags are optional JSON arrays or plain text
69
69
  - these commands are the CLI counterpart to `/work resume` and `/work save` style flows
70
70
 
71
+ **`project:task:save` flags:**
72
+
73
+ | Flag | Description |
74
+ | --------------------------- | ----------------------------------------- |
75
+ | `--current-state <text>` | Required. Current state description |
76
+ | `--files-modified <json>` | JSON array of modified file paths |
77
+ | `--next-steps <text>` | Next steps description |
78
+ | `--key-docs <json>` | JSON array of key doc paths |
79
+ | `--tools <json>` | JSON array of tool names used |
80
+ | `--pretty` | Human-readable output instead of raw JSON |
81
+ | `--api-url <url>` | Override the API base URL |
82
+
71
83
  ### Notes
72
84
 
73
85
  ```bash
@@ -336,7 +348,17 @@ JWT-gated routes at the original unprefixed paths remain for the Command Center.
336
348
 
337
349
  **Note:** List-inspection routing lives in `/om` (Acquisition Operations dispatch). The `/acquisition` skill was folded into `/om`; all list reads still route to `elevasis-sdk acquisition:list:get <uuid>`.
338
350
 
339
- **Flags (all acquisition commands):**
351
+ **`acquisition:list:get` flags:**
352
+
353
+ | Flag | Description |
354
+ | ------------------------ | -------------------------------------------------- |
355
+ | `--no-include-deals` | Exclude thin deal lineage refs from the response |
356
+ | `--deal-limit <limit>` | Maximum number of thin deal refs to include |
357
+ | `--include-progress` | Include processing progress aggregates |
358
+ | `--pretty` | Human-readable terminal output instead of raw JSON |
359
+ | `--api-url <url>` | Override the API base URL |
360
+
361
+ **Shared flags (all other acquisition commands):**
340
362
 
341
363
  | Flag | Description |
342
364
  | ------------------- | -------------------------------------------------- |
@@ -409,20 +431,30 @@ elevasis-sdk session:get <id>
409
431
  elevasis-sdk session:end <id>
410
432
  ```
411
433
 
412
- - `session:list` -- list sessions for the organization; supports filtering by resource, status, and time range
434
+ - `session:list` -- list sessions for the organization; supports filtering by resource ID, user ID, and limit
413
435
  - `session:get <id>` -- get full session detail including messages and events
414
436
  - `session:end <id>` -- gracefully end an active session
415
437
 
416
- **API routes:** `GET /api/external/sessions`, `/api/external/sessions/:id`, `POST /api/external/sessions/:id/end`
438
+ **API routes:** `GET /api/external/sessions`, `/api/external/sessions/:id`, `DELETE /api/external/sessions/:id`
417
439
 
418
- **Flags:**
440
+ **`session:list` filter flags:**
419
441
 
420
- | Flag | Description |
421
- | ------------------- | -------------------------------------------------- |
422
- | `--pretty` | Human-readable terminal output instead of raw JSON |
423
- | `--api-url <url>` | Override the API base URL |
442
+ | Flag | Description |
443
+ | ---------------------- | ------------------------------------ |
444
+ | `--resource-id <id>` | Filter by agent resource ID |
445
+ | `--user-id <id>` | Filter by user ID |
446
+ | `--limit <limit>` | Maximum number of sessions to return |
447
+ | `--json` | Output as JSON |
448
+ | `--api-url <url>` | Override the API base URL |
449
+
450
+ **Shared flags (`session:get`, `session:end`):**
451
+
452
+ | Flag | Description |
453
+ | ------------------- | ------------------------- |
454
+ | `--json` | Output as JSON |
455
+ | `--api-url <url>` | Override the API base URL |
424
456
 
425
- **Implementation:** `packages/sdk/src/cli/commands/` (session family)
457
+ **Implementation:** `packages/sdk/src/cli/commands/session/session.ts`
426
458
 
427
459
  ---
428
460
 
@@ -440,6 +472,30 @@ elevasis-sdk queue:expire <id> --pretty
440
472
  elevasis-sdk queue:status --pretty
441
473
  ```
442
474
 
475
+ **`queue:list` filter flags:**
476
+
477
+ | Flag | Description |
478
+ | --------------------------- | --------------------------------------------------------------------------- |
479
+ | `--status <status>` | Filter by status: `pending`, `processing`, `completed`, `failed`, `expired` |
480
+ | `--human-checkpoint <id>` | Filter by checkpoint ID, or `ungrouped` for tasks without a checkpoint |
481
+ | `--time-range <range>` | Filter by created time range: `1h`, `24h`, `7d`, `30d` |
482
+ | `--priority-min <number>` | Minimum priority, 1-10 |
483
+ | `--priority-max <number>` | Maximum priority, 1-10 |
484
+ | `--limit <limit>` | Maximum number of tasks to return |
485
+ | `--offset <offset>` | Number of tasks to skip |
486
+ | `--pretty` | Human-readable output instead of raw JSON |
487
+ | `--api-url <url>` | Override the API base URL |
488
+
489
+ **`queue:select` flags:**
490
+
491
+ | Flag | Description |
492
+ | -------------------- | ----------------------------------------- |
493
+ | `--action-id <id>` | Required. Action ID to select |
494
+ | `--payload <json>` | Optional action payload as JSON |
495
+ | `--notes <notes>` | Optional human decision notes |
496
+ | `--pretty` | Human-readable output instead of raw JSON |
497
+ | `--api-url <url>` | Override the API base URL |
498
+
443
499
  **Auth:** Calls `/api/external/command-queue/*` with API-key auth.
444
500
 
445
501
  ---
@@ -460,6 +516,20 @@ elevasis-sdk schedule:resume <id> --pretty
460
516
  elevasis-sdk schedule:cancel <id> --pretty
461
517
  ```
462
518
 
519
+ **`schedule:update` flags:**
520
+
521
+ | Flag | Description |
522
+ | ---------------------------- | ------------------------------------------------------------------------- |
523
+ | `--name <name>` | New schedule name |
524
+ | `--description <text>` | New schedule description |
525
+ | `--clear-description` | Remove the schedule description (mutually exclusive with `--description`) |
526
+ | `--schedule-config <json>` | Replacement schedule config JSON |
527
+ | `--max-retries <number>` | Maximum retry attempts, 0-10 |
528
+ | `--pretty` | Human-readable output instead of raw JSON |
529
+ | `--api-url <url>` | Override the API base URL |
530
+
531
+ At least one field must be provided. `--description` and `--clear-description` are mutually exclusive.
532
+
463
533
  **Auth:** Calls `/api/external/task-scheduler/schedules*` with API-key auth.
464
534
 
465
535
  ---
@@ -476,10 +546,86 @@ For the full command reference, flag details, and graph architecture, see the [k
476
546
  elevasis-sdk knowledge:ls /by-system/sales.crm
477
547
  elevasis-sdk knowledge:cat <node-id>
478
548
  elevasis-sdk knowledge:graph
549
+ elevasis-sdk knowledge:search <query>
550
+ elevasis-sdk knowledge:describe <nodeId>
551
+ elevasis-sdk knowledge:skills <nodeId>
552
+ elevasis-sdk knowledge:generate
479
553
  ```
480
554
 
481
555
  These are registered as `knowledge:*` subcommands on `elevasis-sdk`. Both the SDK CLI (`elevasis-sdk knowledge:*`) and the platform CLI (`elevasis knowledge:*`) call the same query functions in `@repo/core/knowledge/queries`.
482
556
 
557
+ ### knowledge:search
558
+
559
+ Universal keyword search across the entire Organization Model (systems, resources, knowledge, ontology, roles, policies). Alias: `om:search`.
560
+
561
+ ```bash
562
+ elevasis-sdk knowledge:search <query> [--limit <n>] [--kinds <list>] [--json] [--ids-only]
563
+ ```
564
+
565
+ | Flag | Description |
566
+ | ------------------ | ------------------------------------------------------------------------------ |
567
+ | `--limit <n>` | Max hits to return; `0` = unlimited. Default: 10 |
568
+ | `--kinds <list>` | Comma-separated kinds filter: `system,resource,knowledge,ontology,role,policy` |
569
+ | `--json` | Print wrapped JSON envelope `{ query, limit, kinds, count, results }` |
570
+ | `--ids-only` | Print one ID per line (for piping) |
571
+
572
+ **Examples:**
573
+
574
+ ```bash
575
+ elevasis-sdk om:search "lead gen"
576
+ elevasis-sdk om:search outreach --kinds knowledge
577
+ elevasis-sdk om:search apollo --ids-only
578
+ ```
579
+
580
+ ### knowledge:describe
581
+
582
+ Structured neighborhood view for any OM node ID. Auto-detects kind (system, resource, knowledge, ontology, role, policy) from the ID shape. Alias: `om:describe`.
583
+
584
+ ```bash
585
+ elevasis-sdk knowledge:describe <nodeId> [--json]
586
+ ```
587
+
588
+ **Examples:**
589
+
590
+ ```bash
591
+ elevasis-sdk om:describe sales.lead-gen
592
+ elevasis-sdk om:describe knowledge.outreach-playbook
593
+ ```
594
+
595
+ ### knowledge:skills
596
+
597
+ Show callable invocations on graph neighbors for a knowledge node -- useful for discovering which actions or agent resources are linked to a given knowledge entry. Alias: `om:skills`.
598
+
599
+ ```bash
600
+ elevasis-sdk knowledge:skills <nodeId> [--json]
601
+ ```
602
+
603
+ **Example:**
604
+
605
+ ```bash
606
+ elevasis-sdk om:skills knowledge.new-vertical-launch-playbook
607
+ ```
608
+
609
+ ### knowledge:generate
610
+
611
+ Generate Organization Model knowledge nodes from MDX source files. Alias: `om:generate`.
612
+
613
+ ```bash
614
+ elevasis-sdk knowledge:generate [--source <path>] [--output <path>] [--flags-output <path>]
615
+ ```
616
+
617
+ | Flag | Description |
618
+ | ------------------------- | ----------------------------------------------------------------------------------------------------- |
619
+ | `--source <path>` | MDX source directory relative to project root. Default: `core/config/knowledge/nodes` |
620
+ | `--output <path>` | Generated TS file path relative to project root. Default: `core/config/knowledge/_generated/nodes.ts` |
621
+ | `--flags-output <path>` | Generated knowledge flag registry path. Default: `.claude/registries/knowledge-flags.json` |
622
+
623
+ **Example:**
624
+
625
+ ```bash
626
+ elevasis-sdk om:generate
627
+ ```
628
+
483
629
  ---
484
630
 
485
631
  ## elevasis-sdk ui:use-local / ui:use-published
@@ -405,36 +405,49 @@ elevasis-sdk describe onboard-client
405
405
 
406
406
  ## elevasis-sdk creds
407
407
 
408
- Manage credentials for your project.
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 set <key> <value>
415
- elevasis-sdk creds remove <key>
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
- **Behavior:**
420
+ **Subcommands:**
419
421
 
420
- - `list` -- display all credentials configured for the project
421
- - `set` -- add or update a credential
422
- - `remove` -- delete a credential
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
- | `--api-url <url>` | Override the API base URL |
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 set OPENAI_API_KEY sk-proj-***
435
- elevasis-sdk creds remove OPENAI_API_KEY
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. |