@muxoai/sdk 1.2.3 → 1.4.2

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 (208) hide show
  1. package/.agents/plugins/marketplace.json +22 -0
  2. package/.claude-plugin/marketplace.json +32 -0
  3. package/.codex/config.toml +12 -0
  4. package/ARCHITECTURE.md +121 -0
  5. package/README.md +85 -31
  6. package/dist/clerk.d.ts +35 -0
  7. package/dist/clerk.js +201 -0
  8. package/dist/cli.d.ts +2 -0
  9. package/dist/cli.js +2380 -0
  10. package/dist/composio-catalog.d.ts +234 -0
  11. package/dist/composio-catalog.js +1894 -0
  12. package/dist/config.d.ts +36 -0
  13. package/dist/config.js +115 -0
  14. package/dist/durable-workflow.d.ts +45 -0
  15. package/dist/durable-workflow.js +90 -0
  16. package/dist/engine.d.ts +465 -0
  17. package/dist/engine.js +2560 -0
  18. package/dist/index.d.ts +7 -0
  19. package/dist/index.js +7 -0
  20. package/dist/mcp-schema.d.ts +286 -0
  21. package/dist/mcp-schema.js +2559 -0
  22. package/dist/mcp.d.ts +22 -0
  23. package/dist/mcp.js +1356 -0
  24. package/dist/memory-graph.d.ts +21 -0
  25. package/dist/memory-graph.js +173 -0
  26. package/dist/nl.d.ts +34 -0
  27. package/dist/nl.js +756 -0
  28. package/dist/oauth.d.ts +32 -0
  29. package/dist/oauth.js +134 -0
  30. package/dist/policy.d.ts +190 -0
  31. package/dist/policy.js +1597 -0
  32. package/dist/providers/composio-instant.d.ts +18 -0
  33. package/dist/providers/composio-instant.js +1169 -0
  34. package/dist/providers/composio-sdk.d.ts +162 -0
  35. package/dist/providers/composio-sdk.js +1395 -0
  36. package/dist/providers/microsoft-governance.d.ts +152 -0
  37. package/dist/providers/microsoft-governance.js +1062 -0
  38. package/dist/providers/stripe-billing.d.ts +83 -0
  39. package/dist/providers/stripe-billing.js +611 -0
  40. package/dist/providers/stripe-projects.d.ts +508 -0
  41. package/dist/providers/stripe-projects.js +3188 -0
  42. package/dist/providers/supermemory.d.ts +160 -0
  43. package/dist/providers/supermemory.js +778 -0
  44. package/dist/provisioning-managed.d.ts +50 -0
  45. package/dist/provisioning-managed.js +155 -0
  46. package/dist/sdk.d.ts +951 -0
  47. package/dist/sdk.js +748 -0
  48. package/dist/server.d.ts +10 -0
  49. package/dist/server.js +3575 -0
  50. package/dist/store.d.ts +348 -0
  51. package/dist/store.js +2323 -0
  52. package/dist/types.d.ts +593 -0
  53. package/dist/types.js +1 -0
  54. package/dist/ui/console-html.d.ts +64 -0
  55. package/dist/ui/console-html.js +3857 -0
  56. package/dist/ui/design-tokens.d.ts +177 -0
  57. package/dist/ui/design-tokens.js +210 -0
  58. package/dist/version.d.ts +1 -0
  59. package/dist/version.js +1 -0
  60. package/package.json +68 -7
  61. package/plugins/muxo/.app.json +8 -0
  62. package/plugins/muxo/.claude-plugin/plugin.json +16 -0
  63. package/plugins/muxo/.codex-plugin/plugin.json +64 -0
  64. package/plugins/muxo/.cursor-plugin/plugin.json +30 -0
  65. package/plugins/muxo/.mcp.json +8 -0
  66. package/plugins/muxo/assets/logo.png +0 -0
  67. package/plugins/muxo/assets/logo.svg +6 -0
  68. package/plugins/muxo/hooks/hooks.json +27 -0
  69. package/plugins/muxo/hooks/session-start.sh +97 -0
  70. package/plugins/muxo/hooks/user-prompt-submit.sh +58 -0
  71. package/plugins/muxo/mcp.json +28 -0
  72. package/plugins/muxo/plugin.json +116 -0
  73. package/plugins/muxo/skills/muxo/SKILL.md +153 -0
  74. package/plugins/muxo/skills/muxo/agents/openai.yaml +12 -0
  75. package/plugins/muxo/skills/muxo/references/cli.md +63 -0
  76. package/plugins/muxo/skills/muxo/references/mcp.md +37 -0
  77. package/plugins/muxo/skills/muxo-activity-summary/SKILL.md +81 -0
  78. package/plugins/muxo/skills/setup/SKILL.md +42 -0
  79. package/plugins/muxo/skills/setup/agents/openai.yaml +12 -0
  80. package/src/catalogues/stripe-projects-catalog.json +9972 -0
  81. package/vendor/microsoft-governance/README.md +363 -0
  82. package/vendor/microsoft-governance/dist/audit.d.ts +26 -0
  83. package/vendor/microsoft-governance/dist/audit.d.ts.map +1 -0
  84. package/vendor/microsoft-governance/dist/audit.js +107 -0
  85. package/vendor/microsoft-governance/dist/audit.js.map +1 -0
  86. package/vendor/microsoft-governance/dist/cascade-containment.d.ts +84 -0
  87. package/vendor/microsoft-governance/dist/cascade-containment.d.ts.map +1 -0
  88. package/vendor/microsoft-governance/dist/cascade-containment.js +387 -0
  89. package/vendor/microsoft-governance/dist/cascade-containment.js.map +1 -0
  90. package/vendor/microsoft-governance/dist/client.d.ts +34 -0
  91. package/vendor/microsoft-governance/dist/client.d.ts.map +1 -0
  92. package/vendor/microsoft-governance/dist/client.js +112 -0
  93. package/vendor/microsoft-governance/dist/client.js.map +1 -0
  94. package/vendor/microsoft-governance/dist/context-poisoning.d.ts +58 -0
  95. package/vendor/microsoft-governance/dist/context-poisoning.d.ts.map +1 -0
  96. package/vendor/microsoft-governance/dist/context-poisoning.js +410 -0
  97. package/vendor/microsoft-governance/dist/context-poisoning.js.map +1 -0
  98. package/vendor/microsoft-governance/dist/credential-vault.d.ts +213 -0
  99. package/vendor/microsoft-governance/dist/credential-vault.d.ts.map +1 -0
  100. package/vendor/microsoft-governance/dist/credential-vault.js +567 -0
  101. package/vendor/microsoft-governance/dist/credential-vault.js.map +1 -0
  102. package/vendor/microsoft-governance/dist/discovery.d.ts +80 -0
  103. package/vendor/microsoft-governance/dist/discovery.d.ts.map +1 -0
  104. package/vendor/microsoft-governance/dist/discovery.js +404 -0
  105. package/vendor/microsoft-governance/dist/discovery.js.map +1 -0
  106. package/vendor/microsoft-governance/dist/encryption/channel.d.ts +29 -0
  107. package/vendor/microsoft-governance/dist/encryption/channel.d.ts.map +1 -0
  108. package/vendor/microsoft-governance/dist/encryption/channel.js +78 -0
  109. package/vendor/microsoft-governance/dist/encryption/channel.js.map +1 -0
  110. package/vendor/microsoft-governance/dist/encryption/index.d.ts +9 -0
  111. package/vendor/microsoft-governance/dist/encryption/index.d.ts.map +1 -0
  112. package/vendor/microsoft-governance/dist/encryption/index.js +23 -0
  113. package/vendor/microsoft-governance/dist/encryption/index.js.map +1 -0
  114. package/vendor/microsoft-governance/dist/encryption/mesh-client.d.ts +267 -0
  115. package/vendor/microsoft-governance/dist/encryption/mesh-client.d.ts.map +1 -0
  116. package/vendor/microsoft-governance/dist/encryption/mesh-client.js +1001 -0
  117. package/vendor/microsoft-governance/dist/encryption/mesh-client.js.map +1 -0
  118. package/vendor/microsoft-governance/dist/encryption/ratchet.d.ts +38 -0
  119. package/vendor/microsoft-governance/dist/encryption/ratchet.d.ts.map +1 -0
  120. package/vendor/microsoft-governance/dist/encryption/ratchet.js +223 -0
  121. package/vendor/microsoft-governance/dist/encryption/ratchet.js.map +1 -0
  122. package/vendor/microsoft-governance/dist/encryption/registry-client.d.ts +136 -0
  123. package/vendor/microsoft-governance/dist/encryption/registry-client.d.ts.map +1 -0
  124. package/vendor/microsoft-governance/dist/encryption/registry-client.js +369 -0
  125. package/vendor/microsoft-governance/dist/encryption/registry-client.js.map +1 -0
  126. package/vendor/microsoft-governance/dist/encryption/x3dh.d.ts +80 -0
  127. package/vendor/microsoft-governance/dist/encryption/x3dh.d.ts.map +1 -0
  128. package/vendor/microsoft-governance/dist/encryption/x3dh.js +238 -0
  129. package/vendor/microsoft-governance/dist/encryption/x3dh.js.map +1 -0
  130. package/vendor/microsoft-governance/dist/framework-adapter.d.ts +63 -0
  131. package/vendor/microsoft-governance/dist/framework-adapter.d.ts.map +1 -0
  132. package/vendor/microsoft-governance/dist/framework-adapter.js +253 -0
  133. package/vendor/microsoft-governance/dist/framework-adapter.js.map +1 -0
  134. package/vendor/microsoft-governance/dist/identity.d.ts +124 -0
  135. package/vendor/microsoft-governance/dist/identity.d.ts.map +1 -0
  136. package/vendor/microsoft-governance/dist/identity.js +446 -0
  137. package/vendor/microsoft-governance/dist/identity.js.map +1 -0
  138. package/vendor/microsoft-governance/dist/index.d.ts +39 -0
  139. package/vendor/microsoft-governance/dist/index.d.ts.map +1 -0
  140. package/vendor/microsoft-governance/dist/index.js +95 -0
  141. package/vendor/microsoft-governance/dist/index.js.map +1 -0
  142. package/vendor/microsoft-governance/dist/kill-switch.d.ts +22 -0
  143. package/vendor/microsoft-governance/dist/kill-switch.d.ts.map +1 -0
  144. package/vendor/microsoft-governance/dist/kill-switch.js +60 -0
  145. package/vendor/microsoft-governance/dist/kill-switch.js.map +1 -0
  146. package/vendor/microsoft-governance/dist/lifecycle.d.ts +50 -0
  147. package/vendor/microsoft-governance/dist/lifecycle.d.ts.map +1 -0
  148. package/vendor/microsoft-governance/dist/lifecycle.js +113 -0
  149. package/vendor/microsoft-governance/dist/lifecycle.js.map +1 -0
  150. package/vendor/microsoft-governance/dist/mcp.d.ts +41 -0
  151. package/vendor/microsoft-governance/dist/mcp.d.ts.map +1 -0
  152. package/vendor/microsoft-governance/dist/mcp.js +233 -0
  153. package/vendor/microsoft-governance/dist/mcp.js.map +1 -0
  154. package/vendor/microsoft-governance/dist/metrics.d.ts +123 -0
  155. package/vendor/microsoft-governance/dist/metrics.d.ts.map +1 -0
  156. package/vendor/microsoft-governance/dist/metrics.js +289 -0
  157. package/vendor/microsoft-governance/dist/metrics.js.map +1 -0
  158. package/vendor/microsoft-governance/dist/oci-manifest.d.ts +49 -0
  159. package/vendor/microsoft-governance/dist/oci-manifest.d.ts.map +1 -0
  160. package/vendor/microsoft-governance/dist/oci-manifest.js +182 -0
  161. package/vendor/microsoft-governance/dist/oci-manifest.js.map +1 -0
  162. package/vendor/microsoft-governance/dist/policy-backends/cedar.d.ts +15 -0
  163. package/vendor/microsoft-governance/dist/policy-backends/cedar.d.ts.map +1 -0
  164. package/vendor/microsoft-governance/dist/policy-backends/cedar.js +88 -0
  165. package/vendor/microsoft-governance/dist/policy-backends/cedar.js.map +1 -0
  166. package/vendor/microsoft-governance/dist/policy-backends/opa.d.ts +17 -0
  167. package/vendor/microsoft-governance/dist/policy-backends/opa.d.ts.map +1 -0
  168. package/vendor/microsoft-governance/dist/policy-backends/opa.js +74 -0
  169. package/vendor/microsoft-governance/dist/policy-backends/opa.js.map +1 -0
  170. package/vendor/microsoft-governance/dist/policy.d.ts +77 -0
  171. package/vendor/microsoft-governance/dist/policy.d.ts.map +1 -0
  172. package/vendor/microsoft-governance/dist/policy.js +760 -0
  173. package/vendor/microsoft-governance/dist/policy.js.map +1 -0
  174. package/vendor/microsoft-governance/dist/prompt-defense.d.ts +37 -0
  175. package/vendor/microsoft-governance/dist/prompt-defense.d.ts.map +1 -0
  176. package/vendor/microsoft-governance/dist/prompt-defense.js +229 -0
  177. package/vendor/microsoft-governance/dist/prompt-defense.js.map +1 -0
  178. package/vendor/microsoft-governance/dist/protocol-facets.d.ts +87 -0
  179. package/vendor/microsoft-governance/dist/protocol-facets.d.ts.map +1 -0
  180. package/vendor/microsoft-governance/dist/protocol-facets.js +728 -0
  181. package/vendor/microsoft-governance/dist/protocol-facets.js.map +1 -0
  182. package/vendor/microsoft-governance/dist/rings.d.ts +17 -0
  183. package/vendor/microsoft-governance/dist/rings.d.ts.map +1 -0
  184. package/vendor/microsoft-governance/dist/rings.js +61 -0
  185. package/vendor/microsoft-governance/dist/rings.js.map +1 -0
  186. package/vendor/microsoft-governance/dist/sandbox.d.ts +61 -0
  187. package/vendor/microsoft-governance/dist/sandbox.d.ts.map +1 -0
  188. package/vendor/microsoft-governance/dist/sandbox.js +199 -0
  189. package/vendor/microsoft-governance/dist/sandbox.js.map +1 -0
  190. package/vendor/microsoft-governance/dist/surface-parity.d.ts +45 -0
  191. package/vendor/microsoft-governance/dist/surface-parity.d.ts.map +1 -0
  192. package/vendor/microsoft-governance/dist/surface-parity.js +216 -0
  193. package/vendor/microsoft-governance/dist/surface-parity.js.map +1 -0
  194. package/vendor/microsoft-governance/dist/trust.d.ts +28 -0
  195. package/vendor/microsoft-governance/dist/trust.d.ts.map +1 -0
  196. package/vendor/microsoft-governance/dist/trust.js +209 -0
  197. package/vendor/microsoft-governance/dist/trust.js.map +1 -0
  198. package/vendor/microsoft-governance/dist/types.d.ts +422 -0
  199. package/vendor/microsoft-governance/dist/types.d.ts.map +1 -0
  200. package/vendor/microsoft-governance/dist/types.js +29 -0
  201. package/vendor/microsoft-governance/dist/types.js.map +1 -0
  202. package/vendor/microsoft-governance/dist/verify.d.ts +135 -0
  203. package/vendor/microsoft-governance/dist/verify.d.ts.map +1 -0
  204. package/vendor/microsoft-governance/dist/verify.js +356 -0
  205. package/vendor/microsoft-governance/dist/verify.js.map +1 -0
  206. package/vendor/microsoft-governance/package.json +64 -0
  207. package/index.d.ts +0 -177
  208. package/index.js +0 -1
