@duvoai/cli 1.18.1 → 1.19.0

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 CHANGED
@@ -89,11 +89,11 @@ import { z as z51 } from "zod";
89
89
  import { z as z52 } from "zod";
90
90
  import { z as z53 } from "zod";
91
91
  import { z as z54 } from "zod";
92
- import { z as z56 } from "zod";
93
92
  import { z as z55 } from "zod";
94
- import { z as z58 } from "zod";
95
93
  import { z as z57 } from "zod";
94
+ import { z as z56 } from "zod";
96
95
  import { z as z59 } from "zod";
96
+ import { z as z58 } from "zod";
97
97
  import { z as z60 } from "zod";
98
98
  import { z as z61 } from "zod";
99
99
  import { z as z62 } from "zod";
@@ -105,13 +105,14 @@ import { z as z67 } from "zod";
105
105
  import { z as z68 } from "zod";
106
106
  import { z as z69 } from "zod";
107
107
  import { z as z70 } from "zod";
108
- import { z as z72 } from "zod";
109
108
  import { z as z71 } from "zod";
110
109
  import { z as z73 } from "zod";
110
+ import { z as z72 } from "zod";
111
111
  import { z as z74 } from "zod";
112
112
  import { z as z75 } from "zod";
113
113
  import { z as z76 } from "zod";
114
114
  import { z as z77 } from "zod";
115
+ import { z as z78 } from "zod";
115
116
 
116
117
  // ../node_modules/.pnpm/jsonrepair@3.13.2/node_modules/jsonrepair/lib/esm/utils/JSONRepairError.js
