@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,593 @@
1
+ export type RiskLevel = "read" | "write" | "admin" | "financial" | "provisioning" | "destructive";
2
+ export type ProviderLane = "composio_sdk" | "composio_instant" | "stripe_projects";
3
+ export type SubscriptionTier = "free" | "starter" | "pro";
4
+ export type SubscriptionStatus = "none" | "active" | "trialing" | "past_due" | "unpaid" | "canceled" | "incomplete" | "comped";
5
+ export interface WorkspaceBilling {
6
+ interval: "month" | "year" | null;
7
+ status: SubscriptionStatus;
8
+ cancelAtPeriodEnd: boolean;
9
+ /** When Stripe next renews or ends the subscription. */
10
+ currentPeriodEnd: string | null;
11
+ /** Monthly usage periods are counted from this moment. */
12
+ usagePeriodAnchor: string;
13
+ usagePeriodStart: string;
14
+ usagePeriodEnd: string;
15
+ /** usagePeriodStart of the last period whose plan credits were granted. */
16
+ creditsGrantedFor: string | null;
17
+ paymentFailedAt?: string | null;
18
+ /** Subscription whose start (fresh usage period and first credits) was already applied. */
19
+ startedSubscriptionId?: string | null;
20
+ }
21
+ export type LanguageMode = "non_technical" | "technical" | "hybrid";
22
+ export interface HumanFriendlyExplanation {
23
+ headline: string;
24
+ preferred: string;
25
+ nonTechnical: string;
26
+ technical: string;
27
+ languageMode: LanguageMode;
28
+ customInstructions?: string[];
29
+ }
30
+ /**
31
+ * A structured handoff telling the caller (LLM or human) that a person must
32
+ * complete a step in the browser before the plan can proceed.
33
+ */
34
+ export interface HumanHandoff {
35
+ kind: "approval" | "oauth" | "byok";
36
+ brand?: string;
37
+ url: string | null;
38
+ ctaLabel: string;
39
+ headline: string;
40
+ instructions: string;
41
+ markdownForUser?: string;
42
+ planId?: string;
43
+ provider?: string;
44
+ }
45
+ /**
46
+ * Machine-readable guidance for LLM harnesses on exactly which Muxo tool to
47
+ * call next once a handoff or gate clears.
48
+ */
49
+ export interface LlmGuidance {
50
+ summary: string;
51
+ nextToolCalls: Array<{
52
+ tool: string;
53
+ input: Record<string, unknown>;
54
+ when: string;
55
+ }>;
56
+ }
57
+ export type WorkspaceRole = "owner" | "admin" | "operator" | "member";
58
+ export type ParameterRuleOperator = "equals" | "must_equal" | "not_equals" | "contains" | "not_contains" | "starts_with" | "must_start_with" | "ends_with" | "must_end_with" | "domain_in" | "domain_not_in" | "max_number" | "min_number" | "gt" | "gte" | "lt" | "lte" | "in" | "not_in" | "regex";
59
+ export type ParameterRuleAction = "block" | "require_approval" | "allow" | "auto_approve";
60
+ export interface ParameterPolicyRule {
61
+ id: string;
62
+ toolPattern?: string;
63
+ parameter: string;
64
+ operator: ParameterRuleOperator;
65
+ value: string | number | string[];
66
+ unit?: "usd" | "cents" | "credits" | "raw";
67
+ action: ParameterRuleAction;
68
+ elseAction?: ParameterRuleAction;
69
+ description: string;
70
+ source?: "deterministic" | "llm" | "mcp_harness" | "user";
71
+ }
72
+ export interface GovernancePolicy {
73
+ mode: "monitor" | "enforce";
74
+ requireApprovalFor: RiskLevel[];
75
+ allowInstantWallet: boolean;
76
+ allowProvisioning: boolean;
77
+ maxCreditsPerRun: number;
78
+ blockedToolSlugs?: string[];
79
+ parameterRules?: ParameterPolicyRule[];
80
+ executionRing?: 0 | 1 | 2 | 3;
81
+ killSwitchActive?: boolean;
82
+ killSwitchReason?: string | null;
83
+ blockDestructiveSql?: boolean;
84
+ naturalLanguageRules?: string[];
85
+ languageMode?: LanguageMode;
86
+ customInstructions?: string[];
87
+ }
88
+ export interface User {
89
+ id: string;
90
+ email: string;
91
+ name: string;
92
+ workspaceId: string;
93
+ role: WorkspaceRole;
94
+ createdAt: string;
95
+ }
96
+ export interface WorkspaceMembership {
97
+ id: string;
98
+ workspaceId: string;
99
+ userId: string;
100
+ role: WorkspaceRole;
101
+ teamName: string | null;
102
+ joinedViaKeyId?: string | null;
103
+ joinedVia?: "owner" | "created" | "api_key" | "team_key" | "invite" | "claim" | string;
104
+ apiKeyId?: string | null;
105
+ createdAt: string;
106
+ }
107
+ export interface WorkspaceSummary {
108
+ id: string;
109
+ name: string;
110
+ slug: string;
111
+ tier: SubscriptionTier;
112
+ creditsBalance: number;
113
+ monthlyActionsUsed: number;
114
+ monthlyActionsLimit: number;
115
+ role: WorkspaceRole;
116
+ teamName: string | null;
117
+ joinedVia?: "owner" | "created" | "api_key" | "team_key" | "invite" | "claim" | string;
118
+ isCurrent: boolean;
119
+ createdAt: string;
120
+ }
121
+ export interface TeamOnboardingKit {
122
+ ok?: boolean;
123
+ mode: "shared_workspace" | "dedicated_workspace";
124
+ workspace: Workspace | Pick<Workspace, "id" | "name" | "slug" | "tier" | "creditsBalance">;
125
+ teamName: string;
126
+ role: WorkspaceRole;
127
+ apiKey: string;
128
+ keyRecord: ApiKeyRecord;
129
+ claimUrl?: string | null;
130
+ consoleUrl?: string;
131
+ consoleJoinUrl?: string;
132
+ mcpEndpoint?: string;
133
+ cliSetupCommand: string;
134
+ mcpConfig?: Record<string, unknown>;
135
+ mcpConfigSnippet?: string;
136
+ instructions: string[];
137
+ }
138
+ export interface Workspace {
139
+ id: string;
140
+ name: string;
141
+ slug: string;
142
+ ownerUserId: string;
143
+ tier: SubscriptionTier;
144
+ monthlyActionsLimit: number;
145
+ monthlyActionsUsed: number;
146
+ creditsBalance: number;
147
+ stripeCustomerId: string | null;
148
+ stripeSubscriptionId: string | null;
149
+ stripeConnectedAccountId?: string | null;
150
+ billing?: WorkspaceBilling;
151
+ projectsEnvName: string;
152
+ policy: GovernancePolicy;
153
+ createdAt: string;
154
+ updatedAt: string;
155
+ }
156
+ export interface ApiKeyRecord {
157
+ id: string;
158
+ workspaceId: string;
159
+ name: string;
160
+ keyPrefix: string;
161
+ environment: "live" | "test";
162
+ scopes: string[];
163
+ teamName?: string | null;
164
+ role?: WorkspaceRole;
165
+ createdByEmail?: string | null;
166
+ lastUsedAt: string | null;
167
+ revokedAt: string | null;
168
+ createdAt: string;
169
+ }
170
+ export interface MuxoTool {
171
+ slug: string;
172
+ upstreamSlug: string;
173
+ name: string;
174
+ description: string;
175
+ lane: ProviderLane;
176
+ providerSlug: string;
177
+ providerName: string;
178
+ categories: string[];
179
+ riskLevel: RiskLevel;
180
+ requiresAuth: boolean;
181
+ creditCost: number;
182
+ billingMode: "customer_oauth" | "customer_byok" | "provider_wallet" | "resource_provisioning";
183
+ inputSchema: Record<string, unknown>;
184
+ llmContextUrl?: string;
185
+ providerUrl?: string;
186
+ metadata?: Record<string, unknown>;
187
+ }
188
+ export type ToolDescriptor = MuxoTool;
189
+ export interface ConnectionRecord {
190
+ id: string;
191
+ workspaceId: string;
192
+ lane: ProviderLane;
193
+ providerSlug: string;
194
+ providerName: string;
195
+ status: "active" | "pending" | "expired" | "disconnected";
196
+ externalAccountId: string | null;
197
+ redirectUrl: string | null;
198
+ metadata: Record<string, unknown>;
199
+ updatedAt: string;
200
+ createdAt: string;
201
+ }
202
+ export interface ProvisionedResource {
203
+ id: string;
204
+ workspaceId: string;
205
+ resourceName: string;
206
+ providerSlug: string;
207
+ providerName: string;
208
+ serviceSlug: string;
209
+ planSlug: string | null;
210
+ status: "active" | "provisioning" | "failed" | "removed";
211
+ envVarKeys: string[];
212
+ externalResourceId: string | null;
213
+ metadata: Record<string, unknown>;
214
+ createdAt: string;
215
+ updatedAt: string;
216
+ }
217
+ export interface GovernanceDecisionRecord {
218
+ id: string;
219
+ sdk: "@microsoft/agent-governance-sdk";
220
+ sdkVersion: string;
221
+ policyId: string;
222
+ mode: "monitor" | "enforce";
223
+ agentDid: string;
224
+ agentPublicKey: string;
225
+ actorId: string;
226
+ workspaceId: string;
227
+ action: string;
228
+ riskLevel: RiskLevel;
229
+ decision: "allow" | "deny" | "require_approval";
230
+ verdict: "allow" | "deny" | "escalate";
231
+ reason: string;
232
+ matchedRule: string | null;
233
+ securityScan: {
234
+ safe: boolean;
235
+ riskLevel: string;
236
+ findingsCount: number;
237
+ findings: Array<{
238
+ category: string;
239
+ severity: string;
240
+ description: string;
241
+ }>;
242
+ };
243
+ auditEntry: {
244
+ timestamp: string;
245
+ agentId: string;
246
+ action: string;
247
+ decision: "allow" | "deny";
248
+ hash: string;
249
+ previousHash: string;
250
+ chainVerified: boolean;
251
+ };
252
+ protocolFacets?: {
253
+ sql?: {
254
+ verb: string;
255
+ target: string;
256
+ tables: string;
257
+ functions: string;
258
+ destructive?: boolean;
259
+ };
260
+ k8s?: {
261
+ verb: string;
262
+ resource: string;
263
+ namespace: string;
264
+ name: string;
265
+ subresource: string;
266
+ };
267
+ infra?: {
268
+ provider: string;
269
+ service: string;
270
+ action: string;
271
+ destructive: boolean;
272
+ };
273
+ };
274
+ ringEnforcement?: {
275
+ agentRing: number;
276
+ requiredRing: number;
277
+ allowed: boolean;
278
+ ringLabel: string;
279
+ };
280
+ trustScore?: {
281
+ overall: number;
282
+ tier: "Untrusted" | "Provisional" | "Trusted" | "Verified";
283
+ reliability: number;
284
+ consistency: number;
285
+ };
286
+ contextPoisoning?: {
287
+ safe: boolean;
288
+ riskLevel: "none" | "low" | "medium" | "high" | "critical";
289
+ findingsCount: number;
290
+ findings: Array<{
291
+ patternId: string;
292
+ patternName: string;
293
+ severity: string;
294
+ description: string;
295
+ }>;
296
+ };
297
+ killSwitch?: {
298
+ active: boolean;
299
+ killedAt?: string | null;
300
+ reason?: string | null;
301
+ };
302
+ ed25519Signature: string;
303
+ signature: string;
304
+ bindingHash: string;
305
+ decidedAt: string;
306
+ explanation?: HumanFriendlyExplanation;
307
+ }
308
+ export type MemoryRecordKind = "fact" | "preference" | "resource_note" | "operator_note" | "execution_outcome" | "resource_topology" | "policy_decision";
309
+ export interface TemporalGraphFact {
310
+ id: string;
311
+ workspaceId: string;
312
+ subject: string;
313
+ predicate: string;
314
+ object: string;
315
+ summary: string;
316
+ confidence: number;
317
+ validFrom: string;
318
+ validTo: string | null;
319
+ supersededById?: string | null;
320
+ sourceKind: MemoryRecordKind | "system" | "manual";
321
+ sourceReferenceId?: string | null;
322
+ metadata: Record<string, unknown>;
323
+ createdAt: string;
324
+ }
325
+ export interface MemoryGraphNode {
326
+ id: string;
327
+ kind: "workspace" | "entity" | "preference" | "guardrail" | "connection" | "resource" | "tool" | "memory";
328
+ label: string;
329
+ summary: string;
330
+ status: "active" | "historical";
331
+ metadata?: Record<string, unknown>;
332
+ }
333
+ export interface MemoryGraphEdge {
334
+ id: string;
335
+ source: string;
336
+ target: string;
337
+ subject?: string;
338
+ object?: string;
339
+ predicate: string;
340
+ summary: string;
341
+ confidence: number;
342
+ status: "active" | "historical";
343
+ validFrom: string;
344
+ validTo: string | null;
345
+ supersededById: string | null;
346
+ sourceKind: TemporalGraphFact["sourceKind"];
347
+ sourceReferenceId: string | null;
348
+ }
349
+ export interface MemoryKnowledgeGraph {
350
+ workspaceId: string;
351
+ workspaceSlug: string;
352
+ namespace: string;
353
+ generatedAt: string;
354
+ query: string | null;
355
+ nodes: MemoryGraphNode[];
356
+ edges: MemoryGraphEdge[];
357
+ activeEdges: MemoryGraphEdge[];
358
+ historicalEdges: MemoryGraphEdge[];
359
+ stats: {
360
+ nodesCount: number;
361
+ activeEdgesCount: number;
362
+ historicalEdgesCount: number;
363
+ memoriesCount: number;
364
+ resourcesCount: number;
365
+ connectionsCount: number;
366
+ };
367
+ mermaid: string;
368
+ explanation: HumanFriendlyExplanation;
369
+ }
370
+ export interface MemoryContextSummary {
371
+ enabled: boolean;
372
+ namespace: string;
373
+ fundingSource?: "muxo_funded" | "customer_byok_supermemory" | "local_fallback";
374
+ staticFacts: string[];
375
+ dynamicContext: string[];
376
+ recalledMemories: Array<{
377
+ documentId: string;
378
+ title: string;
379
+ snippet: string;
380
+ similarity: number;
381
+ createdAt?: string;
382
+ }>;
383
+ formattedPromptContext: string;
384
+ profileMarkdown?: string;
385
+ profile: {
386
+ static: string[];
387
+ dynamic: string[];
388
+ preferences: string[];
389
+ };
390
+ relevantMemories: Array<{
391
+ documentId: string;
392
+ title: string;
393
+ snippet: string;
394
+ similarity: number;
395
+ createdAt?: string;
396
+ }>;
397
+ temporalFacts?: TemporalGraphFact[];
398
+ activeDefaults?: Record<string, unknown>;
399
+ autoFilledInput?: Record<string, unknown>;
400
+ activeGuardrails?: string[];
401
+ contextPoisoningScan?: {
402
+ safe: boolean;
403
+ riskLevel: "none" | "low" | "medium" | "high" | "critical";
404
+ findingsCount: number;
405
+ };
406
+ explanation?: HumanFriendlyExplanation;
407
+ }
408
+ export interface WorkspaceMemoryRecord {
409
+ id: string;
410
+ workspaceId: string;
411
+ namespace: string;
412
+ documentId: string;
413
+ title: string;
414
+ content: string;
415
+ kind: MemoryRecordKind;
416
+ metadata: Record<string, unknown>;
417
+ fundingSource?: string;
418
+ createdAt: string;
419
+ }
420
+ export interface ByokKeyRecord {
421
+ provider: string;
422
+ providerSlug?: string;
423
+ category: "llm" | "supplier";
424
+ envVarName: string;
425
+ keyPreview: string;
426
+ configured: boolean;
427
+ updatedAt: string;
428
+ }
429
+ export interface SupplierSettlement {
430
+ fundingMode: "muxo_funded" | "byok";
431
+ supplier: ProviderLane;
432
+ supplierName: string;
433
+ upstreamProvider: string;
434
+ userChargeCredits: number;
435
+ userRetailChargeCents: number;
436
+ supplierWholesalePayableCents: number;
437
+ muxoNetMarginCents: number;
438
+ settlementStatus: "settled_by_muxo_master_wallet" | "planned_muxo_master_wallet" | "settled_by_customer_byok" | "planned_customer_byok";
439
+ masterAccountRef: string;
440
+ }
441
+ export interface SupplierSettlementSummary {
442
+ workspaceId: string;
443
+ fundingModel: "user_pays_muxo_muxo_pays_suppliers";
444
+ activeFundingMode?: "muxo_funded" | "byok_hybrid";
445
+ byokProviders?: string[];
446
+ creditPriceCents: number;
447
+ totalCreditsPurchasedOrGranted: number;
448
+ totalCreditsConsumed: number;
449
+ currentCreditsBalance: number;
450
+ totalUserRetailSpendCents: number;
451
+ totalSupplierWholesalePaidCents: number;
452
+ totalMuxoNetMarginCents: number;
453
+ bySupplier: Record<ProviderLane, {
454
+ runsCount: number;
455
+ creditsConsumed: number;
456
+ userRetailSpendCents: number;
457
+ supplierWholesalePaidCents: number;
458
+ muxoNetMarginCents: number;
459
+ }>;
460
+ masterWalletProtection?: {
461
+ status: "healthy" | "failover_active";
462
+ zeroChargeOnFailure: boolean;
463
+ instantFailoverMode: "zero_cost_native_edge";
464
+ paidProvisioningPolicy: "muxo_master_wallet_or_customer_stripe_byok";
465
+ retailToWholesaleCoverageRatio: number;
466
+ };
467
+ }
468
+ export interface HumanHandoffDescriptor {
469
+ required: boolean;
470
+ kind: "none" | "oauth_connection" | "human_approval" | "oauth_and_approval";
471
+ status: "ready" | "awaiting_oauth" | "awaiting_approval" | "awaiting_oauth_and_approval" | "connected" | "approved" | "rejected";
472
+ headline: string;
473
+ markdownForUser: string;
474
+ agentNextToolCall: {
475
+ tool: string;
476
+ arguments: Record<string, unknown>;
477
+ description: string;
478
+ };
479
+ actionUrl: string | null;
480
+ approvalUrl: string | null;
481
+ oauthRedirectUrl: string | null;
482
+ consoleUrl: string;
483
+ }
484
+ export interface ActionPlan {
485
+ id: string;
486
+ workspaceId: string;
487
+ actorId: string;
488
+ toolSlug: string;
489
+ upstreamSlug: string;
490
+ lane: ProviderLane;
491
+ riskLevel: RiskLevel;
492
+ input: Record<string, unknown>;
493
+ reason: string;
494
+ creditCost: number;
495
+ approvalStatus: "auto_approved" | "pending_approval" | "approved" | "rejected" | "executed";
496
+ approvedBy: string | null;
497
+ approvedAt: string | null;
498
+ runId: string | null;
499
+ decisionRecord?: GovernanceDecisionRecord | null;
500
+ memoryContext?: MemoryContextSummary | null;
501
+ supplierSettlement?: SupplierSettlement | null;
502
+ surfaceVersion?: string;
503
+ surfaceAudience?: string;
504
+ surfaceConnectionId?: string | null;
505
+ surfaceContext?: Array<{
506
+ recordId: string;
507
+ revision: number;
508
+ contentHash: string;
509
+ }>;
510
+ surfaceFunding?: {
511
+ resource_id: string;
512
+ mode: "customer_funded" | "muxo_funded";
513
+ } | null;
514
+ surfaceOperationId?: string;
515
+ createdAt: string;
516
+ expiresAt: string;
517
+ }
518
+ export interface ExecutionRun {
519
+ id: string;
520
+ planId: string;
521
+ workspaceId: string;
522
+ actorId: string;
523
+ toolSlug: string;
524
+ lane: ProviderLane;
525
+ riskLevel: RiskLevel;
526
+ status: "queued" | "running" | "succeeded" | "failed" | "cancelled";
527
+ input: Record<string, unknown>;
528
+ output: Record<string, unknown> | null;
529
+ error: string | null;
530
+ errorMessage?: string | null;
531
+ actionsMetered: number;
532
+ creditsMetered: number;
533
+ durationMs: number | null;
534
+ receiptId: string | null;
535
+ startedAt: string;
536
+ completedAt: string | null;
537
+ }
538
+ export type AgenticReceiptActionType = "ToolCall" | "ModelInference" | "GpuWorkload" | "RagRetrieval" | "ApiCall" | "DistributedJob";
539
+ export interface PortableAgenticReceipt {
540
+ version: string;
541
+ receipt_id: string;
542
+ agent_id: string;
543
+ task_id: string;
544
+ action_type: AgenticReceiptActionType;
545
+ tool_name: string | null;
546
+ model_id: string | null;
547
+ input_hash: string;
548
+ output_hash: string;
549
+ started_at: string;
550
+ completed_at: string;
551
+ latency_ms: number;
552
+ nonce: string;
553
+ previous_receipt_hash: string | null;
554
+ receipt_hash: string;
555
+ signature_algorithm: "Ed25519";
556
+ public_key_hex: string;
557
+ signature_hex: string;
558
+ }
559
+ export interface ExecutionReceipt {
560
+ id: string;
561
+ runId: string;
562
+ planId: string;
563
+ workspaceId: string;
564
+ actorId: string;
565
+ toolSlug: string;
566
+ lane: ProviderLane;
567
+ riskLevel: RiskLevel;
568
+ status: "succeeded" | "failed" | "cancelled";
569
+ actionsMetered: number;
570
+ creditsMetered: number;
571
+ inputHash: string;
572
+ outputHash: string;
573
+ prevReceiptHash: string;
574
+ receiptHash: string;
575
+ signature: string;
576
+ decisionRecord?: GovernanceDecisionRecord | null;
577
+ agenticReceipt?: PortableAgenticReceipt | null;
578
+ supplierSettlement?: SupplierSettlement | null;
579
+ issuedAt: string;
580
+ explanation?: HumanFriendlyExplanation;
581
+ }
582
+ export interface LedgerEntry {
583
+ id: string;
584
+ workspaceId: string;
585
+ kind: "plan_grant" | "credit_topup" | "run_deduction" | "subscription_upgrade" | "plan_change" | "refund" | "manual_adjustment";
586
+ actionsDelta: number;
587
+ creditsDelta: number;
588
+ balanceAfter: number;
589
+ referenceId: string | null;
590
+ description: string;
591
+ supplierSettlement?: SupplierSettlement | null;
592
+ createdAt: string;
593
+ }
package/dist/types.js ADDED
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,64 @@
1
+ export type ConsoleView = "overview" | "catalog" | "setup" | "workspaces" | "activity" | "billing" | "login" | "signup";
2
+ /** Every path that serves the console shell, mapped to the view it opens. */
3
+ export declare const CONSOLE_ROUTES: Readonly<Record<string, ConsoleView>>;
4
+ export declare function isConsolePath(pathname: string): boolean;
5
+ export declare function renderConsoleHtml(): string;
6
+ export declare function renderLandingHtml(): string;
7
+ export interface OAuthConsentOptions {
8
+ error?: string;
9
+ clientName?: string;
10
+ redirectOrigin?: string;
11
+ clerk?: {
12
+ publishableKey: string;
13
+ frontendApi: string;
14
+ } | null;
15
+ request?: Record<string, string>;
16
+ /** Renders the workspace-claim variant, which posts to `action` instead of /oauth/authorize. */
17
+ claim?: {
18
+ workspaceName: string;
19
+ targetEmail: string;
20
+ action: string;
21
+ cancelUrl: string;
22
+ };
23
+ }
24
+ /** Consent screen for MCP clients (ChatGPT, Claude, CLIs) asking to use a Muxo workspace. */
25
+ export declare function renderOAuthConsentHtml(opts: OAuthConsentOptions): string;
26
+ export interface ApprovalPageOptions {
27
+ planId: string;
28
+ clerk?: {
29
+ publishableKey: string;
30
+ frontendApi: string;
31
+ } | null;
32
+ }
33
+ /** One-click approval screen for plans held by workspace guardrails (`/approve/:planId`). */
34
+ export declare function renderApprovalPageHtml(opts: ApprovalPageOptions): string;
35
+ export interface OAuthConnectPageField {
36
+ name: string;
37
+ type?: string;
38
+ label?: string;
39
+ description?: string;
40
+ required?: boolean;
41
+ default?: string | null;
42
+ }
43
+ export interface OAuthConnectPageOptions {
44
+ token: string;
45
+ toolkitSlug: string;
46
+ toolkitName: string;
47
+ workspaceId?: string;
48
+ authMode?: string;
49
+ status?: string;
50
+ callbackUrl?: string | null;
51
+ expectedInputFields?: OAuthConnectPageField[];
52
+ error?: string | null;
53
+ }
54
+ /** Muxo-branded OAuth connection handoff screen (`/oauth/connect/:token`). */
55
+ export declare function renderOAuthConnectPageHtml(opts: OAuthConnectPageOptions): string;
56
+ export interface OAuthCallbackPageOptions {
57
+ providerSlug: string;
58
+ providerName: string;
59
+ status: string;
60
+ workspaceId: string;
61
+ externalAccountId?: string | null;
62
+ }
63
+ /** Muxo-branded OAuth callback completion screen (`/oauth/callback`). */
64
+ export declare function renderOAuthCallbackPageHtml(opts: OAuthCallbackPageOptions): string;