@elevasis/sdk 1.44.3 → 1.46.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 (259) hide show
  1. package/dist/cli.cjs +35026 -30226
  2. package/dist/index.d.ts +1786 -808
  3. package/dist/index.js +789 -739
  4. package/dist/node/index.d.ts +105 -181
  5. package/dist/node/index.js +2 -2
  6. package/dist/test-utils/index.d.ts +901 -359
  7. package/dist/test-utils/index.js +587 -824
  8. package/dist/worker/index.d.ts +12685 -0
  9. package/dist/worker/index.js +188 -216
  10. package/package.json +4 -7
  11. package/reference/_navigation.md +161 -22
  12. package/reference/_reference-manifest.json +228 -4
  13. package/reference/claude-config.md +8 -0
  14. package/reference/core/exports.mdx +2 -0
  15. package/reference/core/index.mdx +3 -3
  16. package/reference/examples/organization-model.ts +117 -111
  17. package/reference/index.mdx +4 -4
  18. package/reference/packages/core/src/business/README.md +4 -1
  19. package/reference/packages/core/src/content/README.md +19 -0
  20. package/reference/packages/core/src/organization-model/README.md +148 -149
  21. package/reference/packages/core/src/organization-model/readiness/README.md +42 -0
  22. package/reference/packages/ui/src/features/README.md +28 -28
  23. package/reference/rules/active-change-index.md +40 -54
  24. package/reference/rules/agent-runtime.md +81 -0
  25. package/reference/rules/agent-start-here.md +71 -163
  26. package/reference/rules/deployment.md +33 -10
  27. package/reference/rules/error-handling.md +26 -0
  28. package/reference/rules/execution.md +13 -0
  29. package/reference/rules/frontend.md +10 -3
  30. package/reference/rules/observability.md +9 -1
  31. package/reference/rules/operations.md +26 -17
  32. package/reference/rules/organization-model.md +74 -88
  33. package/reference/rules/organization-os.md +71 -88
  34. package/reference/rules/package-taxonomy.md +11 -2
  35. package/reference/rules/platform.md +13 -7
  36. package/reference/rules/shared-types.md +36 -0
  37. package/reference/rules/task-tracking.md +30 -5
  38. package/reference/rules/ui.md +145 -3
  39. package/reference/rules/vibe-intents.md +271 -0
  40. package/reference/rules/vibe.md +17 -243
  41. package/reference/scaffold/core/organization-graph.mdx +112 -99
  42. package/reference/scaffold/core/organization-model.mdx +231 -215
  43. package/reference/scaffold/operations/propagation-pipeline.md +16 -17
  44. package/reference/scaffold/operations/scaffold-maintenance.md +22 -20
  45. package/reference/scaffold/operations/workflow-recipes.md +72 -20
  46. package/reference/scaffold/recipes/add-a-feature.md +156 -146
  47. package/reference/scaffold/recipes/add-a-resource.md +123 -117
  48. package/reference/scaffold/recipes/customize-crm-actions.md +28 -13
  49. package/reference/scaffold/recipes/customize-knowledge-browser.md +52 -117
  50. package/reference/scaffold/recipes/customize-organization-model.md +161 -149
  51. package/reference/scaffold/recipes/extend-a-base-entity.md +156 -140
  52. package/reference/scaffold/recipes/extend-content.md +265 -0
  53. package/reference/scaffold/recipes/extend-crm.md +16 -11
  54. package/reference/scaffold/recipes/extend-lead-gen.md +37 -21
  55. package/reference/scaffold/recipes/gate-by-feature-or-admin.md +160 -118
  56. package/reference/scaffold/recipes/index.md +6 -3
  57. package/reference/scaffold/recipes/query-the-knowledge-graph.md +23 -23
  58. package/reference/scaffold/reference/contracts.md +30 -56
  59. package/reference/scaffold/reference/feature-registry.md +3 -0
  60. package/reference/scaffold/reference/glossary.md +4 -4
  61. package/reference/scaffold/reference/system-interface-capabilities.md +5 -4
  62. package/reference/scaffold/ui/composition-extensibility.mdx +271 -232
  63. package/reference/scaffold/ui/customization.md +2 -2
  64. package/reference/scaffold/ui/feature-flags-and-gating.md +14 -6
  65. package/reference/scaffold/ui/feature-shell.mdx +277 -62
  66. package/reference/scaffold/ui/recipes.md +229 -197
  67. package/reference/sdk/cli-management.mdx +166 -33
  68. package/reference/sdk/cli.mdx +90 -13
  69. package/reference/sdk/concepts.mdx +2 -0
  70. package/reference/sdk/define-builders.mdx +76 -0
  71. package/reference/sdk/deployment/command-center.mdx +6 -2
  72. package/reference/sdk/deployment/execution-reference.mdx +64 -186
  73. package/reference/sdk/deployment/index.mdx +2 -0
  74. package/reference/sdk/exports.mdx +4 -4
  75. package/reference/sdk/framework/agent.mdx +52 -116
  76. package/reference/sdk/framework/index.mdx +46 -65
  77. package/reference/sdk/framework/project-structure.mdx +150 -205
  78. package/reference/sdk/framework/tutorial-system.mdx +2 -2
  79. package/reference/sdk/human-in-the-loop.mdx +152 -0
  80. package/reference/sdk/index.mdx +6 -7
  81. package/reference/sdk/platform-tools/adapters-platform.mdx +3 -1
  82. package/reference/sdk/platform-tools/index.mdx +12 -0
  83. package/reference/sdk/platform-tools/type-safety.mdx +4 -0
  84. package/reference/sdk/project-deployment-spec.mdx +131 -0
  85. package/reference/sdk/resources/index.mdx +21 -7
  86. package/reference/sdk/resources/patterns.mdx +54 -24
  87. package/reference/sdk/resources/types.mdx +7 -4
  88. package/reference/sdk/templates/data-enrichment.mdx +7 -3
  89. package/reference/sdk/templates/email-sender.mdx +139 -135
  90. package/reference/sdk/templates/lead-scorer.mdx +5 -1
  91. package/reference/sdk/templates/pdf-generator.mdx +155 -151
  92. package/reference/sdk/templates/recurring-job.mdx +195 -189
  93. package/reference/sdk/templates/text-classifier.mdx +4 -0
  94. package/reference/sdk/templates/web-scraper.mdx +139 -135
  95. package/reference/spine/spine-primer.md +135 -96
  96. package/reference/ui/exports.mdx +1 -0
  97. package/reference/ui/index.mdx +14 -7
  98. package/dist/types/worker/adapters/anymailfinder.d.ts +0 -14
  99. package/dist/types/worker/adapters/apify.d.ts +0 -14
  100. package/dist/types/worker/adapters/approval.d.ts +0 -23
  101. package/dist/types/worker/adapters/attio.d.ts +0 -22
  102. package/dist/types/worker/adapters/clickup.d.ts +0 -22
  103. package/dist/types/worker/adapters/create-adapter.d.ts +0 -41
  104. package/dist/types/worker/adapters/crm.d.ts +0 -20
  105. package/dist/types/worker/adapters/dropbox.d.ts +0 -14
  106. package/dist/types/worker/adapters/email.d.ts +0 -25
  107. package/dist/types/worker/adapters/execution.d.ts +0 -22
  108. package/dist/types/worker/adapters/gmail.d.ts +0 -14
  109. package/dist/types/worker/adapters/google-sheets.d.ts +0 -14
  110. package/dist/types/worker/adapters/index.d.ts +0 -33
  111. package/dist/types/worker/adapters/instantly.d.ts +0 -14
  112. package/dist/types/worker/adapters/lead.d.ts +0 -28
  113. package/dist/types/worker/adapters/list.d.ts +0 -9
  114. package/dist/types/worker/adapters/llm.d.ts +0 -45
  115. package/dist/types/worker/adapters/millionverifier.d.ts +0 -14
  116. package/dist/types/worker/adapters/notification.d.ts +0 -28
  117. package/dist/types/worker/adapters/pdf.d.ts +0 -22
  118. package/dist/types/worker/adapters/projects.d.ts +0 -20
  119. package/dist/types/worker/adapters/resend.d.ts +0 -14
  120. package/dist/types/worker/adapters/scheduler.d.ts +0 -25
  121. package/dist/types/worker/adapters/signature-api.d.ts +0 -14
  122. package/dist/types/worker/adapters/storage.d.ts +0 -33
  123. package/dist/types/worker/adapters/stripe.d.ts +0 -14
  124. package/dist/types/worker/adapters/tomba.d.ts +0 -14
  125. package/dist/types/worker/index.d.ts +0 -60
  126. package/dist/types/worker/platform.d.ts +0 -90
  127. package/dist/types/worker/utils.d.ts +0 -9
  128. package/reference/claude-config/Overview.md +0 -230
  129. package/reference/claude-config/hooks/post-edit-validate.mjs +0 -98
  130. package/reference/claude-config/hooks/scaffold-registry-reminder.mjs +0 -187
  131. package/reference/claude-config/hooks/tool-failure-recovery.mjs +0 -73
  132. package/reference/claude-config/registries/graph-skills.json +0 -4
  133. package/reference/claude-config/registries/knowledge-flags.json +0 -154
  134. package/reference/claude-config/registries/skill-coverage.json +0 -20
  135. package/reference/claude-config/rules/active-change-index.md +0 -22
  136. package/reference/claude-config/rules/agent-start-here.md +0 -22
  137. package/reference/claude-config/rules/deployment.md +0 -22
  138. package/reference/claude-config/rules/error-handling.md +0 -22
  139. package/reference/claude-config/rules/execution.md +0 -22
  140. package/reference/claude-config/rules/frontend.md +0 -22
  141. package/reference/claude-config/rules/observability.md +0 -22
  142. package/reference/claude-config/rules/operations.md +0 -22
  143. package/reference/claude-config/rules/organization-model.md +0 -22
  144. package/reference/claude-config/rules/organization-os.md +0 -22
  145. package/reference/claude-config/rules/package-taxonomy.md +0 -22
  146. package/reference/claude-config/rules/platform.md +0 -22
  147. package/reference/claude-config/rules/shared-types.md +0 -22
  148. package/reference/claude-config/rules/task-tracking.md +0 -22
  149. package/reference/claude-config/rules/topbar-actions.md +0 -70
  150. package/reference/claude-config/rules/ui.md +0 -22
  151. package/reference/claude-config/rules/vibe.md +0 -22
  152. package/reference/claude-config/scripts/statusline-command.js +0 -18
  153. package/reference/claude-config/settings.json +0 -30
  154. package/reference/claude-config/skills/client/SKILL.md +0 -201
  155. package/reference/claude-config/skills/deploy/SKILL.md +0 -159
  156. package/reference/claude-config/skills/dsp/SKILL.md +0 -66
  157. package/reference/claude-config/skills/elevasis/SKILL.md +0 -251
  158. package/reference/claude-config/skills/explore/SKILL.md +0 -78
  159. package/reference/claude-config/skills/git-sync/SKILL.md +0 -166
  160. package/reference/claude-config/skills/om/SKILL.md +0 -475
  161. package/reference/claude-config/skills/om/operations/build.md +0 -237
  162. package/reference/claude-config/skills/om/operations/codify-level-a.md +0 -109
  163. package/reference/claude-config/skills/om/operations/codify-level-b.md +0 -159
  164. package/reference/claude-config/skills/om/operations/customers.md +0 -114
  165. package/reference/claude-config/skills/om/operations/features.md +0 -88
  166. package/reference/claude-config/skills/om/operations/goals.md +0 -123
  167. package/reference/claude-config/skills/om/operations/identity.md +0 -97
  168. package/reference/claude-config/skills/om/operations/labels.md +0 -110
  169. package/reference/claude-config/skills/om/operations/offerings.md +0 -114
  170. package/reference/claude-config/skills/om/operations/roles.md +0 -104
  171. package/reference/claude-config/skills/om/operations/scaffold.md +0 -163
  172. package/reference/claude-config/skills/om/operations/techStack.md +0 -38
  173. package/reference/claude-config/skills/project/SKILL.md +0 -1114
  174. package/reference/claude-config/skills/run-ui/SKILL.md +0 -73
  175. package/reference/claude-config/skills/save/SKILL.md +0 -183
  176. package/reference/claude-config/skills/setup/SKILL.md +0 -290
  177. package/reference/claude-config/skills/status/SKILL.md +0 -59
  178. package/reference/claude-config/skills/submit-request/SKILL.md +0 -180
  179. package/reference/claude-config/skills/sync/SKILL.md +0 -47
  180. package/reference/claude-config/skills/tutorial/SKILL.md +0 -259
  181. package/reference/claude-config/skills/tutorial/progress-template.md +0 -74
  182. package/reference/claude-config/skills/tutorial/technical.md +0 -1303
  183. package/reference/claude-config/skills/tutorial/vibe-coder.md +0 -890
  184. package/reference/claude-config/sync-notes/2026-04-22-git-sync-and-sync-notes.md +0 -27
  185. package/reference/claude-config/sync-notes/2026-04-22-lead-gen-deliverability-removal.md +0 -30
  186. package/reference/claude-config/sync-notes/2026-04-24-test-utils-and-template-tests.md +0 -73
  187. package/reference/claude-config/sync-notes/2026-04-24-ui-consolidation-and-sdk-cli-train.md +0 -86
  188. package/reference/claude-config/sync-notes/2026-04-25-auth-role-system-and-settings-roles.md +0 -55
  189. package/reference/claude-config/sync-notes/2026-04-27-crm-hitl-action-layer-cutover.md +0 -97
  190. package/reference/claude-config/sync-notes/2026-04-27-lead-gen-substrate-train.md +0 -112
  191. package/reference/claude-config/sync-notes/2026-04-29-crm-state-and-lead-gen-processing-status.md +0 -93
  192. package/reference/claude-config/sync-notes/2026-05-02-crm-ownership-next-action.md +0 -58
  193. package/reference/claude-config/sync-notes/2026-05-02-template-hardcode-workos-config.md +0 -56
  194. package/reference/claude-config/sync-notes/2026-05-04-elevasis-workspace.md +0 -71
  195. package/reference/claude-config/sync-notes/2026-05-04-knowledge-bundle.md +0 -83
  196. package/reference/claude-config/sync-notes/2026-05-04-template-skills-run-ui-and-tutorial.md +0 -59
  197. package/reference/claude-config/sync-notes/2026-05-05-list-builder.md +0 -42
  198. package/reference/claude-config/sync-notes/2026-05-06-crm-spine.md +0 -60
  199. package/reference/claude-config/sync-notes/2026-05-06-sdk-changes-release-train.md +0 -37
  200. package/reference/claude-config/sync-notes/2026-05-07-sdk-changes-release-train.md +0 -34
  201. package/reference/claude-config/sync-notes/2026-05-08-resource-governance-scaffold-guidance.md +0 -38
  202. package/reference/claude-config/sync-notes/2026-05-09-clients-domain.md +0 -32
  203. package/reference/claude-config/sync-notes/2026-05-09-command-system.md +0 -33
  204. package/reference/claude-config/sync-notes/2026-05-09-resource-governance-and-misc.md +0 -69
  205. package/reference/claude-config/sync-notes/2026-05-12-sdk-ready-release-train.md +0 -30
  206. package/reference/claude-config/sync-notes/2026-05-14-organization-model-ontology-refactor.md +0 -45
  207. package/reference/claude-config/sync-notes/2026-05-15-om-skill-rename-and-write-family.md +0 -52
  208. package/reference/claude-config/sync-notes/2026-05-17-sdk-boundary-consolidation.md +0 -33
  209. package/reference/claude-config/sync-notes/2026-05-20-om-define-helpers.md +0 -32
  210. package/reference/claude-config/sync-notes/2026-05-22-access-model-and-right-panel.md +0 -43
  211. package/reference/claude-config/sync-notes/2026-05-22-lead-gen-tenant-config.md +0 -40
  212. package/reference/claude-config/sync-notes/2026-05-22-org-model-multi-file-split.md +0 -61
  213. package/reference/claude-config/sync-notes/2026-05-23-branding-names-to-identity.md +0 -49
  214. package/reference/claude-config/sync-notes/2026-05-23-lead-gen-manage-access.md +0 -31
  215. package/reference/claude-config/sync-notes/2026-05-23-om-deployment-drift-detection.md +0 -42
  216. package/reference/claude-config/sync-notes/2026-05-23-om-full-model-deploy-contract.md +0 -33
  217. package/reference/claude-config/sync-notes/2026-05-23-ui-sdk-package-fixes.md +0 -37
  218. package/reference/claude-config/sync-notes/2026-05-24-platform-invite-router-core-baseline.md +0 -28
  219. package/reference/claude-config/sync-notes/2026-05-24-system-interface-readiness.md +0 -43
  220. package/reference/claude-config/sync-notes/2026-05-25-invitation-login-loader.md +0 -26
  221. package/reference/claude-config/sync-notes/2026-05-25-om-topbar-requests.md +0 -33
  222. package/reference/claude-config/sync-notes/2026-05-25-system-interface-profile-registry-and-substrate.md +0 -35
  223. package/reference/claude-config/sync-notes/2026-05-25-tenant-om-scaffold-cli.md +0 -49
  224. package/reference/claude-config/sync-notes/2026-05-25-vibe-operate-intent.md +0 -47
  225. package/reference/claude-config/sync-notes/2026-05-28-om-snapshot-sdk-workflow-config.md +0 -33
  226. package/reference/claude-config/sync-notes/2026-05-30-client-source-and-om-profiles.md +0 -39
  227. package/reference/claude-config/sync-notes/2026-06-02-knowledge-nested-group-routing.md +0 -27
  228. package/reference/claude-config/sync-notes/2026-06-02-nest-projects-under-platform.md +0 -45
  229. package/reference/claude-config/sync-notes/2026-06-03-skill-autogen-and-client-skill.md +0 -34
  230. package/reference/claude-config/sync-notes/2026-06-04-scaffold-registry-lane-severity.md +0 -34
  231. package/reference/claude-config/sync-notes/2026-06-05-appearance-app-mode-decouple.md +0 -29
  232. package/reference/claude-config/sync-notes/2026-06-05-ontology-endpoint-rename-and-knowledge-browser-ui.md +0 -86
  233. package/reference/claude-config/sync-notes/2026-06-06-om-build-systems-scaffold.md +0 -47
  234. package/reference/claude-config/sync-notes/2026-06-06-om-item-copy-references.md +0 -50
  235. package/reference/claude-config/sync-notes/2026-06-08-knowledge-base-page-not-found-fix.md +0 -76
  236. package/reference/claude-config/sync-notes/2026-06-09-agent-sessions-public-agent-chat-route.md +0 -75
  237. package/reference/claude-config/sync-notes/2026-06-09-sdk-cli-load-org-model-resolution.md +0 -42
  238. package/reference/claude-config/sync-notes/2026-06-12-agent-grants-visualizer-operations.md +0 -30
  239. package/reference/claude-config/sync-notes/2026-06-14-session-ux-and-project-cli-json.md +0 -33
  240. package/reference/claude-config/sync-notes/2026-06-14-shared-session-conversation-view.md +0 -26
  241. package/reference/claude-config/sync-notes/2026-06-15-session-chat-zero-wiring.md +0 -46
  242. package/reference/claude-config/sync-notes/2026-06-17-agent-session-ux-features.md +0 -34
  243. package/reference/claude-config/sync-notes/2026-06-25-shared-page-scroll-contract-guard.md +0 -52
  244. package/reference/claude-config/sync-notes/2026-06-26-leadgen-overview-om-telemetry.md +0 -47
  245. package/reference/claude-config/sync-notes/2026-07-21-agent-scaffold-hardening.md +0 -75
  246. package/reference/claude-config/sync-notes/2026-07-23-agent-session-memory.md +0 -49
  247. package/reference/claude-config/sync-notes/2026-07-23-workos-org-marker.md +0 -50
  248. package/reference/claude-config/sync-notes/2026-07-24-claude-5-models-and-session-surface-fixes.md +0 -116
  249. package/reference/claude-config/sync-notes/2026-07-27-agent-strict-output-and-turn-drift.md +0 -73
  250. package/reference/claude-config/sync-notes/2026-07-28-agent-reply-is-its-own-field.md +0 -84
  251. package/reference/claude-config/sync-notes/2026-07-30-login-screen-and-member-provisioning-state.md +0 -114
  252. package/reference/claude-config/sync-notes/2026-08-02-auth-guard-defaults-and-truncation-fix.md +0 -122
  253. package/reference/claude-config/sync-notes/2026-08-03-agent-prose-escape-normalization.md +0 -88
  254. package/reference/claude-config/sync-notes/2026-08-03-cli-gateway-errors-and-request-timeout.md +0 -120
  255. package/reference/claude-config/sync-notes/README.md +0 -43
  256. package/reference/sdk/framework/interaction-guidance.mdx +0 -182
  257. package/reference/sdk/framework/memory.mdx +0 -326
  258. package/reference/sdk/framework/resource-documentation.mdx +0 -90
  259. package/reference/sdk/roadmap.mdx +0 -164
