@duvoai/cli 1.34.0 → 1.35.1
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/dist/bin/duvo.js +549 -378
- package/dist/bin/duvo.js.map +4 -4
- package/package.json +1 -1
package/dist/bin/duvo.js
CHANGED
|
@@ -110,9 +110,9 @@ import { z as z75 } from "zod";
|
|
|
110
110
|
import { z as z76 } from "zod";
|
|
111
111
|
import { z as z77 } from "zod";
|
|
112
112
|
import { z as z78 } from "zod";
|
|
113
|
+
import { z as z80 } from "zod";
|
|
113
114
|
import { z as z79 } from "zod";
|
|
114
115
|
import { z as z81 } from "zod";
|
|
115
|
-
import { z as z80 } from "zod";
|
|
116
116
|
import { z as z82 } from "zod";
|
|
117
117
|
import { z as z83 } from "zod";
|
|
118
118
|
import { z as z84 } from "zod";
|
|
@@ -1640,10 +1640,26 @@ var sessionPhaseTimingsSchema = z10.object({
|
|
|
1640
1640
|
modelTtftMs: z10.number().optional(),
|
|
1641
1641
|
firstTokenMs: z10.number().optional()
|
|
1642
1642
|
});
|
|
1643
|
+
var runMetricsSchema = z10.object({
|
|
1644
|
+
toolCallCount: z10.number().int().nonnegative().optional(),
|
|
1645
|
+
toolCallDurationMsSum: z10.number().nonnegative().optional(),
|
|
1646
|
+
retryCount: z10.number().int().nonnegative().optional(),
|
|
1647
|
+
stepCount: z10.number().int().nonnegative().optional(),
|
|
1648
|
+
durationMs: z10.number().nonnegative().optional(),
|
|
1649
|
+
totalCostUsd: z10.number().nonnegative().optional(),
|
|
1650
|
+
model: z10.string().optional(),
|
|
1651
|
+
tokenUsage: z10.object({
|
|
1652
|
+
inputTokens: z10.number().int().nonnegative().optional(),
|
|
1653
|
+
outputTokens: z10.number().int().nonnegative().optional(),
|
|
1654
|
+
cacheReadTokens: z10.number().int().nonnegative().optional(),
|
|
1655
|
+
cacheWriteTokens: z10.number().int().nonnegative().optional()
|
|
1656
|
+
}).optional()
|
|
1657
|
+
});
|
|
1643
1658
|
var duvoSystemSessionCompletedMessageSchema = duvoBaseSystemMessageSchema.and(
|
|
1644
1659
|
z10.object({
|
|
1645
1660
|
type: z10.literal("session_completed"),
|
|
1646
|
-
phases: sessionPhaseTimingsSchema.optional()
|
|
1661
|
+
phases: sessionPhaseTimingsSchema.optional(),
|
|
1662
|
+
runMetrics: runMetricsSchema.optional()
|
|
1647
1663
|
})
|
|
1648
1664
|
);
|
|
1649
1665
|
var duvoSystemSessionInterruptedMessageSchema = duvoBaseSystemMessageSchema.and(
|
|
@@ -1654,7 +1670,8 @@ var duvoSystemSessionInterruptedMessageSchema = duvoBaseSystemMessageSchema.and(
|
|
|
1654
1670
|
var duvoSystemSessionErrorMessageSchema = duvoBaseSystemMessageSchema.and(
|
|
1655
1671
|
z10.object({
|
|
1656
1672
|
type: z10.literal("session_error"),
|
|
1657
|
-
error: z10.string()
|
|
1673
|
+
error: z10.string(),
|
|
1674
|
+
runMetrics: runMetricsSchema.optional()
|
|
1658
1675
|
})
|
|
1659
1676
|
);
|
|
1660
1677
|
var duvoSystemAgentRunCreatedMessageSchema = duvoBaseSystemMessageSchema.and(
|
|
@@ -2597,7 +2614,11 @@ var CLAUDE_MODEL_IDS = [
|
|
|
2597
2614
|
"claude-opus-4-8",
|
|
2598
2615
|
"claude-opus-4-8[1m]"
|
|
2599
2616
|
];
|
|
2600
|
-
var OSS_MODEL_IDS = [
|
|
2617
|
+
var OSS_MODEL_IDS = [
|
|
2618
|
+
"kimi-k3",
|
|
2619
|
+
"glm-5.2",
|
|
2620
|
+
"deepseek-v4-flash"
|
|
2621
|
+
];
|
|
2601
2622
|
var AVAILABLE_OSS_AGENT_MODELS = {
|
|
2602
2623
|
"kimi-k3": {
|
|
2603
2624
|
displayName: "Kimi K3",
|
|
@@ -2606,6 +2627,10 @@ var AVAILABLE_OSS_AGENT_MODELS = {
|
|
|
2606
2627
|
"glm-5.2": {
|
|
2607
2628
|
displayName: "GLM 5.2",
|
|
2608
2629
|
description: "Strong agentic coding model"
|
|
2630
|
+
},
|
|
2631
|
+
"deepseek-v4-flash": {
|
|
2632
|
+
displayName: "DeepSeek V4 Flash",
|
|
2633
|
+
description: "Fast, cost-efficient open model"
|
|
2609
2634
|
}
|
|
2610
2635
|
};
|
|
2611
2636
|
var LEGACY_MODEL_IDS = [
|
|
@@ -2795,6 +2820,28 @@ var BUILD_STATUS = {
|
|
|
2795
2820
|
LIVE: "live",
|
|
2796
2821
|
HISTORIC: "historic"
|
|
2797
2822
|
};
|
|
2823
|
+
var CASE_DISPLAY_STATUS_VALUES = [
|
|
2824
|
+
"pending",
|
|
2825
|
+
"in_progress",
|
|
2826
|
+
"needs_input",
|
|
2827
|
+
"postponed",
|
|
2828
|
+
"evaluating",
|
|
2829
|
+
"success",
|
|
2830
|
+
"issues",
|
|
2831
|
+
"completed",
|
|
2832
|
+
"failed",
|
|
2833
|
+
"canceled"
|
|
2834
|
+
];
|
|
2835
|
+
var CASE_OUTCOME_SOURCE = {
|
|
2836
|
+
SYSTEM: "system",
|
|
2837
|
+
EVAL: "eval",
|
|
2838
|
+
MANUAL: "manual"
|
|
2839
|
+
};
|
|
2840
|
+
var CASE_OUTCOME_SEVERITY = {
|
|
2841
|
+
CRITICAL: "critical",
|
|
2842
|
+
MEDIUM: "medium",
|
|
2843
|
+
LOW: "low"
|
|
2844
|
+
};
|
|
2798
2845
|
var CASE_PRIORITY = {
|
|
2799
2846
|
NONE: "none",
|
|
2800
2847
|
MEDIUM: "medium",
|
|
@@ -2853,6 +2900,7 @@ var CLARITY_INTERVIEW_LANGUAGES = [
|
|
|
2853
2900
|
"en",
|
|
2854
2901
|
"es",
|
|
2855
2902
|
"fr",
|
|
2903
|
+
"hu",
|
|
2856
2904
|
"pl",
|
|
2857
2905
|
"pt",
|
|
2858
2906
|
"pt-BR"
|
|
@@ -2869,6 +2917,7 @@ var CLARITY_LANGUAGE_DISPLAY_NAMES = {
|
|
|
2869
2917
|
cs: "Czech",
|
|
2870
2918
|
fr: "French",
|
|
2871
2919
|
de: "German",
|
|
2920
|
+
hu: "Hungarian",
|
|
2872
2921
|
pl: "Polish",
|
|
2873
2922
|
es: "Spanish",
|
|
2874
2923
|
pt: "Portuguese (Portugal)",
|
|
@@ -6691,6 +6740,33 @@ function domainsToBrowserbaseBypassPattern(domains) {
|
|
|
6691
6740
|
}
|
|
6692
6741
|
__name(domainsToBrowserbaseBypassPattern, "domainsToBrowserbaseBypassPattern");
|
|
6693
6742
|
__name2(domainsToBrowserbaseBypassPattern, "domainsToBrowserbaseBypassPattern");
|
|
6743
|
+
var MCP_OAUTH_CATALOG_SERVER_URLS = {
|
|
6744
|
+
supabase: "https://mcp.supabase.com/mcp",
|
|
6745
|
+
attio: "https://mcp.attio.com/mcp",
|
|
6746
|
+
amplitude: "https://mcp.amplitude.com/mcp",
|
|
6747
|
+
asana: "https://mcp.asana.com/v2/mcp",
|
|
6748
|
+
"notion-native": "https://mcp.notion.com/mcp",
|
|
6749
|
+
granola: "https://mcp.granola.ai/mcp",
|
|
6750
|
+
apify: "https://mcp.apify.com",
|
|
6751
|
+
hubspot: "https://mcp.hubspot.com"
|
|
6752
|
+
};
|
|
6753
|
+
var NETSUITE_MCP_HOST_SUFFIX = ".suitetalk.api.netsuite.com";
|
|
6754
|
+
var NETSUITE_MCP_PATH_PREFIX = "/services/mcp/v1";
|
|
6755
|
+
function matchesMcpOAuthCatalogServer(integrationType, mcpServerUrl) {
|
|
6756
|
+
if (integrationType === "netsuite") {
|
|
6757
|
+
let url;
|
|
6758
|
+
try {
|
|
6759
|
+
url = new URL(mcpServerUrl);
|
|
6760
|
+
} catch {
|
|
6761
|
+
return false;
|
|
6762
|
+
}
|
|
6763
|
+
return url.protocol === "https:" && url.hostname.endsWith(NETSUITE_MCP_HOST_SUFFIX) && url.pathname.startsWith(`${NETSUITE_MCP_PATH_PREFIX}/`);
|
|
6764
|
+
}
|
|
6765
|
+
const registeredUrl = MCP_OAUTH_CATALOG_SERVER_URLS[integrationType];
|
|
6766
|
+
return registeredUrl !== void 0 && registeredUrl === mcpServerUrl;
|
|
6767
|
+
}
|
|
6768
|
+
__name(matchesMcpOAuthCatalogServer, "matchesMcpOAuthCatalogServer");
|
|
6769
|
+
__name2(matchesMcpOAuthCatalogServer, "matchesMcpOAuthCatalogServer");
|
|
6694
6770
|
function normalizeShopDomain(input) {
|
|
6695
6771
|
return input.trim().toLowerCase().replace(/^https?:\/\//, "").replace(/\/.*$/, "");
|
|
6696
6772
|
}
|
|
@@ -7280,6 +7356,30 @@ function isIntegrationSlug(value) {
|
|
|
7280
7356
|
}
|
|
7281
7357
|
__name(isIntegrationSlug, "isIntegrationSlug");
|
|
7282
7358
|
__name2(isIntegrationSlug, "isIntegrationSlug");
|
|
7359
|
+
var SERVER_RESOLVED_MCP_URL_SLUGS = /* @__PURE__ */ new Set([
|
|
7360
|
+
"sap-ecc",
|
|
7361
|
+
"tableau",
|
|
7362
|
+
"signavio",
|
|
7363
|
+
"coupa",
|
|
7364
|
+
"md365",
|
|
7365
|
+
"workday",
|
|
7366
|
+
"businesscentral",
|
|
7367
|
+
"snowflake",
|
|
7368
|
+
"bigquery",
|
|
7369
|
+
"databricks",
|
|
7370
|
+
"bamboohr",
|
|
7371
|
+
"ssh",
|
|
7372
|
+
"outbound-call",
|
|
7373
|
+
"duvo-computer-use-rdp",
|
|
7374
|
+
"saps4hana",
|
|
7375
|
+
"intercom",
|
|
7376
|
+
"github"
|
|
7377
|
+
]);
|
|
7378
|
+
function isServerResolvedMcpUrlSlug(value) {
|
|
7379
|
+
return isIntegrationSlug(value) && SERVER_RESOLVED_MCP_URL_SLUGS.has(value);
|
|
7380
|
+
}
|
|
7381
|
+
__name(isServerResolvedMcpUrlSlug, "isServerResolvedMcpUrlSlug");
|
|
7382
|
+
__name2(isServerResolvedMcpUrlSlug, "isServerResolvedMcpUrlSlug");
|
|
7283
7383
|
function isCaseQueueIntegrationType(type) {
|
|
7284
7384
|
return type === "case-queue-producer" || type === "case-queue-consumer";
|
|
7285
7385
|
}
|
|
@@ -9656,14 +9756,7 @@ var automationRunChainCaseNodeApiSchema = z53.object({
|
|
|
9656
9756
|
title: z53.string().nullable().describe("Case title"),
|
|
9657
9757
|
queue_id: z53.guid().describe("Queue the case belongs to"),
|
|
9658
9758
|
queue_name: z53.string().nullable().describe("Display name of the queue the case was added to"),
|
|
9659
|
-
status: z53.enum(
|
|
9660
|
-
"pending",
|
|
9661
|
-
"in_progress",
|
|
9662
|
-
"needs_input",
|
|
9663
|
-
"postponed",
|
|
9664
|
-
"completed",
|
|
9665
|
-
"failed"
|
|
9666
|
-
]).describe("Derived case display status"),
|
|
9759
|
+
status: z53.enum(CASE_DISPLAY_STATUS_VALUES).describe("Derived case display status"),
|
|
9667
9760
|
producer_run_id: z53.guid().describe("Run that produced this case \u2014 its parent in the tree"),
|
|
9668
9761
|
created_at: z53.string().describe("ISO 8601 creation timestamp")
|
|
9669
9762
|
});
|
|
@@ -10044,18 +10137,22 @@ var caseQueueItemSchema = z63.object({
|
|
|
10044
10137
|
/** Case priority level. `none` = default (no priority). */
|
|
10045
10138
|
priority: casePrioritySchema,
|
|
10046
10139
|
/**
|
|
10047
|
-
*
|
|
10048
|
-
*
|
|
10049
|
-
* `constants/case-queue.ts
|
|
10140
|
+
* The case's user-visible status — the single ten-state display machine.
|
|
10141
|
+
* Lifecycle states are derived at read time; terminal states come from the
|
|
10142
|
+
* stored `outcome`. See CASE_DISPLAY_STATUS in `constants/case-queue.ts`.
|
|
10050
10143
|
*/
|
|
10051
|
-
display_status: z63.enum(
|
|
10052
|
-
|
|
10053
|
-
|
|
10054
|
-
|
|
10055
|
-
|
|
10056
|
-
|
|
10057
|
-
|
|
10058
|
-
|
|
10144
|
+
display_status: z63.enum(CASE_DISPLAY_STATUS_VALUES),
|
|
10145
|
+
/**
|
|
10146
|
+
* How a terminal outcome was reached (`system`/`eval`/`manual`). Null for
|
|
10147
|
+
* lifecycle states. Populated once the `outcome` columns land (Phase 1);
|
|
10148
|
+
* optional so pre-Phase-1 payloads validate.
|
|
10149
|
+
*/
|
|
10150
|
+
outcome_source: z63.enum(CASE_OUTCOME_SOURCE).nullable().optional(),
|
|
10151
|
+
/**
|
|
10152
|
+
* Highest failing rubric severity, meaningful only for `issues`. Optional
|
|
10153
|
+
* until the `outcome` columns land (Phase 1).
|
|
10154
|
+
*/
|
|
10155
|
+
outcome_severity: z63.enum(CASE_OUTCOME_SEVERITY).nullable().optional(),
|
|
10059
10156
|
claimed_at: z63.string().nullable(),
|
|
10060
10157
|
claimed_by_run_id: z63.string().nullable(),
|
|
10061
10158
|
completed_at: z63.string().nullable(),
|
|
@@ -10486,10 +10583,10 @@ var FEATURE_FLAG_CATALOGUE = {
|
|
|
10486
10583
|
defaultValue: false,
|
|
10487
10584
|
description: "Enables the advisor tool (consult-a-stronger-model) on agent runs for the team. When on, cc-server injects the in-process `advisor` MCP tool, which forwards the agent's transcript + memory to Opus 4.7 [1m] for a second opinion. The cc-server `ADVISOR_ENABLED` env remains a hard global kill-switch."
|
|
10488
10585
|
},
|
|
10489
|
-
|
|
10490
|
-
key: "
|
|
10586
|
+
WORKFLOWS: {
|
|
10587
|
+
key: "workflows",
|
|
10491
10588
|
defaultValue: false,
|
|
10492
|
-
description: "Per-team opt-in for
|
|
10589
|
+
description: "Per-team opt-in for Workflows \u2014 recorded browser workflows executed deterministically by the `replay` MCP tool (classified step modes + parameters). When on, the Workflows tab is shown on the Skills & Files page, recording a workflow is available (in addition to the BROWSING_SKILL_RECORDING plan entitlement), recordings are generated in the workflow format, and workflows can be attached to agents. When off (default), the tab and recording are hidden. Renamed from `deterministic_browsing_replay`. Kill switch for the whole Workflows feature."
|
|
10493
10590
|
},
|
|
10494
10591
|
AGENT_CHAT: {
|
|
10495
10592
|
key: "agent_chat",
|
|
@@ -10890,6 +10987,24 @@ var workflowParameterSchema = z71.object({
|
|
|
10890
10987
|
required: z71.boolean(),
|
|
10891
10988
|
example: z71.string().optional()
|
|
10892
10989
|
});
|
|
10990
|
+
var outputCaptureSchema = z71.enum(["currentUrl", "elementText"]).describe("How the value is captured: page URL, or an element's text");
|
|
10991
|
+
var workflowOutputSchema = z71.object({
|
|
10992
|
+
name: z71.string(),
|
|
10993
|
+
capture: outputCaptureSchema,
|
|
10994
|
+
stepIndex: z71.number().int().nonnegative(),
|
|
10995
|
+
selector: z71.string().optional().describe(
|
|
10996
|
+
"CSS selector to read text from; required when capture is 'elementText'"
|
|
10997
|
+
),
|
|
10998
|
+
description: z71.string()
|
|
10999
|
+
}).superRefine((output, ctx) => {
|
|
11000
|
+
if (output.capture === "elementText" && !output.selector) {
|
|
11001
|
+
ctx.addIssue({
|
|
11002
|
+
code: z71.ZodIssueCode.custom,
|
|
11003
|
+
path: ["selector"],
|
|
11004
|
+
message: "elementText outputs must declare a selector"
|
|
11005
|
+
});
|
|
11006
|
+
}
|
|
11007
|
+
});
|
|
10893
11008
|
var mcpStepSchema = z71.object({
|
|
10894
11009
|
tool: z71.string().describe("MCP tool name (e.g., click, fill, navigate_page)"),
|
|
10895
11010
|
params: z71.record(z71.string(), z71.unknown()).describe("Tool-specific parameters"),
|
|
@@ -10914,9 +11029,10 @@ var mcpWorkflowSchema = z71.object({
|
|
|
10914
11029
|
}),
|
|
10915
11030
|
steps: z71.array(mcpStepSchema),
|
|
10916
11031
|
version: z71.union([z71.literal(1), z71.literal(2)]).optional().describe(
|
|
10917
|
-
"Workflow schema version: absent/1 = legacy, 2 = classified for deterministic
|
|
11032
|
+
"Workflow schema version: absent/1 = legacy, 2 = classified for deterministic workflow execution. Unknown versions are rejected rather than silently treated as legacy."
|
|
10918
11033
|
),
|
|
10919
|
-
parameters: z71.array(workflowParameterSchema).optional().describe("Typed parameters the agent binds at replay")
|
|
11034
|
+
parameters: z71.array(workflowParameterSchema).optional().describe("Typed parameters the agent binds at replay"),
|
|
11035
|
+
outputs: z71.array(workflowOutputSchema).optional().describe("Values the replay captures and returns to the agent")
|
|
10920
11036
|
}).superRefine((workflow, ctx) => {
|
|
10921
11037
|
workflow.steps.forEach((step, index) => {
|
|
10922
11038
|
if (step.mode === "parameterized" && !step.variable) {
|
|
@@ -10927,6 +11043,24 @@ var mcpWorkflowSchema = z71.object({
|
|
|
10927
11043
|
});
|
|
10928
11044
|
}
|
|
10929
11045
|
});
|
|
11046
|
+
const seenOutputNames = /* @__PURE__ */ new Set();
|
|
11047
|
+
(workflow.outputs ?? []).forEach((output, i) => {
|
|
11048
|
+
if (seenOutputNames.has(output.name)) {
|
|
11049
|
+
ctx.addIssue({
|
|
11050
|
+
code: z71.ZodIssueCode.custom,
|
|
11051
|
+
path: ["outputs", i, "name"],
|
|
11052
|
+
message: "output names must be unique"
|
|
11053
|
+
});
|
|
11054
|
+
}
|
|
11055
|
+
seenOutputNames.add(output.name);
|
|
11056
|
+
if (output.stepIndex >= workflow.steps.length) {
|
|
11057
|
+
ctx.addIssue({
|
|
11058
|
+
code: z71.ZodIssueCode.custom,
|
|
11059
|
+
path: ["outputs", i, "stepIndex"],
|
|
11060
|
+
message: "output stepIndex is out of range"
|
|
11061
|
+
});
|
|
11062
|
+
}
|
|
11063
|
+
});
|
|
10930
11064
|
});
|
|
10931
11065
|
var MCP_WORKFLOW_JSON_SCHEMA = z71.toJSONSchema(mcpWorkflowSchema, {
|
|
10932
11066
|
reused: "inline"
|
|
@@ -11271,7 +11405,7 @@ var computerUseEventBaseSchema = z76.object({
|
|
|
11271
11405
|
timestamp: z76.number(),
|
|
11272
11406
|
/** Links this event to a screenshot uploaded in the same/earlier batch. */
|
|
11273
11407
|
screenshotSeq: z76.number().int().nonnegative().optional(),
|
|
11274
|
-
/** Resolved UIA element target (primary
|
|
11408
|
+
/** Resolved UIA element target (primary workflow-execution anchor). */
|
|
11275
11409
|
target: computerUseElementTargetSchema.optional()
|
|
11276
11410
|
});
|
|
11277
11411
|
var computerUseClickEventSchema = computerUseEventBaseSchema.extend({
|
|
@@ -11314,19 +11448,6 @@ var computerUseScreenshotSchema = z76.object({
|
|
|
11314
11448
|
/** Base64-encoded JPEG (no data: URL prefix). */
|
|
11315
11449
|
base64: z76.string()
|
|
11316
11450
|
});
|
|
11317
|
-
var replayReportSchema = z77.object({
|
|
11318
|
-
agentRunId: z77.string(),
|
|
11319
|
-
provider: z77.string().nullable(),
|
|
11320
|
-
expectedProgrammatic: z77.number(),
|
|
11321
|
-
totalSteps: z77.number(),
|
|
11322
|
-
replayedSteps: z77.number(),
|
|
11323
|
-
calls: z77.number(),
|
|
11324
|
-
handoffs: z77.number(),
|
|
11325
|
-
errors: z77.number(),
|
|
11326
|
-
stopReasons: z77.array(z77.string()),
|
|
11327
|
-
reachedCompletion: z77.boolean(),
|
|
11328
|
-
programmaticExecutionRate: z77.number()
|
|
11329
|
-
});
|
|
11330
11451
|
var DUVO_CLIENT_HEADER = "x-duvo-client";
|
|
11331
11452
|
var DUVO_CLIENTS = {
|
|
11332
11453
|
cli: "cli",
|
|
@@ -11344,56 +11465,56 @@ function resolveRequestSourceFromClientHeader(header) {
|
|
|
11344
11465
|
}
|
|
11345
11466
|
__name(resolveRequestSourceFromClientHeader, "resolveRequestSourceFromClientHeader");
|
|
11346
11467
|
__name2(resolveRequestSourceFromClientHeader, "resolveRequestSourceFromClientHeader");
|
|
11347
|
-
var RedactedMcpServerConfigSchema =
|
|
11468
|
+
var RedactedMcpServerConfigSchema = z77.object({
|
|
11348
11469
|
type: TransportTypeSchema,
|
|
11349
11470
|
integrationSlug: IntegrationSlugSchema,
|
|
11350
|
-
instanceId:
|
|
11351
|
-
});
|
|
11352
|
-
var ThreadContextMessageSchema =
|
|
11353
|
-
role:
|
|
11354
|
-
content:
|
|
11355
|
-
});
|
|
11356
|
-
var ChatFileReferenceSchema =
|
|
11357
|
-
id:
|
|
11358
|
-
name:
|
|
11359
|
-
mimetype:
|
|
11360
|
-
size:
|
|
11361
|
-
platform:
|
|
11362
|
-
workspaceId:
|
|
11363
|
-
channelId:
|
|
11364
|
-
});
|
|
11365
|
-
var ResolvedSubAgentSchema =
|
|
11366
|
-
agentId:
|
|
11367
|
-
buildId:
|
|
11368
|
-
name:
|
|
11471
|
+
instanceId: z77.string().nullable()
|
|
11472
|
+
});
|
|
11473
|
+
var ThreadContextMessageSchema = z77.object({
|
|
11474
|
+
role: z77.enum(["user", "assistant"]),
|
|
11475
|
+
content: z77.string()
|
|
11476
|
+
});
|
|
11477
|
+
var ChatFileReferenceSchema = z77.object({
|
|
11478
|
+
id: z77.string(),
|
|
11479
|
+
name: z77.string(),
|
|
11480
|
+
mimetype: z77.string(),
|
|
11481
|
+
size: z77.number(),
|
|
11482
|
+
platform: z77.enum(["slack", "teams"]),
|
|
11483
|
+
workspaceId: z77.string(),
|
|
11484
|
+
channelId: z77.string()
|
|
11485
|
+
});
|
|
11486
|
+
var ResolvedSubAgentSchema = z77.object({
|
|
11487
|
+
agentId: z77.string().uuid(),
|
|
11488
|
+
buildId: z77.string().uuid(),
|
|
11489
|
+
name: z77.string().min(1).max(64).regex(/^[a-z0-9-]+$/).describe(
|
|
11369
11490
|
"Stable slug used as the Claude Code subagent name (kebab-case, \u226464 chars)"
|
|
11370
11491
|
),
|
|
11371
|
-
description:
|
|
11492
|
+
description: z77.string().describe(
|
|
11372
11493
|
"Routing description Claude uses to decide when to delegate to this subagent"
|
|
11373
11494
|
),
|
|
11374
|
-
prompt:
|
|
11375
|
-
model:
|
|
11495
|
+
prompt: z77.string().describe("System prompt (AOP) for this subagent"),
|
|
11496
|
+
model: z77.string().optional().describe(
|
|
11376
11497
|
"Optional model identifier override for this subagent (Claude, or an OSS model id)"
|
|
11377
11498
|
),
|
|
11378
|
-
mcpServers:
|
|
11499
|
+
mcpServers: z77.record(z77.string(), RedactedMcpServerConfigSchema).default({}).describe(
|
|
11379
11500
|
"Redacted MCP server configs scoped to this subagent. Secrets resolved at execution time."
|
|
11380
11501
|
)
|
|
11381
11502
|
});
|
|
11382
11503
|
var RunConfigSchema = AgentConfigSchema.extend({
|
|
11383
|
-
task:
|
|
11384
|
-
mcpServers:
|
|
11385
|
-
subAgents:
|
|
11386
|
-
conversationHistory:
|
|
11387
|
-
chatFiles:
|
|
11504
|
+
task: z77.string(),
|
|
11505
|
+
mcpServers: z77.record(z77.string(), RedactedMcpServerConfigSchema),
|
|
11506
|
+
subAgents: z77.array(ResolvedSubAgentSchema).optional().default([]),
|
|
11507
|
+
conversationHistory: z77.array(ThreadContextMessageSchema).optional(),
|
|
11508
|
+
chatFiles: z77.array(ChatFileReferenceSchema).optional(),
|
|
11388
11509
|
/** IANA timezone (e.g. `"Europe/Prague"`). Consumers should fall back to UTC when absent. */
|
|
11389
|
-
timezone:
|
|
11510
|
+
timezone: z77.string().optional(),
|
|
11390
11511
|
/**
|
|
11391
11512
|
* ISO 8601 timestamp captured when the run was created. Frozen at
|
|
11392
11513
|
* run-creation time and never recomputed, so resumes reuse the same value —
|
|
11393
11514
|
* the runtime injects it into the cached system prompt and a changing value
|
|
11394
11515
|
* would bust the prompt cache.
|
|
11395
11516
|
*/
|
|
11396
|
-
sessionStartedAt:
|
|
11517
|
+
sessionStartedAt: z77.string().optional(),
|
|
11397
11518
|
/**
|
|
11398
11519
|
* True when this dispatch resumes a run the user stopped. Derived on each
|
|
11399
11520
|
* continue from the durable `agent_run.stopped_by_user` column (set only by a
|
|
@@ -11402,16 +11523,16 @@ var RunConfigSchema = AgentConfigSchema.extend({
|
|
|
11402
11523
|
* first resumed turn. Lives here — not in cc-server memory — so it survives a
|
|
11403
11524
|
* sandbox suspend/resume.
|
|
11404
11525
|
*/
|
|
11405
|
-
resumedAfterStop:
|
|
11526
|
+
resumedAfterStop: z77.boolean().optional()
|
|
11406
11527
|
});
|
|
11407
|
-
var StoredRunConfigV0Schema =
|
|
11408
|
-
version:
|
|
11528
|
+
var StoredRunConfigV0Schema = z77.object({
|
|
11529
|
+
version: z77.literal("v0")
|
|
11409
11530
|
});
|
|
11410
|
-
var StoredRunConfigV1Schema =
|
|
11411
|
-
version:
|
|
11531
|
+
var StoredRunConfigV1Schema = z77.object({
|
|
11532
|
+
version: z77.literal("v1"),
|
|
11412
11533
|
data: RunConfigSchema
|
|
11413
11534
|
});
|
|
11414
|
-
var StoredRunConfigSchema =
|
|
11535
|
+
var StoredRunConfigSchema = z77.union([
|
|
11415
11536
|
StoredRunConfigV0Schema,
|
|
11416
11537
|
StoredRunConfigV1Schema
|
|
11417
11538
|
]);
|
|
@@ -11430,178 +11551,178 @@ function isRunConfig(config) {
|
|
|
11430
11551
|
}
|
|
11431
11552
|
__name(isRunConfig, "isRunConfig");
|
|
11432
11553
|
__name2(isRunConfig, "isRunConfig");
|
|
11433
|
-
var skillApiSchema =
|
|
11434
|
-
id:
|
|
11435
|
-
name:
|
|
11436
|
-
description:
|
|
11554
|
+
var skillApiSchema = z78.object({
|
|
11555
|
+
id: z78.string(),
|
|
11556
|
+
name: z78.string(),
|
|
11557
|
+
description: z78.string(),
|
|
11437
11558
|
// System skills have null team_id.
|
|
11438
|
-
team_id:
|
|
11559
|
+
team_id: z78.string().nullable()
|
|
11439
11560
|
});
|
|
11440
|
-
var listSkillsResponseSchema =
|
|
11441
|
-
skills:
|
|
11561
|
+
var listSkillsResponseSchema = z78.object({
|
|
11562
|
+
skills: z78.array(skillApiSchema)
|
|
11442
11563
|
});
|
|
11443
|
-
var systemSkillSchema =
|
|
11444
|
-
id:
|
|
11445
|
-
name:
|
|
11446
|
-
description:
|
|
11447
|
-
});
|
|
11448
|
-
var listSystemSkillsResponseSchema = z79.object({
|
|
11449
|
-
skills: z79.array(systemSkillSchema)
|
|
11450
|
-
});
|
|
11451
|
-
var skillFileItemSchema = z79.object({
|
|
11452
|
-
name: z79.string(),
|
|
11453
|
-
path: z79.string(),
|
|
11454
|
-
size: z79.number().optional(),
|
|
11455
|
-
contentType: z79.string().optional(),
|
|
11456
|
-
updatedAt: z79.string().optional()
|
|
11457
|
-
});
|
|
11458
|
-
var listSkillFilesResponseSchema = z79.object({
|
|
11459
|
-
files: z79.array(skillFileItemSchema)
|
|
11460
|
-
});
|
|
11461
|
-
var getSkillFileContentResponseSchema = z79.object({
|
|
11462
|
-
content: z79.string(),
|
|
11463
|
-
path: z79.string(),
|
|
11464
|
-
contentType: z79.string().optional()
|
|
11465
|
-
});
|
|
11466
|
-
var updateSkillFileBodySchema = z79.object({
|
|
11467
|
-
content: z79.string()
|
|
11468
|
-
});
|
|
11469
|
-
var updateSkillFileResponseSchema = z79.object({
|
|
11470
|
-
success: z79.boolean(),
|
|
11471
|
-
message: z79.string(),
|
|
11472
|
-
skill: z79.object({
|
|
11473
|
-
id: z79.string(),
|
|
11474
|
-
name: z79.string(),
|
|
11475
|
-
description: z79.string()
|
|
11476
|
-
}).optional()
|
|
11564
|
+
var systemSkillSchema = z78.object({
|
|
11565
|
+
id: z78.string(),
|
|
11566
|
+
name: z78.string(),
|
|
11567
|
+
description: z78.string()
|
|
11477
11568
|
});
|
|
11478
|
-
var
|
|
11479
|
-
|
|
11480
|
-
message: z79.string()
|
|
11569
|
+
var listSystemSkillsResponseSchema = z78.object({
|
|
11570
|
+
skills: z78.array(systemSkillSchema)
|
|
11481
11571
|
});
|
|
11482
|
-
var
|
|
11483
|
-
|
|
11484
|
-
|
|
11572
|
+
var skillFileItemSchema = z78.object({
|
|
11573
|
+
name: z78.string(),
|
|
11574
|
+
path: z78.string(),
|
|
11575
|
+
size: z78.number().optional(),
|
|
11576
|
+
contentType: z78.string().optional(),
|
|
11577
|
+
updatedAt: z78.string().optional()
|
|
11485
11578
|
});
|
|
11486
|
-
var
|
|
11487
|
-
|
|
11579
|
+
var listSkillFilesResponseSchema = z78.object({
|
|
11580
|
+
files: z78.array(skillFileItemSchema)
|
|
11488
11581
|
});
|
|
11489
|
-
var
|
|
11490
|
-
|
|
11491
|
-
|
|
11582
|
+
var getSkillFileContentResponseSchema = z78.object({
|
|
11583
|
+
content: z78.string(),
|
|
11584
|
+
path: z78.string(),
|
|
11585
|
+
contentType: z78.string().optional()
|
|
11492
11586
|
});
|
|
11493
|
-
var
|
|
11494
|
-
|
|
11495
|
-
total: z79.number()
|
|
11587
|
+
var updateSkillFileBodySchema = z78.object({
|
|
11588
|
+
content: z78.string()
|
|
11496
11589
|
});
|
|
11497
|
-
var
|
|
11498
|
-
|
|
11499
|
-
|
|
11500
|
-
|
|
11501
|
-
|
|
11502
|
-
|
|
11503
|
-
|
|
11504
|
-
|
|
11505
|
-
created_at: z80.string(),
|
|
11506
|
-
process_id: z80.guid().nullable().optional()
|
|
11590
|
+
var updateSkillFileResponseSchema = z78.object({
|
|
11591
|
+
success: z78.boolean(),
|
|
11592
|
+
message: z78.string(),
|
|
11593
|
+
skill: z78.object({
|
|
11594
|
+
id: z78.string(),
|
|
11595
|
+
name: z78.string(),
|
|
11596
|
+
description: z78.string()
|
|
11597
|
+
}).optional()
|
|
11507
11598
|
});
|
|
11508
|
-
var
|
|
11509
|
-
|
|
11510
|
-
|
|
11511
|
-
|
|
11512
|
-
|
|
11513
|
-
|
|
11514
|
-
|
|
11515
|
-
|
|
11516
|
-
|
|
11517
|
-
|
|
11518
|
-
|
|
11519
|
-
|
|
11520
|
-
|
|
11599
|
+
var deleteSkillResponseSchema = z78.object({
|
|
11600
|
+
success: z78.boolean(),
|
|
11601
|
+
message: z78.string()
|
|
11602
|
+
});
|
|
11603
|
+
var generateSkillBodySchema = z78.object({
|
|
11604
|
+
prompt: z78.string().min(1).max(2e3),
|
|
11605
|
+
existingContent: z78.string().max(2e4).optional()
|
|
11606
|
+
});
|
|
11607
|
+
var generateSkillResponseSchema = z78.object({
|
|
11608
|
+
content: z78.string()
|
|
11609
|
+
});
|
|
11610
|
+
var skillAssignmentSchema = z78.object({
|
|
11611
|
+
id: z78.string(),
|
|
11612
|
+
name: z78.string()
|
|
11613
|
+
});
|
|
11614
|
+
var listSkillAssignmentsResponseSchema = z78.object({
|
|
11615
|
+
assignments: z78.array(skillAssignmentSchema),
|
|
11616
|
+
total: z78.number()
|
|
11617
|
+
});
|
|
11618
|
+
var teamInvitationApiSchema = z79.object({
|
|
11619
|
+
id: z79.string(),
|
|
11620
|
+
team_id: z79.string(),
|
|
11621
|
+
email: z79.email(),
|
|
11622
|
+
invited_by: z79.string(),
|
|
11623
|
+
role: z79.string(),
|
|
11624
|
+
status: z79.string(),
|
|
11625
|
+
name: z79.string().nullable(),
|
|
11626
|
+
created_at: z79.string(),
|
|
11627
|
+
process_id: z79.guid().nullable().optional()
|
|
11628
|
+
});
|
|
11629
|
+
var teamInvitationDetailApiSchema = z79.object({
|
|
11630
|
+
id: z79.string(),
|
|
11631
|
+
team_id: z79.string(),
|
|
11632
|
+
email: z79.email(),
|
|
11633
|
+
invited_by: z79.string(),
|
|
11634
|
+
role: z79.string(),
|
|
11635
|
+
status: z79.string(),
|
|
11636
|
+
name: z79.string().nullable(),
|
|
11637
|
+
created_at: z79.string(),
|
|
11638
|
+
process_id: z79.guid().nullable().optional(),
|
|
11639
|
+
team: z79.object({
|
|
11640
|
+
id: z79.string(),
|
|
11641
|
+
name: z79.string()
|
|
11521
11642
|
}),
|
|
11522
|
-
invitedBy:
|
|
11523
|
-
id:
|
|
11524
|
-
name:
|
|
11525
|
-
email:
|
|
11643
|
+
invitedBy: z79.object({
|
|
11644
|
+
id: z79.string(),
|
|
11645
|
+
name: z79.string().nullable(),
|
|
11646
|
+
email: z79.email()
|
|
11526
11647
|
}),
|
|
11527
|
-
process:
|
|
11528
|
-
id:
|
|
11529
|
-
name:
|
|
11648
|
+
process: z79.object({
|
|
11649
|
+
id: z79.string(),
|
|
11650
|
+
name: z79.string()
|
|
11530
11651
|
}).optional()
|
|
11531
11652
|
});
|
|
11532
|
-
var createTeamInvitationRequestSchema =
|
|
11533
|
-
email:
|
|
11534
|
-
role:
|
|
11535
|
-
processId:
|
|
11653
|
+
var createTeamInvitationRequestSchema = z79.object({
|
|
11654
|
+
email: z79.email(),
|
|
11655
|
+
role: z79.string(),
|
|
11656
|
+
processId: z79.guid().optional()
|
|
11536
11657
|
});
|
|
11537
|
-
var acceptTeamInvitationRequestSchema =
|
|
11538
|
-
name:
|
|
11658
|
+
var acceptTeamInvitationRequestSchema = z79.object({
|
|
11659
|
+
name: z79.string().optional()
|
|
11539
11660
|
});
|
|
11540
|
-
var bulkInviteResponseSchema =
|
|
11541
|
-
succeeded:
|
|
11542
|
-
skipped:
|
|
11543
|
-
failed:
|
|
11661
|
+
var bulkInviteResponseSchema = z79.object({
|
|
11662
|
+
succeeded: z79.number(),
|
|
11663
|
+
skipped: z79.number(),
|
|
11664
|
+
failed: z79.number()
|
|
11544
11665
|
});
|
|
11545
11666
|
var TEAM_DISCOVERY_MODES = ["request", "auto"];
|
|
11546
|
-
var teamDiscoveryModeSchema =
|
|
11547
|
-
var BrowserRegionSchema =
|
|
11667
|
+
var teamDiscoveryModeSchema = z80.enum(TEAM_DISCOVERY_MODES);
|
|
11668
|
+
var BrowserRegionSchema = z80.enum([
|
|
11548
11669
|
"us-west-2",
|
|
11549
11670
|
"us-east-1",
|
|
11550
11671
|
"eu-central-1",
|
|
11551
11672
|
"ap-southeast-1"
|
|
11552
11673
|
]);
|
|
11553
|
-
var BrowserLocationSchema =
|
|
11554
|
-
|
|
11555
|
-
|
|
11556
|
-
|
|
11557
|
-
|
|
11558
|
-
|
|
11559
|
-
|
|
11560
|
-
|
|
11674
|
+
var BrowserLocationSchema = z80.union([
|
|
11675
|
+
z80.literal("cz"),
|
|
11676
|
+
z80.literal("de"),
|
|
11677
|
+
z80.literal("fr"),
|
|
11678
|
+
z80.literal("gb"),
|
|
11679
|
+
z80.literal("it"),
|
|
11680
|
+
z80.literal("pl"),
|
|
11681
|
+
z80.literal("sk")
|
|
11561
11682
|
]);
|
|
11562
|
-
var teamMemberApiSchema =
|
|
11563
|
-
id:
|
|
11564
|
-
name:
|
|
11565
|
-
email:
|
|
11566
|
-
role:
|
|
11567
|
-
inheritedFromOrg:
|
|
11568
|
-
});
|
|
11569
|
-
var listTeamMembersResponseSchema =
|
|
11570
|
-
members:
|
|
11571
|
-
total:
|
|
11572
|
-
limit:
|
|
11573
|
-
offset:
|
|
11574
|
-
});
|
|
11575
|
-
var updateMemberRoleRequestSchema =
|
|
11576
|
-
role:
|
|
11577
|
-
});
|
|
11578
|
-
var removeMemberResponseSchema =
|
|
11579
|
-
success:
|
|
11580
|
-
nextTeamId:
|
|
11581
|
-
planType:
|
|
11582
|
-
});
|
|
11583
|
-
var getMemberMeResponseSchema =
|
|
11584
|
-
role:
|
|
11683
|
+
var teamMemberApiSchema = z80.object({
|
|
11684
|
+
id: z80.guid(),
|
|
11685
|
+
name: z80.string().nullable(),
|
|
11686
|
+
email: z80.email(),
|
|
11687
|
+
role: z80.string(),
|
|
11688
|
+
inheritedFromOrg: z80.boolean().default(false)
|
|
11689
|
+
});
|
|
11690
|
+
var listTeamMembersResponseSchema = z80.object({
|
|
11691
|
+
members: z80.array(teamMemberApiSchema),
|
|
11692
|
+
total: z80.number().int().nonnegative(),
|
|
11693
|
+
limit: z80.number().int().positive(),
|
|
11694
|
+
offset: z80.number().int().nonnegative()
|
|
11695
|
+
});
|
|
11696
|
+
var updateMemberRoleRequestSchema = z80.object({
|
|
11697
|
+
role: z80.string()
|
|
11698
|
+
});
|
|
11699
|
+
var removeMemberResponseSchema = z80.object({
|
|
11700
|
+
success: z80.literal(true),
|
|
11701
|
+
nextTeamId: z80.guid().nullable(),
|
|
11702
|
+
planType: z80.enum(["pro", "enterprise"]).nullable()
|
|
11703
|
+
});
|
|
11704
|
+
var getMemberMeResponseSchema = z80.object({
|
|
11705
|
+
role: z80.string().nullable(),
|
|
11585
11706
|
// True only when a real `user_team_memberships` row exists. `role` can be a
|
|
11586
11707
|
// read-only *virtual* role for org leaders who haven't joined, so it is not a
|
|
11587
11708
|
// membership signal on its own — use this flag to tell a real member apart.
|
|
11588
|
-
isMember:
|
|
11709
|
+
isMember: z80.boolean()
|
|
11589
11710
|
});
|
|
11590
|
-
var addTeamMemberRequestSchema =
|
|
11591
|
-
userId:
|
|
11592
|
-
role:
|
|
11711
|
+
var addTeamMemberRequestSchema = z80.object({
|
|
11712
|
+
userId: z80.guid(),
|
|
11713
|
+
role: z80.string()
|
|
11593
11714
|
});
|
|
11594
|
-
var updateTeamRequestSchema =
|
|
11595
|
-
name:
|
|
11596
|
-
slack_team_id:
|
|
11715
|
+
var updateTeamRequestSchema = z80.object({
|
|
11716
|
+
name: z80.string().min(1).optional(),
|
|
11717
|
+
slack_team_id: z80.string().optional(),
|
|
11597
11718
|
discovery_mode: teamDiscoveryModeSchema.optional()
|
|
11598
11719
|
});
|
|
11599
|
-
var teamApiSchema =
|
|
11600
|
-
id:
|
|
11601
|
-
name:
|
|
11602
|
-
created_at:
|
|
11603
|
-
organization_id:
|
|
11604
|
-
slack_team_id:
|
|
11720
|
+
var teamApiSchema = z80.object({
|
|
11721
|
+
id: z80.guid().describe("Unique team identifier"),
|
|
11722
|
+
name: z80.string().describe("Human-readable team name"),
|
|
11723
|
+
created_at: z80.string().describe("ISO 8601 creation timestamp"),
|
|
11724
|
+
organization_id: z80.guid().nullable().describe("Parent organization ID, or null if the team is standalone"),
|
|
11725
|
+
slack_team_id: z80.string().nullable().describe("Linked Slack workspace ID, or null if Slack is not connected"),
|
|
11605
11726
|
// Responses use x-extensible-enum: adding a discovery mode to a strict
|
|
11606
11727
|
// response enum is breaking in oasdiff, while an added x-extensible-enum
|
|
11607
11728
|
// value is not. The strict request enum (updateTeamRequestSchema) still
|
|
@@ -11610,11 +11731,11 @@ var teamApiSchema = z81.object({
|
|
|
11610
11731
|
description: "How the team handles agent discovery"
|
|
11611
11732
|
})
|
|
11612
11733
|
});
|
|
11613
|
-
var teamResponseApiSchema =
|
|
11734
|
+
var teamResponseApiSchema = z80.object({
|
|
11614
11735
|
team: teamApiSchema
|
|
11615
11736
|
});
|
|
11616
11737
|
var TEAM_CONFIG_VERSION = 1;
|
|
11617
|
-
var teamConfigDataSchema =
|
|
11738
|
+
var teamConfigDataSchema = z80.object({
|
|
11618
11739
|
browserProviderOverride: BrowserProviderTypeSchema.nullable().optional(),
|
|
11619
11740
|
// Egress identity (proxy country) — what the target site sees.
|
|
11620
11741
|
browserLocationOverride: BrowserLocationSchema.nullable().optional(),
|
|
@@ -11626,205 +11747,219 @@ var teamConfigDataSchema = z81.object({
|
|
|
11626
11747
|
dataHandlingOverride: DataHandlingSchema.nullable().optional(),
|
|
11627
11748
|
// Domains that bypass the org VPN and connect directly (split tunnel).
|
|
11628
11749
|
// Union'd at runtime with the org-default list on vpn_proxy_config.
|
|
11629
|
-
vpnBypassDomains:
|
|
11750
|
+
vpnBypassDomains: z80.array(z80.string()).max(MAX_VPN_BYPASS_DOMAINS).nullable().optional(),
|
|
11630
11751
|
// Deprecated: superseded by dataResidencyOverride / dataHandlingOverride.
|
|
11631
11752
|
// Kept optional so existing v1 rows still parse; the resolver reads the new
|
|
11632
11753
|
// fields first and falls back to these. Do not surface in the UI.
|
|
11633
11754
|
browserRegionOverride: BrowserRegionSchema.nullable().optional(),
|
|
11634
|
-
sessionRecordingOverride:
|
|
11755
|
+
sessionRecordingOverride: z80.boolean().nullable().optional()
|
|
11635
11756
|
});
|
|
11636
|
-
var teamConfigSchema =
|
|
11637
|
-
version:
|
|
11757
|
+
var teamConfigSchema = z80.object({
|
|
11758
|
+
version: z80.literal(TEAM_CONFIG_VERSION),
|
|
11638
11759
|
data: teamConfigDataSchema
|
|
11639
11760
|
});
|
|
11640
|
-
var listTeamInvitesResponseSchema =
|
|
11641
|
-
invitations:
|
|
11761
|
+
var listTeamInvitesResponseSchema = z80.object({
|
|
11762
|
+
invitations: z80.array(teamInvitationApiSchema)
|
|
11642
11763
|
});
|
|
11643
|
-
var teamInsightsCopilotSchema =
|
|
11644
|
-
id:
|
|
11645
|
-
name:
|
|
11646
|
-
teamName:
|
|
11647
|
-
created_at:
|
|
11648
|
-
updated_at:
|
|
11649
|
-
team_id:
|
|
11650
|
-
thread_id:
|
|
11651
|
-
slack_enabled:
|
|
11652
|
-
});
|
|
11653
|
-
var teamInsightsUserProfileSchema =
|
|
11654
|
-
id:
|
|
11655
|
-
name:
|
|
11656
|
-
email:
|
|
11764
|
+
var teamInsightsCopilotSchema = z81.object({
|
|
11765
|
+
id: z81.guid(),
|
|
11766
|
+
name: z81.string(),
|
|
11767
|
+
teamName: z81.string().nullable().optional(),
|
|
11768
|
+
created_at: z81.string().nullable(),
|
|
11769
|
+
updated_at: z81.string().nullable(),
|
|
11770
|
+
team_id: z81.string().nullable(),
|
|
11771
|
+
thread_id: z81.string().nullable(),
|
|
11772
|
+
slack_enabled: z81.boolean().nullable()
|
|
11773
|
+
});
|
|
11774
|
+
var teamInsightsUserProfileSchema = z81.object({
|
|
11775
|
+
id: z81.guid(),
|
|
11776
|
+
name: z81.string().nullable(),
|
|
11777
|
+
email: z81.string()
|
|
11657
11778
|
});
|
|
11658
11779
|
var teamInsightsUserUsageSchema = teamInsightsUserProfileSchema.extend(
|
|
11659
11780
|
{
|
|
11660
|
-
runCount:
|
|
11661
|
-
lastRun:
|
|
11781
|
+
runCount: z81.number(),
|
|
11782
|
+
lastRun: z81.string().nullable()
|
|
11662
11783
|
}
|
|
11663
11784
|
);
|
|
11664
|
-
var teamInsightsMetricSourceSchema =
|
|
11785
|
+
var teamInsightsMetricSourceSchema = z81.object({
|
|
11665
11786
|
source: agentRunSourceSchema,
|
|
11666
|
-
runsTotal:
|
|
11667
|
-
completedRuns:
|
|
11787
|
+
runsTotal: z81.number(),
|
|
11788
|
+
completedRuns: z81.number()
|
|
11668
11789
|
});
|
|
11669
11790
|
var teamInsightsCopilotWithRunsSchema = teamInsightsCopilotSchema.extend({
|
|
11670
|
-
integrations:
|
|
11671
|
-
uniqueUsersCount:
|
|
11672
|
-
users:
|
|
11673
|
-
totalRuns:
|
|
11674
|
-
completedRuns:
|
|
11675
|
-
totalTimeSpentMs:
|
|
11676
|
-
averageTimeSpentMs:
|
|
11677
|
-
completedRunsWithTiming:
|
|
11678
|
-
sources:
|
|
11679
|
-
});
|
|
11680
|
-
var teamInsightsAgentsRunResponseSchema =
|
|
11681
|
-
data:
|
|
11682
|
-
total:
|
|
11683
|
-
});
|
|
11684
|
-
var teamInsightsMetricsResponseSchema =
|
|
11685
|
-
runsTotal:
|
|
11686
|
-
completedRuns:
|
|
11687
|
-
sources:
|
|
11688
|
-
});
|
|
11689
|
-
var teamInsightsUserAgentRunSchema =
|
|
11690
|
-
id:
|
|
11691
|
-
created_at:
|
|
11692
|
-
updated_at:
|
|
11693
|
-
agent_id:
|
|
11694
|
-
agent_name:
|
|
11695
|
-
build_id:
|
|
11696
|
-
source:
|
|
11697
|
-
started_at:
|
|
11698
|
-
completed_at:
|
|
11699
|
-
});
|
|
11700
|
-
var teamInsightsAgentSchema =
|
|
11701
|
-
id:
|
|
11702
|
-
name:
|
|
11703
|
-
teamName:
|
|
11704
|
-
runs:
|
|
11791
|
+
integrations: z81.array(z81.string()),
|
|
11792
|
+
uniqueUsersCount: z81.number(),
|
|
11793
|
+
users: z81.array(teamInsightsUserUsageSchema),
|
|
11794
|
+
totalRuns: z81.number(),
|
|
11795
|
+
completedRuns: z81.number(),
|
|
11796
|
+
totalTimeSpentMs: z81.number(),
|
|
11797
|
+
averageTimeSpentMs: z81.number(),
|
|
11798
|
+
completedRunsWithTiming: z81.number(),
|
|
11799
|
+
sources: z81.array(teamInsightsMetricSourceSchema)
|
|
11800
|
+
});
|
|
11801
|
+
var teamInsightsAgentsRunResponseSchema = z81.object({
|
|
11802
|
+
data: z81.array(teamInsightsCopilotWithRunsSchema),
|
|
11803
|
+
total: z81.number()
|
|
11804
|
+
});
|
|
11805
|
+
var teamInsightsMetricsResponseSchema = z81.object({
|
|
11806
|
+
runsTotal: z81.number(),
|
|
11807
|
+
completedRuns: z81.number(),
|
|
11808
|
+
sources: z81.array(teamInsightsMetricSourceSchema)
|
|
11809
|
+
});
|
|
11810
|
+
var teamInsightsUserAgentRunSchema = z81.object({
|
|
11811
|
+
id: z81.guid(),
|
|
11812
|
+
created_at: z81.string(),
|
|
11813
|
+
updated_at: z81.string(),
|
|
11814
|
+
agent_id: z81.guid(),
|
|
11815
|
+
agent_name: z81.string(),
|
|
11816
|
+
build_id: z81.guid(),
|
|
11817
|
+
source: z81.string().nullable(),
|
|
11818
|
+
started_at: z81.string().nullable(),
|
|
11819
|
+
completed_at: z81.string().nullable()
|
|
11820
|
+
});
|
|
11821
|
+
var teamInsightsAgentSchema = z81.object({
|
|
11822
|
+
id: z81.guid(),
|
|
11823
|
+
name: z81.string(),
|
|
11824
|
+
teamName: z81.string().nullable().optional(),
|
|
11825
|
+
runs: z81.array(teamInsightsUserAgentRunSchema)
|
|
11705
11826
|
});
|
|
11706
11827
|
var teamInsightsUserWithAgentsAndRunsSchema = teamInsightsUserProfileSchema.extend({
|
|
11707
|
-
agents:
|
|
11708
|
-
runs:
|
|
11709
|
-
totalRuns:
|
|
11710
|
-
});
|
|
11711
|
-
var teamInsightsUsersResponseSchema =
|
|
11712
|
-
data:
|
|
11713
|
-
total:
|
|
11714
|
-
});
|
|
11715
|
-
var guardrailsAuthorSchema =
|
|
11716
|
-
id:
|
|
11717
|
-
name:
|
|
11718
|
-
email:
|
|
11719
|
-
});
|
|
11720
|
-
var guardrailsRevisionSchema =
|
|
11721
|
-
id:
|
|
11722
|
-
teamId:
|
|
11723
|
-
guardrailsText:
|
|
11724
|
-
blockedDomains:
|
|
11725
|
-
createdAt:
|
|
11828
|
+
agents: z81.array(teamInsightsAgentSchema),
|
|
11829
|
+
runs: z81.array(teamInsightsUserAgentRunSchema),
|
|
11830
|
+
totalRuns: z81.number()
|
|
11831
|
+
});
|
|
11832
|
+
var teamInsightsUsersResponseSchema = z81.object({
|
|
11833
|
+
data: z81.array(teamInsightsUserWithAgentsAndRunsSchema),
|
|
11834
|
+
total: z81.number()
|
|
11835
|
+
});
|
|
11836
|
+
var guardrailsAuthorSchema = z82.object({
|
|
11837
|
+
id: z82.guid(),
|
|
11838
|
+
name: z82.string().nullable(),
|
|
11839
|
+
email: z82.email()
|
|
11840
|
+
});
|
|
11841
|
+
var guardrailsRevisionSchema = z82.object({
|
|
11842
|
+
id: z82.guid(),
|
|
11843
|
+
teamId: z82.guid(),
|
|
11844
|
+
guardrailsText: z82.string().nullable(),
|
|
11845
|
+
blockedDomains: z82.array(z82.string()),
|
|
11846
|
+
createdAt: z82.string(),
|
|
11726
11847
|
createdBy: guardrailsAuthorSchema
|
|
11727
11848
|
});
|
|
11728
|
-
var getTeamGuardrailsResponseSchema =
|
|
11849
|
+
var getTeamGuardrailsResponseSchema = z82.object({
|
|
11729
11850
|
current: guardrailsRevisionSchema.nullable()
|
|
11730
11851
|
});
|
|
11731
|
-
var listTeamGuardrailsRevisionsQuerySchema =
|
|
11732
|
-
limit:
|
|
11733
|
-
offset:
|
|
11852
|
+
var listTeamGuardrailsRevisionsQuerySchema = z82.object({
|
|
11853
|
+
limit: z82.coerce.number().int().min(1).max(100).default(20),
|
|
11854
|
+
offset: z82.coerce.number().int().min(0).default(0)
|
|
11734
11855
|
});
|
|
11735
|
-
var listTeamGuardrailsRevisionsResponseSchema =
|
|
11736
|
-
revisions:
|
|
11737
|
-
total:
|
|
11856
|
+
var listTeamGuardrailsRevisionsResponseSchema = z82.object({
|
|
11857
|
+
revisions: z82.array(guardrailsRevisionSchema),
|
|
11858
|
+
total: z82.number().int().nonnegative()
|
|
11738
11859
|
});
|
|
11739
|
-
var createTeamGuardrailsRevisionRequestSchema =
|
|
11740
|
-
guardrailsText:
|
|
11741
|
-
blockedDomains:
|
|
11860
|
+
var createTeamGuardrailsRevisionRequestSchema = z82.object({
|
|
11861
|
+
guardrailsText: z82.string().max(MAX_GUARDRAILS_TEXT_LENGTH).nullable().transform((value) => value && value.trim().length > 0 ? value : null),
|
|
11862
|
+
blockedDomains: z82.array(z82.string()).max(MAX_BLOCKED_DOMAINS)
|
|
11742
11863
|
});
|
|
11743
|
-
var userDismissalListResponseSchema =
|
|
11744
|
-
data:
|
|
11864
|
+
var userDismissalListResponseSchema = z83.object({
|
|
11865
|
+
data: z83.array(z83.string())
|
|
11745
11866
|
});
|
|
11746
|
-
var userDismissalMutationSchema =
|
|
11747
|
-
elementKey:
|
|
11867
|
+
var userDismissalMutationSchema = z83.object({
|
|
11868
|
+
elementKey: z83.string()
|
|
11748
11869
|
});
|
|
11749
11870
|
var PASSWORD_MIN = 1;
|
|
11750
11871
|
var PASSWORD_MAX = 1024;
|
|
11751
11872
|
var NAME_MAX = 200;
|
|
11752
11873
|
var URL_MAX = 500;
|
|
11753
11874
|
var USERNAME_MAX = 200;
|
|
11754
|
-
var vpnProxyConfigSummarySchema =
|
|
11755
|
-
id:
|
|
11756
|
-
name:
|
|
11757
|
-
server:
|
|
11758
|
-
username:
|
|
11759
|
-
enabled:
|
|
11760
|
-
passwordSet:
|
|
11761
|
-
organizationCount:
|
|
11762
|
-
createdAt:
|
|
11763
|
-
updatedAt:
|
|
11764
|
-
});
|
|
11765
|
-
var vpnProxyConfigListResponseSchema =
|
|
11766
|
-
configs:
|
|
11767
|
-
});
|
|
11768
|
-
var vpnProxyConfigCreateRequestSchema =
|
|
11769
|
-
name:
|
|
11770
|
-
server:
|
|
11771
|
-
username:
|
|
11772
|
-
password:
|
|
11773
|
-
enabled:
|
|
11774
|
-
});
|
|
11775
|
-
var vpnProxyConfigCreateResponseSchema =
|
|
11875
|
+
var vpnProxyConfigSummarySchema = z84.object({
|
|
11876
|
+
id: z84.guid(),
|
|
11877
|
+
name: z84.string(),
|
|
11878
|
+
server: z84.string(),
|
|
11879
|
+
username: z84.string(),
|
|
11880
|
+
enabled: z84.boolean(),
|
|
11881
|
+
passwordSet: z84.boolean(),
|
|
11882
|
+
organizationCount: z84.number().int().nonnegative(),
|
|
11883
|
+
createdAt: z84.string(),
|
|
11884
|
+
updatedAt: z84.string()
|
|
11885
|
+
});
|
|
11886
|
+
var vpnProxyConfigListResponseSchema = z84.object({
|
|
11887
|
+
configs: z84.array(vpnProxyConfigSummarySchema)
|
|
11888
|
+
});
|
|
11889
|
+
var vpnProxyConfigCreateRequestSchema = z84.object({
|
|
11890
|
+
name: z84.string().trim().min(1).max(NAME_MAX),
|
|
11891
|
+
server: z84.string().trim().min(1).max(URL_MAX).url(),
|
|
11892
|
+
username: z84.string().trim().min(1).max(USERNAME_MAX),
|
|
11893
|
+
password: z84.string().min(PASSWORD_MIN).max(PASSWORD_MAX),
|
|
11894
|
+
enabled: z84.boolean().prefault(true)
|
|
11895
|
+
});
|
|
11896
|
+
var vpnProxyConfigCreateResponseSchema = z84.object({
|
|
11776
11897
|
config: vpnProxyConfigSummarySchema
|
|
11777
11898
|
});
|
|
11778
|
-
var vpnProxyConfigUpdateRequestSchema =
|
|
11779
|
-
name:
|
|
11780
|
-
server:
|
|
11781
|
-
username:
|
|
11782
|
-
password:
|
|
11783
|
-
enabled:
|
|
11899
|
+
var vpnProxyConfigUpdateRequestSchema = z84.object({
|
|
11900
|
+
name: z84.string().trim().min(1).max(NAME_MAX).optional(),
|
|
11901
|
+
server: z84.string().trim().min(1).max(URL_MAX).url().optional(),
|
|
11902
|
+
username: z84.string().trim().min(1).max(USERNAME_MAX).optional(),
|
|
11903
|
+
password: z84.string().min(PASSWORD_MIN).max(PASSWORD_MAX).optional(),
|
|
11904
|
+
enabled: z84.boolean().optional()
|
|
11784
11905
|
});
|
|
11785
|
-
var vpnProxyConfigUpdateResponseSchema =
|
|
11906
|
+
var vpnProxyConfigUpdateResponseSchema = z84.object({
|
|
11786
11907
|
config: vpnProxyConfigSummarySchema
|
|
11787
11908
|
});
|
|
11788
|
-
var vpnProxyConfigDeleteResponseSchema =
|
|
11789
|
-
success:
|
|
11909
|
+
var vpnProxyConfigDeleteResponseSchema = z84.object({
|
|
11910
|
+
success: z84.literal(true)
|
|
11790
11911
|
});
|
|
11791
|
-
var vpnProxyConfigOrganizationSchema =
|
|
11792
|
-
id:
|
|
11793
|
-
organizationId:
|
|
11794
|
-
organizationName:
|
|
11795
|
-
bypassDomains:
|
|
11796
|
-
vpnEnforced:
|
|
11797
|
-
attachedAt:
|
|
11912
|
+
var vpnProxyConfigOrganizationSchema = z84.object({
|
|
11913
|
+
id: z84.guid(),
|
|
11914
|
+
organizationId: z84.guid(),
|
|
11915
|
+
organizationName: z84.string(),
|
|
11916
|
+
bypassDomains: z84.array(z84.string()),
|
|
11917
|
+
vpnEnforced: z84.boolean(),
|
|
11918
|
+
attachedAt: z84.string()
|
|
11798
11919
|
});
|
|
11799
|
-
var vpnProxyConfigOrganizationListResponseSchema =
|
|
11800
|
-
organizations:
|
|
11920
|
+
var vpnProxyConfigOrganizationListResponseSchema = z84.object({
|
|
11921
|
+
organizations: z84.array(vpnProxyConfigOrganizationSchema)
|
|
11801
11922
|
});
|
|
11802
|
-
var vpnProxyConfigAttachOrganizationRequestSchema =
|
|
11803
|
-
organizationId:
|
|
11804
|
-
bypassDomains:
|
|
11805
|
-
vpnEnforced:
|
|
11923
|
+
var vpnProxyConfigAttachOrganizationRequestSchema = z84.object({
|
|
11924
|
+
organizationId: z84.guid(),
|
|
11925
|
+
bypassDomains: z84.array(z84.string()).max(MAX_VPN_BYPASS_DOMAINS).prefault([]),
|
|
11926
|
+
vpnEnforced: z84.boolean().prefault(false)
|
|
11806
11927
|
});
|
|
11807
|
-
var vpnProxyConfigAttachOrganizationResponseSchema =
|
|
11928
|
+
var vpnProxyConfigAttachOrganizationResponseSchema = z84.object({
|
|
11808
11929
|
attachment: vpnProxyConfigOrganizationSchema
|
|
11809
11930
|
});
|
|
11810
|
-
var vpnProxyConfigDetachOrganizationResponseSchema =
|
|
11811
|
-
success:
|
|
11931
|
+
var vpnProxyConfigDetachOrganizationResponseSchema = z84.object({
|
|
11932
|
+
success: z84.literal(true)
|
|
11812
11933
|
});
|
|
11813
|
-
var vpnProxyConfigForOrganizationAttachmentSchema =
|
|
11814
|
-
bypassDomains:
|
|
11815
|
-
vpnEnforced:
|
|
11934
|
+
var vpnProxyConfigForOrganizationAttachmentSchema = z84.object({
|
|
11935
|
+
bypassDomains: z84.array(z84.string()),
|
|
11936
|
+
vpnEnforced: z84.boolean()
|
|
11816
11937
|
});
|
|
11817
|
-
var vpnProxyConfigForOrganizationResponseSchema =
|
|
11938
|
+
var vpnProxyConfigForOrganizationResponseSchema = z84.object({
|
|
11818
11939
|
config: vpnProxyConfigSummarySchema.nullable(),
|
|
11819
11940
|
attachment: vpnProxyConfigForOrganizationAttachmentSchema.nullable()
|
|
11820
11941
|
});
|
|
11821
|
-
var vpnProxyConfigUpdateOrganizationPolicyRequestSchema =
|
|
11822
|
-
bypassDomains:
|
|
11823
|
-
vpnEnforced:
|
|
11942
|
+
var vpnProxyConfigUpdateOrganizationPolicyRequestSchema = z84.object({
|
|
11943
|
+
bypassDomains: z84.array(z84.string()).max(MAX_VPN_BYPASS_DOMAINS).optional(),
|
|
11944
|
+
vpnEnforced: z84.boolean().optional()
|
|
11824
11945
|
});
|
|
11825
|
-
var vpnProxyConfigUpdateOrganizationPolicyResponseSchema =
|
|
11946
|
+
var vpnProxyConfigUpdateOrganizationPolicyResponseSchema = z84.object({
|
|
11826
11947
|
attachment: vpnProxyConfigOrganizationSchema
|
|
11827
11948
|
});
|
|
11949
|
+
var workflowExecutionReportSchema = z85.object({
|
|
11950
|
+
agentRunId: z85.string(),
|
|
11951
|
+
provider: z85.string().nullable(),
|
|
11952
|
+
expectedProgrammatic: z85.number(),
|
|
11953
|
+
totalSteps: z85.number(),
|
|
11954
|
+
executedSteps: z85.number(),
|
|
11955
|
+
calls: z85.number(),
|
|
11956
|
+
executions: z85.number(),
|
|
11957
|
+
handoffs: z85.number(),
|
|
11958
|
+
errors: z85.number(),
|
|
11959
|
+
stopReasons: z85.array(z85.string()),
|
|
11960
|
+
reachedCompletion: z85.boolean(),
|
|
11961
|
+
programmaticExecutionRate: z85.number()
|
|
11962
|
+
});
|
|
11828
11963
|
function canonicalizeSopInput(config) {
|
|
11829
11964
|
const { input } = config.data;
|
|
11830
11965
|
if (typeof input !== "string") {
|
|
@@ -11844,13 +11979,24 @@ function canonicalizeSopInput(config) {
|
|
|
11844
11979
|
__name(canonicalizeSopInput, "canonicalizeSopInput");
|
|
11845
11980
|
__name2(canonicalizeSopInput, "canonicalizeSopInput");
|
|
11846
11981
|
var casePriorityFilterSchema = casePrioritySchema;
|
|
11847
|
-
var
|
|
11982
|
+
var CASE_FILTER_STATUS_BUCKETS = [
|
|
11983
|
+
"all",
|
|
11848
11984
|
"pending",
|
|
11985
|
+
"processing",
|
|
11986
|
+
"needs_input",
|
|
11987
|
+
"postponed",
|
|
11988
|
+
"needs_review",
|
|
11989
|
+
"resolved",
|
|
11990
|
+
"canceled"
|
|
11991
|
+
];
|
|
11992
|
+
var CASE_FILTER_STATUS_LEGACY = [
|
|
11849
11993
|
"claimed",
|
|
11850
11994
|
"completed",
|
|
11851
|
-
"failed"
|
|
11852
|
-
|
|
11853
|
-
|
|
11995
|
+
"failed"
|
|
11996
|
+
];
|
|
11997
|
+
var caseFilterStatusSchema = z86.enum([
|
|
11998
|
+
...CASE_FILTER_STATUS_BUCKETS,
|
|
11999
|
+
...CASE_FILTER_STATUS_LEGACY
|
|
11854
12000
|
]);
|
|
11855
12001
|
var casesFiltersSchema = z86.object({
|
|
11856
12002
|
status: z86.array(caseFilterStatusSchema).optional(),
|
|
@@ -18644,7 +18790,7 @@ var TABLE_COLUMNS18 = [
|
|
|
18644
18790
|
function registerCasesList(cases) {
|
|
18645
18791
|
cases.command("list", { isDefault: true }).description("List cases in a queue").requiredOption("--queue <id>", "ID of the queue to list cases for").option("--limit <n>", `page size (${MIN_LIMIT3}-${MAX_LIMIT3})`).option("--offset <n>", "number of cases to skip").option(
|
|
18646
18792
|
"--status <statuses>",
|
|
18647
|
-
`comma-separated
|
|
18793
|
+
`comma-separated status buckets (${CASE_FILTER_STATUS_BUCKETS.join(", ")})`
|
|
18648
18794
|
).option(
|
|
18649
18795
|
"--priority <levels>",
|
|
18650
18796
|
`comma-separated priority levels (${casePriorityFilterSchema.options.join(", ")})`
|
|
@@ -18730,14 +18876,14 @@ function parseStatuses(raw) {
|
|
|
18730
18876
|
const parts = raw.split(",").map((s) => s.trim()).filter((s) => s.length > 0);
|
|
18731
18877
|
if (parts.length === 0) {
|
|
18732
18878
|
throw new CliError(
|
|
18733
|
-
`Invalid --status value "${raw}". Allowed: ${
|
|
18879
|
+
`Invalid --status value "${raw}". Allowed: ${CASE_FILTER_STATUS_BUCKETS.join(", ")}.`
|
|
18734
18880
|
);
|
|
18735
18881
|
}
|
|
18736
18882
|
const allowed = new Set(caseFilterStatusSchema.options);
|
|
18737
18883
|
const invalid = parts.filter((p) => !allowed.has(p));
|
|
18738
18884
|
if (invalid.length > 0) {
|
|
18739
18885
|
throw new CliError(
|
|
18740
|
-
`Invalid --status value(s): ${invalid.join(", ")}. Allowed: ${
|
|
18886
|
+
`Invalid --status value(s): ${invalid.join(", ")}. Allowed: ${CASE_FILTER_STATUS_BUCKETS.join(", ")}.`
|
|
18741
18887
|
);
|
|
18742
18888
|
}
|
|
18743
18889
|
return parts;
|
|
@@ -26708,6 +26854,12 @@ function registerOauthMcpAuthorize(mcp) {
|
|
|
26708
26854
|
).option(
|
|
26709
26855
|
"--reconnect-instance-id <id>",
|
|
26710
26856
|
"GUID of an existing connection to reconnect (re-authorize) rather than create a new one"
|
|
26857
|
+
).option(
|
|
26858
|
+
"--oauth-client-id <id>",
|
|
26859
|
+
"OAuth client ID of a client you registered on the authorization server yourself (e.g. a NetSuite Integration record); skips Dynamic Client Registration"
|
|
26860
|
+
).option(
|
|
26861
|
+
"--oauth-client-secret <secret>",
|
|
26862
|
+
"client secret for --oauth-client-id; omit for public clients (PKCE-only)"
|
|
26711
26863
|
).option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function authorizeMcpAction(options) {
|
|
26712
26864
|
const config = await requireAuthenticatedConfig(this);
|
|
26713
26865
|
const { apiKey, apiBaseUrl } = config;
|
|
@@ -26752,6 +26904,25 @@ function registerOauthMcpAuthorize(mcp) {
|
|
|
26752
26904
|
}
|
|
26753
26905
|
body.reconnect_instance_id = trimmed;
|
|
26754
26906
|
}
|
|
26907
|
+
if (options.oauthClientId !== void 0) {
|
|
26908
|
+
const trimmed = options.oauthClientId.trim();
|
|
26909
|
+
if (trimmed.length === 0) {
|
|
26910
|
+
throw new CliError("--oauth-client-id must not be empty");
|
|
26911
|
+
}
|
|
26912
|
+
body.oauth_client_id = trimmed;
|
|
26913
|
+
}
|
|
26914
|
+
if (options.oauthClientSecret !== void 0) {
|
|
26915
|
+
if (body.oauth_client_id === void 0) {
|
|
26916
|
+
throw new CliError(
|
|
26917
|
+
"--oauth-client-secret requires --oauth-client-id"
|
|
26918
|
+
);
|
|
26919
|
+
}
|
|
26920
|
+
const trimmed = options.oauthClientSecret.trim();
|
|
26921
|
+
if (trimmed.length === 0) {
|
|
26922
|
+
throw new CliError("--oauth-client-secret must not be empty");
|
|
26923
|
+
}
|
|
26924
|
+
body.oauth_client_secret = trimmed;
|
|
26925
|
+
}
|
|
26755
26926
|
const raw = await httpRequest({
|
|
26756
26927
|
method: "POST",
|
|
26757
26928
|
path: buildTeamPath(teamId, "/connections/oauth/mcp/start"),
|
|
@@ -32632,7 +32803,7 @@ __name(isStandaloneBinary, "isStandaloneBinary");
|
|
|
32632
32803
|
import { createRequire } from "node:module";
|
|
32633
32804
|
function getPackageMeta() {
|
|
32634
32805
|
if (true) {
|
|
32635
|
-
return { name: "@duvoai/cli", version: "1.
|
|
32806
|
+
return { name: "@duvoai/cli", version: "1.35.1" };
|
|
32636
32807
|
}
|
|
32637
32808
|
const require2 = createRequire(import.meta.url);
|
|
32638
32809
|
const raw = require2("../../package.json");
|