@@ -0,0 +1,348 @@
1
+ import { DatabaseSync } from "node:sqlite";
2
+ import type { ActionPlan, ApiKeyRecord, ByokKeyRecord, ConnectionRecord, ExecutionReceipt, ExecutionRun, GovernanceDecisionRecord, GovernancePolicy, LedgerEntry, MemoryContextSummary, ProviderLane, ProvisionedResource, RiskLevel, SupplierSettlement, SupplierSettlementSummary, TeamOnboardingKit, TemporalGraphFact, User, Workspace, WorkspaceMembership, WorkspaceMemoryRecord, WorkspaceRole, WorkspaceSummary } from "./types.js";
3
+ export declare const BYOK_PROVIDER_CATALOG: Record<string, {
4
+ category: "llm" | "supplier";
5
+ envVarName: string;
6
+ label: string;
7
+ }>;
8
+ export declare class MuxoStore {
9
+ readonly db: DatabaseSync;
10
+ private readonly vaultKey;
11
+ constructor(dbPath: string, vaultKey: Buffer);
12
+ private initSchema;
13
+ /**
14
+ * Older databases declared receipts.run_id UNIQUE, which blocks cancellation receipts from
15
+ * superseding a run's original receipt. SQLite cannot drop a constraint, so rebuild the table.
16
+ */
17
+ private migrateReceiptsAllowMultiplePerRun;
18
+ encryptSecrets(workspaceId: string, secrets: Record<string, string>): string;
19
+ decryptSecrets(workspaceId: string, payloadHex: string | null): Record<string, string>;
20
+ ensureDefaultWorkspace(): {
21
+ user: User;
22
+ workspace: Workspace;
23
+ defaultApiKey?: string;
24
+ };
25
+ private hashPassword;
26
+ private hashToken;
27
+ registerUser(params: {
28
+ email: string;
29
+ name: string;
30
+ password: string;
31
+ workspaceName?: string;
32
+ }): {
33
+ user: User;
34
+ workspace: Workspace;
35
+ sessionToken: string;
36
+ apiKey: string;
37
+ };
38
+ loginUser(email: string, password: string): {
39
+ user: User;
40
+ workspace: Workspace;
41
+ sessionToken: string;
42
+ } | null;
43
+ createSession(userId: string, workspaceId: string): string;
44
+ resolveAuthToken(token: string, workspaceOverrideId?: string | null): {
45
+ user: User;
46
+ workspace: Workspace;
47
+ authType: "session" | "api_key";
48
+ actorId: string;
49
+ } | null;
50
+ getUser(userId: string): User | null;
51
+ getWorkspace(workspaceId: string): Workspace | null;
52
+ ensureWorkspaceMembership(params: {
53
+ workspaceId: string;
54
+ userId: string;
55
+ role?: WorkspaceRole;
56
+ teamName?: string | null;
57
+ joinedViaKeyId?: string | null;
58
+ }): WorkspaceMembership;
59
+ userCanAccessWorkspace(userId: string, workspaceId: string): boolean;
60
+ listUserWorkspaces(userId: string, activeWorkspaceId?: string): WorkspaceSummary[];
61
+ switchUserWorkspace(userId: string, workspaceId: string): {
62
+ user: User;
63
+ workspace: Workspace;
64
+ } | null;
65
+ createWorkspaceForUser(params: {
66
+ userId: string;
67
+ name: string;
68
+ teamName?: string | null;
69
+ role?: WorkspaceRole;
70
+ switchActive?: boolean;
71
+ }): {
72
+ workspace: Workspace;
73
+ apiKey: string;
74
+ keyRecord: ApiKeyRecord;
75
+ membership: WorkspaceMembership;
76
+ };
77
+ joinWorkspaceWithApiKey(params: {
78
+ apiKey: string;
79
+ userId?: string | null;
80
+ switchActive?: boolean;
81
+ }): {
82
+ workspace: Workspace;
83
+ keyRecord: ApiKeyRecord;
84
+ user: User | null;
85
+ membership: WorkspaceMembership | null;
86
+ } | null;
87
+ onboardTeam(params: {
88
+ currentWorkspaceId: string;
89
+ userId: string;
90
+ userEmail?: string | null;
91
+ teamName: string;
92
+ role?: WorkspaceRole;
93
+ mode?: "shared_workspace" | "dedicated_workspace";
94
+ environment?: "live" | "test";
95
+ scopes?: string[];
96
+ inviteEmail?: string | null;
97
+ baseUrl: string;
98
+ }): TeamOnboardingKit;
99
+ updateWorkspacePolicy(workspaceId: string, policy: Partial<GovernancePolicy>): Workspace;
100
+ createApiKey(params: {
101
+ workspaceId: string;
102
+ name: string;
103
+ environment?: "live" | "test";
104
+ scopes?: string[];
105
+ teamName?: string | null;
106
+ role?: WorkspaceRole;
107
+ createdByEmail?: string | null;
108
+ }): {
109
+ record: ApiKeyRecord;
110
+ secretKey: string;
111
+ };
112
+ listApiKeys(workspaceId: string): ApiKeyRecord[];
113
+ revokeApiKey(workspaceId: string, keyId: string): boolean;
114
+ /** Looks up an active workspace API key by its raw secret. */
115
+ findActiveApiKey(secret: string): {
116
+ id: string;
117
+ workspaceId: string;
118
+ } | null;
119
+ saveOAuthRefreshToken(params: {
120
+ refreshToken: string;
121
+ accessToken: string;
122
+ keyId: string;
123
+ workspaceId: string;
124
+ clientId: string;
125
+ scope: string;
126
+ }): void;
127
+ getOAuthRefreshToken(refreshToken: string): {
128
+ keyId: string;
129
+ workspaceId: string;
130
+ clientId: string;
131
+ scope: string;
132
+ accessToken: string;
133
+ } | null;
134
+ deleteOAuthRefreshToken(refreshToken: string): void;
135
+ /**
136
+ * Maps a verified Clerk session to a local user. Only a verified email can link to an
137
+ * existing account; otherwise a fresh user and workspace are created so an unverified
138
+ * address can never take over someone else's account.
139
+ */
140
+ provisionClerkUser(clerkUserId: string, identity: {
141
+ email: string | null;
142
+ emailVerified: boolean;
143
+ name: string | null;
144
+ }, ownerWorkspaceId: string | null): User;
145
+ getClerkLinkedUser(clerkUserId: string): User | null;
146
+ getUserByEmail(email: string): User | null;
147
+ upsertConnection(params: {
148
+ workspaceId: string;
149
+ lane: ProviderLane;
150
+ providerSlug: string;
151
+ providerName: string;
152
+ status: ConnectionRecord["status"];
153
+ externalAccountId?: string | null;
154
+ redirectUrl?: string | null;
155
+ metadata?: Record<string, unknown>;
156
+ }): ConnectionRecord;
157
+ getConnection(id: string): ConnectionRecord | null;
158
+ listConnections(workspaceId: string): ConnectionRecord[];
159
+ upsertResource(params: {
160
+ workspaceId: string;
161
+ resourceName: string;
162
+ providerSlug: string;
163
+ providerName: string;
164
+ serviceSlug: string;
165
+ planSlug?: string | null;
166
+ status: ProvisionedResource["status"];
167
+ secrets?: Record<string, string>;
168
+ externalResourceId?: string | null;
169
+ metadata?: Record<string, unknown>;
170
+ }): ProvisionedResource;
171
+ getResource(workspaceId: string, resourceNameOrId: string): ProvisionedResource | null;
172
+ findResourceAnyWorkspace(resourceNameOrId: string): ProvisionedResource | null;
173
+ getDecryptedResourceSecrets(workspaceId: string, resourceNameOrId: string): Record<string, string>;
174
+ listResources(workspaceId: string): ProvisionedResource[];
175
+ getDecryptedWorkspaceEnv(workspaceId: string): Record<string, string>;
176
+ normalizeByokProvider(providerInput: string): {
177
+ provider: string;
178
+ category: "llm" | "supplier";
179
+ envVarName: string;
180
+ };
181
+ setByokKey(workspaceId: string, providerInput: string, secretKey: string): ByokKeyRecord;
182
+ getByokKey(workspaceId: string, providerInput: string): string | null;
183
+ deleteByokKey(workspaceId: string, providerInput: string): boolean;
184
+ listByokKeys(workspaceId: string): ByokKeyRecord[];
185
+ hasByokForLane(workspaceId: string, lane: ProviderLane, toolSlug?: string): boolean;
186
+ createPlan(params: {
187
+ workspaceId: string;
188
+ actorId: string;
189
+ toolSlug: string;
190
+ upstreamSlug: string;
191
+ lane: ProviderLane;
192
+ riskLevel: RiskLevel;
193
+ input: Record<string, unknown>;
194
+ reason: string;
195
+ creditCost: number;
196
+ approvalStatus: ActionPlan["approvalStatus"];
197
+ decisionRecord?: GovernanceDecisionRecord | null;
198
+ memoryContext?: MemoryContextSummary | null;
199
+ }): ActionPlan;
200
+ getPlan(workspaceId: string, planId: string): ActionPlan | null;
201
+ getPlanById(planId: string): ActionPlan | null;
202
+ listPlans(workspaceId: string, limit?: number): ActionPlan[];
203
+ updatePlanApproval(params: {
204
+ workspaceId: string;
205
+ planId: string;
206
+ approvalStatus: "approved" | "rejected";
207
+ approvedBy: string;
208
+ }): ActionPlan;
209
+ createRun(plan: ActionPlan, actorId: string): ExecutionRun;
210
+ finalizeRun(params: {
211
+ workspaceId: string;
212
+ runId: string;
213
+ status: "succeeded" | "failed" | "cancelled";
214
+ output?: Record<string, unknown> | null;
215
+ error?: string | null;
216
+ actionsMetered: number;
217
+ creditsMetered: number;
218
+ durationMs: number;
219
+ decisionRecord?: GovernanceDecisionRecord | null;
220
+ }): {
221
+ run: ExecutionRun;
222
+ receipt: ExecutionReceipt;
223
+ };
224
+ cancelRun(params: {
225
+ workspaceId: string;
226
+ runId: string;
227
+ cancelledBy: string;
228
+ reason?: string;
229
+ }): {
230
+ run: ExecutionRun;
231
+ receipt: ExecutionReceipt;
232
+ };
233
+ private issueReceipt;
234
+ verifyReceipt(receipt: ExecutionReceipt): boolean;
235
+ getRun(workspaceId: string, runId: string): ExecutionRun | null;
236
+ listRuns(workspaceId: string, limit?: number): ExecutionRun[];
237
+ getReceipt(workspaceId: string, receiptIdOrRunId: string): ExecutionReceipt | null;
238
+ listReceipts(workspaceId: string, limit?: number): ExecutionReceipt[];
239
+ markStripeEventProcessed(eventId: string): boolean;
240
+ upgradeWorkspaceToStarter(params: {
241
+ workspaceId: string;
242
+ stripeCustomerId?: string | null;
243
+ stripeSubscriptionId?: string | null;
244
+ referenceId: string;
245
+ bonusCredits?: number;
246
+ }): Workspace;
247
+ addWorkspaceCredits(params: {
248
+ workspaceId: string;
249
+ credits: number;
250
+ referenceId: string;
251
+ description: string;
252
+ }): Workspace;
253
+ addLedgerEntry(params: {
254
+ workspaceId: string;
255
+ kind: LedgerEntry["kind"];
256
+ actionsDelta: number;
257
+ creditsDelta: number;
258
+ balanceAfter: number;
259
+ referenceId: string | null;
260
+ description: string;
261
+ }): LedgerEntry;
262
+ computeSupplierSettlement(lane: ProviderLane, toolSlug: string, creditCost: number, settlementStatus?: "settled_by_muxo_master_wallet" | "planned_muxo_master_wallet" | "settled_by_customer_byok" | "planned_customer_byok", workspaceId?: string): SupplierSettlement;
263
+ getSupplierSettlementSummary(workspaceId: string): SupplierSettlementSummary;
264
+ listLedgerEntries(workspaceId: string, limit?: number): LedgerEntry[];
265
+ saveMemoryRecord(params: {
266
+ workspaceId: string;
267
+ namespace: string;
268
+ documentId: string;
269
+ title: string;
270
+ content: string;
271
+ kind: WorkspaceMemoryRecord["kind"];
272
+ metadata?: Record<string, unknown>;
273
+ }): WorkspaceMemoryRecord;
274
+ listMemoryRecords(workspaceId: string, limit?: number): WorkspaceMemoryRecord[];
275
+ deleteMemoryRecord(workspaceId: string, idOrDocId: string): WorkspaceMemoryRecord | null;
276
+ upsertTemporalFact(params: {
277
+ workspaceId: string;
278
+ subject: string;
279
+ predicate: string;
280
+ object: string;
281
+ summary: string;
282
+ confidence?: number;
283
+ sourceKind?: TemporalGraphFact["sourceKind"];
284
+ sourceReferenceId?: string | null;
285
+ metadata?: Record<string, unknown>;
286
+ supersedeExisting?: boolean;
287
+ }): TemporalGraphFact;
288
+ listTemporalFacts(workspaceId: string, opts?: {
289
+ includeHistorical?: boolean;
290
+ subject?: string;
291
+ predicate?: string;
292
+ query?: string;
293
+ limit?: number;
294
+ }): TemporalGraphFact[];
295
+ forgetMatchingMemoryRecords(workspaceId: string, query: string): {
296
+ deletedMemories: WorkspaceMemoryRecord[];
297
+ invalidatedFacts: TemporalGraphFact[];
298
+ };
299
+ private mapTemporalFact;
300
+ createAutonomousAgentSignup(params?: {
301
+ agentName?: string;
302
+ harness?: string;
303
+ }): {
304
+ user: User;
305
+ workspace: Workspace;
306
+ apiKey: string;
307
+ apiKeyRecord: ApiKeyRecord;
308
+ };
309
+ getLatestClaimForWorkspace(workspaceId: string): {
310
+ claimSlug: string;
311
+ targetEmail: string;
312
+ status: "invited" | "claimed";
313
+ claimedAt: string | null;
314
+ expiresAt: string;
315
+ } | null;
316
+ /**
317
+ * Creates a claim link for a workspace. A claim minted without an email (at agent signup)
318
+ * stays unusable until the agent names the owner; naming one reuses that same link.
319
+ */
320
+ createAgentClaim(params: {
321
+ workspaceId: string;
322
+ email: string | null;
323
+ baseUrl: string;
324
+ }): {
325
+ claimSlug: string;
326
+ claimUrl: string;
327
+ targetEmail: string;
328
+ status: "invited" | "claimed";
329
+ expiresAt: string;
330
+ };
331
+ /** Returns a claim only while it can still be accepted (invited and not expired). */
332
+ getOpenAgentClaim(claimSlug: string): {
333
+ claimSlug: string;
334
+ workspace: Workspace;
335
+ targetEmail: string;
336
+ status: "invited";
337
+ expiresAt: string;
338
+ } | null;
339
+ /** Transfers workspace ownership to the verified claimer and closes the claim. */
340
+ acceptAgentClaim(claimSlug: string, userId: string): Workspace | null;
341
+ private mapUser;
342
+ private mapWorkspace;
343
+ private mapConnection;
344
+ private mapResource;
345
+ private mapPlan;
346
+ private mapRun;
347
+ private mapReceipt;
348
+ }