@vm0/cli 9.150.5 → 9.150.6
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.
|
@@ -74083,7 +74083,7 @@ if (DSN) {
|
|
|
74083
74083
|
init2({
|
|
74084
74084
|
dsn: DSN,
|
|
74085
74085
|
environment: process.env.SENTRY_ENVIRONMENT ?? "production",
|
|
74086
|
-
release: "9.150.
|
|
74086
|
+
release: "9.150.6",
|
|
74087
74087
|
sendDefaultPii: false,
|
|
74088
74088
|
tracesSampleRate: 0,
|
|
74089
74089
|
shutdownTimeout: 500,
|
|
@@ -74102,7 +74102,7 @@ if (DSN) {
|
|
|
74102
74102
|
}
|
|
74103
74103
|
});
|
|
74104
74104
|
setContext("cli", {
|
|
74105
|
-
version: "9.150.
|
|
74105
|
+
version: "9.150.6",
|
|
74106
74106
|
command: process.argv.slice(2).join(" ")
|
|
74107
74107
|
});
|
|
74108
74108
|
setContext("runtime", {
|
|
@@ -95787,6 +95787,7 @@ var MODEL_PROVIDER_TYPES = {
|
|
|
95787
95787
|
CLAUDE_CODE_SUBAGENT_MODEL: "$model"
|
|
95788
95788
|
},
|
|
95789
95789
|
models: [
|
|
95790
|
+
"anthropic/claude-opus-4.7",
|
|
95790
95791
|
"anthropic/claude-opus-4.6",
|
|
95791
95792
|
"anthropic/claude-opus-4.5",
|
|
95792
95793
|
"anthropic/claude-sonnet-4.6",
|
|
@@ -95799,6 +95800,53 @@ var MODEL_PROVIDER_TYPES = {
|
|
|
95799
95800
|
],
|
|
95800
95801
|
defaultModel: "anthropic/claude-sonnet-4.6"
|
|
95801
95802
|
},
|
|
95803
|
+
// Codex-framework twin of openrouter-api-key. Same upstream gateway (OpenRouter)
|
|
95804
|
+
// and same API key (shared secretName), but routes through OpenRouter's
|
|
95805
|
+
// OpenAI-compatible endpoint surface for GPT models that codex CLI requires.
|
|
95806
|
+
// Pairing rule: the claude-code entry serves Anthropic Messages API
|
|
95807
|
+
// (/v1/messages); this codex entry serves OpenAI Chat Completions / Responses
|
|
95808
|
+
// (/v1/chat/completions, /v1/responses) under the same /api/v1 prefix.
|
|
95809
|
+
"openrouter-codex": {
|
|
95810
|
+
framework: "codex",
|
|
95811
|
+
secretName: "OPENROUTER_API_KEY",
|
|
95812
|
+
label: "OpenRouter (Codex)",
|
|
95813
|
+
secretLabel: "API key",
|
|
95814
|
+
helpText: "Get your API key at: https://openrouter.ai/settings/keys",
|
|
95815
|
+
environmentMapping: {
|
|
95816
|
+
OPENAI_API_KEY: "$secret",
|
|
95817
|
+
OPENAI_BASE_URL: "https://openrouter.ai/api/v1",
|
|
95818
|
+
OPENAI_MODEL: "$model"
|
|
95819
|
+
},
|
|
95820
|
+
models: [
|
|
95821
|
+
"openai/gpt-5.5",
|
|
95822
|
+
"openai/gpt-5.4",
|
|
95823
|
+
"openai/gpt-5.4-mini"
|
|
95824
|
+
],
|
|
95825
|
+
defaultModel: "openai/gpt-5.5"
|
|
95826
|
+
},
|
|
95827
|
+
// Codex-framework twin of vercel-ai-gateway. Vercel exposes both
|
|
95828
|
+
// Anthropic Messages and OpenAI Chat Completions / Responses on the same
|
|
95829
|
+
// base URL, distinguished by path. The claude-code entry uses /v1/messages;
|
|
95830
|
+
// this codex entry uses /v1/chat/completions or /v1/responses (codex CLI
|
|
95831
|
+
// picks the path it needs).
|
|
95832
|
+
"vercel-ai-gateway-codex": {
|
|
95833
|
+
framework: "codex",
|
|
95834
|
+
secretName: "VERCEL_AI_GATEWAY_API_KEY",
|
|
95835
|
+
label: "Vercel AI Gateway (Codex)",
|
|
95836
|
+
secretLabel: "API key",
|
|
95837
|
+
helpText: "Get your API key from the Vercel AI Gateway dashboard",
|
|
95838
|
+
environmentMapping: {
|
|
95839
|
+
OPENAI_API_KEY: "$secret",
|
|
95840
|
+
OPENAI_BASE_URL: "https://ai-gateway.vercel.sh/v1",
|
|
95841
|
+
OPENAI_MODEL: "$model"
|
|
95842
|
+
},
|
|
95843
|
+
models: [
|
|
95844
|
+
"openai/gpt-5.5",
|
|
95845
|
+
"openai/gpt-5.4",
|
|
95846
|
+
"openai/gpt-5.4-mini"
|
|
95847
|
+
],
|
|
95848
|
+
defaultModel: "openai/gpt-5.5"
|
|
95849
|
+
},
|
|
95802
95850
|
"openai-api-key": {
|
|
95803
95851
|
framework: "codex",
|
|
95804
95852
|
secretName: "OPENAI_API_KEY",
|
|
@@ -96029,6 +96077,10 @@ function getFirewallBaseUrl(type) {
|
|
|
96029
96077
|
return "https://chatgpt.com/backend-api/codex";
|
|
96030
96078
|
}
|
|
96031
96079
|
if (getFrameworkForType(type) === "codex") {
|
|
96080
|
+
const overrideBase = getEnvironmentMapping(type)?.OPENAI_BASE_URL;
|
|
96081
|
+
if (overrideBase) {
|
|
96082
|
+
return overrideBase.replace(/\/+$/, "");
|
|
96083
|
+
}
|
|
96032
96084
|
return "https://api.openai.com/v1/responses";
|
|
96033
96085
|
}
|
|
96034
96086
|
const base = (getEnvironmentMapping(type)?.ANTHROPIC_BASE_URL ?? ANTHROPIC_API_BASE).replace(/\/+$/, "");
|
|
@@ -96114,6 +96166,25 @@ var MODEL_PROVIDER_FIREWALL_CONFIGS = {
|
|
|
96114
96166
|
{ name: "Authorization", valuePrefix: "Bearer" },
|
|
96115
96167
|
"sk-CoffeeSafeLocalCoffeeSafeLocalCo"
|
|
96116
96168
|
),
|
|
96169
|
+
// Codex-framework twin of openrouter-api-key. Same key shape as the
|
|
96170
|
+
// claude-code entry; the difference is the firewall base URL — codex
|
|
96171
|
+
// SDK hits OpenAI-compatible paths (/chat/completions, /responses)
|
|
96172
|
+
// under https://openrouter.ai/api/v1, derived from the OPENAI_BASE_URL
|
|
96173
|
+
// mapping by getFirewallBaseUrl.
|
|
96174
|
+
"openrouter-codex": mpFirewall(
|
|
96175
|
+
"openrouter-codex",
|
|
96176
|
+
{ name: "Authorization", valuePrefix: "Bearer" },
|
|
96177
|
+
"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"
|
|
96178
|
+
),
|
|
96179
|
+
// Codex-framework twin of vercel-ai-gateway. Same placeholder format
|
|
96180
|
+
// (Vercel gateway proxies upstream); base URL scoped to /v1 prefix by
|
|
96181
|
+
// getFirewallBaseUrl so codex can use either /chat/completions or
|
|
96182
|
+
// /responses paths the gateway exposes.
|
|
96183
|
+
"vercel-ai-gateway-codex": mpFirewall(
|
|
96184
|
+
"vercel-ai-gateway-codex",
|
|
96185
|
+
{ name: "Authorization", valuePrefix: "Bearer" },
|
|
96186
|
+
"sk-CoffeeSafeLocalCoffeeSafeLocalCo"
|
|
96187
|
+
),
|
|
96117
96188
|
// Placeholder: sk-proj-{156 chars}T3BlbkFJ{156 chars} (typical project key shape)
|
|
96118
96189
|
// Source: matches turbo/packages/connectors/src/firewalls/openai.generated.ts
|
|
96119
96190
|
"openai-api-key": mpFirewall(
|
|
@@ -96190,6 +96261,8 @@ var modelProviderTypeSchema = external_exports.enum([
|
|
|
96190
96261
|
"deepseek-api-key",
|
|
96191
96262
|
"zai-api-key",
|
|
96192
96263
|
"vercel-ai-gateway",
|
|
96264
|
+
"openrouter-codex",
|
|
96265
|
+
"vercel-ai-gateway-codex",
|
|
96193
96266
|
"openai-api-key",
|
|
96194
96267
|
"codex-oauth-token",
|
|
96195
96268
|
"azure-foundry",
|
|
@@ -104403,17 +104476,229 @@ init_esm_shims();
|
|
|
104403
104476
|
|
|
104404
104477
|
// ../../packages/api-contracts/src/contracts/webhooks.ts
|
|
104405
104478
|
init_esm_shims();
|
|
104479
|
+
|
|
104480
|
+
// ../../packages/api-contracts/src/contracts/runners.ts
|
|
104481
|
+
init_esm_shims();
|
|
104406
104482
|
var c19 = initContract();
|
|
104483
|
+
var runnerGroupSchema = external_exports.string().regex(
|
|
104484
|
+
/^[a-z0-9-]+\/[a-z0-9-]+$/,
|
|
104485
|
+
"Runner group must be in vm0/<name> format (e.g., vm0/production)"
|
|
104486
|
+
);
|
|
104487
|
+
var jobSchema = external_exports.object({
|
|
104488
|
+
runId: external_exports.uuid(),
|
|
104489
|
+
prompt: external_exports.string(),
|
|
104490
|
+
appendSystemPrompt: external_exports.string().nullable(),
|
|
104491
|
+
agentComposeVersionId: external_exports.string().nullable(),
|
|
104492
|
+
vars: external_exports.record(external_exports.string(), external_exports.string()).nullable(),
|
|
104493
|
+
checkpointId: external_exports.uuid().nullable(),
|
|
104494
|
+
experimentalProfile: external_exports.string().optional()
|
|
104495
|
+
});
|
|
104496
|
+
var runnersPollContract = c19.router({
|
|
104497
|
+
poll: {
|
|
104498
|
+
method: "POST",
|
|
104499
|
+
path: "/api/runners/poll",
|
|
104500
|
+
headers: authHeadersSchema,
|
|
104501
|
+
body: external_exports.object({
|
|
104502
|
+
group: runnerGroupSchema,
|
|
104503
|
+
profiles: external_exports.array(external_exports.string()).optional(),
|
|
104504
|
+
heldSessions: external_exports.array(external_exports.string()).max(100).optional()
|
|
104505
|
+
}),
|
|
104506
|
+
responses: {
|
|
104507
|
+
200: external_exports.object({
|
|
104508
|
+
job: jobSchema.nullable()
|
|
104509
|
+
}),
|
|
104510
|
+
400: apiErrorSchema,
|
|
104511
|
+
401: apiErrorSchema,
|
|
104512
|
+
500: apiErrorSchema
|
|
104513
|
+
},
|
|
104514
|
+
summary: "Poll for pending jobs (long-polling with 30s timeout)"
|
|
104515
|
+
}
|
|
104516
|
+
});
|
|
104517
|
+
var storageEntrySchema = external_exports.object({
|
|
104518
|
+
name: external_exports.string(),
|
|
104519
|
+
mountPath: external_exports.string(),
|
|
104520
|
+
vasStorageName: external_exports.string(),
|
|
104521
|
+
vasVersionId: external_exports.string(),
|
|
104522
|
+
instructionsTargetFilename: external_exports.string().optional(),
|
|
104523
|
+
archiveUrl: external_exports.string()
|
|
104524
|
+
});
|
|
104525
|
+
var artifactEntrySchema = external_exports.object({
|
|
104526
|
+
mountPath: external_exports.string(),
|
|
104527
|
+
vasStorageName: external_exports.string(),
|
|
104528
|
+
vasStorageId: external_exports.string(),
|
|
104529
|
+
vasVersionId: external_exports.string(),
|
|
104530
|
+
archiveUrl: external_exports.string(),
|
|
104531
|
+
manifestUrl: external_exports.string().optional()
|
|
104532
|
+
});
|
|
104533
|
+
var storageManifestSchema = external_exports.object({
|
|
104534
|
+
storages: external_exports.array(storageEntrySchema),
|
|
104535
|
+
artifacts: external_exports.array(artifactEntrySchema)
|
|
104536
|
+
});
|
|
104537
|
+
var resumeSessionSchema = external_exports.object({
|
|
104538
|
+
sessionId: external_exports.string(),
|
|
104539
|
+
sessionHistory: external_exports.string()
|
|
104540
|
+
});
|
|
104541
|
+
var secretConnectorMetadataSchema = external_exports.object({
|
|
104542
|
+
sourceType: external_exports.enum(["connector", "model-provider"]),
|
|
104543
|
+
sourceUserId: external_exports.string().optional(),
|
|
104544
|
+
metadataKey: external_exports.string().optional()
|
|
104545
|
+
});
|
|
104546
|
+
var secretConnectorMetadataMapSchema = external_exports.record(
|
|
104547
|
+
external_exports.string(),
|
|
104548
|
+
secretConnectorMetadataSchema
|
|
104549
|
+
);
|
|
104550
|
+
var storedExecutionContextSchema = external_exports.object({
|
|
104551
|
+
workingDir: external_exports.string(),
|
|
104552
|
+
storageManifest: storageManifestSchema.nullable(),
|
|
104553
|
+
environment: external_exports.record(external_exports.string(), external_exports.string()).nullable(),
|
|
104554
|
+
resumeSession: resumeSessionSchema.nullable(),
|
|
104555
|
+
encryptedSecrets: external_exports.string().nullable(),
|
|
104556
|
+
// AES-256-GCM encrypted Record<string, string> (secret name → value)
|
|
104557
|
+
// Maps secret names to OAuth connector types for runtime token refresh (e.g. { "GMAIL_ACCESS_TOKEN": "gmail" })
|
|
104558
|
+
secretConnectorMap: external_exports.record(external_exports.string(), external_exports.string()).nullable().optional(),
|
|
104559
|
+
// Per-secret refresh metadata, used when a handler needs owner-specific storage (e.g. personal model providers)
|
|
104560
|
+
secretConnectorMetadataMap: secretConnectorMetadataMapSchema.nullable().optional(),
|
|
104561
|
+
cliAgentType: external_exports.string(),
|
|
104562
|
+
// Debug flag to force real Claude in mock environments (internal use only)
|
|
104563
|
+
debugNoMockClaude: external_exports.boolean().optional(),
|
|
104564
|
+
// Debug flag to force real Codex in mock environments (internal use only)
|
|
104565
|
+
debugNoMockCodex: external_exports.boolean().optional(),
|
|
104566
|
+
// Capture HTTP request headers, request bodies, and response bodies in network logs
|
|
104567
|
+
captureNetworkBodies: external_exports.boolean().optional(),
|
|
104568
|
+
// Dispatch timestamp for E2E timing metrics
|
|
104569
|
+
apiStartTime: external_exports.number().optional(),
|
|
104570
|
+
// User's timezone preference (IANA format, e.g., "Asia/Shanghai")
|
|
104571
|
+
userTimezone: external_exports.string().optional(),
|
|
104572
|
+
// Firewall for proxy-side token replacement (complete config, all permissions)
|
|
104573
|
+
firewalls: firewallsSchema.optional(),
|
|
104574
|
+
// Per-firewall network policies: which permissions are granted + unknownPolicy
|
|
104575
|
+
networkPolicies: networkPoliciesSchema.optional(),
|
|
104576
|
+
// Tools to disable in Claude CLI (passed as --disallowed-tools)
|
|
104577
|
+
disallowedTools: external_exports.array(external_exports.string()).optional(),
|
|
104578
|
+
// Tools to make available in Claude CLI (passed as --tools)
|
|
104579
|
+
tools: external_exports.array(external_exports.string()).optional(),
|
|
104580
|
+
// Settings JSON to pass to Claude CLI (passed as --settings)
|
|
104581
|
+
settings: external_exports.string().optional(),
|
|
104582
|
+
// VM profile for resource allocation (e.g., "vm0/default")
|
|
104583
|
+
experimentalProfile: external_exports.string().optional(),
|
|
104584
|
+
// Feature flags evaluated at job creation time (all switch states for user/org)
|
|
104585
|
+
featureFlags: external_exports.record(external_exports.string(), external_exports.boolean()).optional(),
|
|
104586
|
+
billableFirewalls: external_exports.array(external_exports.string()).optional(),
|
|
104587
|
+
modelUsageProvider: external_exports.string().optional()
|
|
104588
|
+
});
|
|
104589
|
+
var executionContextSchema = external_exports.object({
|
|
104590
|
+
runId: external_exports.uuid(),
|
|
104591
|
+
prompt: external_exports.string(),
|
|
104592
|
+
appendSystemPrompt: external_exports.string().nullable(),
|
|
104593
|
+
agentComposeVersionId: external_exports.string().nullable(),
|
|
104594
|
+
vars: external_exports.record(external_exports.string(), external_exports.string()).nullable(),
|
|
104595
|
+
checkpointId: external_exports.uuid().nullable(),
|
|
104596
|
+
sandboxToken: external_exports.string(),
|
|
104597
|
+
// New fields for E2B parity:
|
|
104598
|
+
workingDir: external_exports.string(),
|
|
104599
|
+
storageManifest: storageManifestSchema.nullable(),
|
|
104600
|
+
environment: external_exports.record(external_exports.string(), external_exports.string()).nullable(),
|
|
104601
|
+
resumeSession: resumeSessionSchema.nullable(),
|
|
104602
|
+
secretValues: external_exports.array(external_exports.string()).nullable(),
|
|
104603
|
+
// AES-256-GCM encrypted Record<string, string> — passed through to mitm-addon for auth resolution
|
|
104604
|
+
encryptedSecrets: external_exports.string().nullable(),
|
|
104605
|
+
// Maps secret names to OAuth connector types for runtime token refresh
|
|
104606
|
+
secretConnectorMap: external_exports.record(external_exports.string(), external_exports.string()).nullable().optional(),
|
|
104607
|
+
// Per-secret refresh metadata, used when a handler needs owner-specific storage (e.g. personal model providers)
|
|
104608
|
+
secretConnectorMetadataMap: secretConnectorMetadataMapSchema.nullable().optional(),
|
|
104609
|
+
cliAgentType: external_exports.string(),
|
|
104610
|
+
// Debug flag to force real Claude in mock environments (internal use only)
|
|
104611
|
+
debugNoMockClaude: external_exports.boolean().optional(),
|
|
104612
|
+
// Debug flag to force real Codex in mock environments (internal use only)
|
|
104613
|
+
debugNoMockCodex: external_exports.boolean().optional(),
|
|
104614
|
+
// Capture HTTP request headers, request bodies, and response bodies in network logs
|
|
104615
|
+
captureNetworkBodies: external_exports.boolean().optional(),
|
|
104616
|
+
// Dispatch timestamp for E2E timing metrics
|
|
104617
|
+
apiStartTime: external_exports.number().optional(),
|
|
104618
|
+
// User's timezone preference (IANA format, e.g., "Asia/Shanghai")
|
|
104619
|
+
userTimezone: external_exports.string().optional(),
|
|
104620
|
+
// Firewall for proxy-side token replacement (complete config, all permissions)
|
|
104621
|
+
firewalls: firewallsSchema.optional(),
|
|
104622
|
+
// Per-firewall network policies: which permissions are granted + unknownPolicy
|
|
104623
|
+
networkPolicies: networkPoliciesSchema.optional(),
|
|
104624
|
+
// Tools to disable in Claude CLI (passed as --disallowed-tools)
|
|
104625
|
+
disallowedTools: external_exports.array(external_exports.string()).optional(),
|
|
104626
|
+
// Tools to make available in Claude CLI (passed as --tools)
|
|
104627
|
+
tools: external_exports.array(external_exports.string()).optional(),
|
|
104628
|
+
// Settings JSON to pass to Claude CLI (passed as --settings)
|
|
104629
|
+
settings: external_exports.string().optional(),
|
|
104630
|
+
// VM profile for resource allocation (e.g., "vm0/default")
|
|
104631
|
+
experimentalProfile: external_exports.string().optional(),
|
|
104632
|
+
// Feature flags evaluated at job creation time (all switch states for user/org)
|
|
104633
|
+
featureFlags: external_exports.record(external_exports.string(), external_exports.boolean()).optional(),
|
|
104634
|
+
billableFirewalls: external_exports.array(external_exports.string()).optional(),
|
|
104635
|
+
modelUsageProvider: external_exports.string().optional()
|
|
104636
|
+
});
|
|
104637
|
+
var runnersJobClaimContract = c19.router({
|
|
104638
|
+
claim: {
|
|
104639
|
+
method: "POST",
|
|
104640
|
+
path: "/api/runners/jobs/:id/claim",
|
|
104641
|
+
headers: authHeadersSchema,
|
|
104642
|
+
pathParams: external_exports.object({
|
|
104643
|
+
id: external_exports.uuid()
|
|
104644
|
+
}),
|
|
104645
|
+
body: external_exports.object({}),
|
|
104646
|
+
responses: {
|
|
104647
|
+
200: executionContextSchema,
|
|
104648
|
+
400: apiErrorSchema,
|
|
104649
|
+
401: apiErrorSchema,
|
|
104650
|
+
403: apiErrorSchema,
|
|
104651
|
+
// Job does not belong to user
|
|
104652
|
+
404: apiErrorSchema,
|
|
104653
|
+
409: apiErrorSchema,
|
|
104654
|
+
// Already claimed
|
|
104655
|
+
500: apiErrorSchema
|
|
104656
|
+
},
|
|
104657
|
+
summary: "Claim a pending job for execution"
|
|
104658
|
+
}
|
|
104659
|
+
});
|
|
104660
|
+
var heartbeatBodySchema = external_exports.object({
|
|
104661
|
+
runnerId: external_exports.uuid(),
|
|
104662
|
+
runnerName: external_exports.string(),
|
|
104663
|
+
group: runnerGroupSchema,
|
|
104664
|
+
profiles: external_exports.array(external_exports.string()),
|
|
104665
|
+
totalVcpu: external_exports.number().int().nonnegative(),
|
|
104666
|
+
totalMemoryMb: external_exports.number().int().nonnegative(),
|
|
104667
|
+
maxConcurrent: external_exports.number().int().nonnegative(),
|
|
104668
|
+
allocatedVcpu: external_exports.number().int().nonnegative(),
|
|
104669
|
+
allocatedMemoryMb: external_exports.number().int().nonnegative(),
|
|
104670
|
+
runningCount: external_exports.number().int().nonnegative(),
|
|
104671
|
+
heldSessions: external_exports.array(external_exports.string()),
|
|
104672
|
+
mode: external_exports.enum(["running", "draining", "stopping"])
|
|
104673
|
+
});
|
|
104674
|
+
var runnersHeartbeatContract = c19.router({
|
|
104675
|
+
heartbeat: {
|
|
104676
|
+
method: "POST",
|
|
104677
|
+
path: "/api/runners/heartbeat",
|
|
104678
|
+
headers: authHeadersSchema,
|
|
104679
|
+
body: heartbeatBodySchema,
|
|
104680
|
+
responses: {
|
|
104681
|
+
200: external_exports.object({ ok: external_exports.literal(true) }),
|
|
104682
|
+
400: apiErrorSchema,
|
|
104683
|
+
401: apiErrorSchema,
|
|
104684
|
+
500: apiErrorSchema
|
|
104685
|
+
},
|
|
104686
|
+
summary: "Report runner heartbeat with capacity and state"
|
|
104687
|
+
}
|
|
104688
|
+
});
|
|
104689
|
+
|
|
104690
|
+
// ../../packages/api-contracts/src/contracts/webhooks.ts
|
|
104691
|
+
var c20 = initContract();
|
|
104407
104692
|
var thirdPartyWebhookErrorSchema = external_exports.object({ error: external_exports.string() });
|
|
104408
104693
|
var thirdPartyWebhookOkSchema = external_exports.union([
|
|
104409
104694
|
external_exports.string(),
|
|
104410
104695
|
external_exports.object({ message: external_exports.literal("pong") })
|
|
104411
104696
|
]);
|
|
104412
|
-
var webhookClerkContract =
|
|
104697
|
+
var webhookClerkContract = c20.router({
|
|
104413
104698
|
post: {
|
|
104414
104699
|
method: "POST",
|
|
104415
104700
|
path: "/api/webhooks/clerk",
|
|
104416
|
-
body:
|
|
104701
|
+
body: c20.type(),
|
|
104417
104702
|
responses: {
|
|
104418
104703
|
200: thirdPartyWebhookOkSchema,
|
|
104419
104704
|
401: thirdPartyWebhookErrorSchema
|
|
@@ -104421,11 +104706,11 @@ var webhookClerkContract = c19.router({
|
|
|
104421
104706
|
summary: "Handle Clerk organization and user webhooks"
|
|
104422
104707
|
}
|
|
104423
104708
|
});
|
|
104424
|
-
var webhookGithubContract =
|
|
104709
|
+
var webhookGithubContract = c20.router({
|
|
104425
104710
|
post: {
|
|
104426
104711
|
method: "POST",
|
|
104427
104712
|
path: "/api/webhooks/github",
|
|
104428
|
-
body:
|
|
104713
|
+
body: c20.type(),
|
|
104429
104714
|
responses: {
|
|
104430
104715
|
200: thirdPartyWebhookOkSchema,
|
|
104431
104716
|
400: thirdPartyWebhookErrorSchema,
|
|
@@ -104435,11 +104720,11 @@ var webhookGithubContract = c19.router({
|
|
|
104435
104720
|
summary: "Handle GitHub App webhooks"
|
|
104436
104721
|
}
|
|
104437
104722
|
});
|
|
104438
|
-
var webhookStripeContract =
|
|
104723
|
+
var webhookStripeContract = c20.router({
|
|
104439
104724
|
post: {
|
|
104440
104725
|
method: "POST",
|
|
104441
104726
|
path: "/api/webhooks/stripe",
|
|
104442
|
-
body:
|
|
104727
|
+
body: c20.type(),
|
|
104443
104728
|
responses: {
|
|
104444
104729
|
200: thirdPartyWebhookOkSchema,
|
|
104445
104730
|
401: thirdPartyWebhookErrorSchema,
|
|
@@ -104470,7 +104755,54 @@ var artifactSnapshotsSchema2 = external_exports.array(
|
|
|
104470
104755
|
var volumeVersionsSnapshotSchema2 = external_exports.object({
|
|
104471
104756
|
versions: external_exports.record(external_exports.string(), external_exports.string())
|
|
104472
104757
|
});
|
|
104473
|
-
var
|
|
104758
|
+
var firewallAuthErrorSchema = external_exports.object({
|
|
104759
|
+
error: external_exports.object({
|
|
104760
|
+
message: external_exports.string(),
|
|
104761
|
+
code: external_exports.string(),
|
|
104762
|
+
connectors: external_exports.array(external_exports.string()).optional()
|
|
104763
|
+
})
|
|
104764
|
+
});
|
|
104765
|
+
var firewallAuthResponseSchema = external_exports.object({
|
|
104766
|
+
headers: external_exports.record(external_exports.string(), external_exports.string()),
|
|
104767
|
+
base: external_exports.string().optional(),
|
|
104768
|
+
query: external_exports.record(external_exports.string(), external_exports.string()).optional(),
|
|
104769
|
+
expiresAt: external_exports.number().nullable(),
|
|
104770
|
+
resolvedSecrets: external_exports.array(external_exports.string()),
|
|
104771
|
+
refreshedConnectors: external_exports.array(external_exports.string()),
|
|
104772
|
+
refreshedSecrets: external_exports.array(external_exports.string())
|
|
104773
|
+
});
|
|
104774
|
+
var webhookFirewallAuthContract = c20.router({
|
|
104775
|
+
/**
|
|
104776
|
+
* POST /api/webhooks/agent/firewall/auth
|
|
104777
|
+
* Resolve firewall auth templates and refresh OAuth tokens on demand.
|
|
104778
|
+
*/
|
|
104779
|
+
resolve: {
|
|
104780
|
+
method: "POST",
|
|
104781
|
+
path: "/api/webhooks/agent/firewall/auth",
|
|
104782
|
+
headers: authHeadersSchema,
|
|
104783
|
+
body: external_exports.object({
|
|
104784
|
+
encryptedSecrets: external_exports.string().min(1),
|
|
104785
|
+
authHeaders: external_exports.record(external_exports.string(), external_exports.string()),
|
|
104786
|
+
authBase: external_exports.string().optional(),
|
|
104787
|
+
authQuery: external_exports.record(external_exports.string(), external_exports.string()).optional(),
|
|
104788
|
+
secretConnectorMap: external_exports.record(external_exports.string(), external_exports.string()).optional(),
|
|
104789
|
+
secretConnectorMetadataMap: secretConnectorMetadataMapSchema.optional(),
|
|
104790
|
+
vars: external_exports.record(external_exports.string(), external_exports.string()).optional(),
|
|
104791
|
+
forceRefresh: external_exports.boolean().optional()
|
|
104792
|
+
}),
|
|
104793
|
+
responses: {
|
|
104794
|
+
200: firewallAuthResponseSchema,
|
|
104795
|
+
400: apiErrorSchema,
|
|
104796
|
+
401: apiErrorSchema,
|
|
104797
|
+
403: apiErrorSchema,
|
|
104798
|
+
424: firewallAuthErrorSchema,
|
|
104799
|
+
502: firewallAuthErrorSchema,
|
|
104800
|
+
500: apiErrorSchema
|
|
104801
|
+
},
|
|
104802
|
+
summary: "Resolve firewall auth templates"
|
|
104803
|
+
}
|
|
104804
|
+
});
|
|
104805
|
+
var webhookEventsContract = c20.router({
|
|
104474
104806
|
/**
|
|
104475
104807
|
* POST /api/webhooks/agent/events
|
|
104476
104808
|
* Receive agent events from sandbox
|
|
@@ -104497,7 +104829,7 @@ var webhookEventsContract = c19.router({
|
|
|
104497
104829
|
summary: "Receive agent events from sandbox"
|
|
104498
104830
|
}
|
|
104499
104831
|
});
|
|
104500
|
-
var webhookCompleteContract =
|
|
104832
|
+
var webhookCompleteContract = c20.router({
|
|
104501
104833
|
/**
|
|
104502
104834
|
* POST /api/webhooks/agent/complete
|
|
104503
104835
|
* Handle agent run completion (success or failure)
|
|
@@ -104534,7 +104866,7 @@ var webhookCompleteContract = c19.router({
|
|
|
104534
104866
|
summary: "Handle agent run completion"
|
|
104535
104867
|
}
|
|
104536
104868
|
});
|
|
104537
|
-
var webhookCheckpointsContract =
|
|
104869
|
+
var webhookCheckpointsContract = c20.router({
|
|
104538
104870
|
/**
|
|
104539
104871
|
* POST /api/webhooks/agent/checkpoints
|
|
104540
104872
|
* Create a recoverable checkpoint for an agent run.
|
|
@@ -104573,7 +104905,7 @@ var webhookCheckpointsContract = c19.router({
|
|
|
104573
104905
|
summary: "Create checkpoint for agent run"
|
|
104574
104906
|
}
|
|
104575
104907
|
});
|
|
104576
|
-
var webhookCheckpointsPrepareHistoryContract =
|
|
104908
|
+
var webhookCheckpointsPrepareHistoryContract = c20.router({
|
|
104577
104909
|
prepare: {
|
|
104578
104910
|
method: "POST",
|
|
104579
104911
|
path: "/api/webhooks/agent/checkpoints/prepare-history",
|
|
@@ -104596,7 +104928,7 @@ var webhookCheckpointsPrepareHistoryContract = c19.router({
|
|
|
104596
104928
|
summary: "Get presigned URL for uploading session history to S3"
|
|
104597
104929
|
}
|
|
104598
104930
|
});
|
|
104599
|
-
var webhookHeartbeatContract =
|
|
104931
|
+
var webhookHeartbeatContract = c20.router({
|
|
104600
104932
|
/**
|
|
104601
104933
|
* POST /api/webhooks/agent/heartbeat
|
|
104602
104934
|
* Receive heartbeat signals from sandbox
|
|
@@ -104620,7 +104952,7 @@ var webhookHeartbeatContract = c19.router({
|
|
|
104620
104952
|
summary: "Receive heartbeat from sandbox"
|
|
104621
104953
|
}
|
|
104622
104954
|
});
|
|
104623
|
-
var webhookStoragesContract =
|
|
104955
|
+
var webhookStoragesContract = c20.router({
|
|
104624
104956
|
/**
|
|
104625
104957
|
* POST /api/webhooks/agent/storages
|
|
104626
104958
|
* Create a new version of a storage from sandbox
|
|
@@ -104636,7 +104968,7 @@ var webhookStoragesContract = c19.router({
|
|
|
104636
104968
|
path: "/api/webhooks/agent/storages",
|
|
104637
104969
|
headers: authHeadersSchema,
|
|
104638
104970
|
contentType: "multipart/form-data",
|
|
104639
|
-
body:
|
|
104971
|
+
body: c20.type(),
|
|
104640
104972
|
responses: {
|
|
104641
104973
|
200: external_exports.object({
|
|
104642
104974
|
versionId: external_exports.string(),
|
|
@@ -104652,7 +104984,7 @@ var webhookStoragesContract = c19.router({
|
|
|
104652
104984
|
summary: "Upload storage version from sandbox"
|
|
104653
104985
|
}
|
|
104654
104986
|
});
|
|
104655
|
-
var webhookStoragesIncrementalContract =
|
|
104987
|
+
var webhookStoragesIncrementalContract = c20.router({
|
|
104656
104988
|
/**
|
|
104657
104989
|
* POST /api/webhooks/agent/storages/incremental
|
|
104658
104990
|
* Create a new version using incremental upload
|
|
@@ -104670,7 +105002,7 @@ var webhookStoragesIncrementalContract = c19.router({
|
|
|
104670
105002
|
path: "/api/webhooks/agent/storages/incremental",
|
|
104671
105003
|
headers: authHeadersSchema,
|
|
104672
105004
|
contentType: "multipart/form-data",
|
|
104673
|
-
body:
|
|
105005
|
+
body: c20.type(),
|
|
104674
105006
|
responses: {
|
|
104675
105007
|
200: external_exports.object({
|
|
104676
105008
|
versionId: external_exports.string(),
|
|
@@ -104708,7 +105040,7 @@ var sandboxOperationSchema = external_exports.object({
|
|
|
104708
105040
|
success: external_exports.boolean(),
|
|
104709
105041
|
error: external_exports.string().optional()
|
|
104710
105042
|
});
|
|
104711
|
-
var webhookTelemetryContract =
|
|
105043
|
+
var webhookTelemetryContract = c20.router({
|
|
104712
105044
|
/**
|
|
104713
105045
|
* POST /api/webhooks/agent/telemetry
|
|
104714
105046
|
* Receive telemetry data (system log, metrics, network logs, and sandbox operations) from sandbox
|
|
@@ -104737,7 +105069,7 @@ var webhookTelemetryContract = c19.router({
|
|
|
104737
105069
|
summary: "Receive telemetry data from sandbox"
|
|
104738
105070
|
}
|
|
104739
105071
|
});
|
|
104740
|
-
var webhookStoragesPrepareContract =
|
|
105072
|
+
var webhookStoragesPrepareContract = c20.router({
|
|
104741
105073
|
prepare: {
|
|
104742
105074
|
method: "POST",
|
|
104743
105075
|
path: "/api/webhooks/agent/storages/prepare",
|
|
@@ -104771,7 +105103,7 @@ var webhookStoragesPrepareContract = c19.router({
|
|
|
104771
105103
|
summary: "Prepare for direct S3 upload from sandbox"
|
|
104772
105104
|
}
|
|
104773
105105
|
});
|
|
104774
|
-
var webhookStoragesCommitContract =
|
|
105106
|
+
var webhookStoragesCommitContract = c20.router({
|
|
104775
105107
|
commit: {
|
|
104776
105108
|
method: "POST",
|
|
104777
105109
|
path: "/api/webhooks/agent/storages/commit",
|
|
@@ -104813,7 +105145,7 @@ var webhookUsageEventItemSchema = external_exports.object({
|
|
|
104813
105145
|
category: external_exports.string().min(1).max(100),
|
|
104814
105146
|
quantity: external_exports.number().int().min(0)
|
|
104815
105147
|
}).strict();
|
|
104816
|
-
var webhookUsageEventContract =
|
|
105148
|
+
var webhookUsageEventContract = c20.router({
|
|
104817
105149
|
send: {
|
|
104818
105150
|
method: "POST",
|
|
104819
105151
|
path: "/api/webhooks/agent/usage-event",
|
|
@@ -104849,8 +105181,8 @@ var zeroRunRequestSchema = unifiedRunRequestSchema.omit({
|
|
|
104849
105181
|
agentId: external_exports.string().optional(),
|
|
104850
105182
|
modelProvider: external_exports.string().optional()
|
|
104851
105183
|
});
|
|
104852
|
-
var
|
|
104853
|
-
var zeroRunsMainContract =
|
|
105184
|
+
var c21 = initContract();
|
|
105185
|
+
var zeroRunsMainContract = c21.router({
|
|
104854
105186
|
create: {
|
|
104855
105187
|
method: "POST",
|
|
104856
105188
|
path: "/api/zero/runs",
|
|
@@ -104869,7 +105201,7 @@ var zeroRunsMainContract = c20.router({
|
|
|
104869
105201
|
summary: "Create and execute agent run (zero proxy)"
|
|
104870
105202
|
}
|
|
104871
105203
|
});
|
|
104872
|
-
var zeroRunsByIdContract =
|
|
105204
|
+
var zeroRunsByIdContract = c21.router({
|
|
104873
105205
|
getById: {
|
|
104874
105206
|
method: "GET",
|
|
104875
105207
|
path: "/api/zero/runs/:id",
|
|
@@ -104887,7 +105219,7 @@ var zeroRunsByIdContract = c20.router({
|
|
|
104887
105219
|
summary: "Get agent run by ID (zero proxy)"
|
|
104888
105220
|
}
|
|
104889
105221
|
});
|
|
104890
|
-
var zeroRunsCancelContract =
|
|
105222
|
+
var zeroRunsCancelContract = c21.router({
|
|
104891
105223
|
cancel: {
|
|
104892
105224
|
method: "POST",
|
|
104893
105225
|
path: "/api/zero/runs/:id/cancel",
|
|
@@ -104906,7 +105238,7 @@ var zeroRunsCancelContract = c20.router({
|
|
|
104906
105238
|
summary: "Cancel a pending or running run (zero proxy)"
|
|
104907
105239
|
}
|
|
104908
105240
|
});
|
|
104909
|
-
var zeroRunsQueueContract =
|
|
105241
|
+
var zeroRunsQueueContract = c21.router({
|
|
104910
105242
|
getQueue: {
|
|
104911
105243
|
method: "GET",
|
|
104912
105244
|
path: "/api/zero/runs/queue",
|
|
@@ -104919,7 +105251,7 @@ var zeroRunsQueueContract = c20.router({
|
|
|
104919
105251
|
summary: "Get org run queue status (zero proxy)"
|
|
104920
105252
|
}
|
|
104921
105253
|
});
|
|
104922
|
-
var zeroRunAgentEventsContract =
|
|
105254
|
+
var zeroRunAgentEventsContract = c21.router({
|
|
104923
105255
|
getAgentEvents: {
|
|
104924
105256
|
method: "GET",
|
|
104925
105257
|
path: "/api/zero/runs/:id/telemetry/agent",
|
|
@@ -104981,7 +105313,7 @@ var runContextResponseSchema = external_exports.object({
|
|
|
104981
105313
|
artifact: runContextArtifactSchema.nullable(),
|
|
104982
105314
|
featureFlags: external_exports.record(external_exports.string(), external_exports.boolean()).nullable()
|
|
104983
105315
|
});
|
|
104984
|
-
var zeroRunContextContract =
|
|
105316
|
+
var zeroRunContextContract = c21.router({
|
|
104985
105317
|
getContext: {
|
|
104986
105318
|
method: "GET",
|
|
104987
105319
|
path: "/api/zero/runs/:id/context",
|
|
@@ -104999,7 +105331,7 @@ var zeroRunContextContract = c20.router({
|
|
|
104999
105331
|
summary: "Get run execution context snapshot for debugging"
|
|
105000
105332
|
}
|
|
105001
105333
|
});
|
|
105002
|
-
var zeroRunNetworkLogsContract =
|
|
105334
|
+
var zeroRunNetworkLogsContract = c21.router({
|
|
105003
105335
|
getNetworkLogs: {
|
|
105004
105336
|
method: "GET",
|
|
105005
105337
|
path: "/api/zero/runs/:id/network",
|
|
@@ -105025,7 +105357,7 @@ var zeroRunNetworkLogsContract = c20.router({
|
|
|
105025
105357
|
var runRunnerResponseSchema = external_exports.object({
|
|
105026
105358
|
sandboxReuseResult: sandboxReuseResultSchema.nullable()
|
|
105027
105359
|
});
|
|
105028
|
-
var zeroRunRunnerContract =
|
|
105360
|
+
var zeroRunRunnerContract = c21.router({
|
|
105029
105361
|
getRunner: {
|
|
105030
105362
|
method: "GET",
|
|
105031
105363
|
path: "/api/zero/runs/:id/runner",
|
|
@@ -105043,7 +105375,7 @@ var zeroRunRunnerContract = c20.router({
|
|
|
105043
105375
|
summary: "Get runner-level metadata for a run"
|
|
105044
105376
|
}
|
|
105045
105377
|
});
|
|
105046
|
-
var zeroLogsSearchContract =
|
|
105378
|
+
var zeroLogsSearchContract = c21.router({
|
|
105047
105379
|
searchLogs: {
|
|
105048
105380
|
method: "GET",
|
|
105049
105381
|
path: "/api/zero/logs/search",
|
|
@@ -105143,7 +105475,7 @@ init_esm_shims();
|
|
|
105143
105475
|
|
|
105144
105476
|
// ../../packages/api-contracts/src/contracts/chat-threads.ts
|
|
105145
105477
|
init_esm_shims();
|
|
105146
|
-
var
|
|
105478
|
+
var c22 = initContract();
|
|
105147
105479
|
var attachFileSchema = external_exports.object({
|
|
105148
105480
|
id: external_exports.string(),
|
|
105149
105481
|
filename: external_exports.string(),
|
|
@@ -105328,7 +105660,7 @@ var modelSelectionRequestSchema = external_exports.object({
|
|
|
105328
105660
|
modelProviderId: external_exports.string().uuid(),
|
|
105329
105661
|
selectedModel: external_exports.string().min(1)
|
|
105330
105662
|
});
|
|
105331
|
-
var chatThreadsContract =
|
|
105663
|
+
var chatThreadsContract = c22.router({
|
|
105332
105664
|
create: {
|
|
105333
105665
|
method: "POST",
|
|
105334
105666
|
path: "/api/zero/chat-threads",
|
|
@@ -105364,7 +105696,7 @@ var chatThreadsContract = c21.router({
|
|
|
105364
105696
|
summary: "List chat threads. When agentId is omitted, returns every thread the caller owns scoped by orgId."
|
|
105365
105697
|
}
|
|
105366
105698
|
});
|
|
105367
|
-
var chatThreadByIdContract =
|
|
105699
|
+
var chatThreadByIdContract = c22.router({
|
|
105368
105700
|
get: {
|
|
105369
105701
|
method: "GET",
|
|
105370
105702
|
path: "/api/zero/chat-threads/:id",
|
|
@@ -105387,7 +105719,7 @@ var chatThreadByIdContract = c21.router({
|
|
|
105387
105719
|
draftAttachments: external_exports.array(persistedAttachmentSchema).nullable().optional()
|
|
105388
105720
|
}),
|
|
105389
105721
|
responses: {
|
|
105390
|
-
204:
|
|
105722
|
+
204: c22.noBody(),
|
|
105391
105723
|
401: apiErrorSchema,
|
|
105392
105724
|
404: apiErrorSchema
|
|
105393
105725
|
},
|
|
@@ -105399,21 +105731,21 @@ var chatThreadByIdContract = c21.router({
|
|
|
105399
105731
|
headers: authHeadersSchema,
|
|
105400
105732
|
pathParams: external_exports.object({ id: external_exports.string() }),
|
|
105401
105733
|
responses: {
|
|
105402
|
-
204:
|
|
105734
|
+
204: c22.noBody(),
|
|
105403
105735
|
401: apiErrorSchema,
|
|
105404
105736
|
404: apiErrorSchema
|
|
105405
105737
|
},
|
|
105406
105738
|
summary: "Delete a chat thread",
|
|
105407
|
-
body:
|
|
105739
|
+
body: c22.noBody()
|
|
105408
105740
|
}
|
|
105409
105741
|
});
|
|
105410
|
-
var chatThreadMarkReadContract =
|
|
105742
|
+
var chatThreadMarkReadContract = c22.router({
|
|
105411
105743
|
markRead: {
|
|
105412
105744
|
method: "POST",
|
|
105413
105745
|
path: "/api/zero/chat-threads/:id/mark-read",
|
|
105414
105746
|
headers: authHeadersSchema,
|
|
105415
105747
|
pathParams: external_exports.object({ id: external_exports.string() }),
|
|
105416
|
-
body:
|
|
105748
|
+
body: c22.noBody(),
|
|
105417
105749
|
responses: {
|
|
105418
105750
|
200: external_exports.object({
|
|
105419
105751
|
lastReadMessageId: external_exports.string().nullable(),
|
|
@@ -105425,37 +105757,37 @@ var chatThreadMarkReadContract = c21.router({
|
|
|
105425
105757
|
summary: "Mark a chat thread as read up to the latest message"
|
|
105426
105758
|
}
|
|
105427
105759
|
});
|
|
105428
|
-
var chatThreadPinContract =
|
|
105760
|
+
var chatThreadPinContract = c22.router({
|
|
105429
105761
|
pin: {
|
|
105430
105762
|
method: "POST",
|
|
105431
105763
|
path: "/api/zero/chat-threads/:id/pin",
|
|
105432
105764
|
headers: authHeadersSchema,
|
|
105433
105765
|
pathParams: external_exports.object({ id: external_exports.string() }),
|
|
105434
|
-
body:
|
|
105766
|
+
body: c22.noBody(),
|
|
105435
105767
|
responses: {
|
|
105436
|
-
204:
|
|
105768
|
+
204: c22.noBody(),
|
|
105437
105769
|
401: apiErrorSchema,
|
|
105438
105770
|
404: apiErrorSchema
|
|
105439
105771
|
},
|
|
105440
105772
|
summary: "Pin a chat thread to the top of the sidebar"
|
|
105441
105773
|
}
|
|
105442
105774
|
});
|
|
105443
|
-
var chatThreadUnpinContract =
|
|
105775
|
+
var chatThreadUnpinContract = c22.router({
|
|
105444
105776
|
unpin: {
|
|
105445
105777
|
method: "POST",
|
|
105446
105778
|
path: "/api/zero/chat-threads/:id/unpin",
|
|
105447
105779
|
headers: authHeadersSchema,
|
|
105448
105780
|
pathParams: external_exports.object({ id: external_exports.string() }),
|
|
105449
|
-
body:
|
|
105781
|
+
body: c22.noBody(),
|
|
105450
105782
|
responses: {
|
|
105451
|
-
204:
|
|
105783
|
+
204: c22.noBody(),
|
|
105452
105784
|
401: apiErrorSchema,
|
|
105453
105785
|
404: apiErrorSchema
|
|
105454
105786
|
},
|
|
105455
105787
|
summary: "Remove the pin from a chat thread"
|
|
105456
105788
|
}
|
|
105457
105789
|
});
|
|
105458
|
-
var chatThreadRenameContract =
|
|
105790
|
+
var chatThreadRenameContract = c22.router({
|
|
105459
105791
|
rename: {
|
|
105460
105792
|
method: "POST",
|
|
105461
105793
|
path: "/api/zero/chat-threads/:id/rename",
|
|
@@ -105463,14 +105795,14 @@ var chatThreadRenameContract = c21.router({
|
|
|
105463
105795
|
pathParams: external_exports.object({ id: external_exports.string() }),
|
|
105464
105796
|
body: external_exports.object({ title: external_exports.string().min(1) }),
|
|
105465
105797
|
responses: {
|
|
105466
|
-
204:
|
|
105798
|
+
204: c22.noBody(),
|
|
105467
105799
|
401: apiErrorSchema,
|
|
105468
105800
|
404: apiErrorSchema
|
|
105469
105801
|
},
|
|
105470
105802
|
summary: "Rename a chat thread (suppresses automated title generation)"
|
|
105471
105803
|
}
|
|
105472
105804
|
});
|
|
105473
|
-
var chatMessagesContract =
|
|
105805
|
+
var chatMessagesContract = c22.router({
|
|
105474
105806
|
send: {
|
|
105475
105807
|
method: "POST",
|
|
105476
105808
|
path: "/api/zero/chat/messages",
|
|
@@ -105599,7 +105931,7 @@ var chatSearchResponseSchema = external_exports.object({
|
|
|
105599
105931
|
results: external_exports.array(chatSearchResultSchema),
|
|
105600
105932
|
hasMore: external_exports.boolean()
|
|
105601
105933
|
});
|
|
105602
|
-
var chatSearchContract =
|
|
105934
|
+
var chatSearchContract = c22.router({
|
|
105603
105935
|
search: {
|
|
105604
105936
|
method: "GET",
|
|
105605
105937
|
path: "/api/zero/chat/search",
|
|
@@ -105621,7 +105953,7 @@ var chatSearchContract = c21.router({
|
|
|
105621
105953
|
summary: "Search chat messages within caller's org (zero proxy)"
|
|
105622
105954
|
}
|
|
105623
105955
|
});
|
|
105624
|
-
var chatThreadMessagesContract =
|
|
105956
|
+
var chatThreadMessagesContract = c22.router({
|
|
105625
105957
|
list: {
|
|
105626
105958
|
method: "GET",
|
|
105627
105959
|
path: "/api/zero/chat-threads/:threadId/messages",
|
|
@@ -105643,7 +105975,7 @@ var chatThreadMessagesContract = c21.router({
|
|
|
105643
105975
|
summary: "Get paginated chat messages for a thread"
|
|
105644
105976
|
}
|
|
105645
105977
|
});
|
|
105646
|
-
var chatThreadArtifactsContract =
|
|
105978
|
+
var chatThreadArtifactsContract = c22.router({
|
|
105647
105979
|
list: {
|
|
105648
105980
|
method: "GET",
|
|
105649
105981
|
path: "/api/zero/chat-threads/:threadId/artifacts",
|
|
@@ -105793,7 +106125,7 @@ init_esm_shims();
|
|
|
105793
106125
|
|
|
105794
106126
|
// ../../packages/api-contracts/src/contracts/zero-developer-support.ts
|
|
105795
106127
|
init_esm_shims();
|
|
105796
|
-
var
|
|
106128
|
+
var c23 = initContract();
|
|
105797
106129
|
var developerSupportBodySchema = external_exports.object({
|
|
105798
106130
|
title: external_exports.string().min(1, "Title is required"),
|
|
105799
106131
|
description: external_exports.string().min(1, "Description is required"),
|
|
@@ -105805,7 +106137,7 @@ var consentCodeResponseSchema = external_exports.object({
|
|
|
105805
106137
|
var submitResponseSchema = external_exports.object({
|
|
105806
106138
|
reference: external_exports.string()
|
|
105807
106139
|
});
|
|
105808
|
-
var zeroDeveloperSupportContract =
|
|
106140
|
+
var zeroDeveloperSupportContract = c23.router({
|
|
105809
106141
|
submit: {
|
|
105810
106142
|
method: "POST",
|
|
105811
106143
|
path: "/api/zero/developer-support",
|
|
@@ -105842,7 +106174,7 @@ init_esm_shims();
|
|
|
105842
106174
|
|
|
105843
106175
|
// ../../packages/api-contracts/src/contracts/zero-computer-use.ts
|
|
105844
106176
|
init_esm_shims();
|
|
105845
|
-
var
|
|
106177
|
+
var c24 = initContract();
|
|
105846
106178
|
var registerResponseSchema = external_exports.object({
|
|
105847
106179
|
id: external_exports.string(),
|
|
105848
106180
|
domain: external_exports.string(),
|
|
@@ -105854,12 +106186,12 @@ var hostResponseSchema = external_exports.object({
|
|
|
105854
106186
|
domain: external_exports.string(),
|
|
105855
106187
|
token: external_exports.string()
|
|
105856
106188
|
});
|
|
105857
|
-
var zeroComputerUseRegisterContract =
|
|
106189
|
+
var zeroComputerUseRegisterContract = c24.router({
|
|
105858
106190
|
register: {
|
|
105859
106191
|
method: "POST",
|
|
105860
106192
|
path: "/api/zero/computer-use/register",
|
|
105861
106193
|
headers: authHeadersSchema,
|
|
105862
|
-
body:
|
|
106194
|
+
body: c24.noBody(),
|
|
105863
106195
|
responses: {
|
|
105864
106196
|
200: registerResponseSchema,
|
|
105865
106197
|
401: apiErrorSchema,
|
|
@@ -105869,14 +106201,14 @@ var zeroComputerUseRegisterContract = c23.router({
|
|
|
105869
106201
|
summary: "Register a computer-use host"
|
|
105870
106202
|
}
|
|
105871
106203
|
});
|
|
105872
|
-
var zeroComputerUseUnregisterContract =
|
|
106204
|
+
var zeroComputerUseUnregisterContract = c24.router({
|
|
105873
106205
|
unregister: {
|
|
105874
106206
|
method: "DELETE",
|
|
105875
106207
|
path: "/api/zero/computer-use/unregister",
|
|
105876
106208
|
headers: authHeadersSchema,
|
|
105877
|
-
body:
|
|
106209
|
+
body: c24.noBody(),
|
|
105878
106210
|
responses: {
|
|
105879
|
-
204:
|
|
106211
|
+
204: c24.noBody(),
|
|
105880
106212
|
401: apiErrorSchema,
|
|
105881
106213
|
403: apiErrorSchema,
|
|
105882
106214
|
404: apiErrorSchema
|
|
@@ -105884,7 +106216,7 @@ var zeroComputerUseUnregisterContract = c23.router({
|
|
|
105884
106216
|
summary: "Unregister a computer-use host"
|
|
105885
106217
|
}
|
|
105886
106218
|
});
|
|
105887
|
-
var zeroComputerUseHostContract =
|
|
106219
|
+
var zeroComputerUseHostContract = c24.router({
|
|
105888
106220
|
getHost: {
|
|
105889
106221
|
method: "GET",
|
|
105890
106222
|
path: "/api/zero/computer-use/host",
|
|
@@ -105939,218 +106271,6 @@ init_esm_shims();
|
|
|
105939
106271
|
|
|
105940
106272
|
// ../../packages/api-contracts/src/contracts/realtime.ts
|
|
105941
106273
|
init_esm_shims();
|
|
105942
|
-
|
|
105943
|
-
// ../../packages/api-contracts/src/contracts/runners.ts
|
|
105944
|
-
init_esm_shims();
|
|
105945
|
-
var c24 = initContract();
|
|
105946
|
-
var runnerGroupSchema = external_exports.string().regex(
|
|
105947
|
-
/^[a-z0-9-]+\/[a-z0-9-]+$/,
|
|
105948
|
-
"Runner group must be in vm0/<name> format (e.g., vm0/production)"
|
|
105949
|
-
);
|
|
105950
|
-
var jobSchema = external_exports.object({
|
|
105951
|
-
runId: external_exports.uuid(),
|
|
105952
|
-
prompt: external_exports.string(),
|
|
105953
|
-
appendSystemPrompt: external_exports.string().nullable(),
|
|
105954
|
-
agentComposeVersionId: external_exports.string().nullable(),
|
|
105955
|
-
vars: external_exports.record(external_exports.string(), external_exports.string()).nullable(),
|
|
105956
|
-
checkpointId: external_exports.uuid().nullable(),
|
|
105957
|
-
experimentalProfile: external_exports.string().optional()
|
|
105958
|
-
});
|
|
105959
|
-
var runnersPollContract = c24.router({
|
|
105960
|
-
poll: {
|
|
105961
|
-
method: "POST",
|
|
105962
|
-
path: "/api/runners/poll",
|
|
105963
|
-
headers: authHeadersSchema,
|
|
105964
|
-
body: external_exports.object({
|
|
105965
|
-
group: runnerGroupSchema,
|
|
105966
|
-
profiles: external_exports.array(external_exports.string()).optional(),
|
|
105967
|
-
heldSessions: external_exports.array(external_exports.string()).max(100).optional()
|
|
105968
|
-
}),
|
|
105969
|
-
responses: {
|
|
105970
|
-
200: external_exports.object({
|
|
105971
|
-
job: jobSchema.nullable()
|
|
105972
|
-
}),
|
|
105973
|
-
400: apiErrorSchema,
|
|
105974
|
-
401: apiErrorSchema,
|
|
105975
|
-
500: apiErrorSchema
|
|
105976
|
-
},
|
|
105977
|
-
summary: "Poll for pending jobs (long-polling with 30s timeout)"
|
|
105978
|
-
}
|
|
105979
|
-
});
|
|
105980
|
-
var storageEntrySchema = external_exports.object({
|
|
105981
|
-
name: external_exports.string(),
|
|
105982
|
-
mountPath: external_exports.string(),
|
|
105983
|
-
vasStorageName: external_exports.string(),
|
|
105984
|
-
vasVersionId: external_exports.string(),
|
|
105985
|
-
instructionsTargetFilename: external_exports.string().optional(),
|
|
105986
|
-
archiveUrl: external_exports.string()
|
|
105987
|
-
});
|
|
105988
|
-
var artifactEntrySchema = external_exports.object({
|
|
105989
|
-
mountPath: external_exports.string(),
|
|
105990
|
-
vasStorageName: external_exports.string(),
|
|
105991
|
-
vasStorageId: external_exports.string(),
|
|
105992
|
-
vasVersionId: external_exports.string(),
|
|
105993
|
-
archiveUrl: external_exports.string(),
|
|
105994
|
-
manifestUrl: external_exports.string().optional()
|
|
105995
|
-
});
|
|
105996
|
-
var storageManifestSchema = external_exports.object({
|
|
105997
|
-
storages: external_exports.array(storageEntrySchema),
|
|
105998
|
-
artifacts: external_exports.array(artifactEntrySchema)
|
|
105999
|
-
});
|
|
106000
|
-
var resumeSessionSchema = external_exports.object({
|
|
106001
|
-
sessionId: external_exports.string(),
|
|
106002
|
-
sessionHistory: external_exports.string()
|
|
106003
|
-
});
|
|
106004
|
-
var secretConnectorMetadataSchema = external_exports.object({
|
|
106005
|
-
sourceType: external_exports.enum(["connector", "model-provider"]),
|
|
106006
|
-
sourceUserId: external_exports.string().optional(),
|
|
106007
|
-
metadataKey: external_exports.string().optional()
|
|
106008
|
-
});
|
|
106009
|
-
var secretConnectorMetadataMapSchema = external_exports.record(
|
|
106010
|
-
external_exports.string(),
|
|
106011
|
-
secretConnectorMetadataSchema
|
|
106012
|
-
);
|
|
106013
|
-
var storedExecutionContextSchema = external_exports.object({
|
|
106014
|
-
workingDir: external_exports.string(),
|
|
106015
|
-
storageManifest: storageManifestSchema.nullable(),
|
|
106016
|
-
environment: external_exports.record(external_exports.string(), external_exports.string()).nullable(),
|
|
106017
|
-
resumeSession: resumeSessionSchema.nullable(),
|
|
106018
|
-
encryptedSecrets: external_exports.string().nullable(),
|
|
106019
|
-
// AES-256-GCM encrypted Record<string, string> (secret name → value)
|
|
106020
|
-
// Maps secret names to OAuth connector types for runtime token refresh (e.g. { "GMAIL_ACCESS_TOKEN": "gmail" })
|
|
106021
|
-
secretConnectorMap: external_exports.record(external_exports.string(), external_exports.string()).nullable().optional(),
|
|
106022
|
-
// Per-secret refresh metadata, used when a handler needs owner-specific storage (e.g. personal model providers)
|
|
106023
|
-
secretConnectorMetadataMap: secretConnectorMetadataMapSchema.nullable().optional(),
|
|
106024
|
-
cliAgentType: external_exports.string(),
|
|
106025
|
-
// Debug flag to force real Claude in mock environments (internal use only)
|
|
106026
|
-
debugNoMockClaude: external_exports.boolean().optional(),
|
|
106027
|
-
// Debug flag to force real Codex in mock environments (internal use only)
|
|
106028
|
-
debugNoMockCodex: external_exports.boolean().optional(),
|
|
106029
|
-
// Capture HTTP request headers, request bodies, and response bodies in network logs
|
|
106030
|
-
captureNetworkBodies: external_exports.boolean().optional(),
|
|
106031
|
-
// Dispatch timestamp for E2E timing metrics
|
|
106032
|
-
apiStartTime: external_exports.number().optional(),
|
|
106033
|
-
// User's timezone preference (IANA format, e.g., "Asia/Shanghai")
|
|
106034
|
-
userTimezone: external_exports.string().optional(),
|
|
106035
|
-
// Firewall for proxy-side token replacement (complete config, all permissions)
|
|
106036
|
-
firewalls: firewallsSchema.optional(),
|
|
106037
|
-
// Per-firewall network policies: which permissions are granted + unknownPolicy
|
|
106038
|
-
networkPolicies: networkPoliciesSchema.optional(),
|
|
106039
|
-
// Tools to disable in Claude CLI (passed as --disallowed-tools)
|
|
106040
|
-
disallowedTools: external_exports.array(external_exports.string()).optional(),
|
|
106041
|
-
// Tools to make available in Claude CLI (passed as --tools)
|
|
106042
|
-
tools: external_exports.array(external_exports.string()).optional(),
|
|
106043
|
-
// Settings JSON to pass to Claude CLI (passed as --settings)
|
|
106044
|
-
settings: external_exports.string().optional(),
|
|
106045
|
-
// VM profile for resource allocation (e.g., "vm0/default")
|
|
106046
|
-
experimentalProfile: external_exports.string().optional(),
|
|
106047
|
-
// Feature flags evaluated at job creation time (all switch states for user/org)
|
|
106048
|
-
featureFlags: external_exports.record(external_exports.string(), external_exports.boolean()).optional(),
|
|
106049
|
-
billableFirewalls: external_exports.array(external_exports.string()).optional(),
|
|
106050
|
-
modelUsageProvider: external_exports.string().optional()
|
|
106051
|
-
});
|
|
106052
|
-
var executionContextSchema = external_exports.object({
|
|
106053
|
-
runId: external_exports.uuid(),
|
|
106054
|
-
prompt: external_exports.string(),
|
|
106055
|
-
appendSystemPrompt: external_exports.string().nullable(),
|
|
106056
|
-
agentComposeVersionId: external_exports.string().nullable(),
|
|
106057
|
-
vars: external_exports.record(external_exports.string(), external_exports.string()).nullable(),
|
|
106058
|
-
checkpointId: external_exports.uuid().nullable(),
|
|
106059
|
-
sandboxToken: external_exports.string(),
|
|
106060
|
-
// New fields for E2B parity:
|
|
106061
|
-
workingDir: external_exports.string(),
|
|
106062
|
-
storageManifest: storageManifestSchema.nullable(),
|
|
106063
|
-
environment: external_exports.record(external_exports.string(), external_exports.string()).nullable(),
|
|
106064
|
-
resumeSession: resumeSessionSchema.nullable(),
|
|
106065
|
-
secretValues: external_exports.array(external_exports.string()).nullable(),
|
|
106066
|
-
// AES-256-GCM encrypted Record<string, string> — passed through to mitm-addon for auth resolution
|
|
106067
|
-
encryptedSecrets: external_exports.string().nullable(),
|
|
106068
|
-
// Maps secret names to OAuth connector types for runtime token refresh
|
|
106069
|
-
secretConnectorMap: external_exports.record(external_exports.string(), external_exports.string()).nullable().optional(),
|
|
106070
|
-
// Per-secret refresh metadata, used when a handler needs owner-specific storage (e.g. personal model providers)
|
|
106071
|
-
secretConnectorMetadataMap: secretConnectorMetadataMapSchema.nullable().optional(),
|
|
106072
|
-
cliAgentType: external_exports.string(),
|
|
106073
|
-
// Debug flag to force real Claude in mock environments (internal use only)
|
|
106074
|
-
debugNoMockClaude: external_exports.boolean().optional(),
|
|
106075
|
-
// Debug flag to force real Codex in mock environments (internal use only)
|
|
106076
|
-
debugNoMockCodex: external_exports.boolean().optional(),
|
|
106077
|
-
// Capture HTTP request headers, request bodies, and response bodies in network logs
|
|
106078
|
-
captureNetworkBodies: external_exports.boolean().optional(),
|
|
106079
|
-
// Dispatch timestamp for E2E timing metrics
|
|
106080
|
-
apiStartTime: external_exports.number().optional(),
|
|
106081
|
-
// User's timezone preference (IANA format, e.g., "Asia/Shanghai")
|
|
106082
|
-
userTimezone: external_exports.string().optional(),
|
|
106083
|
-
// Firewall for proxy-side token replacement (complete config, all permissions)
|
|
106084
|
-
firewalls: firewallsSchema.optional(),
|
|
106085
|
-
// Per-firewall network policies: which permissions are granted + unknownPolicy
|
|
106086
|
-
networkPolicies: networkPoliciesSchema.optional(),
|
|
106087
|
-
// Tools to disable in Claude CLI (passed as --disallowed-tools)
|
|
106088
|
-
disallowedTools: external_exports.array(external_exports.string()).optional(),
|
|
106089
|
-
// Tools to make available in Claude CLI (passed as --tools)
|
|
106090
|
-
tools: external_exports.array(external_exports.string()).optional(),
|
|
106091
|
-
// Settings JSON to pass to Claude CLI (passed as --settings)
|
|
106092
|
-
settings: external_exports.string().optional(),
|
|
106093
|
-
// VM profile for resource allocation (e.g., "vm0/default")
|
|
106094
|
-
experimentalProfile: external_exports.string().optional(),
|
|
106095
|
-
// Feature flags evaluated at job creation time (all switch states for user/org)
|
|
106096
|
-
featureFlags: external_exports.record(external_exports.string(), external_exports.boolean()).optional(),
|
|
106097
|
-
billableFirewalls: external_exports.array(external_exports.string()).optional(),
|
|
106098
|
-
modelUsageProvider: external_exports.string().optional()
|
|
106099
|
-
});
|
|
106100
|
-
var runnersJobClaimContract = c24.router({
|
|
106101
|
-
claim: {
|
|
106102
|
-
method: "POST",
|
|
106103
|
-
path: "/api/runners/jobs/:id/claim",
|
|
106104
|
-
headers: authHeadersSchema,
|
|
106105
|
-
pathParams: external_exports.object({
|
|
106106
|
-
id: external_exports.uuid()
|
|
106107
|
-
}),
|
|
106108
|
-
body: external_exports.object({}),
|
|
106109
|
-
responses: {
|
|
106110
|
-
200: executionContextSchema,
|
|
106111
|
-
400: apiErrorSchema,
|
|
106112
|
-
401: apiErrorSchema,
|
|
106113
|
-
403: apiErrorSchema,
|
|
106114
|
-
// Job does not belong to user
|
|
106115
|
-
404: apiErrorSchema,
|
|
106116
|
-
409: apiErrorSchema,
|
|
106117
|
-
// Already claimed
|
|
106118
|
-
500: apiErrorSchema
|
|
106119
|
-
},
|
|
106120
|
-
summary: "Claim a pending job for execution"
|
|
106121
|
-
}
|
|
106122
|
-
});
|
|
106123
|
-
var heartbeatBodySchema = external_exports.object({
|
|
106124
|
-
runnerId: external_exports.uuid(),
|
|
106125
|
-
runnerName: external_exports.string(),
|
|
106126
|
-
group: runnerGroupSchema,
|
|
106127
|
-
profiles: external_exports.array(external_exports.string()),
|
|
106128
|
-
totalVcpu: external_exports.number().int().nonnegative(),
|
|
106129
|
-
totalMemoryMb: external_exports.number().int().nonnegative(),
|
|
106130
|
-
maxConcurrent: external_exports.number().int().nonnegative(),
|
|
106131
|
-
allocatedVcpu: external_exports.number().int().nonnegative(),
|
|
106132
|
-
allocatedMemoryMb: external_exports.number().int().nonnegative(),
|
|
106133
|
-
runningCount: external_exports.number().int().nonnegative(),
|
|
106134
|
-
heldSessions: external_exports.array(external_exports.string()),
|
|
106135
|
-
mode: external_exports.enum(["running", "draining", "stopping"])
|
|
106136
|
-
});
|
|
106137
|
-
var runnersHeartbeatContract = c24.router({
|
|
106138
|
-
heartbeat: {
|
|
106139
|
-
method: "POST",
|
|
106140
|
-
path: "/api/runners/heartbeat",
|
|
106141
|
-
headers: authHeadersSchema,
|
|
106142
|
-
body: heartbeatBodySchema,
|
|
106143
|
-
responses: {
|
|
106144
|
-
200: external_exports.object({ ok: external_exports.literal(true) }),
|
|
106145
|
-
400: apiErrorSchema,
|
|
106146
|
-
401: apiErrorSchema,
|
|
106147
|
-
500: apiErrorSchema
|
|
106148
|
-
},
|
|
106149
|
-
summary: "Report runner heartbeat with capacity and state"
|
|
106150
|
-
}
|
|
106151
|
-
});
|
|
106152
|
-
|
|
106153
|
-
// ../../packages/api-contracts/src/contracts/realtime.ts
|
|
106154
106274
|
var c25 = initContract();
|
|
106155
106275
|
var ablyTokenRequestSchema = external_exports.object({
|
|
106156
106276
|
keyName: external_exports.string(),
|
|
@@ -121817,6 +121937,15 @@ var cronReconcileBillingEntitlementsResponseSchema = external_exports.object({
|
|
|
121817
121937
|
var cronTelegramCleanupResponseSchema = external_exports.object({
|
|
121818
121938
|
deleted: external_exports.number()
|
|
121819
121939
|
});
|
|
121940
|
+
var cronVoiceChatCleanupResponseSchema = external_exports.object({
|
|
121941
|
+
success: external_exports.literal(true),
|
|
121942
|
+
reasonerReset: external_exports.number()
|
|
121943
|
+
});
|
|
121944
|
+
var cronDrainEmailOutboxResponseSchema = external_exports.object({
|
|
121945
|
+
success: external_exports.literal(true),
|
|
121946
|
+
drained: external_exports.number(),
|
|
121947
|
+
cleaned: external_exports.number()
|
|
121948
|
+
});
|
|
121820
121949
|
var cronAggregateInsightsSkippedResponseSchema = external_exports.object({
|
|
121821
121950
|
users: external_exports.number(),
|
|
121822
121951
|
skipped: external_exports.literal(true)
|
|
@@ -121878,6 +122007,30 @@ var cronTelegramCleanupContract = c51.router({
|
|
|
121878
122007
|
summary: "Delete expired Telegram messages"
|
|
121879
122008
|
}
|
|
121880
122009
|
});
|
|
122010
|
+
var cronVoiceChatCleanupContract = c51.router({
|
|
122011
|
+
cleanup: {
|
|
122012
|
+
method: "GET",
|
|
122013
|
+
path: "/api/cron/voice-chat-cleanup",
|
|
122014
|
+
headers: authHeadersSchema,
|
|
122015
|
+
responses: {
|
|
122016
|
+
200: cronVoiceChatCleanupResponseSchema,
|
|
122017
|
+
401: apiErrorSchema
|
|
122018
|
+
},
|
|
122019
|
+
summary: "Reset stuck voice-chat reasoners"
|
|
122020
|
+
}
|
|
122021
|
+
});
|
|
122022
|
+
var cronDrainEmailOutboxContract = c51.router({
|
|
122023
|
+
drain: {
|
|
122024
|
+
method: "GET",
|
|
122025
|
+
path: "/api/cron/drain-email-outbox",
|
|
122026
|
+
headers: authHeadersSchema,
|
|
122027
|
+
responses: {
|
|
122028
|
+
200: cronDrainEmailOutboxResponseSchema,
|
|
122029
|
+
401: apiErrorSchema
|
|
122030
|
+
},
|
|
122031
|
+
summary: "Drain pending email outbox messages"
|
|
122032
|
+
}
|
|
122033
|
+
});
|
|
121881
122034
|
var cronAggregateInsightsContract = c51.router({
|
|
121882
122035
|
aggregate: {
|
|
121883
122036
|
method: "GET",
|
|
@@ -126787,4 +126940,4 @@ undici/lib/web/fetch/body.js:
|
|
|
126787
126940
|
undici/lib/web/websocket/frame.js:
|
|
126788
126941
|
(*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> *)
|
|
126789
126942
|
*/
|
|
126790
|
-
//# sourceMappingURL=chunk-
|
|
126943
|
+
//# sourceMappingURL=chunk-R2ZGUBEJ.js.map
|