117
118
  var JSONRepairError = class extends Error {
@@ -2469,6 +2470,7 @@ var PLATFORM_DEFAULT_MODELS = {
2469
2470
  var CLAUDE_MODEL_IDS = [
2470
2471
  "claude-sonnet-4-6",
2471
2472
  "claude-sonnet-4-6[1m]",
2473
+ "claude-sonnet-5",
2472
2474
  "claude-opus-4-8",
2473
2475
  "claude-opus-4-8[1m]"
2474
2476
  ];
@@ -2513,6 +2515,10 @@ var AVAILABLE_AGENT_MODELS = {
2513
2515
  displayName: "Claude Sonnet 4.6",
2514
2516
  description: "Fast and capable for everyday tasks"
2515
2517
  },
2518
+ "claude-sonnet-5": {
2519
+ displayName: "Claude Sonnet 5",
2520
+ description: "Fast and capable for everyday tasks"
2521
+ },
2516
2522
  "claude-opus-4-8": {
2517
2523
  displayName: "Claude Opus 4.8",
2518
2524
  description: "Our most capable model \u2014 best for complex work"
@@ -3008,6 +3014,12 @@ var clarityProcessContributorSchema = z14.object({
3008
3014
  userId: z14.string(),
3009
3015
  userName: z14.string()
3010
3016
  });
3017
+ var clarityProcessLandscapeMemberSchema = z14.object({
3018
+ id: z14.string(),
3019
+ userId: z14.string().nullable(),
3020
+ email: z14.string().nullable(),
3021
+ name: z14.string()
3022
+ });
3011
3023
  var clarityProcessLandscapeSummarySchema = z14.object({
3012
3024
  id: z14.guid(),
3013
3025
  name: z14.string(),
@@ -3021,6 +3033,7 @@ var clarityProcessLandscapeSummarySchema = z14.object({
3021
3033
  document: z14.number()
3022
3034
  }),
3023
3035
  contributors: z14.array(clarityProcessContributorSchema),
3036
+ people: z14.array(clarityProcessLandscapeMemberSchema).default([]),
3024
3037
  updatedAt: z14.coerce.date()
3025
3038
  });
3026
3039
  var clarityLandscapeAssignedTeamSchema = z14.object({
@@ -6509,6 +6522,10 @@ var apiKeySchema = z27.object({
6509
6522
  user_id: z27.guid(),
6510
6523
  user_name: z27.string().nullable(),
6511
6524
  user_email: z27.string().nullable(),
6525
+ /** Team this key is scoped to. `null` means the key is user-scoped. */
6526
+ team_id: z27.guid().nullable(),
6527
+ team_name: z27.string().nullable(),
6528
+ organization_name: z27.string().nullable(),
6512
6529
  last_used_at: z27.string().nullable(),
6513
6530
  expires_at: z27.string().nullable(),
6514
6531
  revoked_at: z27.string().nullable(),
@@ -6519,13 +6536,19 @@ var apiKeyListResponseSchema = z27.object({
6519
6536
  });
6520
6537
  var createApiKeyBodySchema = z27.object({
6521
6538
  name: z27.string().trim().min(1).max(100),
6522
- expires_in_days: z27.int().min(1).max(365).optional()
6539
+ expires_in_days: z27.int().min(1).max(365).optional(),
6540
+ /**
6541
+ * Team to scope the key to. Omit or pass `null` to create a user-scoped key
6542
+ * that grants access to every team the owning user can reach.
6543
+ */
6544
+ team_id: z27.guid().nullable().optional()
6523
6545
  });
6524
6546
  var createApiKeyResponseSchema = z27.object({
6525
6547
  id: z27.guid(),
6526
6548
  name: z27.string(),
6527
6549
  key: z27.string(),
6528
6550
  key_prefix: z27.string(),
6551
+ team_id: z27.guid().nullable(),
6529
6552
  expires_at: z27.string().nullable(),
6530
6553
  created_at: z27.string()
6531
6554
  });
@@ -6638,7 +6661,7 @@ var artifactDetailResponseSchema = z29.object({
6638
6661
  });
6639
6662
  var artifactMessageListResponseSchema = z29.object({
6640
6663
  data: z29.array(artifactMessageSchema),
6641
- total: z29.number()
6664
+ total: z29.number().int().nonnegative()
6642
6665
  });
6643
6666
  var artifactRevisionSchema = z29.object({
6644
6667
  id: z29.guid(),
@@ -6675,6 +6698,7 @@ var createArtifactResponseSchema = z29.object({
6675
6698
  artifact_id: z29.guid(),
6676
6699
  user_message: artifactMessageSchema
6677
6700
  });
6701
+ var duplicateArtifactResponseSchema = artifactSchema;
6678
6702
  var sendArtifactMessageBodySchema = z29.object({
6679
6703
  message: z29.string().min(1).max(1e4),
6680
6704
  // Continue from a specific version (branch). Omitted = continue from the
@@ -8108,107 +8132,131 @@ var getAgentMemoryFileResponseSchema = z47.object({
8108
8132
  generation: z47.string().optional(),
8109
8133
  ...memorySourceFieldsSchema
8110
8134
  });
8111
- var DataResidencySchema = z48.enum(["us", "eu", "apac"]);
8112
- var DataHandlingSchema = z48.enum(["standard", "zdr"]);
8113
- var browserPageSchema = z49.object({
8114
- id: z49.string().describe("Page ID"),
8115
- url: z49.url().describe("Page URL"),
8116
- faviconUrl: z49.string().describe("Page favicon URL"),
8117
- title: z49.string().describe("Page title"),
8118
- debuggerUrl: z49.url().describe("Page-specific debugger URL"),
8119
- debuggerFullscreenUrl: z49.url().describe("Page-specific full-screen debugger URL")
8120
- });
8121
- var browserSessionInfoSchema = z49.object({
8135
+ var automationSummaryApiSchema = z48.object({
8136
+ id: z48.guid(),
8137
+ name: z48.string(),
8138
+ agent_count: z48.int(),
8139
+ queue_count: z48.int(),
8140
+ created_at: z48.string(),
8141
+ updated_at: z48.string()
8142
+ });
8143
+ var automationsListApiSchema = z48.object({
8144
+ automations: z48.array(automationSummaryApiSchema),
8145
+ total: z48.int(),
8146
+ limit: z48.int(),
8147
+ offset: z48.int()
8148
+ });
8149
+ var automationDetailApiSchema = automationSummaryApiSchema.extend({
8150
+ live_revision_number: z48.int().nullable(),
8151
+ has_draft: z48.boolean()
8152
+ });
8153
+ var automationDetailResponseApiSchema = z48.object({
8154
+ automation: automationDetailApiSchema
8155
+ });
8156
+ var createAutomationResponseApiSchema = z48.object({
8157
+ automation: automationSummaryApiSchema
8158
+ });
8159
+ var DataResidencySchema = z49.enum(["us", "eu", "apac"]);
8160
+ var DataHandlingSchema = z49.enum(["standard", "zdr"]);
8161
+ var browserPageSchema = z50.object({
8162
+ id: z50.string().describe("Page ID"),
8163
+ url: z50.url().describe("Page URL"),
8164
+ faviconUrl: z50.string().describe("Page favicon URL"),
8165
+ title: z50.string().describe("Page title"),
8166
+ debuggerUrl: z50.url().describe("Page-specific debugger URL"),
8167
+ debuggerFullscreenUrl: z50.url().describe("Page-specific full-screen debugger URL")
8168
+ });
8169
+ var browserSessionInfoSchema = z50.object({
8122
8170
  // Session-level URLs (Browser Use provides these, Browserbase also has them)
8123
- wsUrl: z49.url().nullable(),
8124
- liveUrl: z49.url().nullable(),
8171
+ wsUrl: z50.url().nullable(),
8172
+ liveUrl: z50.url().nullable(),
8125
8173
  // Page-level data (Browserbase provides these, Browser Use returns empty array)
8126
- pages: z49.array(browserPageSchema)
8127
- });
8128
- var browserbaseDebugResponseSchema = z49.object({
8129
- debuggerFullscreenUrl: z49.url().describe("Session full-screen debugger URL"),
8130
- debuggerUrl: z49.url().describe("Session debugger URL"),
8131
- pages: z49.array(browserPageSchema).describe("List of pages in the session"),
8132
- wsUrl: z49.url().describe("WebSocket URL for the session")
8133
- });
8134
- var browserbaseSessionCreateResponseSchema = z49.object({
8135
- id: z49.string().describe("Session ID"),
8136
- createdAt: z49.iso.datetime().describe("Session creation timestamp"),
8137
- updatedAt: z49.iso.datetime().describe("Session last update timestamp"),
8138
- projectId: z49.string().describe("Project ID"),
8139
- startedAt: z49.iso.datetime().describe("Session start timestamp"),
8140
- endedAt: z49.iso.datetime().optional().describe("Session end timestamp"),
8141
- expiresAt: z49.iso.datetime().describe("Session expiration timestamp"),
8142
- status: z49.string().describe("Session status"),
8143
- proxyBytes: z49.number().describe("Proxy bytes used"),
8144
- avgCpuUsage: z49.number().describe("Average CPU usage"),
8145
- memoryUsage: z49.number().describe("Memory usage"),
8146
- keepAlive: z49.boolean().describe("Keep alive flag"),
8147
- contextId: z49.string().describe("Context ID"),
8148
- region: z49.string().describe("Region"),
8149
- userMetadata: z49.record(z49.string(), z49.unknown()).describe("User metadata"),
8150
- connectUrl: z49.string().describe("Connect URL"),
8151
- seleniumRemoteUrl: z49.string().describe("Selenium remote URL"),
8152
- signingKey: z49.string().describe("Signing key")
8153
- });
8154
- var getBuildParamsSchema = z50.object({
8155
- buildId: z50.guid()
8156
- });
8157
- var listBuildsParamsSchema = z50.object({
8158
- copilotId: z50.guid()
8159
- });
8160
- var updateBuildBodySchema = z50.object({
8161
- config: z50.record(z50.string(), z50.any()).optional().describe("Build configuration object"),
8162
- handoverTargetIds: z50.array(z50.guid()).optional().describe("Agent IDs that this agent can hand over work to"),
8163
- revision_name: z50.string().trim().min(1).max(80).nullable().optional().describe(
8174
+ pages: z50.array(browserPageSchema)
8175
+ });
8176
+ var browserbaseDebugResponseSchema = z50.object({
8177
+ debuggerFullscreenUrl: z50.url().describe("Session full-screen debugger URL"),
8178
+ debuggerUrl: z50.url().describe("Session debugger URL"),
8179
+ pages: z50.array(browserPageSchema).describe("List of pages in the session"),
8180
+ wsUrl: z50.url().describe("WebSocket URL for the session")
8181
+ });
8182
+ var browserbaseSessionCreateResponseSchema = z50.object({
8183
+ id: z50.string().describe("Session ID"),
8184
+ createdAt: z50.iso.datetime().describe("Session creation timestamp"),
8185
+ updatedAt: z50.iso.datetime().describe("Session last update timestamp"),
8186
+ projectId: z50.string().describe("Project ID"),
8187
+ startedAt: z50.iso.datetime().describe("Session start timestamp"),
8188
+ endedAt: z50.iso.datetime().optional().describe("Session end timestamp"),
8189
+ expiresAt: z50.iso.datetime().describe("Session expiration timestamp"),
8190
+ status: z50.string().describe("Session status"),
8191
+ proxyBytes: z50.number().describe("Proxy bytes used"),
8192
+ avgCpuUsage: z50.number().describe("Average CPU usage"),
8193
+ memoryUsage: z50.number().describe("Memory usage"),
8194
+ keepAlive: z50.boolean().describe("Keep alive flag"),
8195
+ contextId: z50.string().describe("Context ID"),
8196
+ region: z50.string().describe("Region"),
8197
+ userMetadata: z50.record(z50.string(), z50.unknown()).describe("User metadata"),
8198
+ connectUrl: z50.string().describe("Connect URL"),
8199
+ seleniumRemoteUrl: z50.string().describe("Selenium remote URL"),
8200
+ signingKey: z50.string().describe("Signing key")
8201
+ });
8202
+ var getBuildParamsSchema = z51.object({
8203
+ buildId: z51.guid()
8204
+ });
8205
+ var listBuildsParamsSchema = z51.object({
8206
+ copilotId: z51.guid()
8207
+ });
8208
+ var updateBuildBodySchema = z51.object({
8209
+ config: z51.record(z51.string(), z51.any()).optional().describe("Build configuration object"),
8210
+ handoverTargetIds: z51.array(z51.guid()).optional().describe("Agent IDs that this agent can hand over work to"),
8211
+ revision_name: z51.string().trim().min(1).max(80).nullable().optional().describe(
8164
8212
  "Optional user-defined name for this revision. Pass null to clear."
8165
8213
  ),
8166
- revision_description: z50.string().trim().max(500).nullable().optional().describe(
8214
+ revision_description: z51.string().trim().max(500).nullable().optional().describe(
8167
8215
  "Optional user-defined description for this revision. Pass null to clear."
8168
8216
  )
8169
8217
  });
8170
- var createBuildBodySchema = z50.object({
8171
- copilot_id: z50.guid().describe("Agent ID"),
8172
- name: z50.string().describe("Build name"),
8173
- config: z50.record(z50.string(), z50.any()).optional().describe("Build configuration object"),
8174
- handoverTargetIds: z50.array(z50.guid()).optional().describe("Agent IDs that this agent can hand over work to"),
8175
- source_build_id: z50.guid().optional().describe("Build ID to copy integrations and queue links from")
8176
- });
8177
- var buildResponseSchema = z50.object({
8178
- build_id: z50.string().describe("Build ID"),
8179
- name: z50.string().describe("Build name"),
8180
- config: z50.record(z50.string(), z50.any()).nullable().describe("Build configuration"),
8181
- copilot_id: z50.string().describe("Associated copilot ID"),
8182
- status: z50.string().describe("Build status"),
8183
- created_at: z50.coerce.date().describe("Creation timestamp"),
8184
- updated_at: z50.coerce.date().nullable().describe("Last update timestamp"),
8185
- revision_number: z50.number().nullable().describe("Revision number"),
8186
- revision_name: z50.string().nullable().optional().describe("User-defined name for this revision"),
8187
- revision_description: z50.string().nullable().optional().describe("User-defined description for this revision"),
8188
- parent_build_id: z50.string().nullable().describe("Parent build ID"),
8189
- created_by: z50.string().nullable().describe("User who created this build"),
8190
- created_by_name: z50.string().nullable().optional().describe("Display name of the user who created this build")
8191
- });
8192
- var listBuildsResponseSchema = z50.array(buildResponseSchema);
8193
- var buildResponseApiSchema = z50.object({
8218
+ var createBuildBodySchema = z51.object({
8219
+ copilot_id: z51.guid().describe("Agent ID"),
8220
+ name: z51.string().describe("Build name"),
8221
+ config: z51.record(z51.string(), z51.any()).optional().describe("Build configuration object"),
8222
+ handoverTargetIds: z51.array(z51.guid()).optional().describe("Agent IDs that this agent can hand over work to"),
8223
+ source_build_id: z51.guid().optional().describe("Build ID to copy integrations and queue links from")
8224
+ });
8225
+ var buildResponseSchema = z51.object({
8226
+ build_id: z51.string().describe("Build ID"),
8227
+ name: z51.string().describe("Build name"),
8228
+ config: z51.record(z51.string(), z51.any()).nullable().describe("Build configuration"),
8229
+ copilot_id: z51.string().describe("Associated copilot ID"),
8230
+ status: z51.string().describe("Build status"),
8231
+ created_at: z51.coerce.date().describe("Creation timestamp"),
8232
+ updated_at: z51.coerce.date().nullable().describe("Last update timestamp"),
8233
+ revision_number: z51.number().nullable().describe("Revision number"),
8234
+ revision_name: z51.string().nullable().optional().describe("User-defined name for this revision"),
8235
+ revision_description: z51.string().nullable().optional().describe("User-defined description for this revision"),
8236
+ parent_build_id: z51.string().nullable().describe("Parent build ID"),
8237
+ created_by: z51.string().nullable().describe("User who created this build"),
8238
+ created_by_name: z51.string().nullable().optional().describe("Display name of the user who created this build")
8239
+ });
8240
+ var listBuildsResponseSchema = z51.array(buildResponseSchema);
8241
+ var buildResponseApiSchema = z51.object({
8194
8242
  build: buildApiSchema
8195
8243
  });
8196
- var buildsListApiSchema = z50.object({
8197
- builds: z50.array(buildApiSchema),
8198
- total: z50.int(),
8199
- limit: z50.int(),
8200
- offset: z50.int()
8244
+ var buildsListApiSchema = z51.object({
8245
+ builds: z51.array(buildApiSchema),
8246
+ total: z51.int(),
8247
+ limit: z51.int(),
8248
+ offset: z51.int()
8201
8249
  });
8202
- var createBuildResponseApiSchema = z50.object({
8250
+ var createBuildResponseApiSchema = z51.object({
8203
8251
  build: buildApiSchema,
8204
- agent: z50.object({
8205
- id: z50.guid()
8252
+ agent: z51.object({
8253
+ id: z51.guid()
8206
8254
  })
8207
8255
  });
8208
- var builderRunGenerateResponseSchema = z50.object({
8209
- status: z50.literal("generating"),
8210
- builderRunId: z50.string(),
8211
- buildId: z50.string()
8256
+ var builderRunGenerateResponseSchema = z51.object({
8257
+ status: z51.literal("generating"),
8258
+ builderRunId: z51.string(),
8259
+ buildId: z51.string()
8212
8260
  });
8213
8261
  var BUILDER_RUN_STATUSES = [
8214
8262
  "not_started",
@@ -8219,252 +8267,252 @@ var BUILDER_RUN_STATUSES = [
8219
8267
  "waiting_for_input",
8220
8268
  "waiting_for_approve"
8221
8269
  ];
8222
- var builderRunStatusSchema = z50.object({
8223
- id: z50.string(),
8224
- status: z50.enum(BUILDER_RUN_STATUSES),
8225
- build_id: z50.string(),
8226
- started_at: z50.string().nullable(),
8227
- completed_at: z50.string().nullable(),
8270
+ var builderRunStatusSchema = z51.object({
8271
+ id: z51.string(),
8272
+ status: z51.enum(BUILDER_RUN_STATUSES),
8273
+ build_id: z51.string(),
8274
+ started_at: z51.string().nullable(),
8275
+ completed_at: z51.string().nullable(),
8228
8276
  checkpoint_config: StoredAgentConfigSchema.nullable(),
8229
8277
  pending_user_questions: askUserQuestionInputSchema.nullable(),
8230
- schedule_suggested: z50.boolean().optional()
8231
- });
8232
- var filterValueSchema = z51.object({
8233
- value: z51.string().min(1),
8234
- name: z51.string().min(1)
8235
- });
8236
- var filterCategorySchema = z51.object({
8237
- key: z51.string(),
8238
- name: z51.string().min(1),
8239
- selectionMode: z51.enum(["single", "multi"]),
8240
- values: z51.array(filterValueSchema)
8241
- });
8242
- var caseFiltersResponseSchema = z51.object({
8243
- filters: z51.array(filterCategorySchema)
8244
- });
8245
- var caseQueueFolderResponseSchema = z52.object({
8246
- id: z52.string(),
8247
- name: z52.string(),
8248
- team_id: z52.string(),
8249
- parent_folder_id: z52.string().nullable(),
8250
- created_at: z52.string(),
8251
- updated_at: z52.string()
8252
- });
8253
- var caseQueueFoldersListResponseSchema = z52.object({
8254
- folders: z52.array(caseQueueFolderResponseSchema)
8255
- });
8256
- var createCaseQueueFolderRequestSchema = z52.object({
8257
- name: z52.string().min(1).max(100),
8258
- parent_folder_id: z52.guid().nullable().optional()
8259
- });
8260
- var updateCaseQueueFolderRequestSchema = z52.object({
8261
- name: z52.string().min(1).max(100).optional(),
8262
- parent_folder_id: z52.guid().nullable().optional()
8263
- });
8264
- var moveQueuesToFolderRequestSchema = z52.object({
8265
- queue_ids: z52.array(z52.guid()).min(1),
8266
- folder_id: z52.guid().nullable()
8267
- });
8268
- var caseQueueLabelSchema = z53.object({
8269
- id: z53.guid(),
8270
- key: z53.string(),
8278
+ schedule_suggested: z51.boolean().optional()
8279
+ });
8280
+ var filterValueSchema = z52.object({
8281
+ value: z52.string().min(1),
8282
+ name: z52.string().min(1)
8283
+ });
8284
+ var filterCategorySchema = z52.object({
8285
+ key: z52.string(),
8286
+ name: z52.string().min(1),
8287
+ selectionMode: z52.enum(["single", "multi"]),
8288
+ values: z52.array(filterValueSchema)
8289
+ });
8290
+ var caseFiltersResponseSchema = z52.object({
8291
+ filters: z52.array(filterCategorySchema)
8292
+ });
8293
+ var caseQueueFolderResponseSchema = z53.object({
8294
+ id: z53.string(),
8295
+ name: z53.string(),
8296
+ team_id: z53.string(),
8297
+ parent_folder_id: z53.string().nullable(),
8298
+ created_at: z53.string(),
8299
+ updated_at: z53.string()
8300
+ });
8301
+ var caseQueueFoldersListResponseSchema = z53.object({
8302
+ folders: z53.array(caseQueueFolderResponseSchema)
8303
+ });
8304
+ var createCaseQueueFolderRequestSchema = z53.object({
8305
+ name: z53.string().min(1).max(100),
8306
+ parent_folder_id: z53.guid().nullable().optional()
8307
+ });
8308
+ var updateCaseQueueFolderRequestSchema = z53.object({
8309
+ name: z53.string().min(1).max(100).optional(),
8310
+ parent_folder_id: z53.guid().nullable().optional()
8311
+ });
8312
+ var moveQueuesToFolderRequestSchema = z53.object({
8313
+ queue_ids: z53.array(z53.guid()).min(1),
8314
+ folder_id: z53.guid().nullable()
8315
+ });
8316
+ var caseQueueLabelSchema = z54.object({
8317
+ id: z54.guid(),
8318
+ key: z54.string(),
8271
8319
  // Empty string key means a simple tag (value-only); non-empty key creates a key-value categorization
8272
- value: z53.string().min(1),
8273
- color_hue: z53.int().min(0).max(360)
8320
+ value: z54.string().min(1),
8321
+ color_hue: z54.int().min(0).max(360)
8274
8322
  });
8275
- var caseLabelsListResponseSchema = z53.object({
8276
- labels: z53.array(caseQueueLabelSchema)
8323
+ var caseLabelsListResponseSchema = z54.object({
8324
+ labels: z54.array(caseQueueLabelSchema)
8277
8325
  });
8278
- var caseLabelAssignInputSchema = z53.object({
8279
- labels: z53.array(
8280
- z53.object({
8281
- key: z53.string().optional().default(""),
8282
- value: z53.string().min(1)
8326
+ var caseLabelAssignInputSchema = z54.object({
8327
+ labels: z54.array(
8328
+ z54.object({
8329
+ key: z54.string().optional().default(""),
8330
+ value: z54.string().min(1)
8283
8331
  })
8284
8332
  ).min(1).max(50)
8285
8333
  });
8286
- var caseLabelAssignResponseSchema = z53.object({
8287
- labels: z53.array(caseQueueLabelSchema)
8334
+ var caseLabelAssignResponseSchema = z54.object({
8335
+ labels: z54.array(caseQueueLabelSchema)
8288
8336
  });
8289
- var caseLabelUpdateInputSchema = z53.object({
8337
+ var caseLabelUpdateInputSchema = z54.object({
8290
8338
  // key is a partial-update field: omit to leave the existing key unchanged.
8291
8339
  // Do NOT add `.default("")` — a missing key must not silently relocate the
8292
8340
  // label into the empty-key ("Labels") bucket when the caller only wants to
8293
8341
  // change color or value.
8294
- key: z53.string().optional(),
8295
- value: z53.string().min(1),
8296
- color_hue: z53.int().min(0).max(360).optional()
8342
+ key: z54.string().optional(),
8343
+ value: z54.string().min(1),
8344
+ color_hue: z54.int().min(0).max(360).optional()
8297
8345
  });
8298
- var caseLabelUpdateResponseSchema = z53.object({
8346
+ var caseLabelUpdateResponseSchema = z54.object({
8299
8347
  label: caseQueueLabelSchema
8300
8348
  });
8301
- var caseLabelUnlinkInputSchema = z53.object({
8302
- label_ids: z53.array(z53.guid()).min(1)
8349
+ var caseLabelUnlinkInputSchema = z54.object({
8350
+ label_ids: z54.array(z54.guid()).min(1)
8303
8351
  });
8304
- var caseLabelUnlinkResponseSchema = z53.object({
8305
- success: z53.boolean()
8352
+ var caseLabelUnlinkResponseSchema = z54.object({
8353
+ success: z54.boolean()
8306
8354
  });
8307
- var caseLabelCreateInputSchema = z53.object({
8308
- key: z53.string().optional().default(""),
8309
- value: z53.string().min(1),
8310
- color_hue: z53.int().min(0).max(360).optional()
8355
+ var caseLabelCreateInputSchema = z54.object({
8356
+ key: z54.string().optional().default(""),
8357
+ value: z54.string().min(1),
8358
+ color_hue: z54.int().min(0).max(360).optional()
8311
8359
  });
8312
- var caseLabelCreateResponseSchema = z53.object({
8360
+ var caseLabelCreateResponseSchema = z54.object({
8313
8361
  label: caseQueueLabelSchema.extend({
8314
- case_count: z53.int().min(0)
8362
+ case_count: z54.int().min(0)
8315
8363
  })
8316
8364
  });
8317
8365
  var caseQueueLabelWithCountSchema = caseQueueLabelSchema.extend({
8318
- case_count: z53.int().min(0)
8366
+ case_count: z54.int().min(0)
8319
8367
  });
8320
- var caseLabelsWithCountsListResponseSchema = z53.object({
8321
- labels: z53.array(caseQueueLabelWithCountSchema)
8368
+ var caseLabelsWithCountsListResponseSchema = z54.object({
8369
+ labels: z54.array(caseQueueLabelWithCountSchema)
8322
8370
  });
8323
8371
  var SEQUENTIAL_TRIGGER_CONCURRENCY = 1;
8324
- var settableTriggerConcurrencySchema = z54.literal(SEQUENTIAL_TRIGGER_CONCURRENCY).nullable();
8325
- var caseTriggerApiSchema = z54.object({
8326
- id: z54.string(),
8327
- agent_id: z54.string(),
8328
- case_queue_id: z54.string(),
8329
- case_queue_name: z54.string(),
8330
- user_id: z54.string(),
8331
- enabled: z54.boolean(),
8332
- concurrency: z54.int().positive().nullable(),
8333
- created_at: z54.string(),
8334
- updated_at: z54.string(),
8335
- creator_display_name: z54.string().nullable(),
8336
- can_disable: z54.boolean(),
8337
- has_conflict: z54.boolean(),
8338
- conflicting_agents: z54.array(conflictingAgentSchema)
8339
- });
8340
- var caseTriggerResponseSchema = z54.object({
8372
+ var settableTriggerConcurrencySchema = z55.literal(SEQUENTIAL_TRIGGER_CONCURRENCY).nullable();
8373
+ var caseTriggerApiSchema = z55.object({
8374
+ id: z55.string(),
8375
+ agent_id: z55.string(),
8376
+ case_queue_id: z55.string(),
8377
+ case_queue_name: z55.string(),
8378
+ user_id: z55.string(),
8379
+ enabled: z55.boolean(),
8380
+ concurrency: z55.int().positive().nullable(),
8381
+ created_at: z55.string(),
8382
+ updated_at: z55.string(),
8383
+ creator_display_name: z55.string().nullable(),
8384
+ can_disable: z55.boolean(),
8385
+ has_conflict: z55.boolean(),
8386
+ conflicting_agents: z55.array(conflictingAgentSchema)
8387
+ });
8388
+ var caseTriggerResponseSchema = z55.object({
8341
8389
  case_trigger: caseTriggerApiSchema
8342
8390
  });
8343
- var caseTriggersListResponseSchema = z54.object({
8344
- case_triggers: z54.array(caseTriggerApiSchema)
8391
+ var caseTriggersListResponseSchema = z55.object({
8392
+ case_triggers: z55.array(caseTriggerApiSchema)
8345
8393
  });
8346
- var deleteCaseTriggerResponseSchema = z54.object({
8347
- success: z54.literal(true)
8394
+ var deleteCaseTriggerResponseSchema = z55.object({
8395
+ success: z55.literal(true)
8348
8396
  });
8349
- var caseTriggerConflictPreviewResponseSchema = z54.object({
8350
- has_conflict: z54.boolean(),
8351
- conflicting_agents: z54.array(conflictingAgentSchema)
8397
+ var caseTriggerConflictPreviewResponseSchema = z55.object({
8398
+ has_conflict: z55.boolean(),
8399
+ conflicting_agents: z55.array(conflictingAgentSchema)
8352
8400
  });
8353
- var integrationConfigMinSchema = z54.object({
8354
- id: z54.string(),
8355
- integration_id: z54.guid().nullable(),
8356
- integration_type: z54.string()
8401
+ var integrationConfigMinSchema = z55.object({
8402
+ id: z55.string(),
8403
+ integration_id: z55.guid().nullable(),
8404
+ integration_type: z55.string()
8357
8405
  });
8358
- var integrationConfigsResponseSchema = z54.object({
8359
- integrations: z54.array(integrationConfigMinSchema)
8406
+ var integrationConfigsResponseSchema = z55.object({
8407
+ integrations: z55.array(integrationConfigMinSchema)
8360
8408
  });
8361
- var caseQueueMinSchema = z54.object({
8362
- id: z54.string(),
8363
- name: z54.string()
8409
+ var caseQueueMinSchema = z55.object({
8410
+ id: z55.string(),
8411
+ name: z55.string()
8364
8412
  });
8365
- var caseQueuesForSlotResponseSchema = z54.object({
8366
- queues: z54.array(caseQueueMinSchema)
8413
+ var caseQueuesForSlotResponseSchema = z55.object({
8414
+ queues: z55.array(caseQueueMinSchema)
8367
8415
  });
8368
8416
  var APPROVAL_DECISION = {
8369
8417
  APPROVED: "approved",
8370
8418
  REJECTED: "rejected"
8371
8419
  };
8372
- var approvalDecisionSchema = z55.enum([
8420
+ var approvalDecisionSchema = z56.enum([
8373
8421
  APPROVAL_DECISION.APPROVED,
8374
8422
  APPROVAL_DECISION.REJECTED
8375
8423
  ]);
8376
8424
  var HUMAN_REQUEST_TITLE_MAX = 200;
8377
8425
  var HUMAN_REQUEST_PROMPT_MAX = 2e3;
8378
8426
  var MAX_APPROVERS_PER_BATCH = 20;
8379
- var humanRequestBatchRowSchema = z55.object({
8380
- id: z55.string().uuid(),
8381
- assignee_user_id: z55.string().uuid(),
8382
- assignee_name: z55.string().nullable(),
8383
- assignee_email: z55.string().nullable(),
8427
+ var humanRequestBatchRowSchema = z56.object({
8428
+ id: z56.string().uuid(),
8429
+ assignee_user_id: z56.string().uuid(),
8430
+ assignee_name: z56.string().nullable(),
8431
+ assignee_email: z56.string().nullable(),
8384
8432
  /**
8385
8433
  * The free-text ask the agent posed to THIS specific approver. Each row
8386
8434
  * carries its own prompt — the multi-approver flow does not assume a
8387
8435
  * single shared question across approvers.
8388
8436
  */
8389
- prompt: z55.string(),
8437
+ prompt: z56.string(),
8390
8438
  decision: approvalDecisionSchema.nullable(),
8391
- responded_at: z55.string().nullable(),
8392
- responded_by_user_id: z55.string().uuid().nullable(),
8393
- responded_by_name: z55.string().nullable(),
8394
- responded_by_email: z55.string().nullable(),
8395
- cancelled_at: z55.string().nullable(),
8396
- cancellation_reason: z55.string().nullable()
8397
- });
8398
- var approvalBatchSchema = z55.object({
8399
- id: z55.string().uuid(),
8400
- case_queue_item_id: z55.string().uuid(),
8401
- agent_run_id: z55.string().uuid(),
8402
- title: z55.string(),
8403
- created_at: z55.string(),
8404
- resolved_at: z55.string().nullable(),
8405
- cancelled_at: z55.string().nullable(),
8406
- cancellation_reason: z55.string().nullable(),
8407
- rows: z55.array(humanRequestBatchRowSchema)
8408
- });
8409
- var approvalRequestInputSchema = z55.object({
8410
- approverUserId: z55.string().uuid(),
8411
- prompt: z55.string().trim().min(1).max(HUMAN_REQUEST_PROMPT_MAX)
8412
- });
8413
- var createHumanRequestBatchBodySchema = z55.object({
8414
- agentRunId: z55.string().uuid(),
8415
- title: z55.string().trim().min(1).max(HUMAN_REQUEST_TITLE_MAX),
8416
- requests: z55.array(approvalRequestInputSchema).min(1).max(MAX_APPROVERS_PER_BATCH)
8417
- });
8418
- var createHumanRequestBatchResponseSchema = z55.object({
8419
- batchId: z55.string().uuid(),
8420
- createdAt: z55.string(),
8421
- humanRequestIds: z55.array(z55.string().uuid())
8422
- });
8423
- var requestCaseApprovalsToolInputSchema = z55.object({
8424
- title: z55.string().trim().min(1).max(HUMAN_REQUEST_TITLE_MAX),
8425
- requests: z55.array(approvalRequestInputSchema).min(1).max(MAX_APPROVERS_PER_BATCH)
8426
- });
8427
- var requestCaseApprovalsBatchStatusSchema = z55.enum([
8439
+ responded_at: z56.string().nullable(),
8440
+ responded_by_user_id: z56.string().uuid().nullable(),
8441
+ responded_by_name: z56.string().nullable(),
8442
+ responded_by_email: z56.string().nullable(),
8443
+ cancelled_at: z56.string().nullable(),
8444
+ cancellation_reason: z56.string().nullable()
8445
+ });
8446
+ var approvalBatchSchema = z56.object({
8447
+ id: z56.string().uuid(),
8448
+ case_queue_item_id: z56.string().uuid(),
8449
+ agent_run_id: z56.string().uuid(),
8450
+ title: z56.string(),
8451
+ created_at: z56.string(),
8452
+ resolved_at: z56.string().nullable(),
8453
+ cancelled_at: z56.string().nullable(),
8454
+ cancellation_reason: z56.string().nullable(),
8455
+ rows: z56.array(humanRequestBatchRowSchema)
8456
+ });
8457
+ var approvalRequestInputSchema = z56.object({
8458
+ approverUserId: z56.string().uuid(),
8459
+ prompt: z56.string().trim().min(1).max(HUMAN_REQUEST_PROMPT_MAX)
8460
+ });
8461
+ var createHumanRequestBatchBodySchema = z56.object({
8462
+ agentRunId: z56.string().uuid(),
8463
+ title: z56.string().trim().min(1).max(HUMAN_REQUEST_TITLE_MAX),
8464
+ requests: z56.array(approvalRequestInputSchema).min(1).max(MAX_APPROVERS_PER_BATCH)
8465
+ });
8466
+ var createHumanRequestBatchResponseSchema = z56.object({
8467
+ batchId: z56.string().uuid(),
8468
+ createdAt: z56.string(),
8469
+ humanRequestIds: z56.array(z56.string().uuid())
8470
+ });
8471
+ var requestCaseApprovalsToolInputSchema = z56.object({
8472
+ title: z56.string().trim().min(1).max(HUMAN_REQUEST_TITLE_MAX),
8473
+ requests: z56.array(approvalRequestInputSchema).min(1).max(MAX_APPROVERS_PER_BATCH)
8474
+ });
8475
+ var requestCaseApprovalsBatchStatusSchema = z56.enum([
8428
8476
  "resolved",
8429
8477
  "cancelled"
8430
8478
  ]);
8431
- var requestCaseApprovalsDecisionEntrySchema = z55.object({
8432
- assigneeUserId: z55.string().uuid(),
8479
+ var requestCaseApprovalsDecisionEntrySchema = z56.object({
8480
+ assigneeUserId: z56.string().uuid(),
8433
8481
  decision: approvalDecisionSchema,
8434
- respondedAt: z55.string(),
8435
- respondedByUserId: z55.string().uuid()
8482
+ respondedAt: z56.string(),
8483
+ respondedByUserId: z56.string().uuid()
8436
8484
  });
8437
- var requestCaseApprovalsToolOutputSchema = z55.object({
8485
+ var requestCaseApprovalsToolOutputSchema = z56.object({
8438
8486
  status: requestCaseApprovalsBatchStatusSchema,
8439
- decisions: z55.array(requestCaseApprovalsDecisionEntrySchema)
8440
- });
8441
- var humanRequestContextSchema = z55.discriminatedUnion("kind", [
8442
- z55.object({
8443
- kind: z55.literal("run"),
8444
- runId: z55.string().uuid(),
8445
- buildId: z55.string().uuid(),
8446
- agentId: z55.string().uuid(),
8447
- agentName: z55.string().nullable()
8487
+ decisions: z56.array(requestCaseApprovalsDecisionEntrySchema)
8488
+ });
8489
+ var humanRequestContextSchema = z56.discriminatedUnion("kind", [
8490
+ z56.object({
8491
+ kind: z56.literal("run"),
8492
+ runId: z56.string().uuid(),
8493
+ buildId: z56.string().uuid(),
8494
+ agentId: z56.string().uuid(),
8495
+ agentName: z56.string().nullable()
8448
8496
  }),
8449
- z55.object({
8450
- kind: z55.literal("case"),
8451
- queueId: z55.string().uuid(),
8452
- caseId: z55.string().uuid(),
8453
- caseTitle: z55.string()
8497
+ z56.object({
8498
+ kind: z56.literal("case"),
8499
+ queueId: z56.string().uuid(),
8500
+ caseId: z56.string().uuid(),
8501
+ caseTitle: z56.string()
8454
8502
  })
8455
8503
  ]);
8456
- var caseQueueItemSchema = z56.object({
8457
- id: z56.guid(),
8458
- queue_id: z56.guid(),
8459
- title: z56.string(),
8460
- data: z56.string(),
8461
- status: z56.enum(["pending", "completed", "failed"]),
8504
+ var caseQueueItemSchema = z57.object({
8505
+ id: z57.guid(),
8506
+ queue_id: z57.guid(),
8507
+ title: z57.string(),
8508
+ data: z57.string(),
8509
+ status: z57.enum(["pending", "completed", "failed"]),
8462
8510
  /**
8463
8511
  * Derived display bucket combining the settlement status with ownership,
8464
8512
  * open HITL tokens, and scheduling. See CASE_DISPLAY_STATUS in
8465
8513
  * `constants/case-queue.ts` for the derivation rules.
8466
8514
  */
8467
- display_status: z56.enum([
8515
+ display_status: z57.enum([
8468
8516
  "pending",
8469
8517
  "in_progress",
8470
8518
  "needs_input",
@@ -8472,84 +8520,84 @@ var caseQueueItemSchema = z56.object({
8472
8520
  "completed",
8473
8521
  "failed"
8474
8522
  ]),
8475
- claimed_at: z56.string().nullable(),
8476
- claimed_by_run_id: z56.string().nullable(),
8477
- completed_at: z56.string().nullable(),
8523
+ claimed_at: z57.string().nullable(),
8524
+ claimed_by_run_id: z57.string().nullable(),
8525
+ completed_at: z57.string().nullable(),
8478
8526
  /** When the case is scheduled to be re-handled (null if not postponed) */
8479
- postponed_to: z56.string().nullable(),
8480
- created_at: z56.string(),
8481
- updated_at: z56.string(),
8482
- created_by_user_id: z56.guid().nullable(),
8483
- created_by_user_name: z56.string().nullable(),
8484
- created_by_user_email: z56.string().nullable(),
8527
+ postponed_to: z57.string().nullable(),
8528
+ created_at: z57.string(),
8529
+ updated_at: z57.string(),
8530
+ created_by_user_id: z57.guid().nullable(),
8531
+ created_by_user_name: z57.string().nullable(),
8532
+ created_by_user_email: z57.string().nullable(),
8485
8533
  /** Status of the associated agent run (running, waiting, etc.) - null if no active run */
8486
- agent_run_status: z56.string().nullable(),
8534
+ agent_run_status: z57.string().nullable(),
8487
8535
  /** User ID of the owner of the active agent run - null if no active run */
8488
- agent_run_user_id: z56.guid().nullable(),
8536
+ agent_run_user_id: z57.guid().nullable(),
8489
8537
  /** ID of the pending human request for cases waiting for input */
8490
- pending_human_request_id: z56.guid().nullable(),
8538
+ pending_human_request_id: z57.guid().nullable(),
8491
8539
  /** ID of the open `human_request_batch` bound to this case, if any. Used to derive the `awaiting_approval` UI state. */
8492
- pending_approval_batch_id: z56.guid().nullable(),
8540
+ pending_approval_batch_id: z57.guid().nullable(),
8493
8541
  /** User IDs of approvers named on the open batch's unresolved rows. Used to switch the badge to "Awaiting your approval" when the viewer is one of them. */
8494
- pending_approval_assignee_user_ids: z56.array(z56.guid()),
8542
+ pending_approval_assignee_user_ids: z57.array(z57.guid()),
8495
8543
  /** Count of resolved `human_request` approval rows on this case with `decision = 'approved'`. */
8496
- approval_approved_count: z56.int().nonnegative(),
8544
+ approval_approved_count: z57.int().nonnegative(),
8497
8545
  /** Count of resolved `human_request` approval rows on this case with `decision = 'rejected'`. */
8498
- approval_rejected_count: z56.int().nonnegative(),
8546
+ approval_rejected_count: z57.int().nonnegative(),
8499
8547
  /** Snippet from the data field showing search match context. Only present when search matches data. */
8500
- search_match_data_snippet: z56.object({
8501
- before: z56.string(),
8502
- match: z56.string(),
8503
- after: z56.string()
8548
+ search_match_data_snippet: z57.object({
8549
+ before: z57.string(),
8550
+ match: z57.string(),
8551
+ after: z57.string()
8504
8552
  }).optional(),
8505
- labels: z56.array(caseQueueLabelSchema)
8506
- });
8507
- var caseQueueItemEventSchema = z56.object({
8508
- id: z56.guid(),
8509
- case_queue_item_id: z56.guid(),
8510
- agent_run_id: z56.guid().nullable(),
8511
- human_request_id: z56.guid().nullable(),
8512
- type: z56.string(),
8513
- reason: z56.string().nullable(),
8514
- created_at: z56.string(),
8515
- agent_id: z56.guid().nullable(),
8516
- agent_name: z56.string().nullable(),
8553
+ labels: z57.array(caseQueueLabelSchema)
8554
+ });
8555
+ var caseQueueItemEventSchema = z57.object({
8556
+ id: z57.guid(),
8557
+ case_queue_item_id: z57.guid(),
8558
+ agent_run_id: z57.guid().nullable(),
8559
+ human_request_id: z57.guid().nullable(),
8560
+ type: z57.string(),
8561
+ reason: z57.string().nullable(),
8562
+ created_at: z57.string(),
8563
+ agent_id: z57.guid().nullable(),
8564
+ agent_name: z57.string().nullable(),
8517
8565
  /**
8518
8566
  * Owner of the agent run referenced by this event (joined from
8519
8567
  * `agent_run.user_id`). The frontend mirrors the backend
8520
8568
  * `assertCanAccessRun` gate against this id + the viewer's team role to
8521
8569
  * decide whether the row should expose a click affordance.
8522
8570
  */
8523
- user_id: z56.guid().nullable(),
8524
- user_name: z56.string().nullable(),
8525
- user_email: z56.string().nullable(),
8526
- human_request_title: z56.string().nullable()
8527
- });
8528
- var casesListResponseSchema = z56.object({
8529
- cases: z56.array(caseQueueItemSchema),
8530
- total: z56.number(),
8531
- limit: z56.int(),
8532
- offset: z56.int()
8533
- });
8534
- var caseCreateInputSchema = z56.object({
8535
- title: z56.string().min(1).max(500).describe(
8571
+ user_id: z57.guid().nullable(),
8572
+ user_name: z57.string().nullable(),
8573
+ user_email: z57.string().nullable(),
8574
+ human_request_title: z57.string().nullable()
8575
+ });
8576
+ var casesListResponseSchema = z57.object({
8577
+ cases: z57.array(caseQueueItemSchema),
8578
+ total: z57.number(),
8579
+ limit: z57.int(),
8580
+ offset: z57.int()
8581
+ });
8582
+ var caseCreateInputSchema = z57.object({
8583
+ title: z57.string().min(1).max(500).describe(
8536
8584
  "Short title for the case (max 500 characters). Put long context in `data`."
8537
8585
  ),
8538
- data: z56.string().optional().describe(
8586
+ data: z57.string().optional().describe(
8539
8587
  "Additional data for the case. Free-form text or JSON; Agents receive this on claim."
8540
8588
  ),
8541
- labels: z56.array(
8542
- z56.object({
8543
- key: z56.string().optional().default("").describe("Label key (omit for a simple tag)."),
8544
- value: z56.string().min(1).describe("Label value (required).")
8589
+ labels: z57.array(
8590
+ z57.object({
8591
+ key: z57.string().optional().default("").describe("Label key (omit for a simple tag)."),
8592
+ value: z57.string().min(1).describe("Label value (required).")
8545
8593
  })
8546
8594
  ).max(50).optional().describe(
8547
8595
  "Optional labels to assign to the case at creation. Labels are created on the queue if they don't already exist."
8548
8596
  )
8549
8597
  });
8550
- var caseCreateRequestSchema = z56.object({
8598
+ var caseCreateRequestSchema = z57.object({
8551
8599
  case: caseCreateInputSchema.optional(),
8552
- cases: z56.array(caseCreateInputSchema).min(1).max(100).optional()
8600
+ cases: z57.array(caseCreateInputSchema).min(1).max(100).optional()
8553
8601
  }).superRefine((val, ctx) => {
8554
8602
  const hasCase = val.case !== void 0;
8555
8603
  const hasCases = val.cases !== void 0;
@@ -8567,28 +8615,28 @@ var caseCreateRequestSchema = z56.object({
8567
8615
  });
8568
8616
  }
8569
8617
  });
8570
- var caseCreateResponseSchema = z56.object({
8571
- added_cases: z56.array(caseQueueItemSchema)
8618
+ var caseCreateResponseSchema = z57.object({
8619
+ added_cases: z57.array(caseQueueItemSchema)
8572
8620
  });
8573
- var casesStatsSchema = z56.object({
8574
- total: z56.number(),
8621
+ var casesStatsSchema = z57.object({
8622
+ total: z57.number(),
8575
8623
  /** Pending, unowned, not postponed — idle and claimable */
8576
- pending: z56.number(),
8624
+ pending: z57.number(),
8577
8625
  /** "In Progress": pending cases owned by a run with no open HITL token */
8578
- claimed: z56.number(),
8626
+ claimed: z57.number(),
8579
8627
  /** "Needs Input": pending cases whose owning run has an open HITL token */
8580
- waiting: z56.number(),
8628
+ waiting: z57.number(),
8581
8629
  /** Pending, unowned cases postponed for later */
8582
- postponed: z56.number(),
8583
- completed: z56.number(),
8584
- failed: z56.number()
8630
+ postponed: z57.number(),
8631
+ completed: z57.number(),
8632
+ failed: z57.number()
8585
8633
  });
8586
- var casesStatsResponseSchema = z56.object({
8634
+ var casesStatsResponseSchema = z57.object({
8587
8635
  stats: casesStatsSchema
8588
8636
  });
8589
- var caseDetailResponseSchema = z56.object({
8637
+ var caseDetailResponseSchema = z57.object({
8590
8638
  case: caseQueueItemSchema,
8591
- events: z56.array(caseQueueItemEventSchema),
8639
+ events: z57.array(caseQueueItemEventSchema),
8592
8640
  /**
8593
8641
  * Every approval batch ever created on this case, newest first. Each
8594
8642
  * batch carries one child row per named approver (with their decision
@@ -8596,21 +8644,21 @@ var caseDetailResponseSchema = z56.object({
8596
8644
  * grouped per batch so the case-level approval history reads inline.
8597
8645
  * Empty array when no batch has ever been created on the case.
8598
8646
  */
8599
- approvalBatches: z56.array(approvalBatchSchema)
8647
+ approvalBatches: z57.array(approvalBatchSchema)
8600
8648
  });
8601
- var caseJobSummarySchema = z56.object({
8602
- id: z56.string().uuid(),
8603
- case_queue_item_id: z56.string().uuid(),
8604
- agent_id: z56.string().uuid(),
8605
- agent_name: z56.string(),
8649
+ var caseJobSummarySchema = z57.object({
8650
+ id: z57.string().uuid(),
8651
+ case_queue_item_id: z57.string().uuid(),
8652
+ agent_id: z57.string().uuid(),
8653
+ agent_name: z57.string(),
8606
8654
  status: agentRunStatusSchema,
8607
- source: z56.string().nullable(),
8608
- created_at: z56.string(),
8609
- started_at: z56.string().nullable(),
8610
- completed_at: z56.string().nullable(),
8611
- claimed_at: z56.string(),
8612
- has_pending_human_request: z56.boolean(),
8613
- pending_human_request_title: z56.string().nullable(),
8655
+ source: z57.string().nullable(),
8656
+ created_at: z57.string(),
8657
+ started_at: z57.string().nullable(),
8658
+ completed_at: z57.string().nullable(),
8659
+ claimed_at: z57.string(),
8660
+ has_pending_human_request: z57.boolean(),
8661
+ pending_human_request_title: z57.string().nullable(),
8614
8662
  evaluation: evalSummarySchema,
8615
8663
  /**
8616
8664
  * Owner of the agent run (from `agent_run.user_id`). The frontend mirrors
@@ -8618,225 +8666,228 @@ var caseJobSummarySchema = z56.object({
8618
8666
  * team role to decide whether the card is interactive (live messages,
8619
8667
  * HITL affordances, drawer link).
8620
8668
  */
8621
- user_id: z56.guid().nullable(),
8669
+ user_id: z57.guid().nullable(),
8622
8670
  /**
8623
8671
  * Display name of the user who triggered the run, joined from `profiles`.
8624
8672
  * Falls back to `user_email` for the in-card user pill when null.
8625
8673
  */
8626
- user_name: z56.string().nullable(),
8627
- user_email: z56.string().nullable()
8674
+ user_name: z57.string().nullable(),
8675
+ user_email: z57.string().nullable()
8628
8676
  });
8629
- var caseJobsResponseSchema = z56.object({
8630
- runs: z56.array(caseJobSummarySchema)
8677
+ var caseJobsResponseSchema = z57.object({
8678
+ runs: z57.array(caseJobSummarySchema)
8631
8679
  });
8632
- var caseJobRecentMessagesResponseSchema = z56.object({
8633
- messages: z56.array(agentMessageWithCreatedAtSchema)
8680
+ var caseJobRecentMessagesResponseSchema = z57.object({
8681
+ messages: z57.array(agentMessageWithCreatedAtSchema)
8634
8682
  });
8635
- var adjacentCasesResponseSchema = z56.object({
8636
- previousId: z56.guid().nullable(),
8637
- nextId: z56.guid().nullable(),
8638
- position: z56.number(),
8639
- total: z56.number()
8683
+ var adjacentCasesResponseSchema = z57.object({
8684
+ previousId: z57.guid().nullable(),
8685
+ nextId: z57.guid().nullable(),
8686
+ position: z57.number(),
8687
+ total: z57.number()
8640
8688
  });
8641
- var caseDeleteResponseSchema = z56.object({
8642
- success: z56.boolean(),
8643
- interruptedRunIds: z56.array(z56.guid())
8689
+ var caseDeleteResponseSchema = z57.object({
8690
+ success: z57.boolean(),
8691
+ interruptedRunIds: z57.array(z57.guid())
8644
8692
  });
8645
- var caseBulkDeleteResponseSchema = z56.object({
8646
- deletedCount: z56.number(),
8647
- interruptedRunIds: z56.array(z56.guid())
8693
+ var caseBulkDeleteResponseSchema = z57.object({
8694
+ deletedCount: z57.number(),
8695
+ interruptedRunIds: z57.array(z57.guid())
8648
8696
  });
8649
- var caseBulkReprocessResponseSchema = z56.object({
8650
- reprocessedCount: z56.number(),
8651
- skippedCount: z56.number(),
8697
+ var caseBulkReprocessResponseSchema = z57.object({
8698
+ reprocessedCount: z57.number(),
8699
+ skippedCount: z57.number(),
8652
8700
  // Deprecated aliases of `reprocessedCount`, both equal to it. Returned so
8653
8701
  // clients 308-redirected here from the deprecated `bulk-delegate` /
8654
8702
  // `bulk-retry` endpoints still find their original field. Optional +
8655
8703
  // `deprecated` so consumers don't couple to them; removed with those aliases
8656
8704
  // at the 2026-06-10 sunset.
8657
- delegatedCount: z56.number().meta({
8705
+ delegatedCount: z57.number().meta({
8658
8706
  deprecated: true,
8659
8707
  description: "Deprecated alias of reprocessedCount, kept for clients redirected from bulk-delegate. Removed on 2026-06-10."
8660
8708
  }).optional(),
8661
- retriedCount: z56.number().meta({
8709
+ retriedCount: z57.number().meta({
8662
8710
  deprecated: true,
8663
8711
  description: "Deprecated alias of reprocessedCount, kept for clients redirected from bulk-retry. Removed on 2026-06-10."
8664
8712
  }).optional()
8665
8713
  });
8666
- var caseBulkStatusUpdateResponseSchema = z56.object({
8667
- updatedCount: z56.number(),
8668
- skippedCount: z56.number(),
8669
- interruptedRunIds: z56.array(z56.guid())
8670
- });
8671
- var deleteQueueResponseSchema = z56.object({
8672
- success: z56.boolean(),
8673
- deleted_case_count: z56.number(),
8674
- interrupted_run_ids: z56.array(z56.guid())
8675
- });
8676
- var caseClearQueueResponseSchema = z56.object({
8677
- success: z56.boolean(),
8678
- deletedCount: z56.number(),
8679
- interruptedRunIds: z56.array(z56.guid())
8680
- });
8681
- var caseQueueSchema = z56.object({
8682
- id: z56.guid(),
8683
- name: z56.string(),
8684
- description: z56.string().nullable(),
8685
- folder_id: z56.guid().nullable(),
8686
- created_at: z56.string(),
8714
+ var caseBulkStatusUpdateResponseSchema = z57.object({
8715
+ updatedCount: z57.number(),
8716
+ skippedCount: z57.number(),
8717
+ interruptedRunIds: z57.array(z57.guid())
8718
+ });
8719
+ var deleteQueueResponseSchema = z57.object({
8720
+ success: z57.boolean(),
8721
+ deleted_case_count: z57.number(),
8722
+ interrupted_run_ids: z57.array(z57.guid())
8723
+ });
8724
+ var caseClearQueueResponseSchema = z57.object({
8725
+ success: z57.boolean(),
8726
+ deletedCount: z57.number(),
8727
+ interruptedRunIds: z57.array(z57.guid())
8728
+ });
8729
+ var caseQueueSchema = z57.object({
8730
+ id: z57.guid(),
8731
+ name: z57.string(),
8732
+ description: z57.string().nullable(),
8733
+ folder_id: z57.guid().nullable(),
8734
+ // Optional (additive) so existing CaseQueue consumers and fixtures across the
8735
+ // FE/CLI don't break; the backend always populates it on real responses.
8736
+ automation_id: z57.guid().nullable().optional(),
8737
+ created_at: z57.string(),
8687
8738
  /**
8688
8739
  * True when at least one case in this queue has ever had an approval
8689
8740
  * batch (open, resolved, or cancelled). The frontend uses this to relabel
8690
8741
  * the "Needs input" filter to "Needs input/approval" and to show the
8691
8742
  * per-case approvals column.
8692
8743
  */
8693
- has_approvals: z56.boolean()
8744
+ has_approvals: z57.boolean()
8694
8745
  });
8695
- var caseQueuesResponseSchema = z56.object({
8696
- queues: z56.array(caseQueueSchema),
8697
- total: z56.number(),
8698
- limit: z56.number(),
8699
- offset: z56.number()
8746
+ var caseQueuesResponseSchema = z57.object({
8747
+ queues: z57.array(caseQueueSchema),
8748
+ total: z57.number(),
8749
+ limit: z57.number(),
8750
+ offset: z57.number()
8700
8751
  });
8701
- var caseGetQueueResponseSchema = z56.object({
8752
+ var caseGetQueueResponseSchema = z57.object({
8702
8753
  queue: caseQueueSchema
8703
8754
  });
8704
- var caseCreateQueueResponseSchema = z56.object({
8755
+ var caseCreateQueueResponseSchema = z57.object({
8705
8756
  queue: caseQueueSchema
8706
8757
  });
8707
- var caseUpdateQueueResponseSchema = z56.object({
8758
+ var caseUpdateQueueResponseSchema = z57.object({
8708
8759
  queue: caseQueueSchema
8709
8760
  });
8710
- var caseQueueAgentProblemSchema = z56.enum([
8761
+ var caseQueueAgentProblemSchema = z57.enum([
8711
8762
  "multiple_triggers",
8712
8763
  "producer_consumer_mix"
8713
8764
  ]);
8714
- var queueAgentProducerSchema = z56.object({
8715
- agent_id: z56.guid(),
8716
- agent_name: z56.string(),
8717
- case_trigger_enabled: z56.boolean(),
8718
- case_trigger_queue_name: z56.string().nullable(),
8719
- problems: z56.array(caseQueueAgentProblemSchema)
8720
- });
8721
- var queueAgentConsumerSchema = z56.object({
8722
- agent_id: z56.guid(),
8723
- agent_name: z56.string(),
8724
- case_trigger_enabled: z56.boolean(),
8725
- is_handover_target: z56.boolean(),
8726
- problems: z56.array(caseQueueAgentProblemSchema),
8765
+ var queueAgentProducerSchema = z57.object({
8766
+ agent_id: z57.guid(),
8767
+ agent_name: z57.string(),
8768
+ case_trigger_enabled: z57.boolean(),
8769
+ case_trigger_queue_name: z57.string().nullable(),
8770
+ problems: z57.array(caseQueueAgentProblemSchema)
8771
+ });
8772
+ var queueAgentConsumerSchema = z57.object({
8773
+ agent_id: z57.guid(),
8774
+ agent_name: z57.string(),
8775
+ case_trigger_enabled: z57.boolean(),
8776
+ is_handover_target: z57.boolean(),
8777
+ problems: z57.array(caseQueueAgentProblemSchema),
8727
8778
  /**
8728
8779
  * Max concurrent Jobs this consumer's enabled trigger allows, after the
8729
8780
  * platform cap is applied. Populated only by the single-queue agents
8730
8781
  * endpoint; omitted when the consumer has no enabled trigger.
8731
8782
  */
8732
- concurrency_limit: z56.int().nonnegative().optional(),
8783
+ concurrency_limit: z57.int().nonnegative().optional(),
8733
8784
  /**
8734
8785
  * True when this consumer's active Jobs have reached `concurrency_limit`, so
8735
8786
  * the dispatcher pauses and new cases stay pending until a Job finishes.
8736
8787
  * Populated only by the single-queue agents endpoint.
8737
8788
  */
8738
- at_concurrency_limit: z56.boolean().optional()
8739
- });
8740
- var queueAgentsResponseSchema = z56.object({
8741
- queue_name: z56.string(),
8742
- producers: z56.array(queueAgentProducerSchema),
8743
- consumers: z56.array(queueAgentConsumerSchema)
8744
- });
8745
- var exportCasesResponseSchema = z56.object({
8746
- version: z56.number(),
8747
- queue_name: z56.string(),
8748
- exported_at: z56.string(),
8749
- cases: z56.array(
8750
- z56.object({
8751
- title: z56.string(),
8752
- data: z56.string().optional()
8789
+ at_concurrency_limit: z57.boolean().optional()
8790
+ });
8791
+ var queueAgentsResponseSchema = z57.object({
8792
+ queue_name: z57.string(),
8793
+ producers: z57.array(queueAgentProducerSchema),
8794
+ consumers: z57.array(queueAgentConsumerSchema)
8795
+ });
8796
+ var exportCasesResponseSchema = z57.object({
8797
+ version: z57.number(),
8798
+ queue_name: z57.string(),
8799
+ exported_at: z57.string(),
8800
+ cases: z57.array(
8801
+ z57.object({
8802
+ title: z57.string(),
8803
+ data: z57.string().optional()
8753
8804
  })
8754
8805
  )
8755
8806
  });
8756
- var importCasesResponseSchema = z56.object({
8757
- imported_count: z56.number()
8807
+ var importCasesResponseSchema = z57.object({
8808
+ imported_count: z57.number()
8758
8809
  });
8759
- var batchQueueStatsResponseSchema = z56.object({
8760
- stats: z56.record(z56.guid(), casesStatsSchema)
8810
+ var batchQueueStatsResponseSchema = z57.object({
8811
+ stats: z57.record(z57.guid(), casesStatsSchema)
8761
8812
  });
8762
- var batchQueueAgentsResponseSchema = z56.object({
8763
- agents: z56.record(
8764
- z56.guid(),
8765
- z56.object({
8766
- producers: z56.array(queueAgentProducerSchema),
8767
- consumers: z56.array(queueAgentConsumerSchema)
8813
+ var batchQueueAgentsResponseSchema = z57.object({
8814
+ agents: z57.record(
8815
+ z57.guid(),
8816
+ z57.object({
8817
+ producers: z57.array(queueAgentProducerSchema),
8818
+ consumers: z57.array(queueAgentConsumerSchema)
8768
8819
  })
8769
8820
  )
8770
8821
  });
8771
- var createTeamInviteLinkRequestSchema = z57.object({
8772
- frontendUrl: z57.url()
8822
+ var createTeamInviteLinkRequestSchema = z58.object({
8823
+ frontendUrl: z58.url()
8773
8824
  });
8774
- var getTeamInviteLinkQuerySchema = z57.object({
8775
- frontendUrl: z57.url()
8825
+ var getTeamInviteLinkQuerySchema = z58.object({
8826
+ frontendUrl: z58.url()
8776
8827
  });
8777
- var teamInviteLinkCreatorSchema = z57.object({
8778
- id: z57.guid(),
8779
- name: z57.string().nullable(),
8780
- email: z57.email()
8828
+ var teamInviteLinkCreatorSchema = z58.object({
8829
+ id: z58.guid(),
8830
+ name: z58.string().nullable(),
8831
+ email: z58.email()
8781
8832
  });
8782
- var teamInviteLinkSchema = z57.object({
8783
- id: z57.guid(),
8784
- url: z57.url().optional(),
8785
- createdAt: z57.string(),
8833
+ var teamInviteLinkSchema = z58.object({
8834
+ id: z58.guid(),
8835
+ url: z58.url().optional(),
8836
+ createdAt: z58.string(),
8786
8837
  createdBy: teamInviteLinkCreatorSchema
8787
8838
  });
8788
- var getTeamInviteLinkResponseSchema = z57.object({
8789
- hasLink: z57.boolean(),
8839
+ var getTeamInviteLinkResponseSchema = z58.object({
8840
+ hasLink: z58.boolean(),
8790
8841
  link: teamInviteLinkSchema.optional()
8791
8842
  });
8792
- var joinLinkInfoResponseSchema = z57.object({
8793
- valid: z57.boolean(),
8794
- teamName: z57.string().optional(),
8795
- teamId: z57.guid().optional(),
8796
- reason: z57.enum(["invalid", "expired"]).optional()
8843
+ var joinLinkInfoResponseSchema = z58.object({
8844
+ valid: z58.boolean(),
8845
+ teamName: z58.string().optional(),
8846
+ teamId: z58.guid().optional(),
8847
+ reason: z58.enum(["invalid", "expired"]).optional()
8797
8848
  });
8798
- var acceptJoinLinkResponseSchema = z57.object({
8799
- success: z57.boolean(),
8800
- teamId: z57.guid()
8849
+ var acceptJoinLinkResponseSchema = z58.object({
8850
+ success: z58.boolean(),
8851
+ teamId: z58.guid()
8801
8852
  });
8802
- var createClarityProcessInviteLinkRequestSchema = z58.object({
8803
- frontendUrl: z58.url()
8853
+ var createClarityProcessInviteLinkRequestSchema = z59.object({
8854
+ frontendUrl: z59.url()
8804
8855
  });
8805
8856
  var clarityProcessInviteLinkSchema = teamInviteLinkSchema;
8806
- var getClarityProcessInviteLinkResponseSchema = z58.object({
8807
- hasLink: z58.boolean(),
8857
+ var getClarityProcessInviteLinkResponseSchema = z59.object({
8858
+ hasLink: z59.boolean(),
8808
8859
  link: clarityProcessInviteLinkSchema.optional()
8809
8860
  });
8810
- var clarityJoinLinkInfoResponseSchema = z58.object({
8811
- valid: z58.boolean(),
8812
- processName: z58.string().optional(),
8813
- processId: z58.guid().optional(),
8814
- teamId: z58.guid().optional(),
8815
- reason: z58.enum(["invalid", "expired"]).optional()
8816
- });
8817
- var acceptClarityJoinLinkResponseSchema = z58.object({
8818
- success: z58.boolean(),
8819
- processId: z58.guid()
8820
- });
8821
- var credentialPreviewSchema = z59.object({
8822
- id: z59.guid().describe("Credential ID"),
8823
- domain: z59.string().describe("Domain for the credential"),
8824
- username: z59.string().nullable().describe("Username (if any)"),
8825
- hasEnabledTOTP: z59.boolean().describe("Whether TOTP is enabled"),
8826
- hasPassword: z59.boolean().describe("Whether a password is stored"),
8827
- user_id: z59.string().nullable().describe("Owner user id; null when shared with the team")
8828
- });
8829
- var otpResponseSchema = z59.object({
8830
- code: z59.string().describe("The TOTP code"),
8831
- expiresAt: z59.number().describe("Expiration timestamp in milliseconds")
8832
- });
8833
- var encryptedDataSchema = z59.object({
8834
- encrypted_data: z59.string().describe("Base64-encoded encrypted data"),
8835
- key_version: z59.string().describe("KMS key version or 'base64' for dev")
8836
- });
8837
- var credentialDetailSchema = z59.object({
8838
- domain: z59.string().describe("Domain for the credential"),
8839
- username: z59.string().nullable().describe("Username (if any)"),
8861
+ var clarityJoinLinkInfoResponseSchema = z59.object({
8862
+ valid: z59.boolean(),
8863
+ processName: z59.string().optional(),
8864
+ processId: z59.guid().optional(),
8865
+ teamId: z59.guid().optional(),
8866
+ reason: z59.enum(["invalid", "expired"]).optional()
8867
+ });
8868
+ var acceptClarityJoinLinkResponseSchema = z59.object({
8869
+ success: z59.boolean(),
8870
+ processId: z59.guid()
8871
+ });
8872
+ var credentialPreviewSchema = z60.object({
8873
+ id: z60.guid().describe("Credential ID"),
8874
+ domain: z60.string().describe("Domain for the credential"),
8875
+ username: z60.string().nullable().describe("Username (if any)"),
8876
+ hasEnabledTOTP: z60.boolean().describe("Whether TOTP is enabled"),
8877
+ hasPassword: z60.boolean().describe("Whether a password is stored"),
8878
+ user_id: z60.string().nullable().describe("Owner user id; null when shared with the team")
8879
+ });
8880
+ var otpResponseSchema = z60.object({
8881
+ code: z60.string().describe("The TOTP code"),
8882
+ expiresAt: z60.number().describe("Expiration timestamp in milliseconds")
8883
+ });
8884
+ var encryptedDataSchema = z60.object({
8885
+ encrypted_data: z60.string().describe("Base64-encoded encrypted data"),
8886
+ key_version: z60.string().describe("KMS key version or 'base64' for dev")
8887
+ });
8888
+ var credentialDetailSchema = z60.object({
8889
+ domain: z60.string().describe("Domain for the credential"),
8890
+ username: z60.string().nullable().describe("Username (if any)"),
8840
8891
  password: encryptedDataSchema.nullable().describe("Encrypted password data")
8841
8892
  });
8842
8893
  var FEATURE_FLAG_CATALOGUE = {
@@ -8945,6 +8996,11 @@ var FEATURE_FLAG_CATALOGUE = {
8945
8996
  defaultValue: false,
8946
8997
  description: "Enables the Clarity meeting notetaker (Recall.ai bot). When disabled, the 'Meeting Notetaker' option is hidden in the Add Content menu and the POST /clarity/processes/:id/captures/meeting invite route returns 404; the Recall webhook callback is unaffected. Off-by-default for staged rollout."
8947
8998
  },
8999
+ CLARITY_SIGNAVIO_SWIMLANES_EXPORT: {
9000
+ key: "clarity_signavio_swimlanes_export",
9001
+ defaultValue: false,
9002
+ description: "Enables prompt-driven Clarity to SAP Signavio export conventions that convert performer metadata into BPMN swimlanes and lay diagrams out horizontally. Off-by-default for staged validation."
9003
+ },
8948
9004
  CLARITY_SOURCES_UI: {
8949
9005
  key: "clarity_sources_ui",
8950
9006
  defaultValue: false,
@@ -9068,160 +9124,160 @@ function coerceFlagValue(value) {
9068
9124
  }
9069
9125
  __name(coerceFlagValue, "coerceFlagValue");
9070
9126
  __name2(coerceFlagValue, "coerceFlagValue");
9071
- var teamFileItemSchema = z60.object({
9072
- id: z60.string(),
9073
- name: z60.string(),
9074
- path: z60.string(),
9075
- created_at: z60.string().optional(),
9076
- updated_at: z60.string().optional(),
9077
- metadata: z60.object({
9078
- mimetype: z60.string().optional(),
9079
- size: z60.number().optional()
9127
+ var teamFileItemSchema = z61.object({
9128
+ id: z61.string(),
9129
+ name: z61.string(),
9130
+ path: z61.string(),
9131
+ created_at: z61.string().optional(),
9132
+ updated_at: z61.string().optional(),
9133
+ metadata: z61.object({
9134
+ mimetype: z61.string().optional(),
9135
+ size: z61.number().optional()
9080
9136
  }).nullable().optional()
9081
9137
  });
9082
- var listTeamFilesResponseSchema = z60.object({
9083
- files: z60.array(teamFileItemSchema)
9084
- });
9085
- var createTeamFileUploadUrlBodySchema = z60.object({
9086
- fileName: z60.string().min(1),
9087
- contentType: z60.string().min(1)
9088
- });
9089
- var createTeamFileUploadUrlResponseSchema = z60.object({
9090
- signedUrl: z60.url(),
9091
- expiresAt: z60.iso.datetime(),
9092
- filePath: z60.string()
9093
- });
9094
- var renameTeamFileBodySchema = z60.object({
9095
- relativePath: z60.string().min(1),
9096
- newFilenameOnly: z60.string().min(1)
9097
- });
9098
- var teamFileSuccessResponseSchema = z60.object({
9099
- success: z60.boolean()
9100
- });
9101
- var teamFileDownloadUrlResponseSchema = z60.object({
9102
- url: z60.url(),
9103
- expiresAt: z60.iso.datetime()
9104
- });
9105
- var teamFileContentResponseSchema = z60.object({
9106
- content: z60.string(),
9107
- path: z60.string(),
9108
- contentType: z60.string().optional()
9109
- });
9110
- var updateTeamFileContentBodySchema = z60.object({
9111
- content: z60.string()
9112
- });
9113
- var globalAdminApiSchema = z61.object({
9114
- id: z61.guid(),
9115
- email: z61.string(),
9116
- userId: z61.guid(),
9117
- userName: z61.string().nullable(),
9118
- addedByUserId: z61.guid().nullable(),
9119
- createdAt: z61.string()
9120
- });
9121
- var globalAdminListResponseSchema = z61.object({
9122
- admins: z61.array(globalAdminApiSchema)
9123
- });
9124
- var globalAdminSearchResponseSchema = z61.object({
9125
- users: z61.array(
9126
- z61.object({
9127
- id: z61.guid(),
9128
- name: z61.string().nullable(),
9129
- email: z61.string(),
9130
- createdAt: z61.string().nullable()
9138
+ var listTeamFilesResponseSchema = z61.object({
9139
+ files: z61.array(teamFileItemSchema)
9140
+ });
9141
+ var createTeamFileUploadUrlBodySchema = z61.object({
9142
+ fileName: z61.string().min(1),
9143
+ contentType: z61.string().min(1)
9144
+ });
9145
+ var createTeamFileUploadUrlResponseSchema = z61.object({
9146
+ signedUrl: z61.url(),
9147
+ expiresAt: z61.iso.datetime(),
9148
+ filePath: z61.string()
9149
+ });
9150
+ var renameTeamFileBodySchema = z61.object({
9151
+ relativePath: z61.string().min(1),
9152
+ newFilenameOnly: z61.string().min(1)
9153
+ });
9154
+ var teamFileSuccessResponseSchema = z61.object({
9155
+ success: z61.boolean()
9156
+ });
9157
+ var teamFileDownloadUrlResponseSchema = z61.object({
9158
+ url: z61.url(),
9159
+ expiresAt: z61.iso.datetime()
9160
+ });
9161
+ var teamFileContentResponseSchema = z61.object({
9162
+ content: z61.string(),
9163
+ path: z61.string(),
9164
+ contentType: z61.string().optional()
9165
+ });
9166
+ var updateTeamFileContentBodySchema = z61.object({
9167
+ content: z61.string()
9168
+ });
9169
+ var globalAdminApiSchema = z62.object({
9170
+ id: z62.guid(),
9171
+ email: z62.string(),
9172
+ userId: z62.guid(),
9173
+ userName: z62.string().nullable(),
9174
+ addedByUserId: z62.guid().nullable(),
9175
+ createdAt: z62.string()
9176
+ });
9177
+ var globalAdminListResponseSchema = z62.object({
9178
+ admins: z62.array(globalAdminApiSchema)
9179
+ });
9180
+ var globalAdminSearchResponseSchema = z62.object({
9181
+ users: z62.array(
9182
+ z62.object({
9183
+ id: z62.guid(),
9184
+ name: z62.string().nullable(),
9185
+ email: z62.string(),
9186
+ createdAt: z62.string().nullable()
9131
9187
  })
9132
9188
  )
9133
9189
  });
9134
- var globalAdminCreateRequestSchema = z61.object({
9135
- userId: z61.guid()
9190
+ var globalAdminCreateRequestSchema = z62.object({
9191
+ userId: z62.guid()
9136
9192
  });
9137
- var globalAdminCreateResponseSchema = z61.object({
9193
+ var globalAdminCreateResponseSchema = z62.object({
9138
9194
  admin: globalAdminApiSchema
9139
9195
  });
9140
- var globalAdminDeleteResponseSchema = z61.object({
9141
- success: z61.literal(true)
9196
+ var globalAdminDeleteResponseSchema = z62.object({
9197
+ success: z62.literal(true)
9142
9198
  });
9143
- var adminAccessCheckResponseSchema = z61.object({
9144
- isGlobalAdmin: z61.boolean()
9199
+ var adminAccessCheckResponseSchema = z62.object({
9200
+ isGlobalAdmin: z62.boolean()
9145
9201
  });
9146
9202
  var JOB_LIST_SORT_COLUMNS = ["created_at"];
9147
- var jobListSortColumnSchema = z62.enum(JOB_LIST_SORT_COLUMNS);
9148
- var jobListIssueSeveritySchema = z62.enum(
9203
+ var jobListSortColumnSchema = z63.enum(JOB_LIST_SORT_COLUMNS);
9204
+ var jobListIssueSeveritySchema = z63.enum(
9149
9205
  ALL_EVALUATION_RUBRIC_SEVERITIES
9150
9206
  );
9151
- var jobListItemSchema = z62.object({
9152
- id: z62.guid(),
9153
- created_at: z62.coerce.date(),
9154
- updated_at: z62.coerce.date(),
9155
- started_at: z62.coerce.date().nullable(),
9156
- completed_at: z62.coerce.date().nullable(),
9207
+ var jobListItemSchema = z63.object({
9208
+ id: z63.guid(),
9209
+ created_at: z63.coerce.date(),
9210
+ updated_at: z63.coerce.date(),
9211
+ started_at: z63.coerce.date().nullable(),
9212
+ completed_at: z63.coerce.date().nullable(),
9157
9213
  status: agentRunStatusSchema,
9158
- source: z62.string().nullable(),
9159
- title: z62.string(),
9160
- run_number: z62.number(),
9214
+ source: z63.string().nullable(),
9215
+ title: z63.string(),
9216
+ run_number: z63.number(),
9161
9217
  // Agent info
9162
- agent_id: z62.guid(),
9163
- agent_name: z62.string(),
9164
- build_id: z62.guid(),
9218
+ agent_id: z63.guid(),
9219
+ agent_name: z63.string(),
9220
+ build_id: z63.guid(),
9165
9221
  // User info
9166
- user_id: z62.guid().nullable(),
9222
+ user_id: z63.guid().nullable(),
9167
9223
  // Case info
9168
- case_queue_item_id: z62.guid().nullable(),
9169
- case_queue_id: z62.guid().nullable(),
9170
- case_queue_name: z62.string().nullable(),
9171
- case_title: z62.string().nullable(),
9172
- postponed_to: z62.coerce.date().nullable(),
9173
- submitted_prompt_count: z62.number().int().min(0),
9224
+ case_queue_item_id: z63.guid().nullable(),
9225
+ case_queue_id: z63.guid().nullable(),
9226
+ case_queue_name: z63.string().nullable(),
9227
+ case_title: z63.string().nullable(),
9228
+ postponed_to: z63.coerce.date().nullable(),
9229
+ submitted_prompt_count: z63.number().int().min(0),
9174
9230
  eval_summaries: evalSummarySchema.nullable().optional()
9175
9231
  });
9176
- var jobListResponseSchema = z62.object({
9177
- data: z62.array(jobListItemSchema),
9178
- total: z62.number()
9232
+ var jobListResponseSchema = z63.object({
9233
+ data: z63.array(jobListItemSchema),
9234
+ total: z63.number()
9179
9235
  });
9180
- var jobFilterOptionsSchema = z62.object({
9181
- agents: z62.array(
9182
- z62.object({
9183
- id: z62.string(),
9184
- name: z62.string(),
9185
- folder_id: z62.string().nullable()
9236
+ var jobFilterOptionsSchema = z63.object({
9237
+ agents: z63.array(
9238
+ z63.object({
9239
+ id: z63.string(),
9240
+ name: z63.string(),
9241
+ folder_id: z63.string().nullable()
9186
9242
  })
9187
9243
  ),
9188
- folders: z62.array(
9189
- z62.object({
9190
- id: z62.string(),
9191
- name: z62.string(),
9192
- parent_folder_id: z62.string().nullable()
9244
+ folders: z63.array(
9245
+ z63.object({
9246
+ id: z63.string(),
9247
+ name: z63.string(),
9248
+ parent_folder_id: z63.string().nullable()
9193
9249
  })
9194
9250
  ),
9195
- users: z62.array(
9196
- z62.object({
9197
- id: z62.string(),
9198
- name: z62.string().nullable(),
9199
- email: z62.string()
9251
+ users: z63.array(
9252
+ z63.object({
9253
+ id: z63.string(),
9254
+ name: z63.string().nullable(),
9255
+ email: z63.string()
9200
9256
  })
9201
9257
  ),
9202
- caseQueues: z62.array(z62.object({ id: z62.string(), name: z62.string() }))
9203
- });
9204
- var mcpStepSchema = z63.object({
9205
- tool: z63.string().describe("MCP tool name (e.g., click, fill, navigate_page)"),
9206
- params: z63.record(z63.string(), z63.unknown()).describe("Tool-specific parameters"),
9207
- fallbackSelectors: z63.array(z63.string()).optional().describe("Alternative CSS selectors if primary fails"),
9208
- description: z63.string().optional().describe("Human-readable step description"),
9209
- screenshot: z63.string().optional().describe("Base64 screenshot at this step for visual context"),
9210
- snapshot: z63.string().optional().describe("DOM snapshot in accessibility tree format at this step"),
9211
- framePath: z63.array(z63.number()).optional().describe(
9258
+ caseQueues: z63.array(z63.object({ id: z63.string(), name: z63.string() }))
9259
+ });
9260
+ var mcpStepSchema = z64.object({
9261
+ tool: z64.string().describe("MCP tool name (e.g., click, fill, navigate_page)"),
9262
+ params: z64.record(z64.string(), z64.unknown()).describe("Tool-specific parameters"),
9263
+ fallbackSelectors: z64.array(z64.string()).optional().describe("Alternative CSS selectors if primary fails"),
9264
+ description: z64.string().optional().describe("Human-readable step description"),
9265
+ screenshot: z64.string().optional().describe("Base64 screenshot at this step for visual context"),
9266
+ snapshot: z64.string().optional().describe("DOM snapshot in accessibility tree format at this step"),
9267
+ framePath: z64.array(z64.number()).optional().describe(
9212
9268
  "Index-based path to the target iframe (e.g., [0] for first child iframe, [1, 0] for nested)"
9213
9269
  )
9214
9270
  });
9215
- var mcpWorkflowSchema = z63.object({
9216
- name: z63.string(),
9217
- startUrl: z63.string(),
9218
- viewport: z63.object({
9219
- width: z63.number(),
9220
- height: z63.number()
9271
+ var mcpWorkflowSchema = z64.object({
9272
+ name: z64.string(),
9273
+ startUrl: z64.string(),
9274
+ viewport: z64.object({
9275
+ width: z64.number(),
9276
+ height: z64.number()
9221
9277
  }),
9222
- steps: z63.array(mcpStepSchema)
9278
+ steps: z64.array(mcpStepSchema)
9223
9279
  });
9224
- var MCP_WORKFLOW_JSON_SCHEMA = z63.toJSONSchema(mcpWorkflowSchema, {
9280
+ var MCP_WORKFLOW_JSON_SCHEMA = z64.toJSONSchema(mcpWorkflowSchema, {
9225
9281
  reused: "inline"
9226
9282
  });
9227
9283
  var MCP_WORKFLOW_SCHEMA_DOCS = JSON.stringify(
@@ -9230,52 +9286,52 @@ var MCP_WORKFLOW_SCHEMA_DOCS = JSON.stringify(
9230
9286
  2
9231
9287
  );
9232
9288
  var ORG_BROWSER_CONFIG_VERSION = 1;
9233
- var organizationBrowserConfigDataSchema = z64.object({
9289
+ var organizationBrowserConfigDataSchema = z65.object({
9234
9290
  browserProvider: BrowserProviderTypeSchema.nullable(),
9235
9291
  dataResidency: DataResidencySchema.nullable(),
9236
9292
  dataHandling: DataHandlingSchema.nullable(),
9237
- enforced: z64.boolean()
9293
+ enforced: z65.boolean()
9238
9294
  });
9239
- var organizationBrowserConfigSchema = z64.object({
9240
- version: z64.literal(ORG_BROWSER_CONFIG_VERSION),
9295
+ var organizationBrowserConfigSchema = z65.object({
9296
+ version: z65.literal(ORG_BROWSER_CONFIG_VERSION),
9241
9297
  data: organizationBrowserConfigDataSchema
9242
9298
  });
9243
- var organizationBrowserSettingsSchema = z64.object({
9244
- organizationId: z64.guid(),
9299
+ var organizationBrowserSettingsSchema = z65.object({
9300
+ organizationId: z65.guid(),
9245
9301
  browserProvider: BrowserProviderTypeSchema.nullable(),
9246
9302
  dataResidency: DataResidencySchema.nullable(),
9247
9303
  dataHandling: DataHandlingSchema.nullable(),
9248
- enforced: z64.boolean(),
9249
- createdAt: z64.string(),
9250
- updatedAt: z64.string()
9304
+ enforced: z65.boolean(),
9305
+ createdAt: z65.string(),
9306
+ updatedAt: z65.string()
9251
9307
  });
9252
- var getOrganizationBrowserSettingsResponseSchema = z64.object({
9308
+ var getOrganizationBrowserSettingsResponseSchema = z65.object({
9253
9309
  settings: organizationBrowserSettingsSchema.nullable()
9254
9310
  });
9255
- var updateOrganizationBrowserSettingsRequestSchema = z64.object({
9311
+ var updateOrganizationBrowserSettingsRequestSchema = z65.object({
9256
9312
  browserProvider: BrowserProviderTypeSchema.nullable().optional(),
9257
9313
  dataResidency: DataResidencySchema.nullable().optional(),
9258
9314
  dataHandling: DataHandlingSchema.nullable().optional(),
9259
- enforced: z64.boolean().optional()
9315
+ enforced: z65.boolean().optional()
9260
9316
  });
9261
- var updateOrganizationBrowserSettingsResponseSchema = z64.object({
9317
+ var updateOrganizationBrowserSettingsResponseSchema = z65.object({
9262
9318
  settings: organizationBrowserSettingsSchema
9263
9319
  });
9264
- var catalogPluginSchema = z65.object({
9265
- name: z65.string().describe("Identifier to pass in the build's plugins array."),
9320
+ var catalogPluginSchema = z66.object({
9321
+ name: z66.string().describe("Identifier to pass in the build's plugins array."),
9266
9322
  type: extensibleEnum(["duvo-platform", "knowledge-work", "github"], {
9267
9323
  description: "Plugin source. 'duvo-platform' plugins are pre-baked into the Duvo runtime; 'knowledge-work' plugins are role-oriented bundles (engineering, sales, legal, \u2026) also baked into the runtime; 'github' plugins are downloaded from a user-supplied repository URL at run time."
9268
9324
  }),
9269
- description: z65.string()
9325
+ description: z66.string()
9270
9326
  });
9271
- var pluginCatalogResponseSchema = z65.object({
9272
- plugins: z65.array(catalogPluginSchema)
9327
+ var pluginCatalogResponseSchema = z66.object({
9328
+ plugins: z66.array(catalogPluginSchema)
9273
9329
  });
9274
- var limitValueSchema = z66.union([
9275
- z66.number().int().nonnegative(),
9276
- z66.literal("unlimited")
9330
+ var limitValueSchema = z67.union([
9331
+ z67.number().int().nonnegative(),
9332
+ z67.literal("unlimited")
9277
9333
  ]);
9278
- var runCountingModeSchema = z66.enum(["monthly", "lifetime"]);
9334
+ var runCountingModeSchema = z67.enum(["monthly", "lifetime"]);
9279
9335
  function addDuplicateKeyIssues({
9280
9336
  ctx,
9281
9337
  items,
@@ -9287,7 +9343,7 @@ function addDuplicateKeyIssues({
9287
9343
  const key = keyFor(item);
9288
9344
  if (seen.has(key)) {
9289
9345
  ctx.addIssue({
9290
- code: z66.ZodIssueCode.custom,
9346
+ code: z67.ZodIssueCode.custom,
9291
9347
  message: `Duplicate Product Access grant key: ${key}`,
9292
9348
  path: [...path, index]
9293
9349
  });
@@ -9298,34 +9354,34 @@ function addDuplicateKeyIssues({
9298
9354
  }
9299
9355
  __name(addDuplicateKeyIssues, "addDuplicateKeyIssues");
9300
9356
  __name2(addDuplicateKeyIssues, "addDuplicateKeyIssues");
9301
- var productAccessOwnerSchema = z66.discriminatedUnion("type", [
9302
- z66.object({
9303
- type: z66.literal("organization"),
9304
- organizationId: z66.guid()
9357
+ var productAccessOwnerSchema = z67.discriminatedUnion("type", [
9358
+ z67.object({
9359
+ type: z67.literal("organization"),
9360
+ organizationId: z67.guid()
9305
9361
  }),
9306
- z66.object({
9307
- type: z66.literal("team"),
9308
- teamId: z66.guid(),
9309
- organizationId: z66.guid().nullable()
9362
+ z67.object({
9363
+ type: z67.literal("team"),
9364
+ teamId: z67.guid(),
9365
+ organizationId: z67.guid().nullable()
9310
9366
  })
9311
9367
  ]);
9312
- var productAccessGrantSetSchema = z66.object({
9313
- products: z66.array(
9314
- z66.object({
9315
- productKey: z66.enum(PRODUCT_KEYS),
9316
- enabled: z66.boolean()
9368
+ var productAccessGrantSetSchema = z67.object({
9369
+ products: z67.array(
9370
+ z67.object({
9371
+ productKey: z67.enum(PRODUCT_KEYS),
9372
+ enabled: z67.boolean()
9317
9373
  })
9318
9374
  ),
9319
- capabilities: z66.array(
9320
- z66.object({
9321
- capabilityKey: z66.enum(PRODUCT_ACCESS_CAPABILITY_KEYS),
9322
- enabled: z66.boolean()
9375
+ capabilities: z67.array(
9376
+ z67.object({
9377
+ capabilityKey: z67.enum(PRODUCT_ACCESS_CAPABILITY_KEYS),
9378
+ enabled: z67.boolean()
9323
9379
  })
9324
9380
  ),
9325
- limits: z66.array(
9326
- z66.object({
9327
- productKey: z66.enum(PRODUCT_KEYS),
9328
- limitKey: z66.enum(ENTITLEMENT_LIMIT_KEYS),
9381
+ limits: z67.array(
9382
+ z67.object({
9383
+ productKey: z67.enum(PRODUCT_KEYS),
9384
+ limitKey: z67.enum(ENTITLEMENT_LIMIT_KEYS),
9329
9385
  limitValue: limitValueSchema,
9330
9386
  countingMode: runCountingModeSchema.nullable()
9331
9387
  })
@@ -9350,51 +9406,51 @@ var productAccessGrantSetSchema = z66.object({
9350
9406
  path: ["limits"]
9351
9407
  });
9352
9408
  });
9353
- var productAccessSnapshotSchema = z66.object({
9354
- products: z66.array(
9355
- z66.object({
9356
- productKey: z66.enum(PRODUCT_KEYS),
9357
- enabled: z66.boolean()
9409
+ var productAccessSnapshotSchema = z67.object({
9410
+ products: z67.array(
9411
+ z67.object({
9412
+ productKey: z67.enum(PRODUCT_KEYS),
9413
+ enabled: z67.boolean()
9358
9414
  })
9359
9415
  ),
9360
- capabilities: z66.array(
9361
- z66.object({
9362
- capabilityKey: z66.enum(PRODUCT_ACCESS_CAPABILITY_KEYS),
9363
- productKey: z66.enum(PRODUCT_KEYS),
9364
- enabled: z66.boolean()
9416
+ capabilities: z67.array(
9417
+ z67.object({
9418
+ capabilityKey: z67.enum(PRODUCT_ACCESS_CAPABILITY_KEYS),
9419
+ productKey: z67.enum(PRODUCT_KEYS),
9420
+ enabled: z67.boolean()
9365
9421
  })
9366
9422
  ),
9367
- limits: z66.array(
9368
- z66.object({
9369
- limitKey: z66.enum(ENTITLEMENT_LIMIT_KEYS),
9370
- productKey: z66.enum(PRODUCT_KEYS),
9423
+ limits: z67.array(
9424
+ z67.object({
9425
+ limitKey: z67.enum(ENTITLEMENT_LIMIT_KEYS),
9426
+ productKey: z67.enum(PRODUCT_KEYS),
9371
9427
  limitValue: limitValueSchema,
9372
9428
  countingMode: runCountingModeSchema.nullable(),
9373
- label: z66.literal("per_team")
9429
+ label: z67.literal("per_team")
9374
9430
  })
9375
9431
  )
9376
9432
  });
9377
- var billingPlanSchema = z66.object({
9378
- planVersionId: z66.string(),
9379
- planName: z66.string(),
9380
- basePlan: z66.enum(["free", "pro", "enterprise"])
9433
+ var billingPlanSchema = z67.object({
9434
+ planVersionId: z67.string(),
9435
+ planName: z67.string(),
9436
+ basePlan: z67.enum(["free", "pro", "enterprise"])
9381
9437
  });
9382
- var inheritedFromSchema = z66.discriminatedUnion("type", [
9383
- z66.object({
9384
- type: z66.literal("organization"),
9385
- organizationId: z66.guid()
9438
+ var inheritedFromSchema = z67.discriminatedUnion("type", [
9439
+ z67.object({
9440
+ type: z67.literal("organization"),
9441
+ organizationId: z67.guid()
9386
9442
  }),
9387
- z66.object({
9388
- type: z66.literal("team_subscription"),
9389
- planVersionId: z66.string()
9443
+ z67.object({
9444
+ type: z67.literal("team_subscription"),
9445
+ planVersionId: z67.string()
9390
9446
  })
9391
9447
  ]);
9392
- var productAccessReadResponseSchema = z66.object({
9448
+ var productAccessReadResponseSchema = z67.object({
9393
9449
  owner: productAccessOwnerSchema,
9394
- source: z66.enum(PLAN_ENTITLEMENTS_SOURCE_VALUES),
9395
- accessRevision: z66.string().min(1),
9450
+ source: z67.enum(PLAN_ENTITLEMENTS_SOURCE_VALUES),
9451
+ accessRevision: z67.string().min(1),
9396
9452
  displayPreset: displayPresetSchema,
9397
- hasExplicitTeamAccess: z66.boolean(),
9453
+ hasExplicitTeamAccess: z67.boolean(),
9398
9454
  inheritedFrom: inheritedFromSchema.nullable(),
9399
9455
  billingPlan: billingPlanSchema.nullable(),
9400
9456
  grants: productAccessSnapshotSchema,
@@ -9402,67 +9458,67 @@ var productAccessReadResponseSchema = z66.object({
9402
9458
  }).superRefine((value, ctx) => {
9403
9459
  if (value.owner.type === "team" && value.source === "organization" && value.inheritedFrom?.type !== "organization") {
9404
9460
  ctx.addIssue({
9405
- code: z66.ZodIssueCode.custom,
9461
+ code: z67.ZodIssueCode.custom,
9406
9462
  message: "inheritedFrom organization context is required when team source is organization",
9407
9463
  path: ["inheritedFrom"]
9408
9464
  });
9409
9465
  }
9410
9466
  if (value.owner.type === "team" && value.source === "team_subscription" && value.inheritedFrom?.type !== "team_subscription") {
9411
9467
  ctx.addIssue({
9412
- code: z66.ZodIssueCode.custom,
9468
+ code: z67.ZodIssueCode.custom,
9413
9469
  message: "inheritedFrom subscription context is required when team source is team_subscription",
9414
9470
  path: ["inheritedFrom"]
9415
9471
  });
9416
9472
  }
9417
9473
  if (value.owner.type === "team" && value.source === "team" && value.inheritedFrom !== null) {
9418
9474
  ctx.addIssue({
9419
- code: z66.ZodIssueCode.custom,
9475
+ code: z67.ZodIssueCode.custom,
9420
9476
  message: "inheritedFrom must be null for direct team Product Access",
9421
9477
  path: ["inheritedFrom"]
9422
9478
  });
9423
9479
  }
9424
9480
  if (value.owner.type === "organization" && value.billingPlan !== null) {
9425
9481
  ctx.addIssue({
9426
- code: z66.ZodIssueCode.custom,
9482
+ code: z67.ZodIssueCode.custom,
9427
9483
  message: "billingPlan must be null for organization Product Access",
9428
9484
  path: ["billingPlan"]
9429
9485
  });
9430
9486
  }
9431
9487
  if (value.owner.type === "organization" && value.source !== "organization") {
9432
9488
  ctx.addIssue({
9433
- code: z66.ZodIssueCode.custom,
9489
+ code: z67.ZodIssueCode.custom,
9434
9490
  message: "organization Product Access source must be organization",
9435
9491
  path: ["source"]
9436
9492
  });
9437
9493
  }
9438
9494
  if (value.owner.type === "organization" && value.inheritedFrom !== null) {
9439
9495
  ctx.addIssue({
9440
- code: z66.ZodIssueCode.custom,
9496
+ code: z67.ZodIssueCode.custom,
9441
9497
  message: "inheritedFrom must be null for organization Product Access",
9442
9498
  path: ["inheritedFrom"]
9443
9499
  });
9444
9500
  }
9445
9501
  });
9446
- var productAccessImpactRequestSchema = z66.object({
9502
+ var productAccessImpactRequestSchema = z67.object({
9447
9503
  proposedGrants: productAccessGrantSetSchema
9448
9504
  });
9449
- var productAccessWriteRequestSchema = z66.object({
9505
+ var productAccessWriteRequestSchema = z67.object({
9450
9506
  proposedGrants: productAccessGrantSetSchema,
9451
- accessRevision: z66.string().min(1),
9452
- impactFingerprint: z66.string().min(1).optional()
9453
- });
9454
- var productAccessTeamResetRequestSchema = z66.object({
9455
- accessRevision: z66.string().min(1),
9456
- impactFingerprint: z66.string().min(1).optional()
9457
- });
9458
- var productAccessChangeSummarySchema = z66.object({
9459
- addedProducts: z66.array(z66.enum(PRODUCT_KEYS)),
9460
- removedProducts: z66.array(z66.enum(PRODUCT_KEYS)),
9461
- addedCapabilities: z66.array(z66.enum(PRODUCT_ACCESS_CAPABILITY_KEYS)),
9462
- removedCapabilities: z66.array(z66.enum(PRODUCT_ACCESS_CAPABILITY_KEYS)),
9463
- limitChanges: z66.array(
9464
- z66.object({
9465
- limitKey: z66.enum(ENTITLEMENT_LIMIT_KEYS),
9507
+ accessRevision: z67.string().min(1),
9508
+ impactFingerprint: z67.string().min(1).optional()
9509
+ });
9510
+ var productAccessTeamResetRequestSchema = z67.object({
9511
+ accessRevision: z67.string().min(1),
9512
+ impactFingerprint: z67.string().min(1).optional()
9513
+ });
9514
+ var productAccessChangeSummarySchema = z67.object({
9515
+ addedProducts: z67.array(z67.enum(PRODUCT_KEYS)),
9516
+ removedProducts: z67.array(z67.enum(PRODUCT_KEYS)),
9517
+ addedCapabilities: z67.array(z67.enum(PRODUCT_ACCESS_CAPABILITY_KEYS)),
9518
+ removedCapabilities: z67.array(z67.enum(PRODUCT_ACCESS_CAPABILITY_KEYS)),
9519
+ limitChanges: z67.array(
9520
+ z67.object({
9521
+ limitKey: z67.enum(ENTITLEMENT_LIMIT_KEYS),
9466
9522
  currentValue: limitValueSchema,
9467
9523
  currentCountingMode: runCountingModeSchema.nullable(),
9468
9524
  proposedValue: limitValueSchema,
@@ -9470,61 +9526,61 @@ var productAccessChangeSummarySchema = z66.object({
9470
9526
  })
9471
9527
  )
9472
9528
  });
9473
- var productAccessImpactResponseSchema = z66.object({
9529
+ var productAccessImpactResponseSchema = z67.object({
9474
9530
  owner: productAccessOwnerSchema,
9475
- impactFingerprint: z66.string().min(1),
9476
- affectedTeamCount: z66.number().int().nonnegative(),
9477
- affectedTeamsTruncated: z66.boolean(),
9531
+ impactFingerprint: z67.string().min(1),
9532
+ affectedTeamCount: z67.number().int().nonnegative(),
9533
+ affectedTeamsTruncated: z67.boolean(),
9478
9534
  changes: productAccessChangeSummarySchema,
9479
- sideEffects: z66.object({
9480
- automationWillPause: z66.boolean(),
9481
- clarityWillHide: z66.boolean()
9535
+ sideEffects: z67.object({
9536
+ automationWillPause: z67.boolean(),
9537
+ clarityWillHide: z67.boolean()
9482
9538
  }),
9483
- affectedTeamsPreview: z66.array(
9484
- z66.object({
9485
- teamId: z66.guid(),
9486
- teamName: z66.string(),
9487
- source: z66.enum(PLAN_ENTITLEMENTS_SOURCE_VALUES),
9539
+ affectedTeamsPreview: z67.array(
9540
+ z67.object({
9541
+ teamId: z67.guid(),
9542
+ teamName: z67.string(),
9543
+ source: z67.enum(PLAN_ENTITLEMENTS_SOURCE_VALUES),
9488
9544
  changes: productAccessChangeSummarySchema
9489
9545
  })
9490
9546
  )
9491
9547
  });
9492
- var publicProfileSchema = z67.object({
9493
- id: z67.guid(),
9494
- name: z67.string().nullable(),
9495
- email: z67.email(),
9496
- teamId: z67.guid().nullable()
9548
+ var publicProfileSchema = z68.object({
9549
+ id: z68.guid(),
9550
+ name: z68.string().nullable(),
9551
+ email: z68.email(),
9552
+ teamId: z68.guid().nullable()
9497
9553
  });
9498
- var publicProfileResponseSchema = z67.object({
9554
+ var publicProfileResponseSchema = z68.object({
9499
9555
  profile: publicProfileSchema
9500
9556
  });
9501
- var elementSelectorsSchema = z68.object({
9502
- css: z68.string().optional(),
9503
- cssPath: z68.string().optional(),
9504
- xpath: z68.string().optional(),
9505
- testId: z68.string().optional(),
9506
- ariaSelector: z68.string().optional(),
9507
- text: z68.string().optional()
9557
+ var elementSelectorsSchema = z69.object({
9558
+ css: z69.string().optional(),
9559
+ cssPath: z69.string().optional(),
9560
+ xpath: z69.string().optional(),
9561
+ testId: z69.string().optional(),
9562
+ ariaSelector: z69.string().optional(),
9563
+ text: z69.string().optional()
9508
9564
  });
9509
- var elementInfoSchema = z68.object({
9510
- uid: z68.string().optional(),
9565
+ var elementInfoSchema = z69.object({
9566
+ uid: z69.string().optional(),
9511
9567
  selectors: elementSelectorsSchema,
9512
- tagName: z68.string(),
9513
- textContent: z68.string().optional(),
9514
- ariaLabel: z68.string().optional(),
9515
- computedRole: z68.string().optional(),
9516
- attributes: z68.record(z68.string(), z68.string()).optional(),
9517
- framePath: z68.array(z68.number()).optional(),
9518
- frameUrl: z68.string().optional()
9519
- });
9520
- var recordedEventSchema = z68.looseObject({
9521
- id: z68.string(),
9522
- type: z68.string(),
9523
- timestamp: z68.number(),
9524
- url: z68.string(),
9525
- tabId: z68.number().optional(),
9526
- frameId: z68.number().optional(),
9527
- framePath: z68.array(z68.number()).optional(),
9568
+ tagName: z69.string(),
9569
+ textContent: z69.string().optional(),
9570
+ ariaLabel: z69.string().optional(),
9571
+ computedRole: z69.string().optional(),
9572
+ attributes: z69.record(z69.string(), z69.string()).optional(),
9573
+ framePath: z69.array(z69.number()).optional(),
9574
+ frameUrl: z69.string().optional()
9575
+ });
9576
+ var recordedEventSchema = z69.looseObject({
9577
+ id: z69.string(),
9578
+ type: z69.string(),
9579
+ timestamp: z69.number(),
9580
+ url: z69.string(),
9581
+ tabId: z69.number().optional(),
9582
+ frameId: z69.number().optional(),
9583
+ framePath: z69.array(z69.number()).optional(),
9528
9584
  element: elementInfoSchema.optional()
9529
9585
  });
9530
9586
  var DUVO_CLIENT_HEADER = "x-duvo-client";
@@ -9544,63 +9600,63 @@ function resolveRequestSourceFromClientHeader(header) {
9544
9600
  }
9545
9601
  __name(resolveRequestSourceFromClientHeader, "resolveRequestSourceFromClientHeader");
9546
9602
  __name2(resolveRequestSourceFromClientHeader, "resolveRequestSourceFromClientHeader");
9547
- var RedactedMcpServerConfigSchema = z69.object({
9603
+ var RedactedMcpServerConfigSchema = z70.object({
9548
9604
  type: TransportTypeSchema,
9549
9605
  integrationSlug: IntegrationSlugSchema,
9550
- instanceId: z69.string().nullable()
9606
+ instanceId: z70.string().nullable()
9551
9607
  });
9552
- var ThreadContextMessageSchema = z69.object({
9553
- role: z69.enum(["user", "assistant"]),
9554
- content: z69.string()
9608
+ var ThreadContextMessageSchema = z70.object({
9609
+ role: z70.enum(["user", "assistant"]),
9610
+ content: z70.string()
9555
9611
  });
9556
- var ChatFileReferenceSchema = z69.object({
9557
- id: z69.string(),
9558
- name: z69.string(),
9559
- mimetype: z69.string(),
9560
- size: z69.number(),
9561
- platform: z69.enum(["slack", "teams"]),
9562
- workspaceId: z69.string(),
9563
- channelId: z69.string()
9564
- });
9565
- var ResolvedSubAgentSchema = z69.object({
9566
- agentId: z69.string().uuid(),
9567
- buildId: z69.string().uuid(),
9568
- name: z69.string().min(1).max(64).regex(/^[a-z0-9-]+$/).describe(
9612
+ var ChatFileReferenceSchema = z70.object({
9613
+ id: z70.string(),
9614
+ name: z70.string(),
9615
+ mimetype: z70.string(),
9616
+ size: z70.number(),
9617
+ platform: z70.enum(["slack", "teams"]),
9618
+ workspaceId: z70.string(),
9619
+ channelId: z70.string()
9620
+ });
9621
+ var ResolvedSubAgentSchema = z70.object({
9622
+ agentId: z70.string().uuid(),
9623
+ buildId: z70.string().uuid(),
9624
+ name: z70.string().min(1).max(64).regex(/^[a-z0-9-]+$/).describe(
9569
9625
  "Stable slug used as the Claude Code subagent name (kebab-case, \u226464 chars)"
9570
9626
  ),
9571
- description: z69.string().describe(
9627
+ description: z70.string().describe(
9572
9628
  "Routing description Claude uses to decide when to delegate to this subagent"
9573
9629
  ),
9574
- prompt: z69.string().describe("System prompt (AOP) for this subagent"),
9575
- model: z69.string().optional().describe("Optional Claude model identifier override for this subagent"),
9576
- mcpServers: z69.record(z69.string(), RedactedMcpServerConfigSchema).default({}).describe(
9630
+ prompt: z70.string().describe("System prompt (AOP) for this subagent"),
9631
+ model: z70.string().optional().describe("Optional Claude model identifier override for this subagent"),
9632
+ mcpServers: z70.record(z70.string(), RedactedMcpServerConfigSchema).default({}).describe(
9577
9633
  "Redacted MCP server configs scoped to this subagent. Secrets resolved at execution time."
9578
9634
  )
9579
9635
  });
9580
9636
  var RunConfigSchema = AgentConfigSchema.extend({
9581
- task: z69.string(),
9582
- mcpServers: z69.record(z69.string(), RedactedMcpServerConfigSchema),
9583
- subAgents: z69.array(ResolvedSubAgentSchema).optional().default([]),
9584
- conversationHistory: z69.array(ThreadContextMessageSchema).optional(),
9585
- chatFiles: z69.array(ChatFileReferenceSchema).optional(),
9637
+ task: z70.string(),
9638
+ mcpServers: z70.record(z70.string(), RedactedMcpServerConfigSchema),
9639
+ subAgents: z70.array(ResolvedSubAgentSchema).optional().default([]),
9640
+ conversationHistory: z70.array(ThreadContextMessageSchema).optional(),
9641
+ chatFiles: z70.array(ChatFileReferenceSchema).optional(),
9586
9642
  /** IANA timezone (e.g. `"Europe/Prague"`). Consumers should fall back to UTC when absent. */
9587
- timezone: z69.string().optional(),
9643
+ timezone: z70.string().optional(),
9588
9644
  /**
9589
9645
  * ISO 8601 timestamp captured when the run was created. Frozen at
9590
9646
  * run-creation time and never recomputed, so resumes reuse the same value —
9591
9647
  * the runtime injects it into the cached system prompt and a changing value
9592
9648
  * would bust the prompt cache.
9593
9649
  */
9594
- sessionStartedAt: z69.string().optional()
9650
+ sessionStartedAt: z70.string().optional()
9595
9651
  });
9596
- var StoredRunConfigV0Schema = z69.object({
9597
- version: z69.literal("v0")
9652
+ var StoredRunConfigV0Schema = z70.object({
9653
+ version: z70.literal("v0")
9598
9654
  });
9599
- var StoredRunConfigV1Schema = z69.object({
9600
- version: z69.literal("v1"),
9655
+ var StoredRunConfigV1Schema = z70.object({
9656
+ version: z70.literal("v1"),
9601
9657
  data: RunConfigSchema
9602
9658
  });
9603
- var StoredRunConfigSchema = z69.union([
9659
+ var StoredRunConfigSchema = z70.union([
9604
9660
  StoredRunConfigV0Schema,
9605
9661
  StoredRunConfigV1Schema
9606
9662
  ]);
@@ -9619,181 +9675,181 @@ function isRunConfig(config) {
9619
9675
  }
9620
9676
  __name(isRunConfig, "isRunConfig");
9621
9677
  __name2(isRunConfig, "isRunConfig");
9622
- var skillApiSchema = z70.object({
9623
- id: z70.string(),
9624
- name: z70.string(),
9625
- description: z70.string(),
9678
+ var skillApiSchema = z71.object({
9679
+ id: z71.string(),
9680
+ name: z71.string(),
9681
+ description: z71.string(),
9626
9682
  // System skills have null team_id.
9627
- team_id: z70.string().nullable()
9628
- });
9629
- var listSkillsResponseSchema = z70.object({
9630
- skills: z70.array(skillApiSchema)
9631
- });
9632
- var systemSkillSchema = z70.object({
9633
- id: z70.string(),
9634
- name: z70.string(),
9635
- description: z70.string()
9636
- });
9637
- var listSystemSkillsResponseSchema = z70.object({
9638
- skills: z70.array(systemSkillSchema)
9639
- });
9640
- var skillFileItemSchema = z70.object({
9641
- name: z70.string(),
9642
- path: z70.string(),
9643
- size: z70.number().optional(),
9644
- contentType: z70.string().optional(),
9645
- updatedAt: z70.string().optional()
9646
- });
9647
- var listSkillFilesResponseSchema = z70.object({
9648
- files: z70.array(skillFileItemSchema)
9683
+ team_id: z71.string().nullable()
9649
9684
  });
9650
- var getSkillFileContentResponseSchema = z70.object({
9651
- content: z70.string(),
9652
- path: z70.string(),
9653
- contentType: z70.string().optional()
9654
- });
9655
- var updateSkillFileBodySchema = z70.object({
9656
- content: z70.string()
9685
+ var listSkillsResponseSchema = z71.object({
9686
+ skills: z71.array(skillApiSchema)
9657
9687
  });
9658
- var updateSkillFileResponseSchema = z70.object({
9659
- success: z70.boolean(),
9660
- message: z70.string(),
9661
- skill: z70.object({
9662
- id: z70.string(),
9663
- name: z70.string(),
9664
- description: z70.string()
9688
+ var systemSkillSchema = z71.object({
9689
+ id: z71.string(),
9690
+ name: z71.string(),
9691
+ description: z71.string()
9692
+ });
9693
+ var listSystemSkillsResponseSchema = z71.object({
9694
+ skills: z71.array(systemSkillSchema)
9695
+ });
9696
+ var skillFileItemSchema = z71.object({
9697
+ name: z71.string(),
9698
+ path: z71.string(),
9699
+ size: z71.number().optional(),
9700
+ contentType: z71.string().optional(),
9701
+ updatedAt: z71.string().optional()
9702
+ });
9703
+ var listSkillFilesResponseSchema = z71.object({
9704
+ files: z71.array(skillFileItemSchema)
9705
+ });
9706
+ var getSkillFileContentResponseSchema = z71.object({
9707
+ content: z71.string(),
9708
+ path: z71.string(),
9709
+ contentType: z71.string().optional()
9710
+ });
9711
+ var updateSkillFileBodySchema = z71.object({
9712
+ content: z71.string()
9713
+ });
9714
+ var updateSkillFileResponseSchema = z71.object({
9715
+ success: z71.boolean(),
9716
+ message: z71.string(),
9717
+ skill: z71.object({
9718
+ id: z71.string(),
9719
+ name: z71.string(),
9720
+ description: z71.string()
9665
9721
  }).optional()
9666
9722
  });
9667
- var deleteSkillResponseSchema = z70.object({
9668
- success: z70.boolean(),
9669
- message: z70.string()
9723
+ var deleteSkillResponseSchema = z71.object({
9724
+ success: z71.boolean(),
9725
+ message: z71.string()
9670
9726
  });
9671
- var generateSkillBodySchema = z70.object({
9672
- prompt: z70.string().min(1).max(2e3),
9673
- existingContent: z70.string().max(2e4).optional()
9727
+ var generateSkillBodySchema = z71.object({
9728
+ prompt: z71.string().min(1).max(2e3),
9729
+ existingContent: z71.string().max(2e4).optional()
9674
9730
  });
9675
- var generateSkillResponseSchema = z70.object({
9676
- content: z70.string()
9731
+ var generateSkillResponseSchema = z71.object({
9732
+ content: z71.string()
9677
9733
  });
9678
- var skillAssignmentSchema = z70.object({
9679
- id: z70.string(),
9680
- name: z70.string()
9734
+ var skillAssignmentSchema = z71.object({
9735
+ id: z71.string(),
9736
+ name: z71.string()
9681
9737
  });
9682
- var listSkillAssignmentsResponseSchema = z70.object({
9683
- assignments: z70.array(skillAssignmentSchema),
9684
- total: z70.number()
9738
+ var listSkillAssignmentsResponseSchema = z71.object({
9739
+ assignments: z71.array(skillAssignmentSchema),
9740
+ total: z71.number()
9685
9741
  });
9686
- var teamInvitationApiSchema = z71.object({
9687
- id: z71.string(),
9688
- team_id: z71.string(),
9689
- email: z71.email(),
9690
- invited_by: z71.string(),
9691
- role: z71.string(),
9692
- status: z71.string(),
9693
- name: z71.string().nullable(),
9694
- created_at: z71.string(),
9695
- process_id: z71.guid().nullable().optional()
9696
- });
9697
- var teamInvitationDetailApiSchema = z71.object({
9698
- id: z71.string(),
9699
- team_id: z71.string(),
9700
- email: z71.email(),
9701
- invited_by: z71.string(),
9702
- role: z71.string(),
9703
- status: z71.string(),
9704
- name: z71.string().nullable(),
9705
- created_at: z71.string(),
9706
- process_id: z71.guid().nullable().optional(),
9707
- team: z71.object({
9708
- id: z71.string(),
9709
- name: z71.string()
9742
+ var teamInvitationApiSchema = z72.object({
9743
+ id: z72.string(),
9744
+ team_id: z72.string(),
9745
+ email: z72.email(),
9746
+ invited_by: z72.string(),
9747
+ role: z72.string(),
9748
+ status: z72.string(),
9749
+ name: z72.string().nullable(),
9750
+ created_at: z72.string(),
9751
+ process_id: z72.guid().nullable().optional()
9752
+ });
9753
+ var teamInvitationDetailApiSchema = z72.object({
9754
+ id: z72.string(),
9755
+ team_id: z72.string(),
9756
+ email: z72.email(),
9757
+ invited_by: z72.string(),
9758
+ role: z72.string(),
9759
+ status: z72.string(),
9760
+ name: z72.string().nullable(),
9761
+ created_at: z72.string(),
9762
+ process_id: z72.guid().nullable().optional(),
9763
+ team: z72.object({
9764
+ id: z72.string(),
9765
+ name: z72.string()
9710
9766
  }),
9711
- invitedBy: z71.object({
9712
- id: z71.string(),
9713
- name: z71.string().nullable(),
9714
- email: z71.email()
9767
+ invitedBy: z72.object({
9768
+ id: z72.string(),
9769
+ name: z72.string().nullable(),
9770
+ email: z72.email()
9715
9771
  }),
9716
- process: z71.object({
9717
- id: z71.string(),
9718
- name: z71.string()
9772
+ process: z72.object({
9773
+ id: z72.string(),
9774
+ name: z72.string()
9719
9775
  }).optional()
9720
9776
  });
9721
- var createTeamInvitationRequestSchema = z71.object({
9722
- email: z71.email(),
9723
- role: z71.string(),
9724
- processId: z71.guid().optional()
9777
+ var createTeamInvitationRequestSchema = z72.object({
9778
+ email: z72.email(),
9779
+ role: z72.string(),
9780
+ processId: z72.guid().optional()
9725
9781
  });
9726
- var acceptTeamInvitationRequestSchema = z71.object({
9727
- name: z71.string().optional()
9782
+ var acceptTeamInvitationRequestSchema = z72.object({
9783
+ name: z72.string().optional()
9728
9784
  });
9729
- var bulkInviteResponseSchema = z71.object({
9730
- succeeded: z71.number(),
9731
- skipped: z71.number(),
9732
- failed: z71.number()
9785
+ var bulkInviteResponseSchema = z72.object({
9786
+ succeeded: z72.number(),
9787
+ skipped: z72.number(),
9788
+ failed: z72.number()
9733
9789
  });
9734
- var teamDiscoveryModeSchema = z72.enum(["request", "auto"]);
9735
- var BrowserRegionSchema = z72.enum([
9790
+ var teamDiscoveryModeSchema = z73.enum(["request", "auto"]);
9791
+ var BrowserRegionSchema = z73.enum([
9736
9792
  "us-west-2",
9737
9793
  "us-east-1",
9738
9794
  "eu-central-1",
9739
9795
  "ap-southeast-1"
9740
9796
  ]);
9741
- var BrowserLocationSchema = z72.union([
9742
- z72.literal("cz"),
9743
- z72.literal("de"),
9744
- z72.literal("fr"),
9745
- z72.literal("gb"),
9746
- z72.literal("it"),
9747
- z72.literal("pl"),
9748
- z72.literal("sk")
9797
+ var BrowserLocationSchema = z73.union([
9798
+ z73.literal("cz"),
9799
+ z73.literal("de"),
9800
+ z73.literal("fr"),
9801
+ z73.literal("gb"),
9802
+ z73.literal("it"),
9803
+ z73.literal("pl"),
9804
+ z73.literal("sk")
9749
9805
  ]);
9750
- var teamMemberApiSchema = z72.object({
9751
- id: z72.guid(),
9752
- name: z72.string().nullable(),
9753
- email: z72.email(),
9754
- role: z72.string(),
9755
- inheritedFromOrg: z72.boolean().default(false)
9756
- });
9757
- var listTeamMembersResponseSchema = z72.object({
9758
- members: z72.array(teamMemberApiSchema),
9759
- total: z72.number().int().nonnegative(),
9760
- limit: z72.number().int().positive(),
9761
- offset: z72.number().int().nonnegative()
9762
- });
9763
- var updateMemberRoleRequestSchema = z72.object({
9764
- role: z72.string()
9765
- });
9766
- var removeMemberResponseSchema = z72.object({
9767
- success: z72.literal(true),
9768
- nextTeamId: z72.guid().nullable(),
9769
- planType: z72.enum(["pro", "enterprise"]).nullable()
9770
- });
9771
- var getMemberMeResponseSchema = z72.object({
9772
- role: z72.string().nullable(),
9806
+ var teamMemberApiSchema = z73.object({
9807
+ id: z73.guid(),
9808
+ name: z73.string().nullable(),
9809
+ email: z73.email(),
9810
+ role: z73.string(),
9811
+ inheritedFromOrg: z73.boolean().default(false)
9812
+ });
9813
+ var listTeamMembersResponseSchema = z73.object({
9814
+ members: z73.array(teamMemberApiSchema),
9815
+ total: z73.number().int().nonnegative(),
9816
+ limit: z73.number().int().positive(),
9817
+ offset: z73.number().int().nonnegative()
9818
+ });
9819
+ var updateMemberRoleRequestSchema = z73.object({
9820
+ role: z73.string()
9821
+ });
9822
+ var removeMemberResponseSchema = z73.object({
9823
+ success: z73.literal(true),
9824
+ nextTeamId: z73.guid().nullable(),
9825
+ planType: z73.enum(["pro", "enterprise"]).nullable()
9826
+ });
9827
+ var getMemberMeResponseSchema = z73.object({
9828
+ role: z73.string().nullable(),
9773
9829
  // True only when a real `user_team_memberships` row exists. `role` can be a
9774
9830
  // read-only *virtual* role for org leaders who haven't joined, so it is not a
9775
9831
  // membership signal on its own — use this flag to tell a real member apart.
9776
- isMember: z72.boolean()
9832
+ isMember: z73.boolean()
9777
9833
  });
9778
- var addTeamMemberRequestSchema = z72.object({
9779
- userId: z72.guid(),
9780
- role: z72.string()
9834
+ var addTeamMemberRequestSchema = z73.object({
9835
+ userId: z73.guid(),
9836
+ role: z73.string()
9781
9837
  });
9782
- var updateTeamRequestSchema = z72.object({
9783
- name: z72.string().min(1).optional(),
9784
- slack_team_id: z72.string().optional(),
9838
+ var updateTeamRequestSchema = z73.object({
9839
+ name: z73.string().min(1).optional(),
9840
+ slack_team_id: z73.string().optional(),
9785
9841
  discovery_mode: teamDiscoveryModeSchema.optional()
9786
9842
  });
9787
- var teamApiSchema = z72.object({
9788
- id: z72.guid(),
9789
- name: z72.string(),
9790
- created_at: z72.string(),
9791
- organization_id: z72.guid().nullable(),
9792
- slack_team_id: z72.string().nullable(),
9843
+ var teamApiSchema = z73.object({
9844
+ id: z73.guid(),
9845
+ name: z73.string(),
9846
+ created_at: z73.string(),
9847
+ organization_id: z73.guid().nullable(),
9848
+ slack_team_id: z73.string().nullable(),
9793
9849
  discovery_mode: teamDiscoveryModeSchema
9794
9850
  });
9795
9851
  var TEAM_CONFIG_VERSION = 1;
9796
- var teamConfigDataSchema = z72.object({
9852
+ var teamConfigDataSchema = z73.object({
9797
9853
  browserProviderOverride: BrowserProviderTypeSchema.nullable().optional(),
9798
9854
  // Egress identity (proxy country) — what the target site sees.
9799
9855
  browserLocationOverride: BrowserLocationSchema.nullable().optional(),
@@ -9804,182 +9860,182 @@ var teamConfigDataSchema = z72.object({
9804
9860
  // Kept optional so existing v1 rows still parse; the resolver reads the new
9805
9861
  // fields first and falls back to these. Do not surface in the UI.
9806
9862
  browserRegionOverride: BrowserRegionSchema.nullable().optional(),
9807
- sessionRecordingOverride: z72.boolean().nullable().optional()
9863
+ sessionRecordingOverride: z73.boolean().nullable().optional()
9808
9864
  });
9809
- var teamConfigSchema = z72.object({
9810
- version: z72.literal(TEAM_CONFIG_VERSION),
9865
+ var teamConfigSchema = z73.object({
9866
+ version: z73.literal(TEAM_CONFIG_VERSION),
9811
9867
  data: teamConfigDataSchema
9812
9868
  });
9813
- var listTeamInvitesResponseSchema = z72.object({
9814
- invitations: z72.array(teamInvitationApiSchema)
9869
+ var listTeamInvitesResponseSchema = z73.object({
9870
+ invitations: z73.array(teamInvitationApiSchema)
9815
9871
  });
9816
- var teamInsightsCopilotSchema = z73.object({
9817
- id: z73.guid(),
9818
- name: z73.string(),
9819
- teamName: z73.string().nullable().optional(),
9820
- created_at: z73.string().nullable(),
9821
- updated_at: z73.string().nullable(),
9822
- team_id: z73.string().nullable(),
9823
- thread_id: z73.string().nullable(),
9824
- slack_enabled: z73.boolean().nullable()
9825
- });
9826
- var teamInsightsUserProfileSchema = z73.object({
9827
- id: z73.guid(),
9828
- name: z73.string().nullable(),
9829
- email: z73.string()
9872
+ var teamInsightsCopilotSchema = z74.object({
9873
+ id: z74.guid(),
9874
+ name: z74.string(),
9875
+ teamName: z74.string().nullable().optional(),
9876
+ created_at: z74.string().nullable(),
9877
+ updated_at: z74.string().nullable(),
9878
+ team_id: z74.string().nullable(),
9879
+ thread_id: z74.string().nullable(),
9880
+ slack_enabled: z74.boolean().nullable()
9881
+ });
9882
+ var teamInsightsUserProfileSchema = z74.object({
9883
+ id: z74.guid(),
9884
+ name: z74.string().nullable(),
9885
+ email: z74.string()
9830
9886
  });
9831
9887
  var teamInsightsUserUsageSchema = teamInsightsUserProfileSchema.extend(
9832
9888
  {
9833
- runCount: z73.number(),
9834
- lastRun: z73.string().nullable()
9889
+ runCount: z74.number(),
9890
+ lastRun: z74.string().nullable()
9835
9891
  }
9836
9892
  );
9837
- var teamInsightsMetricSourceSchema = z73.object({
9893
+ var teamInsightsMetricSourceSchema = z74.object({
9838
9894
  source: agentRunSourceSchema,
9839
- runsTotal: z73.number(),
9840
- completedRuns: z73.number()
9895
+ runsTotal: z74.number(),
9896
+ completedRuns: z74.number()
9841
9897
  });
9842
9898
  var teamInsightsCopilotWithRunsSchema = teamInsightsCopilotSchema.extend({
9843
- integrations: z73.array(z73.string()),
9844
- uniqueUsersCount: z73.number(),
9845
- users: z73.array(teamInsightsUserUsageSchema),
9846
- totalRuns: z73.number(),
9847
- completedRuns: z73.number(),
9848
- totalTimeSpentMs: z73.number(),
9849
- averageTimeSpentMs: z73.number(),
9850
- completedRunsWithTiming: z73.number(),
9851
- sources: z73.array(teamInsightsMetricSourceSchema)
9852
- });
9853
- var teamInsightsAgentsRunResponseSchema = z73.object({
9854
- data: z73.array(teamInsightsCopilotWithRunsSchema),
9855
- total: z73.number()
9856
- });
9857
- var teamInsightsMetricsResponseSchema = z73.object({
9858
- runsTotal: z73.number(),
9859
- completedRuns: z73.number(),
9860
- sources: z73.array(teamInsightsMetricSourceSchema)
9861
- });
9862
- var teamInsightsUserAgentRunSchema = z73.object({
9863
- id: z73.guid(),
9864
- created_at: z73.string(),
9865
- updated_at: z73.string(),
9866
- agent_id: z73.guid(),
9867
- agent_name: z73.string(),
9868
- build_id: z73.guid(),
9869
- source: z73.string().nullable(),
9870
- started_at: z73.string().nullable(),
9871
- completed_at: z73.string().nullable()
9872
- });
9873
- var teamInsightsAgentSchema = z73.object({
9874
- id: z73.guid(),
9875
- name: z73.string(),
9876
- teamName: z73.string().nullable().optional(),
9877
- runs: z73.array(teamInsightsUserAgentRunSchema)
9878
- });
9879
- var teamInsightsUserWithAgentsAndRunsSchema = teamInsightsUserProfileSchema.extend({
9880
- agents: z73.array(teamInsightsAgentSchema),
9881
- runs: z73.array(teamInsightsUserAgentRunSchema),
9882
- totalRuns: z73.number()
9883
- });
9884
- var teamInsightsUsersResponseSchema = z73.object({
9885
- data: z73.array(teamInsightsUserWithAgentsAndRunsSchema),
9886
- total: z73.number()
9887
- });
9888
- var guardrailsAuthorSchema = z74.object({
9899
+ integrations: z74.array(z74.string()),
9900
+ uniqueUsersCount: z74.number(),
9901
+ users: z74.array(teamInsightsUserUsageSchema),
9902
+ totalRuns: z74.number(),
9903
+ completedRuns: z74.number(),
9904
+ totalTimeSpentMs: z74.number(),
9905
+ averageTimeSpentMs: z74.number(),
9906
+ completedRunsWithTiming: z74.number(),
9907
+ sources: z74.array(teamInsightsMetricSourceSchema)
9908
+ });
9909
+ var teamInsightsAgentsRunResponseSchema = z74.object({
9910
+ data: z74.array(teamInsightsCopilotWithRunsSchema),
9911
+ total: z74.number()
9912
+ });
9913
+ var teamInsightsMetricsResponseSchema = z74.object({
9914
+ runsTotal: z74.number(),
9915
+ completedRuns: z74.number(),
9916
+ sources: z74.array(teamInsightsMetricSourceSchema)
9917
+ });
9918
+ var teamInsightsUserAgentRunSchema = z74.object({
9889
9919
  id: z74.guid(),
9890
- name: z74.string().nullable(),
9891
- email: z74.email()
9892
- });
9893
- var guardrailsRevisionSchema = z74.object({
9920
+ created_at: z74.string(),
9921
+ updated_at: z74.string(),
9922
+ agent_id: z74.guid(),
9923
+ agent_name: z74.string(),
9924
+ build_id: z74.guid(),
9925
+ source: z74.string().nullable(),
9926
+ started_at: z74.string().nullable(),
9927
+ completed_at: z74.string().nullable()
9928
+ });
9929
+ var teamInsightsAgentSchema = z74.object({
9894
9930
  id: z74.guid(),
9895
- teamId: z74.guid(),
9896
- guardrailsText: z74.string().nullable(),
9897
- blockedDomains: z74.array(z74.string()),
9898
- createdAt: z74.string(),
9931
+ name: z74.string(),
9932
+ teamName: z74.string().nullable().optional(),
9933
+ runs: z74.array(teamInsightsUserAgentRunSchema)
9934
+ });
9935
+ var teamInsightsUserWithAgentsAndRunsSchema = teamInsightsUserProfileSchema.extend({
9936
+ agents: z74.array(teamInsightsAgentSchema),
9937
+ runs: z74.array(teamInsightsUserAgentRunSchema),
9938
+ totalRuns: z74.number()
9939
+ });
9940
+ var teamInsightsUsersResponseSchema = z74.object({
9941
+ data: z74.array(teamInsightsUserWithAgentsAndRunsSchema),
9942
+ total: z74.number()
9943
+ });
9944
+ var guardrailsAuthorSchema = z75.object({
9945
+ id: z75.guid(),
9946
+ name: z75.string().nullable(),
9947
+ email: z75.email()
9948
+ });
9949
+ var guardrailsRevisionSchema = z75.object({
9950
+ id: z75.guid(),
9951
+ teamId: z75.guid(),
9952
+ guardrailsText: z75.string().nullable(),
9953
+ blockedDomains: z75.array(z75.string()),
9954
+ createdAt: z75.string(),
9899
9955
  createdBy: guardrailsAuthorSchema
9900
9956
  });
9901
- var getTeamGuardrailsResponseSchema = z74.object({
9957
+ var getTeamGuardrailsResponseSchema = z75.object({
9902
9958
  current: guardrailsRevisionSchema.nullable()
9903
9959
  });
9904
- var listTeamGuardrailsRevisionsQuerySchema = z74.object({
9905
- limit: z74.coerce.number().int().min(1).max(100).default(20),
9906
- offset: z74.coerce.number().int().min(0).default(0)
9960
+ var listTeamGuardrailsRevisionsQuerySchema = z75.object({
9961
+ limit: z75.coerce.number().int().min(1).max(100).default(20),
9962
+ offset: z75.coerce.number().int().min(0).default(0)
9907
9963
  });
9908
- var listTeamGuardrailsRevisionsResponseSchema = z74.object({
9909
- revisions: z74.array(guardrailsRevisionSchema),
9910
- total: z74.number().int().nonnegative()
9964
+ var listTeamGuardrailsRevisionsResponseSchema = z75.object({
9965
+ revisions: z75.array(guardrailsRevisionSchema),
9966
+ total: z75.number().int().nonnegative()
9911
9967
  });
9912
- var createTeamGuardrailsRevisionRequestSchema = z74.object({
9913
- guardrailsText: z74.string().max(MAX_GUARDRAILS_TEXT_LENGTH).nullable().transform((value) => value && value.trim().length > 0 ? value : null),
9914
- blockedDomains: z74.array(z74.string()).max(MAX_BLOCKED_DOMAINS)
9968
+ var createTeamGuardrailsRevisionRequestSchema = z75.object({
9969
+ guardrailsText: z75.string().max(MAX_GUARDRAILS_TEXT_LENGTH).nullable().transform((value) => value && value.trim().length > 0 ? value : null),
9970
+ blockedDomains: z75.array(z75.string()).max(MAX_BLOCKED_DOMAINS)
9915
9971
  });
9916
- var userDismissalListResponseSchema = z75.object({
9917
- data: z75.array(z75.string())
9972
+ var userDismissalListResponseSchema = z76.object({
9973
+ data: z76.array(z76.string())
9918
9974
  });
9919
- var userDismissalMutationSchema = z75.object({
9920
- elementKey: z75.string()
9975
+ var userDismissalMutationSchema = z76.object({
9976
+ elementKey: z76.string()
9921
9977
  });
9922
9978
  var PASSWORD_MIN = 1;
9923
9979
  var PASSWORD_MAX = 1024;
9924
9980
  var NAME_MAX = 200;
9925
9981
  var URL_MAX = 500;
9926
9982
  var USERNAME_MAX = 200;
9927
- var vpnProxyConfigSummarySchema = z76.object({
9928
- id: z76.guid(),
9929
- name: z76.string(),
9930
- server: z76.string(),
9931
- username: z76.string(),
9932
- enabled: z76.boolean(),
9933
- passwordSet: z76.boolean(),
9934
- organizationCount: z76.number().int().nonnegative(),
9935
- createdAt: z76.string(),
9936
- updatedAt: z76.string()
9937
- });
9938
- var vpnProxyConfigListResponseSchema = z76.object({
9939
- configs: z76.array(vpnProxyConfigSummarySchema)
9940
- });
9941
- var vpnProxyConfigCreateRequestSchema = z76.object({
9942
- name: z76.string().trim().min(1).max(NAME_MAX),
9943
- server: z76.string().trim().min(1).max(URL_MAX).url(),
9944
- username: z76.string().trim().min(1).max(USERNAME_MAX),
9945
- password: z76.string().min(PASSWORD_MIN).max(PASSWORD_MAX),
9946
- enabled: z76.boolean().prefault(true)
9947
- });
9948
- var vpnProxyConfigCreateResponseSchema = z76.object({
9983
+ var vpnProxyConfigSummarySchema = z77.object({
9984
+ id: z77.guid(),
9985
+ name: z77.string(),
9986
+ server: z77.string(),
9987
+ username: z77.string(),
9988
+ enabled: z77.boolean(),
9989
+ passwordSet: z77.boolean(),
9990
+ organizationCount: z77.number().int().nonnegative(),
9991
+ createdAt: z77.string(),
9992
+ updatedAt: z77.string()
9993
+ });
9994
+ var vpnProxyConfigListResponseSchema = z77.object({
9995
+ configs: z77.array(vpnProxyConfigSummarySchema)
9996
+ });
9997
+ var vpnProxyConfigCreateRequestSchema = z77.object({
9998
+ name: z77.string().trim().min(1).max(NAME_MAX),
9999
+ server: z77.string().trim().min(1).max(URL_MAX).url(),
10000
+ username: z77.string().trim().min(1).max(USERNAME_MAX),
10001
+ password: z77.string().min(PASSWORD_MIN).max(PASSWORD_MAX),
10002
+ enabled: z77.boolean().prefault(true)
10003
+ });
10004
+ var vpnProxyConfigCreateResponseSchema = z77.object({
9949
10005
  config: vpnProxyConfigSummarySchema
9950
10006
  });
9951
- var vpnProxyConfigUpdateRequestSchema = z76.object({
9952
- name: z76.string().trim().min(1).max(NAME_MAX).optional(),
9953
- server: z76.string().trim().min(1).max(URL_MAX).url().optional(),
9954
- username: z76.string().trim().min(1).max(USERNAME_MAX).optional(),
9955
- password: z76.string().min(PASSWORD_MIN).max(PASSWORD_MAX).optional(),
9956
- enabled: z76.boolean().optional()
10007
+ var vpnProxyConfigUpdateRequestSchema = z77.object({
10008
+ name: z77.string().trim().min(1).max(NAME_MAX).optional(),
10009
+ server: z77.string().trim().min(1).max(URL_MAX).url().optional(),
10010
+ username: z77.string().trim().min(1).max(USERNAME_MAX).optional(),
10011
+ password: z77.string().min(PASSWORD_MIN).max(PASSWORD_MAX).optional(),
10012
+ enabled: z77.boolean().optional()
9957
10013
  });
9958
- var vpnProxyConfigUpdateResponseSchema = z76.object({
10014
+ var vpnProxyConfigUpdateResponseSchema = z77.object({
9959
10015
  config: vpnProxyConfigSummarySchema
9960
10016
  });
9961
- var vpnProxyConfigDeleteResponseSchema = z76.object({
9962
- success: z76.literal(true)
10017
+ var vpnProxyConfigDeleteResponseSchema = z77.object({
10018
+ success: z77.literal(true)
9963
10019
  });
9964
- var vpnProxyConfigOrganizationSchema = z76.object({
9965
- id: z76.guid(),
9966
- organizationId: z76.guid(),
9967
- organizationName: z76.string(),
9968
- attachedAt: z76.string()
10020
+ var vpnProxyConfigOrganizationSchema = z77.object({
10021
+ id: z77.guid(),
10022
+ organizationId: z77.guid(),
10023
+ organizationName: z77.string(),
10024
+ attachedAt: z77.string()
9969
10025
  });
9970
- var vpnProxyConfigOrganizationListResponseSchema = z76.object({
9971
- organizations: z76.array(vpnProxyConfigOrganizationSchema)
10026
+ var vpnProxyConfigOrganizationListResponseSchema = z77.object({
10027
+ organizations: z77.array(vpnProxyConfigOrganizationSchema)
9972
10028
  });
9973
- var vpnProxyConfigAttachOrganizationRequestSchema = z76.object({
9974
- organizationId: z76.guid()
10029
+ var vpnProxyConfigAttachOrganizationRequestSchema = z77.object({
10030
+ organizationId: z77.guid()
9975
10031
  });
9976
- var vpnProxyConfigAttachOrganizationResponseSchema = z76.object({
10032
+ var vpnProxyConfigAttachOrganizationResponseSchema = z77.object({
9977
10033
  attachment: vpnProxyConfigOrganizationSchema
9978
10034
  });
9979
- var vpnProxyConfigDetachOrganizationResponseSchema = z76.object({
9980
- success: z76.literal(true)
10035
+ var vpnProxyConfigDetachOrganizationResponseSchema = z77.object({
10036
+ success: z77.literal(true)
9981
10037
  });
9982
- var vpnProxyConfigForOrganizationResponseSchema = z76.object({
10038
+ var vpnProxyConfigForOrganizationResponseSchema = z77.object({
9983
10039
  config: vpnProxyConfigSummarySchema.nullable()
9984
10040
  });
9985
10041
  function canonicalizeSopInput(config) {
@@ -10000,7 +10056,7 @@ function canonicalizeSopInput(config) {
10000
10056
  }
10001
10057
  __name(canonicalizeSopInput, "canonicalizeSopInput");
10002
10058
  __name2(canonicalizeSopInput, "canonicalizeSopInput");
10003
- var caseFilterStatusSchema = z77.enum([
10059
+ var caseFilterStatusSchema = z78.enum([
10004
10060
  "pending",
10005
10061
  "claimed",
10006
10062
  "completed",
@@ -10008,19 +10064,19 @@ var caseFilterStatusSchema = z77.enum([
10008
10064
  "needs_input",
10009
10065
  "postponed"
10010
10066
  ]);
10011
- var casesFiltersSchema = z77.object({
10012
- status: z77.array(caseFilterStatusSchema).optional(),
10013
- created_at_from: z77.string().optional(),
10014
- updated_at_from: z77.string().optional(),
10015
- labels: z77.record(z77.string(), z77.array(z77.string())).optional()
10067
+ var casesFiltersSchema = z78.object({
10068
+ status: z78.array(caseFilterStatusSchema).optional(),
10069
+ created_at_from: z78.string().optional(),
10070
+ updated_at_from: z78.string().optional(),
10071
+ labels: z78.record(z78.string(), z78.array(z78.string())).optional()
10016
10072
  });
10017
- var casesListRequestBodySchema = z77.object({
10073
+ var casesListRequestBodySchema = z78.object({
10018
10074
  filters: casesFiltersSchema.default({}),
10019
- limit: z77.int().min(1).max(100).default(25),
10020
- offset: z77.int().min(0).default(0),
10021
- sort_by: z77.enum(["created_at", "updated_at", "postponed_to"]).default("created_at"),
10022
- sort_order: z77.enum(["asc", "desc"]).default("desc"),
10023
- search: z77.string().optional()
10075
+ limit: z78.int().min(1).max(100).default(25),
10076
+ offset: z78.int().min(0).default(0),
10077
+ sort_by: z78.enum(["created_at", "updated_at", "postponed_to"]).default("created_at"),
10078
+ sort_order: z78.enum(["asc", "desc"]).default("desc"),
10079
+ search: z78.string().optional()
10024
10080
  });
10025
10081
  function toBase64(input) {
10026
10082
  if (typeof btoa === "function") {
@@ -10115,7 +10171,7 @@ function setFilterValuesByCategoryKey(filters, categoryKey, values) {
10115
10171
  const { status: _, ...rest } = filters;
10116
10172
  return rest;
10117
10173
  }
10118
- const parsed = z77.array(caseFilterStatusSchema).safeParse(values);
10174
+ const parsed = z78.array(caseFilterStatusSchema).safeParse(values);
10119
10175
  if (!parsed.success) {
10120
10176
  return filters;
10121
10177
  }
@@ -11378,11 +11434,11 @@ function emptyConfig() {
11378
11434
  __name(emptyConfig, "emptyConfig");
11379
11435
 
11380
11436
  // src/config/env.ts
11381
- import { z as z78 } from "zod";
11382
- var optionalEnvString = z78.string().optional().transform(
11437
+ import { z as z79 } from "zod";
11438
+ var optionalEnvString = z79.string().optional().transform(
11383
11439
  (value) => value === void 0 || value === "" ? void 0 : value
11384
11440
  );
11385
- var CliEnvSchema = z78.object({
11441
+ var CliEnvSchema = z79.object({
11386
11442
  DUVO_PROFILE: optionalEnvString,
11387
11443
  DUVO_API_KEY: optionalEnvString,
11388
11444
  DUVO_API_BASE_URL: optionalEnvString,
@@ -11879,9 +11935,9 @@ async function requireAuthenticatedConfig(command) {
11879
11935
  __name(requireAuthenticatedConfig, "requireAuthenticatedConfig");
11880
11936
 
11881
11937
  // src/commands/shared/team-context.ts
11882
- import { z as z79 } from "zod";
11883
- var teamSchema = z79.object({ id: z79.string() });
11884
- var listMyTeamsResponseSchema = z79.object({ teams: z79.array(teamSchema) });
11938
+ import { z as z80 } from "zod";
11939
+ var teamSchema = z80.object({ id: z80.string() });
11940
+ var listMyTeamsResponseSchema = z80.object({ teams: z80.array(teamSchema) });
11885
11941
  async function resolveRequiredTeamId(config, options = {}) {
11886
11942
  if (options.override) {
11887
11943
  return options.override;
@@ -12664,56 +12720,56 @@ import { readFile as readFile2 } from "node:fs/promises";
12664
12720
  import { confirm as confirm2, isCancel as isCancel2, text } from "@clack/prompts";
12665
12721
 
12666
12722
  // src/api/agent-schemas.ts
12667
- import { z as z81 } from "zod";
12723
+ import { z as z82 } from "zod";
12668
12724
 
12669
12725
  // src/api/json-value.ts
12670
- import { z as z80 } from "zod";
12671
- var jsonValueSchema = z80.lazy(
12672
- () => z80.union([
12673
- z80.string(),
12674
- z80.number(),
12675
- z80.boolean(),
12676
- z80.null(),
12677
- z80.array(jsonValueSchema),
12678
- z80.record(z80.string(), jsonValueSchema)
12726
+ import { z as z81 } from "zod";
12727
+ var jsonValueSchema = z81.lazy(
12728
+ () => z81.union([
12729
+ z81.string(),
12730
+ z81.number(),
12731
+ z81.boolean(),
12732
+ z81.null(),
12733
+ z81.array(jsonValueSchema),
12734
+ z81.record(z81.string(), jsonValueSchema)
12679
12735
  ])
12680
12736
  );
12681
12737
 
12682
12738
  // src/api/agent-schemas.ts
12683
- var publicAgentSchema = z81.object({
12684
- id: z81.string(),
12685
- name: z81.string(),
12686
- slack_enabled: z81.boolean().nullish(),
12687
- microsoft_teams_enabled: z81.boolean().nullish(),
12688
- agentic_memory_enabled: z81.boolean().nullish(),
12689
- thread_id: z81.string().nullish(),
12690
- created_at: z81.string().nullish(),
12691
- updated_at: z81.string().nullish(),
12692
- latest_build: z81.object({ config: jsonValueSchema.nullish() }).nullish()
12693
- });
12694
- var publicBuildSchema = z81.object({
12695
- id: z81.string(),
12696
- agent_id: z81.string(),
12697
- name: z81.string(),
12698
- revision_number: z81.number().nullish(),
12699
- created_at: z81.string().nullish(),
12700
- updated_at: z81.string().nullish()
12701
- });
12702
- var listAgentsResponseSchema = z81.object({
12703
- agents: z81.array(publicAgentSchema),
12704
- total: z81.number().nullish(),
12705
- limit: z81.number().nullish(),
12706
- offset: z81.number().nullish()
12707
- });
12708
- var getAgentResponseSchema = z81.object({
12739
+ var publicAgentSchema = z82.object({
12740
+ id: z82.string(),
12741
+ name: z82.string(),
12742
+ slack_enabled: z82.boolean().nullish(),
12743
+ microsoft_teams_enabled: z82.boolean().nullish(),
12744
+ agentic_memory_enabled: z82.boolean().nullish(),
12745
+ thread_id: z82.string().nullish(),
12746
+ created_at: z82.string().nullish(),
12747
+ updated_at: z82.string().nullish(),
12748
+ latest_build: z82.object({ config: jsonValueSchema.nullish() }).nullish()
12749
+ });
12750
+ var publicBuildSchema = z82.object({
12751
+ id: z82.string(),
12752
+ agent_id: z82.string(),
12753
+ name: z82.string(),
12754
+ revision_number: z82.number().nullish(),
12755
+ created_at: z82.string().nullish(),
12756
+ updated_at: z82.string().nullish()
12757
+ });
12758
+ var listAgentsResponseSchema = z82.object({
12759
+ agents: z82.array(publicAgentSchema),
12760
+ total: z82.number().nullish(),
12761
+ limit: z82.number().nullish(),
12762
+ offset: z82.number().nullish()
12763
+ });
12764
+ var getAgentResponseSchema = z82.object({
12709
12765
  agent: publicAgentSchema
12710
12766
  });
12711
- var createAgentResponseSchema = z81.object({
12767
+ var createAgentResponseSchema = z82.object({
12712
12768
  agent: publicAgentSchema,
12713
12769
  build: publicBuildSchema.optional()
12714
12770
  });
12715
- var deleteAgentResponseSchema = z81.object({
12716
- success: z81.literal(true)
12771
+ var deleteAgentResponseSchema = z82.object({
12772
+ success: z82.literal(true)
12717
12773
  });
12718
12774
  var buildConfigSchema = StoredAgentConfigSchemaV2;
12719
12775
  var DEFAULT_NEW_AGENT_NAME = DEFAULT_AGENT_NAME;
@@ -13430,29 +13486,29 @@ function registerAgentsEvalScores(agents) {
13430
13486
  __name(registerAgentsEvalScores, "registerAgentsEvalScores");
13431
13487
 
13432
13488
  // src/api/build-schemas.ts
13433
- import { z as z82 } from "zod";
13434
- var publicBuildSchema2 = z82.object({
13435
- id: z82.string(),
13436
- agent_id: z82.string(),
13437
- name: z82.string(),
13438
- status: z82.string().nullish(),
13489
+ import { z as z83 } from "zod";
13490
+ var publicBuildSchema2 = z83.object({
13491
+ id: z83.string(),
13492
+ agent_id: z83.string(),
13493
+ name: z83.string(),
13494
+ status: z83.string().nullish(),
13439
13495
  config: jsonValueSchema.nullish(),
13440
- revision_number: z82.number().nullish(),
13441
- created_at: z82.string().nullish(),
13442
- updated_at: z82.string().nullish()
13496
+ revision_number: z83.number().nullish(),
13497
+ created_at: z83.string().nullish(),
13498
+ updated_at: z83.string().nullish()
13443
13499
  });
13444
- var listBuildsResponseSchema2 = z82.object({
13445
- builds: z82.array(publicBuildSchema2),
13446
- total: z82.number().nullish(),
13447
- limit: z82.number().nullish(),
13448
- offset: z82.number().nullish()
13500
+ var listBuildsResponseSchema2 = z83.object({
13501
+ builds: z83.array(publicBuildSchema2),
13502
+ total: z83.number().nullish(),
13503
+ limit: z83.number().nullish(),
13504
+ offset: z83.number().nullish()
13449
13505
  });
13450
- var getBuildResponseSchema = z82.object({
13506
+ var getBuildResponseSchema = z83.object({
13451
13507
  build: publicBuildSchema2
13452
13508
  });
13453
- var createBuildResponseSchema = z82.object({
13509
+ var createBuildResponseSchema = z83.object({
13454
13510
  build: publicBuildSchema2,
13455
- agent: z82.object({ id: z82.string() })
13511
+ agent: z83.object({ id: z83.string() })
13456
13512
  });
13457
13513
 
13458
13514
  // src/commands/agents/get.ts
@@ -13702,30 +13758,30 @@ function registerAgentsModels(agents) {
13702
13758
  __name(registerAgentsModels, "registerAgentsModels");
13703
13759
 
13704
13760
  // src/api/schedule-schemas.ts
13705
- import { z as z83 } from "zod";
13706
- var publicScheduleSchema = z83.object({
13707
- id: z83.string(),
13708
- build_id: z83.string(),
13709
- agent_id: z83.string(),
13710
- user_id: z83.string(),
13711
- enabled: z83.boolean(),
13712
- frequency: z83.string(),
13713
- time: z83.string().nullish(),
13714
- timezone: z83.string(),
13715
- day: z83.string().nullish(),
13716
- day_of_month: z83.number().nullish(),
13717
- cron: z83.string().nullish(),
13718
- source: z83.string().nullish(),
13719
- task: z83.string().nullish(),
13720
- recurring: z83.boolean().nullish(),
13721
- created_at: z83.string(),
13722
- updated_at: z83.string()
13723
- });
13724
- var listSchedulesResponseSchema = z83.object({
13725
- schedules: z83.array(publicScheduleSchema)
13726
- });
13727
- var deleteScheduleResponseSchema = z83.object({
13728
- success: z83.literal(true)
13761
+ import { z as z84 } from "zod";
13762
+ var publicScheduleSchema = z84.object({
13763
+ id: z84.string(),
13764
+ build_id: z84.string(),
13765
+ agent_id: z84.string(),
13766
+ user_id: z84.string(),
13767
+ enabled: z84.boolean(),
13768
+ frequency: z84.string(),
13769
+ time: z84.string().nullish(),
13770
+ timezone: z84.string(),
13771
+ day: z84.string().nullish(),
13772
+ day_of_month: z84.number().nullish(),
13773
+ cron: z84.string().nullish(),
13774
+ source: z84.string().nullish(),
13775
+ task: z84.string().nullish(),
13776
+ recurring: z84.boolean().nullish(),
13777
+ created_at: z84.string(),
13778
+ updated_at: z84.string()
13779
+ });
13780
+ var listSchedulesResponseSchema = z84.object({
13781
+ schedules: z84.array(publicScheduleSchema)
13782
+ });
13783
+ var deleteScheduleResponseSchema = z84.object({
13784
+ success: z84.literal(true)
13729
13785
  });
13730
13786
 
13731
13787
  // src/commands/agents/schedules/render-schedule.ts
@@ -14173,33 +14229,33 @@ function registerAgentsSetModel(agents) {
14173
14229
  __name(registerAgentsSetModel, "registerAgentsSetModel");
14174
14230
 
14175
14231
  // src/api/trigger-schemas.ts
14176
- import { z as z84 } from "zod";
14177
- var triggerSchema = z84.object({
14178
- id: z84.string(),
14179
- agent_id: z84.string(),
14180
- user_id: z84.string(),
14181
- integration_slug: z84.string(),
14182
- trigger_type: z84.string(),
14183
- filter_config: z84.record(z84.string(), z84.unknown()),
14184
- integration_instance_id: z84.string(),
14185
- enabled: z84.boolean(),
14186
- created_at: z84.string(),
14187
- updated_at: z84.string()
14232
+ import { z as z85 } from "zod";
14233
+ var triggerSchema = z85.object({
14234
+ id: z85.string(),
14235
+ agent_id: z85.string(),
14236
+ user_id: z85.string(),
14237
+ integration_slug: z85.string(),
14238
+ trigger_type: z85.string(),
14239
+ filter_config: z85.record(z85.string(), z85.unknown()),
14240
+ integration_instance_id: z85.string(),
14241
+ enabled: z85.boolean(),
14242
+ created_at: z85.string(),
14243
+ updated_at: z85.string()
14188
14244
  });
14189
- var listTriggersResponseSchema = z84.object({
14190
- triggers: z84.array(triggerSchema)
14245
+ var listTriggersResponseSchema = z85.object({
14246
+ triggers: z85.array(triggerSchema)
14191
14247
  });
14192
- var triggerTypeSchema = z84.object({
14193
- integration_slug: z84.string(),
14194
- integration_name: z84.string(),
14195
- icon_url: z84.string(),
14196
- trigger_type: z84.string(),
14197
- label: z84.string(),
14198
- description: z84.string(),
14199
- filter_schema: z84.record(z84.string(), z84.unknown())
14248
+ var triggerTypeSchema = z85.object({
14249
+ integration_slug: z85.string(),
14250
+ integration_name: z85.string(),
14251
+ icon_url: z85.string(),
14252
+ trigger_type: z85.string(),
14253
+ label: z85.string(),
14254
+ description: z85.string(),
14255
+ filter_schema: z85.record(z85.string(), z85.unknown())
14200
14256
  });
14201
- var listTriggerTypesResponseSchema = z84.object({
14202
- trigger_types: z84.array(triggerTypeSchema)
14257
+ var listTriggerTypesResponseSchema = z85.object({
14258
+ trigger_types: z85.array(triggerTypeSchema)
14203
14259
  });
14204
14260
 
14205
14261
  // src/commands/agents/triggers/list.ts
@@ -14823,55 +14879,55 @@ function fieldsToSearchParams(fields) {
14823
14879
  __name(fieldsToSearchParams, "fieldsToSearchParams");
14824
14880
 
14825
14881
  // src/api/integration-schemas.ts
14826
- import { z as z85 } from "zod";
14827
- var integrationSchema = z85.object({
14828
- id: z85.string(),
14829
- name: z85.string(),
14830
- type: z85.string(),
14831
- provider: z85.string(),
14832
- user_id: z85.string().nullable(),
14833
- team_id: z85.string(),
14834
- server_url: z85.string().optional(),
14835
- transport_type: z85.string().optional(),
14836
- auth_method: z85.string().nullish(),
14837
- composio_mcp_id: z85.string().nullish(),
14838
- custom_integration_id: z85.string().nullish(),
14839
- icon_url: z85.string().nullish(),
14840
- oauth_provider: z85.string().nullish(),
14841
- oauth_provider_key: z85.string().nullish(),
14842
- oauth_scopes: z85.array(z85.string()).nullish(),
14843
- integration_id: z85.string().nullish(),
14844
- created_at: z85.string(),
14845
- updated_at: z85.string()
14846
- });
14847
- var integrationsListResponseSchema2 = z85.object({
14848
- integrations: z85.array(integrationSchema)
14882
+ import { z as z86 } from "zod";
14883
+ var integrationSchema = z86.object({
14884
+ id: z86.string(),
14885
+ name: z86.string(),
14886
+ type: z86.string(),
14887
+ provider: z86.string(),
14888
+ user_id: z86.string().nullable(),
14889
+ team_id: z86.string(),
14890
+ server_url: z86.string().optional(),
14891
+ transport_type: z86.string().optional(),
14892
+ auth_method: z86.string().nullish(),
14893
+ composio_mcp_id: z86.string().nullish(),
14894
+ custom_integration_id: z86.string().nullish(),
14895
+ icon_url: z86.string().nullish(),
14896
+ oauth_provider: z86.string().nullish(),
14897
+ oauth_provider_key: z86.string().nullish(),
14898
+ oauth_scopes: z86.array(z86.string()).nullish(),
14899
+ integration_id: z86.string().nullish(),
14900
+ created_at: z86.string(),
14901
+ updated_at: z86.string()
14902
+ });
14903
+ var integrationsListResponseSchema2 = z86.object({
14904
+ integrations: z86.array(integrationSchema)
14849
14905
  });
14850
14906
  var connectionResponseSchema = integrationSchema;
14851
- var buildIntegrationConfigSchema2 = z85.object({
14852
- id: z85.string(),
14853
- integration_id: z85.string().nullable(),
14854
- custom_integration_id: z85.string().nullable(),
14855
- integration_type: z85.string(),
14856
- integration_name: z85.string(),
14857
- created_at: z85.string()
14907
+ var buildIntegrationConfigSchema2 = z86.object({
14908
+ id: z86.string(),
14909
+ integration_id: z86.string().nullable(),
14910
+ custom_integration_id: z86.string().nullable(),
14911
+ integration_type: z86.string(),
14912
+ integration_name: z86.string(),
14913
+ created_at: z86.string()
14858
14914
  });
14859
- var listBuildIntegrationsResponseSchema2 = z85.object({
14860
- integrations: z85.array(buildIntegrationConfigSchema2)
14915
+ var listBuildIntegrationsResponseSchema2 = z86.object({
14916
+ integrations: z86.array(buildIntegrationConfigSchema2)
14861
14917
  });
14862
- var attachBuildIntegrationsResponseSchema = z85.object({
14863
- success: z85.boolean(),
14864
- count: z85.number()
14918
+ var attachBuildIntegrationsResponseSchema = z86.object({
14919
+ success: z86.boolean(),
14920
+ count: z86.number()
14865
14921
  });
14866
- var buildIntegrationConnectionSchema = z85.object({
14867
- connection_id: z85.string(),
14868
- created_at: z85.string()
14922
+ var buildIntegrationConnectionSchema = z86.object({
14923
+ connection_id: z86.string(),
14924
+ created_at: z86.string()
14869
14925
  });
14870
- var listBuildIntegrationConnectionsResponseSchema = z85.object({
14871
- connections: z85.array(buildIntegrationConnectionSchema)
14926
+ var listBuildIntegrationConnectionsResponseSchema = z86.object({
14927
+ connections: z86.array(buildIntegrationConnectionSchema)
14872
14928
  });
14873
- var successResponseSchema = z85.object({
14874
- success: z85.boolean()
14929
+ var successResponseSchema = z86.object({
14930
+ success: z86.boolean()
14875
14931
  });
14876
14932
 
14877
14933
  // src/commands/build-integrations/attach.ts
@@ -14914,15 +14970,15 @@ function registerBuildIntegrationsAttach(buildIntegrations) {
14914
14970
  __name(registerBuildIntegrationsAttach, "registerBuildIntegrationsAttach");
14915
14971
 
14916
14972
  // src/commands/build-integrations/case-queue-setup.ts
14917
- import { z as z86 } from "zod";
14918
- var slotSchema = z86.object({
14919
- config_id: z86.string(),
14920
- integration_type: z86.string(),
14921
- linked_queue_count: z86.number()
14973
+ import { z as z87 } from "zod";
14974
+ var slotSchema = z87.object({
14975
+ config_id: z87.string(),
14976
+ integration_type: z87.string(),
14977
+ linked_queue_count: z87.number()
14922
14978
  });
14923
- var responseSchema2 = z86.object({
14924
- configs: z86.array(slotSchema),
14925
- has_available_queues: z86.boolean()
14979
+ var responseSchema2 = z87.object({
14980
+ configs: z87.array(slotSchema),
14981
+ has_available_queues: z87.boolean()
14926
14982
  });
14927
14983
  var TABLE_COLUMNS10 = [
14928
14984
  { header: "SLOT ID", cell: /* @__PURE__ */ __name((row) => row.config_id, "cell") },
@@ -15417,9 +15473,9 @@ function registerBuildsList(builds) {
15417
15473
  __name(registerBuildsList, "registerBuildsList");
15418
15474
 
15419
15475
  // src/commands/builds/promote.ts
15420
- import { z as z87 } from "zod";
15421
- var promoteResponseSchema = z87.object({
15422
- success: z87.boolean()
15476
+ import { z as z88 } from "zod";
15477
+ var promoteResponseSchema = z88.object({
15478
+ success: z88.boolean()
15423
15479
  });
15424
15480
  function registerBuildsPromote(builds) {
15425
15481
  builds.command("promote <id>").description(
@@ -16430,7 +16486,7 @@ function parseSortOrder(raw) {
16430
16486
  __name(parseSortOrder, "parseSortOrder");
16431
16487
 
16432
16488
  // src/commands/cases/runs.ts
16433
- import { z as z88 } from "zod";
16489
+ import { z as z89 } from "zod";
16434
16490
  var MIN_LIMIT4 = 1;
16435
16491
  var MAX_LIMIT4 = 10;
16436
16492
  var DEFAULT_LIMIT4 = 3;
@@ -16448,17 +16504,17 @@ var RUNS_TABLE_COLUMNS = [
16448
16504
  cell: /* @__PURE__ */ __name((row) => row.has_pending_human_request ? row.pending_human_request_title ?? "(unknown)" : "", "cell")
16449
16505
  }
16450
16506
  ];
16451
- var recentMessageSchema = z88.object({
16452
- id: z88.string(),
16453
- type: z88.string(),
16454
- role: z88.string(),
16455
- timestamp: z88.string(),
16456
- text_content: z88.string().nullish(),
16457
- tool_call: z88.object({ id: z88.string(), name: z88.string() }).passthrough().nullish(),
16458
- tool_result: z88.object({ tool_call_id: z88.string() }).passthrough().nullish()
16459
- });
16460
- var recentMessagesResponseSchema = z88.object({
16461
- messages: z88.array(recentMessageSchema)
16507
+ var recentMessageSchema = z89.object({
16508
+ id: z89.string(),
16509
+ type: z89.string(),
16510
+ role: z89.string(),
16511
+ timestamp: z89.string(),
16512
+ text_content: z89.string().nullish(),
16513
+ tool_call: z89.object({ id: z89.string(), name: z89.string() }).passthrough().nullish(),
16514
+ tool_result: z89.object({ tool_call_id: z89.string() }).passthrough().nullish()
16515
+ });
16516
+ var recentMessagesResponseSchema = z89.object({
16517
+ messages: z89.array(recentMessageSchema)
16462
16518
  });
16463
16519
  var TEXT_PREVIEW_WIDTH = 60;
16464
16520
  var MESSAGES_TABLE_COLUMNS = [
@@ -16587,55 +16643,55 @@ function registerCases(program) {
16587
16643
  __name(registerCases, "registerCases");
16588
16644
 
16589
16645
  // src/api/clarity-schemas.ts
16590
- import { z as z89 } from "zod";
16591
- var clarityListProcessSchema = z89.object({
16592
- id: z89.guid(),
16593
- name: z89.string(),
16646
+ import { z as z90 } from "zod";
16647
+ var clarityListProcessSchema = z90.object({
16648
+ id: z90.guid(),
16649
+ name: z90.string(),
16594
16650
  status: clarityProcessStatusSchema,
16595
16651
  visibility: clarityProcessVisibilitySchema,
16596
- version: z89.number().int(),
16597
- capture_count: z89.number().int(),
16598
- capture_counts: z89.object({
16599
- video: z89.number().int(),
16600
- interview: z89.number().int(),
16601
- document: z89.number().int()
16652
+ version: z90.number().int(),
16653
+ capture_count: z90.number().int(),
16654
+ capture_counts: z90.object({
16655
+ video: z90.number().int(),
16656
+ interview: z90.number().int(),
16657
+ document: z90.number().int()
16602
16658
  }).optional(),
16603
- pending_invitation_count: z89.number().int(),
16604
- contributors: z89.array(
16605
- z89.object({
16606
- user_id: z89.string(),
16607
- user_name: z89.string()
16659
+ pending_invitation_count: z90.number().int(),
16660
+ contributors: z90.array(
16661
+ z90.object({
16662
+ user_id: z90.string(),
16663
+ user_name: z90.string()
16608
16664
  })
16609
16665
  ),
16610
- created_at: z89.string(),
16611
- created_by_name: z89.string().nullable()
16612
- });
16613
- var listClarityProcessesResponseSchema = z89.object({
16614
- processes: z89.array(clarityListProcessSchema),
16615
- total: z89.number().int(),
16616
- limit: z89.number().int(),
16617
- offset: z89.number().int()
16618
- });
16619
- var createClarityInviteLinkResponseSchema = z89.object({
16620
- invite_link: z89.object({
16621
- id: z89.guid(),
16622
- url: z89.url(),
16623
- created_at: z89.string(),
16624
- created_by: z89.object({
16625
- id: z89.guid(),
16626
- email: z89.email().nullable()
16666
+ created_at: z90.string(),
16667
+ created_by_name: z90.string().nullable()
16668
+ });
16669
+ var listClarityProcessesResponseSchema = z90.object({
16670
+ processes: z90.array(clarityListProcessSchema),
16671
+ total: z90.number().int(),
16672
+ limit: z90.number().int(),
16673
+ offset: z90.number().int()
16674
+ });
16675
+ var createClarityInviteLinkResponseSchema = z90.object({
16676
+ invite_link: z90.object({
16677
+ id: z90.guid(),
16678
+ url: z90.url(),
16679
+ created_at: z90.string(),
16680
+ created_by: z90.object({
16681
+ id: z90.guid(),
16682
+ email: z90.email().nullable()
16627
16683
  })
16628
16684
  })
16629
16685
  });
16630
- var createArtifactImportUploadUrlResponseSchema = z89.object({
16631
- signed_url: z89.url(),
16632
- capture_id: z89.guid(),
16633
- expires_at: z89.iso.datetime()
16686
+ var createArtifactImportUploadUrlResponseSchema = z90.object({
16687
+ signed_url: z90.url(),
16688
+ capture_id: z90.guid(),
16689
+ expires_at: z90.iso.datetime()
16634
16690
  });
16635
- var completeArtifactImportResponseSchema = z89.object({
16691
+ var completeArtifactImportResponseSchema = z90.object({
16636
16692
  capture: clarityCaptureSchema.extend({
16637
- createdAt: z89.iso.datetime(),
16638
- updatedAt: z89.iso.datetime()
16693
+ createdAt: z90.iso.datetime(),
16694
+ updatedAt: z90.iso.datetime()
16639
16695
  })
16640
16696
  });
16641
16697
  var legacyClarityProcessResponseSchema = legacyClarityProcessDetailSchema;
@@ -17074,8 +17130,8 @@ function renderCompletedImport(response) {
17074
17130
  __name(renderCompletedImport, "renderCompletedImport");
17075
17131
 
17076
17132
  // src/commands/clarity/assign-extra-capture-request.ts
17077
- import { z as z90 } from "zod";
17078
- var responseSchema3 = z90.object({
17133
+ import { z as z91 } from "zod";
17134
+ var responseSchema3 = z91.object({
17079
17135
  request: clarityProposalExtraCaptureRequestSchema
17080
17136
  });
17081
17137
  function renderRequest(request) {
@@ -17122,11 +17178,11 @@ function registerClarityAssignExtraCaptureRequest(clarity) {
17122
17178
  __name(registerClarityAssignExtraCaptureRequest, "registerClarityAssignExtraCaptureRequest");
17123
17179
 
17124
17180
  // src/commands/clarity/build-automation.ts
17125
- import { z as z91 } from "zod";
17126
- var responseSchema4 = z91.object({
17127
- automation_run: z91.object({
17128
- id: z91.string(),
17129
- status: z91.string()
17181
+ import { z as z92 } from "zod";
17182
+ var responseSchema4 = z92.object({
17183
+ automation_run: z92.object({
17184
+ id: z92.string(),
17185
+ status: z92.string()
17130
17186
  })
17131
17187
  });
17132
17188
  function registerClarityBuildAutomation(clarity) {
@@ -17197,7 +17253,7 @@ function registerClarityCreateInviteLink(clarity) {
17197
17253
  __name(registerClarityCreateInviteLink, "registerClarityCreateInviteLink");
17198
17254
 
17199
17255
  // src/commands/clarity/doctor.ts
17200
- import { z as z92 } from "zod";
17256
+ import { z as z93 } from "zod";
17201
17257
 
17202
17258
  // src/commands/clarity/render.ts
17203
17259
  var DEFAULT_HUMAN_SUMMARY_LIMIT = 1200;
@@ -19019,8 +19075,8 @@ async function buildTeamContextCheck(config) {
19019
19075
  }
19020
19076
  }
19021
19077
  __name(buildTeamContextCheck, "buildTeamContextCheck");
19022
- var listMyTeamsResponseSchema2 = z92.object({
19023
- teams: z92.array(z92.object({ id: z92.string() }))
19078
+ var listMyTeamsResponseSchema2 = z93.object({
19079
+ teams: z93.array(z93.object({ id: z93.string() }))
19024
19080
  });
19025
19081
  async function buildClarityApiReachableCheck(command, config) {
19026
19082
  let teamId;
@@ -19638,19 +19694,19 @@ function buildGenerateTransformationProposalBody(options) {
19638
19694
  __name(buildGenerateTransformationProposalBody, "buildGenerateTransformationProposalBody");
19639
19695
 
19640
19696
  // src/commands/clarity/get-current-process.ts
19641
- import { z as z93 } from "zod";
19642
- var snapshotSchema = z93.object({
19643
- snapshot: z93.object({
19644
- id: z93.string(),
19645
- kind: z93.string(),
19646
- source_snapshot_id: z93.string().nullable(),
19647
- parent_id: z93.string().nullable(),
19648
- status: z93.string(),
19649
- creator_type: z93.string(),
19650
- user_id: z93.string().nullable(),
19651
- sandbox_id: z93.string().nullable(),
19652
- created_at: z93.string(),
19653
- updated_at: z93.string()
19697
+ import { z as z94 } from "zod";
19698
+ var snapshotSchema = z94.object({
19699
+ snapshot: z94.object({
19700
+ id: z94.string(),
19701
+ kind: z94.string(),
19702
+ source_snapshot_id: z94.string().nullable(),
19703
+ parent_id: z94.string().nullable(),
19704
+ status: z94.string(),
19705
+ creator_type: z94.string(),
19706
+ user_id: z94.string().nullable(),
19707
+ sandbox_id: z94.string().nullable(),
19708
+ created_at: z94.string(),
19709
+ updated_at: z94.string()
19654
19710
  })
19655
19711
  });
19656
19712
  function registerClarityGetCurrentProcess(clarity) {
@@ -19694,19 +19750,19 @@ function registerClarityGetCurrentProcess(clarity) {
19694
19750
  __name(registerClarityGetCurrentProcess, "registerClarityGetCurrentProcess");
19695
19751
 
19696
19752
  // src/commands/clarity/get-transformation-proposal.ts
19697
- import { z as z94 } from "zod";
19698
- var snapshotSchema2 = z94.object({
19699
- snapshot: z94.object({
19700
- id: z94.string(),
19701
- kind: z94.string(),
19702
- source_snapshot_id: z94.string().nullable(),
19703
- parent_id: z94.string().nullable(),
19704
- status: z94.string(),
19705
- creator_type: z94.string(),
19706
- user_id: z94.string().nullable(),
19707
- sandbox_id: z94.string().nullable(),
19708
- created_at: z94.string(),
19709
- updated_at: z94.string()
19753
+ import { z as z95 } from "zod";
19754
+ var snapshotSchema2 = z95.object({
19755
+ snapshot: z95.object({
19756
+ id: z95.string(),
19757
+ kind: z95.string(),
19758
+ source_snapshot_id: z95.string().nullable(),
19759
+ parent_id: z95.string().nullable(),
19760
+ status: z95.string(),
19761
+ creator_type: z95.string(),
19762
+ user_id: z95.string().nullable(),
19763
+ sandbox_id: z95.string().nullable(),
19764
+ created_at: z95.string(),
19765
+ updated_at: z95.string()
19710
19766
  })
19711
19767
  });
19712
19768
  function registerClarityGetTransformationProposal(clarity) {
@@ -19802,7 +19858,7 @@ Transformation proposal versions (${tpVersions.length}):`
19802
19858
  __name(registerClarityGet, "registerClarityGet");
19803
19859
 
19804
19860
  // src/commands/clarity/landscape.ts
19805
- import { z as z95 } from "zod";
19861
+ import { z as z96 } from "zod";
19806
19862
  var ORG_FLAG_DESCRIPTION = "organization id for the org-scoped process landscape (overrides DUVO_ORG_ID)";
19807
19863
  var LANDSCAPE_RESOURCE_PATH = "/clarity/hierarchy/landscape";
19808
19864
  var TREE_RESOURCE_PATH = "/clarity/hierarchy/tree";
@@ -19811,89 +19867,89 @@ var CAPTURES_RESOURCE_PATH = "/clarity/hierarchy/captures";
19811
19867
  var PROPOSED_PROCESSES_RESOURCE_PATH = "/clarity/hierarchy/proposed-processes";
19812
19868
  var PROCESS_NODE_TYPE = "process";
19813
19869
  var AREA_NODE_TYPE = "area";
19814
- var axisSchema = z95.enum(["content", "existence"]);
19815
- var processSummarySchema = z95.object({
19816
- id: z95.string(),
19817
- name: z95.string()
19870
+ var axisSchema = z96.enum(["content", "existence"]);
19871
+ var processSummarySchema = z96.object({
19872
+ id: z96.string(),
19873
+ name: z96.string()
19818
19874
  }).passthrough();
19819
- var landscapeNodeSchema = z95.object({
19820
- id: z95.string(),
19821
- parentId: z95.string().nullable(),
19822
- processId: z95.string().nullable(),
19823
- name: z95.string(),
19824
- ownerLabel: z95.string().nullable(),
19875
+ var landscapeNodeSchema = z96.object({
19876
+ id: z96.string(),
19877
+ parentId: z96.string().nullable(),
19878
+ processId: z96.string().nullable(),
19879
+ name: z96.string(),
19880
+ ownerLabel: z96.string().nullable(),
19825
19881
  process: processSummarySchema.nullable()
19826
19882
  }).passthrough();
19827
19883
  var unlinkedProcessSchema = processSummarySchema.extend({
19828
- teamId: z95.string(),
19829
- teamName: z95.string().nullable()
19884
+ teamId: z96.string(),
19885
+ teamName: z96.string().nullable()
19830
19886
  }).passthrough();
19831
- var treeNodeSchema = z95.object({
19832
- id: z95.string(),
19833
- parentId: z95.string().nullable(),
19834
- processId: z95.string().nullable(),
19835
- name: z95.string(),
19836
- ownerLabel: z95.string().nullable(),
19837
- depth: z95.number()
19887
+ var treeNodeSchema = z96.object({
19888
+ id: z96.string(),
19889
+ parentId: z96.string().nullable(),
19890
+ processId: z96.string().nullable(),
19891
+ name: z96.string(),
19892
+ ownerLabel: z96.string().nullable(),
19893
+ depth: z96.number()
19838
19894
  }).passthrough();
19839
- var landscapeResponseSchema = z95.object({
19840
- nodes: z95.array(landscapeNodeSchema),
19841
- links: z95.array(
19842
- z95.object({
19843
- id: z95.string(),
19844
- sourceNodeId: z95.string(),
19845
- targetNodeId: z95.string(),
19846
- type: z95.string(),
19847
- state: z95.string(),
19848
- confidence: z95.number().nullable()
19895
+ var landscapeResponseSchema = z96.object({
19896
+ nodes: z96.array(landscapeNodeSchema),
19897
+ links: z96.array(
19898
+ z96.object({
19899
+ id: z96.string(),
19900
+ sourceNodeId: z96.string(),
19901
+ targetNodeId: z96.string(),
19902
+ type: z96.string(),
19903
+ state: z96.string(),
19904
+ confidence: z96.number().nullable()
19849
19905
  }).passthrough()
19850
19906
  ),
19851
- unlinkedProcesses: z95.array(unlinkedProcessSchema),
19852
- stats: z95.object({
19853
- totalNodes: z95.number(),
19854
- processNodes: z95.number(),
19855
- proposedNodes: z95.number(),
19856
- unsortedProcesses: z95.number(),
19857
- latestUpdatedAt: z95.string().nullable()
19907
+ unlinkedProcesses: z96.array(unlinkedProcessSchema),
19908
+ stats: z96.object({
19909
+ totalNodes: z96.number(),
19910
+ processNodes: z96.number(),
19911
+ proposedNodes: z96.number(),
19912
+ unsortedProcesses: z96.number(),
19913
+ latestUpdatedAt: z96.string().nullable()
19858
19914
  }).passthrough(),
19859
- truncated: z95.boolean()
19915
+ truncated: z96.boolean()
19860
19916
  }).passthrough();
19861
- var treeResponseSchema = z95.object({
19862
- nodes: z95.array(treeNodeSchema),
19863
- truncated: z95.boolean()
19917
+ var treeResponseSchema = z96.object({
19918
+ nodes: z96.array(treeNodeSchema),
19919
+ truncated: z96.boolean()
19864
19920
  }).passthrough();
19865
- var nodeResponseSchema = z95.object({
19866
- id: z95.string(),
19867
- parentId: z95.string().nullable(),
19868
- processId: z95.string().nullable(),
19869
- name: z95.string(),
19870
- ownerLabel: z95.string().nullable()
19921
+ var nodeResponseSchema = z96.object({
19922
+ id: z96.string(),
19923
+ parentId: z96.string().nullable(),
19924
+ processId: z96.string().nullable(),
19925
+ name: z96.string(),
19926
+ ownerLabel: z96.string().nullable()
19871
19927
  }).passthrough();
19872
- var deleteNodeResponseSchema = z95.object({
19873
- deletedCount: z95.number()
19928
+ var deleteNodeResponseSchema = z96.object({
19929
+ deletedCount: z96.number()
19874
19930
  });
19875
- var generateLandscapeResponseSchema = z95.object({
19876
- started: z95.literal(true),
19877
- generationId: z95.string(),
19878
- eligibleCaptureCount: z95.number()
19931
+ var generateLandscapeResponseSchema = z96.object({
19932
+ started: z96.literal(true),
19933
+ generationId: z96.string(),
19934
+ eligibleCaptureCount: z96.number()
19879
19935
  }).passthrough();
19880
- var captureSchema = z95.object({
19881
- id: z95.string(),
19882
- scope: z95.string(),
19883
- type: z95.string(),
19884
- title: z95.string(),
19885
- organizationId: z95.string().nullable(),
19886
- organizationName: z95.string().nullable(),
19887
- teamId: z95.string().nullable(),
19888
- teamName: z95.string().nullable(),
19889
- processNodeId: z95.string().nullable(),
19890
- createdAt: z95.string(),
19891
- transcriptMessageCount: z95.number()
19936
+ var captureSchema = z96.object({
19937
+ id: z96.string(),
19938
+ scope: z96.string(),
19939
+ type: z96.string(),
19940
+ title: z96.string(),
19941
+ organizationId: z96.string().nullable(),
19942
+ organizationName: z96.string().nullable(),
19943
+ teamId: z96.string().nullable(),
19944
+ teamName: z96.string().nullable(),
19945
+ processNodeId: z96.string().nullable(),
19946
+ createdAt: z96.string(),
19947
+ transcriptMessageCount: z96.number()
19892
19948
  }).passthrough();
19893
- var captureListResponseSchema = z95.object({
19894
- captures: z95.array(captureSchema),
19895
- total: z95.number(),
19896
- truncated: z95.boolean()
19949
+ var captureListResponseSchema = z96.object({
19950
+ captures: z96.array(captureSchema),
19951
+ total: z96.number(),
19952
+ truncated: z96.boolean()
19897
19953
  }).passthrough();
19898
19954
  var LANDSCAPE_COLUMNS = [
19899
19955
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell"), maxWidth: 36 },
@@ -20521,40 +20577,40 @@ function registerClarityPostprocess(clarity) {
20521
20577
  __name(registerClarityPostprocess, "registerClarityPostprocess");
20522
20578
 
20523
20579
  // src/commands/clarity/process-links.ts
20524
- import { z as z96 } from "zod";
20580
+ import { z as z97 } from "zod";
20525
20581
  var MIN_LIMIT7 = 1;
20526
20582
  var MAX_LIMIT7 = 500;
20527
20583
  var DEFAULT_LIMIT7 = 100;
20528
20584
  var ORG_FLAG_DESCRIPTION2 = "organization id for the org-scoped process landscape (overrides DUVO_ORG_ID)";
20529
20585
  var PROCESS_LINKS_RESOURCE_PATH = "/clarity/hierarchy/process-links";
20530
- var processLinkTypeSchema = z96.enum([
20586
+ var processLinkTypeSchema = z97.enum([
20531
20587
  "hands_off_to",
20532
20588
  "shares_step_with",
20533
20589
  "variant_of"
20534
20590
  ]);
20535
- var processLinkStateSchema = z96.enum(["suggested", "confirmed"]);
20536
- var processLinkSchema = z96.object({
20537
- id: z96.string(),
20538
- source_node_id: z96.string(),
20539
- target_node_id: z96.string(),
20591
+ var processLinkStateSchema = z97.enum(["suggested", "confirmed"]);
20592
+ var processLinkSchema = z97.object({
20593
+ id: z97.string(),
20594
+ source_node_id: z97.string(),
20595
+ target_node_id: z97.string(),
20540
20596
  type: processLinkTypeSchema,
20541
20597
  state: processLinkStateSchema,
20542
- confidence: z96.number().nullable(),
20543
- created_at: z96.string(),
20544
- updated_at: z96.string()
20598
+ confidence: z97.number().nullable(),
20599
+ created_at: z97.string(),
20600
+ updated_at: z97.string()
20545
20601
  });
20546
- var listProcessLinksResponseSchema = z96.object({
20547
- process_links: z96.array(processLinkSchema),
20548
- total: z96.number(),
20549
- limit: z96.number(),
20550
- offset: z96.number()
20602
+ var listProcessLinksResponseSchema = z97.object({
20603
+ process_links: z97.array(processLinkSchema),
20604
+ total: z97.number(),
20605
+ limit: z97.number(),
20606
+ offset: z97.number()
20551
20607
  });
20552
- var processLinkMutationResponseSchema = z96.object({
20608
+ var processLinkMutationResponseSchema = z97.object({
20553
20609
  process_link: processLinkSchema,
20554
- created: z96.boolean().optional()
20610
+ created: z97.boolean().optional()
20555
20611
  });
20556
- var deleteProcessLinkResponseSchema = z96.object({
20557
- deleted: z96.boolean()
20612
+ var deleteProcessLinkResponseSchema = z97.object({
20613
+ deleted: z97.boolean()
20558
20614
  });
20559
20615
  var PROCESS_LINK_COLUMNS = [
20560
20616
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell"), maxWidth: 36 },
@@ -20766,14 +20822,14 @@ function renderProcessLinks(response) {
20766
20822
  __name(renderProcessLinks, "renderProcessLinks");
20767
20823
 
20768
20824
  // src/commands/clarity/promote-current-process.ts
20769
- import { z as z97 } from "zod";
20770
- var snapshotSchema3 = z97.object({
20771
- snapshot: z97.object({
20772
- id: z97.string(),
20773
- status: z97.string(),
20774
- creator_type: z97.string(),
20775
- created_at: z97.string(),
20776
- updated_at: z97.string()
20825
+ import { z as z98 } from "zod";
20826
+ var snapshotSchema3 = z98.object({
20827
+ snapshot: z98.object({
20828
+ id: z98.string(),
20829
+ status: z98.string(),
20830
+ creator_type: z98.string(),
20831
+ created_at: z98.string(),
20832
+ updated_at: z98.string()
20777
20833
  })
20778
20834
  });
20779
20835
  function registerClarityPromoteCurrentProcess(clarity) {
@@ -20810,14 +20866,14 @@ function registerClarityPromoteCurrentProcess(clarity) {
20810
20866
  __name(registerClarityPromoteCurrentProcess, "registerClarityPromoteCurrentProcess");
20811
20867
 
20812
20868
  // src/commands/clarity/promote-transformation-proposal.ts
20813
- import { z as z98 } from "zod";
20814
- var snapshotSchema4 = z98.object({
20815
- snapshot: z98.object({
20816
- id: z98.string(),
20817
- status: z98.string(),
20818
- creator_type: z98.string(),
20819
- created_at: z98.string(),
20820
- updated_at: z98.string()
20869
+ import { z as z99 } from "zod";
20870
+ var snapshotSchema4 = z99.object({
20871
+ snapshot: z99.object({
20872
+ id: z99.string(),
20873
+ status: z99.string(),
20874
+ creator_type: z99.string(),
20875
+ created_at: z99.string(),
20876
+ updated_at: z99.string()
20821
20877
  })
20822
20878
  });
20823
20879
  function registerClarityPromoteTransformationProposal(clarity) {
@@ -20893,8 +20949,8 @@ __name(registerClarityRevertTransformationProposal, "registerClarityRevertTransf
20893
20949
 
20894
20950
  // src/commands/clarity/save-snapshot.ts
20895
20951
  import { readFile as readFile7 } from "node:fs/promises";
20896
- import { z as z99 } from "zod";
20897
- var snapshotFileSchema = z99.union([
20952
+ import { z as z100 } from "zod";
20953
+ var snapshotFileSchema = z100.union([
20898
20954
  saveClarityProcessSnapshotBodySchema.shape.steps,
20899
20955
  saveClarityProcessSnapshotBodySchema.pick({
20900
20956
  steps: true,
@@ -21893,16 +21949,16 @@ function registerConnectionsList(connections) {
21893
21949
  __name(registerConnectionsList, "registerConnectionsList");
21894
21950
 
21895
21951
  // src/commands/connections/probe.ts
21896
- import { z as z100 } from "zod";
21897
- var toolSchema = z100.object({
21898
- name: z100.string(),
21899
- description: z100.string().optional(),
21900
- input_schema: z100.record(z100.string(), z100.unknown()).optional()
21952
+ import { z as z101 } from "zod";
21953
+ var toolSchema = z101.object({
21954
+ name: z101.string(),
21955
+ description: z101.string().optional(),
21956
+ input_schema: z101.record(z101.string(), z101.unknown()).optional()
21901
21957
  });
21902
- var probeResponseSchema = z100.object({
21903
- success: z100.boolean(),
21904
- tools: z100.array(toolSchema).optional(),
21905
- error: z100.string().optional()
21958
+ var probeResponseSchema = z101.object({
21959
+ success: z101.boolean(),
21960
+ tools: z101.array(toolSchema).optional(),
21961
+ error: z101.string().optional()
21906
21962
  });
21907
21963
  var DESCRIPTION_MAX_WIDTH = 80;
21908
21964
  var TABLE_COLUMNS22 = [
@@ -22121,48 +22177,48 @@ function registerConnections(program) {
22121
22177
  __name(registerConnections, "registerConnections");
22122
22178
 
22123
22179
  // src/api/credential-schemas.ts
22124
- import { z as z101 } from "zod";
22125
- var dateLike = z101.string();
22126
- var secretSchema = z101.object({
22127
- id: z101.string(),
22128
- team_id: z101.string(),
22129
- user_id: z101.string().nullable(),
22130
- name: z101.string(),
22131
- service_slug: z101.string().nullable(),
22132
- env_var_keys: z101.array(z101.string()),
22133
- created_by: z101.string(),
22180
+ import { z as z102 } from "zod";
22181
+ var dateLike = z102.string();
22182
+ var secretSchema = z102.object({
22183
+ id: z102.string(),
22184
+ team_id: z102.string(),
22185
+ user_id: z102.string().nullable(),
22186
+ name: z102.string(),
22187
+ service_slug: z102.string().nullable(),
22188
+ env_var_keys: z102.array(z102.string()),
22189
+ created_by: z102.string(),
22134
22190
  created_at: dateLike,
22135
22191
  updated_at: dateLike
22136
22192
  });
22137
- var secretsListResponseSchema = z101.array(secretSchema);
22193
+ var secretsListResponseSchema = z102.array(secretSchema);
22138
22194
  var secretResponseSchema = secretSchema;
22139
- var browserLoginSchema = z101.object({
22140
- id: z101.string(),
22141
- user_id: z101.string().nullable(),
22142
- team_id: z101.string(),
22143
- domain: z101.string(),
22144
- username: z101.string().nullable(),
22195
+ var browserLoginSchema = z102.object({
22196
+ id: z102.string(),
22197
+ user_id: z102.string().nullable(),
22198
+ team_id: z102.string(),
22199
+ domain: z102.string(),
22200
+ username: z102.string().nullable(),
22145
22201
  password: encryptedDataSchema.nullable(),
22146
22202
  otp_secret: encryptedDataSchema.nullable(),
22147
22203
  created_at: dateLike,
22148
22204
  updated_at: dateLike
22149
22205
  });
22150
- var browserLoginsListResponseSchema = z101.array(credentialPreviewSchema);
22151
- var revisionLoginSummarySchema = z101.object({
22152
- id: z101.string(),
22153
- user_id: z101.string().nullable(),
22154
- team_id: z101.string().nullable(),
22155
- domain: z101.string(),
22156
- username: z101.string().nullable(),
22206
+ var browserLoginsListResponseSchema = z102.array(credentialPreviewSchema);
22207
+ var revisionLoginSummarySchema = z102.object({
22208
+ id: z102.string(),
22209
+ user_id: z102.string().nullable(),
22210
+ team_id: z102.string().nullable(),
22211
+ domain: z102.string(),
22212
+ username: z102.string().nullable(),
22157
22213
  created_at: dateLike,
22158
22214
  updated_at: dateLike
22159
22215
  });
22160
- var revisionLoginsListResponseSchema = z101.array(
22216
+ var revisionLoginsListResponseSchema = z102.array(
22161
22217
  revisionLoginSummarySchema
22162
22218
  );
22163
- var revisionSecretsListResponseSchema = z101.array(secretSchema);
22164
- var successResponseSchema2 = z101.object({
22165
- success: z101.boolean()
22219
+ var revisionSecretsListResponseSchema = z102.array(secretSchema);
22220
+ var successResponseSchema2 = z102.object({
22221
+ success: z102.boolean()
22166
22222
  });
22167
22223
  var attachSuccessResponseSchema = successResponseSchema2;
22168
22224
  var deleteSecretResponseSchema = successResponseSchema2;
@@ -24421,6 +24477,171 @@ function registerProfiles(program) {
24421
24477
  }
24422
24478
  __name(registerProfiles, "registerProfiles");
24423
24479
 
24480
+ // src/commands/pulse/answer.ts
24481
+ function collectAnswer2(value, previous) {
24482
+ return [...previous, value];
24483
+ }
24484
+ __name(collectAnswer2, "collectAnswer");
24485
+ function buildAnswers(raw) {
24486
+ const answers = {};
24487
+ for (const entry of raw) {
24488
+ const separator = entry.indexOf("=");
24489
+ if (separator <= 0) {
24490
+ throw new CliError(
24491
+ `Invalid --answer "${entry}". Use key=value (e.g. --answer timeframe="last 14 days").`
24492
+ );
24493
+ }
24494
+ const key = entry.slice(0, separator).trim();
24495
+ const value = entry.slice(separator + 1);
24496
+ if (key.length === 0) {
24497
+ throw new CliError(
24498
+ `Invalid --answer "${entry}". The key must not be empty.`
24499
+ );
24500
+ }
24501
+ if (key in answers) {
24502
+ throw new CliError(
24503
+ `Duplicate --answer key "${key}". Pass each key once.`
24504
+ );
24505
+ }
24506
+ answers[key] = value;
24507
+ }
24508
+ return answers;
24509
+ }
24510
+ __name(buildAnswers, "buildAnswers");
24511
+ function registerPulseAnswer(pulse) {
24512
+ pulse.command("answer <id>").description(
24513
+ "Answer a pending question from the Pulse agent and resume the run (requires edit access). Find the tool call id and question keys in the pending question's payload via `duvo pulse messages --json`."
24514
+ ).requiredOption(
24515
+ "--tool-call-id <id>",
24516
+ "the tool call id of the pending question"
24517
+ ).option(
24518
+ "--answer <key=value>",
24519
+ "an answer as key=value; repeat for multiple answers",
24520
+ collectAnswer2,
24521
+ []
24522
+ ).option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function answerAction(id, options) {
24523
+ const pulseId = trimRequired(id, "<id>");
24524
+ const toolCallId = trimRequired(
24525
+ options.toolCallId ?? "",
24526
+ "--tool-call-id"
24527
+ );
24528
+ const answers = buildAnswers(options.answer);
24529
+ if (Object.keys(answers).length === 0) {
24530
+ throw new CliError("At least one --answer key=value is required.");
24531
+ }
24532
+ const { apiKey, apiBaseUrl } = await requireAuthenticatedConfig(this);
24533
+ const raw = await httpRequest({
24534
+ method: "POST",
24535
+ path: `/v2/artifacts/${encodeURIComponent(pulseId)}/answer`,
24536
+ apiKey,
24537
+ apiBaseUrl,
24538
+ body: { toolCallId, answers }
24539
+ });
24540
+ if (options.json) {
24541
+ printJson(raw);
24542
+ return;
24543
+ }
24544
+ const parsed = answerArtifactQuestionResponseSchema.safeParse(raw);
24545
+ if (!parsed.success) {
24546
+ throw new CliError(
24547
+ `Unexpected response from the API: ${parsed.error.message}`
24548
+ );
24549
+ }
24550
+ console.log(green("Answer sent. The agent is resuming the dashboard\u2026"));
24551
+ console.log();
24552
+ console.log(`Track progress with: duvo pulse get ${pulseId}`);
24553
+ }, "answerAction"));
24554
+ }
24555
+ __name(registerPulseAnswer, "registerPulseAnswer");
24556
+
24557
+ // src/commands/pulse/connections.ts
24558
+ var TABLE_COLUMNS28 = [
24559
+ {
24560
+ header: "CONNECTION ID",
24561
+ cell: /* @__PURE__ */ __name((row) => row.connection_id, "cell")
24562
+ },
24563
+ { header: "TYPE", cell: /* @__PURE__ */ __name((row) => row.type, "cell") },
24564
+ { header: "CREATED", cell: /* @__PURE__ */ __name((row) => row.created_at, "cell") }
24565
+ ];
24566
+ function registerList3(connections) {
24567
+ connections.command("list <id>").description("List the connections attached to a Pulse dashboard").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function listAction(id, options) {
24568
+ const pulseId = trimRequired(id, "<id>");
24569
+ const { apiKey, apiBaseUrl } = await requireAuthenticatedConfig(this);
24570
+ const raw = await httpRequest({
24571
+ method: "GET",
24572
+ path: `/v2/artifacts/${encodeURIComponent(pulseId)}/connections`,
24573
+ apiKey,
24574
+ apiBaseUrl
24575
+ });
24576
+ if (options.json) {
24577
+ printJson(raw);
24578
+ return;
24579
+ }
24580
+ const parsed = listArtifactConnectionsResponseSchema.safeParse(raw);
24581
+ if (!parsed.success) {
24582
+ throw new CliError(
24583
+ `Unexpected response from the API: ${parsed.error.message}`
24584
+ );
24585
+ }
24586
+ if (parsed.data.connections.length === 0) {
24587
+ console.log("No connections attached.");
24588
+ return;
24589
+ }
24590
+ console.log(renderTable(TABLE_COLUMNS28, parsed.data.connections));
24591
+ }, "listAction"));
24592
+ }
24593
+ __name(registerList3, "registerList");
24594
+ function registerAttach(connections) {
24595
+ connections.command("attach <id> <connection-id>").description(
24596
+ "Attach one of your connections to a Pulse dashboard so the agent can use its data (creator only)"
24597
+ ).option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function attachAction(id, connectionId, options) {
24598
+ const pulseId = trimRequired(id, "<id>");
24599
+ const connection = trimRequired(connectionId, "<connection-id>");
24600
+ const { apiKey, apiBaseUrl } = await requireAuthenticatedConfig(this);
24601
+ const raw = await httpRequest({
24602
+ method: "POST",
24603
+ path: `/v2/artifacts/${encodeURIComponent(pulseId)}/connections`,
24604
+ apiKey,
24605
+ apiBaseUrl,
24606
+ body: { connection_id: connection }
24607
+ });
24608
+ if (options.json) {
24609
+ printJson(raw);
24610
+ return;
24611
+ }
24612
+ console.log(green(`Connection "${connection}" attached.`));
24613
+ }, "attachAction"));
24614
+ }
24615
+ __name(registerAttach, "registerAttach");
24616
+ function registerDetach(connections) {
24617
+ connections.command("detach <id> <connection-id>").description("Detach a connection from a Pulse dashboard (creator only)").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function detachAction(id, connectionId, options) {
24618
+ const pulseId = trimRequired(id, "<id>");
24619
+ const connection = trimRequired(connectionId, "<connection-id>");
24620
+ const { apiKey, apiBaseUrl } = await requireAuthenticatedConfig(this);
24621
+ const raw = await httpRequest({
24622
+ method: "DELETE",
24623
+ path: `/v2/artifacts/${encodeURIComponent(pulseId)}/connections/${encodeURIComponent(connection)}`,
24624
+ apiKey,
24625
+ apiBaseUrl
24626
+ });
24627
+ if (options.json) {
24628
+ printJson(raw);
24629
+ return;
24630
+ }
24631
+ console.log(green(`Connection "${connection}" detached.`));
24632
+ }, "detachAction"));
24633
+ }
24634
+ __name(registerDetach, "registerDetach");
24635
+ function registerPulseConnections(pulse) {
24636
+ const connections = pulse.command("connections").description(
24637
+ "Manage the connections (data sources) attached to a Pulse dashboard"
24638
+ );
24639
+ registerList3(connections);
24640
+ registerAttach(connections);
24641
+ registerDetach(connections);
24642
+ }
24643
+ __name(registerPulseConnections, "registerPulseConnections");
24644
+
24424
24645
  // src/commands/pulse/create.ts
24425
24646
  function registerPulseCreate(pulse) {
24426
24647
  pulse.command("create").description(
@@ -24491,6 +24712,44 @@ function registerPulseDelete(pulse) {
24491
24712
  }
24492
24713
  __name(registerPulseDelete, "registerPulseDelete");
24493
24714
 
24715
+ // src/commands/pulse/duplicate.ts
24716
+ function registerPulseDuplicate(pulse) {
24717
+ pulse.command("duplicate <id>").description(
24718
+ "Duplicate a Pulse dashboard into a new idle clone. The conversation, shares, and connections are not copied."
24719
+ ).option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function duplicateAction(id, options) {
24720
+ const pulseId = trimRequired(id, "<id>");
24721
+ const { apiKey, apiBaseUrl } = await requireAuthenticatedConfig(this);
24722
+ const raw = await httpRequest({
24723
+ method: "POST",
24724
+ path: `/v2/artifacts/${encodeURIComponent(pulseId)}/duplicate`,
24725
+ apiKey,
24726
+ apiBaseUrl,
24727
+ body: {}
24728
+ });
24729
+ if (options.json) {
24730
+ printJson(raw);
24731
+ return;
24732
+ }
24733
+ const parsed = duplicateArtifactResponseSchema.safeParse(raw);
24734
+ if (!parsed.success) {
24735
+ throw new CliError(
24736
+ `Unexpected response from the API: ${parsed.error.message}`
24737
+ );
24738
+ }
24739
+ console.log(green("Pulse dashboard duplicated."));
24740
+ console.log();
24741
+ console.log(
24742
+ renderKeyValue([
24743
+ { label: "ID", value: parsed.data.id },
24744
+ { label: "Title", value: parsed.data.title ?? "" }
24745
+ ])
24746
+ );
24747
+ console.log();
24748
+ console.log(`Open the clone with: duvo pulse get ${parsed.data.id}`);
24749
+ }, "duplicateAction"));
24750
+ }
24751
+ __name(registerPulseDuplicate, "registerPulseDuplicate");
24752
+
24494
24753
  // src/commands/pulse/get.ts
24495
24754
  function registerPulseGet(pulse) {
24496
24755
  pulse.command("get <id>").description("Get a Pulse dashboard's metadata and generation status").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function getAction(id, options) {
@@ -24567,7 +24826,7 @@ __name(registerPulseHtml, "registerPulseHtml");
24567
24826
  var DEFAULT_LIMIT9 = 20;
24568
24827
  var MIN_LIMIT9 = 1;
24569
24828
  var MAX_LIMIT9 = 100;
24570
- var TABLE_COLUMNS28 = [
24829
+ var TABLE_COLUMNS29 = [
24571
24830
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell") },
24572
24831
  {
24573
24832
  header: "TITLE",
@@ -24629,7 +24888,7 @@ function registerPulseList(pulse) {
24629
24888
  console.log("No Pulse dashboards found.");
24630
24889
  return;
24631
24890
  }
24632
- console.log(renderTable(TABLE_COLUMNS28, response.artifacts));
24891
+ console.log(renderTable(TABLE_COLUMNS29, response.artifacts));
24633
24892
  console.log(
24634
24893
  `Showing ${response.artifacts.length} of ${response.total} \xB7 offset ${response.offset}`
24635
24894
  );
@@ -24637,6 +24896,63 @@ function registerPulseList(pulse) {
24637
24896
  }
24638
24897
  __name(registerPulseList, "registerPulseList");
24639
24898
 
24899
+ // src/commands/pulse/messages.ts
24900
+ var DEFAULT_LIMIT10 = 100;
24901
+ var MIN_LIMIT10 = 1;
24902
+ var MAX_LIMIT10 = 500;
24903
+ var TABLE_COLUMNS30 = [
24904
+ { header: "ROLE", cell: /* @__PURE__ */ __name((row) => row.role, "cell") },
24905
+ {
24906
+ header: "CONTENT",
24907
+ cell: /* @__PURE__ */ __name((row) => row.content.replace(/\s+/g, " "), "cell"),
24908
+ maxWidth: 60
24909
+ },
24910
+ { header: "CREATED", cell: /* @__PURE__ */ __name((row) => row.created_at, "cell") }
24911
+ ];
24912
+ function registerPulseMessages(pulse) {
24913
+ pulse.command("messages <id>").description("List a Pulse dashboard's chat transcript (creator only)").option("--limit <n>", `page size (${MIN_LIMIT10}-${MAX_LIMIT10})`).option("--offset <n>", "number of messages to skip").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function messagesAction(id, options) {
24914
+ const pulseId = trimRequired(id, "<id>");
24915
+ const limit = parseLimit(options.limit, {
24916
+ defaultValue: DEFAULT_LIMIT10,
24917
+ min: MIN_LIMIT10,
24918
+ max: MAX_LIMIT10
24919
+ });
24920
+ const offset = parseOffset(options.offset);
24921
+ const { apiKey, apiBaseUrl } = await requireAuthenticatedConfig(this);
24922
+ const searchParams = new URLSearchParams();
24923
+ searchParams.append("limit", String(limit));
24924
+ searchParams.append("offset", String(offset));
24925
+ const raw = await httpRequest({
24926
+ method: "GET",
24927
+ path: `/v2/artifacts/${encodeURIComponent(pulseId)}/messages`,
24928
+ apiKey,
24929
+ apiBaseUrl,
24930
+ searchParams
24931
+ });
24932
+ if (options.json) {
24933
+ printJson(raw);
24934
+ return;
24935
+ }
24936
+ const parsed = artifactMessageListResponseSchema.safeParse(raw);
24937
+ if (!parsed.success) {
24938
+ throw new CliError(
24939
+ `Unexpected response from the API: ${parsed.error.message}`
24940
+ );
24941
+ }
24942
+ const { data, total } = parsed.data;
24943
+ if (data.length === 0) {
24944
+ console.log("No messages yet.");
24945
+ return;
24946
+ }
24947
+ console.log(renderTable(TABLE_COLUMNS30, data));
24948
+ console.log(`Showing ${data.length} of ${total} \xB7 offset ${offset}`);
24949
+ console.log(
24950
+ "Run with --json to see full message payloads, including the tool call id `duvo pulse answer` needs."
24951
+ );
24952
+ }, "messagesAction"));
24953
+ }
24954
+ __name(registerPulseMessages, "registerPulseMessages");
24955
+
24640
24956
  // src/commands/pulse/pdf.ts
24641
24957
  import { writeFile as writeFile2 } from "node:fs/promises";
24642
24958
 
@@ -24682,6 +24998,47 @@ function registerPulsePdf(pulse) {
24682
24998
  }
24683
24999
  __name(registerPulsePdf, "registerPulsePdf");
24684
25000
 
25001
+ // src/commands/pulse/rename.ts
25002
+ var MAX_TITLE_LENGTH = 120;
25003
+ function registerPulseRename(pulse) {
25004
+ pulse.command("rename <id>").description("Rename a Pulse dashboard (creator only)").requiredOption("--title <title>", "the new title (1-120 chars)").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function renameAction(id, options) {
25005
+ const pulseId = trimRequired(id, "<id>");
25006
+ const title = trimRequired(options.title ?? "", "--title");
25007
+ if (title.length > MAX_TITLE_LENGTH) {
25008
+ throw new CliError(
25009
+ `--title must be ${MAX_TITLE_LENGTH} characters or fewer.`
25010
+ );
25011
+ }
25012
+ const { apiKey, apiBaseUrl } = await requireAuthenticatedConfig(this);
25013
+ const raw = await httpRequest({
25014
+ method: "PATCH",
25015
+ path: `/v2/artifacts/${encodeURIComponent(pulseId)}`,
25016
+ apiKey,
25017
+ apiBaseUrl,
25018
+ body: { title }
25019
+ });
25020
+ if (options.json) {
25021
+ printJson(raw);
25022
+ return;
25023
+ }
25024
+ const parsed = artifactSchema.safeParse(raw);
25025
+ if (!parsed.success) {
25026
+ throw new CliError(
25027
+ `Unexpected response from the API: ${parsed.error.message}`
25028
+ );
25029
+ }
25030
+ console.log(green("Pulse dashboard renamed."));
25031
+ console.log();
25032
+ console.log(
25033
+ renderKeyValue([
25034
+ { label: "ID", value: parsed.data.id },
25035
+ { label: "Title", value: parsed.data.title ?? "" }
25036
+ ])
25037
+ );
25038
+ }, "renameAction"));
25039
+ }
25040
+ __name(registerPulseRename, "registerPulseRename");
25041
+
24685
25042
  // src/commands/pulse/restore.ts
24686
25043
  function registerPulseRestore(pulse) {
24687
25044
  pulse.command("restore <id> <version-id>").description(
@@ -24753,6 +25110,80 @@ function registerPulseSendMessage(pulse) {
24753
25110
  }
24754
25111
  __name(registerPulseSendMessage, "registerPulseSendMessage");
24755
25112
 
25113
+ // src/commands/pulse/share.ts
25114
+ function parseVisibility(value) {
25115
+ if (value === "private" || value === "team") {
25116
+ return value;
25117
+ }
25118
+ throw new CliError("--visibility must be one of: private, team.");
25119
+ }
25120
+ __name(parseVisibility, "parseVisibility");
25121
+ function parsePermission(value) {
25122
+ if (value === void 0) {
25123
+ return void 0;
25124
+ }
25125
+ if (value === "view" || value === "edit") {
25126
+ return value;
25127
+ }
25128
+ throw new CliError("--permission must be one of: view, edit.");
25129
+ }
25130
+ __name(parsePermission, "parsePermission");
25131
+ function registerPulseShare(pulse) {
25132
+ pulse.command("share <id>").description(
25133
+ "Share a Pulse dashboard with your team, or revert it to private (creator only)."
25134
+ ).requiredOption(
25135
+ "--visibility <visibility>",
25136
+ "private (creator only) or team (visible to your whole team)"
25137
+ ).option(
25138
+ "--permission <permission>",
25139
+ "when sharing to the team: view (rendered dashboard only) or edit (teammates can also iterate). Default view."
25140
+ ).option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function shareAction(id, options) {
25141
+ const pulseId = trimRequired(id, "<id>");
25142
+ const visibility = parseVisibility(options.visibility);
25143
+ const permission = parsePermission(options.permission);
25144
+ if (visibility === "private" && permission) {
25145
+ throw new CliError(
25146
+ "--permission only applies when sharing to the team (--visibility team)."
25147
+ );
25148
+ }
25149
+ const { apiKey, apiBaseUrl } = await requireAuthenticatedConfig(this);
25150
+ const body = {
25151
+ visibility
25152
+ };
25153
+ if (permission) {
25154
+ body.permission = permission;
25155
+ }
25156
+ const raw = await httpRequest({
25157
+ method: "POST",
25158
+ path: `/v2/artifacts/${encodeURIComponent(pulseId)}/publish`,
25159
+ apiKey,
25160
+ apiBaseUrl,
25161
+ body
25162
+ });
25163
+ if (options.json) {
25164
+ printJson(raw);
25165
+ return;
25166
+ }
25167
+ const parsed = artifactSchema.safeParse(raw);
25168
+ if (!parsed.success) {
25169
+ throw new CliError(
25170
+ `Unexpected response from the API: ${parsed.error.message}`
25171
+ );
25172
+ }
25173
+ const message = parsed.data.visibility === "team" ? `Pulse dashboard shared with your team (${parsed.data.publish_permission} access).` : "Pulse dashboard reverted to private.";
25174
+ console.log(green(message));
25175
+ console.log();
25176
+ console.log(
25177
+ renderKeyValue([
25178
+ { label: "ID", value: parsed.data.id },
25179
+ { label: "Visibility", value: parsed.data.visibility },
25180
+ { label: "Permission", value: parsed.data.publish_permission }
25181
+ ])
25182
+ );
25183
+ }, "shareAction"));
25184
+ }
25185
+ __name(registerPulseShare, "registerPulseShare");
25186
+
24756
25187
  // src/commands/pulse/snapshot.ts
24757
25188
  import { writeFile as writeFile3 } from "node:fs/promises";
24758
25189
  var SNAPSHOT_REQUEST_TIMEOUT_MS = 9e4;
@@ -24839,14 +25270,20 @@ function registerPulse(program) {
24839
25270
  registerPulsePdf(pulse);
24840
25271
  registerPulseSnapshot(pulse);
24841
25272
  registerPulseSendMessage(pulse);
25273
+ registerPulseRename(pulse);
25274
+ registerPulseShare(pulse);
25275
+ registerPulseDuplicate(pulse);
24842
25276
  registerPulseDelete(pulse);
24843
25277
  registerPulseVersions(pulse);
24844
25278
  registerPulseRestore(pulse);
25279
+ registerPulseMessages(pulse);
25280
+ registerPulseAnswer(pulse);
25281
+ registerPulseConnections(pulse);
24845
25282
  }
24846
25283
  __name(registerPulse, "registerPulse");
24847
25284
 
24848
25285
  // src/commands/queue-labels/index.ts
24849
- var TABLE_COLUMNS29 = [
25286
+ var TABLE_COLUMNS31 = [
24850
25287
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell") },
24851
25288
  { header: "KEY", cell: /* @__PURE__ */ __name((row) => row.key, "cell") },
24852
25289
  { header: "VALUE", cell: /* @__PURE__ */ __name((row) => row.value, "cell") },
@@ -24861,13 +25298,13 @@ var TABLE_COLUMNS29 = [
24861
25298
  ];
24862
25299
  function registerQueueLabels(program) {
24863
25300
  const labels = program.command("queue-labels").description("Manage label vocabularies on a queue");
24864
- registerList3(labels);
25301
+ registerList4(labels);
24865
25302
  registerCreate(labels);
24866
25303
  registerUpdate(labels);
24867
25304
  registerDelete(labels);
24868
25305
  }
24869
25306
  __name(registerQueueLabels, "registerQueueLabels");
24870
- function registerList3(labels) {
25307
+ function registerList4(labels) {
24871
25308
  labels.command("list", { isDefault: true }).description(
24872
25309
  "List labels defined on a queue along with the number of cases each is assigned to"
24873
25310
  ).requiredOption("--queue <id>", "ID of the queue").option("--limit <n>", "page size (1-1000, default 1000)").option("--offset <n>", "number of labels to skip").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function listAction(options) {
@@ -24900,11 +25337,11 @@ function registerList3(labels) {
24900
25337
  console.log("No labels defined on this queue.");
24901
25338
  return;
24902
25339
  }
24903
- console.log(renderTable(TABLE_COLUMNS29, parsed.data.labels));
25340
+ console.log(renderTable(TABLE_COLUMNS31, parsed.data.labels));
24904
25341
  console.log(`Showing ${parsed.data.labels.length}`);
24905
25342
  }, "listAction"));
24906
25343
  }
24907
- __name(registerList3, "registerList");
25344
+ __name(registerList4, "registerList");
24908
25345
  function registerCreate(labels) {
24909
25346
  labels.command("create").description("Create a label on a queue without assigning it to a case").requiredOption("--queue <id>", "ID of the queue").option("--key <text>", "label key (omit for tag-only labels)").requiredOption("--value <text>", "label value (required, non-empty)").option("--color-hue <n>", "color hue 0-360 (auto-derived if omitted)").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function createAction(options) {
24910
25347
  if (options.value.trim().length === 0) {
@@ -25651,10 +26088,10 @@ function registerQueuesLinkAgent(queues) {
25651
26088
  __name(registerQueuesLinkAgent, "registerQueuesLinkAgent");
25652
26089
 
25653
26090
  // src/commands/queues/list.ts
25654
- var DEFAULT_LIMIT10 = 20;
25655
- var MIN_LIMIT10 = 1;
25656
- var MAX_LIMIT10 = 100;
25657
- var TABLE_COLUMNS30 = [
26091
+ var DEFAULT_LIMIT11 = 20;
26092
+ var MIN_LIMIT11 = 1;
26093
+ var MAX_LIMIT11 = 100;
26094
+ var TABLE_COLUMNS32 = [
25658
26095
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell") },
25659
26096
  { header: "NAME", cell: /* @__PURE__ */ __name((row) => row.name, "cell") },
25660
26097
  {
@@ -25665,11 +26102,11 @@ var TABLE_COLUMNS30 = [
25665
26102
  { header: "CREATED", cell: /* @__PURE__ */ __name((row) => row.created_at ?? "", "cell") }
25666
26103
  ];
25667
26104
  function registerQueuesList(queues) {
25668
- queues.command("list", { isDefault: true }).description("List queues for your team").option("--limit <n>", `page size (${MIN_LIMIT10}-${MAX_LIMIT10})`).option("--offset <n>", "number of queues to skip").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function listAction(options) {
26105
+ queues.command("list", { isDefault: true }).description("List queues for your team").option("--limit <n>", `page size (${MIN_LIMIT11}-${MAX_LIMIT11})`).option("--offset <n>", "number of queues to skip").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function listAction(options) {
25669
26106
  const limit = parseLimit(options.limit, {
25670
- defaultValue: DEFAULT_LIMIT10,
25671
- min: MIN_LIMIT10,
25672
- max: MAX_LIMIT10
26107
+ defaultValue: DEFAULT_LIMIT11,
26108
+ min: MIN_LIMIT11,
26109
+ max: MAX_LIMIT11
25673
26110
  });
25674
26111
  const offset = parseOffset(options.offset);
25675
26112
  const config = await requireAuthenticatedConfig(this);
@@ -25702,7 +26139,7 @@ function registerQueuesList(queues) {
25702
26139
  console.log("No queues found.");
25703
26140
  return;
25704
26141
  }
25705
- console.log(renderTable(TABLE_COLUMNS30, response.queues));
26142
+ console.log(renderTable(TABLE_COLUMNS32, response.queues));
25706
26143
  const resolvedOffset = response.offset ?? offset;
25707
26144
  const total = response.total ?? null;
25708
26145
  const summary = total === null ? `Showing ${response.queues.length} \xB7 offset ${resolvedOffset}` : `Showing ${response.queues.length} of ${total} \xB7 offset ${resolvedOffset}`;
@@ -25960,7 +26397,7 @@ function registerRevisionLoginsDetach(revisionLogins) {
25960
26397
  __name(registerRevisionLoginsDetach, "registerRevisionLoginsDetach");
25961
26398
 
25962
26399
  // src/commands/revision-logins/list.ts
25963
- var TABLE_COLUMNS31 = [
26400
+ var TABLE_COLUMNS33 = [
25964
26401
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell") },
25965
26402
  { header: "DOMAIN", cell: /* @__PURE__ */ __name((row) => row.domain, "cell") },
25966
26403
  {
@@ -25996,7 +26433,7 @@ function registerRevisionLoginsList(revisionLogins) {
25996
26433
  console.log("No browser logins attached to this revision.");
25997
26434
  return;
25998
26435
  }
25999
- console.log(renderTable(TABLE_COLUMNS31, rows));
26436
+ console.log(renderTable(TABLE_COLUMNS33, rows));
26000
26437
  console.log(`Showing ${rows.length}`);
26001
26438
  }, "listAction"));
26002
26439
  }
@@ -26069,7 +26506,7 @@ function registerRevisionSecretsDetach(revisionSecrets) {
26069
26506
  __name(registerRevisionSecretsDetach, "registerRevisionSecretsDetach");
26070
26507
 
26071
26508
  // src/commands/revision-secrets/list.ts
26072
- var TABLE_COLUMNS32 = [
26509
+ var TABLE_COLUMNS34 = [
26073
26510
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell") },
26074
26511
  { header: "NAME", cell: /* @__PURE__ */ __name((row) => row.name, "cell") },
26075
26512
  {
@@ -26107,7 +26544,7 @@ function registerRevisionSecretsList(revisionSecrets) {
26107
26544
  console.log("No secrets attached to this revision.");
26108
26545
  return;
26109
26546
  }
26110
- console.log(renderTable(TABLE_COLUMNS32, rows));
26547
+ console.log(renderTable(TABLE_COLUMNS34, rows));
26111
26548
  console.log(`Showing ${rows.length}`);
26112
26549
  }, "listAction"));
26113
26550
  }
@@ -26123,91 +26560,91 @@ function registerRevisionSecrets(program) {
26123
26560
  __name(registerRevisionSecrets, "registerRevisionSecrets");
26124
26561
 
26125
26562
  // src/api/run-schemas.ts
26126
- import { z as z102 } from "zod";
26127
- var publicRunSchema = z102.object({
26128
- id: z102.string(),
26129
- agent_id: z102.string(),
26130
- build_id: z102.string(),
26131
- status: z102.string(),
26132
- source: z102.string().nullish(),
26133
- sandbox_id: z102.string().nullish(),
26134
- started_at: z102.string().nullish(),
26135
- completed_at: z102.string().nullish(),
26136
- created_at: z102.string(),
26137
- updated_at: z102.string().nullish(),
26138
- human_in_the_loop_enabled: z102.boolean().nullish()
26139
- });
26140
- var startRunResponseSchema = z102.object({
26563
+ import { z as z103 } from "zod";
26564
+ var publicRunSchema = z103.object({
26565
+ id: z103.string(),
26566
+ agent_id: z103.string(),
26567
+ build_id: z103.string(),
26568
+ status: z103.string(),
26569
+ source: z103.string().nullish(),
26570
+ sandbox_id: z103.string().nullish(),
26571
+ started_at: z103.string().nullish(),
26572
+ completed_at: z103.string().nullish(),
26573
+ created_at: z103.string(),
26574
+ updated_at: z103.string().nullish(),
26575
+ human_in_the_loop_enabled: z103.boolean().nullish()
26576
+ });
26577
+ var startRunResponseSchema = z103.object({
26141
26578
  run: publicRunSchema
26142
26579
  });
26143
- var questionOptionSchema = z102.object({
26144
- label: z102.string(),
26145
- description: z102.string().nullish()
26146
- });
26147
- var questionSchema = z102.object({
26148
- question: z102.string(),
26149
- header: z102.string().nullish(),
26150
- options: z102.array(questionOptionSchema).nullish(),
26151
- multi_select: z102.boolean().nullish()
26152
- });
26153
- var pendingHumanRequestSchema = z102.object({
26154
- id: z102.string(),
26155
- title: z102.string(),
26156
- description: z102.string().nullish(),
26157
- created_at: z102.string(),
26158
- type: z102.string(),
26159
- questions: z102.array(questionSchema).nullish()
26160
- });
26161
- var getRunResponseSchema = z102.object({
26580
+ var questionOptionSchema = z103.object({
26581
+ label: z103.string(),
26582
+ description: z103.string().nullish()
26583
+ });
26584
+ var questionSchema = z103.object({
26585
+ question: z103.string(),
26586
+ header: z103.string().nullish(),
26587
+ options: z103.array(questionOptionSchema).nullish(),
26588
+ multi_select: z103.boolean().nullish()
26589
+ });
26590
+ var pendingHumanRequestSchema = z103.object({
26591
+ id: z103.string(),
26592
+ title: z103.string(),
26593
+ description: z103.string().nullish(),
26594
+ created_at: z103.string(),
26595
+ type: z103.string(),
26596
+ questions: z103.array(questionSchema).nullish()
26597
+ });
26598
+ var getRunResponseSchema = z103.object({
26162
26599
  run: publicRunSchema.nullable(),
26163
26600
  pending_human_request: pendingHumanRequestSchema.nullish()
26164
26601
  });
26165
- var stopRunResponseSchema = z102.object({
26166
- success: z102.boolean(),
26167
- message: z102.string().nullish()
26168
- });
26169
- var runMessageSchema = z102.object({
26170
- id: z102.string(),
26171
- type: z102.string(),
26172
- role: z102.string(),
26173
- timestamp: z102.string(),
26174
- text_content: z102.string().nullish(),
26175
- tool_call: z102.object({
26176
- id: z102.string(),
26177
- name: z102.string(),
26178
- arguments: z102.record(z102.string(), z102.unknown()).nullish()
26602
+ var stopRunResponseSchema = z103.object({
26603
+ success: z103.boolean(),
26604
+ message: z103.string().nullish()
26605
+ });
26606
+ var runMessageSchema = z103.object({
26607
+ id: z103.string(),
26608
+ type: z103.string(),
26609
+ role: z103.string(),
26610
+ timestamp: z103.string(),
26611
+ text_content: z103.string().nullish(),
26612
+ tool_call: z103.object({
26613
+ id: z103.string(),
26614
+ name: z103.string(),
26615
+ arguments: z103.record(z103.string(), z103.unknown()).nullish()
26179
26616
  }).nullish(),
26180
- tool_result: z102.object({
26181
- tool_call_id: z102.string(),
26182
- result: z102.unknown().nullish(),
26183
- error: z102.string().nullish()
26617
+ tool_result: z103.object({
26618
+ tool_call_id: z103.string(),
26619
+ result: z103.unknown().nullish(),
26620
+ error: z103.string().nullish()
26184
26621
  }).nullish()
26185
26622
  });
26186
- var listRunMessagesResponseSchema = z102.object({
26187
- messages: z102.array(runMessageSchema),
26188
- total: z102.number().nullish(),
26189
- limit: z102.number().nullish(),
26190
- offset: z102.number().nullish()
26623
+ var listRunMessagesResponseSchema = z103.object({
26624
+ messages: z103.array(runMessageSchema),
26625
+ total: z103.number().nullish(),
26626
+ limit: z103.number().nullish(),
26627
+ offset: z103.number().nullish()
26191
26628
  });
26192
- var postedMessageSchema = z102.object({
26193
- id: z102.string(),
26194
- type: z102.string(),
26195
- role: z102.string(),
26196
- timestamp: z102.string(),
26197
- text_content: z102.string()
26629
+ var postedMessageSchema = z103.object({
26630
+ id: z103.string(),
26631
+ type: z103.string(),
26632
+ role: z103.string(),
26633
+ timestamp: z103.string(),
26634
+ text_content: z103.string()
26198
26635
  });
26199
- var postRunMessageResponseSchema = z102.object({
26636
+ var postRunMessageResponseSchema = z103.object({
26200
26637
  message: postedMessageSchema
26201
26638
  });
26202
- var respondHumanRequestResponseSchema = z102.object({
26203
- human_request: z102.object({
26204
- id: z102.string(),
26205
- run_id: z102.string(),
26206
- title: z102.string(),
26207
- description: z102.string().nullish(),
26208
- response: z102.string().nullish(),
26209
- responded_at: z102.string().nullish(),
26210
- created_at: z102.string()
26639
+ var respondHumanRequestResponseSchema = z103.object({
26640
+ human_request: z103.object({
26641
+ id: z103.string(),
26642
+ run_id: z103.string(),
26643
+ title: z103.string(),
26644
+ description: z103.string().nullish(),
26645
+ response: z103.string().nullish(),
26646
+ responded_at: z103.string().nullish(),
26647
+ created_at: z103.string()
26211
26648
  })
26212
26649
  });
26213
26650
 
@@ -26352,13 +26789,13 @@ function registerRunsGet(runs) {
26352
26789
  __name(registerRunsGet, "registerRunsGet");
26353
26790
 
26354
26791
  // src/commands/runs/list.ts
26355
- var DEFAULT_LIMIT11 = 20;
26356
- var MIN_LIMIT11 = 1;
26357
- var MAX_LIMIT11 = 100;
26792
+ var DEFAULT_LIMIT12 = 20;
26793
+ var MIN_LIMIT12 = 1;
26794
+ var MAX_LIMIT12 = 100;
26358
26795
  var SORT_ORDERS2 = ["asc", "desc"];
26359
26796
  var HAS_ISSUES_VALUES = ["true", "false"];
26360
26797
  var TITLE_PREVIEW_WIDTH = 50;
26361
- var TABLE_COLUMNS33 = [
26798
+ var TABLE_COLUMNS35 = [
26362
26799
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell") },
26363
26800
  { header: "RUN#", cell: /* @__PURE__ */ __name((row) => String(row.run_number), "cell") },
26364
26801
  { header: "STATUS", cell: /* @__PURE__ */ __name((row) => row.status, "cell") },
@@ -26382,7 +26819,7 @@ function isHasIssuesValue(value) {
26382
26819
  }
26383
26820
  __name(isHasIssuesValue, "isHasIssuesValue");
26384
26821
  function registerRunsList(runs) {
26385
- runs.command("list").description("List agent runs for your team").option("--limit <n>", `page size (${MIN_LIMIT11}-${MAX_LIMIT11})`).option("--offset <n>", "number of runs to skip").option("--sort-order <order>", `sort direction (${SORT_ORDERS2.join("|")})`).option(
26822
+ runs.command("list").description("List agent runs for your team").option("--limit <n>", `page size (${MIN_LIMIT12}-${MAX_LIMIT12})`).option("--offset <n>", "number of runs to skip").option("--sort-order <order>", `sort direction (${SORT_ORDERS2.join("|")})`).option(
26386
26823
  "--status <status>",
26387
26824
  "filter by status (e.g. running, completed, failed, waiting, interrupted, stopped, needs_attention)"
26388
26825
  ).option("--agent <id>", "filter by agent ID").option("--user <id>", "filter by user ID").option("--case-queue <id>", "filter by queue ID").option("--source <source>", "filter by source").option("--search <query>", "free-text search across runs").option(
@@ -26390,9 +26827,9 @@ function registerRunsList(runs) {
26390
26827
  `show only runs with (or without) issues (${HAS_ISSUES_VALUES.join("|")})`
26391
26828
  ).option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function listAction(options) {
26392
26829
  const limit = parseLimit(options.limit, {
26393
- defaultValue: DEFAULT_LIMIT11,
26394
- min: MIN_LIMIT11,
26395
- max: MAX_LIMIT11
26830
+ defaultValue: DEFAULT_LIMIT12,
26831
+ min: MIN_LIMIT12,
26832
+ max: MAX_LIMIT12
26396
26833
  });
26397
26834
  const offset = parseOffset(options.offset);
26398
26835
  if (options.sortOrder !== void 0 && !isSortOrder(options.sortOrder)) {
@@ -26459,7 +26896,7 @@ function registerRunsList(runs) {
26459
26896
  console.log("No runs found.");
26460
26897
  return;
26461
26898
  }
26462
- console.log(renderTable(TABLE_COLUMNS33, response.data));
26899
+ console.log(renderTable(TABLE_COLUMNS35, response.data));
26463
26900
  console.log(
26464
26901
  `Showing ${response.data.length} of ${response.total} \xB7 offset ${offset}`
26465
26902
  );
@@ -26565,11 +27002,11 @@ function getContent(msg) {
26565
27002
  __name(getContent, "getContent");
26566
27003
 
26567
27004
  // src/commands/runs/messages.ts
26568
- var DEFAULT_LIMIT12 = 20;
26569
- var MIN_LIMIT12 = 1;
26570
- var MAX_LIMIT12 = 50;
27005
+ var DEFAULT_LIMIT13 = 20;
27006
+ var MIN_LIMIT13 = 1;
27007
+ var MAX_LIMIT13 = 50;
26571
27008
  var TEXT_PREVIEW_WIDTH2 = 60;
26572
- var TABLE_COLUMNS34 = [
27009
+ var TABLE_COLUMNS36 = [
26573
27010
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell") },
26574
27011
  { header: "ROLE", cell: /* @__PURE__ */ __name((row) => row.role, "cell") },
26575
27012
  { header: "TYPE", cell: /* @__PURE__ */ __name((row) => row.type, "cell") },
@@ -26594,7 +27031,7 @@ function previewCell(row) {
26594
27031
  }
26595
27032
  __name(previewCell, "previewCell");
26596
27033
  function registerRunsMessages(runs) {
26597
- runs.command("messages <id>").description("List messages for an agent run").option("--limit <n>", `page size (${MIN_LIMIT12}-${MAX_LIMIT12})`).option("--offset <n>", "number of messages to skip").option("--follow", "poll for new messages until the job completes").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function messagesAction(id, options) {
27034
+ runs.command("messages <id>").description("List messages for an agent run").option("--limit <n>", `page size (${MIN_LIMIT13}-${MAX_LIMIT13})`).option("--offset <n>", "number of messages to skip").option("--follow", "poll for new messages until the job completes").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function messagesAction(id, options) {
26598
27035
  const offset = parseOffset(options.offset);
26599
27036
  const { apiKey, apiBaseUrl } = await requireAuthenticatedConfig(this);
26600
27037
  if (options.follow) {
@@ -26605,9 +27042,9 @@ function registerRunsMessages(runs) {
26605
27042
  return;
26606
27043
  }
26607
27044
  const limit = parseLimit(options.limit, {
26608
- defaultValue: DEFAULT_LIMIT12,
26609
- min: MIN_LIMIT12,
26610
- max: MAX_LIMIT12
27045
+ defaultValue: DEFAULT_LIMIT13,
27046
+ min: MIN_LIMIT13,
27047
+ max: MAX_LIMIT13
26611
27048
  });
26612
27049
  const searchParams = new URLSearchParams();
26613
27050
  searchParams.append("limit", String(limit));
@@ -26634,7 +27071,7 @@ function registerRunsMessages(runs) {
26634
27071
  console.log("No messages found.");
26635
27072
  return;
26636
27073
  }
26637
- console.log(renderTable(TABLE_COLUMNS34, response.messages));
27074
+ console.log(renderTable(TABLE_COLUMNS36, response.messages));
26638
27075
  const resolvedOffset = response.offset ?? offset;
26639
27076
  const summary = response.total === null || response.total === void 0 ? `Showing ${response.messages.length} \xB7 offset ${resolvedOffset}` : `Showing ${response.messages.length} of ${response.total} \xB7 offset ${resolvedOffset}`;
26640
27077
  console.log(summary);
@@ -26643,10 +27080,10 @@ function registerRunsMessages(runs) {
26643
27080
  __name(registerRunsMessages, "registerRunsMessages");
26644
27081
 
26645
27082
  // src/commands/runs/respond.ts
26646
- function collectAnswer2(value, previous = []) {
27083
+ function collectAnswer3(value, previous = []) {
26647
27084
  return [...previous, value];
26648
27085
  }
26649
- __name(collectAnswer2, "collectAnswer");
27086
+ __name(collectAnswer3, "collectAnswer");
26650
27087
  function parseAnswers2(raw) {
26651
27088
  const answers = /* @__PURE__ */ Object.create(null);
26652
27089
  for (const entry of raw) {
@@ -26722,7 +27159,7 @@ function registerRunsRespond(runs) {
26722
27159
  ).option("--approve", "approve an approval-type request").option("--deny", "deny an approval-type request").option(
26723
27160
  "--answer <question=answer>",
26724
27161
  "answer a question-type request (repeatable)",
26725
- collectAnswer2,
27162
+ collectAnswer3,
26726
27163
  []
26727
27164
  ).option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function respondAction(runId, requestIdArg, options) {
26728
27165
  const body = buildBody6(options);
@@ -26902,28 +27339,28 @@ function registerRuns(program) {
26902
27339
  __name(registerRuns, "registerRuns");
26903
27340
 
26904
27341
  // src/api/sandbox-schemas.ts
26905
- import { z as z103 } from "zod";
26906
- var createSandboxResponseSchema = z103.object({
26907
- sandbox_id: z103.string(),
26908
- expires_at: z103.string()
27342
+ import { z as z104 } from "zod";
27343
+ var createSandboxResponseSchema = z104.object({
27344
+ sandbox_id: z104.string(),
27345
+ expires_at: z104.string()
26909
27346
  });
26910
- var createSandboxUploadUrlResponseSchema = z103.object({
26911
- upload_url: z103.string(),
26912
- path: z103.string(),
26913
- expires_in_seconds: z103.number()
27347
+ var createSandboxUploadUrlResponseSchema = z104.object({
27348
+ upload_url: z104.string(),
27349
+ path: z104.string(),
27350
+ expires_in_seconds: z104.number()
26914
27351
  });
26915
- var sandboxFileSchema = z103.object({
26916
- name: z103.string(),
26917
- path: z103.string(),
26918
- type: z103.enum(["file", "dir"]),
26919
- size_bytes: z103.number()
27352
+ var sandboxFileSchema = z104.object({
27353
+ name: z104.string(),
27354
+ path: z104.string(),
27355
+ type: z104.enum(["file", "dir"]),
27356
+ size_bytes: z104.number()
26920
27357
  });
26921
- var listSandboxFilesResponseSchema = z103.object({
26922
- files: z103.array(sandboxFileSchema)
27358
+ var listSandboxFilesResponseSchema = z104.object({
27359
+ files: z104.array(sandboxFileSchema)
26923
27360
  });
26924
- var uploadSandboxFileResponseSchema = z103.object({
26925
- path: z103.string(),
26926
- size_bytes: z103.number()
27361
+ var uploadSandboxFileResponseSchema = z104.object({
27362
+ path: z104.string(),
27363
+ size_bytes: z104.number()
26927
27364
  });
26928
27365
  var DEFAULT_SANDBOX_FILES_PATH = "/workspace";
26929
27366
 
@@ -26960,7 +27397,7 @@ function registerSandboxesCreate(sandboxes) {
26960
27397
  __name(registerSandboxesCreate, "registerSandboxesCreate");
26961
27398
 
26962
27399
  // src/commands/sandboxes/files.ts
26963
- var TABLE_COLUMNS35 = [
27400
+ var TABLE_COLUMNS37 = [
26964
27401
  { header: "TYPE", cell: /* @__PURE__ */ __name((row) => row.type, "cell") },
26965
27402
  { header: "NAME", cell: /* @__PURE__ */ __name((row) => row.name, "cell") },
26966
27403
  { header: "PATH", cell: /* @__PURE__ */ __name((row) => row.path, "cell") },
@@ -26998,7 +27435,7 @@ function registerSandboxesFiles(sandboxes) {
26998
27435
  console.log("No files found.");
26999
27436
  return;
27000
27437
  }
27001
- console.log(renderTable(TABLE_COLUMNS35, files));
27438
+ console.log(renderTable(TABLE_COLUMNS37, files));
27002
27439
  console.log(`Showing ${files.length}`);
27003
27440
  }, "filesAction"));
27004
27441
  }
@@ -27343,7 +27780,7 @@ function registerSecretsGet(secrets) {
27343
27780
  __name(registerSecretsGet, "registerSecretsGet");
27344
27781
 
27345
27782
  // src/commands/secrets/list.ts
27346
- var TABLE_COLUMNS36 = [
27783
+ var TABLE_COLUMNS38 = [
27347
27784
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell") },
27348
27785
  { header: "NAME", cell: /* @__PURE__ */ __name((row) => row.name, "cell") },
27349
27786
  {
@@ -27387,7 +27824,7 @@ function registerSecretsList(secrets) {
27387
27824
  console.log("No secrets found.");
27388
27825
  return;
27389
27826
  }
27390
- console.log(renderTable(TABLE_COLUMNS36, rows));
27827
+ console.log(renderTable(TABLE_COLUMNS38, rows));
27391
27828
  console.log(`Showing ${rows.length}`);
27392
27829
  }, "listAction"));
27393
27830
  }
@@ -27498,7 +27935,7 @@ function registerSecrets(program) {
27498
27935
  __name(registerSecrets, "registerSecrets");
27499
27936
 
27500
27937
  // src/commands/skills/assignments.ts
27501
- var TABLE_COLUMNS37 = [
27938
+ var TABLE_COLUMNS39 = [
27502
27939
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell") },
27503
27940
  { header: "NAME", cell: /* @__PURE__ */ __name((row) => row.name, "cell") }
27504
27941
  ];
@@ -27526,7 +27963,7 @@ function registerSkillsAssignments(skills) {
27526
27963
  console.log("No agents use this skill.");
27527
27964
  return;
27528
27965
  }
27529
- console.log(renderTable(TABLE_COLUMNS37, assignments));
27966
+ console.log(renderTable(TABLE_COLUMNS39, assignments));
27530
27967
  console.log(`Showing ${assignments.length} of ${total}`);
27531
27968
  }, "assignmentsAction"));
27532
27969
  }
@@ -27534,13 +27971,13 @@ __name(registerSkillsAssignments, "registerSkillsAssignments");
27534
27971
 
27535
27972
  // src/commands/skills/create.ts
27536
27973
  import { readFileSync as readFileSync5 } from "node:fs";
27537
- import { z as z104 } from "zod";
27538
- var createSkillResponseSchema = z104.object({
27539
- skill: z104.object({
27540
- id: z104.string(),
27541
- name: z104.string(),
27542
- description: z104.string(),
27543
- team_id: z104.string()
27974
+ import { z as z105 } from "zod";
27975
+ var createSkillResponseSchema = z105.object({
27976
+ skill: z105.object({
27977
+ id: z105.string(),
27978
+ name: z105.string(),
27979
+ description: z105.string(),
27980
+ team_id: z105.string()
27544
27981
  })
27545
27982
  });
27546
27983
  function registerSkillsCreate(skills) {
@@ -27808,7 +28245,7 @@ function readContent2(options) {
27808
28245
  __name(readContent2, "readContent");
27809
28246
 
27810
28247
  // src/commands/skills/files.ts
27811
- var TABLE_COLUMNS38 = [
28248
+ var TABLE_COLUMNS40 = [
27812
28249
  { header: "PATH", cell: /* @__PURE__ */ __name((row) => row.path, "cell") },
27813
28250
  { header: "NAME", cell: /* @__PURE__ */ __name((row) => row.name, "cell") },
27814
28251
  {
@@ -27847,7 +28284,7 @@ function registerSkillsFiles(skills) {
27847
28284
  console.log("No files found.");
27848
28285
  return;
27849
28286
  }
27850
- console.log(renderTable(TABLE_COLUMNS38, parsed.data.files));
28287
+ console.log(renderTable(TABLE_COLUMNS40, parsed.data.files));
27851
28288
  console.log(`Showing ${parsed.data.files.length}`);
27852
28289
  }, "filesAction"));
27853
28290
  }
@@ -27904,13 +28341,13 @@ function readExistingContent(source) {
27904
28341
  __name(readExistingContent, "readExistingContent");
27905
28342
 
27906
28343
  // src/commands/skills/install.ts
27907
- import { z as z105 } from "zod";
27908
- var installSkillResponseSchema = z105.object({
27909
- skill: z105.object({
27910
- id: z105.string(),
27911
- name: z105.string(),
27912
- description: z105.string(),
27913
- team_id: z105.string()
28344
+ import { z as z106 } from "zod";
28345
+ var installSkillResponseSchema = z106.object({
28346
+ skill: z106.object({
28347
+ id: z106.string(),
28348
+ name: z106.string(),
28349
+ description: z106.string(),
28350
+ team_id: z106.string()
27914
28351
  })
27915
28352
  });
27916
28353
  function registerSkillsInstall(skills) {
@@ -28100,13 +28537,13 @@ __name(registerSkillsSystem, "registerSkillsSystem");
28100
28537
  // src/commands/skills/upload.ts
28101
28538
  import { readFile as readFile9, stat as stat2 } from "node:fs/promises";
28102
28539
  import { basename as basename3 } from "node:path";
28103
- import { z as z106 } from "zod";
28104
- var uploadSkillResponseSchema = z106.object({
28105
- skill: z106.object({
28106
- id: z106.string(),
28107
- name: z106.string(),
28108
- description: z106.string(),
28109
- team_id: z106.string()
28540
+ import { z as z107 } from "zod";
28541
+ var uploadSkillResponseSchema = z107.object({
28542
+ skill: z107.object({
28543
+ id: z107.string(),
28544
+ name: z107.string(),
28545
+ description: z107.string(),
28546
+ team_id: z107.string()
28110
28547
  })
28111
28548
  });
28112
28549
  function registerSkillsUpload(skills) {
@@ -28225,12 +28662,12 @@ function registerSuggestionsConsume(suggestions) {
28225
28662
  __name(registerSuggestionsConsume, "registerSuggestionsConsume");
28226
28663
 
28227
28664
  // src/commands/suggestions/list.ts
28228
- var DEFAULT_LIMIT13 = 100;
28229
- var MIN_LIMIT13 = 1;
28230
- var MAX_LIMIT13 = 250;
28665
+ var DEFAULT_LIMIT14 = 100;
28666
+ var MIN_LIMIT14 = 1;
28667
+ var MAX_LIMIT14 = 250;
28231
28668
  var STATUS_FILTERS = ["pending", "history"];
28232
28669
  var TITLE_PREVIEW_WIDTH2 = 50;
28233
- var TABLE_COLUMNS39 = [
28670
+ var TABLE_COLUMNS41 = [
28234
28671
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell") },
28235
28672
  { header: "TYPE", cell: /* @__PURE__ */ __name((row) => row.type, "cell") },
28236
28673
  { header: "STATUS", cell: /* @__PURE__ */ __name((row) => row.status, "cell") },
@@ -28251,11 +28688,11 @@ function registerSuggestionsList(suggestions) {
28251
28688
  ).option(
28252
28689
  "--status <filter>",
28253
28690
  `which inbox to show (${STATUS_FILTERS.join("|")}, default: pending)`
28254
- ).option("--limit <n>", `page size (${MIN_LIMIT13}-${MAX_LIMIT13})`).option("--offset <n>", "number of suggestions to skip").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function listAction(agentId, options) {
28691
+ ).option("--limit <n>", `page size (${MIN_LIMIT14}-${MAX_LIMIT14})`).option("--offset <n>", "number of suggestions to skip").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function listAction(agentId, options) {
28255
28692
  const limit = parseLimit(options.limit, {
28256
- defaultValue: DEFAULT_LIMIT13,
28257
- min: MIN_LIMIT13,
28258
- max: MAX_LIMIT13
28693
+ defaultValue: DEFAULT_LIMIT14,
28694
+ min: MIN_LIMIT14,
28695
+ max: MAX_LIMIT14
28259
28696
  });
28260
28697
  const offset = parseOffset(options.offset);
28261
28698
  if (options.status !== void 0 && !isStatusFilter(options.status)) {
@@ -28293,7 +28730,7 @@ function registerSuggestionsList(suggestions) {
28293
28730
  console.log(`Pending total: ${pendingCount}`);
28294
28731
  return;
28295
28732
  }
28296
- console.log(renderTable(TABLE_COLUMNS39, data));
28733
+ console.log(renderTable(TABLE_COLUMNS41, data));
28297
28734
  console.log(
28298
28735
  `Showing ${data.length} \xB7 offset ${offset} \xB7 pending total ${pendingCount}`
28299
28736
  );
@@ -28417,10 +28854,10 @@ function registerTeamGet(team) {
28417
28854
  __name(registerTeamGet, "registerTeamGet");
28418
28855
 
28419
28856
  // src/commands/team/members.ts
28420
- var DEFAULT_LIMIT14 = 50;
28421
- var MIN_LIMIT14 = 1;
28422
- var MAX_LIMIT14 = 100;
28423
- var TABLE_COLUMNS40 = [
28857
+ var DEFAULT_LIMIT15 = 50;
28858
+ var MIN_LIMIT15 = 1;
28859
+ var MAX_LIMIT15 = 100;
28860
+ var TABLE_COLUMNS42 = [
28424
28861
  { header: "ID", cell: /* @__PURE__ */ __name((row) => row.id, "cell") },
28425
28862
  { header: "NAME", cell: /* @__PURE__ */ __name((row) => row.name ?? "", "cell") },
28426
28863
  { header: "EMAIL", cell: /* @__PURE__ */ __name((row) => row.email, "cell") },
@@ -28434,11 +28871,11 @@ function registerTeamMembers(team) {
28434
28871
  team.command("members").description("List members of a team").option(
28435
28872
  "--team <id>",
28436
28873
  "team ID (defaults to the team scoped to your credentials)"
28437
- ).option("--limit <n>", `page size (${MIN_LIMIT14}-${MAX_LIMIT14})`).option("--offset <n>", "number of members to skip").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function membersAction(options) {
28874
+ ).option("--limit <n>", `page size (${MIN_LIMIT15}-${MAX_LIMIT15})`).option("--offset <n>", "number of members to skip").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function membersAction(options) {
28438
28875
  const limit = parseLimit(options.limit, {
28439
- defaultValue: DEFAULT_LIMIT14,
28440
- min: MIN_LIMIT14,
28441
- max: MAX_LIMIT14
28876
+ defaultValue: DEFAULT_LIMIT15,
28877
+ min: MIN_LIMIT15,
28878
+ max: MAX_LIMIT15
28442
28879
  });
28443
28880
  const offset = parseOffset(options.offset);
28444
28881
  const config = await requireAuthenticatedConfig(this);
@@ -28471,7 +28908,7 @@ function registerTeamMembers(team) {
28471
28908
  console.log("No members found.");
28472
28909
  return;
28473
28910
  }
28474
- console.log(renderTable(TABLE_COLUMNS40, response.members));
28911
+ console.log(renderTable(TABLE_COLUMNS42, response.members));
28475
28912
  console.log(
28476
28913
  `Showing ${response.members.length} of ${response.total} \xB7 offset ${response.offset}`
28477
28914
  );
@@ -28480,9 +28917,9 @@ function registerTeamMembers(team) {
28480
28917
  __name(registerTeamMembers, "registerTeamMembers");
28481
28918
 
28482
28919
  // src/commands/team/use.ts
28483
- import { z as z107 } from "zod";
28920
+ import { z as z108 } from "zod";
28484
28921
  var TEAM_ID_SHAPE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
28485
- var teamIdSchema = z107.string().regex(TEAM_ID_SHAPE);
28922
+ var teamIdSchema = z108.string().regex(TEAM_ID_SHAPE);
28486
28923
  function registerTeamUse(team) {
28487
28924
  team.command("use <team-id>").description(
28488
28925
  "Set the default team for the active OAuth profile (overridable per-command via --team or DUVO_TEAM_ID)"
@@ -28568,14 +29005,14 @@ function registerTeam(program) {
28568
29005
  __name(registerTeam, "registerTeam");
28569
29006
 
28570
29007
  // src/commands/teams/list.ts
28571
- import { z as z108 } from "zod";
28572
- var teamApiSchema2 = z108.object({
28573
- id: z108.string(),
28574
- name: z108.string(),
28575
- organization_id: z108.string().nullable()
29008
+ import { z as z109 } from "zod";
29009
+ var teamApiSchema2 = z109.object({
29010
+ id: z109.string(),
29011
+ name: z109.string(),
29012
+ organization_id: z109.string().nullable()
28576
29013
  });
28577
- var listMyTeamsResponseSchema3 = z108.object({
28578
- teams: z108.array(teamApiSchema2)
29014
+ var listMyTeamsResponseSchema3 = z109.object({
29015
+ teams: z109.array(teamApiSchema2)
28579
29016
  });
28580
29017
  function registerTeamsList(teams) {
28581
29018
  teams.command("list", { isDefault: true }).description("List every team you can act on").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function listAction(options) {
@@ -28618,17 +29055,17 @@ function registerTeamsList(teams) {
28618
29055
  __name(registerTeamsList, "registerTeamsList");
28619
29056
 
28620
29057
  // src/commands/teams/org.ts
28621
- import { z as z109 } from "zod";
28622
- var orgTeamSchema = z109.object({
28623
- id: z109.string(),
28624
- name: z109.string(),
28625
- userIsMember: z109.boolean(),
28626
- userRole: z109.string().nullable(),
28627
- memberCount: z109.number()
28628
- });
28629
- var listOrgTeamsResponseSchema = z109.object({
28630
- teams: z109.array(orgTeamSchema),
28631
- total: z109.number()
29058
+ import { z as z110 } from "zod";
29059
+ var orgTeamSchema = z110.object({
29060
+ id: z110.string(),
29061
+ name: z110.string(),
29062
+ userIsMember: z110.boolean(),
29063
+ userRole: z110.string().nullable(),
29064
+ memberCount: z110.number()
29065
+ });
29066
+ var listOrgTeamsResponseSchema = z110.object({
29067
+ teams: z110.array(orgTeamSchema),
29068
+ total: z110.number()
28632
29069
  });
28633
29070
  function registerTeamsOrg(teams) {
28634
29071
  teams.command("org <org-id>").description("List all teams in an organization you belong to").option("--json", "output raw JSON from the API").action(/* @__PURE__ */ __name(async function orgAction(orgId, options) {
@@ -28730,7 +29167,7 @@ __name(resolveActiveTeamId, "resolveActiveTeamId");
28730
29167
  var version = resolveVersion();
28731
29168
  function resolveVersion() {
28732
29169
  if (true) {
28733
- return "1.18.1";
29170
+ return "1.19.0";
28734
29171
  }
28735
29172
  const packageJsonPath = join3(
28736
29173
  dirname3(fileURLToPath2(import.meta.url)),
@@ -28814,7 +29251,7 @@ function checkForUpdate() {
28814
29251
  __name(checkForUpdate, "checkForUpdate");
28815
29252
  function loadPackageMeta() {
28816
29253
  if (true) {
28817
- return { name: "@duvoai/cli", version: "1.18.1" };
29254
+ return { name: "@duvoai/cli", version: "1.19.0" };
28818
29255
  }
28819
29256
  const require2 = createRequire(import.meta.url);
28820
29257
  const raw = require2("../package.json");