@elevasis/sdk 1.20.2 → 1.22.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 (164) hide show
  1. package/dist/cli.cjs +4220 -1583
  2. package/dist/index.d.ts +1035 -481
  3. package/dist/index.js +7381 -4187
  4. package/dist/node/index.d.ts +1 -3
  5. package/dist/node/index.js +40 -49
  6. package/dist/test-utils/index.d.ts +699 -123
  7. package/dist/test-utils/index.js +3826 -630
  8. package/dist/worker/index.js +3616 -442
  9. package/package.json +3 -3
  10. package/reference/_navigation.md +9 -7
  11. package/reference/_reference-manifest.json +1 -1
  12. package/reference/claude-config/hooks/post-edit-validate.mjs +98 -98
  13. package/reference/claude-config/hooks/scaffold-registry-reminder.mjs +188 -188
  14. package/reference/claude-config/hooks/tool-failure-recovery.mjs +73 -73
  15. package/reference/claude-config/registries/graph-skills.json +4 -4
  16. package/reference/claude-config/registries/knowledge-flags.json +0 -2
  17. package/reference/claude-config/rules/active-change-index.md +80 -80
  18. package/reference/claude-config/rules/agent-start-here.md +277 -273
  19. package/reference/claude-config/rules/deployment.md +57 -57
  20. package/reference/claude-config/rules/error-handling.md +56 -56
  21. package/reference/claude-config/rules/execution.md +40 -40
  22. package/reference/claude-config/rules/frontend.md +4 -4
  23. package/reference/claude-config/rules/observability.md +31 -31
  24. package/reference/claude-config/rules/operations.md +29 -17
  25. package/reference/claude-config/rules/organization-model.md +108 -40
  26. package/reference/claude-config/rules/organization-os.md +115 -113
  27. package/reference/claude-config/rules/package-taxonomy.md +33 -33
  28. package/reference/claude-config/rules/platform.md +42 -42
  29. package/reference/claude-config/rules/shared-types.md +49 -46
  30. package/reference/claude-config/rules/task-tracking.md +47 -47
  31. package/reference/claude-config/rules/ui.md +200 -200
  32. package/reference/claude-config/rules/vibe.md +235 -231
  33. package/reference/claude-config/scripts/statusline-command.js +18 -18
  34. package/reference/claude-config/settings.json +34 -34
  35. package/reference/claude-config/skills/deploy/{SKILL.md → skill.md} +156 -156
  36. package/reference/claude-config/skills/dsp/SKILL.md +66 -66
  37. package/reference/claude-config/skills/elevasis/SKILL.md +235 -235
  38. package/reference/claude-config/skills/explore/SKILL.md +6 -6
  39. package/reference/claude-config/skills/git-sync/SKILL.md +126 -126
  40. package/reference/claude-config/skills/knowledge/SKILL.md +330 -271
  41. package/reference/claude-config/skills/knowledge/operations/codify-level-a.md +100 -100
  42. package/reference/claude-config/skills/knowledge/operations/codify-level-b.md +159 -158
  43. package/reference/claude-config/skills/knowledge/operations/customers.md +109 -109
  44. package/reference/claude-config/skills/knowledge/operations/features.md +76 -113
  45. package/reference/claude-config/skills/knowledge/operations/goals.md +118 -118
  46. package/reference/claude-config/skills/knowledge/operations/identity.md +93 -93
  47. package/reference/claude-config/skills/knowledge/operations/labels.md +94 -89
  48. package/reference/claude-config/skills/knowledge/operations/offerings.md +109 -109
  49. package/reference/claude-config/skills/knowledge/operations/roles.md +99 -99
  50. package/reference/claude-config/skills/knowledge/operations/techStack.md +30 -30
  51. package/reference/claude-config/skills/project/SKILL.md +1088 -1088
  52. package/reference/claude-config/skills/run-ui/SKILL.md +73 -73
  53. package/reference/claude-config/skills/save/SKILL.md +3 -3
  54. package/reference/claude-config/skills/setup/SKILL.md +275 -275
  55. package/reference/claude-config/skills/status/SKILL.md +59 -59
  56. package/reference/claude-config/skills/submit-request/SKILL.md +180 -180
  57. package/reference/claude-config/skills/sync/SKILL.md +47 -47
  58. package/reference/claude-config/skills/tutorial/SKILL.md +259 -259
  59. package/reference/claude-config/skills/tutorial/progress-template.md +74 -74
  60. package/reference/claude-config/skills/tutorial/technical.md +1303 -1306
  61. package/reference/claude-config/skills/tutorial/vibe-coder.md +890 -890
  62. package/reference/claude-config/sync-notes/2026-04-22-git-sync-and-sync-notes.md +27 -27
  63. package/reference/claude-config/sync-notes/2026-04-22-lead-gen-deliverability-removal.md +30 -30
  64. package/reference/claude-config/sync-notes/2026-04-24-test-utils-and-template-tests.md +73 -73
  65. package/reference/claude-config/sync-notes/2026-04-24-ui-consolidation-and-sdk-cli-train.md +86 -86
  66. package/reference/claude-config/sync-notes/2026-04-25-auth-role-system-and-settings-roles.md +55 -55
  67. package/reference/claude-config/sync-notes/2026-04-27-crm-hitl-action-layer-cutover.md +97 -97
  68. package/reference/claude-config/sync-notes/2026-04-27-lead-gen-substrate-train.md +112 -112
  69. package/reference/claude-config/sync-notes/2026-04-29-crm-state-and-lead-gen-processing-status.md +93 -93
  70. package/reference/claude-config/sync-notes/2026-05-02-crm-ownership-next-action.md +58 -58
  71. package/reference/claude-config/sync-notes/2026-05-02-template-hardcode-workos-config.md +56 -56
  72. package/reference/claude-config/sync-notes/2026-05-04-elevasis-workspace.md +71 -71
  73. package/reference/claude-config/sync-notes/2026-05-04-knowledge-bundle.md +83 -83
  74. package/reference/claude-config/sync-notes/2026-05-04-template-skills-run-ui-and-tutorial.md +59 -59
  75. package/reference/claude-config/sync-notes/2026-05-05-list-builder.md +42 -42
  76. package/reference/claude-config/sync-notes/2026-05-06-crm-spine.md +60 -60
  77. package/reference/claude-config/sync-notes/2026-05-06-sdk-changes-release-train.md +37 -37
  78. package/reference/claude-config/sync-notes/2026-05-07-sdk-changes-release-train.md +34 -34
  79. package/reference/claude-config/sync-notes/2026-05-08-resource-governance-scaffold-guidance.md +38 -38
  80. package/reference/claude-config/sync-notes/2026-05-09-clients-domain.md +32 -32
  81. package/reference/claude-config/sync-notes/2026-05-09-command-system.md +33 -33
  82. package/reference/claude-config/sync-notes/2026-05-09-resource-governance-and-misc.md +69 -69
  83. package/reference/claude-config/sync-notes/2026-05-12-sdk-ready-release-train.md +30 -0
  84. package/reference/claude-config/sync-notes/2026-05-14-organization-model-ontology-refactor.md +42 -0
  85. package/reference/claude-config/sync-notes/README.md +43 -43
  86. package/reference/cli.mdx +808 -668
  87. package/reference/concepts.mdx +146 -146
  88. package/reference/deployment/api.mdx +297 -297
  89. package/reference/deployment/command-center.mdx +209 -209
  90. package/reference/deployment/index.mdx +195 -195
  91. package/reference/deployment/provided-features.mdx +107 -93
  92. package/reference/deployment/ui-execution.mdx +250 -250
  93. package/reference/examples/organization-model.ts +147 -84
  94. package/reference/framework/agent.mdx +156 -156
  95. package/reference/framework/index.mdx +195 -195
  96. package/reference/framework/interaction-guidance.mdx +182 -182
  97. package/reference/framework/memory.mdx +326 -326
  98. package/reference/framework/project-structure.mdx +282 -282
  99. package/reference/framework/tutorial-system.mdx +135 -135
  100. package/reference/getting-started.mdx +142 -142
  101. package/reference/index.mdx +106 -106
  102. package/reference/packages/core/src/README.md +14 -14
  103. package/reference/packages/core/src/business/README.md +2 -2
  104. package/reference/packages/core/src/knowledge/README.md +33 -32
  105. package/reference/packages/core/src/organization-model/README.md +149 -109
  106. package/reference/packages/core/src/test-utils/README.md +37 -37
  107. package/reference/packages/ui/src/api/README.md +18 -18
  108. package/reference/packages/ui/src/app/README.md +24 -24
  109. package/reference/packages/ui/src/auth/README.md +18 -18
  110. package/reference/packages/ui/src/components/README.md +24 -24
  111. package/reference/packages/ui/src/execution/README.md +16 -16
  112. package/reference/packages/ui/src/features/README.md +28 -28
  113. package/reference/packages/ui/src/graph/README.md +16 -16
  114. package/reference/packages/ui/src/hooks/README.md +23 -23
  115. package/reference/packages/ui/src/initialization/README.md +19 -19
  116. package/reference/packages/ui/src/knowledge/README.md +31 -31
  117. package/reference/packages/ui/src/organization/README.md +18 -18
  118. package/reference/packages/ui/src/profile/README.md +19 -19
  119. package/reference/packages/ui/src/provider/README.md +32 -32
  120. package/reference/packages/ui/src/router/README.md +18 -18
  121. package/reference/packages/ui/src/sse/README.md +13 -13
  122. package/reference/packages/ui/src/test-utils/README.md +7 -7
  123. package/reference/packages/ui/src/theme/README.md +23 -23
  124. package/reference/packages/ui/src/theme/presets/README.md +19 -19
  125. package/reference/packages/ui/src/types/README.md +16 -16
  126. package/reference/packages/ui/src/utils/README.md +18 -18
  127. package/reference/packages/ui/src/zustand/README.md +18 -18
  128. package/reference/platform-tools/adapters-integration.mdx +301 -301
  129. package/reference/platform-tools/adapters-platform.mdx +553 -553
  130. package/reference/platform-tools/index.mdx +217 -217
  131. package/reference/platform-tools/type-safety.mdx +82 -82
  132. package/reference/resources/index.mdx +349 -349
  133. package/reference/resources/patterns.mdx +449 -449
  134. package/reference/resources/types.mdx +116 -116
  135. package/reference/roadmap.mdx +165 -165
  136. package/reference/runtime.mdx +173 -173
  137. package/reference/scaffold/core/organization-graph.mdx +110 -89
  138. package/reference/scaffold/core/organization-model.mdx +226 -171
  139. package/reference/scaffold/index.mdx +67 -67
  140. package/reference/scaffold/operations/propagation-pipeline.md +77 -77
  141. package/reference/scaffold/operations/scaffold-maintenance.md +10 -10
  142. package/reference/scaffold/operations/workflow-recipes.md +138 -138
  143. package/reference/scaffold/recipes/add-a-feature.md +310 -88
  144. package/reference/scaffold/recipes/add-a-resource.md +137 -117
  145. package/reference/scaffold/recipes/customize-crm-actions.md +439 -439
  146. package/reference/scaffold/recipes/customize-knowledge-browser.md +384 -0
  147. package/reference/scaffold/recipes/customize-organization-model.md +281 -118
  148. package/reference/scaffold/recipes/extend-a-base-entity.md +8 -8
  149. package/reference/scaffold/recipes/extend-crm.md +40 -39
  150. package/reference/scaffold/recipes/extend-lead-gen.md +400 -401
  151. package/reference/scaffold/recipes/gate-by-feature-or-admin.md +118 -114
  152. package/reference/scaffold/recipes/index.md +47 -46
  153. package/reference/scaffold/recipes/query-the-knowledge-graph.md +227 -0
  154. package/reference/scaffold/reference/contracts.md +2389 -2121
  155. package/reference/scaffold/reference/feature-registry.md +9 -20
  156. package/reference/scaffold/reference/glossary.md +76 -76
  157. package/reference/scaffold/ui/composition-extensibility.mdx +233 -233
  158. package/reference/scaffold/ui/customization.md +243 -243
  159. package/reference/scaffold/ui/feature-flags-and-gating.md +46 -46
  160. package/reference/scaffold/ui/feature-shell.mdx +72 -72
  161. package/reference/scaffold/ui/recipes.md +221 -213
  162. package/reference/spine/spine-primer.md +96 -96
  163. package/reference/templates/index.mdx +47 -47
  164. package/reference/troubleshooting.mdx +223 -223