@@ -1,22 +0,0 @@
1
- ---
2
- description: Compatibility pointer for the canonical Vibe rule bundled with @elevasis/sdk
3
- ---
4
-
5
- # Vibe
6
-
7
- Canonical rule source:
8
-
9
- `operations/node_modules/@elevasis/sdk/reference/rules/vibe.md`
10
-
11
- When working in the monorepo template snapshot before dependencies are installed,
12
- use the repo-local generated fallback:
13
-
14
- `packages/sdk/reference/rules/vibe.md`
15
-
16
- If the generated fallback is stale or missing, use the source:
17
-
18
- `packages/sdk/docs/agent-rules/vibe.md`
19
-
20
- Read the bundled rule first when available. This local file is intentionally kept
21
- as a thin compatibility pointer for existing local rule references in skills,
22
- sync notes, and older prompts.
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env node
2
- let input = ''
3
- process.stdin.on('data', (chunk) => (input += chunk))
4
- process.stdin.on('end', () => {
5
- const data = JSON.parse(input)
6
- const model = data.model?.display_name || '?'
7
- const pct = Math.floor(data.context_window?.used_percentage || 0)
8
-
9
- const DIM = '\x1b[90m',
10
- RESET = '\x1b[0m'
11
-
12
- const ctxSize = data.context_window?.context_window_size || 0
13
- const usedTokens = Math.round((ctxSize * pct) / 100)
14
- const rounded = Math.round(usedTokens / 100) * 100
15
- const tokenStr = rounded >= 1000 ? (rounded / 1000).toFixed(1).replace(/\.0$/, '') + 'k' : String(rounded)
16
-
17
- console.log(`${DIM}[${RESET}${model}${DIM}]${RESET} ${tokenStr} Tokens`)
18
- })
@@ -1,30 +0,0 @@
1
- {
2
- "statusLine": {
3
- "type": "command",
4
- "command": "node .claude/scripts/statusline-command.js"
5
- },
6
- "hooks": {
7
- "PostToolUse": [
8
- {
9
- "matcher": "Write|Edit|MultiEdit",
10
- "hooks": [
11
- {
12
- "type": "command",
13
- "command": "node .claude/hooks/post-edit-validate.mjs"
14
- }
15
- ]
16
- }
17
- ],
18
- "PostToolUseFailure": [
19
- {
20
- "matcher": "Bash",
21
- "hooks": [
22
- {
23
- "type": "command",
24
- "command": "node .claude/hooks/tool-failure-recovery.mjs"
25
- }
26
- ]
27
- }
28
- ]
29
- }
30
- }
@@ -1,201 +0,0 @@
1
- ---
2
- name: client
3
- description: "Client portfolio management -- list, resolve, inspect, and maintain client records and their lineage to companies, contacts, and source deals -- via the elevasis-sdk client:* CLI."
4
- argument-hint: "[list | status | get | resolve | create | update | delete] [args]"
5
- allowed-tools: Bash, Read, Write, Edit, Glob, Grep
6
- ---
7
-
8
- # Client Management
9
-
10
- `/client` is the entrypoint for all client-portfolio work in the template. It covers:
11
-
12
- - **Portfolio status** -- bare `/client` or `/client status` gives a portfolio-level overview of all clients.
13
- - **Lookup and resolution** -- `/client <query>` or `/client resolve <query>` resolves a name or search term to a canonical client ID.
14
- - **Detail and lineage** -- `/client get <id>` returns full client detail including linked companies, contacts, and source deals.
15
- - **CRUD surface** -- create, update, and delete client records via `elevasis-sdk client:*`.
16
-
17
- **Usage:**
18
-
19
- - `/client` / `/client status` -- Portfolio overview (see "Status Mode" below). Wraps `client:status`.
20
- - `/client list [--search q] [--status s] [--limit n] [--offset n]` -- Paginated client list. Wraps `client:list`.
21
- - `/client <query>` / `/client resolve <query>` -- Fuzzy-resolve a client by name, UUID, or search string. Wraps `client:resolve`.
22
- - `/client get <id>` -- Full client detail: name, status, source, linked company, contact, deals. Wraps `client:get`.
23
- - `/client create --name "..." [options]` -- Create a new client (confirm ceremony). Wraps `client:create`.
24
- - `/client update <id> [options]` -- Update client fields (confirm ceremony). Wraps `client:update`.
25
- - `/client delete <id>` -- Delete a client (destructive -- explicit confirmation required). Wraps `client:delete`.
26
-
27
- ---
28
-
29
- ## Ambient Vibe Integration
30
-
31
- `/client` is the landing point for client-scoped vibe intents. Agents arriving from the ambient layer behave identically to a direct invocation.
32
-
33
- | Vibe intent | What vibe detected | What to do here |
34
- | -------------- | ----------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
35
- | **Describe** | "tell me about Acme", "what's the status of this client" | Resolve the client name via `client:resolve`, then run `client:get <id>` and narrate detail + lineage |
36
- | **Query** | "which clients are active", "list clients", "client status" | Run `client:list [--status s] [--search q]` or `client:status` and present the results |
37
- | **Navigate** | "focus on Acme", "switch to Acme", "back to Acme" | Resolve via `client:resolve <query>`, update scope to that client, narrate the new context |
38
- | **Capture** | "add a new client", "create a client for Beta LLC" | Draft fields from the user's message, confirm with user (Capture ceremony), then `client:create` |
39
- | **Transition** | "update Acme's status", "mark Acme as active" | Confirm the change with user (Transition ceremony), then `client:update <id> --status <new>` |
40
-
41
- `client:create`, `client:update`, and `client:delete` MUST route through the standard Capture/Transition confirm step before executing. The destructive `client:delete` requires explicit user confirmation (show what will be deleted and ask "Are you sure?" before proceeding).
42
-
43
- ---
44
-
45
- ## Prerequisites
46
-
47
- **Run from the project root** (the directory containing `.elevasis`). Before issuing any other commands, run:
48
-
49
- ```bash
50
- pnpm elevasis-sdk doctor
51
- ```
52
-
53
- If `doctor` fails, stop immediately and surface the error -- do not retry other commands. Fix the reported issue first (missing `.env`, bad API key, wrong directory), then re-run `doctor` before proceeding.
54
-
55
- ---
56
-
57
- ## Invocation Contract
58
-
59
- All `elevasis-sdk` commands in this skill use the wrapper script form:
60
-
61
- ```bash
62
- pnpm elevasis-sdk <subcommand> [flags]
63
- ```
64
-
65
- Available from the **project root** -- the directory that contains the `.elevasis` marker file. The long form `pnpm -C operations exec elevasis-sdk <subcommand>` is equivalent.
66
-
67
- ---
68
-
69
- ## Status Mode (bare `/client` or `/client status`)
70
-
71
- When invoked without a subcommand or with `status`, enter **client portfolio mode**: present a high-level overview and offer next actions.
72
-
73
- ```bash
74
- pnpm elevasis-sdk client:status --pretty
75
- ```
76
-
77
- Present the result as a compact summary: total clients, breakdown by status, and a suggestion of what to do next (e.g. "3 active clients. Inspect one with `/client get <id>` or list all with `/client list`").
78
-
79
- ---
80
-
81
- ## Operations
82
-
83
- ### `list [options]` -- Client List
84
-
85
- ```bash
86
- pnpm elevasis-sdk client:list --pretty
87
-
88
- # Filter by status
89
- pnpm elevasis-sdk client:list --status active --pretty
90
-
91
- # Search by name
92
- pnpm elevasis-sdk client:list --search "Acme" --pretty
93
-
94
- # Paginate
95
- pnpm elevasis-sdk client:list --limit 20 --offset 0 --pretty
96
- ```
97
-
98
- **Options:** `--status <status>`, `--search <query>`, `--limit <n>`, `--offset <n>`, `--api-url <url>`, `--pretty`
99
-
100
- Present as a compact table: name, status, source.
101
-
102
- ### `resolve <query>` -- Name-to-ID Resolution
103
-
104
- Resolves a name, UUID, or search string to a canonical client record. This is the primary tool for name-to-ID translation before any `get`, `update`, or `delete` call.
105
-
106
- ```bash
107
- pnpm elevasis-sdk client:resolve "Acme" --pretty
108
- ```
109
-
110
- If multiple candidates match, the CLI returns candidates -- pick the right one and confirm with the user before proceeding. If zero match, surface the error and suggest `client:list --search "<query>"` to browse.
111
-
112
- ### `get <id>` -- Client Detail and Lineage
113
-
114
- ```bash
115
- pnpm elevasis-sdk client:get <id> --pretty
116
- ```
117
-
118
- Returns full client detail: name, status, source, source deal, linked primary company, primary contact, and metadata. Narrate the lineage in plain language (e.g. "Acme Corp -- active client, sourced from deal john@acme.com, linked to Acme Corp (acq_companies)").
119
-
120
- ### `create` -- Create Client (Confirm Ceremony)
121
-
122
- **Always confirm before creating.** Collect required and optional fields, draft a summary, and ask the user to confirm before executing.
123
-
124
- **Required:** `--name <name>`
125
-
126
- **Optional:** `--status <status>`, `--source <source>`, `--source-deal-id <uuid>`, `--primary-company-id <uuid>`, `--primary-contact-id <uuid>`, `--metadata <json>`
127
-
128
- ```bash
129
- pnpm elevasis-sdk client:create \
130
- --name "Acme Corp" \
131
- --status active \
132
- --source deal \
133
- --source-deal-id <deal-uuid> \
134
- --pretty
135
- ```
136
-
137
- After creation, show the new client ID and suggest `/client get <id>` to verify.
138
-
139
- ### `update <id>` -- Update Client (Confirm Ceremony)
140
-
141
- **Always confirm before updating.** Show the current state via `client:get <id>`, draft the proposed changes, and ask the user to confirm before executing.
142
-
143
- **Options:** `--name <name>`, `--status <status>`, `--source <source>`, `--source-deal-id <uuid>`, `--clear-source-deal`, `--primary-company-id <uuid>`, `--clear-primary-company`, `--primary-contact-id <uuid>`, `--clear-primary-contact`, `--metadata <json>`
144
-
145
- ```bash
146
- pnpm elevasis-sdk client:update <id> --status active --pretty
147
- ```
148
-
149
- To clear a linked field, use the corresponding `--clear-*` flag (e.g. `--clear-source-deal`, `--clear-primary-company`, `--clear-primary-contact`). Do NOT pass an empty string -- it is rejected. Use the clear flag instead.
150
-
151
- ### `delete <id>` -- Delete Client (Destructive -- Explicit Confirmation Required)
152
-
153
- **ALWAYS confirm before deleting.** Show the client record first (via `client:get <id>`), then ask the user explicitly: "Delete client `<name>` (`<id>`)? This cannot be undone." Only proceed after an affirmative confirmation.
154
-
155
- ```bash
156
- pnpm elevasis-sdk client:delete <id> --pretty
157
- ```
158
-
159
- ---
160
-
161
- ## Client Inference
162
-
163
- When the user refers to a client by name rather than ID, resolve using these steps (in priority order):
164
-
165
- 1. **Exact UUID** -- if the argument looks like a UUID, use it directly with `client:get`
166
- 2. **`client:resolve`** -- run `client:resolve "<name>"` to fuzzy-match by name; use the returned ID
167
- 3. **`client:list --search`** -- if `resolve` returns no match, search with `client:list --search "<name>"` and present candidates
168
- 4. **Context from conversation** -- if a specific client was resolved earlier in this session, prefer it
169
- 5. **Ambiguous** -- if multiple match or none match, show candidates and ask
170
-
171
- ---
172
-
173
- ## Natural Language Mode
174
-
175
- When args do not match any command pattern, infer intent from natural language:
176
-
177
- | User says | Inferred operation |
178
- | ------------------------------------------------- | ----------------------------------------------------------- |
179
- | "show me Acme" | `resolve "Acme"` then `get <id>` |
180
- | "who are our active clients" | `list --status active --pretty` |
181
- | "client overview" / "how many clients do we have" | `status --pretty` |
182
- | "add a new client: Beta LLC" | `create --name "Beta LLC"` (confirm ceremony) |
183
- | "update Acme to active" | `resolve "Acme"` then `update <id> --status active` |
184
- | "delete the Gamma client" | `resolve "Gamma"` then `delete <id>` (explicit confirm) |
185
- | "link Acme to deal <uuid>" | `resolve "Acme"` then `update <id> --source-deal-id <uuid>` |
186
- | "remove Acme's source deal" | `resolve "Acme"` then `update <id> --clear-source-deal` |
187
-
188
- ---
189
-
190
- ## Safety Rules
191
-
192
- 1. **Always confirm create/update/delete** -- show proposed changes and ask the user before executing any write operation
193
- 2. **Explicit confirmation for delete** -- `client:delete` is irreversible; require an affirmative "yes" before running
194
- 3. **Organization scoping** -- all API calls are automatically org-scoped via `ELEVASIS_PLATFORM_KEY`; no `--org` flag is required
195
- 4. **Read before write** -- when updating, show current state via `client:get` before applying changes
196
- 5. **Use `--clear-*` flags to unlink** -- never pass empty strings to clear linked fields; use `--clear-source-deal`, `--clear-primary-company`, or `--clear-primary-contact`
197
- 6. **Template project assumption** -- the template is a single-organization project; all `/client` operations are scoped by `ELEVASIS_PLATFORM_KEY`; there is no cross-org capability
198
-
199
- ---
200
-
201
- **Last Updated:** 2026-06-03
@@ -1,159 +0,0 @@
1
- ---
2
- name: deploy
3
- description: Test, build, fix issues, then commit and push
4
- ---
5
-
6
- # Deploy
7
-
8
- Test, build, fix issues, then commit and push.
9
-
10
- **Usage:** `/deploy [--skip] [--minor | --major] [commit message]`
11
-
12
- ## Flags
13
-
14
- - `--skip` -- Skip tests, type checking, and build (Steps 2-4). Go straight from pre-flight to commit and push.
15
- - `--minor` -- Bump the minor version instead of patch (e.g. 1.0.0 -> 1.1.0).
16
- - `--major` -- Bump the major version instead of patch (e.g. 1.0.0 -> 2.0.0).
17
-
18
- ## Process
19
-
20
- ### Step 1: Pre-flight Check
21
-
22
- Run in parallel:
23
-
24
- ```bash
25
- git status
26
- git diff --stat
27
- ```
28
-
29
- If there are no changes, report "Nothing to deploy" and stop.
30
-
31
- ### Step 1b: Version Bump
32
-
33
- Read the current version from `package.json`, then bump it:
34
-
35
- - Default: bump **patch** (e.g. 1.0.0 -> 1.0.1)
36
- - `--minor`: bump **minor** (e.g. 1.0.0 -> 1.1.0)
37
- - `--major`: bump **major** (e.g. 1.0.0 -> 2.0.0)
38
-
39
- Use the Edit tool to update the `"version"` field in `package.json` directly. Do not use `npm version` or any CLI command.
40
-
41
- ### Step 2: Run Tests
42
-
43
- ```bash
44
- pnpm test
45
- ```
46
-
47
- If tests fail:
48
-
49
- 1. Read the failing test output
50
- 2. Attempt to fix the issue
51
- 3. Re-run tests
52
- 4. If still failing after 2 attempts, stop and report the failures
53
-
54
- ### Step 3: Type Check
55
-
56
- Root has no `lint` script -- `lint` only exists in `ui/package.json` (`tsc --noEmit`). `operations/package.json` has an equivalent `check-types` script; `core/package.json` has neither `lint` nor `check-types` (only `test`). Run:
57
-
58
- ```bash
59
- pnpm -C ui lint
60
- pnpm -C operations check-types
61
- ```
62
-
63
- If type errors exist:
64
-
65
- 1. Read the errors
66
- 2. Attempt to fix
67
- 3. Re-run
68
- 4. If still failing after 2 attempts, stop and report
69
-
70
- ### Step 4: Build
71
-
72
- ```bash
73
- pnpm build
74
- ```
75
-
76
- If build fails:
77
-
78
- 1. Read the error output
79
- 2. Attempt to fix
80
- 3. Re-run
81
- 4. If still failing after 2 attempts, stop and report
82
-
83
- ### Step 5: Commit
84
-
85
- 1. Stage all changed files: `git add -A`
86
- 2. Create commit with the provided message (or auto-generate from changes)
87
- 3. Format: conventional commits (feat:, fix:, chore:, docs:, etc.)
88
-
89
- ```bash
90
- git add -A
91
- git commit -m "<message>"
92
- ```
93
-
94
- ### Step 6: Push
95
-
96
- ```bash
97
- git push
98
- ```
99
-
100
- If push fails (e.g., remote has new commits):
101
-
102
- 1. `git pull --rebase`
103
- 2. Re-run tests to verify no conflicts broke anything
104
- 3. `git push`
105
-
106
- ### Step 7: Report
107
-
108
- ```
109
- Deploy Complete
110
- ===============
111
- Version: <old> -> <new>
112
- Tests: passed
113
- Types: clean
114
- Build: success
115
- Commit: <hash> - <message>
116
- Push: pushed to <branch>
117
- ```
118
-
119
- ### Step 8: Project Task Status Transition
120
-
121
- After a successful push, mark any linked project task as `submitted`. This is a best-effort fanout -- it must never fail the deploy.
122
-
123
- 1. **Resolve the task ID.** Look for a `prj_tasks` UUID tied to the current work, in this order:
124
- - A task UUID explicitly captured in the current conversation (e.g. from a previous `/save`, `/project work`, or `project:task:*` invocation).
125
- - The most recent in-progress task on the most-recently-touched project, via:
126
-
127
- ```bash
128
- pnpm elevasis-sdk project:list --status active --pretty
129
- pnpm elevasis-sdk project:list --status blocked --pretty
130
- pnpm elevasis-sdk project:task:list --project <project-id> --status in_progress --pretty
131
- ```
132
-
133
- - If the session produced an ambiguous or empty result, PROMPT the user once: "Mark a project task as submitted? (task UUID, or 'skip')". Default is skip.
134
-
135
- 2. **Fire the transition** (only when a single confident task ID is resolved):
136
-
137
- ```bash
138
- pnpm elevasis-sdk project:task:update <task-id> --status submitted
139
- ```
140
-
141
- 3. **Failure handling.** If the CLI call errors, no task ID can be resolved, or the user declines, emit a single warning line and continue:
142
-
143
- ```
144
- Warning: skipped project:task status transition (<reason>). Deploy itself succeeded.
145
- ```
146
-
147
- Never retry, never block the deploy report, never exit non-zero on this step.
148
-
149
- ## Error Recovery
150
-
151
- If any step fails and cannot be auto-fixed:
152
-
153
- ```
154
- Deploy Failed at Step N: [step name]
155
- =====================================
156
- Error: [description]
157
- Attempted fixes: [what was tried]
158
- Manual action needed: [what the user should do]
159
- ```
@@ -1,66 +0,0 @@
1
- ---
2
- name: dsp
3
- description: Dispatch subagents in parallel for implementation tasks
4
- ---
5
-
6
- # DSP -- Dispatch Subagents in Parallel
7
-
8
- Parallel agent dispatch for implementation tasks. Orchestrate, then delegate to subagents.
9
-
10
- **Usage:** `/dsp <instructions>`
11
-
12
- ## Rules
13
-
14
- 1. **Always dispatch, never self-execute** -- the purpose is to offload work to subagents
15
- 2. **Parallel within waves** -- all agents in a wave dispatched in a SINGLE message
16
- 3. **Orient first** -- read `.claude/rules/agent-start-here.md` before planning to understand project structure and task routing
17
-
18
- ## Process
19
-
20
- ### Step 1: Understand Context
21
-
22
- 1. Read `.claude/rules/agent-start-here.md` for project structure, task-class routing, and boundary resolution
23
- 2. Read relevant architecture/feature docs based on the task domain
24
- 3. If the task touches code, explore the relevant `src/` directories
25
-
26
- ### Step 2: Analyze Complexity
27
-
28
- **Single-Wave** -- all tasks independent, dispatch everything at once
29
- **Multi-Wave** -- tasks have dependencies, execute waves sequentially
30
-
31
- ### Step 3: Plan
32
-
33
- For each unit of work, identify:
34
-
35
- - What files/areas are affected
36
- - What context the subagent needs
37
- - Whether it depends on another task's output
38
-
39
- Print the plan:
40
-
41
- ```
42
- DSP Plan: N waves, M tasks
43
- Wave 1: [description] -- N tasks
44
- Wave 2: [description] -- N tasks (if multi-wave)
45
- Dispatching Wave 1...
46
- ```
47
-
48
- ### Step 4: Dispatch
49
-
50
- Use the Agent tool with `subagent_type="general-purpose"` and `model="sonnet"`.
51
-
52
- Each agent prompt must include:
53
-
54
- - The specific task to accomplish
55
- - Relevant file paths and context
56
- - Instruction to use backslash paths for file operations on Windows
57
-
58
- ### Step 5: Aggregate Results
59
-
60
- ```
61
- DSP Results: [description]
62
-
63
- Tasks completed: X/Y
64
- Files modified: [list]
65
- Next steps: [if any]
66
- ```