@muxoai/platform 1.4.0 → 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.
- package/.agents/plugins/marketplace.json +2 -2
- package/.claude-plugin/marketplace.json +2 -2
- package/ARCHITECTURE.md +16 -6
- package/README.md +2 -2
- package/dist/cli.js +323 -13
- package/dist/composio-catalog.d.ts +234 -0
- package/dist/composio-catalog.js +1894 -0
- package/dist/config.d.ts +16 -0
- package/dist/config.js +27 -1
- package/dist/durable-workflow.d.ts +45 -0
- package/dist/durable-workflow.js +90 -0
- package/dist/engine.d.ts +293 -5
- package/dist/engine.js +1502 -88
- package/dist/mcp-schema.d.ts +286 -0
- package/dist/mcp-schema.js +2559 -0
- package/dist/mcp.d.ts +2 -30
- package/dist/mcp.js +913 -558
- package/dist/memory-graph.d.ts +21 -0
- package/dist/memory-graph.js +173 -0
- package/dist/nl.js +155 -0
- package/dist/oauth.d.ts +32 -0
- package/dist/oauth.js +134 -0
- package/dist/policy.d.ts +182 -1
- package/dist/policy.js +1524 -0
- package/dist/providers/composio-instant.js +262 -7
- package/dist/providers/composio-sdk.d.ts +125 -5
- package/dist/providers/composio-sdk.js +901 -82
- package/dist/providers/microsoft-governance.d.ts +28 -1
- package/dist/providers/microsoft-governance.js +224 -11
- package/dist/providers/stripe-billing.d.ts +42 -0
- package/dist/providers/stripe-billing.js +230 -1
- package/dist/providers/stripe-projects.d.ts +455 -3
- package/dist/providers/stripe-projects.js +2570 -129
- package/dist/providers/supermemory.d.ts +74 -1
- package/dist/providers/supermemory.js +426 -0
- package/dist/provisioning-managed.d.ts +50 -0
- package/dist/provisioning-managed.js +155 -0
- package/dist/sdk.d.ts +440 -3
- package/dist/sdk.js +305 -3
- package/dist/server.js +2343 -264
- package/dist/store.d.ts +113 -6
- package/dist/store.js +677 -52
- package/dist/types.d.ts +207 -3
- package/dist/ui/console-html.d.ts +40 -1
- package/dist/ui/console-html.js +1813 -629
- package/dist/ui/design-tokens.js +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +4 -3
- package/plugins/muxo/.claude-plugin/plugin.json +2 -2
- package/plugins/muxo/.codex-plugin/plugin.json +15 -8
- package/plugins/muxo/.cursor-plugin/plugin.json +30 -0
- package/plugins/muxo/hooks/session-start.sh +15 -3
- package/plugins/muxo/hooks/user-prompt-submit.sh +14 -1
- package/plugins/muxo/mcp.json +0 -10
- package/plugins/muxo/plugin.json +4 -4
- package/plugins/muxo/skills/muxo/SKILL.md +59 -9
- package/plugins/muxo/skills/muxo/references/cli.md +5 -1
- package/plugins/muxo/skills/muxo/references/mcp.md +13 -7
- package/plugins/muxo/skills/muxo-activity-summary/SKILL.md +81 -0
- package/plugins/muxo/skills/setup/SKILL.md +9 -1
- package/src/catalogues/stripe-projects-catalog.json +140 -0
package/dist/types.d.ts
CHANGED
|
@@ -18,6 +18,57 @@ export interface WorkspaceBilling {
|
|
|
18
18
|
/** Subscription whose start (fresh usage period and first credits) was already applied. */
|
|
19
19
|
startedSubscriptionId?: string | null;
|
|
20
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
|
+
}
|
|
21
72
|
export interface GovernancePolicy {
|
|
22
73
|
mode: "monitor" | "enforce";
|
|
23
74
|
requireApprovalFor: RiskLevel[];
|
|
@@ -25,19 +76,65 @@ export interface GovernancePolicy {
|
|
|
25
76
|
allowProvisioning: boolean;
|
|
26
77
|
maxCreditsPerRun: number;
|
|
27
78
|
blockedToolSlugs?: string[];
|
|
79
|
+
parameterRules?: ParameterPolicyRule[];
|
|
28
80
|
executionRing?: 0 | 1 | 2 | 3;
|
|
29
81
|
killSwitchActive?: boolean;
|
|
30
82
|
killSwitchReason?: string | null;
|
|
31
83
|
blockDestructiveSql?: boolean;
|
|
84
|
+
naturalLanguageRules?: string[];
|
|
85
|
+
languageMode?: LanguageMode;
|
|
86
|
+
customInstructions?: string[];
|
|
32
87
|
}
|
|
33
88
|
export interface User {
|
|
34
89
|
id: string;
|
|
35
90
|
email: string;
|
|
36
91
|
name: string;
|
|
37
92
|
workspaceId: string;
|
|
38
|
-
role:
|
|
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;
|
|
39
119
|
createdAt: string;
|
|
40
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
|
+
}
|
|
41
138
|
export interface Workspace {
|
|
42
139
|
id: string;
|
|
43
140
|
name: string;
|
|
@@ -49,6 +146,7 @@ export interface Workspace {
|
|
|
49
146
|
creditsBalance: number;
|
|
50
147
|
stripeCustomerId: string | null;
|
|
51
148
|
stripeSubscriptionId: string | null;
|
|
149
|
+
stripeConnectedAccountId?: string | null;
|
|
52
150
|
billing?: WorkspaceBilling;
|
|
53
151
|
projectsEnvName: string;
|
|
54
152
|
policy: GovernancePolicy;
|
|
@@ -62,6 +160,9 @@ export interface ApiKeyRecord {
|
|
|
62
160
|
keyPrefix: string;
|
|
63
161
|
environment: "live" | "test";
|
|
64
162
|
scopes: string[];
|
|
163
|
+
teamName?: string | null;
|
|
164
|
+
role?: WorkspaceRole;
|
|
165
|
+
createdByEmail?: string | null;
|
|
65
166
|
lastUsedAt: string | null;
|
|
66
167
|
revokedAt: string | null;
|
|
67
168
|
createdAt: string;
|
|
@@ -78,7 +179,7 @@ export interface MuxoTool {
|
|
|
78
179
|
riskLevel: RiskLevel;
|
|
79
180
|
requiresAuth: boolean;
|
|
80
181
|
creditCost: number;
|
|
81
|
-
billingMode: "customer_oauth" | "provider_wallet" | "resource_provisioning";
|
|
182
|
+
billingMode: "customer_oauth" | "customer_byok" | "provider_wallet" | "resource_provisioning";
|
|
82
183
|
inputSchema: Record<string, unknown>;
|
|
83
184
|
llmContextUrl?: string;
|
|
84
185
|
providerUrl?: string;
|
|
@@ -202,6 +303,7 @@ export interface GovernanceDecisionRecord {
|
|
|
202
303
|
signature: string;
|
|
203
304
|
bindingHash: string;
|
|
204
305
|
decidedAt: string;
|
|
306
|
+
explanation?: HumanFriendlyExplanation;
|
|
205
307
|
}
|
|
206
308
|
export type MemoryRecordKind = "fact" | "preference" | "resource_note" | "operator_note" | "execution_outcome" | "resource_topology" | "policy_decision";
|
|
207
309
|
export interface TemporalGraphFact {
|
|
@@ -215,11 +317,56 @@ export interface TemporalGraphFact {
|
|
|
215
317
|
validFrom: string;
|
|
216
318
|
validTo: string | null;
|
|
217
319
|
supersededById?: string | null;
|
|
218
|
-
sourceKind: MemoryRecordKind | "system";
|
|
320
|
+
sourceKind: MemoryRecordKind | "system" | "manual";
|
|
219
321
|
sourceReferenceId?: string | null;
|
|
220
322
|
metadata: Record<string, unknown>;
|
|
221
323
|
createdAt: string;
|
|
222
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
|
+
}
|
|
223
370
|
export interface MemoryContextSummary {
|
|
224
371
|
enabled: boolean;
|
|
225
372
|
namespace: string;
|
|
@@ -248,11 +395,15 @@ export interface MemoryContextSummary {
|
|
|
248
395
|
createdAt?: string;
|
|
249
396
|
}>;
|
|
250
397
|
temporalFacts?: TemporalGraphFact[];
|
|
398
|
+
activeDefaults?: Record<string, unknown>;
|
|
399
|
+
autoFilledInput?: Record<string, unknown>;
|
|
400
|
+
activeGuardrails?: string[];
|
|
251
401
|
contextPoisoningScan?: {
|
|
252
402
|
safe: boolean;
|
|
253
403
|
riskLevel: "none" | "low" | "medium" | "high" | "critical";
|
|
254
404
|
findingsCount: number;
|
|
255
405
|
};
|
|
406
|
+
explanation?: HumanFriendlyExplanation;
|
|
256
407
|
}
|
|
257
408
|
export interface WorkspaceMemoryRecord {
|
|
258
409
|
id: string;
|
|
@@ -263,6 +414,7 @@ export interface WorkspaceMemoryRecord {
|
|
|
263
414
|
content: string;
|
|
264
415
|
kind: MemoryRecordKind;
|
|
265
416
|
metadata: Record<string, unknown>;
|
|
417
|
+
fundingSource?: string;
|
|
266
418
|
createdAt: string;
|
|
267
419
|
}
|
|
268
420
|
export interface ByokKeyRecord {
|
|
@@ -313,6 +465,22 @@ export interface SupplierSettlementSummary {
|
|
|
313
465
|
retailToWholesaleCoverageRatio: number;
|
|
314
466
|
};
|
|
315
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
|
+
}
|
|
316
484
|
export interface ActionPlan {
|
|
317
485
|
id: string;
|
|
318
486
|
workspaceId: string;
|
|
@@ -331,6 +499,19 @@ export interface ActionPlan {
|
|
|
331
499
|
decisionRecord?: GovernanceDecisionRecord | null;
|
|
332
500
|
memoryContext?: MemoryContextSummary | null;
|
|
333
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;
|
|
334
515
|
createdAt: string;
|
|
335
516
|
expiresAt: string;
|
|
336
517
|
}
|
|
@@ -354,6 +535,27 @@ export interface ExecutionRun {
|
|
|
354
535
|
startedAt: string;
|
|
355
536
|
completedAt: string | null;
|
|
356
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
|
+
}
|
|
357
559
|
export interface ExecutionReceipt {
|
|
358
560
|
id: string;
|
|
359
561
|
runId: string;
|
|
@@ -372,8 +574,10 @@ export interface ExecutionReceipt {
|
|
|
372
574
|
receiptHash: string;
|
|
373
575
|
signature: string;
|
|
374
576
|
decisionRecord?: GovernanceDecisionRecord | null;
|
|
577
|
+
agenticReceipt?: PortableAgenticReceipt | null;
|
|
375
578
|
supplierSettlement?: SupplierSettlement | null;
|
|
376
579
|
issuedAt: string;
|
|
580
|
+
explanation?: HumanFriendlyExplanation;
|
|
377
581
|
}
|
|
378
582
|
export interface LedgerEntry {
|
|
379
583
|
id: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type ConsoleView = "overview" | "
|
|
1
|
+
export type ConsoleView = "overview" | "catalog" | "setup" | "workspaces" | "activity" | "billing" | "login" | "signup";
|
|
2
2
|
/** Every path that serves the console shell, mapped to the view it opens. */
|
|
3
3
|
export declare const CONSOLE_ROUTES: Readonly<Record<string, ConsoleView>>;
|
|
4
4
|
export declare function isConsolePath(pathname: string): boolean;
|
|
@@ -23,3 +23,42 @@ export interface OAuthConsentOptions {
|
|
|
23
23
|
}
|
|
24
24
|
/** Consent screen for MCP clients (ChatGPT, Claude, CLIs) asking to use a Muxo workspace. */
|
|
25
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;
|