@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/sdk.js
CHANGED
|
@@ -153,12 +153,26 @@ export class MuxoClient {
|
|
|
153
153
|
body: params,
|
|
154
154
|
});
|
|
155
155
|
}
|
|
156
|
-
async getPlan(planId) {
|
|
157
|
-
|
|
156
|
+
async getPlan(planId, options) {
|
|
157
|
+
const qs = new URLSearchParams();
|
|
158
|
+
if (options?.waitForApproval)
|
|
159
|
+
qs.set("wait_for_approval", "true");
|
|
160
|
+
if (options?.timeoutSeconds !== undefined) {
|
|
161
|
+
qs.set("timeout_seconds", String(options.timeoutSeconds));
|
|
162
|
+
}
|
|
163
|
+
const suffix = qs.toString() ? `?${qs.toString()}` : "";
|
|
164
|
+
return this.request(`/api/v1/plans/${encodeURIComponent(planId)}${suffix}`);
|
|
158
165
|
}
|
|
159
|
-
async
|
|
166
|
+
async waitForPlanApproval(planId, timeoutSeconds = 25) {
|
|
167
|
+
return this.request(`/api/v1/plans/${encodeURIComponent(planId)}/wait`, {
|
|
168
|
+
method: "POST",
|
|
169
|
+
body: { timeoutSeconds },
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
async approvePlan(planId, decision = "approved") {
|
|
160
173
|
return this.request(`/api/v1/plans/${encodeURIComponent(planId)}/approve`, {
|
|
161
174
|
method: "POST",
|
|
175
|
+
body: { decision },
|
|
162
176
|
});
|
|
163
177
|
}
|
|
164
178
|
async executePlan(planId) {
|
|
@@ -219,8 +233,17 @@ export class MuxoClient {
|
|
|
219
233
|
valid: isOk,
|
|
220
234
|
verified: isOk,
|
|
221
235
|
receipt: res.receipt,
|
|
236
|
+
agenticReceiptValid: res.agenticReceiptValid,
|
|
237
|
+
explanation: res.explanation,
|
|
222
238
|
};
|
|
223
239
|
}
|
|
240
|
+
async verifyReceiptChain(limit = 100) {
|
|
241
|
+
return this.request(`/api/v1/receipts/verify-chain?limit=${encodeURIComponent(String(limit))}`);
|
|
242
|
+
}
|
|
243
|
+
async getMemoryGraph(query) {
|
|
244
|
+
const suffix = query ? `?query=${encodeURIComponent(query)}` : "";
|
|
245
|
+
return this.request(`/api/v1/memory/graph${suffix}`);
|
|
246
|
+
}
|
|
224
247
|
async startConnection(paramsOrProvider) {
|
|
225
248
|
const body = typeof paramsOrProvider === "string"
|
|
226
249
|
? { provider: paramsOrProvider }
|
|
@@ -339,6 +362,24 @@ export class MuxoClient {
|
|
|
339
362
|
async getGovernanceStatus() {
|
|
340
363
|
return this.request("/api/v1/governance");
|
|
341
364
|
}
|
|
365
|
+
async getGuardrails() {
|
|
366
|
+
return this.request("/api/v1/guardrails");
|
|
367
|
+
}
|
|
368
|
+
async setGuardrail(promptOrParams) {
|
|
369
|
+
const prompt = typeof promptOrParams === "string"
|
|
370
|
+
? promptOrParams
|
|
371
|
+
: promptOrParams.prompt;
|
|
372
|
+
return this.request("/api/v1/guardrails", {
|
|
373
|
+
method: "POST",
|
|
374
|
+
body: { prompt },
|
|
375
|
+
});
|
|
376
|
+
}
|
|
377
|
+
async resetGuardrails() {
|
|
378
|
+
return this.request("/api/v1/guardrails", {
|
|
379
|
+
method: "POST",
|
|
380
|
+
body: { reset: true },
|
|
381
|
+
});
|
|
382
|
+
}
|
|
342
383
|
async setKillSwitch(action, reason) {
|
|
343
384
|
return this.request("/api/v1/governance/kill-switch", {
|
|
344
385
|
method: "POST",
|
|
@@ -360,6 +401,22 @@ export class MuxoClient {
|
|
|
360
401
|
body: policy,
|
|
361
402
|
});
|
|
362
403
|
}
|
|
404
|
+
async getPolicy() {
|
|
405
|
+
return this.request("/api/v1/policy");
|
|
406
|
+
}
|
|
407
|
+
async getContext(query) {
|
|
408
|
+
const suffix = query ? `?query=${encodeURIComponent(query)}` : "";
|
|
409
|
+
return this.request(`/api/v1/context${suffix}`);
|
|
410
|
+
}
|
|
411
|
+
async listReceipts(limit = 25) {
|
|
412
|
+
return this.request(`/api/v1/receipts?limit=${encodeURIComponent(String(limit))}`);
|
|
413
|
+
}
|
|
414
|
+
async remember(instruction) {
|
|
415
|
+
return this.request("/api/v1/memory", {
|
|
416
|
+
method: "POST",
|
|
417
|
+
body: { prompt: instruction },
|
|
418
|
+
});
|
|
419
|
+
}
|
|
363
420
|
async do(prompt, options = {}) {
|
|
364
421
|
const isDryRun = options.dryRun === true || options.planOnly === true;
|
|
365
422
|
return this.request("/api/v1/do", {
|
|
@@ -443,4 +500,249 @@ export class MuxoClient {
|
|
|
443
500
|
body: { sessionId },
|
|
444
501
|
});
|
|
445
502
|
}
|
|
503
|
+
// Stripe v2 Provisioning API (`Stripe-Version: 2026-09-30.preview`) SDK Methods
|
|
504
|
+
async createProvisioningConnectedAccount(params) {
|
|
505
|
+
return this.request("/api/v1/provisioning/connected_accounts", {
|
|
506
|
+
method: "POST",
|
|
507
|
+
body: params || {},
|
|
508
|
+
});
|
|
509
|
+
}
|
|
510
|
+
async getProvisioningConnectedAccount(accountId) {
|
|
511
|
+
if (accountId) {
|
|
512
|
+
return this.request(`/api/v1/provisioning/connected_accounts/${encodeURIComponent(accountId)}`);
|
|
513
|
+
}
|
|
514
|
+
return this.request("/api/v1/provisioning/connected_accounts");
|
|
515
|
+
}
|
|
516
|
+
async createProvisioningConnectedAccountLink(params) {
|
|
517
|
+
return this.request("/api/v1/provisioning/connected_account_links", {
|
|
518
|
+
method: "POST",
|
|
519
|
+
body: params || {},
|
|
520
|
+
});
|
|
521
|
+
}
|
|
522
|
+
async createProvisioningConnectedAccountSession(params) {
|
|
523
|
+
return this.request("/api/v1/provisioning/connected_account_sessions", {
|
|
524
|
+
method: "POST",
|
|
525
|
+
body: params || {},
|
|
526
|
+
});
|
|
527
|
+
}
|
|
528
|
+
async checkProvisioningEligibility() {
|
|
529
|
+
return this.request("/api/v1/provisioning/eligibility");
|
|
530
|
+
}
|
|
531
|
+
async listProvisioningProviders(params) {
|
|
532
|
+
const qs = new URLSearchParams();
|
|
533
|
+
if (params?.catalog)
|
|
534
|
+
qs.set("catalog", params.catalog);
|
|
535
|
+
if (params?.limit)
|
|
536
|
+
qs.set("limit", String(params.limit));
|
|
537
|
+
if (params?.page)
|
|
538
|
+
qs.set("page", params.page);
|
|
539
|
+
const suffix = qs.toString() ? `?${qs.toString()}` : "";
|
|
540
|
+
return this.request(`/api/v1/provisioning/catalog/providers${suffix}`);
|
|
541
|
+
}
|
|
542
|
+
async listProvisioningServices(params) {
|
|
543
|
+
const qs = new URLSearchParams();
|
|
544
|
+
if (params?.catalog)
|
|
545
|
+
qs.set("catalog", params.catalog);
|
|
546
|
+
if (params?.provider_name)
|
|
547
|
+
qs.set("provider_name", params.provider_name);
|
|
548
|
+
if (params?.provider_id)
|
|
549
|
+
qs.set("provider_id", params.provider_id);
|
|
550
|
+
if (params?.limit)
|
|
551
|
+
qs.set("limit", String(params.limit));
|
|
552
|
+
if (params?.page)
|
|
553
|
+
qs.set("page", params.page);
|
|
554
|
+
const suffix = qs.toString() ? `?${qs.toString()}` : "";
|
|
555
|
+
return this.request(`/api/v1/provisioning/catalog/services${suffix}`);
|
|
556
|
+
}
|
|
557
|
+
async getProvisioningPaymentProfile(params) {
|
|
558
|
+
const qs = new URLSearchParams();
|
|
559
|
+
if (params?.provider)
|
|
560
|
+
qs.set("provider", params.provider);
|
|
561
|
+
if (params?.livemode !== undefined)
|
|
562
|
+
qs.set("livemode", String(params.livemode));
|
|
563
|
+
const suffix = qs.toString() ? `?${qs.toString()}` : "";
|
|
564
|
+
return this.request(`/api/v1/provisioning/payment_profile${suffix}`);
|
|
565
|
+
}
|
|
566
|
+
async createProvisioningPaymentMethodRequest(params) {
|
|
567
|
+
return this.request("/api/v1/provisioning/payment_method_requests", {
|
|
568
|
+
method: "POST",
|
|
569
|
+
body: params || {},
|
|
570
|
+
});
|
|
571
|
+
}
|
|
572
|
+
async listProvisioningProviderConnections(params) {
|
|
573
|
+
const qs = new URLSearchParams();
|
|
574
|
+
if (params?.provider)
|
|
575
|
+
qs.set("provider", params.provider);
|
|
576
|
+
if (params?.limit)
|
|
577
|
+
qs.set("limit", String(params.limit));
|
|
578
|
+
if (params?.page)
|
|
579
|
+
qs.set("page", params.page);
|
|
580
|
+
const suffix = qs.toString() ? `?${qs.toString()}` : "";
|
|
581
|
+
return this.request(`/api/v1/provisioning/provider_connections${suffix}`);
|
|
582
|
+
}
|
|
583
|
+
async createProvisioningProviderConnectionRequest(params) {
|
|
584
|
+
return this.request("/api/v1/provisioning/provider_connection_requests", {
|
|
585
|
+
method: "POST",
|
|
586
|
+
body: params,
|
|
587
|
+
});
|
|
588
|
+
}
|
|
589
|
+
async listProvisioningProjects(params) {
|
|
590
|
+
const qs = new URLSearchParams();
|
|
591
|
+
if (params?.limit)
|
|
592
|
+
qs.set("limit", String(params.limit));
|
|
593
|
+
if (params?.page)
|
|
594
|
+
qs.set("page", params.page);
|
|
595
|
+
const suffix = qs.toString() ? `?${qs.toString()}` : "";
|
|
596
|
+
return this.request(`/api/v1/provisioning/projects${suffix}`);
|
|
597
|
+
}
|
|
598
|
+
async createProvisioningProject(params) {
|
|
599
|
+
return this.request("/api/v1/provisioning/projects", {
|
|
600
|
+
method: "POST",
|
|
601
|
+
body: params,
|
|
602
|
+
});
|
|
603
|
+
}
|
|
604
|
+
async listProvisioningResources(params) {
|
|
605
|
+
const qs = new URLSearchParams();
|
|
606
|
+
if (params?.project)
|
|
607
|
+
qs.set("project", params.project);
|
|
608
|
+
if (params?.provider)
|
|
609
|
+
qs.set("provider", params.provider);
|
|
610
|
+
if (params?.limit)
|
|
611
|
+
qs.set("limit", String(params.limit));
|
|
612
|
+
if (params?.page)
|
|
613
|
+
qs.set("page", params.page);
|
|
614
|
+
const suffix = qs.toString() ? `?${qs.toString()}` : "";
|
|
615
|
+
return this.request(`/api/v1/provisioning/resources${suffix}`);
|
|
616
|
+
}
|
|
617
|
+
async createProvisioningResource(params) {
|
|
618
|
+
return this.request("/api/v1/provisioning/resources", {
|
|
619
|
+
method: "POST",
|
|
620
|
+
body: params,
|
|
621
|
+
});
|
|
622
|
+
}
|
|
623
|
+
async revealResourceAccessConfiguration(resourceId) {
|
|
624
|
+
return this.request(`/api/v1/provisioning/resources/${encodeURIComponent(resourceId)}/reveal_access_configuration`, {
|
|
625
|
+
method: "POST",
|
|
626
|
+
body: {},
|
|
627
|
+
});
|
|
628
|
+
}
|
|
629
|
+
async getResourceSecrets(resourceId) {
|
|
630
|
+
return this.request(`/api/v1/resources/${encodeURIComponent(resourceId)}/secrets`);
|
|
631
|
+
}
|
|
632
|
+
// ---------------------------------------------------------------------------
|
|
633
|
+
// Multi-Workspace & Team API Key Onboarding
|
|
634
|
+
// ---------------------------------------------------------------------------
|
|
635
|
+
async listWorkspaces() {
|
|
636
|
+
return this.request("/api/v1/workspaces");
|
|
637
|
+
}
|
|
638
|
+
async createWorkspace(params) {
|
|
639
|
+
return this.request("/api/v1/workspaces", {
|
|
640
|
+
method: "POST",
|
|
641
|
+
body: params,
|
|
642
|
+
});
|
|
643
|
+
}
|
|
644
|
+
async switchWorkspace(workspaceId) {
|
|
645
|
+
return this.request("/api/v1/workspaces/switch", {
|
|
646
|
+
method: "POST",
|
|
647
|
+
body: { workspaceId },
|
|
648
|
+
});
|
|
649
|
+
}
|
|
650
|
+
async joinWorkspaceWithApiKey(apiKey) {
|
|
651
|
+
return this.request("/api/v1/workspaces/join", {
|
|
652
|
+
method: "POST",
|
|
653
|
+
body: { apiKey },
|
|
654
|
+
});
|
|
655
|
+
}
|
|
656
|
+
async onboardTeam(params) {
|
|
657
|
+
return this.request("/api/v1/workspaces/onboard-team", {
|
|
658
|
+
method: "POST",
|
|
659
|
+
body: params,
|
|
660
|
+
});
|
|
661
|
+
}
|
|
662
|
+
// ---------------------------------------------------------------------------
|
|
663
|
+
// Stripe v2 Billing Meter Streams, Event Destinations, Composio Toolkits/Triggers, & Cloudflare Workflows
|
|
664
|
+
// ---------------------------------------------------------------------------
|
|
665
|
+
async updateProvisioningSpendLimit(params) {
|
|
666
|
+
return this.request("/api/v1/provisioning/payment_profile/update_limit", {
|
|
667
|
+
method: "POST",
|
|
668
|
+
body: {
|
|
669
|
+
usage_limits: {
|
|
670
|
+
max_amount: String(params.max_amount),
|
|
671
|
+
currency: params.currency || "usd",
|
|
672
|
+
recurring_interval: params.recurring_interval || "month",
|
|
673
|
+
},
|
|
674
|
+
provider: params.provider,
|
|
675
|
+
},
|
|
676
|
+
});
|
|
677
|
+
}
|
|
678
|
+
async createProvisioningEventDestination(params) {
|
|
679
|
+
return this.request("/api/v1/provisioning/event_destinations", {
|
|
680
|
+
method: "POST",
|
|
681
|
+
body: params,
|
|
682
|
+
});
|
|
683
|
+
}
|
|
684
|
+
async recordBillingMeterEvent(params) {
|
|
685
|
+
return this.request("/api/v1/billing/meter_events", {
|
|
686
|
+
method: "POST",
|
|
687
|
+
body: params,
|
|
688
|
+
});
|
|
689
|
+
}
|
|
690
|
+
async listBillingMeterEvents(limit = 50) {
|
|
691
|
+
return this.request(`/api/v1/billing/meter_events?limit=${limit}`);
|
|
692
|
+
}
|
|
693
|
+
async listToolkits(params) {
|
|
694
|
+
const qs = new URLSearchParams();
|
|
695
|
+
if (params?.category)
|
|
696
|
+
qs.set("category", params.category);
|
|
697
|
+
if (params?.search)
|
|
698
|
+
qs.set("search", params.search);
|
|
699
|
+
const suffix = qs.toString() ? `?${qs.toString()}` : "";
|
|
700
|
+
return this.request(`/api/v1/toolkits${suffix}`);
|
|
701
|
+
}
|
|
702
|
+
async createCustomAuthConfig(params) {
|
|
703
|
+
return this.request("/api/v1/connections/auth-configs", {
|
|
704
|
+
method: "POST",
|
|
705
|
+
body: params,
|
|
706
|
+
});
|
|
707
|
+
}
|
|
708
|
+
async listTriggers(provider) {
|
|
709
|
+
const suffix = provider ? `?provider=${encodeURIComponent(provider)}` : "";
|
|
710
|
+
return this.request(`/api/v1/triggers${suffix}`);
|
|
711
|
+
}
|
|
712
|
+
async enableTrigger(params) {
|
|
713
|
+
return this.request("/api/v1/triggers", {
|
|
714
|
+
method: "POST",
|
|
715
|
+
body: params,
|
|
716
|
+
});
|
|
717
|
+
}
|
|
718
|
+
async ingestTriggerWebhook(params) {
|
|
719
|
+
return this.request("/api/v1/triggers/webhook", {
|
|
720
|
+
method: "POST",
|
|
721
|
+
body: params,
|
|
722
|
+
});
|
|
723
|
+
}
|
|
724
|
+
async executeBatchPlans(params) {
|
|
725
|
+
return this.request("/api/v1/plans/batch", {
|
|
726
|
+
method: "POST",
|
|
727
|
+
body: params,
|
|
728
|
+
});
|
|
729
|
+
}
|
|
730
|
+
async searchMemoryHybrid(query, limit = 10) {
|
|
731
|
+
return this.request(`/api/v1/memory/hybrid?query=${encodeURIComponent(query)}&limit=${limit}`);
|
|
732
|
+
}
|
|
733
|
+
async startDurableWorkflow(params) {
|
|
734
|
+
return this.request("/api/v1/workflows", {
|
|
735
|
+
method: "POST",
|
|
736
|
+
body: params,
|
|
737
|
+
});
|
|
738
|
+
}
|
|
739
|
+
async advanceDurableWorkflow(workflowId, eventPayload) {
|
|
740
|
+
return this.request(`/api/v1/workflows/${encodeURIComponent(workflowId)}/advance`, {
|
|
741
|
+
method: "POST",
|
|
742
|
+
body: eventPayload || {},
|
|
743
|
+
});
|
|
744
|
+
}
|
|
745
|
+
async exportGovernanceArchive() {
|
|
746
|
+
return this.request("/api/v1/governance/archive");
|
|
747
|
+
}
|
|
446
748
|
}
|