@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,128 +1,148 @@
1
- ---
2
- title: Add a Resource
3
- description: Add an OM-owned workflow or agent descriptor, bind executable behavior in operations, and verify descriptor-backed deployment.
4
- ---
5
1
  <!-- @generated by packages/sdk/scripts/copy-reference-docs.mjs -- DO NOT EDIT -->
6
2
  <!-- Regenerate: pnpm scaffold:sync -->
7
3
 
8
-
9
- # Add a Resource
10
-
11
- Resources are governed descriptors in the Organization Model. The OM owns resource identity, System membership, owner role, and lifecycle status. Operations code imports those descriptors, attaches executable workflow or agent behavior, and exports a `DeploymentSpec` for deployment.
12
-
13
- Do not keep a second identity catalog in operations. `DeploymentSpec` is the runtime/deploy assembly artifact; it should not be the place where a workflow ID is invented.
14
-
15
- ## 1. Author the OM descriptor
16
-
17
- Add the descriptor in `core/config/organization-model.ts`:
18
-
19
- ```ts
20
- import { defineResources } from '@elevasis/core/organization-model'
21
-
22
- export const resourceDescriptors = defineResources({
23
- myWorkflow: {
4
+ ---
5
+ title: Add a Resource
6
+ description: Add an OM-owned workflow or agent descriptor, bind executable behavior in operations, and verify descriptor-backed deployment.
7
+ ---
8
+
9
+ # Add a Resource
10
+
11
+ Resources are governed descriptors in the Organization Model. The OM owns resource identity, System membership, owner role, and lifecycle status. Operations code imports those descriptors, attaches executable workflow or agent behavior, and exports a `DeploymentSpec` for deployment.
12
+
13
+ Do not keep a second identity catalog in operations. `DeploymentSpec` is the runtime/deploy assembly artifact; it should not be the place where a workflow ID is invented.
14
+
15
+ ## 1. Author the OM descriptor
16
+
17
+ Add the descriptor in `core/config/organization-model.ts`:
18
+
19
+ ```ts
20
+ import { defineResources } from '@elevasis/core/organization-model'
21
+
22
+ export const resourceDescriptors = defineResources({
23
+ myWorkflow: {
24
24
  id: 'my-workflow',
25
+ order: 10,
25
26
  kind: 'workflow',
26
- systemId: 'sys.operations',
27
+ systemPath: 'operations',
27
28
  ownerRoleId: 'role-ops-lead',
28
29
  status: 'active',
29
- capabilityKey: 'operations.my-workflow'
30
- }
31
- })
32
- ```
33
-
34
- Then expose the descriptor catalog through the Organization Model:
35
-
36
- ```ts
37
- export const resourceGovernanceModel = {
38
- systems: {
39
- systems
40
- },
41
- resources: {
42
- entries: Object.values(resourceDescriptors)
43
- }
44
- } as const
45
- ```
46
-
47
- Use `organizationModel.resources.entries` as the Resources descriptor catalog. `links[].nodeId` still uses the kind-prefixed graph grammar, such as `feature:sales.crm`, `integration:instantly`, or `capability:operations.queue.review`, when a runtime resource needs semantic graph binding.
48
-
49
- ## 2. Author executable behavior
50
-
51
- Operations code owns schemas, steps, handlers, triggers, and UI execution metadata. Import the descriptor and derive runtime identity from it at the binding boundary:
52
-
53
- ```ts
54
- import type { WorkflowDefinition } from '@elevasis/sdk'
55
- import { resourceDescriptors } from '@core/config/organization-model'
56
-
57
- export const myWorkflow: WorkflowDefinition = {
58
- config: {
59
- resource: resourceDescriptors.myWorkflow,
60
- resourceId: resourceDescriptors.myWorkflow.id,
61
- name: 'My Workflow',
62
- type: resourceDescriptors.myWorkflow.kind,
63
- version: '1.0.0',
64
- status: 'dev',
65
- links: [{ nodeId: 'feature:operations', kind: 'operates-on' }],
66
- category: 'production'
67
- },
68
- contract: {
69
- inputSchema,
70
- outputSchema
71
- },
72
- steps: {
73
- run: {
74
- id: 'run',
75
- name: 'Run',
76
- handler: async (_input, context) => {
77
- context.logger.info('[my-workflow] starting')
78
- return { ok: true }
79
- },
80
- inputSchema,
81
- outputSchema,
82
- next: null
83
- }
84
- },
85
- entryPoint: 'run'
86
- }
87
- ```
88
-
89
- `category` is one of `production`, `diagnostic`, `internal`, or `testing`.
90
-
91
- ## 3. Register in the deployment spec
92
-
93
- ```ts
94
- import { resourceGovernanceModel } from '@core/config/organization-model'
95
- import { myWorkflow } from './my-workflow/index.js'
96
-
97
- export const org = {
98
- version: '0.1.0',
99
- organizationModel: resourceGovernanceModel,
100
- workflows: [myWorkflow],
101
- agents: []
102
- }
103
- ```
104
-
105
- Use `.js` extensions in TypeScript source imports for ESM compatibility.
106
-
107
- ## 4. Declare runtime relationships
108
-
109
- Use `DeploymentSpec.relationships` for execution topology:
110
-
111
- ```ts
112
- relationships: {
113
- 'my-workflow': {
114
- triggers: { workflows: ['email-notification'] },
115
- uses: { integrations: ['hubspot'] }
116
- }
117
- }
118
- ```
119
-
120
- Use `config.links` for semantic graph binding and `relationships` for runtime execution relationships.
121
-
122
- ## 5. Verify
123
-
124
- ```bash
30
+ actionKey: 'operations.my-workflow',
31
+ ontology: {
32
+ implements: ['operations:action/my-workflow.run'],
33
+ reads: ['operations:object/work-item'],
34
+ writes: ['operations:object/work-item'],
35
+ usesCatalogs: ['operations:catalog/workflow-status'],
36
+ emits: ['operations:event/my-workflow.completed']
37
+ },
38
+ codeRefs: [
39
+ {
40
+ path: 'operations/src/my-workflow/index.ts',
41
+ role: 'entrypoint',
42
+ symbol: 'myWorkflow'
43
+ },
44
+ {
45
+ path: 'operations/src/my-workflow/my-workflow.test.ts',
46
+ role: 'test'
47
+ }
48
+ ]
49
+ }
50
+ })
51
+ ```
52
+
53
+ Then expose the descriptor catalog through the Organization Model:
54
+
55
+ ```ts
56
+ export const resourceGovernanceModel = {
57
+ systems,
58
+ resources: resourceDescriptors
59
+ } as const
60
+ ```
61
+
62
+ Use `organizationModel.resources` as the Resources descriptor catalog. Graph references still use kind-prefixed IDs, such as `system:sales.crm`, `resource:lead-import`, or `action:operations.queue.review`, when runtime behavior needs semantic graph binding.
63
+
64
+ Use `codeRefs` as repo-relative implementation breadcrumbs for agents and operators. They do not define resource identity, System membership, runtime topology, or graph links; they point from the governed Resource descriptor to the files that implement, validate, or document it.
65
+
66
+ Use `actionKey` only when the resource implements a stable runtime action key. Use nested `resource.ontology` bindings to declare which ontology actions, objects, catalogs, and events the resource implements, reads, writes, uses, or emits. Optional top-level resource `emits` remains readable for bridge-era event descriptors, but new descriptors should keep event bindings in `resource.ontology.emits`.
67
+
68
+ ## 2. Author executable behavior
69
+
70
+ Operations code owns schemas, steps, handlers, triggers, and UI execution metadata. Import the descriptor and derive runtime identity from it at the binding boundary:
71
+
72
+ ```ts
73
+ import type { WorkflowDefinition } from '@elevasis/sdk'
74
+ import { resourceDescriptors } from '@core/config/organization-model'
75
+
76
+ export const myWorkflow: WorkflowDefinition = {
77
+ config: {
78
+ resource: resourceDescriptors.myWorkflow,
79
+ resourceId: resourceDescriptors.myWorkflow.id,
80
+ name: 'My Workflow',
81
+ type: resourceDescriptors.myWorkflow.kind,
82
+ version: '1.0.0',
83
+ status: 'dev',
84
+ category: 'production'
85
+ },
86
+ contract: {
87
+ inputSchema,
88
+ outputSchema
89
+ },
90
+ steps: {
91
+ run: {
92
+ id: 'run',
93
+ name: 'Run',
94
+ handler: async (_input, context) => {
95
+ context.logger.info('[my-workflow] starting')
96
+ return { ok: true }
97
+ },
98
+ inputSchema,
99
+ outputSchema,
100
+ next: null
101
+ }
102
+ },
103
+ entryPoint: 'run'
104
+ }
105
+ ```
106
+
107
+ `category` is one of `production`, `diagnostic`, `internal`, or `testing`.
108
+
109
+ ## 3. Register in the deployment spec
110
+
111
+ ```ts
112
+ import { resourceGovernanceModel } from '@core/config/organization-model'
113
+ import { myWorkflow } from './my-workflow/index.js'
114
+
115
+ export const org = {
116
+ version: '0.1.0',
117
+ organizationModel: resourceGovernanceModel,
118
+ workflows: [myWorkflow],
119
+ agents: []
120
+ }
121
+ ```
122
+
123
+ Use `.js` extensions in TypeScript source imports for ESM compatibility.
124
+
125
+ ## 4. Declare runtime relationships
126
+
127
+ Use `DeploymentSpec.relationships` for execution topology:
128
+
129
+ ```ts
130
+ relationships: {
131
+ 'my-workflow': {
132
+ triggers: { workflows: ['email-notification'] },
133
+ uses: { integrations: ['hubspot'] }
134
+ }
135
+ }
136
+ ```
137
+
138
+ Use `relationships` for runtime execution relationships. For semantic graph binding, prefer OM ontology IDs in `resource.ontology`; keep `config.links` only when maintaining older descriptors that still need the legacy graph bridge.
139
+
140
+ ## 5. Verify
141
+
142
+ ```bash
125
143
  pnpm -C operations check
126
144
  pnpm -C operations deploy
127
145
  pnpm exec elevasis describe Elevasis/my-workflow
146
+ pnpm scaffold:sync
147
+ pnpm scaffold:verify
128
148
  ```