@@ -1,106 +1,106 @@
1
- ---
2
- title: Elevasis SDK
3
- description: Build and deploy workflows, agents, and resources with the Elevasis SDK
4
- loadWhen: "First session or new to the SDK"
5
- ---
6
-
7
- `@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.
8
-
9
- 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.
10
-
11
- The SDK ships with a full CLI (`elevasis-sdk`) for validation, deployment, execution, inspection, and project-management operations. Platform tools expose 70+ tools 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.
12
-
13
- ## Quick Start
14
-
15
- ```bash
16
- pnpm dlx @elevasis/sdk init my-project
17
- cd my-project
18
- pnpm install
19
- elevasis-sdk deploy
20
- ```
21
-
22
- 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.
23
-
24
- ## What You Can Build
25
-
26
- - **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.
27
- - **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.
28
- - **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/provided-features.mdx).
29
-
30
- ## Platform Tools
31
-
32
- Inside any workflow step or agent, import from `@elevasis/sdk/worker` to call platform tools via typed adapters:
33
-
34
- ```typescript
35
- import { createAttioAdapter, scheduler, llm } from '@elevasis/sdk/worker'
36
-
37
- const attio = createAttioAdapter('my-attio')
38
- const records = await attio.listRecords({ object: 'deals' })
39
-
40
- await scheduler.createSchedule({ ... })
41
- const result = await llm.generate({ messages: [...] })
42
- ```
43
-
44
- The platform exposes 70+ tools across integration adapters and platform services -- Gmail, Stripe, Google Sheets, Attio, and more. Credentials are managed server-side; API keys never cross the execution boundary.
45
-
46
- See [Platform Tools](platform-tools/index.mdx) for the full catalog.
47
-
48
- ## Known Limitations
49
-
50
- - **No streaming logs** -- Execution logs are returned in the response body after completion. Real-time log streaming is not available.
51
- - **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.
52
-
53
- ## Documentation
54
-
55
- ### Getting Started
56
-
57
- - [Getting Started](getting-started.mdx) - Installation, authentication, first workflow, and project structure
58
-
59
- ### Core Concepts
60
-
61
- - [Resources](resources/index.mdx) - Workflow and agent definition patterns, Zod schemas, step types, and routing
62
- - [Platform Tools](platform-tools/index.mdx) - Full catalog of 70+ tools, integration adapters, and credential management
63
- - [Credential Security](platform-tools/index.mdx#credential-security) - Three-layer credential model, HTTP tool patterns, and credential management
64
-
65
- ### Reference
66
-
67
- - [Concepts](concepts.mdx) - Plain-English concept explanations, glossary, Zod guide, execution model, and common errors
68
- - [Templates](templates/index.mdx) - 7 workflow templates: web-scraper, data-enrichment, email-sender, lead-scorer, and more
69
- - [CLI Reference](cli.mdx) - All CLI commands: check, deploy, exec, resources, executions, env, `project:*`, and more
70
- - [Deployment](deployment/index.mdx) - Deploy pipeline, versioning, bundle upload, and registry registration
71
- - [Runtime](runtime.mdx) - Worker execution model, concurrency, timeouts, cancellation, resource limits, and v1 limitations
72
-
73
- ### Typed Adapters
74
-
75
- - [Integration Adapters](platform-tools/adapters-integration.mdx) - Integration adapter catalog for Attio, Stripe, Google Sheets, Resend, and more
76
- - [Platform Adapters](platform-tools/adapters-platform.mdx) - All 9 platform service adapters: scheduler, storage, llm, pdf, approval, and more
77
-
78
- ### Framework
79
-
80
- - [Development Framework](framework/index.mdx) - How Claude Code helps you build: project structure, agent integration, memory, and documentation
81
- - [Project Structure](framework/project-structure.mdx) - Scaffolded file layout, domain barrels, src/index.ts entry point, and config files
82
- - [Agent Configuration](framework/agent.mdx) - Agent capabilities, tool access, model config, and Claude Code integration patterns
83
- - [Memory](framework/memory.mdx) - Agent memory system, session state, developer profiles, and workspace conventions
84
- - [Interaction Guidance](framework/interaction-guidance.mdx) - Skill dimension adaptation rules for platform navigation, API integration, and automation concepts
85
- - [Tutorial System](framework/tutorial-system.mdx) - 21-item tutorial menu, skill-adaptive lesson variants, progress tracking, and module contents
86
-
87
- ### Resources Subpages
88
-
89
- - [SDK Types](resources/types.mdx) - Complete type reference for `@elevasis/sdk` exports, config fields, and step handler context
90
- - [Common Patterns](resources/patterns.mdx) - Sequential steps, conditional branching, error handling, and resource status patterns
91
-
92
- ### Deployment Subpages
93
-
94
- - [Command Center](deployment/command-center.mdx) - Resource graph, relationships, node types, and post-deployment UI reference
95
- - [Provided Features](deployment/provided-features.mdx) - Manifest-backed shared features, compatibility components, and host shell wiring
96
- - [Execution API](deployment/api.mdx) - REST endpoints for executing resources and managing deployments
97
- - [UI Execution](deployment/ui-execution.mdx) - Custom React execution dialogs, forms, and hooks built with `@elevasis/ui`
98
-
99
- ### More
100
-
101
- - [Troubleshooting](troubleshooting.mdx) - Static error catalog for CLI, deployment, schema, and runtime failures
102
- - [Roadmap](roadmap.mdx) - Planned features including error taxonomy, retry semantics, circuit breaker, and metrics
103
-
104
- ---
105
-
106
- **Last Updated:** 2026-04-23
1
+ ---
2
+ title: Elevasis SDK
3
+ description: Build and deploy workflows, agents, and resources with the Elevasis SDK
4
+ loadWhen: "First session or new to the SDK"
5
+ ---
6
+
7
+ `@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.
8
+
9
+ 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.
10
+
11
+ The SDK ships with a full CLI (`elevasis-sdk`) for validation, deployment, execution, inspection, and project-management operations. Platform tools expose 70+ tools 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.
12
+
13
+ ## Quick Start
14
+
15
+ ```bash
16
+ pnpm dlx @elevasis/sdk init my-project
17
+ cd my-project
18
+ pnpm install
19
+ elevasis-sdk deploy
20
+ ```
21
+
22
+ 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.
23
+
24
+ ## What You Can Build
25
+
26
+ - **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.
27
+ - **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.
28
+ - **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/provided-features.mdx).
29
+
30
+ ## Platform Tools
31
+
32
+ Inside any workflow step or agent, import from `@elevasis/sdk/worker` to call platform tools via typed adapters:
33
+
34
+ ```typescript
35
+ import { createAttioAdapter, scheduler, llm } from '@elevasis/sdk/worker'
36
+
37
+ const attio = createAttioAdapter('my-attio')
38
+ const records = await attio.listRecords({ object: 'deals' })
39
+
40
+ await scheduler.createSchedule({ ... })
41
+ const result = await llm.generate({ messages: [...] })
42
+ ```
43
+
44
+ The platform exposes 70+ tools across integration adapters and platform services -- Gmail, Stripe, Google Sheets, Attio, and more. Credentials are managed server-side; API keys never cross the execution boundary.
45
+
46
+ See [Platform Tools](platform-tools/index.mdx) for the full catalog.
47
+
48
+ ## Known Limitations
49
+
50
+ - **No streaming logs** -- Execution logs are returned in the response body after completion. Real-time log streaming is not available.
51
+ - **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.
52
+
53
+ ## Documentation
54
+
55
+ ### Getting Started
56
+
57
+ - [Getting Started](getting-started.mdx) - Installation, authentication, first workflow, and project structure
58
+
59
+ ### Core Concepts
60
+
61
+ - [Resources](resources/index.mdx) - Workflow and agent definition patterns, Zod schemas, step types, and routing
62
+ - [Platform Tools](platform-tools/index.mdx) - Full catalog of 70+ tools, integration adapters, and credential management
63
+ - [Credential Security](platform-tools/index.mdx#credential-security) - Three-layer credential model, HTTP tool patterns, and credential management
64
+
65
+ ### Reference
66
+
67
+ - [Concepts](concepts.mdx) - Plain-English concept explanations, glossary, Zod guide, execution model, and common errors
68
+ - [Templates](templates/index.mdx) - 7 workflow templates: web-scraper, data-enrichment, email-sender, lead-scorer, and more
69
+ - [CLI Reference](cli.mdx) - All CLI commands: check, deploy, exec, resources, executions, env, `project:*`, and more
70
+ - [Deployment](deployment/index.mdx) - Deploy pipeline, versioning, bundle upload, and registry registration
71
+ - [Runtime](runtime.mdx) - Worker execution model, concurrency, timeouts, cancellation, resource limits, and v1 limitations
72
+
73
+ ### Typed Adapters
74
+
75
+ - [Integration Adapters](platform-tools/adapters-integration.mdx) - Integration adapter catalog for Attio, Stripe, Google Sheets, Resend, and more
76
+ - [Platform Adapters](platform-tools/adapters-platform.mdx) - All 9 platform service adapters: scheduler, storage, llm, pdf, approval, and more
77
+
78
+ ### Framework
79
+
80
+ - [Development Framework](framework/index.mdx) - How Claude Code helps you build: project structure, agent integration, memory, and documentation
81
+ - [Project Structure](framework/project-structure.mdx) - Scaffolded file layout, domain barrels, src/index.ts entry point, and config files
82
+ - [Agent Configuration](framework/agent.mdx) - Agent capabilities, tool access, model config, and Claude Code integration patterns
83
+ - [Memory](framework/memory.mdx) - Agent memory system, session state, developer profiles, and workspace conventions
84
+ - [Interaction Guidance](framework/interaction-guidance.mdx) - Skill dimension adaptation rules for platform navigation, API integration, and automation concepts
85
+ - [Tutorial System](framework/tutorial-system.mdx) - 21-item tutorial menu, skill-adaptive lesson variants, progress tracking, and module contents
86
+
87
+ ### Resources Subpages
88
+
89
+ - [SDK Types](resources/types.mdx) - Complete type reference for `@elevasis/sdk` exports, config fields, and step handler context
90
+ - [Common Patterns](resources/patterns.mdx) - Sequential steps, conditional branching, error handling, and resource status patterns
91
+
92
+ ### Deployment Subpages
93
+
94
+ - [Command Center](deployment/command-center.mdx) - Resource graph, relationships, node types, and post-deployment UI reference
95
+ - [Provided Features](deployment/provided-features.mdx) - Manifest-backed shared features, compatibility components, and host shell wiring
96
+ - [Execution API](deployment/api.mdx) - REST endpoints for executing resources and managing deployments
97
+ - [UI Execution](deployment/ui-execution.mdx) - Custom React execution dialogs, forms, and hooks built with `@elevasis/ui`
98
+
99
+ ### More
100
+
101
+ - [Troubleshooting](troubleshooting.mdx) - Static error catalog for CLI, deployment, schema, and runtime failures
102
+ - [Roadmap](roadmap.mdx) - Planned features including error taxonomy, retry semantics, circuit breaker, and metrics
103
+
104
+ ---
105
+
106
+ **Last Updated:** 2026-04-23
@@ -6,20 +6,20 @@ This package is the source of truth for shared types, schemas, and contract help
6
6
 
7
7
  ## Import Rules
8
8
 
9
- - Use `@elevasis/core` (root export) for browser-safe shared types and schemas.
10
- - Use `@elevasis/core/organization-model` for the semantic contract layer.
11
- - Use `@elevasis/core/entities` for the published base entity contracts.
12
- - Use `@elevasis/core/test-utils` for shared test fixtures, mocks, and test helpers.
13
- - Paths like `@elevasis/core/server` and `@elevasis/core/platform` are internal monorepo paths (`@repo/core/...`) and are NOT available to external consumers.
9
+ - Use `@elevasis/core` (root export) for browser-safe shared types and schemas.
10
+ - Use `@elevasis/core/organization-model` for the semantic contract layer.
11
+ - Use `@elevasis/core/entities` for the published base entity contracts.
12
+ - Use `@elevasis/core/test-utils` for shared test fixtures, mocks, and test helpers.
13
+ - Paths like `@elevasis/core/server` and `@elevasis/core/platform` are internal monorepo paths (`@repo/core/...`) and are NOT available to external consumers.
14
14
 
15
15
  ## Published Surface Groups
16
16
 
17
- The published `@elevasis/core` npm package exposes these subpaths:
18
-
19
- - `.` (`@elevasis/core`) - browser-safe shared types, schemas, and constants.
20
- - `./organization-model` (`@elevasis/core/organization-model`) - the semantic contract layer for CRM, lead gen, delivery, features, branding, and navigation.
21
- - `./entities` (`@elevasis/core/entities`) - published base entity contracts generic over project metadata extensions.
22
- - `./test-utils` (`@elevasis/core/test-utils`) - test fixtures, mocks, and helpers for downstream automated tests.
17
+ The published `@elevasis/core` npm package exposes these subpaths:
18
+
19
+ - `.` (`@elevasis/core`) - browser-safe shared types, schemas, and constants.
20
+ - `./organization-model` (`@elevasis/core/organization-model`) - the semantic contract layer for CRM, lead gen, delivery, features, branding, and navigation.
21
+ - `./entities` (`@elevasis/core/entities`) - published base entity contracts generic over project metadata extensions.
22
+ - `./test-utils` (`@elevasis/core/test-utils`) - test fixtures, mocks, and helpers for downstream automated tests.
23
23
 
24
24
  Within the monorepo, the internal `@repo/core` package exposes additional subpaths for use by `apps/` and other packages:
25
25
 
@@ -33,9 +33,9 @@ Within the monorepo, the internal `@repo/core` package exposes additional subpat
33
33
  - `@repo/core/integrations/...` - OAuth and credential contracts.
34
34
  - `@repo/core/projects/api-schemas` - project management request and response schemas.
35
35
  - `@repo/core/content` - published content metadata types.
36
- - `@repo/core/test-utils` - source of the published test fixtures and mocks surface.
37
-
38
- Other `@repo/core/*` subpaths remain monorepo-only unless they are explicitly listed above in the published `@elevasis/core` surface.
36
+ - `@repo/core/test-utils` - source of the published test fixtures and mocks surface.
37
+
38
+ Other `@repo/core/*` subpaths remain monorepo-only unless they are explicitly listed above in the published `@elevasis/core` surface.
39
39
 
40
40
  ## When To Read Deeper
41
41
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  Published base entity contracts for the Elevasis platform. Each entity ships as a TypeScript interface, a matching Zod schema, and an inferred `Input` type, generic over a `<TMeta>` extension slot.
4
4
 
5
- External projects extend these in `core/types/entities.ts` to attach project-specific metadata while keeping the canonical shape stable.
5
+ External projects extend these in `core/types/entities.ts` to attach project-specific metadata while keeping the canonical shape stable.
6
6
 
7
7
  ## Published Exports
8
8
 
@@ -49,4 +49,4 @@ export type Deal = BaseDeal
49
49
 
50
50
  The full pattern is documented in the SDK scaffold bundle: `node_modules/@elevasis/sdk/reference/scaffold/recipes/extend-a-base-entity.md`.
51
51
 
52
- The canonical template demo lives at `external/_template/core/types/entities.ts`.
52
+ The canonical template demo lives at `external/_template/core/types/entities.ts`.
@@ -1,32 +1,33 @@
1
- # @elevasis/core/knowledge
2
-
3
- Pure query layer over the organization graph. Browser-safe (no Node APIs); shared by the SDK CLI, platform CLI, and the `@elevasis/ui/knowledge` browser.
4
-
5
- ## Surface
6
-
7
- | Export | Purpose |
8
- | --------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
9
- | `byFeature(graph, featureId, knowledgeNodes)` | Knowledge nodes that govern the given feature. |
10
- | `byKind(graph, kind, knowledgeNodes)` | Filter knowledge nodes by `OrgKnowledgeKind`. |
11
- | `byOwner(graph, ownerId, knowledgeNodes)` | Knowledge nodes whose `ownerIds` includes the given owner. |
12
- | `governs(graph, nodeId)` | Outgoing `governs` targets (governed-feature ids) from a knowledge node. |
13
- | `governedBy(graph, nodeId)` | Incoming `governs` sources (governing knowledge-node ids) into a feature. |
14
- | `parsePath(pathString)` | Parse `/by-feature/$id`, `/by-kind/$kind`, `/by-owner/$id`, `/graph/$id/{governs,governed-by}`, or `/$id`. Throws on invalid input. |
15
- | `formatText`, `formatJson`, `formatIdsOnly` | Output formatters used by the `knowledge:*` CLI subcommands. |
16
-
17
- ## Path syntax
18
-
19
- ```
20
- /by-feature/<featureId>
21
- /by-kind/<playbook|strategy|reference>
22
- /by-owner/<ownerId>
23
- /graph/<nodeId>/governs
24
- /graph/<nodeId>/governed-by
25
- /<nodeId>
26
- ```
27
-
28
- ## JSON envelope
29
-
30
- `formatJson` returns `{ path, mount, args, results }` the same wrapped envelope used by `pnpm exec elevasis knowledge:ls --json` and `pnpm exec elevasis-sdk knowledge:ls --json`.
31
-
32
- `governs` and `governedBy` accept either bare or graph-namespaced ids (`knowledge.foo` or `knowledge:knowledge.foo`).
1
+ # @elevasis/core/knowledge
2
+
3
+ Pure query layer over the organization graph. Browser-safe (no Node APIs); shared by the SDK CLI, platform CLI, and the `@elevasis/ui/knowledge` browser.
4
+
5
+ ## Surface
6
+
7
+ | Export | Purpose |
8
+ | --------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
9
+ | `bySystem(graph, systemId, knowledgeNodes)` | Knowledge nodes that govern the given system. |
10
+ | `byKind(graph, kind, knowledgeNodes)` | Filter knowledge nodes by `OrgKnowledgeKind`. |
11
+ | `byOwner(graph, ownerId, knowledgeNodes)` | Knowledge nodes whose `ownerIds` includes the given owner. |
12
+ | `governs(graph, nodeId)` | Outgoing `governs` targets (governed-system ids) from a knowledge node. |
13
+ | `governedBy(graph, nodeId)` | Incoming `governs` sources (governing knowledge-node ids) into a system. |
14
+ | `parsePath(pathString)` | Parse `/by-system/$id`, `/by-kind/$kind`, `/by-owner/$id`, `/graph/$id/{governs,governed-by}`, or `/$id`. Throws on invalid input. |
15
+ | `formatText`, `formatJson`, `formatIdsOnly` | Output formatters used by the `knowledge:*` CLI subcommands. |
16
+
17
+ ## Path syntax
18
+
19
+ ```
20
+ /by-system/<systemId>
21
+ /by-kind/<playbook|strategy|reference>
22
+ /by-owner/<ownerId>
23
+ /graph/<nodeId>/governs
24
+ /graph/<nodeId>/governed-by
25
+ /<nodeId>
26
+ ```
27
+
28
+ ## JSON envelope
29
+
30
+ `formatJson` returns `{ path, mount, args, results }` — the same wrapped envelope used by `pnpm exec elevasis knowledge:ls --json` and `pnpm exec elevasis-sdk knowledge:ls --json`.
31
+
32
+ `governs` and `governedBy` accept either bare or graph-namespaced ids (`knowledge.foo` or `knowledge:knowledge.foo`).
33
+
@@ -1,109 +1,149 @@
1
- # Organization Model
2
-
3
- The organization model is the published semantic contract that maps a tenant's product shape to flat feature hierarchy, shell navigation, business semantics, and graph bindings.
4
-
5
- Use this module when resolving or validating an organization's contract before wiring UI shells, routing, feature gates, or domain-specific capability checks.
6
-
7
- ## Published Exports
8
-
9
- The public entry point exposes:
10
-
11
- - `OrganizationModelSchema`
12
- - `FeatureSchema`
13
- - `DEFAULT_ORGANIZATION_MODEL`
14
- - `defineOrganizationModel`
15
- - `resolveOrganizationModel`
16
- - `createFoundationOrganizationModel`
17
- - node ID and feature helper types
18
- - `OrganizationModel` and supporting domain types
19
-
20
- Import it from the published subpath:
21
-
22
- ```ts
23
- import {
24
- DEFAULT_ORGANIZATION_MODEL,
25
- createFoundationOrganizationModel,
26
- defineOrganizationModel,
27
- resolveOrganizationModel,
28
- type OrganizationModel
29
- } from '@elevasis/core/organization-model'
30
- ```
31
-
32
- ## Contract Shape
33
-
34
- The model is versioned and currently validates against `version: 1`.
35
-
36
- Top-level fields:
37
-
38
- - `version`
39
- - `branding`
40
- - `features`
41
- - `navigation`
42
- - `sales`
43
- - `prospecting`
44
- - `projects`
45
- - `identity`
46
- - `customers`
47
- - `offerings`
48
- - `roles`
49
- - `goals`
50
- - `systems`
51
- - `resources`
52
- - `statuses`
53
- - `operations`
54
- - `knowledge`
55
-
56
- Resource identity is authored in `resources.entries`. Runtime workflows, agents, and integrations import those descriptors, derive `resourceId` and kind from them, and attach executable behavior in operations code.
57
-
58
- ## Feature Set
59
-
60
- Feature hierarchy is authored as a flat array. Dotted IDs define parent/child relationships:
61
-
62
- ```ts
63
- features: [
64
- { id: 'dashboard', label: 'Dashboard', enabled: true, path: '/', uiPosition: 'sidebar-primary' },
65
- { id: 'sales', label: 'Sales', enabled: true, uiPosition: 'sidebar-primary' },
66
- { id: 'sales.crm', label: 'CRM', enabled: true, path: '/crm' },
67
- { id: 'operations.resources', label: 'Resources', enabled: true, path: '/operations/resources' }
68
- ]
69
- ```
70
-
71
- Containers omit `path`; leaves provide `path`. `uiPosition`, `requiresAdmin`, and `devOnly` inherit from ancestors.
72
- Development-only features remain in the contract with `enabled: true` and `devOnly: true`; shell consumers hide them and guard their paths outside development mode.
73
-
74
- ## Graph IDs
75
-
76
- Cross-collection links use kind-prefixed IDs:
77
-
78
- - `feature:sales.crm`
79
- - `integration:instantly`
80
- - `resource:lead-import`
81
- - `capability:operations.queue.review`
82
-
83
- ## Resource Descriptors
84
-
85
- The OM Resources domain is governance-only. Descriptors declare canonical `id`, required `systemId`, governance `status`, and optional role ownership. `DeploymentSpec` remains the runtime/deploy assembly around those descriptors, not a second resource identity catalog.
86
-
87
- ## Resolution Semantics
88
-
89
- - `defineOrganizationModel()` is a typed helper.
90
- - `resolveOrganizationModel()` deep-merges a partial override into the default model, then validates it.
91
- - `createFoundationOrganizationModel()` resolves the canonical model and returns UI-facing helper outputs.
92
- - Plain objects merge recursively.
93
- - Arrays replace the default value.
94
- - Missing fields fall back to `DEFAULT_ORGANIZATION_MODEL`.
95
-
96
- ## Referential Integrity
97
-
98
- - Feature IDs must be unique.
99
- - Child feature IDs require ancestor feature nodes.
100
- - Container features omit `path`.
101
- - Leaf features provide `path`.
102
- - Systems, resources, roles, knowledge nodes, and goals must resolve their declared cross-references.
103
-
104
- ## Practical Guidance
105
-
106
- - Use `resolveOrganizationModel()` when you need a runtime-safe model.
107
- - Use `defineOrganizationModel()` when authoring static overrides.
108
- - Keep feature IDs stable because shell routing, gating, breadcrumbs, and docs depend on them.
109
- - Put resource identity and governance in `resources.entries`; attach executable behavior in operations.
1
+ # Organization Model
2
+
3
+ The organization model is the published semantic contract that maps a tenant's System hierarchy, shell navigation, business semantics, resource governance, and graph bindings.
4
+
5
+ Use this module when resolving or validating an organization's contract before wiring UI shells, routing, system gates, or domain-specific capability checks.
6
+
7
+ ## Published Exports
8
+
9
+ The public entry point exposes:
10
+
11
+ - `OrganizationModelSchema`
12
+ - `DEFAULT_ORGANIZATION_MODEL`
13
+ - `defineOrganizationModel`
14
+ - `resolveOrganizationModel`
15
+ - `createFoundationOrganizationModel`
16
+ - node ID and System helper types
17
+ - `OrganizationModel` and supporting domain types
18
+
19
+ Import it from the published subpath:
20
+
21
+ ```ts
22
+ import {
23
+ DEFAULT_ORGANIZATION_MODEL,
24
+ createFoundationOrganizationModel,
25
+ defineOrganizationModel,
26
+ resolveOrganizationModel,
27
+ type OrganizationModel
28
+ } from '@elevasis/core/organization-model'
29
+ ```
30
+
31
+ ## Contract Shape
32
+
33
+ The model is versioned and currently validates against `version: 1`.
34
+
35
+ Top-level fields:
36
+
37
+ - `version`
38
+ - `domainMetadata`
39
+ - `branding`
40
+ - `navigation`
41
+ - `sales`
42
+ - `prospecting`
43
+ - `projects`
44
+ - `identity`
45
+ - `customers`
46
+ - `offerings`
47
+ - `roles`
48
+ - `goals`
49
+ - `systems`
50
+ - `resources`
51
+ - `capabilities`
52
+ - `policies`
53
+ - `statuses`
54
+ - `knowledge`
55
+
56
+ The pure collection domains are id-keyed maps: `systems`, `roles`, `goals`, `customers`, `offerings`, `resources`, `capabilities`, `policies`, and `statuses`. The map key must match the entry `id`. Entries carry `order` for deterministic ordered views; use `listDomain(record)` when order matters.
57
+
58
+ Resource identity is authored in `resources`. Runtime workflows, agents, integrations, and scripts import those descriptors, derive `resourceId` and kind from them, and attach executable behavior in operations code.
59
+
60
+ ## System Set
61
+
62
+ System hierarchy is authored as an id-keyed `systems` map. Dotted IDs and `parentSystemId` define parent/child relationships:
63
+
64
+ ```ts
65
+ systems: {
66
+ dashboard: { id: 'dashboard', order: 10, label: 'Dashboard', lifecycle: 'active' },
67
+ sales: { id: 'sales', order: 20, label: 'Sales', lifecycle: 'active' },
68
+ clients: { id: 'clients', order: 30, label: 'Clients', lifecycle: 'active' },
69
+ projects: { id: 'projects', order: 40, label: 'Projects', lifecycle: 'active' }
70
+ }
71
+ ```
72
+
73
+ Systems describe semantic ownership, hierarchy, lifecycle, access, and governance. Sidebar presentation is authored separately under `navigation.sidebar`; UI-backed Systems may still provide `ui.path` for route matching during the migration, but they do not author composed surface lists. Lifecycle values such as `active`, `beta`, `deprecated`, and `archived` replace the old feature enabled/dev-only split.
74
+
75
+ ## Sidebar Navigation
76
+
77
+ Shell navigation is authored as a recursive sidebar tree:
78
+
79
+ ```ts
80
+ navigation: {
81
+ sidebar: {
82
+ primary: {
83
+ dashboard: {
84
+ type: 'surface',
85
+ order: 10,
86
+ label: 'Dashboard',
87
+ path: '/',
88
+ surfaceType: 'dashboard',
89
+ targets: { systems: ['dashboard'] }
90
+ },
91
+ business: {
92
+ type: 'group',
93
+ order: 20,
94
+ label: 'Business',
95
+ children: {
96
+ clients: {
97
+ type: 'surface',
98
+ order: 20,
99
+ label: 'Clients',
100
+ path: '/clients',
101
+ surfaceType: 'list',
102
+ targets: { systems: ['clients'] }
103
+ }
104
+ }
105
+ }
106
+ },
107
+ bottom: {}
108
+ }
109
+ }
110
+ ```
111
+
112
+ Routeable sidebar leaves are projected into flat semantic surface DTOs by `projectOrganizationSurfaces(model)`. Do not author top-level `surfaces` or `navigationGroups` fields on `OrganizationModel`.
113
+
114
+ ## Graph IDs
115
+
116
+ Cross-collection links use kind-prefixed IDs:
117
+
118
+ - `system:sales.crm`
119
+ - `integration:instantly`
120
+ - `resource:lead-import`
121
+ - `action:operations.queue.review`
122
+
123
+ ## Resource Descriptors
124
+
125
+ The OM Resources domain is governance-only. Descriptors declare canonical `id`, required `systemPath`, governance `status`, and optional role ownership. `DeploymentSpec` remains the runtime/deploy assembly around those descriptors, not a second resource identity catalog.
126
+
127
+ ## Resolution Semantics
128
+
129
+ - `defineOrganizationModel()` is a typed helper.
130
+ - `resolveOrganizationModel()` deep-merges a partial override into the default model, then validates it.
131
+ - `createFoundationOrganizationModel()` resolves the canonical model and returns UI-facing helper outputs.
132
+ - Plain objects merge recursively.
133
+ - Id-keyed domain maps merge additively by key.
134
+ - Arrays replace the default value.
135
+ - Missing fields fall back to `DEFAULT_ORGANIZATION_MODEL`.
136
+
137
+ ## Referential Integrity
138
+
139
+ - System IDs must be unique.
140
+ - Child System IDs require valid ancestors or `parentSystemId` links.
141
+ - Systems with UI provide `ui.path`.
142
+ - Systems, resources, roles, knowledge nodes, and goals must resolve their declared cross-references.
143
+
144
+ ## Practical Guidance
145
+
146
+ - Use `resolveOrganizationModel()` when you need a runtime-safe model.
147
+ - Use `defineOrganizationModel()` when authoring static overrides.
148
+ - Keep System IDs stable because shell routing, gating, breadcrumbs, and docs depend on them.
149
+ - Put resource identity and governance in `resources`; attach executable behavior in operations.