@rudderhq/cli 0.7.3 → 0.7.4-canary.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/index.js +306 -260
- package/dist/index.js.map +4 -4
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -65,6 +65,7 @@ var init_computer_use = __esm({
|
|
|
65
65
|
COMPUTER_USE_MCP_TOOL_PREFIX = "rudder_computer_";
|
|
66
66
|
COMPUTER_USE_ACTIONS = [
|
|
67
67
|
"list_apps",
|
|
68
|
+
"launch_app",
|
|
68
69
|
"list_windows",
|
|
69
70
|
"get_app_state",
|
|
70
71
|
"click",
|
|
@@ -103,6 +104,14 @@ var init_computer_use = __esm({
|
|
|
103
104
|
});
|
|
104
105
|
COMPUTER_USE_MCP_TOOLS = [
|
|
105
106
|
tool("list_apps", "List running macOS applications. Use this to identify the exact target before observing it.", objectSchema({})),
|
|
107
|
+
tool("launch_app", "Launch an installed application without taking focus. Use the returned pid and window ID to observe it directly.", {
|
|
108
|
+
...objectSchema({
|
|
109
|
+
name: { type: "string", description: "Exact installed application name." },
|
|
110
|
+
bundleId: { type: "string", description: "Exact application bundle identifier." },
|
|
111
|
+
newInstance: { type: "boolean", description: "Request a separate application instance when the platform supports it." }
|
|
112
|
+
}),
|
|
113
|
+
anyOf: [{ required: ["name"] }, { required: ["bundleId"] }]
|
|
114
|
+
}),
|
|
106
115
|
tool("list_windows", "List windows for a running application.", objectSchema({
|
|
107
116
|
...targetProperties,
|
|
108
117
|
onScreenOnly: { type: "boolean" }
|
|
@@ -182,6 +191,11 @@ var init_computer_use = __esm({
|
|
|
182
191
|
}).strict();
|
|
183
192
|
computerUseActionSchemas = {
|
|
184
193
|
list_apps: z.object({}).strict(),
|
|
194
|
+
launch_app: z.object({
|
|
195
|
+
name: z.string().trim().min(1).max(300).optional(),
|
|
196
|
+
bundleId: z.string().trim().min(1).max(300).optional(),
|
|
197
|
+
newInstance: z.boolean().optional()
|
|
198
|
+
}).strict().refine((value) => value.name !== void 0 || value.bundleId !== void 0, { message: "Launch app requires a name or bundle ID." }),
|
|
185
199
|
list_windows: appTargetSchema.extend({ onScreenOnly: z.boolean().optional() }).strict(),
|
|
186
200
|
get_app_state: appTargetSchema.extend({
|
|
187
201
|
includeScreenshot: z.boolean().optional(),
|
|
@@ -242,7 +256,7 @@ var init_computer_use = __esm({
|
|
|
242
256
|
});
|
|
243
257
|
|
|
244
258
|
// ../packages/shared/dist/constants.js
|
|
245
|
-
var ORGANIZATION_STATUSES, ORGANIZATION_INTELLIGENCE_PROFILE_PURPOSES, ORGANIZATION_INTELLIGENCE_PROFILE_STATUSES, DEPLOYMENT_MODES, DEPLOYMENT_EXPOSURES, AUTH_BASE_URL_MODES, AGENT_STATUSES, AGENT_RUNTIME_TYPES, AGENT_ROLES, AGENT_ICON_NAMES, AGENT_OREO_ICON_PREFIX, AGENT_OREO_SHAPE_IDS, AGENT_OREO_PALETTE_IDS, AGENT_DICEBEAR_NOTIONISTS_ICON_PREFIX, AGENT_AVATAR_BACKGROUND_PRESET_IDS, ISSUE_STATUSES, ISSUE_PRIORITIES, AGENT_INTEGRATION_PROVIDERS, AGENT_INTEGRATION_STATUSES, AGENT_INTEGRATION_TRANSPORTS, AGENT_INTEGRATION_PROVIDER_REGIONS, AGENT_INTEGRATION_CHAT_TYPES, AGENT_INTEGRATION_DROP_REASONS, AGENT_INTEGRATION_OUTBOUND_STATUSES, RUDDER_AGENT_V1_MCP_TOOL_NAMES, RUDDER_BROWSER_MCP_TOOL_NAMES2, RUDDER_CORE_MCP_TOOL_NAMES2, CUSTOM_INTEGRATION_KINDS, CUSTOM_INTEGRATION_SCOPES, CUSTOM_INTEGRATION_STATUSES, CUSTOM_INTEGRATION_TOOL_STATUSES, CUSTOM_INTEGRATION_BINDING_STATUSES, CUSTOM_INTEGRATION_TOOL_CALL_STATUSES, MCP_CONNECTION_PROVIDERS, MCP_CONNECTION_TRANSPORTS, MCP_CONNECTION_SCOPES, MCP_CONNECTION_ACCESS_MODES, MCP_AGENT_ACCESS_MODES, MCP_CONNECTION_CANONICAL_STATES, MCP_PROVIDER_SCOPE_MODES, MCP_PROVIDER_CREDENTIAL_MODES, MCP_PROVIDER_ORGANIZATION_STATES, MCP_TOOL_CAPABILITY_CLASSES, MCP_CONNECTION_STATUSES, MCP_OAUTH_GRANT_STATUSES, MCP_AGENT_BINDING_STATUSES, MCP_OAUTH_SESSION_TTL_MS, MCP_PROVIDER_CATALOG, CALENDAR_SOURCE_TYPES, CALENDAR_OWNER_TYPES, CALENDAR_VISIBILITIES, CALENDAR_SOURCE_STATUSES, CALENDAR_EVENT_KINDS, CALENDAR_EVENT_STATUSES, CALENDAR_SOURCE_MODES, CHAT_CONVERSATION_STATUSES, CHAT_ISSUE_CREATION_MODES, CHAT_MESSAGE_ROLES, CHAT_MESSAGE_KINDS, CHAT_MESSAGE_STATUSES, CHAT_CONTEXT_ENTITY_TYPES, GOAL_OBJECTIVE_MODES, GOAL_EVALUATOR_KINDS, GOAL_CONTINUATION_KINDS, GOAL_ACTIVITY_KINDS, GOAL_FEEDBACK_KINDS, PROJECT_STATUSES, ORGANIZATION_RESOURCE_KINDS, ORGANIZATION_RESOURCE_SOURCE_TYPES, PROJECT_RESOURCE_ATTACHMENT_ROLES, AUTOMATION_STATUSES, AUTOMATION_CONCURRENCY_POLICIES, AUTOMATION_CATCH_UP_POLICIES, AUTOMATION_OUTPUT_MODES, AUTOMATION_TRIGGER_SIGNING_MODES, PROJECT_COLORS, PROJECT_ICONS, APPROVAL_TYPES, SECRET_PROVIDERS, STORAGE_PROVIDERS, BILLING_TYPES, FINANCE_EVENT_KINDS, FINANCE_DIRECTIONS, FINANCE_UNITS, BUDGET_SCOPE_TYPES, BUDGET_METRICS, BUDGET_WINDOW_KINDS, BUDGET_INCIDENT_RESOLUTION_ACTIONS, AGENT_ISSUE_CREATION_REQUEST_STATUSES, INVITE_JOIN_TYPES, JOIN_REQUEST_TYPES, JOIN_REQUEST_STATUSES, PERMISSION_KEYS;
|
|
259
|
+
var ORGANIZATION_STATUSES, ORGANIZATION_INTELLIGENCE_PROFILE_PURPOSES, ORGANIZATION_INTELLIGENCE_PROFILE_STATUSES, DEPLOYMENT_MODES, DEPLOYMENT_EXPOSURES, AUTH_BASE_URL_MODES, AGENT_STATUSES, AGENT_RUNTIME_TYPES, AGENT_ROLES, AGENT_ICON_NAMES, AGENT_OREO_ICON_PREFIX, AGENT_OREO_SHAPE_IDS, AGENT_OREO_PALETTE_IDS, AGENT_DICEBEAR_NOTIONISTS_ICON_PREFIX, AGENT_AVATAR_BACKGROUND_PRESET_IDS, ISSUE_STATUSES, ISSUE_PRIORITIES, AGENT_INTEGRATION_PROVIDERS, AGENT_INTEGRATION_STATUSES, AGENT_INTEGRATION_TRANSPORTS, AGENT_INTEGRATION_PROVIDER_REGIONS, AGENT_INTEGRATION_CHAT_TYPES, AGENT_INTEGRATION_DROP_REASONS, AGENT_INTEGRATION_OUTBOUND_STATUSES, RUDDER_AGENT_V1_MCP_TOOL_NAMES, RUDDER_BROWSER_MCP_TOOL_NAMES2, RUDDER_CORE_MCP_TOOL_NAMES2, CUSTOM_INTEGRATION_KINDS, CUSTOM_INTEGRATION_SCOPES, CUSTOM_INTEGRATION_STATUSES, CUSTOM_INTEGRATION_TOOL_STATUSES, CUSTOM_INTEGRATION_BINDING_STATUSES, CUSTOM_INTEGRATION_TOOL_CALL_STATUSES, MCP_CONNECTION_PROVIDERS, MCP_CONNECTION_TRANSPORTS, MCP_CONNECTION_SCOPES, MCP_CONNECTION_ACCESS_MODES, MCP_AGENT_ACCESS_MODES, MCP_CONNECTION_CANONICAL_STATES, MCP_PROVIDER_SCOPE_MODES, MCP_PROVIDER_CREDENTIAL_MODES, MCP_PROVIDER_ORGANIZATION_STATES, MCP_TOOL_CAPABILITY_CLASSES, MCP_CONNECTION_STATUSES, MCP_OAUTH_GRANT_STATUSES, MCP_AGENT_BINDING_STATUSES, MCP_OAUTH_SESSION_TTL_MS, MCP_PROVIDER_CATALOG, CALENDAR_SOURCE_TYPES, CALENDAR_OWNER_TYPES, CALENDAR_VISIBILITIES, CALENDAR_SOURCE_STATUSES, CALENDAR_EVENT_KINDS, CALENDAR_EVENT_STATUSES, CALENDAR_SOURCE_MODES, CHAT_CONVERSATION_STATUSES, CHAT_ISSUE_CREATION_MODES, CHAT_MESSAGE_ROLES, CHAT_MESSAGE_KINDS, CHAT_MESSAGE_STATUSES, CHAT_CONTEXT_ENTITY_TYPES, GOAL_OBJECTIVE_MODES, GOAL_EVALUATOR_KINDS, GOAL_CONTINUATION_KINDS, GOAL_ACTIVITY_KINDS, GOAL_FEEDBACK_KINDS, PROJECT_STATUSES, ORGANIZATION_RESOURCE_KINDS, ORGANIZATION_RESOURCE_SOURCE_TYPES, PROJECT_RESOURCE_ATTACHMENT_ROLES, AUTOMATION_STATUSES, AUTOMATION_CONCURRENCY_POLICIES, AUTOMATION_CATCH_UP_POLICIES, AUTOMATION_OUTPUT_MODES, AUTOMATION_TRIGGER_SIGNING_MODES, PROJECT_COLORS, PROJECT_ICONS, APPROVAL_TYPES, REQUEST_STATUSES, ASSISTANCE_REQUEST_RESOLUTIONS, SECRET_PROVIDERS, STORAGE_PROVIDERS, BILLING_TYPES, FINANCE_EVENT_KINDS, FINANCE_DIRECTIONS, FINANCE_UNITS, BUDGET_SCOPE_TYPES, BUDGET_METRICS, BUDGET_WINDOW_KINDS, BUDGET_INCIDENT_RESOLUTION_ACTIONS, AGENT_ISSUE_CREATION_REQUEST_STATUSES, INVITE_JOIN_TYPES, JOIN_REQUEST_TYPES, JOIN_REQUEST_STATUSES, PERMISSION_KEYS;
|
|
246
260
|
var init_constants = __esm({
|
|
247
261
|
"../packages/shared/dist/constants.js"() {
|
|
248
262
|
"use strict";
|
|
@@ -755,6 +769,8 @@ var init_constants = __esm({
|
|
|
755
769
|
"agent_runtime",
|
|
756
770
|
"goal_change"
|
|
757
771
|
];
|
|
772
|
+
REQUEST_STATUSES = ["open", "resolved", "cancelled", "superseded"];
|
|
773
|
+
ASSISTANCE_REQUEST_RESOLUTIONS = ["answered", "action_completed", "cannot_help"];
|
|
758
774
|
SECRET_PROVIDERS = [
|
|
759
775
|
"local_encrypted",
|
|
760
776
|
"aws_secrets_manager",
|
|
@@ -3206,7 +3222,7 @@ var init_organization_portability = __esm({
|
|
|
3206
3222
|
|
|
3207
3223
|
// ../packages/shared/dist/validators/organization-skill.js
|
|
3208
3224
|
import { z as z18 } from "zod";
|
|
3209
|
-
var organizationSkillSourceTypeSchema, organizationSkillTrustLevelSchema, organizationSkillCompatibilitySchema, organizationSkillSourceBadgeSchema, organizationSkillFileInventoryEntrySchema, organizationSkillSchema, organizationSkillListItemSchema, organizationSkillUsageAgentSchema, organizationSkillDetailSchema, organizationSkillUpdateStatusSchema, organizationSkillImportSchema, organizationSkillProjectScanRequestSchema, organizationSkillProjectScanSkippedSchema, organizationSkillProjectScanConflictSchema, organizationSkillProjectScanResultSchema, organizationSkillLocalScanRequestSchema, organizationSkillLocalScanSkippedSchema, organizationSkillLocalScanConflictSchema, organizationSkillLocalScanResultSchema, organizationSkillCreateSchema, organizationSkillFileDetailSchema, organizationSkillFileUpdateSchema;
|
|
3225
|
+
var organizationSkillSourceTypeSchema, organizationSkillTrustLevelSchema, organizationSkillCompatibilitySchema, organizationSkillSourceBadgeSchema, organizationSkillFileInventoryEntrySchema, organizationSkillSchema, organizationSkillListItemSchema, organizationSkillUsageAgentSchema, organizationSkillDetailSchema, organizationSkillUpdateStatusSchema, organizationSkillImportSchema, organizationSkillUploadSchema, organizationSkillProjectScanRequestSchema, organizationSkillProjectScanSkippedSchema, organizationSkillProjectScanConflictSchema, organizationSkillProjectScanResultSchema, organizationSkillLocalScanRequestSchema, organizationSkillLocalScanSkippedSchema, organizationSkillLocalScanConflictSchema, organizationSkillLocalScanResultSchema, organizationSkillCreateSchema, organizationSkillFileDetailSchema, organizationSkillFileUpdateSchema;
|
|
3210
3226
|
var init_organization_skill = __esm({
|
|
3211
3227
|
"../packages/shared/dist/validators/organization-skill.js"() {
|
|
3212
3228
|
"use strict";
|
|
@@ -3282,6 +3298,12 @@ var init_organization_skill = __esm({
|
|
|
3282
3298
|
organizationSkillImportSchema = z18.object({
|
|
3283
3299
|
source: z18.string().min(1)
|
|
3284
3300
|
});
|
|
3301
|
+
organizationSkillUploadSchema = z18.object({
|
|
3302
|
+
files: z18.array(z18.object({
|
|
3303
|
+
path: z18.string().min(1).max(512),
|
|
3304
|
+
content: z18.string().max(1048576)
|
|
3305
|
+
})).min(1).max(128)
|
|
3306
|
+
});
|
|
3285
3307
|
organizationSkillProjectScanRequestSchema = z18.object({
|
|
3286
3308
|
projectIds: z18.array(z18.string().uuid()).optional(),
|
|
3287
3309
|
workspaceIds: z18.array(z18.string().uuid()).optional()
|
|
@@ -4217,8 +4239,29 @@ var init_approval = __esm({
|
|
|
4217
4239
|
}
|
|
4218
4240
|
});
|
|
4219
4241
|
|
|
4220
|
-
// ../packages/shared/dist/validators/
|
|
4242
|
+
// ../packages/shared/dist/validators/request.js
|
|
4221
4243
|
import { z as z29 } from "zod";
|
|
4244
|
+
var listRequestsQuerySchema, resolveAssistanceRequestSchema, cancelAssistanceRequestSchema;
|
|
4245
|
+
var init_request = __esm({
|
|
4246
|
+
"../packages/shared/dist/validators/request.js"() {
|
|
4247
|
+
"use strict";
|
|
4248
|
+
init_constants();
|
|
4249
|
+
listRequestsQuerySchema = z29.object({
|
|
4250
|
+
status: z29.enum(REQUEST_STATUSES).optional(),
|
|
4251
|
+
kind: z29.enum(["approval", "assistance"]).optional()
|
|
4252
|
+
});
|
|
4253
|
+
resolveAssistanceRequestSchema = z29.object({
|
|
4254
|
+
resolution: z29.enum(ASSISTANCE_REQUEST_RESOLUTIONS),
|
|
4255
|
+
response: z29.string().trim().min(1).max(2e4)
|
|
4256
|
+
});
|
|
4257
|
+
cancelAssistanceRequestSchema = z29.object({
|
|
4258
|
+
reason: z29.string().trim().min(1).max(2e3).optional()
|
|
4259
|
+
});
|
|
4260
|
+
}
|
|
4261
|
+
});
|
|
4262
|
+
|
|
4263
|
+
// ../packages/shared/dist/validators/automation.js
|
|
4264
|
+
import { z as z30 } from "zod";
|
|
4222
4265
|
function normalizeAutomationInstructions(value) {
|
|
4223
4266
|
const { instructions, ...rest } = value;
|
|
4224
4267
|
return {
|
|
@@ -4237,28 +4280,28 @@ var init_automation = __esm({
|
|
|
4237
4280
|
"use strict";
|
|
4238
4281
|
init_constants();
|
|
4239
4282
|
init_issue();
|
|
4240
|
-
automationTextFieldSchema =
|
|
4241
|
-
automationBodyFieldsSchema =
|
|
4242
|
-
projectId:
|
|
4243
|
-
goalId:
|
|
4244
|
-
parentIssueId:
|
|
4245
|
-
title:
|
|
4283
|
+
automationTextFieldSchema = z30.string().optional().nullable();
|
|
4284
|
+
automationBodyFieldsSchema = z30.object({
|
|
4285
|
+
projectId: z30.string().uuid().optional().nullable().default(null),
|
|
4286
|
+
goalId: z30.string().uuid().optional().nullable(),
|
|
4287
|
+
parentIssueId: z30.string().uuid().optional().nullable(),
|
|
4288
|
+
title: z30.string().trim().min(1).max(200),
|
|
4246
4289
|
instructions: automationTextFieldSchema,
|
|
4247
4290
|
description: automationTextFieldSchema,
|
|
4248
|
-
assigneeAgentId:
|
|
4291
|
+
assigneeAgentId: z30.string().uuid(),
|
|
4249
4292
|
assigneeAgentRuntimeOverrides: issueAssigneeAdapterOverridesSchema.optional().nullable(),
|
|
4250
|
-
priority:
|
|
4251
|
-
status:
|
|
4252
|
-
concurrencyPolicy:
|
|
4253
|
-
catchUpPolicy:
|
|
4254
|
-
outputMode:
|
|
4255
|
-
chatConversationId:
|
|
4256
|
-
notifyOnIssueCreated:
|
|
4293
|
+
priority: z30.enum(ISSUE_PRIORITIES).optional().default("medium"),
|
|
4294
|
+
status: z30.enum(AUTOMATION_STATUSES).optional().default("active"),
|
|
4295
|
+
concurrencyPolicy: z30.enum(AUTOMATION_CONCURRENCY_POLICIES).optional().default("coalesce_if_active"),
|
|
4296
|
+
catchUpPolicy: z30.enum(AUTOMATION_CATCH_UP_POLICIES).optional().default("skip_missed"),
|
|
4297
|
+
outputMode: z30.enum(AUTOMATION_OUTPUT_MODES).optional().default("track_issue"),
|
|
4298
|
+
chatConversationId: z30.string().uuid().optional().nullable().default(null),
|
|
4299
|
+
notifyOnIssueCreated: z30.boolean().optional().default(false)
|
|
4257
4300
|
});
|
|
4258
4301
|
createAutomationSchema = automationBodyFieldsSchema.superRefine((value, ctx) => {
|
|
4259
4302
|
if (value.chatConversationId) {
|
|
4260
4303
|
ctx.addIssue({
|
|
4261
|
-
code:
|
|
4304
|
+
code: z30.ZodIssueCode.custom,
|
|
4262
4305
|
path: ["chatConversationId"],
|
|
4263
4306
|
message: "Chat output creates an automation-owned conversation; existing chats cannot be selected"
|
|
4264
4307
|
});
|
|
@@ -4267,185 +4310,185 @@ var init_automation = __esm({
|
|
|
4267
4310
|
updateAutomationSchema = automationBodyFieldsSchema.partial().superRefine((value, ctx) => {
|
|
4268
4311
|
if (value.chatConversationId) {
|
|
4269
4312
|
ctx.addIssue({
|
|
4270
|
-
code:
|
|
4313
|
+
code: z30.ZodIssueCode.custom,
|
|
4271
4314
|
path: ["chatConversationId"],
|
|
4272
4315
|
message: "Chat output creates an automation-owned conversation; existing chats cannot be selected"
|
|
4273
4316
|
});
|
|
4274
4317
|
}
|
|
4275
4318
|
}).transform(normalizeAutomationInstructions).transform(normalizeAutomationNotifications);
|
|
4276
|
-
baseTriggerSchema =
|
|
4277
|
-
label:
|
|
4278
|
-
enabled:
|
|
4319
|
+
baseTriggerSchema = z30.object({
|
|
4320
|
+
label: z30.string().trim().max(120).optional().nullable(),
|
|
4321
|
+
enabled: z30.boolean().optional().default(true)
|
|
4279
4322
|
});
|
|
4280
|
-
createAutomationTriggerSchema =
|
|
4323
|
+
createAutomationTriggerSchema = z30.discriminatedUnion("kind", [
|
|
4281
4324
|
baseTriggerSchema.extend({
|
|
4282
|
-
kind:
|
|
4283
|
-
cronExpression:
|
|
4284
|
-
timezone:
|
|
4325
|
+
kind: z30.literal("schedule"),
|
|
4326
|
+
cronExpression: z30.string().trim().min(1),
|
|
4327
|
+
timezone: z30.string().trim().min(1).default("UTC")
|
|
4285
4328
|
}),
|
|
4286
4329
|
baseTriggerSchema.extend({
|
|
4287
|
-
kind:
|
|
4288
|
-
signingMode:
|
|
4289
|
-
replayWindowSec:
|
|
4330
|
+
kind: z30.literal("webhook"),
|
|
4331
|
+
signingMode: z30.enum(AUTOMATION_TRIGGER_SIGNING_MODES).optional().default("bearer"),
|
|
4332
|
+
replayWindowSec: z30.number().int().min(30).max(86400).optional().default(300)
|
|
4290
4333
|
}),
|
|
4291
4334
|
baseTriggerSchema.extend({
|
|
4292
|
-
kind:
|
|
4335
|
+
kind: z30.literal("api")
|
|
4293
4336
|
})
|
|
4294
4337
|
]);
|
|
4295
|
-
updateAutomationTriggerSchema =
|
|
4296
|
-
label:
|
|
4297
|
-
enabled:
|
|
4298
|
-
cronExpression:
|
|
4299
|
-
timezone:
|
|
4300
|
-
signingMode:
|
|
4301
|
-
replayWindowSec:
|
|
4338
|
+
updateAutomationTriggerSchema = z30.object({
|
|
4339
|
+
label: z30.string().trim().max(120).optional().nullable(),
|
|
4340
|
+
enabled: z30.boolean().optional(),
|
|
4341
|
+
cronExpression: z30.string().trim().min(1).optional().nullable(),
|
|
4342
|
+
timezone: z30.string().trim().min(1).optional().nullable(),
|
|
4343
|
+
signingMode: z30.enum(AUTOMATION_TRIGGER_SIGNING_MODES).optional().nullable(),
|
|
4344
|
+
replayWindowSec: z30.number().int().min(30).max(86400).optional().nullable()
|
|
4302
4345
|
});
|
|
4303
|
-
runAutomationSchema =
|
|
4304
|
-
triggerId:
|
|
4305
|
-
payload:
|
|
4306
|
-
idempotencyKey:
|
|
4307
|
-
source:
|
|
4346
|
+
runAutomationSchema = z30.object({
|
|
4347
|
+
triggerId: z30.string().uuid().optional().nullable(),
|
|
4348
|
+
payload: z30.record(z30.unknown()).optional().nullable(),
|
|
4349
|
+
idempotencyKey: z30.string().trim().max(255).optional().nullable(),
|
|
4350
|
+
source: z30.enum(["manual", "api"]).optional().default("manual")
|
|
4308
4351
|
});
|
|
4309
|
-
rotateAutomationTriggerSecretSchema =
|
|
4352
|
+
rotateAutomationTriggerSecretSchema = z30.object({});
|
|
4310
4353
|
}
|
|
4311
4354
|
});
|
|
4312
4355
|
|
|
4313
4356
|
// ../packages/shared/dist/validators/calendar.js
|
|
4314
|
-
import { z as
|
|
4357
|
+
import { z as z31 } from "zod";
|
|
4315
4358
|
var nullableUuid, createCalendarSourceSchema, updateCalendarSourceSchema, calendarEventBaseSchema, createCalendarEventSchema, updateCalendarEventSchema, calendarEventListQuerySchema, googleCalendarSyncSchema, updateGoogleCalendarOAuthConfigSchema;
|
|
4316
4359
|
var init_calendar = __esm({
|
|
4317
4360
|
"../packages/shared/dist/validators/calendar.js"() {
|
|
4318
4361
|
"use strict";
|
|
4319
4362
|
init_constants();
|
|
4320
|
-
nullableUuid =
|
|
4321
|
-
createCalendarSourceSchema =
|
|
4322
|
-
type:
|
|
4323
|
-
name:
|
|
4324
|
-
ownerType:
|
|
4325
|
-
ownerUserId:
|
|
4363
|
+
nullableUuid = z31.string().uuid().optional().nullable();
|
|
4364
|
+
createCalendarSourceSchema = z31.object({
|
|
4365
|
+
type: z31.enum(CALENDAR_SOURCE_TYPES).optional().default("rudder_local"),
|
|
4366
|
+
name: z31.string().trim().min(1).max(160),
|
|
4367
|
+
ownerType: z31.enum(CALENDAR_OWNER_TYPES).optional().default("user"),
|
|
4368
|
+
ownerUserId: z31.string().trim().min(1).optional().nullable(),
|
|
4326
4369
|
ownerAgentId: nullableUuid,
|
|
4327
|
-
externalProvider:
|
|
4328
|
-
externalCalendarId:
|
|
4329
|
-
visibilityDefault:
|
|
4330
|
-
status:
|
|
4331
|
-
syncCursorJson:
|
|
4370
|
+
externalProvider: z31.string().trim().min(1).max(80).optional().nullable(),
|
|
4371
|
+
externalCalendarId: z31.string().trim().min(1).max(512).optional().nullable(),
|
|
4372
|
+
visibilityDefault: z31.enum(CALENDAR_VISIBILITIES).optional().default("full"),
|
|
4373
|
+
status: z31.enum(CALENDAR_SOURCE_STATUSES).optional().default("active"),
|
|
4374
|
+
syncCursorJson: z31.record(z31.unknown()).optional().nullable()
|
|
4332
4375
|
});
|
|
4333
4376
|
updateCalendarSourceSchema = createCalendarSourceSchema.partial().extend({
|
|
4334
|
-
lastSyncedAt:
|
|
4377
|
+
lastSyncedAt: z31.coerce.date().optional().nullable()
|
|
4335
4378
|
});
|
|
4336
|
-
calendarEventBaseSchema =
|
|
4379
|
+
calendarEventBaseSchema = z31.object({
|
|
4337
4380
|
sourceId: nullableUuid,
|
|
4338
|
-
eventKind:
|
|
4339
|
-
eventStatus:
|
|
4340
|
-
ownerType:
|
|
4341
|
-
ownerUserId:
|
|
4381
|
+
eventKind: z31.enum(CALENDAR_EVENT_KINDS),
|
|
4382
|
+
eventStatus: z31.enum(CALENDAR_EVENT_STATUSES).optional().default("planned"),
|
|
4383
|
+
ownerType: z31.enum(CALENDAR_OWNER_TYPES),
|
|
4384
|
+
ownerUserId: z31.string().trim().min(1).optional().nullable(),
|
|
4342
4385
|
ownerAgentId: nullableUuid,
|
|
4343
|
-
title:
|
|
4344
|
-
description:
|
|
4345
|
-
startAt:
|
|
4346
|
-
endAt:
|
|
4347
|
-
timezone:
|
|
4348
|
-
allDay:
|
|
4349
|
-
visibility:
|
|
4386
|
+
title: z31.string().trim().min(1).max(240),
|
|
4387
|
+
description: z31.string().optional().nullable(),
|
|
4388
|
+
startAt: z31.coerce.date(),
|
|
4389
|
+
endAt: z31.coerce.date(),
|
|
4390
|
+
timezone: z31.string().trim().min(1).max(80).optional().default("UTC"),
|
|
4391
|
+
allDay: z31.boolean().optional().default(false),
|
|
4392
|
+
visibility: z31.enum(CALENDAR_VISIBILITIES).optional().default("full"),
|
|
4350
4393
|
issueId: nullableUuid,
|
|
4351
4394
|
projectId: nullableUuid,
|
|
4352
4395
|
goalId: nullableUuid,
|
|
4353
4396
|
approvalId: nullableUuid,
|
|
4354
4397
|
heartbeatRunId: nullableUuid,
|
|
4355
4398
|
activityId: nullableUuid,
|
|
4356
|
-
sourceMode:
|
|
4357
|
-
externalProvider:
|
|
4358
|
-
externalCalendarId:
|
|
4359
|
-
externalEventId:
|
|
4360
|
-
externalEtag:
|
|
4361
|
-
externalUpdatedAt:
|
|
4399
|
+
sourceMode: z31.enum(CALENDAR_SOURCE_MODES).optional().default("manual"),
|
|
4400
|
+
externalProvider: z31.string().trim().min(1).max(80).optional().nullable(),
|
|
4401
|
+
externalCalendarId: z31.string().trim().min(1).max(512).optional().nullable(),
|
|
4402
|
+
externalEventId: z31.string().trim().min(1).max(512).optional().nullable(),
|
|
4403
|
+
externalEtag: z31.string().trim().min(1).max(512).optional().nullable(),
|
|
4404
|
+
externalUpdatedAt: z31.coerce.date().optional().nullable()
|
|
4362
4405
|
});
|
|
4363
4406
|
createCalendarEventSchema = calendarEventBaseSchema.refine((value) => value.endAt.getTime() > value.startAt.getTime(), { path: ["endAt"], message: "End time must be after start time" });
|
|
4364
4407
|
updateCalendarEventSchema = calendarEventBaseSchema.partial().refine((value) => value.startAt === void 0 || value.endAt === void 0 || value.endAt.getTime() > value.startAt.getTime(), { path: ["endAt"], message: "End time must be after start time" });
|
|
4365
|
-
calendarEventListQuerySchema =
|
|
4366
|
-
start:
|
|
4367
|
-
end:
|
|
4368
|
-
agentIds:
|
|
4369
|
-
sourceIds:
|
|
4370
|
-
eventKinds:
|
|
4371
|
-
statuses:
|
|
4408
|
+
calendarEventListQuerySchema = z31.object({
|
|
4409
|
+
start: z31.coerce.date(),
|
|
4410
|
+
end: z31.coerce.date(),
|
|
4411
|
+
agentIds: z31.string().optional(),
|
|
4412
|
+
sourceIds: z31.string().optional(),
|
|
4413
|
+
eventKinds: z31.string().optional(),
|
|
4414
|
+
statuses: z31.string().optional()
|
|
4372
4415
|
}).refine((value) => value.end.getTime() > value.start.getTime(), { path: ["end"], message: "End time must be after start time" });
|
|
4373
|
-
googleCalendarSyncSchema =
|
|
4374
|
-
sourceId:
|
|
4416
|
+
googleCalendarSyncSchema = z31.object({
|
|
4417
|
+
sourceId: z31.string().uuid().optional().nullable()
|
|
4375
4418
|
});
|
|
4376
|
-
updateGoogleCalendarOAuthConfigSchema =
|
|
4377
|
-
clientId:
|
|
4378
|
-
clientSecret:
|
|
4379
|
-
clear:
|
|
4419
|
+
updateGoogleCalendarOAuthConfigSchema = z31.object({
|
|
4420
|
+
clientId: z31.string().trim().min(1).max(512).optional(),
|
|
4421
|
+
clientSecret: z31.string().trim().min(1).max(2048).optional(),
|
|
4422
|
+
clear: z31.boolean().optional().default(false)
|
|
4380
4423
|
}).refine((value) => value.clear || value.clientId !== void 0 || value.clientSecret !== void 0, { message: "Provide credentials or clear the stored Google Calendar OAuth configuration" });
|
|
4381
4424
|
}
|
|
4382
4425
|
});
|
|
4383
4426
|
|
|
4384
4427
|
// ../packages/shared/dist/validators/cost.js
|
|
4385
|
-
import { z as
|
|
4428
|
+
import { z as z32 } from "zod";
|
|
4386
4429
|
var createCostEventSchema, updateBudgetSchema;
|
|
4387
4430
|
var init_cost = __esm({
|
|
4388
4431
|
"../packages/shared/dist/validators/cost.js"() {
|
|
4389
4432
|
"use strict";
|
|
4390
4433
|
init_constants();
|
|
4391
|
-
createCostEventSchema =
|
|
4392
|
-
agentId:
|
|
4393
|
-
issueId:
|
|
4394
|
-
projectId:
|
|
4395
|
-
goalId:
|
|
4396
|
-
heartbeatRunId:
|
|
4397
|
-
billingCode:
|
|
4398
|
-
provider:
|
|
4399
|
-
biller:
|
|
4400
|
-
billingType:
|
|
4401
|
-
model:
|
|
4402
|
-
inputTokens:
|
|
4403
|
-
cachedInputTokens:
|
|
4404
|
-
outputTokens:
|
|
4405
|
-
costCents:
|
|
4406
|
-
occurredAt:
|
|
4434
|
+
createCostEventSchema = z32.object({
|
|
4435
|
+
agentId: z32.string().uuid(),
|
|
4436
|
+
issueId: z32.string().uuid().optional().nullable(),
|
|
4437
|
+
projectId: z32.string().uuid().optional().nullable(),
|
|
4438
|
+
goalId: z32.string().uuid().optional().nullable(),
|
|
4439
|
+
heartbeatRunId: z32.string().uuid().optional().nullable(),
|
|
4440
|
+
billingCode: z32.string().optional().nullable(),
|
|
4441
|
+
provider: z32.string().min(1),
|
|
4442
|
+
biller: z32.string().min(1).optional(),
|
|
4443
|
+
billingType: z32.enum(BILLING_TYPES).optional().default("unknown"),
|
|
4444
|
+
model: z32.string().min(1),
|
|
4445
|
+
inputTokens: z32.number().int().nonnegative().optional().default(0),
|
|
4446
|
+
cachedInputTokens: z32.number().int().nonnegative().optional().default(0),
|
|
4447
|
+
outputTokens: z32.number().int().nonnegative().optional().default(0),
|
|
4448
|
+
costCents: z32.number().int().nonnegative(),
|
|
4449
|
+
occurredAt: z32.string().datetime()
|
|
4407
4450
|
}).transform((value) => ({
|
|
4408
4451
|
...value,
|
|
4409
4452
|
biller: value.biller ?? value.provider
|
|
4410
4453
|
}));
|
|
4411
|
-
updateBudgetSchema =
|
|
4412
|
-
budgetMonthlyCents:
|
|
4454
|
+
updateBudgetSchema = z32.object({
|
|
4455
|
+
budgetMonthlyCents: z32.number().int().nonnegative()
|
|
4413
4456
|
});
|
|
4414
4457
|
}
|
|
4415
4458
|
});
|
|
4416
4459
|
|
|
4417
4460
|
// ../packages/shared/dist/validators/finance.js
|
|
4418
|
-
import { z as
|
|
4461
|
+
import { z as z33 } from "zod";
|
|
4419
4462
|
var createFinanceEventSchema;
|
|
4420
4463
|
var init_finance = __esm({
|
|
4421
4464
|
"../packages/shared/dist/validators/finance.js"() {
|
|
4422
4465
|
"use strict";
|
|
4423
4466
|
init_constants();
|
|
4424
|
-
createFinanceEventSchema =
|
|
4425
|
-
agentId:
|
|
4426
|
-
issueId:
|
|
4427
|
-
projectId:
|
|
4428
|
-
goalId:
|
|
4429
|
-
heartbeatRunId:
|
|
4430
|
-
costEventId:
|
|
4431
|
-
billingCode:
|
|
4432
|
-
description:
|
|
4433
|
-
eventKind:
|
|
4434
|
-
direction:
|
|
4435
|
-
biller:
|
|
4436
|
-
provider:
|
|
4437
|
-
executionAgentRuntimeType:
|
|
4438
|
-
pricingTier:
|
|
4439
|
-
region:
|
|
4440
|
-
model:
|
|
4441
|
-
quantity:
|
|
4442
|
-
unit:
|
|
4443
|
-
amountCents:
|
|
4444
|
-
currency:
|
|
4445
|
-
estimated:
|
|
4446
|
-
externalInvoiceId:
|
|
4447
|
-
metadataJson:
|
|
4448
|
-
occurredAt:
|
|
4467
|
+
createFinanceEventSchema = z33.object({
|
|
4468
|
+
agentId: z33.string().uuid().optional().nullable(),
|
|
4469
|
+
issueId: z33.string().uuid().optional().nullable(),
|
|
4470
|
+
projectId: z33.string().uuid().optional().nullable(),
|
|
4471
|
+
goalId: z33.string().uuid().optional().nullable(),
|
|
4472
|
+
heartbeatRunId: z33.string().uuid().optional().nullable(),
|
|
4473
|
+
costEventId: z33.string().uuid().optional().nullable(),
|
|
4474
|
+
billingCode: z33.string().optional().nullable(),
|
|
4475
|
+
description: z33.string().max(500).optional().nullable(),
|
|
4476
|
+
eventKind: z33.enum(FINANCE_EVENT_KINDS),
|
|
4477
|
+
direction: z33.enum(FINANCE_DIRECTIONS).optional().default("debit"),
|
|
4478
|
+
biller: z33.string().min(1),
|
|
4479
|
+
provider: z33.string().min(1).optional().nullable(),
|
|
4480
|
+
executionAgentRuntimeType: z33.enum(AGENT_RUNTIME_TYPES).optional().nullable(),
|
|
4481
|
+
pricingTier: z33.string().min(1).optional().nullable(),
|
|
4482
|
+
region: z33.string().min(1).optional().nullable(),
|
|
4483
|
+
model: z33.string().min(1).optional().nullable(),
|
|
4484
|
+
quantity: z33.number().int().nonnegative().optional().nullable(),
|
|
4485
|
+
unit: z33.enum(FINANCE_UNITS).optional().nullable(),
|
|
4486
|
+
amountCents: z33.number().int().nonnegative(),
|
|
4487
|
+
currency: z33.string().length(3).optional().default("USD"),
|
|
4488
|
+
estimated: z33.boolean().optional().default(false),
|
|
4489
|
+
externalInvoiceId: z33.string().optional().nullable(),
|
|
4490
|
+
metadataJson: z33.record(z33.string(), z33.unknown()).optional().nullable(),
|
|
4491
|
+
occurredAt: z33.string().datetime()
|
|
4449
4492
|
}).transform((value) => ({
|
|
4450
4493
|
...value,
|
|
4451
4494
|
currency: value.currency.toUpperCase()
|
|
@@ -4454,127 +4497,127 @@ var init_finance = __esm({
|
|
|
4454
4497
|
});
|
|
4455
4498
|
|
|
4456
4499
|
// ../packages/shared/dist/validators/asset.js
|
|
4457
|
-
import { z as
|
|
4500
|
+
import { z as z34 } from "zod";
|
|
4458
4501
|
var createAssetImageMetadataSchema;
|
|
4459
4502
|
var init_asset = __esm({
|
|
4460
4503
|
"../packages/shared/dist/validators/asset.js"() {
|
|
4461
4504
|
"use strict";
|
|
4462
|
-
createAssetImageMetadataSchema =
|
|
4463
|
-
namespace:
|
|
4505
|
+
createAssetImageMetadataSchema = z34.object({
|
|
4506
|
+
namespace: z34.string().trim().min(1).max(120).regex(/^[a-zA-Z0-9/_-]+$/).optional()
|
|
4464
4507
|
});
|
|
4465
4508
|
}
|
|
4466
4509
|
});
|
|
4467
4510
|
|
|
4468
4511
|
// ../packages/shared/dist/validators/access.js
|
|
4469
|
-
import { z as
|
|
4512
|
+
import { z as z35 } from "zod";
|
|
4470
4513
|
var createCompanyInviteSchema, createOpenClawInvitePromptSchema, acceptInviteSchema, listJoinRequestsQuerySchema, claimJoinRequestApiKeySchema, boardCliAuthAccessLevelSchema, createCliAuthChallengeSchema, resolveCliAuthChallengeSchema, updateMemberPermissionsSchema, updateUserCompanyAccessSchema;
|
|
4471
4514
|
var init_access = __esm({
|
|
4472
4515
|
"../packages/shared/dist/validators/access.js"() {
|
|
4473
4516
|
"use strict";
|
|
4474
4517
|
init_constants();
|
|
4475
|
-
createCompanyInviteSchema =
|
|
4476
|
-
allowedJoinTypes:
|
|
4477
|
-
defaultsPayload:
|
|
4478
|
-
agentMessage:
|
|
4518
|
+
createCompanyInviteSchema = z35.object({
|
|
4519
|
+
allowedJoinTypes: z35.enum(INVITE_JOIN_TYPES).default("both"),
|
|
4520
|
+
defaultsPayload: z35.record(z35.string(), z35.unknown()).optional().nullable(),
|
|
4521
|
+
agentMessage: z35.string().max(4e3).optional().nullable()
|
|
4479
4522
|
});
|
|
4480
|
-
createOpenClawInvitePromptSchema =
|
|
4481
|
-
agentMessage:
|
|
4523
|
+
createOpenClawInvitePromptSchema = z35.object({
|
|
4524
|
+
agentMessage: z35.string().max(4e3).optional().nullable()
|
|
4482
4525
|
});
|
|
4483
|
-
acceptInviteSchema =
|
|
4484
|
-
requestType:
|
|
4485
|
-
agentName:
|
|
4486
|
-
agentRuntimeType:
|
|
4487
|
-
capabilities:
|
|
4488
|
-
agentDefaultsPayload:
|
|
4526
|
+
acceptInviteSchema = z35.object({
|
|
4527
|
+
requestType: z35.enum(JOIN_REQUEST_TYPES),
|
|
4528
|
+
agentName: z35.string().min(1).max(120).optional(),
|
|
4529
|
+
agentRuntimeType: z35.enum(AGENT_RUNTIME_TYPES).optional(),
|
|
4530
|
+
capabilities: z35.string().max(4e3).optional().nullable(),
|
|
4531
|
+
agentDefaultsPayload: z35.record(z35.string(), z35.unknown()).optional().nullable(),
|
|
4489
4532
|
// OpenClaw join compatibility fields accepted at top level.
|
|
4490
|
-
responsesWebhookUrl:
|
|
4491
|
-
responsesWebhookMethod:
|
|
4492
|
-
responsesWebhookHeaders:
|
|
4493
|
-
rudderApiUrl:
|
|
4494
|
-
webhookAuthHeader:
|
|
4533
|
+
responsesWebhookUrl: z35.string().max(4e3).optional().nullable(),
|
|
4534
|
+
responsesWebhookMethod: z35.string().max(32).optional().nullable(),
|
|
4535
|
+
responsesWebhookHeaders: z35.record(z35.string(), z35.unknown()).optional().nullable(),
|
|
4536
|
+
rudderApiUrl: z35.string().max(4e3).optional().nullable(),
|
|
4537
|
+
webhookAuthHeader: z35.string().max(4e3).optional().nullable()
|
|
4495
4538
|
});
|
|
4496
|
-
listJoinRequestsQuerySchema =
|
|
4497
|
-
status:
|
|
4498
|
-
requestType:
|
|
4539
|
+
listJoinRequestsQuerySchema = z35.object({
|
|
4540
|
+
status: z35.enum(JOIN_REQUEST_STATUSES).optional(),
|
|
4541
|
+
requestType: z35.enum(JOIN_REQUEST_TYPES).optional()
|
|
4499
4542
|
});
|
|
4500
|
-
claimJoinRequestApiKeySchema =
|
|
4501
|
-
claimSecret:
|
|
4543
|
+
claimJoinRequestApiKeySchema = z35.object({
|
|
4544
|
+
claimSecret: z35.string().min(16).max(256)
|
|
4502
4545
|
});
|
|
4503
|
-
boardCliAuthAccessLevelSchema =
|
|
4546
|
+
boardCliAuthAccessLevelSchema = z35.enum([
|
|
4504
4547
|
"board",
|
|
4505
4548
|
"instance_admin_required"
|
|
4506
4549
|
]);
|
|
4507
|
-
createCliAuthChallengeSchema =
|
|
4508
|
-
command:
|
|
4509
|
-
clientName:
|
|
4550
|
+
createCliAuthChallengeSchema = z35.object({
|
|
4551
|
+
command: z35.string().min(1).max(240),
|
|
4552
|
+
clientName: z35.string().max(120).optional().nullable(),
|
|
4510
4553
|
requestedAccess: boardCliAuthAccessLevelSchema.default("board"),
|
|
4511
|
-
requestedCompanyId:
|
|
4554
|
+
requestedCompanyId: z35.string().uuid().optional().nullable()
|
|
4512
4555
|
});
|
|
4513
|
-
resolveCliAuthChallengeSchema =
|
|
4514
|
-
token:
|
|
4556
|
+
resolveCliAuthChallengeSchema = z35.object({
|
|
4557
|
+
token: z35.string().min(16).max(256)
|
|
4515
4558
|
});
|
|
4516
|
-
updateMemberPermissionsSchema =
|
|
4517
|
-
grants:
|
|
4518
|
-
permissionKey:
|
|
4519
|
-
scope:
|
|
4559
|
+
updateMemberPermissionsSchema = z35.object({
|
|
4560
|
+
grants: z35.array(z35.object({
|
|
4561
|
+
permissionKey: z35.enum(PERMISSION_KEYS),
|
|
4562
|
+
scope: z35.record(z35.string(), z35.unknown()).optional().nullable()
|
|
4520
4563
|
}))
|
|
4521
4564
|
});
|
|
4522
|
-
updateUserCompanyAccessSchema =
|
|
4523
|
-
orgIds:
|
|
4565
|
+
updateUserCompanyAccessSchema = z35.object({
|
|
4566
|
+
orgIds: z35.array(z35.string().uuid()).default([])
|
|
4524
4567
|
});
|
|
4525
4568
|
}
|
|
4526
4569
|
});
|
|
4527
4570
|
|
|
4528
4571
|
// ../packages/shared/dist/validators/plugin-v1.js
|
|
4529
|
-
import { z as
|
|
4572
|
+
import { z as z36 } from "zod";
|
|
4530
4573
|
var rudderPluginPackageFileSchema, inspectRudderPluginSchema, inspectRudderPluginArchiveSchema, configureRudderPluginMarketplaceSchema, installRudderPluginSchema, updateRudderPluginEnablementSchema, configureRudderPluginSkillsSchema, configureRudderPluginMcpSchema, customizeRudderPluginSkillSchema;
|
|
4531
4574
|
var init_plugin_v1 = __esm({
|
|
4532
4575
|
"../packages/shared/dist/validators/plugin-v1.js"() {
|
|
4533
4576
|
"use strict";
|
|
4534
|
-
rudderPluginPackageFileSchema =
|
|
4535
|
-
path:
|
|
4536
|
-
content:
|
|
4537
|
-
encoding:
|
|
4577
|
+
rudderPluginPackageFileSchema = z36.object({
|
|
4578
|
+
path: z36.string().min(1).max(1024),
|
|
4579
|
+
content: z36.string().max(14e6),
|
|
4580
|
+
encoding: z36.enum(["utf8", "base64"]).optional().default("utf8")
|
|
4538
4581
|
}).strict();
|
|
4539
|
-
inspectRudderPluginSchema =
|
|
4540
|
-
sourceLabel:
|
|
4541
|
-
sourceType:
|
|
4542
|
-
files:
|
|
4582
|
+
inspectRudderPluginSchema = z36.object({
|
|
4583
|
+
sourceLabel: z36.string().trim().min(1).max(240),
|
|
4584
|
+
sourceType: z36.literal("local_upload").optional().default("local_upload"),
|
|
4585
|
+
files: z36.array(rudderPluginPackageFileSchema).min(1).max(500)
|
|
4543
4586
|
}).strict();
|
|
4544
|
-
inspectRudderPluginArchiveSchema =
|
|
4545
|
-
sourceLabel:
|
|
4546
|
-
filename:
|
|
4547
|
-
content:
|
|
4548
|
-
encoding:
|
|
4587
|
+
inspectRudderPluginArchiveSchema = z36.object({
|
|
4588
|
+
sourceLabel: z36.string().trim().min(1).max(240),
|
|
4589
|
+
filename: z36.string().trim().min(1).max(240).refine((value) => /\.zip$/i.test(value), "Only ZIP Plugin archives are supported"),
|
|
4590
|
+
content: z36.string().min(1).max(14e6),
|
|
4591
|
+
encoding: z36.literal("base64")
|
|
4549
4592
|
}).strict();
|
|
4550
|
-
configureRudderPluginMarketplaceSchema =
|
|
4551
|
-
sourceLabel:
|
|
4552
|
-
files:
|
|
4553
|
-
github:
|
|
4554
|
-
repository:
|
|
4555
|
-
commit:
|
|
4593
|
+
configureRudderPluginMarketplaceSchema = z36.object({
|
|
4594
|
+
sourceLabel: z36.string().trim().min(1).max(240),
|
|
4595
|
+
files: z36.array(rudderPluginPackageFileSchema).min(1).max(500).optional(),
|
|
4596
|
+
github: z36.object({
|
|
4597
|
+
repository: z36.string().url().max(500),
|
|
4598
|
+
commit: z36.string().regex(/^[0-9a-f]{40}$/i, "A full 40-character Git commit SHA is required")
|
|
4556
4599
|
}).strict().optional()
|
|
4557
4600
|
}).strict().superRefine((value, ctx) => {
|
|
4558
4601
|
if (Boolean(value.files) === Boolean(value.github)) {
|
|
4559
|
-
ctx.addIssue({ code:
|
|
4602
|
+
ctx.addIssue({ code: z36.ZodIssueCode.custom, message: "Provide exactly one local marketplace folder or pinned GitHub marketplace" });
|
|
4560
4603
|
}
|
|
4561
4604
|
});
|
|
4562
|
-
installRudderPluginSchema =
|
|
4563
|
-
enabled:
|
|
4564
|
-
confirmAccessExpansion:
|
|
4565
|
-
skillConflictStrategy:
|
|
4605
|
+
installRudderPluginSchema = z36.object({
|
|
4606
|
+
enabled: z36.boolean().optional().default(true),
|
|
4607
|
+
confirmAccessExpansion: z36.boolean().optional().default(false),
|
|
4608
|
+
skillConflictStrategy: z36.enum(["keep", "replace", "rename"]).optional()
|
|
4566
4609
|
}).strict();
|
|
4567
|
-
updateRudderPluginEnablementSchema =
|
|
4568
|
-
enabled:
|
|
4610
|
+
updateRudderPluginEnablementSchema = z36.object({
|
|
4611
|
+
enabled: z36.boolean()
|
|
4569
4612
|
}).strict();
|
|
4570
|
-
configureRudderPluginSkillsSchema =
|
|
4571
|
-
agentIds:
|
|
4613
|
+
configureRudderPluginSkillsSchema = z36.object({
|
|
4614
|
+
agentIds: z36.array(z36.string().uuid()).max(100)
|
|
4572
4615
|
}).strict();
|
|
4573
|
-
configureRudderPluginMcpSchema =
|
|
4574
|
-
componentId:
|
|
4616
|
+
configureRudderPluginMcpSchema = z36.object({
|
|
4617
|
+
componentId: z36.string().uuid()
|
|
4575
4618
|
}).strict();
|
|
4576
|
-
customizeRudderPluginSkillSchema =
|
|
4577
|
-
componentId:
|
|
4619
|
+
customizeRudderPluginSkillSchema = z36.object({
|
|
4620
|
+
componentId: z36.string().uuid()
|
|
4578
4621
|
}).strict();
|
|
4579
4622
|
}
|
|
4580
4623
|
});
|
|
@@ -4607,6 +4650,7 @@ var init_validators = __esm({
|
|
|
4607
4650
|
init_workspace_backup2();
|
|
4608
4651
|
init_goal();
|
|
4609
4652
|
init_approval();
|
|
4653
|
+
init_request();
|
|
4610
4654
|
init_secret();
|
|
4611
4655
|
init_automation();
|
|
4612
4656
|
init_calendar();
|
|
@@ -4650,6 +4694,7 @@ var init_api = __esm({
|
|
|
4650
4694
|
calendar: `${API_PREFIX}/calendar`,
|
|
4651
4695
|
goals: `${API_PREFIX}/goals`,
|
|
4652
4696
|
approvals: `${API_PREFIX}/approvals`,
|
|
4697
|
+
requests: `${API_PREFIX}/requests`,
|
|
4653
4698
|
secrets: `${API_PREFIX}/secrets`,
|
|
4654
4699
|
costs: `${API_PREFIX}/costs`,
|
|
4655
4700
|
activity: `${API_PREFIX}/activity`,
|
|
@@ -4780,34 +4825,34 @@ var init_issue_activity = __esm({
|
|
|
4780
4825
|
});
|
|
4781
4826
|
|
|
4782
4827
|
// ../packages/shared/dist/config-schema.js
|
|
4783
|
-
import { z as
|
|
4828
|
+
import { z as z37 } from "zod";
|
|
4784
4829
|
var DEFAULT_DATABASE_BACKUP_MAX_ESTIMATED_BYTES, configMetaSchema, llmConfigSchema, databaseBackupConfigSchema, databaseConfigSchema, loggingConfigSchema, serverConfigSchema, authConfigSchema, storageLocalDiskConfigSchema, storageS3ConfigSchema, storageConfigSchema, secretsLocalEncryptedConfigSchema, secretsConfigSchema, rudderConfigSchema;
|
|
4785
4830
|
var init_config_schema = __esm({
|
|
4786
4831
|
"../packages/shared/dist/config-schema.js"() {
|
|
4787
4832
|
"use strict";
|
|
4788
4833
|
init_constants();
|
|
4789
4834
|
DEFAULT_DATABASE_BACKUP_MAX_ESTIMATED_BYTES = 256 * 1024 * 1024;
|
|
4790
|
-
configMetaSchema =
|
|
4791
|
-
version:
|
|
4792
|
-
updatedAt:
|
|
4793
|
-
source:
|
|
4835
|
+
configMetaSchema = z37.object({
|
|
4836
|
+
version: z37.literal(1),
|
|
4837
|
+
updatedAt: z37.string(),
|
|
4838
|
+
source: z37.enum(["onboard", "configure", "doctor"])
|
|
4794
4839
|
});
|
|
4795
|
-
llmConfigSchema =
|
|
4796
|
-
provider:
|
|
4797
|
-
apiKey:
|
|
4840
|
+
llmConfigSchema = z37.object({
|
|
4841
|
+
provider: z37.enum(["claude", "openai"]),
|
|
4842
|
+
apiKey: z37.string().optional()
|
|
4798
4843
|
});
|
|
4799
|
-
databaseBackupConfigSchema =
|
|
4800
|
-
enabled:
|
|
4801
|
-
intervalMinutes:
|
|
4802
|
-
retentionDays:
|
|
4803
|
-
maxEstimatedBytes:
|
|
4804
|
-
dir:
|
|
4844
|
+
databaseBackupConfigSchema = z37.object({
|
|
4845
|
+
enabled: z37.boolean().default(true),
|
|
4846
|
+
intervalMinutes: z37.number().int().min(1).max(7 * 24 * 60).default(60),
|
|
4847
|
+
retentionDays: z37.number().int().min(1).max(3650).default(30),
|
|
4848
|
+
maxEstimatedBytes: z37.number().int().min(1).default(DEFAULT_DATABASE_BACKUP_MAX_ESTIMATED_BYTES),
|
|
4849
|
+
dir: z37.string().default("~/.rudder/instances/default/data/backups")
|
|
4805
4850
|
});
|
|
4806
|
-
databaseConfigSchema =
|
|
4807
|
-
mode:
|
|
4808
|
-
connectionString:
|
|
4809
|
-
embeddedPostgresDataDir:
|
|
4810
|
-
embeddedPostgresPort:
|
|
4851
|
+
databaseConfigSchema = z37.object({
|
|
4852
|
+
mode: z37.enum(["embedded-postgres", "postgres"]).default("embedded-postgres"),
|
|
4853
|
+
connectionString: z37.string().optional(),
|
|
4854
|
+
embeddedPostgresDataDir: z37.string().default("~/.rudder/instances/default/db"),
|
|
4855
|
+
embeddedPostgresPort: z37.number().int().min(1).max(65535).default(54329),
|
|
4811
4856
|
backup: databaseBackupConfigSchema.default({
|
|
4812
4857
|
enabled: true,
|
|
4813
4858
|
intervalMinutes: 60,
|
|
@@ -4816,35 +4861,35 @@ var init_config_schema = __esm({
|
|
|
4816
4861
|
dir: "~/.rudder/instances/default/data/backups"
|
|
4817
4862
|
})
|
|
4818
4863
|
});
|
|
4819
|
-
loggingConfigSchema =
|
|
4820
|
-
mode:
|
|
4821
|
-
logDir:
|
|
4864
|
+
loggingConfigSchema = z37.object({
|
|
4865
|
+
mode: z37.enum(["file", "cloud"]),
|
|
4866
|
+
logDir: z37.string().default("~/.rudder/instances/default/logs")
|
|
4822
4867
|
});
|
|
4823
|
-
serverConfigSchema =
|
|
4824
|
-
deploymentMode:
|
|
4825
|
-
exposure:
|
|
4826
|
-
host:
|
|
4827
|
-
port:
|
|
4828
|
-
allowedHostnames:
|
|
4829
|
-
serveUi:
|
|
4868
|
+
serverConfigSchema = z37.object({
|
|
4869
|
+
deploymentMode: z37.enum(DEPLOYMENT_MODES).default("local_trusted"),
|
|
4870
|
+
exposure: z37.enum(DEPLOYMENT_EXPOSURES).default("private"),
|
|
4871
|
+
host: z37.string().default("127.0.0.1"),
|
|
4872
|
+
port: z37.number().int().min(1).max(65535).default(3100),
|
|
4873
|
+
allowedHostnames: z37.array(z37.string().min(1)).default([]),
|
|
4874
|
+
serveUi: z37.boolean().default(true)
|
|
4830
4875
|
});
|
|
4831
|
-
authConfigSchema =
|
|
4832
|
-
baseUrlMode:
|
|
4833
|
-
publicBaseUrl:
|
|
4834
|
-
disableSignUp:
|
|
4876
|
+
authConfigSchema = z37.object({
|
|
4877
|
+
baseUrlMode: z37.enum(AUTH_BASE_URL_MODES).default("auto"),
|
|
4878
|
+
publicBaseUrl: z37.string().url().optional(),
|
|
4879
|
+
disableSignUp: z37.boolean().default(false)
|
|
4835
4880
|
});
|
|
4836
|
-
storageLocalDiskConfigSchema =
|
|
4837
|
-
baseDir:
|
|
4881
|
+
storageLocalDiskConfigSchema = z37.object({
|
|
4882
|
+
baseDir: z37.string().default("~/.rudder/instances/default/data/storage")
|
|
4838
4883
|
});
|
|
4839
|
-
storageS3ConfigSchema =
|
|
4840
|
-
bucket:
|
|
4841
|
-
region:
|
|
4842
|
-
endpoint:
|
|
4843
|
-
prefix:
|
|
4844
|
-
forcePathStyle:
|
|
4884
|
+
storageS3ConfigSchema = z37.object({
|
|
4885
|
+
bucket: z37.string().min(1).default("rudder"),
|
|
4886
|
+
region: z37.string().min(1).default("us-east-1"),
|
|
4887
|
+
endpoint: z37.string().optional(),
|
|
4888
|
+
prefix: z37.string().default(""),
|
|
4889
|
+
forcePathStyle: z37.boolean().default(false)
|
|
4845
4890
|
});
|
|
4846
|
-
storageConfigSchema =
|
|
4847
|
-
provider:
|
|
4891
|
+
storageConfigSchema = z37.object({
|
|
4892
|
+
provider: z37.enum(STORAGE_PROVIDERS).default("local_disk"),
|
|
4848
4893
|
localDisk: storageLocalDiskConfigSchema.default({
|
|
4849
4894
|
baseDir: "~/.rudder/instances/default/data/storage"
|
|
4850
4895
|
}),
|
|
@@ -4855,17 +4900,17 @@ var init_config_schema = __esm({
|
|
|
4855
4900
|
forcePathStyle: false
|
|
4856
4901
|
})
|
|
4857
4902
|
});
|
|
4858
|
-
secretsLocalEncryptedConfigSchema =
|
|
4859
|
-
keyFilePath:
|
|
4903
|
+
secretsLocalEncryptedConfigSchema = z37.object({
|
|
4904
|
+
keyFilePath: z37.string().default("~/.rudder/instances/default/secrets/master.key")
|
|
4860
4905
|
});
|
|
4861
|
-
secretsConfigSchema =
|
|
4862
|
-
provider:
|
|
4863
|
-
strictMode:
|
|
4906
|
+
secretsConfigSchema = z37.object({
|
|
4907
|
+
provider: z37.enum(SECRET_PROVIDERS).default("local_encrypted"),
|
|
4908
|
+
strictMode: z37.boolean().default(false),
|
|
4864
4909
|
localEncrypted: secretsLocalEncryptedConfigSchema.default({
|
|
4865
4910
|
keyFilePath: "~/.rudder/instances/default/secrets/master.key"
|
|
4866
4911
|
})
|
|
4867
4912
|
});
|
|
4868
|
-
rudderConfigSchema =
|
|
4913
|
+
rudderConfigSchema = z37.object({
|
|
4869
4914
|
$meta: configMetaSchema,
|
|
4870
4915
|
llm: llmConfigSchema.optional(),
|
|
4871
4916
|
database: databaseConfigSchema,
|
|
@@ -4898,7 +4943,7 @@ var init_config_schema = __esm({
|
|
|
4898
4943
|
if (value.server.deploymentMode === "local_trusted") {
|
|
4899
4944
|
if (value.server.exposure !== "private") {
|
|
4900
4945
|
ctx.addIssue({
|
|
4901
|
-
code:
|
|
4946
|
+
code: z37.ZodIssueCode.custom,
|
|
4902
4947
|
message: "server.exposure must be private when deploymentMode is local_trusted",
|
|
4903
4948
|
path: ["server", "exposure"]
|
|
4904
4949
|
});
|
|
@@ -4907,21 +4952,21 @@ var init_config_schema = __esm({
|
|
|
4907
4952
|
}
|
|
4908
4953
|
if (value.auth.baseUrlMode === "explicit" && !value.auth.publicBaseUrl) {
|
|
4909
4954
|
ctx.addIssue({
|
|
4910
|
-
code:
|
|
4955
|
+
code: z37.ZodIssueCode.custom,
|
|
4911
4956
|
message: "auth.publicBaseUrl is required when auth.baseUrlMode is explicit",
|
|
4912
4957
|
path: ["auth", "publicBaseUrl"]
|
|
4913
4958
|
});
|
|
4914
4959
|
}
|
|
4915
4960
|
if (value.server.exposure === "public" && value.auth.baseUrlMode !== "explicit") {
|
|
4916
4961
|
ctx.addIssue({
|
|
4917
|
-
code:
|
|
4962
|
+
code: z37.ZodIssueCode.custom,
|
|
4918
4963
|
message: "auth.baseUrlMode must be explicit when deploymentMode=authenticated and exposure=public",
|
|
4919
4964
|
path: ["auth", "baseUrlMode"]
|
|
4920
4965
|
});
|
|
4921
4966
|
}
|
|
4922
4967
|
if (value.server.exposure === "public" && !value.auth.publicBaseUrl) {
|
|
4923
4968
|
ctx.addIssue({
|
|
4924
|
-
code:
|
|
4969
|
+
code: z37.ZodIssueCode.custom,
|
|
4925
4970
|
message: "auth.publicBaseUrl is required when deploymentMode=authenticated and exposure=public",
|
|
4926
4971
|
path: ["auth", "publicBaseUrl"]
|
|
4927
4972
|
});
|
|
@@ -4965,6 +5010,7 @@ var init_dist = __esm({
|
|
|
4965
5010
|
init_project_url_key();
|
|
4966
5011
|
init_short_refs();
|
|
4967
5012
|
init_token_usage();
|
|
5013
|
+
init_request();
|
|
4968
5014
|
init_chat_transcript_visibility();
|
|
4969
5015
|
init_issue_activity();
|
|
4970
5016
|
init_config_schema();
|
|
@@ -9308,7 +9354,7 @@ var RUDDER_MCP_TOOL_DESCRIPTORS = [
|
|
|
9308
9354
|
{
|
|
9309
9355
|
"capabilityId": "issue.block",
|
|
9310
9356
|
"name": "rudder_issue_block",
|
|
9311
|
-
"description": "
|
|
9357
|
+
"description": "Request human assistance after bounded recovery attempts; repeated matching claims are audited before the Issue becomes blocked.",
|
|
9312
9358
|
"mutating": true,
|
|
9313
9359
|
"requiresOrgId": false,
|
|
9314
9360
|
"requiresAgentId": false,
|
|
@@ -11026,7 +11072,7 @@ var AGENT_CLI_CAPABILITIES = [
|
|
|
11026
11072
|
id: "issue.block",
|
|
11027
11073
|
command: "rudder issue block <issue> --comment-file <path> [--image <path>]",
|
|
11028
11074
|
category: "issue",
|
|
11029
|
-
description: "
|
|
11075
|
+
description: "Request human assistance after bounded recovery attempts; repeated matching claims are audited before the Issue becomes blocked.",
|
|
11030
11076
|
mutating: true,
|
|
11031
11077
|
contract: "agent-v1",
|
|
11032
11078
|
requiresOrgId: false,
|
|
@@ -14800,7 +14846,7 @@ var RUDDER_AGENT_HEARTBEAT_INSTRUCTION = [
|
|
|
14800
14846
|
"4. Inspect your Rudder inbox. Prioritize reviewer rows in `in_review` or `blocked`, then assignee `in_progress`, then assignee `todo`. Do not look for unassigned work.",
|
|
14801
14847
|
"5. For mention wakes, read the wake comment before acting. Mentions request attention; they do not transfer ownership unless the comment explicitly says so. If the issue is not assigned to you, including user-owned or unassigned issues, and the comment does not explicitly ask you to implement, modify files, close the issue, or take ownership, respond to the comment itself instead of executing the whole issue.",
|
|
14802
14848
|
"6. Load compact issue context, do one bounded useful chunk, and preserve evidence.",
|
|
14803
|
-
"7. Before exiting active work, leave exactly one durable signal: progress, done,
|
|
14849
|
+
"7. Complete the real task. When an action fails, investigate and try a bounded materially different recovery path before requesting human help. Before exiting active work, leave exactly one durable signal: progress, done, a blocker claim with the exact human input/action required, explicit handoff, or structured review decision. Rudder audits repeated blocker claims; the first claim does not directly establish a blocked Issue.",
|
|
14804
14850
|
"8. Treat passive follow-up as issue follow-up, not a fresh assignment.",
|
|
14805
14851
|
"9. Treat review close-out follow-up as review follow-up; free-form accept/reject text is not a durable decision.",
|
|
14806
14852
|
"",
|