@alook/cli 0.1.2 → 0.1.4
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 +1469 -1263
- package/dist/session-runner.js +1418 -1212
- package/package.json +1 -1
package/dist/session-runner.js
CHANGED
|
@@ -97,88 +97,6 @@ import { mkdir, writeFile, rm, rename } from "fs/promises";
|
|
|
97
97
|
import { mkdirSync as mkdirSync5 } from "fs";
|
|
98
98
|
import path from "path";
|
|
99
99
|
|
|
100
|
-
// ../shared/src/constants.ts
|
|
101
|
-
var TaskStatus = {
|
|
102
|
-
QUEUED: "queued",
|
|
103
|
-
DISPATCHED: "dispatched",
|
|
104
|
-
RUNNING: "running",
|
|
105
|
-
COMPLETED: "completed",
|
|
106
|
-
FAILED: "failed",
|
|
107
|
-
CANCELLED: "cancelled",
|
|
108
|
-
SUPERSEDED: "superseded"
|
|
109
|
-
};
|
|
110
|
-
var TERMINAL_TASK_STATUSES = [
|
|
111
|
-
TaskStatus.COMPLETED,
|
|
112
|
-
TaskStatus.FAILED,
|
|
113
|
-
TaskStatus.CANCELLED,
|
|
114
|
-
TaskStatus.SUPERSEDED
|
|
115
|
-
];
|
|
116
|
-
var TASK_TYPES = {
|
|
117
|
-
USER_DM_MESSAGE: "user_dm_message",
|
|
118
|
-
EMAIL_NOTIFICATION: "email_notification",
|
|
119
|
-
CALENDAR_EVENT: "calendar_event",
|
|
120
|
-
ISSUE_EVENT: "issue_event",
|
|
121
|
-
KILL_TASK: "kill_task"
|
|
122
|
-
};
|
|
123
|
-
var IssueStatus = {
|
|
124
|
-
TODO: "todo",
|
|
125
|
-
IN_PROGRESS: "in_progress",
|
|
126
|
-
REVIEW: "review",
|
|
127
|
-
DONE: "done",
|
|
128
|
-
CLOSED: "closed",
|
|
129
|
-
CANCELED: "canceled",
|
|
130
|
-
FAILED: "failed"
|
|
131
|
-
};
|
|
132
|
-
var ACTIVE_ISSUE_STATUSES = [
|
|
133
|
-
IssueStatus.TODO,
|
|
134
|
-
IssueStatus.IN_PROGRESS,
|
|
135
|
-
IssueStatus.REVIEW
|
|
136
|
-
];
|
|
137
|
-
var TERMINAL_ISSUE_STATUSES = [
|
|
138
|
-
IssueStatus.DONE,
|
|
139
|
-
IssueStatus.CLOSED,
|
|
140
|
-
IssueStatus.CANCELED,
|
|
141
|
-
IssueStatus.FAILED
|
|
142
|
-
];
|
|
143
|
-
var POLL_INTERVAL_MS = Number(process.env.POLL_INTERVAL_MS) || 3000;
|
|
144
|
-
var OFFLINE_THRESHOLD_MS = Number(process.env.OFFLINE_THRESHOLD_MS) || 30000;
|
|
145
|
-
var COMMUNITY_MACHINE_HEARTBEAT_MS = 30000;
|
|
146
|
-
var COMMUNITY_MACHINE_OFFLINE_THRESHOLD_MS = 3 * COMMUNITY_MACHINE_HEARTBEAT_MS;
|
|
147
|
-
var COMMUNITY_MACHINE_PAIR_TOKEN_TTL_MS = 15 * 60000;
|
|
148
|
-
var EVENT_POLL_INTERVAL_MS = Number(process.env.EVENT_POLL_INTERVAL_MS) || 2000;
|
|
149
|
-
var MeetingStatus = {
|
|
150
|
-
PENDING: "pending",
|
|
151
|
-
SCHEDULED: "scheduled",
|
|
152
|
-
JOINING: "joining",
|
|
153
|
-
RECORDING: "recording",
|
|
154
|
-
COMPLETED: "completed",
|
|
155
|
-
FAILED: "failed"
|
|
156
|
-
};
|
|
157
|
-
var TERMINAL_MEETING_STATUSES = [
|
|
158
|
-
MeetingStatus.COMPLETED,
|
|
159
|
-
MeetingStatus.FAILED
|
|
160
|
-
];
|
|
161
|
-
var COMMUNITY_BOT_NAME_MIN = 1;
|
|
162
|
-
var COMMUNITY_BOT_NAME_MAX = 32;
|
|
163
|
-
var COMMUNITY_BOT_DESCRIPTION_MAX = 1024;
|
|
164
|
-
var COMMUNITY_BOT_IMAGE_URL_MAX = 2048;
|
|
165
|
-
var DEV_PORTS = {
|
|
166
|
-
web: 3000,
|
|
167
|
-
emailWorker: 8787,
|
|
168
|
-
wsDo: 8789,
|
|
169
|
-
wakeWorker: 8790
|
|
170
|
-
};
|
|
171
|
-
var DEV_WEB_URL = process.env.ALOOK_SERVER_URL || `http://localhost:${DEV_PORTS.web}`;
|
|
172
|
-
var DEV_WS_DO_URL = process.env.DEV_WS_DO_URL || `http://localhost:${DEV_PORTS.wsDo}`;
|
|
173
|
-
var DEV_EMAIL_WORKER_URL = process.env.DEV_EMAIL_WORKER_URL || `http://localhost:${DEV_PORTS.emailWorker}`;
|
|
174
|
-
var DEV_WAKE_WORKER_URL = process.env.DEV_WAKE_WORKER_URL || `http://localhost:${DEV_PORTS.wakeWorker}`;
|
|
175
|
-
// ../shared/src/constants/community.ts
|
|
176
|
-
var MAX_PROFILE_NAME_LENGTH = 100;
|
|
177
|
-
var MAX_MESSAGE_CONTENT_LENGTH = 4000;
|
|
178
|
-
var MAX_ATTACHMENTS_PER_MESSAGE = 10;
|
|
179
|
-
var MAX_ATTACHMENT_SIZE_BYTES = 25 * 1024 * 1024;
|
|
180
|
-
var MAX_SERVER_ICON_SIZE_BYTES = 5 * 1024 * 1024;
|
|
181
|
-
var MAX_ICON_SOURCE_FILE_SIZE_BYTES = 15 * 1024 * 1024;
|
|
182
100
|
// ../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/external.js
|
|
183
101
|
var exports_external = {};
|
|
184
102
|
__export(exports_external, {
|
|
@@ -14455,941 +14373,90 @@ function date4(params) {
|
|
|
14455
14373
|
|
|
14456
14374
|
// ../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/external.js
|
|
14457
14375
|
config(en_default());
|
|
14458
|
-
// ../shared/src/
|
|
14459
|
-
|
|
14460
|
-
|
|
14461
|
-
|
|
14462
|
-
|
|
14376
|
+
// ../shared/src/db/community-machine-schema.ts
|
|
14377
|
+
var exports_community_machine_schema = {};
|
|
14378
|
+
__export(exports_community_machine_schema, {
|
|
14379
|
+
communityMachineToken: () => communityMachineToken,
|
|
14380
|
+
communityMachineCredential: () => communityMachineCredential,
|
|
14381
|
+
communityMachine: () => communityMachine,
|
|
14382
|
+
communityDiagnosticReport: () => communityDiagnosticReport,
|
|
14383
|
+
communityBotBinding: () => communityBotBinding,
|
|
14384
|
+
communityAgentRunnerKey: () => communityAgentRunnerKey,
|
|
14385
|
+
DIAGNOSTIC_REPORT_FAILURE_CODES: () => DIAGNOSTIC_REPORT_FAILURE_CODES
|
|
14386
|
+
});
|
|
14387
|
+
|
|
14388
|
+
// ../../node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare+workers-types@4.20260702.1_@opentelemetry+api@1.9.1_@typ_5aa9492b131e5fac58fa98e88e5c0ad3/node_modules/drizzle-orm/entity.js
|
|
14389
|
+
var entityKind = Symbol.for("drizzle:entityKind");
|
|
14390
|
+
var hasOwnEntityKind = Symbol.for("drizzle:hasOwnEntityKind");
|
|
14391
|
+
function is(value, type) {
|
|
14392
|
+
if (!value || typeof value !== "object") {
|
|
14393
|
+
return false;
|
|
14394
|
+
}
|
|
14395
|
+
if (value instanceof type) {
|
|
14396
|
+
return true;
|
|
14397
|
+
}
|
|
14398
|
+
if (!Object.prototype.hasOwnProperty.call(type, entityKind)) {
|
|
14399
|
+
throw new Error(`Class "${type.name ?? "<unknown>"}" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`);
|
|
14400
|
+
}
|
|
14401
|
+
let cls = Object.getPrototypeOf(value).constructor;
|
|
14402
|
+
if (cls) {
|
|
14403
|
+
while (cls) {
|
|
14404
|
+
if (entityKind in cls && cls[entityKind] === type[entityKind]) {
|
|
14405
|
+
return true;
|
|
14406
|
+
}
|
|
14407
|
+
cls = Object.getPrototypeOf(cls);
|
|
14408
|
+
}
|
|
14409
|
+
}
|
|
14410
|
+
return false;
|
|
14463
14411
|
}
|
|
14464
14412
|
|
|
14465
|
-
//
|
|
14466
|
-
|
|
14467
|
-
|
|
14468
|
-
|
|
14469
|
-
|
|
14470
|
-
|
|
14471
|
-
|
|
14472
|
-
|
|
14413
|
+
// ../../node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare+workers-types@4.20260702.1_@opentelemetry+api@1.9.1_@typ_5aa9492b131e5fac58fa98e88e5c0ad3/node_modules/drizzle-orm/column.js
|
|
14414
|
+
class Column {
|
|
14415
|
+
constructor(table, config2) {
|
|
14416
|
+
this.table = table;
|
|
14417
|
+
this.config = config2;
|
|
14418
|
+
this.name = config2.name;
|
|
14419
|
+
this.keyAsName = config2.keyAsName;
|
|
14420
|
+
this.notNull = config2.notNull;
|
|
14421
|
+
this.default = config2.default;
|
|
14422
|
+
this.defaultFn = config2.defaultFn;
|
|
14423
|
+
this.onUpdateFn = config2.onUpdateFn;
|
|
14424
|
+
this.hasDefault = config2.hasDefault;
|
|
14425
|
+
this.primary = config2.primaryKey;
|
|
14426
|
+
this.isUnique = config2.isUnique;
|
|
14427
|
+
this.uniqueName = config2.uniqueName;
|
|
14428
|
+
this.uniqueType = config2.uniqueType;
|
|
14429
|
+
this.dataType = config2.dataType;
|
|
14430
|
+
this.columnType = config2.columnType;
|
|
14431
|
+
this.generated = config2.generated;
|
|
14432
|
+
this.generatedIdentity = config2.generatedIdentity;
|
|
14473
14433
|
}
|
|
14474
|
-
|
|
14475
|
-
|
|
14476
|
-
|
|
14477
|
-
|
|
14478
|
-
|
|
14479
|
-
|
|
14480
|
-
|
|
14481
|
-
|
|
14482
|
-
|
|
14483
|
-
|
|
14484
|
-
|
|
14485
|
-
|
|
14486
|
-
|
|
14487
|
-
|
|
14488
|
-
|
|
14489
|
-
|
|
14490
|
-
|
|
14491
|
-
|
|
14492
|
-
|
|
14493
|
-
|
|
14494
|
-
|
|
14495
|
-
|
|
14496
|
-
|
|
14497
|
-
|
|
14498
|
-
|
|
14499
|
-
|
|
14500
|
-
context: exports_external.unknown().nullable(),
|
|
14501
|
-
type: exports_external.string().default(TASK_TYPES.USER_DM_MESSAGE),
|
|
14502
|
-
contextKey: exports_external.string().nullable().optional(),
|
|
14503
|
-
sessionId: exports_external.string().nullable(),
|
|
14504
|
-
createdAt: exports_external.coerce.date(),
|
|
14505
|
-
dispatchedAt: exports_external.coerce.date().nullable(),
|
|
14506
|
-
startedAt: exports_external.coerce.date().nullable(),
|
|
14507
|
-
completedAt: exports_external.coerce.date().nullable(),
|
|
14508
|
-
error: exports_external.string().nullable(),
|
|
14509
|
-
traceId: exports_external.string().nullable().optional(),
|
|
14510
|
-
parentTaskId: exports_external.string().nullable().optional()
|
|
14511
|
-
});
|
|
14512
|
-
var ColleagueDataApiSchema = exports_external.object({
|
|
14513
|
-
name: exports_external.string(),
|
|
14514
|
-
email: exports_external.string(),
|
|
14515
|
-
description: exports_external.string(),
|
|
14516
|
-
instruction: exports_external.string()
|
|
14517
|
-
});
|
|
14518
|
-
var TaskAgentDataApiSchema = exports_external.object({
|
|
14519
|
-
instructions: exports_external.string(),
|
|
14520
|
-
name: exports_external.string(),
|
|
14521
|
-
runtime_config: exports_external.record(exports_external.string(), exports_external.unknown()).default({}),
|
|
14522
|
-
email_handle: exports_external.string().nullable().optional(),
|
|
14523
|
-
email_addresses: exports_external.array(exports_external.string()).default([]),
|
|
14524
|
-
user_email: exports_external.string().nullable().optional(),
|
|
14525
|
-
user_name: exports_external.string().nullable().optional(),
|
|
14526
|
-
colleagues: exports_external.array(ColleagueDataApiSchema).default([])
|
|
14527
|
-
});
|
|
14528
|
-
var TaskApiBaseSchema = exports_external.object({
|
|
14529
|
-
id: exports_external.string(),
|
|
14530
|
-
agent_id: exports_external.string(),
|
|
14531
|
-
runtime_id: exports_external.string(),
|
|
14532
|
-
conversation_id: exports_external.string(),
|
|
14533
|
-
workspace_id: exports_external.string(),
|
|
14534
|
-
prompt: exports_external.string(),
|
|
14535
|
-
status: exports_external.string(),
|
|
14536
|
-
priority: exports_external.number(),
|
|
14537
|
-
dispatched_at: exports_external.string().nullable(),
|
|
14538
|
-
started_at: exports_external.string().nullable(),
|
|
14539
|
-
completed_at: exports_external.string().nullable(),
|
|
14540
|
-
result: exports_external.unknown().nullable(),
|
|
14541
|
-
error: exports_external.string().nullable(),
|
|
14542
|
-
created_at: exports_external.string(),
|
|
14543
|
-
type: exports_external.string(),
|
|
14544
|
-
context_key: exports_external.string().nullable().optional(),
|
|
14545
|
-
context: exports_external.unknown().nullable().optional(),
|
|
14546
|
-
trace_id: exports_external.string().nullable().optional(),
|
|
14547
|
-
parent_task_id: exports_external.string().nullable().optional(),
|
|
14548
|
-
channel: exports_external.string().nullable().optional()
|
|
14549
|
-
});
|
|
14550
|
-
var TaskSenderApiSchema = exports_external.object({
|
|
14551
|
-
name: exports_external.string(),
|
|
14552
|
-
email: exports_external.string(),
|
|
14553
|
-
is_owner: exports_external.boolean()
|
|
14554
|
-
});
|
|
14555
|
-
var TaskApiSchema = TaskApiBaseSchema.extend({
|
|
14556
|
-
agent: TaskAgentDataApiSchema.nullable().optional(),
|
|
14557
|
-
sender: TaskSenderApiSchema.nullable().optional()
|
|
14558
|
-
});
|
|
14559
|
-
var HeartbeatRequestSchema = exports_external.object({
|
|
14560
|
-
daemon_id: exports_external.string().min(1)
|
|
14561
|
-
});
|
|
14562
|
-
var PollRequestSchema = exports_external.object({
|
|
14563
|
-
daemon_id: exports_external.string().min(1),
|
|
14564
|
-
max_tasks: exports_external.number().int().min(1).default(1),
|
|
14565
|
-
cli_version: exports_external.string().optional()
|
|
14566
|
-
});
|
|
14567
|
-
var FileRequestItemSchema = exports_external.object({
|
|
14568
|
-
id: exports_external.string(),
|
|
14569
|
-
agent_id: exports_external.string(),
|
|
14570
|
-
request_type: exports_external.enum(["tree", "read"]),
|
|
14571
|
-
path: exports_external.string()
|
|
14572
|
-
});
|
|
14573
|
-
var PollMeetingItemSchema = exports_external.object({
|
|
14574
|
-
id: exports_external.string(),
|
|
14575
|
-
meeting_url: exports_external.string(),
|
|
14576
|
-
participants: exports_external.array(exports_external.string()),
|
|
14577
|
-
workspace_id: exports_external.string(),
|
|
14578
|
-
agent_id: exports_external.string(),
|
|
14579
|
-
agent_name: exports_external.string(),
|
|
14580
|
-
title: exports_external.string().optional()
|
|
14581
|
-
});
|
|
14582
|
-
var PollResponseSchema = exports_external.object({
|
|
14583
|
-
tasks: exports_external.array(TaskApiSchema),
|
|
14584
|
-
evicted: exports_external.boolean().optional(),
|
|
14585
|
-
pending_update: exports_external.object({ version: exports_external.string() }).optional(),
|
|
14586
|
-
pending_rescan: exports_external.boolean().optional(),
|
|
14587
|
-
file_requests: exports_external.array(FileRequestItemSchema).optional(),
|
|
14588
|
-
meetings: exports_external.array(PollMeetingItemSchema).optional()
|
|
14589
|
-
});
|
|
14590
|
-
var DaemonPushMessageSchema = exports_external.discriminatedUnion("type", [
|
|
14591
|
-
exports_external.object({ type: exports_external.literal("daemon.tasks"), tasks: exports_external.array(TaskApiSchema) }),
|
|
14592
|
-
exports_external.object({ type: exports_external.literal("daemon.file_requests"), workspaceId: exports_external.string(), requests: exports_external.array(FileRequestItemSchema) }),
|
|
14593
|
-
exports_external.object({ type: exports_external.literal("daemon.meetings"), meetings: exports_external.array(PollMeetingItemSchema) }),
|
|
14594
|
-
exports_external.object({ type: exports_external.literal("daemon.evict"), workspaceId: exports_external.string() }),
|
|
14595
|
-
exports_external.object({ type: exports_external.literal("daemon.update"), version: exports_external.string() }),
|
|
14596
|
-
exports_external.object({ type: exports_external.literal("daemon.rescan") }),
|
|
14597
|
-
exports_external.object({ type: exports_external.literal("daemon.kill"), workspaceId: exports_external.string(), agentId: exports_external.string().min(1), taskId: exports_external.string(), targetTaskId: exports_external.string() })
|
|
14598
|
-
]);
|
|
14599
|
-
var RegisterResponseSchema = exports_external.object({
|
|
14600
|
-
runtimes: exports_external.array(exports_external.object({ id: exports_external.string() }))
|
|
14601
|
-
});
|
|
14602
|
-
var DaemonRuntimeItemSchema = exports_external.object({
|
|
14603
|
-
type: exports_external.string().optional(),
|
|
14604
|
-
provider: exports_external.string().optional(),
|
|
14605
|
-
runtime_mode: exports_external.string().optional(),
|
|
14606
|
-
version: exports_external.string().optional(),
|
|
14607
|
-
status: exports_external.string().optional(),
|
|
14608
|
-
model: exports_external.string().optional()
|
|
14609
|
-
});
|
|
14610
|
-
var ActivateTokenRuntimeSchema = exports_external.object({
|
|
14611
|
-
type: exports_external.string().min(1),
|
|
14612
|
-
version: exports_external.string().optional().default("")
|
|
14613
|
-
});
|
|
14614
|
-
var ActivateTokenRequestSchema = exports_external.object({
|
|
14615
|
-
token: exports_external.string().min(1),
|
|
14616
|
-
hostname: exports_external.string().min(1),
|
|
14617
|
-
runtimes: exports_external.array(ActivateTokenRuntimeSchema).min(1)
|
|
14618
|
-
});
|
|
14619
|
-
var RegisterDaemonRequestSchema = exports_external.object({
|
|
14620
|
-
workspace_id: exports_external.string().min(1).optional(),
|
|
14621
|
-
daemon_id: exports_external.string().min(1),
|
|
14622
|
-
device_name: exports_external.string().optional().default(""),
|
|
14623
|
-
cli_version: exports_external.string().optional().default(""),
|
|
14624
|
-
workspaces_root: exports_external.string().optional().default(""),
|
|
14625
|
-
runtimes: exports_external.array(DaemonRuntimeItemSchema).min(1)
|
|
14626
|
-
});
|
|
14627
|
-
var DeregisterRequestSchema = exports_external.object({
|
|
14628
|
-
daemon_id: exports_external.string().min(1)
|
|
14629
|
-
});
|
|
14630
|
-
var CompleteTaskRequestSchema = exports_external.object({
|
|
14631
|
-
output: exports_external.string().optional(),
|
|
14632
|
-
session_id: exports_external.string().optional(),
|
|
14633
|
-
branch_name: exports_external.string().optional()
|
|
14634
|
-
});
|
|
14635
|
-
var FailTaskRequestSchema = exports_external.object({
|
|
14636
|
-
error: exports_external.string().optional().default("")
|
|
14637
|
-
});
|
|
14638
|
-
var MessageItemSchema = exports_external.object({
|
|
14639
|
-
seq: exports_external.number(),
|
|
14640
|
-
type: exports_external.string(),
|
|
14641
|
-
tool: exports_external.string().optional(),
|
|
14642
|
-
call_id: exports_external.string().optional(),
|
|
14643
|
-
content: exports_external.string().optional(),
|
|
14644
|
-
input: exports_external.record(exports_external.string(), exports_external.unknown()).optional(),
|
|
14645
|
-
output: exports_external.string().optional()
|
|
14646
|
-
});
|
|
14647
|
-
var ReportMessagesRequestSchema = exports_external.object({
|
|
14648
|
-
messages: exports_external.array(MessageItemSchema)
|
|
14649
|
-
});
|
|
14650
|
-
var RepeatIntervalSchema = exports_external.string().regex(/^\d+(min|hour|day|week|month)$/, {
|
|
14651
|
-
message: "repeat_interval must match <positive_integer><min|hour|day|week|month>"
|
|
14652
|
-
});
|
|
14653
|
-
var CreateCalendarEventRequestSchema = exports_external.object({
|
|
14654
|
-
agent_id: exports_external.string().min(1),
|
|
14655
|
-
title: exports_external.string().min(1),
|
|
14656
|
-
description: exports_external.string().max(20000).optional(),
|
|
14657
|
-
scheduled_at: exports_external.string().min(1).refine((s) => !Number.isNaN(Date.parse(s)), {
|
|
14658
|
-
message: "scheduled_at must be a valid ISO datetime"
|
|
14659
|
-
}),
|
|
14660
|
-
repeat_interval: RepeatIntervalSchema.optional(),
|
|
14661
|
-
repeat_stop_date: exports_external.string().regex(/^\d{4}-\d{2}-\d{2}$/).optional(),
|
|
14662
|
-
conversation_id: exports_external.string().optional()
|
|
14663
|
-
}).refine((data) => !data.repeat_stop_date || !!data.repeat_interval, {
|
|
14664
|
-
message: "repeat_stop_date requires repeat_interval",
|
|
14665
|
-
path: ["repeat_stop_date"]
|
|
14666
|
-
});
|
|
14667
|
-
var UpdateCalendarEventRequestSchema = exports_external.object({
|
|
14668
|
-
title: exports_external.string().min(1).optional(),
|
|
14669
|
-
description: exports_external.string().max(20000).nullable().optional(),
|
|
14670
|
-
agent_id: exports_external.string().min(1).optional(),
|
|
14671
|
-
scheduled_at: exports_external.string().min(1).refine((s) => !Number.isNaN(Date.parse(s)), {
|
|
14672
|
-
message: "scheduled_at must be a valid ISO datetime"
|
|
14673
|
-
}).optional(),
|
|
14674
|
-
repeat_interval: RepeatIntervalSchema.nullable().optional(),
|
|
14675
|
-
repeat_stop_date: exports_external.string().regex(/^\d{4}-\d{2}-\d{2}$/).nullable().optional(),
|
|
14676
|
-
scope: exports_external.enum(["this", "following"]).optional(),
|
|
14677
|
-
occurrence_at: exports_external.string().min(1).refine((s) => !Number.isNaN(Date.parse(s)), {
|
|
14678
|
-
message: "occurrence_at must be a valid ISO datetime"
|
|
14679
|
-
}).optional()
|
|
14680
|
-
}).refine((v) => v.title !== undefined || v.description !== undefined || v.agent_id !== undefined || v.scheduled_at !== undefined || v.repeat_interval !== undefined || v.repeat_stop_date !== undefined, { message: "at least one field is required" });
|
|
14681
|
-
var DeleteCalendarEventRequestSchema = exports_external.object({
|
|
14682
|
-
scope: exports_external.enum(["this", "following"]).optional(),
|
|
14683
|
-
occurrence_at: exports_external.string().min(1).refine((s) => !Number.isNaN(Date.parse(s)), {
|
|
14684
|
-
message: "occurrence_at must be a valid ISO datetime"
|
|
14685
|
-
}).optional()
|
|
14686
|
-
});
|
|
14687
|
-
var CalendarEventApiSchema = exports_external.object({
|
|
14688
|
-
id: exports_external.string(),
|
|
14689
|
-
agent_id: exports_external.string(),
|
|
14690
|
-
workspace_id: exports_external.string(),
|
|
14691
|
-
title: exports_external.string(),
|
|
14692
|
-
description: exports_external.string().nullable(),
|
|
14693
|
-
scheduled_at: exports_external.string(),
|
|
14694
|
-
occurrence_at: exports_external.string(),
|
|
14695
|
-
collapsed_count: exports_external.number().nullable().optional(),
|
|
14696
|
-
repeat_interval: exports_external.string().nullable(),
|
|
14697
|
-
repeat_stop_at: exports_external.string().nullable(),
|
|
14698
|
-
last_triggered_at: exports_external.string().nullable(),
|
|
14699
|
-
created_at: exports_external.string(),
|
|
14700
|
-
updated_at: exports_external.string()
|
|
14701
|
-
});
|
|
14702
|
-
var IssueStatusSchema = exports_external.enum([
|
|
14703
|
-
IssueStatus.TODO,
|
|
14704
|
-
IssueStatus.IN_PROGRESS,
|
|
14705
|
-
IssueStatus.REVIEW,
|
|
14706
|
-
IssueStatus.DONE,
|
|
14707
|
-
IssueStatus.CLOSED,
|
|
14708
|
-
IssueStatus.CANCELED,
|
|
14709
|
-
IssueStatus.FAILED
|
|
14710
|
-
]);
|
|
14711
|
-
var CreateIssueRequestSchema = exports_external.object({
|
|
14712
|
-
agent_id: exports_external.string().min(1).optional(),
|
|
14713
|
-
title: exports_external.string().min(1, "title is required").max(200),
|
|
14714
|
-
description: exports_external.string().max(20000).optional().default("")
|
|
14715
|
-
});
|
|
14716
|
-
var UpdateIssueRequestSchema = exports_external.object({
|
|
14717
|
-
title: exports_external.string().min(1).max(200).optional(),
|
|
14718
|
-
description: exports_external.string().max(20000).optional(),
|
|
14719
|
-
status: IssueStatusSchema.optional(),
|
|
14720
|
-
agent_id: exports_external.string().min(1).optional()
|
|
14721
|
-
}).refine((v) => v.title !== undefined || v.description !== undefined || v.status !== undefined || v.agent_id !== undefined, { message: "at least one field is required" });
|
|
14722
|
-
var CreateIssueCommentBodySchema = exports_external.object({
|
|
14723
|
-
content: exports_external.string().min(1, "content is required").max(20000)
|
|
14724
|
-
});
|
|
14725
|
-
var IssueCommentApiSchema = exports_external.object({
|
|
14726
|
-
id: exports_external.string(),
|
|
14727
|
-
issue_id: exports_external.string(),
|
|
14728
|
-
workspace_id: exports_external.string(),
|
|
14729
|
-
author_type: exports_external.enum(["user", "agent"]),
|
|
14730
|
-
author_id: exports_external.string(),
|
|
14731
|
-
content: exports_external.string(),
|
|
14732
|
-
created_at: exports_external.string()
|
|
14733
|
-
});
|
|
14734
|
-
var IssueApiSchema = exports_external.object({
|
|
14735
|
-
id: exports_external.string(),
|
|
14736
|
-
workspace_id: exports_external.string(),
|
|
14737
|
-
agent_id: exports_external.string().nullable(),
|
|
14738
|
-
creator_user_id: exports_external.string(),
|
|
14739
|
-
conversation_id: exports_external.string().nullable(),
|
|
14740
|
-
latest_task_id: exports_external.string().nullable(),
|
|
14741
|
-
title: exports_external.string(),
|
|
14742
|
-
description: exports_external.string(),
|
|
14743
|
-
status: IssueStatusSchema,
|
|
14744
|
-
created_at: exports_external.string(),
|
|
14745
|
-
updated_at: exports_external.string(),
|
|
14746
|
-
completed_at: exports_external.string().nullable()
|
|
14747
|
-
});
|
|
14748
|
-
var CreateAgentLinkRequestSchema = exports_external.object({
|
|
14749
|
-
source_agent_id: exports_external.string().min(1, "source_agent_id is required"),
|
|
14750
|
-
target_agent_id: exports_external.string().min(1, "target_agent_id is required"),
|
|
14751
|
-
instruction: exports_external.string().optional().default("")
|
|
14752
|
-
});
|
|
14753
|
-
var UpdateAgentLinkRequestSchema = exports_external.object({
|
|
14754
|
-
instruction: exports_external.string()
|
|
14755
|
-
});
|
|
14756
|
-
var UpsertAgentLinkRequestSchema = exports_external.object({
|
|
14757
|
-
target_agent_id: exports_external.string().min(1, "target_agent_id is required"),
|
|
14758
|
-
instruction: exports_external.string()
|
|
14759
|
-
});
|
|
14760
|
-
var AddWhitelistRequestSchema = exports_external.object({
|
|
14761
|
-
email: exports_external.string().email()
|
|
14762
|
-
});
|
|
14763
|
-
var RuntimeConfigSchema = exports_external.object({ model: exports_external.string().max(100).optional() }).passthrough().optional();
|
|
14764
|
-
var CreateAgentRequestSchema = exports_external.object({
|
|
14765
|
-
name: exports_external.string().min(1, "name is required"),
|
|
14766
|
-
description: exports_external.string().optional().default(""),
|
|
14767
|
-
instructions: exports_external.string().optional().default(""),
|
|
14768
|
-
runtime_id: exports_external.string().min(1, "runtime_id is required"),
|
|
14769
|
-
runtime_config: RuntimeConfigSchema,
|
|
14770
|
-
max_concurrent_tasks: exports_external.number().int().optional(),
|
|
14771
|
-
email_handle: exports_external.string().optional(),
|
|
14772
|
-
avatar_url: exports_external.string().max(2000).nullable().optional()
|
|
14773
|
-
});
|
|
14774
|
-
var UpdateAgentRequestSchema = exports_external.object({
|
|
14775
|
-
name: exports_external.string().min(1).optional(),
|
|
14776
|
-
description: exports_external.string().optional(),
|
|
14777
|
-
instructions: exports_external.string().optional(),
|
|
14778
|
-
runtime_id: exports_external.string().min(1).optional(),
|
|
14779
|
-
runtime_config: RuntimeConfigSchema,
|
|
14780
|
-
visibility: exports_external.enum(["public", "private"]).optional(),
|
|
14781
|
-
avatar_url: exports_external.string().max(2000).nullable().optional()
|
|
14782
|
-
}).refine((v) => v.name !== undefined || v.description !== undefined || v.instructions !== undefined || v.runtime_id !== undefined || v.runtime_config !== undefined || v.visibility !== undefined || v.avatar_url !== undefined, { message: "at least one field is required" });
|
|
14783
|
-
var CreateConversationRequestSchema = exports_external.object({
|
|
14784
|
-
agent_id: exports_external.string().min(1, "agent_id is required"),
|
|
14785
|
-
channel: exports_external.string().optional()
|
|
14786
|
-
});
|
|
14787
|
-
var CreateMessageRequestSchema = exports_external.object({
|
|
14788
|
-
content: exports_external.string().min(1, "content is required"),
|
|
14789
|
-
metadata: exports_external.record(exports_external.string(), exports_external.unknown()).optional()
|
|
14790
|
-
});
|
|
14791
|
-
var AgentDmRequestSchema = exports_external.object({
|
|
14792
|
-
content: exports_external.string().min(1, "content is required"),
|
|
14793
|
-
task_id: exports_external.string().min(1).optional()
|
|
14794
|
-
});
|
|
14795
|
-
var EmailAttachmentSchema = exports_external.object({
|
|
14796
|
-
key: exports_external.string().min(1),
|
|
14797
|
-
filename: exports_external.string().min(1),
|
|
14798
|
-
size: exports_external.number().int().nonnegative().optional(),
|
|
14799
|
-
contentType: exports_external.string().min(1)
|
|
14800
|
-
});
|
|
14801
|
-
var SendEmailRequestSchema = exports_external.object({
|
|
14802
|
-
agentId: exports_external.string().min(1, "agentId is required"),
|
|
14803
|
-
to: exports_external.string().min(1, "to is required"),
|
|
14804
|
-
subject: exports_external.string().min(1, "subject is required"),
|
|
14805
|
-
htmlBody: exports_external.string().default(""),
|
|
14806
|
-
inReplyTo: exports_external.string().optional(),
|
|
14807
|
-
references: exports_external.string().optional(),
|
|
14808
|
-
attachments: exports_external.array(EmailAttachmentSchema).optional(),
|
|
14809
|
-
customAccountId: exports_external.string().optional(),
|
|
14810
|
-
from: exports_external.string().email().optional(),
|
|
14811
|
-
conversationId: exports_external.string().optional(),
|
|
14812
|
-
traceId: exports_external.string().optional(),
|
|
14813
|
-
sourceTaskId: exports_external.string().optional()
|
|
14814
|
-
});
|
|
14815
|
-
var UpdateEmailStatusRequestSchema = exports_external.object({
|
|
14816
|
-
status: exports_external.enum(["unread", "read", "archived", "sent"])
|
|
14817
|
-
});
|
|
14818
|
-
var MeetingInfoSchema = exports_external.object({
|
|
14819
|
-
title: exports_external.string(),
|
|
14820
|
-
meetingUrl: exports_external.string(),
|
|
14821
|
-
startTime: exports_external.string().nullable(),
|
|
14822
|
-
endTime: exports_external.string().nullable(),
|
|
14823
|
-
attendees: exports_external.array(exports_external.object({ name: exports_external.string(), email: exports_external.string() }))
|
|
14824
|
-
});
|
|
14825
|
-
var EmailNotifyRequestSchema = exports_external.object({
|
|
14826
|
-
agentId: exports_external.string().min(1),
|
|
14827
|
-
workspaceId: exports_external.string().min(1),
|
|
14828
|
-
r2Key: exports_external.string().min(1),
|
|
14829
|
-
from: exports_external.string().min(1),
|
|
14830
|
-
to: exports_external.string().optional(),
|
|
14831
|
-
subject: exports_external.string(),
|
|
14832
|
-
isWhitelisted: exports_external.boolean(),
|
|
14833
|
-
forwarded: exports_external.boolean().optional().default(false),
|
|
14834
|
-
messageId: exports_external.string().optional().default(""),
|
|
14835
|
-
inReplyTo: exports_external.string().optional().default(""),
|
|
14836
|
-
references: exports_external.string().optional().default(""),
|
|
14837
|
-
meetingInfo: MeetingInfoSchema.nullable().optional(),
|
|
14838
|
-
attachments: exports_external.string().optional(),
|
|
14839
|
-
traceId: exports_external.string().optional(),
|
|
14840
|
-
sourceTaskId: exports_external.string().optional(),
|
|
14841
|
-
isInternal: exports_external.boolean().optional().default(false),
|
|
14842
|
-
senderConversationId: exports_external.string().optional(),
|
|
14843
|
-
senderAgentId: exports_external.string().optional()
|
|
14844
|
-
});
|
|
14845
|
-
var CreateEmailAccountSchema = exports_external.object({
|
|
14846
|
-
emailAddress: exports_external.string().email("valid email required"),
|
|
14847
|
-
displayName: exports_external.string().default(""),
|
|
14848
|
-
imapHost: exports_external.string().min(1, "IMAP host is required"),
|
|
14849
|
-
imapPort: exports_external.number().int().min(1).max(65535).default(993),
|
|
14850
|
-
imapUsername: exports_external.string().min(1, "IMAP username is required"),
|
|
14851
|
-
imapPassword: exports_external.string().min(1, "IMAP password is required"),
|
|
14852
|
-
imapTls: exports_external.boolean().default(true),
|
|
14853
|
-
smtpHost: exports_external.string().min(1, "SMTP host is required"),
|
|
14854
|
-
smtpPort: exports_external.number().int().min(1).max(65535).default(587),
|
|
14855
|
-
smtpUsername: exports_external.string().min(1, "SMTP username is required"),
|
|
14856
|
-
smtpPassword: exports_external.string().min(1, "SMTP password is required"),
|
|
14857
|
-
smtpTls: exports_external.number().int().min(0).max(2).default(1),
|
|
14858
|
-
pollIntervalSeconds: exports_external.number().int().min(30).max(3600).default(60)
|
|
14859
|
-
});
|
|
14860
|
-
var UpdateEmailAccountSchema = exports_external.object({
|
|
14861
|
-
emailAddress: exports_external.string().email().optional(),
|
|
14862
|
-
displayName: exports_external.string().optional(),
|
|
14863
|
-
imapHost: exports_external.string().min(1).optional(),
|
|
14864
|
-
imapPort: exports_external.number().int().min(1).max(65535).optional(),
|
|
14865
|
-
imapUsername: exports_external.string().min(1).optional(),
|
|
14866
|
-
imapPassword: exports_external.string().min(1).optional(),
|
|
14867
|
-
imapTls: exports_external.boolean().optional(),
|
|
14868
|
-
smtpHost: exports_external.string().min(1).optional(),
|
|
14869
|
-
smtpPort: exports_external.number().int().min(1).max(65535).optional(),
|
|
14870
|
-
smtpUsername: exports_external.string().min(1).optional(),
|
|
14871
|
-
smtpPassword: exports_external.string().min(1).optional(),
|
|
14872
|
-
smtpTls: exports_external.number().int().min(0).max(2).optional(),
|
|
14873
|
-
pollIntervalSeconds: exports_external.number().int().min(30).max(3600).optional()
|
|
14874
|
-
});
|
|
14875
|
-
var TestEmailConnectionSchema = exports_external.object({
|
|
14876
|
-
imapHost: exports_external.string().min(1),
|
|
14877
|
-
imapPort: exports_external.number().int().min(1).max(65535).default(993),
|
|
14878
|
-
imapUsername: exports_external.string().min(1),
|
|
14879
|
-
imapPassword: exports_external.string().min(1),
|
|
14880
|
-
imapTls: exports_external.boolean().default(true),
|
|
14881
|
-
smtpHost: exports_external.string().min(1),
|
|
14882
|
-
smtpPort: exports_external.number().int().min(1).max(65535).default(587),
|
|
14883
|
-
smtpUsername: exports_external.string().min(1),
|
|
14884
|
-
smtpPassword: exports_external.string().min(1),
|
|
14885
|
-
smtpTls: exports_external.number().int().min(0).max(2).default(1)
|
|
14886
|
-
});
|
|
14887
|
-
var UpdateMemberRequestSchema = exports_external.object({
|
|
14888
|
-
global_instruction: exports_external.string().max(50000).trim()
|
|
14889
|
-
});
|
|
14890
|
-
var CreateWorkspaceRequestSchema = exports_external.object({
|
|
14891
|
-
name: exports_external.string().min(1, "name is required"),
|
|
14892
|
-
slug: exports_external.string().optional().default("").transform(sanitizeSlug)
|
|
14893
|
-
});
|
|
14894
|
-
var UpdateWorkspaceRequestSchema = exports_external.object({
|
|
14895
|
-
name: exports_external.string().min(1, "name is required").max(100).trim().optional(),
|
|
14896
|
-
slug: exports_external.string().min(1, "slug is required").trim().toLowerCase().transform(sanitizeSlug).optional()
|
|
14897
|
-
});
|
|
14898
|
-
var DeleteWorkspaceRequestSchema = exports_external.object({
|
|
14899
|
-
confirm_name: exports_external.string().min(1, "confirm_name is required")
|
|
14900
|
-
});
|
|
14901
|
-
var GrantAgentAccessRequestSchema = exports_external.object({
|
|
14902
|
-
user_id: exports_external.string().min(1, "user_id is required")
|
|
14903
|
-
});
|
|
14904
|
-
var WorkspaceFileBrowseRequestSchema = exports_external.object({
|
|
14905
|
-
request_type: exports_external.enum(["tree", "read"]),
|
|
14906
|
-
path: exports_external.string().default(".")
|
|
14907
|
-
});
|
|
14908
|
-
var WorkspaceFileEntrySchema = exports_external.object({
|
|
14909
|
-
name: exports_external.string(),
|
|
14910
|
-
path: exports_external.string(),
|
|
14911
|
-
isDirectory: exports_external.boolean(),
|
|
14912
|
-
size: exports_external.number(),
|
|
14913
|
-
modifiedAt: exports_external.string()
|
|
14914
|
-
});
|
|
14915
|
-
var WorkspaceFileReportSchema = exports_external.object({
|
|
14916
|
-
request_id: exports_external.string().min(1),
|
|
14917
|
-
entries: exports_external.array(WorkspaceFileEntrySchema).optional(),
|
|
14918
|
-
content: exports_external.string().nullable().optional(),
|
|
14919
|
-
isBinary: exports_external.boolean().optional(),
|
|
14920
|
-
error: exports_external.string().optional(),
|
|
14921
|
-
path: exports_external.string()
|
|
14922
|
-
});
|
|
14923
|
-
var SkillEntrySchema = exports_external.object({
|
|
14924
|
-
name: exports_external.string(),
|
|
14925
|
-
description: exports_external.string(),
|
|
14926
|
-
isGlobal: exports_external.boolean().optional()
|
|
14927
|
-
});
|
|
14928
|
-
var SkillItemSchema = exports_external.object({
|
|
14929
|
-
name: exports_external.string(),
|
|
14930
|
-
description: exports_external.string()
|
|
14931
|
-
});
|
|
14932
|
-
var SkillSyncRequestSchema = exports_external.object({
|
|
14933
|
-
scope: exports_external.enum(["global", "agent"]),
|
|
14934
|
-
agent_id: exports_external.string().min(1).optional(),
|
|
14935
|
-
daemon_id: exports_external.string().min(1).optional(),
|
|
14936
|
-
runtime: exports_external.enum(["claude", "codex", "opencode"]),
|
|
14937
|
-
skills: exports_external.array(SkillItemSchema)
|
|
14938
|
-
});
|
|
14939
|
-
var StudioMemberSchema = exports_external.object({
|
|
14940
|
-
name: exports_external.string().optional(),
|
|
14941
|
-
role: exports_external.enum(["leader", "researcher", "engineer", "assistant"]),
|
|
14942
|
-
runtime_id: exports_external.string().min(1, "runtime_id is required"),
|
|
14943
|
-
runtime_config: exports_external.object({ model: exports_external.string().max(100).optional() }).passthrough().optional(),
|
|
14944
|
-
description: exports_external.string().optional().default(""),
|
|
14945
|
-
instructions: exports_external.string().optional().default(""),
|
|
14946
|
-
avatar_url: exports_external.string().max(2000).nullable().optional(),
|
|
14947
|
-
email_handle: exports_external.string().max(30).optional(),
|
|
14948
|
-
relationship: exports_external.string().optional()
|
|
14949
|
-
});
|
|
14950
|
-
var CreateStudioRequestSchema = exports_external.object({
|
|
14951
|
-
name: exports_external.string().max(100).optional(),
|
|
14952
|
-
scenario: exports_external.string().max(50).optional(),
|
|
14953
|
-
members: exports_external.array(StudioMemberSchema).min(1).max(4)
|
|
14954
|
-
}).refine((v) => v.members.some((m) => m.role === "leader"), { message: "at least one member must have the leader role" });
|
|
14955
|
-
var RecruitAgentRequestSchema = exports_external.object({
|
|
14956
|
-
instructions: exports_external.string().min(1, "instructions is required"),
|
|
14957
|
-
relationship: exports_external.string().min(1, "relationship is required"),
|
|
14958
|
-
name: exports_external.string().optional(),
|
|
14959
|
-
description: exports_external.string().optional().default(""),
|
|
14960
|
-
model: exports_external.string().max(100).optional(),
|
|
14961
|
-
context_key: exports_external.string().optional()
|
|
14962
|
-
});
|
|
14963
|
-
var CreateThreadRequestSchema = exports_external.object({
|
|
14964
|
-
parent_message_id: exports_external.string().min(1),
|
|
14965
|
-
content: exports_external.string().optional().default(""),
|
|
14966
|
-
attachment_ids: exports_external.array(exports_external.string()).optional()
|
|
14967
|
-
});
|
|
14968
|
-
var COMMUNITY_RUNTIME_ID_MAX = 64;
|
|
14969
|
-
var COMMUNITY_RUNTIME_VERSION_MAX = 64;
|
|
14970
|
-
var COMMUNITY_RUNTIME_LIST_MAX = 64;
|
|
14971
|
-
var RUNTIME_ID_RE = /^[A-Za-z0-9._@/-]+$/;
|
|
14972
|
-
var CommunityMachineRuntimeSchema = exports_external.object({
|
|
14973
|
-
id: exports_external.string().min(1).max(COMMUNITY_RUNTIME_ID_MAX).regex(RUNTIME_ID_RE, "invalid runtime id charset"),
|
|
14974
|
-
version: exports_external.string().max(COMMUNITY_RUNTIME_VERSION_MAX).optional(),
|
|
14975
|
-
status: exports_external.enum(["healthy", "unhealthy"]).catch("healthy").default("healthy"),
|
|
14976
|
-
lastError: exports_external.string().max(128).optional(),
|
|
14977
|
-
lastErrorAt: exports_external.string().optional()
|
|
14978
|
-
});
|
|
14979
|
-
var CommunityMachineRuntimeListSchema = exports_external.array(CommunityMachineRuntimeSchema).max(COMMUNITY_RUNTIME_LIST_MAX).transform((list) => {
|
|
14980
|
-
const seen = new Set;
|
|
14981
|
-
const out = [];
|
|
14982
|
-
for (const r of list) {
|
|
14983
|
-
if (seen.has(r.id))
|
|
14984
|
-
continue;
|
|
14985
|
-
seen.add(r.id);
|
|
14986
|
-
out.push(r);
|
|
14987
|
-
}
|
|
14988
|
-
return out;
|
|
14989
|
-
});
|
|
14990
|
-
var CommunityMachineSummarySchema = exports_external.object({
|
|
14991
|
-
id: exports_external.string(),
|
|
14992
|
-
hostname: exports_external.string(),
|
|
14993
|
-
displayName: exports_external.string(),
|
|
14994
|
-
platform: exports_external.string(),
|
|
14995
|
-
arch: exports_external.string(),
|
|
14996
|
-
osRelease: exports_external.string(),
|
|
14997
|
-
daemonVersion: exports_external.string(),
|
|
14998
|
-
lastSeenAt: exports_external.string().nullable(),
|
|
14999
|
-
status: exports_external.enum(["online", "offline"]),
|
|
15000
|
-
availableRuntimes: exports_external.array(CommunityMachineRuntimeSchema).default([]),
|
|
15001
|
-
lastRuntimeError: exports_external.object({
|
|
15002
|
-
requested: exports_external.string(),
|
|
15003
|
-
available: exports_external.array(exports_external.string()),
|
|
15004
|
-
at: exports_external.string()
|
|
15005
|
-
}).optional(),
|
|
15006
|
-
createdAt: exports_external.string(),
|
|
15007
|
-
updatedAt: exports_external.string()
|
|
15008
|
-
});
|
|
15009
|
-
var HostReadyMessageSchema = exports_external.object({
|
|
15010
|
-
type: exports_external.literal("ready"),
|
|
15011
|
-
runtimeReport: CommunityMachineRuntimeListSchema,
|
|
15012
|
-
runningAgents: exports_external.array(exports_external.string()).default([]),
|
|
15013
|
-
hostname: exports_external.string().optional(),
|
|
15014
|
-
platform: exports_external.string().optional(),
|
|
15015
|
-
arch: exports_external.string().optional(),
|
|
15016
|
-
osRelease: exports_external.string().optional(),
|
|
15017
|
-
daemonVersion: exports_external.string().optional()
|
|
15018
|
-
});
|
|
15019
|
-
var CommunityDaemonReadySchema = exports_external.object({
|
|
15020
|
-
runtimeReport: CommunityMachineRuntimeListSchema.optional(),
|
|
15021
|
-
runningAgents: exports_external.array(exports_external.string()).default([]),
|
|
15022
|
-
hostname: exports_external.string().optional(),
|
|
15023
|
-
os: exports_external.string().optional(),
|
|
15024
|
-
arch: exports_external.string().optional(),
|
|
15025
|
-
osRelease: exports_external.string().optional(),
|
|
15026
|
-
daemonVersion: exports_external.string().optional()
|
|
15027
|
-
});
|
|
15028
|
-
var SessionErrorFrameSchema = exports_external.object({
|
|
15029
|
-
type: exports_external.literal("session.error"),
|
|
15030
|
-
code: exports_external.enum(["runtime_not_available"]),
|
|
15031
|
-
agentId: exports_external.string().optional(),
|
|
15032
|
-
launchId: exports_external.string().optional(),
|
|
15033
|
-
payload: exports_external.record(exports_external.string(), exports_external.unknown()).optional()
|
|
15034
|
-
});
|
|
15035
|
-
var AgentActivityMessageSchema = exports_external.object({
|
|
15036
|
-
type: exports_external.literal("agent_activity"),
|
|
15037
|
-
agentId: exports_external.string(),
|
|
15038
|
-
state: exports_external.enum(["idle", "starting", "running", "stopping"])
|
|
15039
|
-
});
|
|
15040
|
-
var AgentTypingMessageSchema = exports_external.object({
|
|
15041
|
-
type: exports_external.literal("agent_typing"),
|
|
15042
|
-
agentId: exports_external.string(),
|
|
15043
|
-
channelId: exports_external.string().min(1)
|
|
15044
|
-
});
|
|
15045
|
-
var AgentTypingStopMessageSchema = exports_external.object({
|
|
15046
|
-
type: exports_external.literal("agent_typing_stop"),
|
|
15047
|
-
agentId: exports_external.string(),
|
|
15048
|
-
channelId: exports_external.string().min(1)
|
|
15049
|
-
});
|
|
15050
|
-
var AgentSessionMessageSchema = exports_external.object({
|
|
15051
|
-
type: exports_external.literal("agent_session"),
|
|
15052
|
-
agentId: exports_external.string().min(1),
|
|
15053
|
-
sessionId: exports_external.string().min(1),
|
|
15054
|
-
launchId: exports_external.string().min(1)
|
|
15055
|
-
});
|
|
15056
|
-
var AgentWakeAckMessageSchema = exports_external.object({
|
|
15057
|
-
type: exports_external.literal("agent_wake_ack"),
|
|
15058
|
-
agentId: exports_external.string().min(1),
|
|
15059
|
-
launchId: exports_external.string().min(1),
|
|
15060
|
-
status: exports_external.enum(["ok", "error"]),
|
|
15061
|
-
error: exports_external.object({ code: exports_external.string().optional(), message: exports_external.string().optional() }).optional()
|
|
15062
|
-
});
|
|
15063
|
-
var CommunityPairTokenResponseSchema = exports_external.object({
|
|
15064
|
-
tokenId: exports_external.string(),
|
|
15065
|
-
expiresAt: exports_external.string()
|
|
15066
|
-
});
|
|
15067
|
-
var CommunityDaemonActivateRequestSchema = exports_external.object({
|
|
15068
|
-
hostname: exports_external.string(),
|
|
15069
|
-
platform: exports_external.string(),
|
|
15070
|
-
arch: exports_external.string(),
|
|
15071
|
-
osRelease: exports_external.string().optional(),
|
|
15072
|
-
daemonVersion: exports_external.string().optional(),
|
|
15073
|
-
runtimeReport: CommunityMachineRuntimeListSchema.optional()
|
|
15074
|
-
});
|
|
15075
|
-
var CommunityDaemonActivateResponseSchema = exports_external.object({
|
|
15076
|
-
credential: exports_external.string(),
|
|
15077
|
-
machineId: exports_external.string(),
|
|
15078
|
-
expiresAt: exports_external.string().nullable()
|
|
15079
|
-
});
|
|
15080
|
-
var CommunityDaemonEnrollAgentRequestSchema = exports_external.object({
|
|
15081
|
-
agentId: exports_external.string().min(1).max(128)
|
|
15082
|
-
});
|
|
15083
|
-
var CommunityDaemonEnrollAgentResponseSchema = exports_external.object({
|
|
15084
|
-
runnerKey: exports_external.string(),
|
|
15085
|
-
expiresAt: exports_external.string().nullable()
|
|
15086
|
-
});
|
|
15087
|
-
var isMentionSafeName = (name) => validateCommunityName(name).ok;
|
|
15088
|
-
var MENTION_SAFE_NAME_MSG = "name cannot contain #, @, or line breaks";
|
|
15089
|
-
var BOT_AVATAR_ROUTE_PATTERN = /^\/api\/community\/bots\/[A-Za-z0-9_-]+\/avatar$/;
|
|
15090
|
-
var BotImageUrlSchema = exports_external.string().max(COMMUNITY_BOT_IMAGE_URL_MAX).refine((v) => v.startsWith("https://") || v.startsWith("avatar:") || BOT_AVATAR_ROUTE_PATTERN.test(v), {
|
|
15091
|
-
message: "image must be an https URL, the bot avatar route, or an avatar: config"
|
|
15092
|
-
});
|
|
15093
|
-
var CommunityBotCreateRequestSchema = exports_external.object({
|
|
15094
|
-
name: exports_external.string().trim().min(COMMUNITY_BOT_NAME_MIN).max(COMMUNITY_BOT_NAME_MAX).refine(isMentionSafeName, { message: MENTION_SAFE_NAME_MSG }),
|
|
15095
|
-
description: exports_external.string().max(COMMUNITY_BOT_DESCRIPTION_MAX).optional(),
|
|
15096
|
-
machineId: exports_external.string().min(1),
|
|
15097
|
-
runtime: exports_external.string().min(1),
|
|
15098
|
-
image: BotImageUrlSchema.optional(),
|
|
15099
|
-
model: exports_external.string().trim().min(1).max(100).nullable().optional()
|
|
15100
|
-
});
|
|
15101
|
-
var CommunityBotPatchRequestSchema = exports_external.object({
|
|
15102
|
-
name: exports_external.string().trim().min(COMMUNITY_BOT_NAME_MIN).max(COMMUNITY_BOT_NAME_MAX).refine(isMentionSafeName, { message: MENTION_SAFE_NAME_MSG }).optional(),
|
|
15103
|
-
description: exports_external.string().max(COMMUNITY_BOT_DESCRIPTION_MAX).optional(),
|
|
15104
|
-
image: BotImageUrlSchema.nullable().optional(),
|
|
15105
|
-
model: exports_external.string().trim().min(1).max(100).nullable().optional(),
|
|
15106
|
-
runtime: exports_external.string().trim().min(1).max(COMMUNITY_RUNTIME_ID_MAX).optional()
|
|
15107
|
-
}).refine((v) => v.name !== undefined || v.description !== undefined || v.image !== undefined || v.runtime !== undefined || ("model" in v), {
|
|
15108
|
-
message: "at least one field must be provided"
|
|
15109
|
-
});
|
|
15110
|
-
var CommunityBotAddToServerRequestSchema = exports_external.object({
|
|
15111
|
-
botId: exports_external.string().min(1)
|
|
15112
|
-
});
|
|
15113
|
-
var CommunityAgentMessageContentSchema = exports_external.object({ text: exports_external.string().max(MAX_MESSAGE_CONTENT_LENGTH).default("") }).catchall(exports_external.unknown());
|
|
15114
|
-
var CommunityAgentSeqSchema = exports_external.number().int().min(0);
|
|
15115
|
-
var CommunityAgentPositiveSeqSchema = exports_external.number().int().min(1);
|
|
15116
|
-
var CommunityAgentCursorSchema = exports_external.object({
|
|
15117
|
-
channel: exports_external.string().min(1),
|
|
15118
|
-
seq: CommunityAgentPositiveSeqSchema
|
|
15119
|
-
});
|
|
15120
|
-
var CommunityAgentSendRequestSchema = exports_external.object({
|
|
15121
|
-
channel: exports_external.string().min(1),
|
|
15122
|
-
content: CommunityAgentMessageContentSchema,
|
|
15123
|
-
attachments: exports_external.array(exports_external.string().min(1)).max(MAX_ATTACHMENTS_PER_MESSAGE).default([]),
|
|
15124
|
-
seenUpToSeq: CommunityAgentSeqSchema.optional(),
|
|
15125
|
-
replyToSeq: CommunityAgentPositiveSeqSchema.optional(),
|
|
15126
|
-
nonce: exports_external.string().min(1).max(128).optional()
|
|
15127
|
-
}).refine((d) => d.content.text.trim().length > 0 || d.attachments.length > 0, { message: "message must have text or attachments" });
|
|
15128
|
-
var CommunityAgentAttachmentUploadResponseSchema = exports_external.object({
|
|
15129
|
-
id: exports_external.string(),
|
|
15130
|
-
filename: exports_external.string(),
|
|
15131
|
-
contentType: exports_external.string(),
|
|
15132
|
-
size: exports_external.number()
|
|
15133
|
-
});
|
|
15134
|
-
var CommunityAgentAttachmentDownloadRequestSchema = exports_external.object({
|
|
15135
|
-
id: exports_external.string().min(1)
|
|
15136
|
-
});
|
|
15137
|
-
var CommunityAgentInboxPullRequestSchema = exports_external.object({
|
|
15138
|
-
max: exports_external.number().int().min(1).max(200).optional()
|
|
15139
|
-
});
|
|
15140
|
-
var CommunityAgentAckRequestSchema = exports_external.object({
|
|
15141
|
-
cursors: exports_external.array(CommunityAgentCursorSchema).min(1)
|
|
15142
|
-
});
|
|
15143
|
-
var CommunityAgentReadRequestSchema = exports_external.object({
|
|
15144
|
-
channel: exports_external.string().min(1),
|
|
15145
|
-
before: CommunityAgentSeqSchema.optional(),
|
|
15146
|
-
after: CommunityAgentSeqSchema.optional(),
|
|
15147
|
-
around: CommunityAgentSeqSchema.optional(),
|
|
15148
|
-
limit: exports_external.number().int().min(1).max(200).optional()
|
|
15149
|
-
}).refine((v) => [v.before, v.after, v.around].filter((x) => x !== undefined).length <= 1, { message: "at most one of before/after/around may be supplied" });
|
|
15150
|
-
var CommunityAgentResolveRequestSchema = exports_external.object({
|
|
15151
|
-
channel: exports_external.string().min(1),
|
|
15152
|
-
seq: CommunityAgentSeqSchema
|
|
15153
|
-
});
|
|
15154
|
-
var CommunityAgentListChannelsRequestSchema = exports_external.object({
|
|
15155
|
-
server: exports_external.string().min(1).optional()
|
|
15156
|
-
});
|
|
15157
|
-
var CommunityAgentCreatePostRequestSchema = exports_external.object({
|
|
15158
|
-
forum: exports_external.string().min(1),
|
|
15159
|
-
title: exports_external.string().min(1),
|
|
15160
|
-
content: CommunityAgentMessageContentSchema,
|
|
15161
|
-
attachments: exports_external.array(exports_external.string().min(1)).max(MAX_ATTACHMENTS_PER_MESSAGE).default([]),
|
|
15162
|
-
nonce: exports_external.string().min(1).max(128).optional()
|
|
15163
|
-
}).refine((d) => d.content.text.trim().length > 0 || d.attachments.length > 0, { message: "post must have text or attachments" });
|
|
15164
|
-
var CommunityAgentListMembersRequestSchema = exports_external.object({
|
|
15165
|
-
server: exports_external.string().min(1),
|
|
15166
|
-
limit: exports_external.number().int().positive().optional(),
|
|
15167
|
-
cursor: exports_external.string().min(1).optional()
|
|
15168
|
-
});
|
|
15169
|
-
var CommunityAgentChannelMemberRequestSchema = exports_external.object({
|
|
15170
|
-
channel: exports_external.string().min(1),
|
|
15171
|
-
agentId: exports_external.string().optional()
|
|
15172
|
-
});
|
|
15173
|
-
var CommunityAgentJoinServerRequestSchema = exports_external.object({
|
|
15174
|
-
invite: exports_external.string().min(1)
|
|
15175
|
-
});
|
|
15176
|
-
var CommunityAgentNapRequestSchema = exports_external.object({
|
|
15177
|
-
handoff: exports_external.string().trim().min(1)
|
|
15178
|
-
});
|
|
15179
|
-
var CommunityAgentReactAddRequestSchema = exports_external.object({
|
|
15180
|
-
channel: exports_external.string().min(1),
|
|
15181
|
-
seq: CommunityAgentPositiveSeqSchema,
|
|
15182
|
-
emoji: exports_external.string().min(1)
|
|
15183
|
-
});
|
|
15184
|
-
var CommunityAgentFriendRequestSchema = exports_external.object({
|
|
15185
|
-
username: exports_external.string().min(1)
|
|
15186
|
-
});
|
|
15187
|
-
var CommunityAgentListFriendsSchema = exports_external.object({});
|
|
15188
|
-
var AuditLogCliInvocationPayloadSchema = exports_external.object({
|
|
15189
|
-
subcommand: exports_external.string().min(1)
|
|
15190
|
-
});
|
|
15191
|
-
var AuditLogToolCallPayloadSchema = exports_external.object({
|
|
15192
|
-
name: exports_external.string().min(1),
|
|
15193
|
-
target: exports_external.string().max(240).optional()
|
|
15194
|
-
});
|
|
15195
|
-
var AuditLogThinkingPayloadSchema = exports_external.object({
|
|
15196
|
-
text: exports_external.string(),
|
|
15197
|
-
truncated: exports_external.boolean(),
|
|
15198
|
-
chars: exports_external.number().int().nonnegative()
|
|
15199
|
-
});
|
|
15200
|
-
var AuditLogWakeTriggerPayloadSchema = exports_external.object({
|
|
15201
|
-
messageId: exports_external.string().min(1),
|
|
15202
|
-
channel: exports_external.string().min(1),
|
|
15203
|
-
seq: CommunityAgentPositiveSeqSchema,
|
|
15204
|
-
senderId: exports_external.string().min(1),
|
|
15205
|
-
senderHandle: exports_external.string().min(1),
|
|
15206
|
-
reason: exports_external.enum(["unread", "mention"])
|
|
15207
|
-
});
|
|
15208
|
-
var AuditLogSessionResetPayloadSchema = exports_external.object({
|
|
15209
|
-
trigger: exports_external.enum(["single", "reset_all"])
|
|
15210
|
-
});
|
|
15211
|
-
var AuditLogNapPayloadSchema = exports_external.object({
|
|
15212
|
-
trigger: exports_external.literal("nap")
|
|
15213
|
-
});
|
|
15214
|
-
var AuditLogModelChangedPayloadSchema = exports_external.object({
|
|
15215
|
-
from: exports_external.string().nullable(),
|
|
15216
|
-
to: exports_external.string().nullable()
|
|
15217
|
-
});
|
|
15218
|
-
var AuditLogProviderChangedPayloadSchema = exports_external.object({
|
|
15219
|
-
from: exports_external.string().min(1),
|
|
15220
|
-
to: exports_external.string().min(1)
|
|
15221
|
-
});
|
|
15222
|
-
var AuditLogErrorPayloadSchema = exports_external.object({
|
|
15223
|
-
scope: exports_external.enum(["spawn", "runtime", "exit", "handshake_timeout", "model_switch", "reset"]),
|
|
15224
|
-
code: exports_external.string().min(1).max(120),
|
|
15225
|
-
message: exports_external.string().max(2048),
|
|
15226
|
-
model: exports_external.string().nullable()
|
|
15227
|
-
});
|
|
15228
|
-
var BotAuditEventSchema = exports_external.discriminatedUnion("kind", [
|
|
15229
|
-
exports_external.object({ kind: exports_external.literal("cli_invocation"), payload: AuditLogCliInvocationPayloadSchema }),
|
|
15230
|
-
exports_external.object({ kind: exports_external.literal("tool_call"), payload: AuditLogToolCallPayloadSchema }),
|
|
15231
|
-
exports_external.object({ kind: exports_external.literal("thinking"), payload: AuditLogThinkingPayloadSchema }),
|
|
15232
|
-
exports_external.object({ kind: exports_external.literal("wake_trigger"), payload: AuditLogWakeTriggerPayloadSchema }),
|
|
15233
|
-
exports_external.object({ kind: exports_external.literal("session_reset"), payload: AuditLogSessionResetPayloadSchema }),
|
|
15234
|
-
exports_external.object({ kind: exports_external.literal("nap"), payload: AuditLogNapPayloadSchema }),
|
|
15235
|
-
exports_external.object({ kind: exports_external.literal("model_changed"), payload: AuditLogModelChangedPayloadSchema }),
|
|
15236
|
-
exports_external.object({ kind: exports_external.literal("provider_changed"), payload: AuditLogProviderChangedPayloadSchema }),
|
|
15237
|
-
exports_external.object({ kind: exports_external.literal("error"), payload: AuditLogErrorPayloadSchema })
|
|
15238
|
-
]);
|
|
15239
|
-
var BotAuditEventKindSchema = exports_external.enum([
|
|
15240
|
-
"cli_invocation",
|
|
15241
|
-
"tool_call",
|
|
15242
|
-
"thinking",
|
|
15243
|
-
"wake_trigger",
|
|
15244
|
-
"session_reset",
|
|
15245
|
-
"nap",
|
|
15246
|
-
"model_changed",
|
|
15247
|
-
"provider_changed",
|
|
15248
|
-
"error"
|
|
15249
|
-
]);
|
|
15250
|
-
var HostBotAuditEventFrameSchema = exports_external.object({
|
|
15251
|
-
type: exports_external.literal("bot_audit_event"),
|
|
15252
|
-
agentId: exports_external.string().min(1),
|
|
15253
|
-
sessionId: exports_external.string().nullable().optional(),
|
|
15254
|
-
launchId: exports_external.string().nullable().optional(),
|
|
15255
|
-
event: BotAuditEventSchema
|
|
15256
|
-
});
|
|
15257
|
-
// ../shared/src/community-cli-contract.ts
|
|
15258
|
-
var HostCommandSchema = exports_external.discriminatedUnion("type", [
|
|
15259
|
-
exports_external.object({
|
|
15260
|
-
type: exports_external.literal("agent:wake"),
|
|
15261
|
-
agentId: exports_external.string().min(1),
|
|
15262
|
-
config: exports_external.unknown(),
|
|
15263
|
-
sessionId: exports_external.string().optional(),
|
|
15264
|
-
launchId: exports_external.string().min(1),
|
|
15265
|
-
unreadNotice: exports_external.unknown()
|
|
15266
|
-
}),
|
|
15267
|
-
exports_external.object({
|
|
15268
|
-
type: exports_external.literal("agent:stop"),
|
|
15269
|
-
agentId: exports_external.string().min(1)
|
|
15270
|
-
}),
|
|
15271
|
-
exports_external.object({
|
|
15272
|
-
type: exports_external.literal("agent:reset"),
|
|
15273
|
-
agentId: exports_external.string().min(1),
|
|
15274
|
-
config: exports_external.unknown(),
|
|
15275
|
-
launchId: exports_external.string().min(1)
|
|
15276
|
-
}),
|
|
15277
|
-
exports_external.object({
|
|
15278
|
-
type: exports_external.literal("agent:nap"),
|
|
15279
|
-
agentId: exports_external.string().min(1),
|
|
15280
|
-
config: exports_external.unknown(),
|
|
15281
|
-
launchId: exports_external.string().min(1),
|
|
15282
|
-
handoff: exports_external.string().min(1)
|
|
15283
|
-
}),
|
|
15284
|
-
exports_external.object({
|
|
15285
|
-
type: exports_external.literal("agent:model_switch"),
|
|
15286
|
-
agentId: exports_external.string().min(1),
|
|
15287
|
-
config: exports_external.unknown(),
|
|
15288
|
-
launchId: exports_external.string().min(1)
|
|
15289
|
-
}),
|
|
15290
|
-
exports_external.object({
|
|
15291
|
-
type: exports_external.literal("machine:reset_all"),
|
|
15292
|
-
resets: exports_external.array(exports_external.object({
|
|
15293
|
-
agentId: exports_external.string().min(1),
|
|
15294
|
-
config: exports_external.unknown(),
|
|
15295
|
-
launchId: exports_external.string().min(1)
|
|
15296
|
-
}))
|
|
15297
|
-
}),
|
|
15298
|
-
exports_external.object({
|
|
15299
|
-
type: exports_external.literal("bot:added"),
|
|
15300
|
-
botId: exports_external.string().min(1),
|
|
15301
|
-
name: exports_external.string().optional(),
|
|
15302
|
-
discriminator: exports_external.string().optional(),
|
|
15303
|
-
description: exports_external.string().optional(),
|
|
15304
|
-
ownerName: exports_external.string().optional(),
|
|
15305
|
-
ownerDiscriminator: exports_external.string().optional()
|
|
15306
|
-
}),
|
|
15307
|
-
exports_external.object({
|
|
15308
|
-
type: exports_external.literal("bot:updated"),
|
|
15309
|
-
botId: exports_external.string().min(1),
|
|
15310
|
-
name: exports_external.string().optional(),
|
|
15311
|
-
discriminator: exports_external.string().optional(),
|
|
15312
|
-
description: exports_external.string().optional(),
|
|
15313
|
-
ownerName: exports_external.string().optional(),
|
|
15314
|
-
ownerDiscriminator: exports_external.string().optional()
|
|
15315
|
-
}),
|
|
15316
|
-
exports_external.object({
|
|
15317
|
-
type: exports_external.literal("bot:removed"),
|
|
15318
|
-
botId: exports_external.string().min(1)
|
|
15319
|
-
})
|
|
15320
|
-
]);
|
|
15321
|
-
// ../../node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare+workers-types@4.20260702.1_@opentelemetry+api@1.9.1_@typ_5aa9492b131e5fac58fa98e88e5c0ad3/node_modules/drizzle-orm/entity.js
|
|
15322
|
-
var entityKind = Symbol.for("drizzle:entityKind");
|
|
15323
|
-
var hasOwnEntityKind = Symbol.for("drizzle:hasOwnEntityKind");
|
|
15324
|
-
function is(value, type) {
|
|
15325
|
-
if (!value || typeof value !== "object") {
|
|
15326
|
-
return false;
|
|
15327
|
-
}
|
|
15328
|
-
if (value instanceof type) {
|
|
15329
|
-
return true;
|
|
15330
|
-
}
|
|
15331
|
-
if (!Object.prototype.hasOwnProperty.call(type, entityKind)) {
|
|
15332
|
-
throw new Error(`Class "${type.name ?? "<unknown>"}" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`);
|
|
15333
|
-
}
|
|
15334
|
-
let cls = Object.getPrototypeOf(value).constructor;
|
|
15335
|
-
if (cls) {
|
|
15336
|
-
while (cls) {
|
|
15337
|
-
if (entityKind in cls && cls[entityKind] === type[entityKind]) {
|
|
15338
|
-
return true;
|
|
15339
|
-
}
|
|
15340
|
-
cls = Object.getPrototypeOf(cls);
|
|
15341
|
-
}
|
|
15342
|
-
}
|
|
15343
|
-
return false;
|
|
15344
|
-
}
|
|
15345
|
-
|
|
15346
|
-
// ../../node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare+workers-types@4.20260702.1_@opentelemetry+api@1.9.1_@typ_5aa9492b131e5fac58fa98e88e5c0ad3/node_modules/drizzle-orm/column.js
|
|
15347
|
-
class Column {
|
|
15348
|
-
constructor(table, config2) {
|
|
15349
|
-
this.table = table;
|
|
15350
|
-
this.config = config2;
|
|
15351
|
-
this.name = config2.name;
|
|
15352
|
-
this.keyAsName = config2.keyAsName;
|
|
15353
|
-
this.notNull = config2.notNull;
|
|
15354
|
-
this.default = config2.default;
|
|
15355
|
-
this.defaultFn = config2.defaultFn;
|
|
15356
|
-
this.onUpdateFn = config2.onUpdateFn;
|
|
15357
|
-
this.hasDefault = config2.hasDefault;
|
|
15358
|
-
this.primary = config2.primaryKey;
|
|
15359
|
-
this.isUnique = config2.isUnique;
|
|
15360
|
-
this.uniqueName = config2.uniqueName;
|
|
15361
|
-
this.uniqueType = config2.uniqueType;
|
|
15362
|
-
this.dataType = config2.dataType;
|
|
15363
|
-
this.columnType = config2.columnType;
|
|
15364
|
-
this.generated = config2.generated;
|
|
15365
|
-
this.generatedIdentity = config2.generatedIdentity;
|
|
15366
|
-
}
|
|
15367
|
-
static [entityKind] = "Column";
|
|
15368
|
-
name;
|
|
15369
|
-
keyAsName;
|
|
15370
|
-
primary;
|
|
15371
|
-
notNull;
|
|
15372
|
-
default;
|
|
15373
|
-
defaultFn;
|
|
15374
|
-
onUpdateFn;
|
|
15375
|
-
hasDefault;
|
|
15376
|
-
isUnique;
|
|
15377
|
-
uniqueName;
|
|
15378
|
-
uniqueType;
|
|
15379
|
-
dataType;
|
|
15380
|
-
columnType;
|
|
15381
|
-
enumValues = undefined;
|
|
15382
|
-
generated = undefined;
|
|
15383
|
-
generatedIdentity = undefined;
|
|
15384
|
-
config;
|
|
15385
|
-
mapFromDriverValue(value) {
|
|
15386
|
-
return value;
|
|
15387
|
-
}
|
|
15388
|
-
mapToDriverValue(value) {
|
|
15389
|
-
return value;
|
|
15390
|
-
}
|
|
15391
|
-
shouldDisableInsert() {
|
|
15392
|
-
return this.config.generated !== undefined && this.config.generated.type !== "byDefault";
|
|
14434
|
+
static [entityKind] = "Column";
|
|
14435
|
+
name;
|
|
14436
|
+
keyAsName;
|
|
14437
|
+
primary;
|
|
14438
|
+
notNull;
|
|
14439
|
+
default;
|
|
14440
|
+
defaultFn;
|
|
14441
|
+
onUpdateFn;
|
|
14442
|
+
hasDefault;
|
|
14443
|
+
isUnique;
|
|
14444
|
+
uniqueName;
|
|
14445
|
+
uniqueType;
|
|
14446
|
+
dataType;
|
|
14447
|
+
columnType;
|
|
14448
|
+
enumValues = undefined;
|
|
14449
|
+
generated = undefined;
|
|
14450
|
+
generatedIdentity = undefined;
|
|
14451
|
+
config;
|
|
14452
|
+
mapFromDriverValue(value) {
|
|
14453
|
+
return value;
|
|
14454
|
+
}
|
|
14455
|
+
mapToDriverValue(value) {
|
|
14456
|
+
return value;
|
|
14457
|
+
}
|
|
14458
|
+
shouldDisableInsert() {
|
|
14459
|
+
return this.config.generated !== undefined && this.config.generated.type !== "byDefault";
|
|
15393
14460
|
}
|
|
15394
14461
|
}
|
|
15395
14462
|
|
|
@@ -15987,6 +15054,94 @@ Subquery.prototype.getSQL = function() {
|
|
|
15987
15054
|
return new SQL([this]);
|
|
15988
15055
|
};
|
|
15989
15056
|
|
|
15057
|
+
// ../../node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare+workers-types@4.20260702.1_@opentelemetry+api@1.9.1_@typ_5aa9492b131e5fac58fa98e88e5c0ad3/node_modules/drizzle-orm/alias.js
|
|
15058
|
+
class ColumnAliasProxyHandler {
|
|
15059
|
+
constructor(table) {
|
|
15060
|
+
this.table = table;
|
|
15061
|
+
}
|
|
15062
|
+
static [entityKind] = "ColumnAliasProxyHandler";
|
|
15063
|
+
get(columnObj, prop) {
|
|
15064
|
+
if (prop === "table") {
|
|
15065
|
+
return this.table;
|
|
15066
|
+
}
|
|
15067
|
+
return columnObj[prop];
|
|
15068
|
+
}
|
|
15069
|
+
}
|
|
15070
|
+
|
|
15071
|
+
class TableAliasProxyHandler {
|
|
15072
|
+
constructor(alias, replaceOriginalName) {
|
|
15073
|
+
this.alias = alias;
|
|
15074
|
+
this.replaceOriginalName = replaceOriginalName;
|
|
15075
|
+
}
|
|
15076
|
+
static [entityKind] = "TableAliasProxyHandler";
|
|
15077
|
+
get(target, prop) {
|
|
15078
|
+
if (prop === Table.Symbol.IsAlias) {
|
|
15079
|
+
return true;
|
|
15080
|
+
}
|
|
15081
|
+
if (prop === Table.Symbol.Name) {
|
|
15082
|
+
return this.alias;
|
|
15083
|
+
}
|
|
15084
|
+
if (this.replaceOriginalName && prop === Table.Symbol.OriginalName) {
|
|
15085
|
+
return this.alias;
|
|
15086
|
+
}
|
|
15087
|
+
if (prop === ViewBaseConfig) {
|
|
15088
|
+
return {
|
|
15089
|
+
...target[ViewBaseConfig],
|
|
15090
|
+
name: this.alias,
|
|
15091
|
+
isAlias: true
|
|
15092
|
+
};
|
|
15093
|
+
}
|
|
15094
|
+
if (prop === Table.Symbol.Columns) {
|
|
15095
|
+
const columns = target[Table.Symbol.Columns];
|
|
15096
|
+
if (!columns) {
|
|
15097
|
+
return columns;
|
|
15098
|
+
}
|
|
15099
|
+
const proxiedColumns = {};
|
|
15100
|
+
Object.keys(columns).map((key) => {
|
|
15101
|
+
proxiedColumns[key] = new Proxy(columns[key], new ColumnAliasProxyHandler(new Proxy(target, this)));
|
|
15102
|
+
});
|
|
15103
|
+
return proxiedColumns;
|
|
15104
|
+
}
|
|
15105
|
+
const value = target[prop];
|
|
15106
|
+
if (is(value, Column)) {
|
|
15107
|
+
return new Proxy(value, new ColumnAliasProxyHandler(new Proxy(target, this)));
|
|
15108
|
+
}
|
|
15109
|
+
return value;
|
|
15110
|
+
}
|
|
15111
|
+
}
|
|
15112
|
+
|
|
15113
|
+
// ../../node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare+workers-types@4.20260702.1_@opentelemetry+api@1.9.1_@typ_5aa9492b131e5fac58fa98e88e5c0ad3/node_modules/drizzle-orm/sqlite-core/alias.js
|
|
15114
|
+
function alias(table, alias2) {
|
|
15115
|
+
return new Proxy(table, new TableAliasProxyHandler(alias2, false));
|
|
15116
|
+
}
|
|
15117
|
+
|
|
15118
|
+
// ../../node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare+workers-types@4.20260702.1_@opentelemetry+api@1.9.1_@typ_5aa9492b131e5fac58fa98e88e5c0ad3/node_modules/drizzle-orm/sqlite-core/checks.js
|
|
15119
|
+
class CheckBuilder {
|
|
15120
|
+
constructor(name, value) {
|
|
15121
|
+
this.name = name;
|
|
15122
|
+
this.value = value;
|
|
15123
|
+
}
|
|
15124
|
+
static [entityKind] = "SQLiteCheckBuilder";
|
|
15125
|
+
brand;
|
|
15126
|
+
build(table) {
|
|
15127
|
+
return new Check(table, this);
|
|
15128
|
+
}
|
|
15129
|
+
}
|
|
15130
|
+
|
|
15131
|
+
class Check {
|
|
15132
|
+
constructor(table, builder) {
|
|
15133
|
+
this.table = table;
|
|
15134
|
+
this.name = builder.name;
|
|
15135
|
+
this.value = builder.value;
|
|
15136
|
+
}
|
|
15137
|
+
static [entityKind] = "SQLiteCheck";
|
|
15138
|
+
name;
|
|
15139
|
+
value;
|
|
15140
|
+
}
|
|
15141
|
+
function check2(name, value) {
|
|
15142
|
+
return new CheckBuilder(name, value);
|
|
15143
|
+
}
|
|
15144
|
+
|
|
15990
15145
|
// ../../node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare+workers-types@4.20260702.1_@opentelemetry+api@1.9.1_@typ_5aa9492b131e5fac58fa98e88e5c0ad3/node_modules/drizzle-orm/utils.js
|
|
15991
15146
|
function getColumnNameAndConfig(a, b) {
|
|
15992
15147
|
return {
|
|
@@ -15996,35 +15151,6 @@ function getColumnNameAndConfig(a, b) {
|
|
|
15996
15151
|
}
|
|
15997
15152
|
var textDecoder = typeof TextDecoder === "undefined" ? null : new TextDecoder;
|
|
15998
15153
|
|
|
15999
|
-
// ../shared/src/db/community-schema.ts
|
|
16000
|
-
var exports_community_schema = {};
|
|
16001
|
-
__export(exports_community_schema, {
|
|
16002
|
-
communityUserProfile: () => communityUserProfile,
|
|
16003
|
-
communityServerMember: () => communityServerMember,
|
|
16004
|
-
communityServerInvite: () => communityServerInvite,
|
|
16005
|
-
communityServerFolderItem: () => communityServerFolderItem,
|
|
16006
|
-
communityServerFolder: () => communityServerFolder,
|
|
16007
|
-
communityServer: () => communityServer,
|
|
16008
|
-
communityReadState: () => communityReadState,
|
|
16009
|
-
communityReaction: () => communityReaction,
|
|
16010
|
-
communityPin: () => communityPin,
|
|
16011
|
-
communityNotificationSetting: () => communityNotificationSetting,
|
|
16012
|
-
communityMessageTag: () => communityMessageTag,
|
|
16013
|
-
communityMessageSeq: () => communityMessageSeq,
|
|
16014
|
-
communityMessageMark: () => communityMessageMark,
|
|
16015
|
-
communityMessage: () => communityMessage,
|
|
16016
|
-
communityMention: () => communityMention,
|
|
16017
|
-
communityFriendship: () => communityFriendship,
|
|
16018
|
-
communityChannelMember: () => communityChannelMember,
|
|
16019
|
-
communityChannel: () => communityChannel,
|
|
16020
|
-
communityCategory: () => communityCategory,
|
|
16021
|
-
communityBotDailyActivity: () => communityBotDailyActivity,
|
|
16022
|
-
communityBotApprovalRequest: () => communityBotApprovalRequest,
|
|
16023
|
-
communityBotActivityEvent: () => communityBotActivityEvent,
|
|
16024
|
-
communityAuditLog: () => communityAuditLog,
|
|
16025
|
-
communityAttachment: () => communityAttachment
|
|
16026
|
-
});
|
|
16027
|
-
|
|
16028
15154
|
// ../../node_modules/.pnpm/drizzle-orm@0.45.2_@cloudflare+workers-types@4.20260702.1_@opentelemetry+api@1.9.1_@typ_5aa9492b131e5fac58fa98e88e5c0ad3/node_modules/drizzle-orm/sqlite-core/foreign-keys.js
|
|
16029
15155
|
class ForeignKeyBuilder {
|
|
16030
15156
|
static [entityKind] = "SQLiteForeignKeyBuilder";
|
|
@@ -16693,7 +15819,7 @@ class PrimaryKey {
|
|
|
16693
15819
|
}
|
|
16694
15820
|
}
|
|
16695
15821
|
|
|
16696
|
-
// ../shared/src/db/community-schema.ts
|
|
15822
|
+
// ../shared/src/db/community-machine-schema.ts
|
|
16697
15823
|
init_nanoid();
|
|
16698
15824
|
|
|
16699
15825
|
// ../shared/src/db/schema.ts
|
|
@@ -16735,6 +15861,84 @@ __export(exports_schema, {
|
|
|
16735
15861
|
account: () => account
|
|
16736
15862
|
});
|
|
16737
15863
|
init_nanoid();
|
|
15864
|
+
|
|
15865
|
+
// ../shared/src/constants.ts
|
|
15866
|
+
var TaskStatus = {
|
|
15867
|
+
QUEUED: "queued",
|
|
15868
|
+
DISPATCHED: "dispatched",
|
|
15869
|
+
RUNNING: "running",
|
|
15870
|
+
COMPLETED: "completed",
|
|
15871
|
+
FAILED: "failed",
|
|
15872
|
+
CANCELLED: "cancelled",
|
|
15873
|
+
SUPERSEDED: "superseded"
|
|
15874
|
+
};
|
|
15875
|
+
var TERMINAL_TASK_STATUSES = [
|
|
15876
|
+
TaskStatus.COMPLETED,
|
|
15877
|
+
TaskStatus.FAILED,
|
|
15878
|
+
TaskStatus.CANCELLED,
|
|
15879
|
+
TaskStatus.SUPERSEDED
|
|
15880
|
+
];
|
|
15881
|
+
var TASK_TYPES = {
|
|
15882
|
+
USER_DM_MESSAGE: "user_dm_message",
|
|
15883
|
+
EMAIL_NOTIFICATION: "email_notification",
|
|
15884
|
+
CALENDAR_EVENT: "calendar_event",
|
|
15885
|
+
ISSUE_EVENT: "issue_event",
|
|
15886
|
+
KILL_TASK: "kill_task"
|
|
15887
|
+
};
|
|
15888
|
+
var IssueStatus = {
|
|
15889
|
+
TODO: "todo",
|
|
15890
|
+
IN_PROGRESS: "in_progress",
|
|
15891
|
+
REVIEW: "review",
|
|
15892
|
+
DONE: "done",
|
|
15893
|
+
CLOSED: "closed",
|
|
15894
|
+
CANCELED: "canceled",
|
|
15895
|
+
FAILED: "failed"
|
|
15896
|
+
};
|
|
15897
|
+
var ACTIVE_ISSUE_STATUSES = [
|
|
15898
|
+
IssueStatus.TODO,
|
|
15899
|
+
IssueStatus.IN_PROGRESS,
|
|
15900
|
+
IssueStatus.REVIEW
|
|
15901
|
+
];
|
|
15902
|
+
var TERMINAL_ISSUE_STATUSES = [
|
|
15903
|
+
IssueStatus.DONE,
|
|
15904
|
+
IssueStatus.CLOSED,
|
|
15905
|
+
IssueStatus.CANCELED,
|
|
15906
|
+
IssueStatus.FAILED
|
|
15907
|
+
];
|
|
15908
|
+
var POLL_INTERVAL_MS = Number(process.env.POLL_INTERVAL_MS) || 3000;
|
|
15909
|
+
var OFFLINE_THRESHOLD_MS = Number(process.env.OFFLINE_THRESHOLD_MS) || 30000;
|
|
15910
|
+
var COMMUNITY_MACHINE_HEARTBEAT_MS = 30000;
|
|
15911
|
+
var COMMUNITY_MACHINE_OFFLINE_THRESHOLD_MS = 3 * COMMUNITY_MACHINE_HEARTBEAT_MS;
|
|
15912
|
+
var COMMUNITY_MACHINE_PAIR_TOKEN_TTL_MS = 15 * 60000;
|
|
15913
|
+
var EVENT_POLL_INTERVAL_MS = Number(process.env.EVENT_POLL_INTERVAL_MS) || 2000;
|
|
15914
|
+
var MeetingStatus = {
|
|
15915
|
+
PENDING: "pending",
|
|
15916
|
+
SCHEDULED: "scheduled",
|
|
15917
|
+
JOINING: "joining",
|
|
15918
|
+
RECORDING: "recording",
|
|
15919
|
+
COMPLETED: "completed",
|
|
15920
|
+
FAILED: "failed"
|
|
15921
|
+
};
|
|
15922
|
+
var TERMINAL_MEETING_STATUSES = [
|
|
15923
|
+
MeetingStatus.COMPLETED,
|
|
15924
|
+
MeetingStatus.FAILED
|
|
15925
|
+
];
|
|
15926
|
+
var COMMUNITY_BOT_NAME_MIN = 1;
|
|
15927
|
+
var COMMUNITY_BOT_NAME_MAX = 32;
|
|
15928
|
+
var COMMUNITY_BOT_DESCRIPTION_MAX = 1024;
|
|
15929
|
+
var COMMUNITY_BOT_IMAGE_URL_MAX = 2048;
|
|
15930
|
+
var DEV_PORTS = {
|
|
15931
|
+
web: 3000,
|
|
15932
|
+
emailWorker: 8787,
|
|
15933
|
+
wsDo: 8789,
|
|
15934
|
+
wakeWorker: 8790
|
|
15935
|
+
};
|
|
15936
|
+
var DEV_WEB_URL = process.env.ALOOK_SERVER_URL || `http://localhost:${DEV_PORTS.web}`;
|
|
15937
|
+
var DEV_WS_DO_URL = process.env.DEV_WS_DO_URL || `http://localhost:${DEV_PORTS.wsDo}`;
|
|
15938
|
+
var DEV_EMAIL_WORKER_URL = process.env.DEV_EMAIL_WORKER_URL || `http://localhost:${DEV_PORTS.emailWorker}`;
|
|
15939
|
+
var DEV_WAKE_WORKER_URL = process.env.DEV_WAKE_WORKER_URL || `http://localhost:${DEV_PORTS.wakeWorker}`;
|
|
15940
|
+
|
|
15941
|
+
// ../shared/src/db/schema.ts
|
|
16738
15942
|
var user = sqliteTable("user", {
|
|
16739
15943
|
id: text("id").primaryKey().$defaultFn(() => nanoid3()),
|
|
16740
15944
|
name: text("name").notNull().default(""),
|
|
@@ -17207,85 +16411,1177 @@ var conversationMap = sqliteTable("conversation_map", {
|
|
|
17207
16411
|
}, (t) => [
|
|
17208
16412
|
unique("conversation_map_key_workspace").on(t.key, t.workspaceId)
|
|
17209
16413
|
]);
|
|
17210
|
-
var agentLink = sqliteTable("agent_link", {
|
|
17211
|
-
id: text("id").primaryKey().$defaultFn(() => "al_" + nanoid3()),
|
|
17212
|
-
workspaceId: text("workspace_id").notNull(),
|
|
17213
|
-
sourceAgentId: text("source_agent_id").notNull(),
|
|
17214
|
-
targetAgentId: text("target_agent_id").notNull(),
|
|
17215
|
-
instruction: text("instruction").notNull().default(""),
|
|
17216
|
-
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString()),
|
|
17217
|
-
updatedAt: text("updated_at").notNull().$defaultFn(() => new Date().toISOString())
|
|
17218
|
-
}, (t) => [
|
|
17219
|
-
unique("agent_link_ws_source_target").on(t.workspaceId, t.sourceAgentId, t.targetAgentId),
|
|
17220
|
-
index("idx_agent_link_workspace").on(t.workspaceId),
|
|
17221
|
-
foreignKey({
|
|
17222
|
-
columns: [t.sourceAgentId, t.workspaceId],
|
|
17223
|
-
foreignColumns: [agent.id, agent.workspaceId]
|
|
17224
|
-
}).onDelete("cascade"),
|
|
17225
|
-
foreignKey({
|
|
17226
|
-
columns: [t.targetAgentId, t.workspaceId],
|
|
17227
|
-
foreignColumns: [agent.id, agent.workspaceId]
|
|
17228
|
-
}).onDelete("cascade")
|
|
16414
|
+
var agentLink = sqliteTable("agent_link", {
|
|
16415
|
+
id: text("id").primaryKey().$defaultFn(() => "al_" + nanoid3()),
|
|
16416
|
+
workspaceId: text("workspace_id").notNull(),
|
|
16417
|
+
sourceAgentId: text("source_agent_id").notNull(),
|
|
16418
|
+
targetAgentId: text("target_agent_id").notNull(),
|
|
16419
|
+
instruction: text("instruction").notNull().default(""),
|
|
16420
|
+
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString()),
|
|
16421
|
+
updatedAt: text("updated_at").notNull().$defaultFn(() => new Date().toISOString())
|
|
16422
|
+
}, (t) => [
|
|
16423
|
+
unique("agent_link_ws_source_target").on(t.workspaceId, t.sourceAgentId, t.targetAgentId),
|
|
16424
|
+
index("idx_agent_link_workspace").on(t.workspaceId),
|
|
16425
|
+
foreignKey({
|
|
16426
|
+
columns: [t.sourceAgentId, t.workspaceId],
|
|
16427
|
+
foreignColumns: [agent.id, agent.workspaceId]
|
|
16428
|
+
}).onDelete("cascade"),
|
|
16429
|
+
foreignKey({
|
|
16430
|
+
columns: [t.targetAgentId, t.workspaceId],
|
|
16431
|
+
foreignColumns: [agent.id, agent.workspaceId]
|
|
16432
|
+
}).onDelete("cascade")
|
|
16433
|
+
]);
|
|
16434
|
+
var conversationReadState = sqliteTable("conversation_read_state", {
|
|
16435
|
+
id: text("id").primaryKey().$defaultFn(() => nanoid3()),
|
|
16436
|
+
conversationId: text("conversation_id").notNull().references(() => conversation.id, { onDelete: "cascade" }),
|
|
16437
|
+
userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
|
|
16438
|
+
lastReadAt: text("last_read_at").notNull().default("1970-01-01T00:00:00.000Z"),
|
|
16439
|
+
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString())
|
|
16440
|
+
}, (t) => [
|
|
16441
|
+
unique("conversation_read_state_conv_user").on(t.conversationId, t.userId),
|
|
16442
|
+
index("idx_conversation_read_state_user").on(t.userId)
|
|
16443
|
+
]);
|
|
16444
|
+
var workspaceFileRequest = sqliteTable("workspace_file_request", {
|
|
16445
|
+
id: text("id").primaryKey().$defaultFn(() => "wfr_" + nanoid3()),
|
|
16446
|
+
workspaceId: text("workspace_id").notNull().references(() => workspace.id, { onDelete: "cascade" }),
|
|
16447
|
+
agentId: text("agent_id").notNull(),
|
|
16448
|
+
requestType: text("request_type").notNull(),
|
|
16449
|
+
path: text("path").notNull().default("."),
|
|
16450
|
+
status: text("status").notNull().default("pending"),
|
|
16451
|
+
result: text("result"),
|
|
16452
|
+
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString()),
|
|
16453
|
+
updatedAt: text("updated_at").notNull().$defaultFn(() => new Date().toISOString())
|
|
16454
|
+
}, (t) => [
|
|
16455
|
+
index("idx_wfr_workspace_status").on(t.workspaceId, t.status)
|
|
16456
|
+
]);
|
|
16457
|
+
var agentSkill = sqliteTable("agent_skill", {
|
|
16458
|
+
id: text("id").primaryKey().$defaultFn(() => "as_" + nanoid3()),
|
|
16459
|
+
workspaceId: text("workspace_id").notNull().references(() => workspace.id, { onDelete: "cascade" }),
|
|
16460
|
+
agentId: text("agent_id"),
|
|
16461
|
+
daemonId: text("daemon_id"),
|
|
16462
|
+
runtime: text("runtime").notNull(),
|
|
16463
|
+
name: text("name").notNull(),
|
|
16464
|
+
description: text("description").notNull().default(""),
|
|
16465
|
+
syncedAt: text("synced_at").notNull().$defaultFn(() => new Date().toISOString())
|
|
16466
|
+
}, (t) => [
|
|
16467
|
+
unique("agent_skill_ws_runtime_name_agent_daemon").on(t.workspaceId, t.runtime, t.name, t.agentId, t.daemonId),
|
|
16468
|
+
index("idx_as_workspace_runtime").on(t.workspaceId, t.runtime),
|
|
16469
|
+
index("idx_as_agent_runtime").on(t.agentId, t.runtime),
|
|
16470
|
+
foreignKey({
|
|
16471
|
+
columns: [t.agentId, t.workspaceId],
|
|
16472
|
+
foreignColumns: [agent.id, agent.workspaceId]
|
|
16473
|
+
}).onDelete("cascade")
|
|
16474
|
+
]);
|
|
16475
|
+
var inboxUnread = sqliteTable("inbox_unread", {
|
|
16476
|
+
id: text("id").primaryKey().$defaultFn(() => nanoid3()),
|
|
16477
|
+
conversationId: text("conversation_id").notNull().references(() => conversation.id, { onDelete: "cascade" }),
|
|
16478
|
+
userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
|
|
16479
|
+
workspaceId: text("workspace_id").notNull(),
|
|
16480
|
+
agentId: text("agent_id").notNull(),
|
|
16481
|
+
taskId: text("task_id").notNull(),
|
|
16482
|
+
taskType: text("task_type").notNull(),
|
|
16483
|
+
taskStatus: text("task_status").notNull(),
|
|
16484
|
+
taskPrompt: text("task_prompt"),
|
|
16485
|
+
completedAt: text("completed_at").notNull(),
|
|
16486
|
+
latestMessageId: text("latest_message_id")
|
|
16487
|
+
}, (t) => [
|
|
16488
|
+
unique("inbox_unread_conv_user").on(t.conversationId, t.userId),
|
|
16489
|
+
index("idx_inbox_unread_user_ws").on(t.userId, t.workspaceId, t.taskType, t.completedAt)
|
|
16490
|
+
]);
|
|
16491
|
+
|
|
16492
|
+
// ../shared/src/db/community-machine-schema.ts
|
|
16493
|
+
var DIAGNOSTIC_REPORT_FAILURE_CODES = [
|
|
16494
|
+
"offline",
|
|
16495
|
+
"timeout",
|
|
16496
|
+
"upload_conflict",
|
|
16497
|
+
"invalid_upload",
|
|
16498
|
+
"diagnostics_unavailable",
|
|
16499
|
+
"collector_busy",
|
|
16500
|
+
"bot_not_bound",
|
|
16501
|
+
"collection_failed",
|
|
16502
|
+
"local_artifact_invalid",
|
|
16503
|
+
"bundle_too_large",
|
|
16504
|
+
"upload_failed",
|
|
16505
|
+
"internal_error"
|
|
16506
|
+
];
|
|
16507
|
+
var communityDiagnosticReport = sqliteTable("community_diagnostic_report", {
|
|
16508
|
+
id: text("id").primaryKey().$defaultFn(() => "dbr_" + nanoid3()),
|
|
16509
|
+
ownerUserId: text("owner_user_id").notNull(),
|
|
16510
|
+
agentId: text("agent_id").notNull(),
|
|
16511
|
+
machineId: text("machine_id").notNull(),
|
|
16512
|
+
clientNonce: text("client_nonce").notNull(),
|
|
16513
|
+
rateBucket: integer2("rate_bucket").notNull(),
|
|
16514
|
+
status: text("status").$type().notNull().default("pending"),
|
|
16515
|
+
failureCode: text("failure_code").$type(),
|
|
16516
|
+
fromMs: integer2("from_ms").notNull(),
|
|
16517
|
+
createdAt: integer2("created_at").notNull(),
|
|
16518
|
+
deadlineAt: integer2("deadline_at").notNull(),
|
|
16519
|
+
completedAt: integer2("completed_at"),
|
|
16520
|
+
r2Key: text("r2_key"),
|
|
16521
|
+
sha256: text("sha256"),
|
|
16522
|
+
sizeBytes: integer2("size_bytes"),
|
|
16523
|
+
uploadedAt: integer2("uploaded_at"),
|
|
16524
|
+
objectExpiresAt: integer2("object_expires_at")
|
|
16525
|
+
}, (t) => [
|
|
16526
|
+
index("idx_community_diagnostic_report_owner_created").on(t.ownerUserId, t.createdAt),
|
|
16527
|
+
index("idx_community_diagnostic_report_machine_status_deadline").on(t.machineId, t.status, t.deadlineAt),
|
|
16528
|
+
uniqueIndex("uq_community_diagnostic_report_owner_nonce").on(t.ownerUserId, t.clientNonce),
|
|
16529
|
+
uniqueIndex("uq_community_diagnostic_report_owner_agent_pending").on(t.ownerUserId, t.agentId).where(sql`status = 'pending'`),
|
|
16530
|
+
uniqueIndex("uq_community_diagnostic_report_owner_rate_bucket").on(t.ownerUserId, t.rateBucket),
|
|
16531
|
+
check2("ck_community_diagnostic_report_id", sql`length(${t.id}) > 4 AND substr(${t.id}, 1, 4) = 'dbr_' AND ${t.id} NOT GLOB '*[^A-Za-z0-9_-]*'`),
|
|
16532
|
+
check2("ck_community_diagnostic_report_nonce", sql`length(${t.clientNonce}) BETWEEN 16 AND 64 AND ${t.clientNonce} NOT GLOB '*[^A-Za-z0-9_-]*'`),
|
|
16533
|
+
check2("ck_community_diagnostic_report_required_epochs", sql`typeof(${t.fromMs}) = 'integer' AND ${t.fromMs} BETWEEN 0 AND 9007199254740991
|
|
16534
|
+
AND typeof(${t.createdAt}) = 'integer' AND ${t.createdAt} BETWEEN 0 AND 9007199254740991
|
|
16535
|
+
AND typeof(${t.deadlineAt}) = 'integer' AND ${t.deadlineAt} BETWEEN 0 AND 9007199254740991
|
|
16536
|
+
AND ${t.fromMs} = ${t.createdAt} - 86400000
|
|
16537
|
+
AND ${t.deadlineAt} = ${t.createdAt} + 600000`),
|
|
16538
|
+
check2("ck_community_diagnostic_report_rate_bucket", sql`typeof(${t.rateBucket}) = 'integer'
|
|
16539
|
+
AND ${t.rateBucket} BETWEEN 0 AND 9007199254740991
|
|
16540
|
+
AND ${t.rateBucket} = CAST(${t.createdAt} / 60000 AS INTEGER)`),
|
|
16541
|
+
check2("ck_community_diagnostic_report_nullable_epochs", sql`(${t.completedAt} IS NULL OR (typeof(${t.completedAt}) = 'integer' AND ${t.completedAt} BETWEEN 0 AND 9007199254740991))
|
|
16542
|
+
AND (${t.uploadedAt} IS NULL OR (typeof(${t.uploadedAt}) = 'integer' AND ${t.uploadedAt} BETWEEN 0 AND 9007199254740991))
|
|
16543
|
+
AND (${t.objectExpiresAt} IS NULL OR (typeof(${t.objectExpiresAt}) = 'integer' AND ${t.objectExpiresAt} BETWEEN 0 AND 9007199254740991))`),
|
|
16544
|
+
check2("ck_community_diagnostic_report_size", sql`${t.sizeBytes} IS NULL OR (typeof(${t.sizeBytes}) = 'integer' AND ${t.sizeBytes} BETWEEN 1 AND 10485760)`),
|
|
16545
|
+
check2("ck_community_diagnostic_report_sha256", sql`${t.sha256} IS NULL OR (length(${t.sha256}) = 64 AND ${t.sha256} NOT GLOB '*[^0-9a-f]*')`),
|
|
16546
|
+
check2("ck_community_diagnostic_report_state", sql`(
|
|
16547
|
+
${t.status} = 'pending'
|
|
16548
|
+
AND ${t.failureCode} IS NULL AND ${t.completedAt} IS NULL
|
|
16549
|
+
AND ${t.r2Key} IS NULL AND ${t.sha256} IS NULL AND ${t.sizeBytes} IS NULL
|
|
16550
|
+
AND ${t.uploadedAt} IS NULL AND ${t.objectExpiresAt} IS NULL
|
|
16551
|
+
) OR (
|
|
16552
|
+
${t.status} = 'failed'
|
|
16553
|
+
AND ${t.failureCode} IN ('offline', 'timeout', 'upload_conflict', 'invalid_upload', 'diagnostics_unavailable', 'collector_busy', 'bot_not_bound', 'collection_failed', 'local_artifact_invalid', 'bundle_too_large', 'upload_failed', 'internal_error')
|
|
16554
|
+
AND ${t.completedAt} IS NOT NULL
|
|
16555
|
+
AND ${t.completedAt} >= ${t.createdAt}
|
|
16556
|
+
AND ${t.r2Key} IS NULL AND ${t.sha256} IS NULL AND ${t.sizeBytes} IS NULL
|
|
16557
|
+
AND ${t.uploadedAt} IS NULL AND ${t.objectExpiresAt} IS NULL
|
|
16558
|
+
) OR (
|
|
16559
|
+
${t.status} = 'uploaded'
|
|
16560
|
+
AND ${t.failureCode} IS NULL AND ${t.completedAt} IS NOT NULL
|
|
16561
|
+
AND ${t.completedAt} >= ${t.createdAt}
|
|
16562
|
+
AND ${t.r2Key} IS NOT NULL
|
|
16563
|
+
AND ${t.r2Key} = 'bug-reports/' || ${t.ownerUserId} || '/' || ${t.id} || '.ndjson.gz'
|
|
16564
|
+
AND ${t.sha256} IS NOT NULL AND ${t.sizeBytes} IS NOT NULL
|
|
16565
|
+
AND ${t.uploadedAt} IS NOT NULL AND ${t.objectExpiresAt} IS NOT NULL
|
|
16566
|
+
AND ${t.completedAt} = ${t.uploadedAt}
|
|
16567
|
+
AND ${t.objectExpiresAt} = ${t.uploadedAt} + 604800000
|
|
16568
|
+
)`)
|
|
16569
|
+
]);
|
|
16570
|
+
var communityMachineToken = sqliteTable("community_machine_token", {
|
|
16571
|
+
id: text("id").primaryKey().$defaultFn(() => "cmt_" + nanoid3(32)),
|
|
16572
|
+
userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
|
|
16573
|
+
machineId: text("machine_id"),
|
|
16574
|
+
status: text("status").notNull().default("pending"),
|
|
16575
|
+
expiresAt: text("expires_at").notNull(),
|
|
16576
|
+
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString()),
|
|
16577
|
+
lastUsedAt: text("last_used_at")
|
|
16578
|
+
}, (t) => [
|
|
16579
|
+
index("idx_community_machine_token_user_status").on(t.userId, t.status),
|
|
16580
|
+
uniqueIndex("uq_community_machine_token_user_pending").on(t.userId).where(sql`status = 'pending'`)
|
|
16581
|
+
]);
|
|
16582
|
+
var communityMachine = sqliteTable("community_machine", {
|
|
16583
|
+
id: text("id").primaryKey().$defaultFn(() => "cm_" + nanoid3()),
|
|
16584
|
+
userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
|
|
16585
|
+
displayName: text("display_name").notNull().default(""),
|
|
16586
|
+
hostname: text("hostname").notNull().default(""),
|
|
16587
|
+
platform: text("platform").notNull().default(""),
|
|
16588
|
+
arch: text("arch").notNull().default(""),
|
|
16589
|
+
osRelease: text("os_release").notNull().default(""),
|
|
16590
|
+
daemonVersion: text("daemon_version").notNull().default(""),
|
|
16591
|
+
metadata: text("metadata"),
|
|
16592
|
+
availableRuntimes: text("available_runtimes", { mode: "json" }).$type().notNull().default([]),
|
|
16593
|
+
status: text("status").notNull().default("offline"),
|
|
16594
|
+
lastSeenAt: text("last_seen_at"),
|
|
16595
|
+
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString()),
|
|
16596
|
+
updatedAt: text("updated_at").notNull().$defaultFn(() => new Date().toISOString())
|
|
16597
|
+
}, (t) => [
|
|
16598
|
+
index("idx_community_machine_user_last_seen").on(t.userId, t.lastSeenAt),
|
|
16599
|
+
index("idx_community_machine_user_updated").on(t.userId, t.updatedAt),
|
|
16600
|
+
index("idx_community_machine_user_status").on(t.userId, t.status)
|
|
16601
|
+
]);
|
|
16602
|
+
var communityMachineCredential = sqliteTable("community_machine_credential", {
|
|
16603
|
+
id: text("id").primaryKey().$defaultFn(() => "cmkid_" + nanoid3()),
|
|
16604
|
+
userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
|
|
16605
|
+
machineId: text("machine_id").notNull().references(() => communityMachine.id, { onDelete: "cascade" }),
|
|
16606
|
+
credentialHash: text("credential_hash").notNull().unique(),
|
|
16607
|
+
doName: text("do_name").notNull().unique(),
|
|
16608
|
+
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString()),
|
|
16609
|
+
lastUsedAt: text("last_used_at"),
|
|
16610
|
+
revokedAt: text("revoked_at")
|
|
16611
|
+
}, (t) => [
|
|
16612
|
+
index("idx_community_machine_credential_user").on(t.userId),
|
|
16613
|
+
index("idx_community_machine_credential_machine").on(t.machineId)
|
|
16614
|
+
]);
|
|
16615
|
+
var communityBotBinding = sqliteTable("community_bot_binding", {
|
|
16616
|
+
userId: text("user_id").primaryKey().references(() => user.id, { onDelete: "cascade" }),
|
|
16617
|
+
machineId: text("machine_id").notNull().references(() => communityMachine.id, { onDelete: "restrict" }),
|
|
16618
|
+
runtime: text("runtime").notNull(),
|
|
16619
|
+
modelName: text("model_name"),
|
|
16620
|
+
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString())
|
|
16621
|
+
}, (t) => [index("idx_community_bot_binding_machine").on(t.machineId)]);
|
|
16622
|
+
var communityAgentRunnerKey = sqliteTable("community_agent_runner_key", {
|
|
16623
|
+
id: text("id").primaryKey().$defaultFn(() => "crkid_" + nanoid3()),
|
|
16624
|
+
userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
|
|
16625
|
+
machineId: text("machine_id").notNull().references(() => communityMachine.id, { onDelete: "cascade" }),
|
|
16626
|
+
agentId: text("agent_id").notNull(),
|
|
16627
|
+
runnerKeyHash: text("runner_key_hash").notNull().unique(),
|
|
16628
|
+
doName: text("do_name").notNull().unique(),
|
|
16629
|
+
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString()),
|
|
16630
|
+
revokedAt: text("revoked_at")
|
|
16631
|
+
}, (t) => [
|
|
16632
|
+
index("idx_community_agent_runner_key_machine_agent").on(t.machineId, t.agentId)
|
|
16633
|
+
]);
|
|
16634
|
+
|
|
16635
|
+
// ../shared/src/diagnostics-contract.ts
|
|
16636
|
+
var DIAGNOSTIC_REPORT_COLLECTION_WINDOW_MS = 86400000;
|
|
16637
|
+
var DIAGNOSTIC_REPORT_DEADLINE_WINDOW_MS = 600000;
|
|
16638
|
+
var DIAGNOSTIC_COLLECT_SPAN_MS = DIAGNOSTIC_REPORT_COLLECTION_WINDOW_MS + DIAGNOSTIC_REPORT_DEADLINE_WINDOW_MS;
|
|
16639
|
+
var SafeEpochSchema = exports_external.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER);
|
|
16640
|
+
var AgentIdSchema = exports_external.string().min(1).regex(/^[A-Za-z0-9_-]+$/);
|
|
16641
|
+
var DiagnosticReportIdSchema = exports_external.string().regex(/^dbr_[A-Za-z0-9_-]+$/);
|
|
16642
|
+
var DiagnosticReportFailureCodeSchema = exports_external.enum(DIAGNOSTIC_REPORT_FAILURE_CODES);
|
|
16643
|
+
var DiagnosticReportCreateRequestSchema = exports_external.object({
|
|
16644
|
+
clientNonce: exports_external.string().min(16).max(64).regex(/^[A-Za-z0-9_-]+$/)
|
|
16645
|
+
}).strict();
|
|
16646
|
+
var DiagnosticCollectPayloadSchema = exports_external.object({
|
|
16647
|
+
reportId: DiagnosticReportIdSchema,
|
|
16648
|
+
agentId: AgentIdSchema,
|
|
16649
|
+
fromMs: SafeEpochSchema,
|
|
16650
|
+
deadlineAt: SafeEpochSchema
|
|
16651
|
+
}).strict();
|
|
16652
|
+
var DiagnosticCollectCommandSchema = exports_external.object({
|
|
16653
|
+
type: exports_external.literal("diagnostics:collect"),
|
|
16654
|
+
reportId: DiagnosticReportIdSchema,
|
|
16655
|
+
agentId: AgentIdSchema,
|
|
16656
|
+
fromMs: SafeEpochSchema,
|
|
16657
|
+
deadlineAt: SafeEpochSchema
|
|
16658
|
+
}).strict().refine((command) => command.deadlineAt - command.fromMs === DIAGNOSTIC_COLLECT_SPAN_MS, { message: "diagnostic collection span must match v1" });
|
|
16659
|
+
var OwnerDiagnosticReportBase = {
|
|
16660
|
+
reportId: DiagnosticReportIdSchema,
|
|
16661
|
+
deadlineAt: SafeEpochSchema
|
|
16662
|
+
};
|
|
16663
|
+
var OwnerDiagnosticReportSchema = exports_external.discriminatedUnion("status", [
|
|
16664
|
+
exports_external.object({
|
|
16665
|
+
...OwnerDiagnosticReportBase,
|
|
16666
|
+
status: exports_external.literal("pending"),
|
|
16667
|
+
completedAt: exports_external.null(),
|
|
16668
|
+
failureCode: exports_external.null(),
|
|
16669
|
+
objectExpired: exports_external.literal(false)
|
|
16670
|
+
}).strict(),
|
|
16671
|
+
exports_external.object({
|
|
16672
|
+
...OwnerDiagnosticReportBase,
|
|
16673
|
+
status: exports_external.literal("uploaded"),
|
|
16674
|
+
completedAt: SafeEpochSchema,
|
|
16675
|
+
failureCode: exports_external.null(),
|
|
16676
|
+
objectExpired: exports_external.boolean()
|
|
16677
|
+
}).strict(),
|
|
16678
|
+
exports_external.object({
|
|
16679
|
+
...OwnerDiagnosticReportBase,
|
|
16680
|
+
status: exports_external.literal("failed"),
|
|
16681
|
+
completedAt: SafeEpochSchema,
|
|
16682
|
+
failureCode: DiagnosticReportFailureCodeSchema,
|
|
16683
|
+
objectExpired: exports_external.literal(false)
|
|
16684
|
+
}).strict()
|
|
16685
|
+
]);
|
|
16686
|
+
// ../shared/src/constants/community.ts
|
|
16687
|
+
var MAX_PROFILE_NAME_LENGTH = 100;
|
|
16688
|
+
var MAX_MESSAGE_CONTENT_LENGTH = 4000;
|
|
16689
|
+
var MAX_ATTACHMENTS_PER_MESSAGE = 10;
|
|
16690
|
+
var MAX_ATTACHMENT_SIZE_BYTES = 25 * 1024 * 1024;
|
|
16691
|
+
var MAX_SERVER_ICON_SIZE_BYTES = 5 * 1024 * 1024;
|
|
16692
|
+
var MAX_ICON_SOURCE_FILE_SIZE_BYTES = 15 * 1024 * 1024;
|
|
16693
|
+
// ../shared/src/utils/slug.ts
|
|
16694
|
+
init_nanoid();
|
|
16695
|
+
var slugId = customAlphabet("0123456789abcdefghijklmnopqrstuvwxyz");
|
|
16696
|
+
function sanitizeSlug(input) {
|
|
16697
|
+
return input.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "").slice(0, 60).replace(/-+$/g, "");
|
|
16698
|
+
}
|
|
16699
|
+
|
|
16700
|
+
// ../shared/src/lib/community-name.ts
|
|
16701
|
+
var FORBIDDEN_NAME_CHARS = /[#@\x00-\x1f\x7f-\x9f]/;
|
|
16702
|
+
function validateCommunityName(name) {
|
|
16703
|
+
const trimmed = name.trim();
|
|
16704
|
+
if (!trimmed)
|
|
16705
|
+
return { ok: false, reason: "name cannot be empty" };
|
|
16706
|
+
if (trimmed.length > MAX_PROFILE_NAME_LENGTH) {
|
|
16707
|
+
return { ok: false, reason: `name must be ≤ ${MAX_PROFILE_NAME_LENGTH} characters` };
|
|
16708
|
+
}
|
|
16709
|
+
if (FORBIDDEN_NAME_CHARS.test(trimmed)) {
|
|
16710
|
+
return { ok: false, reason: "name cannot contain #, @, or line breaks" };
|
|
16711
|
+
}
|
|
16712
|
+
return { ok: true };
|
|
16713
|
+
}
|
|
16714
|
+
|
|
16715
|
+
// ../shared/src/schemas.ts
|
|
16716
|
+
var TaskStatusSchema = exports_external.enum([
|
|
16717
|
+
"queued",
|
|
16718
|
+
"dispatched",
|
|
16719
|
+
"running",
|
|
16720
|
+
"completed",
|
|
16721
|
+
"failed",
|
|
16722
|
+
"cancelled",
|
|
16723
|
+
"superseded"
|
|
16724
|
+
]);
|
|
16725
|
+
var ClaimedTaskRowSchema = exports_external.object({
|
|
16726
|
+
id: exports_external.string(),
|
|
16727
|
+
agentId: exports_external.string(),
|
|
16728
|
+
runtimeId: exports_external.string(),
|
|
16729
|
+
workspaceId: exports_external.string(),
|
|
16730
|
+
conversationId: exports_external.string(),
|
|
16731
|
+
prompt: exports_external.string(),
|
|
16732
|
+
status: exports_external.string(),
|
|
16733
|
+
priority: exports_external.coerce.number(),
|
|
16734
|
+
result: exports_external.unknown().nullable(),
|
|
16735
|
+
context: exports_external.unknown().nullable(),
|
|
16736
|
+
type: exports_external.string().default(TASK_TYPES.USER_DM_MESSAGE),
|
|
16737
|
+
contextKey: exports_external.string().nullable().optional(),
|
|
16738
|
+
sessionId: exports_external.string().nullable(),
|
|
16739
|
+
createdAt: exports_external.coerce.date(),
|
|
16740
|
+
dispatchedAt: exports_external.coerce.date().nullable(),
|
|
16741
|
+
startedAt: exports_external.coerce.date().nullable(),
|
|
16742
|
+
completedAt: exports_external.coerce.date().nullable(),
|
|
16743
|
+
error: exports_external.string().nullable(),
|
|
16744
|
+
traceId: exports_external.string().nullable().optional(),
|
|
16745
|
+
parentTaskId: exports_external.string().nullable().optional()
|
|
16746
|
+
});
|
|
16747
|
+
var ColleagueDataApiSchema = exports_external.object({
|
|
16748
|
+
name: exports_external.string(),
|
|
16749
|
+
email: exports_external.string(),
|
|
16750
|
+
description: exports_external.string(),
|
|
16751
|
+
instruction: exports_external.string()
|
|
16752
|
+
});
|
|
16753
|
+
var TaskAgentDataApiSchema = exports_external.object({
|
|
16754
|
+
instructions: exports_external.string(),
|
|
16755
|
+
name: exports_external.string(),
|
|
16756
|
+
runtime_config: exports_external.record(exports_external.string(), exports_external.unknown()).default({}),
|
|
16757
|
+
email_handle: exports_external.string().nullable().optional(),
|
|
16758
|
+
email_addresses: exports_external.array(exports_external.string()).default([]),
|
|
16759
|
+
user_email: exports_external.string().nullable().optional(),
|
|
16760
|
+
user_name: exports_external.string().nullable().optional(),
|
|
16761
|
+
colleagues: exports_external.array(ColleagueDataApiSchema).default([])
|
|
16762
|
+
});
|
|
16763
|
+
var TaskApiBaseSchema = exports_external.object({
|
|
16764
|
+
id: exports_external.string(),
|
|
16765
|
+
agent_id: exports_external.string(),
|
|
16766
|
+
runtime_id: exports_external.string(),
|
|
16767
|
+
conversation_id: exports_external.string(),
|
|
16768
|
+
workspace_id: exports_external.string(),
|
|
16769
|
+
prompt: exports_external.string(),
|
|
16770
|
+
status: exports_external.string(),
|
|
16771
|
+
priority: exports_external.number(),
|
|
16772
|
+
dispatched_at: exports_external.string().nullable(),
|
|
16773
|
+
started_at: exports_external.string().nullable(),
|
|
16774
|
+
completed_at: exports_external.string().nullable(),
|
|
16775
|
+
result: exports_external.unknown().nullable(),
|
|
16776
|
+
error: exports_external.string().nullable(),
|
|
16777
|
+
created_at: exports_external.string(),
|
|
16778
|
+
type: exports_external.string(),
|
|
16779
|
+
context_key: exports_external.string().nullable().optional(),
|
|
16780
|
+
context: exports_external.unknown().nullable().optional(),
|
|
16781
|
+
trace_id: exports_external.string().nullable().optional(),
|
|
16782
|
+
parent_task_id: exports_external.string().nullable().optional(),
|
|
16783
|
+
channel: exports_external.string().nullable().optional()
|
|
16784
|
+
});
|
|
16785
|
+
var TaskSenderApiSchema = exports_external.object({
|
|
16786
|
+
name: exports_external.string(),
|
|
16787
|
+
email: exports_external.string(),
|
|
16788
|
+
is_owner: exports_external.boolean()
|
|
16789
|
+
});
|
|
16790
|
+
var TaskApiSchema = TaskApiBaseSchema.extend({
|
|
16791
|
+
agent: TaskAgentDataApiSchema.nullable().optional(),
|
|
16792
|
+
sender: TaskSenderApiSchema.nullable().optional()
|
|
16793
|
+
});
|
|
16794
|
+
var HeartbeatRequestSchema = exports_external.object({
|
|
16795
|
+
daemon_id: exports_external.string().min(1)
|
|
16796
|
+
});
|
|
16797
|
+
var PollRequestSchema = exports_external.object({
|
|
16798
|
+
daemon_id: exports_external.string().min(1),
|
|
16799
|
+
max_tasks: exports_external.number().int().min(1).default(1),
|
|
16800
|
+
cli_version: exports_external.string().optional()
|
|
16801
|
+
});
|
|
16802
|
+
var FileRequestItemSchema = exports_external.object({
|
|
16803
|
+
id: exports_external.string(),
|
|
16804
|
+
agent_id: exports_external.string(),
|
|
16805
|
+
request_type: exports_external.enum(["tree", "read"]),
|
|
16806
|
+
path: exports_external.string()
|
|
16807
|
+
});
|
|
16808
|
+
var PollMeetingItemSchema = exports_external.object({
|
|
16809
|
+
id: exports_external.string(),
|
|
16810
|
+
meeting_url: exports_external.string(),
|
|
16811
|
+
participants: exports_external.array(exports_external.string()),
|
|
16812
|
+
workspace_id: exports_external.string(),
|
|
16813
|
+
agent_id: exports_external.string(),
|
|
16814
|
+
agent_name: exports_external.string(),
|
|
16815
|
+
title: exports_external.string().optional()
|
|
16816
|
+
});
|
|
16817
|
+
var PollResponseSchema = exports_external.object({
|
|
16818
|
+
tasks: exports_external.array(TaskApiSchema),
|
|
16819
|
+
evicted: exports_external.boolean().optional(),
|
|
16820
|
+
pending_update: exports_external.object({ version: exports_external.string() }).optional(),
|
|
16821
|
+
pending_rescan: exports_external.boolean().optional(),
|
|
16822
|
+
file_requests: exports_external.array(FileRequestItemSchema).optional(),
|
|
16823
|
+
meetings: exports_external.array(PollMeetingItemSchema).optional()
|
|
16824
|
+
});
|
|
16825
|
+
var DaemonPushMessageSchema = exports_external.discriminatedUnion("type", [
|
|
16826
|
+
exports_external.object({ type: exports_external.literal("daemon.tasks"), tasks: exports_external.array(TaskApiSchema) }),
|
|
16827
|
+
exports_external.object({ type: exports_external.literal("daemon.file_requests"), workspaceId: exports_external.string(), requests: exports_external.array(FileRequestItemSchema) }),
|
|
16828
|
+
exports_external.object({ type: exports_external.literal("daemon.meetings"), meetings: exports_external.array(PollMeetingItemSchema) }),
|
|
16829
|
+
exports_external.object({ type: exports_external.literal("daemon.evict"), workspaceId: exports_external.string() }),
|
|
16830
|
+
exports_external.object({ type: exports_external.literal("daemon.update"), version: exports_external.string() }),
|
|
16831
|
+
exports_external.object({ type: exports_external.literal("daemon.rescan") }),
|
|
16832
|
+
exports_external.object({ type: exports_external.literal("daemon.kill"), workspaceId: exports_external.string(), agentId: exports_external.string().min(1), taskId: exports_external.string(), targetTaskId: exports_external.string() })
|
|
17229
16833
|
]);
|
|
17230
|
-
var
|
|
17231
|
-
|
|
17232
|
-
|
|
17233
|
-
|
|
17234
|
-
|
|
17235
|
-
|
|
17236
|
-
|
|
17237
|
-
|
|
17238
|
-
|
|
16834
|
+
var RegisterResponseSchema = exports_external.object({
|
|
16835
|
+
runtimes: exports_external.array(exports_external.object({ id: exports_external.string() }))
|
|
16836
|
+
});
|
|
16837
|
+
var DaemonRuntimeItemSchema = exports_external.object({
|
|
16838
|
+
type: exports_external.string().optional(),
|
|
16839
|
+
provider: exports_external.string().optional(),
|
|
16840
|
+
runtime_mode: exports_external.string().optional(),
|
|
16841
|
+
version: exports_external.string().optional(),
|
|
16842
|
+
status: exports_external.string().optional(),
|
|
16843
|
+
model: exports_external.string().optional()
|
|
16844
|
+
});
|
|
16845
|
+
var ActivateTokenRuntimeSchema = exports_external.object({
|
|
16846
|
+
type: exports_external.string().min(1),
|
|
16847
|
+
version: exports_external.string().optional().default("")
|
|
16848
|
+
});
|
|
16849
|
+
var ActivateTokenRequestSchema = exports_external.object({
|
|
16850
|
+
token: exports_external.string().min(1),
|
|
16851
|
+
hostname: exports_external.string().min(1),
|
|
16852
|
+
runtimes: exports_external.array(ActivateTokenRuntimeSchema).min(1)
|
|
16853
|
+
});
|
|
16854
|
+
var RegisterDaemonRequestSchema = exports_external.object({
|
|
16855
|
+
workspace_id: exports_external.string().min(1).optional(),
|
|
16856
|
+
daemon_id: exports_external.string().min(1),
|
|
16857
|
+
device_name: exports_external.string().optional().default(""),
|
|
16858
|
+
cli_version: exports_external.string().optional().default(""),
|
|
16859
|
+
workspaces_root: exports_external.string().optional().default(""),
|
|
16860
|
+
runtimes: exports_external.array(DaemonRuntimeItemSchema).min(1)
|
|
16861
|
+
});
|
|
16862
|
+
var DeregisterRequestSchema = exports_external.object({
|
|
16863
|
+
daemon_id: exports_external.string().min(1)
|
|
16864
|
+
});
|
|
16865
|
+
var CompleteTaskRequestSchema = exports_external.object({
|
|
16866
|
+
output: exports_external.string().optional(),
|
|
16867
|
+
session_id: exports_external.string().optional(),
|
|
16868
|
+
branch_name: exports_external.string().optional()
|
|
16869
|
+
});
|
|
16870
|
+
var FailTaskRequestSchema = exports_external.object({
|
|
16871
|
+
error: exports_external.string().optional().default("")
|
|
16872
|
+
});
|
|
16873
|
+
var MessageItemSchema = exports_external.object({
|
|
16874
|
+
seq: exports_external.number(),
|
|
16875
|
+
type: exports_external.string(),
|
|
16876
|
+
tool: exports_external.string().optional(),
|
|
16877
|
+
call_id: exports_external.string().optional(),
|
|
16878
|
+
content: exports_external.string().optional(),
|
|
16879
|
+
input: exports_external.record(exports_external.string(), exports_external.unknown()).optional(),
|
|
16880
|
+
output: exports_external.string().optional()
|
|
16881
|
+
});
|
|
16882
|
+
var ReportMessagesRequestSchema = exports_external.object({
|
|
16883
|
+
messages: exports_external.array(MessageItemSchema)
|
|
16884
|
+
});
|
|
16885
|
+
var RepeatIntervalSchema = exports_external.string().regex(/^\d+(min|hour|day|week|month)$/, {
|
|
16886
|
+
message: "repeat_interval must match <positive_integer><min|hour|day|week|month>"
|
|
16887
|
+
});
|
|
16888
|
+
var CreateCalendarEventRequestSchema = exports_external.object({
|
|
16889
|
+
agent_id: exports_external.string().min(1),
|
|
16890
|
+
title: exports_external.string().min(1),
|
|
16891
|
+
description: exports_external.string().max(20000).optional(),
|
|
16892
|
+
scheduled_at: exports_external.string().min(1).refine((s) => !Number.isNaN(Date.parse(s)), {
|
|
16893
|
+
message: "scheduled_at must be a valid ISO datetime"
|
|
16894
|
+
}),
|
|
16895
|
+
repeat_interval: RepeatIntervalSchema.optional(),
|
|
16896
|
+
repeat_stop_date: exports_external.string().regex(/^\d{4}-\d{2}-\d{2}$/).optional(),
|
|
16897
|
+
conversation_id: exports_external.string().optional()
|
|
16898
|
+
}).refine((data) => !data.repeat_stop_date || !!data.repeat_interval, {
|
|
16899
|
+
message: "repeat_stop_date requires repeat_interval",
|
|
16900
|
+
path: ["repeat_stop_date"]
|
|
16901
|
+
});
|
|
16902
|
+
var UpdateCalendarEventRequestSchema = exports_external.object({
|
|
16903
|
+
title: exports_external.string().min(1).optional(),
|
|
16904
|
+
description: exports_external.string().max(20000).nullable().optional(),
|
|
16905
|
+
agent_id: exports_external.string().min(1).optional(),
|
|
16906
|
+
scheduled_at: exports_external.string().min(1).refine((s) => !Number.isNaN(Date.parse(s)), {
|
|
16907
|
+
message: "scheduled_at must be a valid ISO datetime"
|
|
16908
|
+
}).optional(),
|
|
16909
|
+
repeat_interval: RepeatIntervalSchema.nullable().optional(),
|
|
16910
|
+
repeat_stop_date: exports_external.string().regex(/^\d{4}-\d{2}-\d{2}$/).nullable().optional(),
|
|
16911
|
+
scope: exports_external.enum(["this", "following"]).optional(),
|
|
16912
|
+
occurrence_at: exports_external.string().min(1).refine((s) => !Number.isNaN(Date.parse(s)), {
|
|
16913
|
+
message: "occurrence_at must be a valid ISO datetime"
|
|
16914
|
+
}).optional()
|
|
16915
|
+
}).refine((v) => v.title !== undefined || v.description !== undefined || v.agent_id !== undefined || v.scheduled_at !== undefined || v.repeat_interval !== undefined || v.repeat_stop_date !== undefined, { message: "at least one field is required" });
|
|
16916
|
+
var DeleteCalendarEventRequestSchema = exports_external.object({
|
|
16917
|
+
scope: exports_external.enum(["this", "following"]).optional(),
|
|
16918
|
+
occurrence_at: exports_external.string().min(1).refine((s) => !Number.isNaN(Date.parse(s)), {
|
|
16919
|
+
message: "occurrence_at must be a valid ISO datetime"
|
|
16920
|
+
}).optional()
|
|
16921
|
+
});
|
|
16922
|
+
var CalendarEventApiSchema = exports_external.object({
|
|
16923
|
+
id: exports_external.string(),
|
|
16924
|
+
agent_id: exports_external.string(),
|
|
16925
|
+
workspace_id: exports_external.string(),
|
|
16926
|
+
title: exports_external.string(),
|
|
16927
|
+
description: exports_external.string().nullable(),
|
|
16928
|
+
scheduled_at: exports_external.string(),
|
|
16929
|
+
occurrence_at: exports_external.string(),
|
|
16930
|
+
collapsed_count: exports_external.number().nullable().optional(),
|
|
16931
|
+
repeat_interval: exports_external.string().nullable(),
|
|
16932
|
+
repeat_stop_at: exports_external.string().nullable(),
|
|
16933
|
+
last_triggered_at: exports_external.string().nullable(),
|
|
16934
|
+
created_at: exports_external.string(),
|
|
16935
|
+
updated_at: exports_external.string()
|
|
16936
|
+
});
|
|
16937
|
+
var IssueStatusSchema = exports_external.enum([
|
|
16938
|
+
IssueStatus.TODO,
|
|
16939
|
+
IssueStatus.IN_PROGRESS,
|
|
16940
|
+
IssueStatus.REVIEW,
|
|
16941
|
+
IssueStatus.DONE,
|
|
16942
|
+
IssueStatus.CLOSED,
|
|
16943
|
+
IssueStatus.CANCELED,
|
|
16944
|
+
IssueStatus.FAILED
|
|
17239
16945
|
]);
|
|
17240
|
-
var
|
|
17241
|
-
|
|
17242
|
-
|
|
17243
|
-
|
|
17244
|
-
|
|
17245
|
-
|
|
17246
|
-
|
|
17247
|
-
|
|
17248
|
-
|
|
17249
|
-
|
|
17250
|
-
}
|
|
17251
|
-
|
|
16946
|
+
var CreateIssueRequestSchema = exports_external.object({
|
|
16947
|
+
agent_id: exports_external.string().min(1).optional(),
|
|
16948
|
+
title: exports_external.string().min(1, "title is required").max(200),
|
|
16949
|
+
description: exports_external.string().max(20000).optional().default("")
|
|
16950
|
+
});
|
|
16951
|
+
var UpdateIssueRequestSchema = exports_external.object({
|
|
16952
|
+
title: exports_external.string().min(1).max(200).optional(),
|
|
16953
|
+
description: exports_external.string().max(20000).optional(),
|
|
16954
|
+
status: IssueStatusSchema.optional(),
|
|
16955
|
+
agent_id: exports_external.string().min(1).optional()
|
|
16956
|
+
}).refine((v) => v.title !== undefined || v.description !== undefined || v.status !== undefined || v.agent_id !== undefined, { message: "at least one field is required" });
|
|
16957
|
+
var CreateIssueCommentBodySchema = exports_external.object({
|
|
16958
|
+
content: exports_external.string().min(1, "content is required").max(20000)
|
|
16959
|
+
});
|
|
16960
|
+
var IssueCommentApiSchema = exports_external.object({
|
|
16961
|
+
id: exports_external.string(),
|
|
16962
|
+
issue_id: exports_external.string(),
|
|
16963
|
+
workspace_id: exports_external.string(),
|
|
16964
|
+
author_type: exports_external.enum(["user", "agent"]),
|
|
16965
|
+
author_id: exports_external.string(),
|
|
16966
|
+
content: exports_external.string(),
|
|
16967
|
+
created_at: exports_external.string()
|
|
16968
|
+
});
|
|
16969
|
+
var IssueApiSchema = exports_external.object({
|
|
16970
|
+
id: exports_external.string(),
|
|
16971
|
+
workspace_id: exports_external.string(),
|
|
16972
|
+
agent_id: exports_external.string().nullable(),
|
|
16973
|
+
creator_user_id: exports_external.string(),
|
|
16974
|
+
conversation_id: exports_external.string().nullable(),
|
|
16975
|
+
latest_task_id: exports_external.string().nullable(),
|
|
16976
|
+
title: exports_external.string(),
|
|
16977
|
+
description: exports_external.string(),
|
|
16978
|
+
status: IssueStatusSchema,
|
|
16979
|
+
created_at: exports_external.string(),
|
|
16980
|
+
updated_at: exports_external.string(),
|
|
16981
|
+
completed_at: exports_external.string().nullable()
|
|
16982
|
+
});
|
|
16983
|
+
var CreateAgentLinkRequestSchema = exports_external.object({
|
|
16984
|
+
source_agent_id: exports_external.string().min(1, "source_agent_id is required"),
|
|
16985
|
+
target_agent_id: exports_external.string().min(1, "target_agent_id is required"),
|
|
16986
|
+
instruction: exports_external.string().optional().default("")
|
|
16987
|
+
});
|
|
16988
|
+
var UpdateAgentLinkRequestSchema = exports_external.object({
|
|
16989
|
+
instruction: exports_external.string()
|
|
16990
|
+
});
|
|
16991
|
+
var UpsertAgentLinkRequestSchema = exports_external.object({
|
|
16992
|
+
target_agent_id: exports_external.string().min(1, "target_agent_id is required"),
|
|
16993
|
+
instruction: exports_external.string()
|
|
16994
|
+
});
|
|
16995
|
+
var AddWhitelistRequestSchema = exports_external.object({
|
|
16996
|
+
email: exports_external.string().email()
|
|
16997
|
+
});
|
|
16998
|
+
var RuntimeConfigSchema = exports_external.object({ model: exports_external.string().max(100).optional() }).passthrough().optional();
|
|
16999
|
+
var CreateAgentRequestSchema = exports_external.object({
|
|
17000
|
+
name: exports_external.string().min(1, "name is required"),
|
|
17001
|
+
description: exports_external.string().optional().default(""),
|
|
17002
|
+
instructions: exports_external.string().optional().default(""),
|
|
17003
|
+
runtime_id: exports_external.string().min(1, "runtime_id is required"),
|
|
17004
|
+
runtime_config: RuntimeConfigSchema,
|
|
17005
|
+
max_concurrent_tasks: exports_external.number().int().optional(),
|
|
17006
|
+
email_handle: exports_external.string().optional(),
|
|
17007
|
+
avatar_url: exports_external.string().max(2000).nullable().optional()
|
|
17008
|
+
});
|
|
17009
|
+
var UpdateAgentRequestSchema = exports_external.object({
|
|
17010
|
+
name: exports_external.string().min(1).optional(),
|
|
17011
|
+
description: exports_external.string().optional(),
|
|
17012
|
+
instructions: exports_external.string().optional(),
|
|
17013
|
+
runtime_id: exports_external.string().min(1).optional(),
|
|
17014
|
+
runtime_config: RuntimeConfigSchema,
|
|
17015
|
+
visibility: exports_external.enum(["public", "private"]).optional(),
|
|
17016
|
+
avatar_url: exports_external.string().max(2000).nullable().optional()
|
|
17017
|
+
}).refine((v) => v.name !== undefined || v.description !== undefined || v.instructions !== undefined || v.runtime_id !== undefined || v.runtime_config !== undefined || v.visibility !== undefined || v.avatar_url !== undefined, { message: "at least one field is required" });
|
|
17018
|
+
var CreateConversationRequestSchema = exports_external.object({
|
|
17019
|
+
agent_id: exports_external.string().min(1, "agent_id is required"),
|
|
17020
|
+
channel: exports_external.string().optional()
|
|
17021
|
+
});
|
|
17022
|
+
var CreateMessageRequestSchema = exports_external.object({
|
|
17023
|
+
content: exports_external.string().min(1, "content is required"),
|
|
17024
|
+
metadata: exports_external.record(exports_external.string(), exports_external.unknown()).optional()
|
|
17025
|
+
});
|
|
17026
|
+
var AgentDmRequestSchema = exports_external.object({
|
|
17027
|
+
content: exports_external.string().min(1, "content is required"),
|
|
17028
|
+
task_id: exports_external.string().min(1).optional()
|
|
17029
|
+
});
|
|
17030
|
+
var EmailAttachmentSchema = exports_external.object({
|
|
17031
|
+
key: exports_external.string().min(1),
|
|
17032
|
+
filename: exports_external.string().min(1),
|
|
17033
|
+
size: exports_external.number().int().nonnegative().optional(),
|
|
17034
|
+
contentType: exports_external.string().min(1)
|
|
17035
|
+
});
|
|
17036
|
+
var SendEmailRequestSchema = exports_external.object({
|
|
17037
|
+
agentId: exports_external.string().min(1, "agentId is required"),
|
|
17038
|
+
to: exports_external.string().min(1, "to is required"),
|
|
17039
|
+
subject: exports_external.string().min(1, "subject is required"),
|
|
17040
|
+
htmlBody: exports_external.string().default(""),
|
|
17041
|
+
inReplyTo: exports_external.string().optional(),
|
|
17042
|
+
references: exports_external.string().optional(),
|
|
17043
|
+
attachments: exports_external.array(EmailAttachmentSchema).optional(),
|
|
17044
|
+
customAccountId: exports_external.string().optional(),
|
|
17045
|
+
from: exports_external.string().email().optional(),
|
|
17046
|
+
conversationId: exports_external.string().optional(),
|
|
17047
|
+
traceId: exports_external.string().optional(),
|
|
17048
|
+
sourceTaskId: exports_external.string().optional()
|
|
17049
|
+
});
|
|
17050
|
+
var UpdateEmailStatusRequestSchema = exports_external.object({
|
|
17051
|
+
status: exports_external.enum(["unread", "read", "archived", "sent"])
|
|
17052
|
+
});
|
|
17053
|
+
var MeetingInfoSchema = exports_external.object({
|
|
17054
|
+
title: exports_external.string(),
|
|
17055
|
+
meetingUrl: exports_external.string(),
|
|
17056
|
+
startTime: exports_external.string().nullable(),
|
|
17057
|
+
endTime: exports_external.string().nullable(),
|
|
17058
|
+
attendees: exports_external.array(exports_external.object({ name: exports_external.string(), email: exports_external.string() }))
|
|
17059
|
+
});
|
|
17060
|
+
var EmailNotifyRequestSchema = exports_external.object({
|
|
17061
|
+
agentId: exports_external.string().min(1),
|
|
17062
|
+
workspaceId: exports_external.string().min(1),
|
|
17063
|
+
r2Key: exports_external.string().min(1),
|
|
17064
|
+
from: exports_external.string().min(1),
|
|
17065
|
+
to: exports_external.string().optional(),
|
|
17066
|
+
subject: exports_external.string(),
|
|
17067
|
+
isWhitelisted: exports_external.boolean(),
|
|
17068
|
+
forwarded: exports_external.boolean().optional().default(false),
|
|
17069
|
+
messageId: exports_external.string().optional().default(""),
|
|
17070
|
+
inReplyTo: exports_external.string().optional().default(""),
|
|
17071
|
+
references: exports_external.string().optional().default(""),
|
|
17072
|
+
meetingInfo: MeetingInfoSchema.nullable().optional(),
|
|
17073
|
+
attachments: exports_external.string().optional(),
|
|
17074
|
+
traceId: exports_external.string().optional(),
|
|
17075
|
+
sourceTaskId: exports_external.string().optional(),
|
|
17076
|
+
isInternal: exports_external.boolean().optional().default(false),
|
|
17077
|
+
senderConversationId: exports_external.string().optional(),
|
|
17078
|
+
senderAgentId: exports_external.string().optional()
|
|
17079
|
+
});
|
|
17080
|
+
var CreateEmailAccountSchema = exports_external.object({
|
|
17081
|
+
emailAddress: exports_external.string().email("valid email required"),
|
|
17082
|
+
displayName: exports_external.string().default(""),
|
|
17083
|
+
imapHost: exports_external.string().min(1, "IMAP host is required"),
|
|
17084
|
+
imapPort: exports_external.number().int().min(1).max(65535).default(993),
|
|
17085
|
+
imapUsername: exports_external.string().min(1, "IMAP username is required"),
|
|
17086
|
+
imapPassword: exports_external.string().min(1, "IMAP password is required"),
|
|
17087
|
+
imapTls: exports_external.boolean().default(true),
|
|
17088
|
+
smtpHost: exports_external.string().min(1, "SMTP host is required"),
|
|
17089
|
+
smtpPort: exports_external.number().int().min(1).max(65535).default(587),
|
|
17090
|
+
smtpUsername: exports_external.string().min(1, "SMTP username is required"),
|
|
17091
|
+
smtpPassword: exports_external.string().min(1, "SMTP password is required"),
|
|
17092
|
+
smtpTls: exports_external.number().int().min(0).max(2).default(1),
|
|
17093
|
+
pollIntervalSeconds: exports_external.number().int().min(30).max(3600).default(60)
|
|
17094
|
+
});
|
|
17095
|
+
var UpdateEmailAccountSchema = exports_external.object({
|
|
17096
|
+
emailAddress: exports_external.string().email().optional(),
|
|
17097
|
+
displayName: exports_external.string().optional(),
|
|
17098
|
+
imapHost: exports_external.string().min(1).optional(),
|
|
17099
|
+
imapPort: exports_external.number().int().min(1).max(65535).optional(),
|
|
17100
|
+
imapUsername: exports_external.string().min(1).optional(),
|
|
17101
|
+
imapPassword: exports_external.string().min(1).optional(),
|
|
17102
|
+
imapTls: exports_external.boolean().optional(),
|
|
17103
|
+
smtpHost: exports_external.string().min(1).optional(),
|
|
17104
|
+
smtpPort: exports_external.number().int().min(1).max(65535).optional(),
|
|
17105
|
+
smtpUsername: exports_external.string().min(1).optional(),
|
|
17106
|
+
smtpPassword: exports_external.string().min(1).optional(),
|
|
17107
|
+
smtpTls: exports_external.number().int().min(0).max(2).optional(),
|
|
17108
|
+
pollIntervalSeconds: exports_external.number().int().min(30).max(3600).optional()
|
|
17109
|
+
});
|
|
17110
|
+
var TestEmailConnectionSchema = exports_external.object({
|
|
17111
|
+
imapHost: exports_external.string().min(1),
|
|
17112
|
+
imapPort: exports_external.number().int().min(1).max(65535).default(993),
|
|
17113
|
+
imapUsername: exports_external.string().min(1),
|
|
17114
|
+
imapPassword: exports_external.string().min(1),
|
|
17115
|
+
imapTls: exports_external.boolean().default(true),
|
|
17116
|
+
smtpHost: exports_external.string().min(1),
|
|
17117
|
+
smtpPort: exports_external.number().int().min(1).max(65535).default(587),
|
|
17118
|
+
smtpUsername: exports_external.string().min(1),
|
|
17119
|
+
smtpPassword: exports_external.string().min(1),
|
|
17120
|
+
smtpTls: exports_external.number().int().min(0).max(2).default(1)
|
|
17121
|
+
});
|
|
17122
|
+
var UpdateMemberRequestSchema = exports_external.object({
|
|
17123
|
+
global_instruction: exports_external.string().max(50000).trim()
|
|
17124
|
+
});
|
|
17125
|
+
var CreateWorkspaceRequestSchema = exports_external.object({
|
|
17126
|
+
name: exports_external.string().min(1, "name is required"),
|
|
17127
|
+
slug: exports_external.string().optional().default("").transform(sanitizeSlug)
|
|
17128
|
+
});
|
|
17129
|
+
var UpdateWorkspaceRequestSchema = exports_external.object({
|
|
17130
|
+
name: exports_external.string().min(1, "name is required").max(100).trim().optional(),
|
|
17131
|
+
slug: exports_external.string().min(1, "slug is required").trim().toLowerCase().transform(sanitizeSlug).optional()
|
|
17132
|
+
});
|
|
17133
|
+
var DeleteWorkspaceRequestSchema = exports_external.object({
|
|
17134
|
+
confirm_name: exports_external.string().min(1, "confirm_name is required")
|
|
17135
|
+
});
|
|
17136
|
+
var GrantAgentAccessRequestSchema = exports_external.object({
|
|
17137
|
+
user_id: exports_external.string().min(1, "user_id is required")
|
|
17138
|
+
});
|
|
17139
|
+
var WorkspaceFileBrowseRequestSchema = exports_external.object({
|
|
17140
|
+
request_type: exports_external.enum(["tree", "read"]),
|
|
17141
|
+
path: exports_external.string().default(".")
|
|
17142
|
+
});
|
|
17143
|
+
var WorkspaceFileEntrySchema = exports_external.object({
|
|
17144
|
+
name: exports_external.string(),
|
|
17145
|
+
path: exports_external.string(),
|
|
17146
|
+
isDirectory: exports_external.boolean(),
|
|
17147
|
+
size: exports_external.number(),
|
|
17148
|
+
modifiedAt: exports_external.string()
|
|
17149
|
+
});
|
|
17150
|
+
var WorkspaceFileReportSchema = exports_external.object({
|
|
17151
|
+
request_id: exports_external.string().min(1),
|
|
17152
|
+
entries: exports_external.array(WorkspaceFileEntrySchema).optional(),
|
|
17153
|
+
content: exports_external.string().nullable().optional(),
|
|
17154
|
+
isBinary: exports_external.boolean().optional(),
|
|
17155
|
+
error: exports_external.string().optional(),
|
|
17156
|
+
path: exports_external.string()
|
|
17157
|
+
});
|
|
17158
|
+
var SkillEntrySchema = exports_external.object({
|
|
17159
|
+
name: exports_external.string(),
|
|
17160
|
+
description: exports_external.string(),
|
|
17161
|
+
isGlobal: exports_external.boolean().optional()
|
|
17162
|
+
});
|
|
17163
|
+
var SkillItemSchema = exports_external.object({
|
|
17164
|
+
name: exports_external.string(),
|
|
17165
|
+
description: exports_external.string()
|
|
17166
|
+
});
|
|
17167
|
+
var SkillSyncRequestSchema = exports_external.object({
|
|
17168
|
+
scope: exports_external.enum(["global", "agent"]),
|
|
17169
|
+
agent_id: exports_external.string().min(1).optional(),
|
|
17170
|
+
daemon_id: exports_external.string().min(1).optional(),
|
|
17171
|
+
runtime: exports_external.enum(["claude", "codex", "opencode"]),
|
|
17172
|
+
skills: exports_external.array(SkillItemSchema)
|
|
17173
|
+
});
|
|
17174
|
+
var StudioMemberSchema = exports_external.object({
|
|
17175
|
+
name: exports_external.string().optional(),
|
|
17176
|
+
role: exports_external.enum(["leader", "researcher", "engineer", "assistant"]),
|
|
17177
|
+
runtime_id: exports_external.string().min(1, "runtime_id is required"),
|
|
17178
|
+
runtime_config: exports_external.object({ model: exports_external.string().max(100).optional() }).passthrough().optional(),
|
|
17179
|
+
description: exports_external.string().optional().default(""),
|
|
17180
|
+
instructions: exports_external.string().optional().default(""),
|
|
17181
|
+
avatar_url: exports_external.string().max(2000).nullable().optional(),
|
|
17182
|
+
email_handle: exports_external.string().max(30).optional(),
|
|
17183
|
+
relationship: exports_external.string().optional()
|
|
17184
|
+
});
|
|
17185
|
+
var CreateStudioRequestSchema = exports_external.object({
|
|
17186
|
+
name: exports_external.string().max(100).optional(),
|
|
17187
|
+
scenario: exports_external.string().max(50).optional(),
|
|
17188
|
+
members: exports_external.array(StudioMemberSchema).min(1).max(4)
|
|
17189
|
+
}).refine((v) => v.members.some((m) => m.role === "leader"), { message: "at least one member must have the leader role" });
|
|
17190
|
+
var RecruitAgentRequestSchema = exports_external.object({
|
|
17191
|
+
instructions: exports_external.string().min(1, "instructions is required"),
|
|
17192
|
+
relationship: exports_external.string().min(1, "relationship is required"),
|
|
17193
|
+
name: exports_external.string().optional(),
|
|
17194
|
+
description: exports_external.string().optional().default(""),
|
|
17195
|
+
model: exports_external.string().max(100).optional(),
|
|
17196
|
+
context_key: exports_external.string().optional()
|
|
17197
|
+
});
|
|
17198
|
+
var CreateThreadRequestSchema = exports_external.object({
|
|
17199
|
+
parent_message_id: exports_external.string().min(1),
|
|
17200
|
+
content: exports_external.string().optional().default(""),
|
|
17201
|
+
attachment_ids: exports_external.array(exports_external.string()).optional()
|
|
17202
|
+
});
|
|
17203
|
+
var COMMUNITY_RUNTIME_ID_MAX = 64;
|
|
17204
|
+
var COMMUNITY_RUNTIME_VERSION_MAX = 64;
|
|
17205
|
+
var COMMUNITY_RUNTIME_LIST_MAX = 64;
|
|
17206
|
+
var RUNTIME_ID_RE = /^[A-Za-z0-9._@/-]+$/;
|
|
17207
|
+
var CommunityMachineRuntimeSchema = exports_external.object({
|
|
17208
|
+
id: exports_external.string().min(1).max(COMMUNITY_RUNTIME_ID_MAX).regex(RUNTIME_ID_RE, "invalid runtime id charset"),
|
|
17209
|
+
version: exports_external.string().max(COMMUNITY_RUNTIME_VERSION_MAX).optional(),
|
|
17210
|
+
status: exports_external.enum(["healthy", "unhealthy"]).catch("healthy").default("healthy"),
|
|
17211
|
+
lastError: exports_external.string().max(128).optional(),
|
|
17212
|
+
lastErrorAt: exports_external.string().optional()
|
|
17213
|
+
});
|
|
17214
|
+
var CommunityMachineRuntimeListSchema = exports_external.array(CommunityMachineRuntimeSchema).max(COMMUNITY_RUNTIME_LIST_MAX).transform((list) => {
|
|
17215
|
+
const seen = new Set;
|
|
17216
|
+
const out = [];
|
|
17217
|
+
for (const r of list) {
|
|
17218
|
+
if (seen.has(r.id))
|
|
17219
|
+
continue;
|
|
17220
|
+
seen.add(r.id);
|
|
17221
|
+
out.push(r);
|
|
17222
|
+
}
|
|
17223
|
+
return out;
|
|
17224
|
+
});
|
|
17225
|
+
var CommunityMachineSummarySchema = exports_external.object({
|
|
17226
|
+
id: exports_external.string(),
|
|
17227
|
+
hostname: exports_external.string(),
|
|
17228
|
+
displayName: exports_external.string(),
|
|
17229
|
+
platform: exports_external.string(),
|
|
17230
|
+
arch: exports_external.string(),
|
|
17231
|
+
osRelease: exports_external.string(),
|
|
17232
|
+
daemonVersion: exports_external.string(),
|
|
17233
|
+
lastSeenAt: exports_external.string().nullable(),
|
|
17234
|
+
status: exports_external.enum(["online", "offline"]),
|
|
17235
|
+
availableRuntimes: exports_external.array(CommunityMachineRuntimeSchema).default([]),
|
|
17236
|
+
lastRuntimeError: exports_external.object({
|
|
17237
|
+
requested: exports_external.string(),
|
|
17238
|
+
available: exports_external.array(exports_external.string()),
|
|
17239
|
+
at: exports_external.string()
|
|
17240
|
+
}).optional(),
|
|
17241
|
+
createdAt: exports_external.string(),
|
|
17242
|
+
updatedAt: exports_external.string()
|
|
17243
|
+
});
|
|
17244
|
+
var HostReadyMessageSchema = exports_external.object({
|
|
17245
|
+
type: exports_external.literal("ready"),
|
|
17246
|
+
runtimeReport: CommunityMachineRuntimeListSchema,
|
|
17247
|
+
runningAgents: exports_external.array(exports_external.string()).default([]),
|
|
17248
|
+
hostname: exports_external.string().optional(),
|
|
17249
|
+
platform: exports_external.string().optional(),
|
|
17250
|
+
arch: exports_external.string().optional(),
|
|
17251
|
+
osRelease: exports_external.string().optional(),
|
|
17252
|
+
daemonVersion: exports_external.string().optional()
|
|
17253
|
+
});
|
|
17254
|
+
var CommunityDaemonReadySchema = exports_external.object({
|
|
17255
|
+
runtimeReport: CommunityMachineRuntimeListSchema.optional(),
|
|
17256
|
+
runningAgents: exports_external.array(exports_external.string()).default([]),
|
|
17257
|
+
hostname: exports_external.string().optional(),
|
|
17258
|
+
os: exports_external.string().optional(),
|
|
17259
|
+
arch: exports_external.string().optional(),
|
|
17260
|
+
osRelease: exports_external.string().optional(),
|
|
17261
|
+
daemonVersion: exports_external.string().optional()
|
|
17262
|
+
});
|
|
17263
|
+
var SessionErrorFrameSchema = exports_external.object({
|
|
17264
|
+
type: exports_external.literal("session.error"),
|
|
17265
|
+
code: exports_external.enum(["runtime_not_available"]),
|
|
17266
|
+
agentId: exports_external.string().optional(),
|
|
17267
|
+
launchId: exports_external.string().optional(),
|
|
17268
|
+
payload: exports_external.record(exports_external.string(), exports_external.unknown()).optional()
|
|
17269
|
+
});
|
|
17270
|
+
var AgentActivityMessageSchema = exports_external.object({
|
|
17271
|
+
type: exports_external.literal("agent_activity"),
|
|
17272
|
+
agentId: exports_external.string(),
|
|
17273
|
+
state: exports_external.enum(["idle", "starting", "running", "stopping"])
|
|
17274
|
+
});
|
|
17275
|
+
var AgentTypingMessageSchema = exports_external.object({
|
|
17276
|
+
type: exports_external.literal("agent_typing"),
|
|
17277
|
+
agentId: exports_external.string(),
|
|
17278
|
+
channelId: exports_external.string().min(1)
|
|
17279
|
+
});
|
|
17280
|
+
var AgentTypingStopMessageSchema = exports_external.object({
|
|
17281
|
+
type: exports_external.literal("agent_typing_stop"),
|
|
17282
|
+
agentId: exports_external.string(),
|
|
17283
|
+
channelId: exports_external.string().min(1)
|
|
17284
|
+
});
|
|
17285
|
+
var AgentSessionMessageSchema = exports_external.object({
|
|
17286
|
+
type: exports_external.literal("agent_session"),
|
|
17287
|
+
agentId: exports_external.string().min(1),
|
|
17288
|
+
sessionId: exports_external.string().min(1),
|
|
17289
|
+
launchId: exports_external.string().min(1)
|
|
17290
|
+
});
|
|
17291
|
+
var AgentWakeAckMessageSchema = exports_external.object({
|
|
17292
|
+
type: exports_external.literal("agent_wake_ack"),
|
|
17293
|
+
agentId: exports_external.string().min(1),
|
|
17294
|
+
launchId: exports_external.string().min(1),
|
|
17295
|
+
status: exports_external.enum(["ok", "error"]),
|
|
17296
|
+
error: exports_external.object({ code: exports_external.string().optional(), message: exports_external.string().optional() }).optional()
|
|
17297
|
+
});
|
|
17298
|
+
var CommunityPairTokenResponseSchema = exports_external.object({
|
|
17299
|
+
tokenId: exports_external.string(),
|
|
17300
|
+
expiresAt: exports_external.string()
|
|
17301
|
+
});
|
|
17302
|
+
var CommunityDaemonActivateRequestSchema = exports_external.object({
|
|
17303
|
+
hostname: exports_external.string(),
|
|
17304
|
+
platform: exports_external.string(),
|
|
17305
|
+
arch: exports_external.string(),
|
|
17306
|
+
osRelease: exports_external.string().optional(),
|
|
17307
|
+
daemonVersion: exports_external.string().optional(),
|
|
17308
|
+
runtimeReport: CommunityMachineRuntimeListSchema.optional()
|
|
17309
|
+
});
|
|
17310
|
+
var CommunityDaemonActivateResponseSchema = exports_external.object({
|
|
17311
|
+
credential: exports_external.string(),
|
|
17312
|
+
machineId: exports_external.string(),
|
|
17313
|
+
expiresAt: exports_external.string().nullable()
|
|
17314
|
+
});
|
|
17315
|
+
var CommunityDaemonEnrollAgentRequestSchema = exports_external.object({
|
|
17316
|
+
agentId: exports_external.string().min(1).max(128)
|
|
17317
|
+
});
|
|
17318
|
+
var CommunityDaemonEnrollAgentResponseSchema = exports_external.object({
|
|
17319
|
+
runnerKey: exports_external.string(),
|
|
17320
|
+
expiresAt: exports_external.string().nullable()
|
|
17321
|
+
});
|
|
17322
|
+
var isMentionSafeName = (name) => validateCommunityName(name).ok;
|
|
17323
|
+
var MENTION_SAFE_NAME_MSG = "name cannot contain #, @, or line breaks";
|
|
17324
|
+
var BOT_AVATAR_ROUTE_PATTERN = /^\/api\/community\/bots\/[A-Za-z0-9_-]+\/avatar$/;
|
|
17325
|
+
var BotImageUrlSchema = exports_external.string().max(COMMUNITY_BOT_IMAGE_URL_MAX).refine((v) => v.startsWith("https://") || v.startsWith("avatar:") || BOT_AVATAR_ROUTE_PATTERN.test(v), {
|
|
17326
|
+
message: "image must be an https URL, the bot avatar route, or an avatar: config"
|
|
17327
|
+
});
|
|
17328
|
+
var CommunityBotCreateRequestSchema = exports_external.object({
|
|
17329
|
+
name: exports_external.string().trim().min(COMMUNITY_BOT_NAME_MIN).max(COMMUNITY_BOT_NAME_MAX).refine(isMentionSafeName, { message: MENTION_SAFE_NAME_MSG }),
|
|
17330
|
+
description: exports_external.string().max(COMMUNITY_BOT_DESCRIPTION_MAX).optional(),
|
|
17331
|
+
machineId: exports_external.string().min(1),
|
|
17332
|
+
runtime: exports_external.string().min(1),
|
|
17333
|
+
image: BotImageUrlSchema.optional(),
|
|
17334
|
+
model: exports_external.string().trim().min(1).max(100).nullable().optional()
|
|
17335
|
+
});
|
|
17336
|
+
var CommunityBotPatchRequestSchema = exports_external.object({
|
|
17337
|
+
name: exports_external.string().trim().min(COMMUNITY_BOT_NAME_MIN).max(COMMUNITY_BOT_NAME_MAX).refine(isMentionSafeName, { message: MENTION_SAFE_NAME_MSG }).optional(),
|
|
17338
|
+
description: exports_external.string().max(COMMUNITY_BOT_DESCRIPTION_MAX).optional(),
|
|
17339
|
+
image: BotImageUrlSchema.nullable().optional(),
|
|
17340
|
+
model: exports_external.string().trim().min(1).max(100).nullable().optional(),
|
|
17341
|
+
runtime: exports_external.string().trim().min(1).max(COMMUNITY_RUNTIME_ID_MAX).optional()
|
|
17342
|
+
}).refine((v) => v.name !== undefined || v.description !== undefined || v.image !== undefined || v.runtime !== undefined || ("model" in v), {
|
|
17343
|
+
message: "at least one field must be provided"
|
|
17344
|
+
});
|
|
17345
|
+
var CommunityBotAddToServerRequestSchema = exports_external.object({
|
|
17346
|
+
botId: exports_external.string().min(1)
|
|
17347
|
+
});
|
|
17348
|
+
var CommunityAgentMessageContentSchema = exports_external.object({ text: exports_external.string().max(MAX_MESSAGE_CONTENT_LENGTH).default("") }).catchall(exports_external.unknown());
|
|
17349
|
+
var CommunityAgentSeqSchema = exports_external.number().int().min(0);
|
|
17350
|
+
var CommunityAgentPositiveSeqSchema = exports_external.number().int().min(1);
|
|
17351
|
+
var CommunityAgentCursorSchema = exports_external.object({
|
|
17352
|
+
channel: exports_external.string().min(1),
|
|
17353
|
+
seq: CommunityAgentPositiveSeqSchema
|
|
17354
|
+
});
|
|
17355
|
+
var CommunityAgentSendRequestSchema = exports_external.object({
|
|
17356
|
+
channel: exports_external.string().min(1),
|
|
17357
|
+
content: CommunityAgentMessageContentSchema,
|
|
17358
|
+
attachments: exports_external.array(exports_external.string().min(1)).max(MAX_ATTACHMENTS_PER_MESSAGE).default([]),
|
|
17359
|
+
seenUpToSeq: CommunityAgentSeqSchema.optional(),
|
|
17360
|
+
replyToSeq: CommunityAgentPositiveSeqSchema.optional(),
|
|
17361
|
+
nonce: exports_external.string().min(1).max(128).optional()
|
|
17362
|
+
}).refine((d) => d.content.text.trim().length > 0 || d.attachments.length > 0, { message: "message must have text or attachments" });
|
|
17363
|
+
var CommunityAgentAttachmentUploadResponseSchema = exports_external.object({
|
|
17364
|
+
id: exports_external.string(),
|
|
17365
|
+
filename: exports_external.string(),
|
|
17366
|
+
contentType: exports_external.string(),
|
|
17367
|
+
size: exports_external.number()
|
|
17368
|
+
});
|
|
17369
|
+
var CommunityAgentAttachmentDownloadRequestSchema = exports_external.object({
|
|
17370
|
+
id: exports_external.string().min(1)
|
|
17371
|
+
});
|
|
17372
|
+
var CommunityAgentInboxPullRequestSchema = exports_external.object({
|
|
17373
|
+
max: exports_external.number().int().min(1).max(200).optional()
|
|
17374
|
+
});
|
|
17375
|
+
var CommunityAgentAckRequestSchema = exports_external.object({
|
|
17376
|
+
cursors: exports_external.array(CommunityAgentCursorSchema).min(1)
|
|
17377
|
+
});
|
|
17378
|
+
var CommunityAgentReadRequestSchema = exports_external.object({
|
|
17379
|
+
channel: exports_external.string().min(1),
|
|
17380
|
+
before: CommunityAgentSeqSchema.optional(),
|
|
17381
|
+
after: CommunityAgentSeqSchema.optional(),
|
|
17382
|
+
around: CommunityAgentSeqSchema.optional(),
|
|
17383
|
+
limit: exports_external.number().int().min(1).max(200).optional()
|
|
17384
|
+
}).refine((v) => [v.before, v.after, v.around].filter((x) => x !== undefined).length <= 1, { message: "at most one of before/after/around may be supplied" });
|
|
17385
|
+
var CommunityAgentResolveRequestSchema = exports_external.object({
|
|
17386
|
+
channel: exports_external.string().min(1),
|
|
17387
|
+
seq: CommunityAgentSeqSchema
|
|
17388
|
+
});
|
|
17389
|
+
var CommunityAgentListChannelsRequestSchema = exports_external.object({
|
|
17390
|
+
server: exports_external.string().min(1).optional()
|
|
17391
|
+
});
|
|
17392
|
+
var CommunityAgentCreatePostRequestSchema = exports_external.object({
|
|
17393
|
+
forum: exports_external.string().min(1),
|
|
17394
|
+
title: exports_external.string().min(1),
|
|
17395
|
+
content: CommunityAgentMessageContentSchema,
|
|
17396
|
+
attachments: exports_external.array(exports_external.string().min(1)).max(MAX_ATTACHMENTS_PER_MESSAGE).default([]),
|
|
17397
|
+
nonce: exports_external.string().min(1).max(128).optional()
|
|
17398
|
+
}).refine((d) => d.content.text.trim().length > 0 || d.attachments.length > 0, { message: "post must have text or attachments" });
|
|
17399
|
+
var CommunityAgentListMembersRequestSchema = exports_external.object({
|
|
17400
|
+
server: exports_external.string().min(1),
|
|
17401
|
+
limit: exports_external.number().int().positive().optional(),
|
|
17402
|
+
cursor: exports_external.string().min(1).optional()
|
|
17403
|
+
});
|
|
17404
|
+
var CommunityAgentChannelMemberRequestSchema = exports_external.object({
|
|
17405
|
+
channel: exports_external.string().min(1),
|
|
17406
|
+
agentId: exports_external.string().optional()
|
|
17407
|
+
});
|
|
17408
|
+
var CommunityAgentJoinServerRequestSchema = exports_external.object({
|
|
17409
|
+
invite: exports_external.string().min(1)
|
|
17410
|
+
});
|
|
17411
|
+
var CommunityAgentNapRequestSchema = exports_external.object({
|
|
17412
|
+
handoff: exports_external.string().trim().min(1)
|
|
17413
|
+
});
|
|
17414
|
+
var CommunityAgentReactAddRequestSchema = exports_external.object({
|
|
17415
|
+
channel: exports_external.string().min(1),
|
|
17416
|
+
seq: CommunityAgentPositiveSeqSchema,
|
|
17417
|
+
emoji: exports_external.string().min(1)
|
|
17418
|
+
});
|
|
17419
|
+
var CommunityAgentFriendRequestSchema = exports_external.object({
|
|
17420
|
+
username: exports_external.string().min(1)
|
|
17421
|
+
});
|
|
17422
|
+
var CommunityAgentListFriendsSchema = exports_external.object({});
|
|
17423
|
+
var AuditLogCliInvocationPayloadSchema = exports_external.object({
|
|
17424
|
+
subcommand: exports_external.string().min(1)
|
|
17425
|
+
});
|
|
17426
|
+
var AuditLogToolCallPayloadSchema = exports_external.object({
|
|
17427
|
+
name: exports_external.string().min(1),
|
|
17428
|
+
target: exports_external.string().max(240).optional()
|
|
17429
|
+
});
|
|
17430
|
+
var AuditLogThinkingPayloadSchema = exports_external.object({
|
|
17431
|
+
text: exports_external.string(),
|
|
17432
|
+
truncated: exports_external.boolean(),
|
|
17433
|
+
chars: exports_external.number().int().nonnegative()
|
|
17434
|
+
});
|
|
17435
|
+
var AuditLogWakeTriggerPayloadSchema = exports_external.object({
|
|
17436
|
+
messageId: exports_external.string().min(1),
|
|
17437
|
+
channel: exports_external.string().min(1),
|
|
17438
|
+
seq: CommunityAgentPositiveSeqSchema,
|
|
17439
|
+
senderId: exports_external.string().min(1),
|
|
17440
|
+
senderHandle: exports_external.string().min(1),
|
|
17441
|
+
reason: exports_external.enum(["unread", "mention"])
|
|
17442
|
+
});
|
|
17443
|
+
var AuditLogSessionResetPayloadSchema = exports_external.object({
|
|
17444
|
+
trigger: exports_external.enum(["single", "reset_all"])
|
|
17445
|
+
});
|
|
17446
|
+
var AuditLogNapPayloadSchema = exports_external.object({
|
|
17447
|
+
trigger: exports_external.literal("nap")
|
|
17448
|
+
});
|
|
17449
|
+
var AuditLogModelChangedPayloadSchema = exports_external.object({
|
|
17450
|
+
from: exports_external.string().nullable(),
|
|
17451
|
+
to: exports_external.string().nullable()
|
|
17452
|
+
});
|
|
17453
|
+
var AuditLogProviderChangedPayloadSchema = exports_external.object({
|
|
17454
|
+
from: exports_external.string().min(1),
|
|
17455
|
+
to: exports_external.string().min(1)
|
|
17456
|
+
});
|
|
17457
|
+
var AuditLogErrorPayloadSchema = exports_external.object({
|
|
17458
|
+
scope: exports_external.enum(["spawn", "runtime", "exit", "handshake_timeout", "model_switch", "reset"]),
|
|
17459
|
+
code: exports_external.string().min(1).max(120),
|
|
17460
|
+
message: exports_external.string().max(2048),
|
|
17461
|
+
model: exports_external.string().nullable()
|
|
17462
|
+
});
|
|
17463
|
+
var BotAuditEventSchema = exports_external.discriminatedUnion("kind", [
|
|
17464
|
+
exports_external.object({ kind: exports_external.literal("cli_invocation"), payload: AuditLogCliInvocationPayloadSchema }),
|
|
17465
|
+
exports_external.object({ kind: exports_external.literal("tool_call"), payload: AuditLogToolCallPayloadSchema }),
|
|
17466
|
+
exports_external.object({ kind: exports_external.literal("thinking"), payload: AuditLogThinkingPayloadSchema }),
|
|
17467
|
+
exports_external.object({ kind: exports_external.literal("wake_trigger"), payload: AuditLogWakeTriggerPayloadSchema }),
|
|
17468
|
+
exports_external.object({ kind: exports_external.literal("session_reset"), payload: AuditLogSessionResetPayloadSchema }),
|
|
17469
|
+
exports_external.object({ kind: exports_external.literal("nap"), payload: AuditLogNapPayloadSchema }),
|
|
17470
|
+
exports_external.object({ kind: exports_external.literal("model_changed"), payload: AuditLogModelChangedPayloadSchema }),
|
|
17471
|
+
exports_external.object({ kind: exports_external.literal("provider_changed"), payload: AuditLogProviderChangedPayloadSchema }),
|
|
17472
|
+
exports_external.object({ kind: exports_external.literal("error"), payload: AuditLogErrorPayloadSchema })
|
|
17252
17473
|
]);
|
|
17253
|
-
var
|
|
17254
|
-
|
|
17255
|
-
|
|
17256
|
-
|
|
17257
|
-
|
|
17258
|
-
|
|
17259
|
-
|
|
17260
|
-
|
|
17261
|
-
|
|
17262
|
-
|
|
17263
|
-
unique("agent_skill_ws_runtime_name_agent_daemon").on(t.workspaceId, t.runtime, t.name, t.agentId, t.daemonId),
|
|
17264
|
-
index("idx_as_workspace_runtime").on(t.workspaceId, t.runtime),
|
|
17265
|
-
index("idx_as_agent_runtime").on(t.agentId, t.runtime),
|
|
17266
|
-
foreignKey({
|
|
17267
|
-
columns: [t.agentId, t.workspaceId],
|
|
17268
|
-
foreignColumns: [agent.id, agent.workspaceId]
|
|
17269
|
-
}).onDelete("cascade")
|
|
17474
|
+
var BotAuditEventKindSchema = exports_external.enum([
|
|
17475
|
+
"cli_invocation",
|
|
17476
|
+
"tool_call",
|
|
17477
|
+
"thinking",
|
|
17478
|
+
"wake_trigger",
|
|
17479
|
+
"session_reset",
|
|
17480
|
+
"nap",
|
|
17481
|
+
"model_changed",
|
|
17482
|
+
"provider_changed",
|
|
17483
|
+
"error"
|
|
17270
17484
|
]);
|
|
17271
|
-
var
|
|
17272
|
-
|
|
17273
|
-
|
|
17274
|
-
|
|
17275
|
-
|
|
17276
|
-
|
|
17277
|
-
|
|
17278
|
-
|
|
17279
|
-
|
|
17280
|
-
|
|
17281
|
-
|
|
17282
|
-
|
|
17283
|
-
|
|
17284
|
-
|
|
17285
|
-
|
|
17485
|
+
var HostBotAuditEventFrameSchema = exports_external.object({
|
|
17486
|
+
type: exports_external.literal("bot_audit_event"),
|
|
17487
|
+
agentId: exports_external.string().min(1),
|
|
17488
|
+
sessionId: exports_external.string().nullable().optional(),
|
|
17489
|
+
launchId: exports_external.string().nullable().optional(),
|
|
17490
|
+
event: BotAuditEventSchema
|
|
17491
|
+
});
|
|
17492
|
+
// ../shared/src/community-cli-contract.ts
|
|
17493
|
+
var HostCommandSchema = exports_external.discriminatedUnion("type", [
|
|
17494
|
+
exports_external.object({
|
|
17495
|
+
type: exports_external.literal("agent:wake"),
|
|
17496
|
+
agentId: exports_external.string().min(1),
|
|
17497
|
+
config: exports_external.unknown(),
|
|
17498
|
+
sessionId: exports_external.string().optional(),
|
|
17499
|
+
launchId: exports_external.string().min(1),
|
|
17500
|
+
unreadNotice: exports_external.unknown()
|
|
17501
|
+
}),
|
|
17502
|
+
exports_external.object({
|
|
17503
|
+
type: exports_external.literal("agent:stop"),
|
|
17504
|
+
agentId: exports_external.string().min(1)
|
|
17505
|
+
}),
|
|
17506
|
+
exports_external.object({
|
|
17507
|
+
type: exports_external.literal("agent:reset"),
|
|
17508
|
+
agentId: exports_external.string().min(1),
|
|
17509
|
+
config: exports_external.unknown(),
|
|
17510
|
+
launchId: exports_external.string().min(1)
|
|
17511
|
+
}),
|
|
17512
|
+
exports_external.object({
|
|
17513
|
+
type: exports_external.literal("agent:nap"),
|
|
17514
|
+
agentId: exports_external.string().min(1),
|
|
17515
|
+
config: exports_external.unknown(),
|
|
17516
|
+
launchId: exports_external.string().min(1),
|
|
17517
|
+
handoff: exports_external.string().min(1)
|
|
17518
|
+
}),
|
|
17519
|
+
exports_external.object({
|
|
17520
|
+
type: exports_external.literal("agent:model_switch"),
|
|
17521
|
+
agentId: exports_external.string().min(1),
|
|
17522
|
+
config: exports_external.unknown(),
|
|
17523
|
+
launchId: exports_external.string().min(1)
|
|
17524
|
+
}),
|
|
17525
|
+
exports_external.object({
|
|
17526
|
+
type: exports_external.literal("machine:reset_all"),
|
|
17527
|
+
resets: exports_external.array(exports_external.object({
|
|
17528
|
+
agentId: exports_external.string().min(1),
|
|
17529
|
+
config: exports_external.unknown(),
|
|
17530
|
+
launchId: exports_external.string().min(1)
|
|
17531
|
+
}))
|
|
17532
|
+
}),
|
|
17533
|
+
exports_external.object({
|
|
17534
|
+
type: exports_external.literal("bot:added"),
|
|
17535
|
+
botId: exports_external.string().min(1),
|
|
17536
|
+
name: exports_external.string().optional(),
|
|
17537
|
+
discriminator: exports_external.string().optional(),
|
|
17538
|
+
description: exports_external.string().optional(),
|
|
17539
|
+
ownerName: exports_external.string().optional(),
|
|
17540
|
+
ownerDiscriminator: exports_external.string().optional()
|
|
17541
|
+
}),
|
|
17542
|
+
exports_external.object({
|
|
17543
|
+
type: exports_external.literal("bot:updated"),
|
|
17544
|
+
botId: exports_external.string().min(1),
|
|
17545
|
+
name: exports_external.string().optional(),
|
|
17546
|
+
discriminator: exports_external.string().optional(),
|
|
17547
|
+
description: exports_external.string().optional(),
|
|
17548
|
+
ownerName: exports_external.string().optional(),
|
|
17549
|
+
ownerDiscriminator: exports_external.string().optional()
|
|
17550
|
+
}),
|
|
17551
|
+
exports_external.object({
|
|
17552
|
+
type: exports_external.literal("bot:removed"),
|
|
17553
|
+
botId: exports_external.string().min(1)
|
|
17554
|
+
}),
|
|
17555
|
+
DiagnosticCollectCommandSchema
|
|
17286
17556
|
]);
|
|
17287
|
-
|
|
17288
17557
|
// ../shared/src/db/community-schema.ts
|
|
17558
|
+
var exports_community_schema = {};
|
|
17559
|
+
__export(exports_community_schema, {
|
|
17560
|
+
communityUserProfile: () => communityUserProfile,
|
|
17561
|
+
communityServerMember: () => communityServerMember,
|
|
17562
|
+
communityServerInvite: () => communityServerInvite,
|
|
17563
|
+
communityServerFolderItem: () => communityServerFolderItem,
|
|
17564
|
+
communityServerFolder: () => communityServerFolder,
|
|
17565
|
+
communityServer: () => communityServer,
|
|
17566
|
+
communityReadState: () => communityReadState,
|
|
17567
|
+
communityReaction: () => communityReaction,
|
|
17568
|
+
communityPin: () => communityPin,
|
|
17569
|
+
communityNotificationSetting: () => communityNotificationSetting,
|
|
17570
|
+
communityMessageTag: () => communityMessageTag,
|
|
17571
|
+
communityMessageSeq: () => communityMessageSeq,
|
|
17572
|
+
communityMessageMark: () => communityMessageMark,
|
|
17573
|
+
communityMessage: () => communityMessage,
|
|
17574
|
+
communityMention: () => communityMention,
|
|
17575
|
+
communityFriendship: () => communityFriendship,
|
|
17576
|
+
communityChannelMember: () => communityChannelMember,
|
|
17577
|
+
communityChannel: () => communityChannel,
|
|
17578
|
+
communityCategory: () => communityCategory,
|
|
17579
|
+
communityBotDailyActivity: () => communityBotDailyActivity,
|
|
17580
|
+
communityBotApprovalRequest: () => communityBotApprovalRequest,
|
|
17581
|
+
communityBotActivityEvent: () => communityBotActivityEvent,
|
|
17582
|
+
communityAttachment: () => communityAttachment
|
|
17583
|
+
});
|
|
17584
|
+
init_nanoid();
|
|
17289
17585
|
var communityServer = sqliteTable("community_server", {
|
|
17290
17586
|
id: text("id").primaryKey().$defaultFn(() => nanoid3()),
|
|
17291
17587
|
name: text("name").notNull(),
|
|
@@ -17494,23 +17790,6 @@ var communityNotificationSetting = sqliteTable("community_notification_setting",
|
|
|
17494
17790
|
}),
|
|
17495
17791
|
level: text("level").notNull().default("all")
|
|
17496
17792
|
}, (t) => [index("idx_notification_setting_user").on(t.userId)]);
|
|
17497
|
-
var communityAuditLog = sqliteTable("community_audit_log", {
|
|
17498
|
-
id: text("id").primaryKey().$defaultFn(() => nanoid3()),
|
|
17499
|
-
serverId: text("server_id").references(() => communityServer.id, {
|
|
17500
|
-
onDelete: "cascade"
|
|
17501
|
-
}),
|
|
17502
|
-
actorId: text("actor_id").references(() => user.id, { onDelete: "set null" }),
|
|
17503
|
-
action: text("action").notNull(),
|
|
17504
|
-
targetType: text("target_type").notNull(),
|
|
17505
|
-
targetId: text("target_id").notNull(),
|
|
17506
|
-
changes: text("changes"),
|
|
17507
|
-
reason: text("reason"),
|
|
17508
|
-
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString())
|
|
17509
|
-
}, (t) => [
|
|
17510
|
-
index("idx_audit_log_server_created").on(t.serverId, t.createdAt),
|
|
17511
|
-
index("idx_audit_log_server_action").on(t.serverId, t.action),
|
|
17512
|
-
index("idx_audit_log_actor_created").on(t.actorId, t.createdAt)
|
|
17513
|
-
]);
|
|
17514
17793
|
var communityBotApprovalRequest = sqliteTable("community_bot_approval_request", {
|
|
17515
17794
|
id: text("id").primaryKey().$defaultFn(() => "bar_" + nanoid3()),
|
|
17516
17795
|
botId: text("bot_id").notNull().references(() => user.id, { onDelete: "cascade" }),
|
|
@@ -17668,81 +17947,6 @@ var listedMessageProjection = {
|
|
|
17668
17947
|
authorImage: user.image
|
|
17669
17948
|
};
|
|
17670
17949
|
|
|
17671
|
-
// ../shared/src/db/community-machine-schema.ts
|
|
17672
|
-
var exports_community_machine_schema = {};
|
|
17673
|
-
__export(exports_community_machine_schema, {
|
|
17674
|
-
communityMachineToken: () => communityMachineToken,
|
|
17675
|
-
communityMachineCredential: () => communityMachineCredential,
|
|
17676
|
-
communityMachine: () => communityMachine,
|
|
17677
|
-
communityBotBinding: () => communityBotBinding,
|
|
17678
|
-
communityAgentRunnerKey: () => communityAgentRunnerKey
|
|
17679
|
-
});
|
|
17680
|
-
init_nanoid();
|
|
17681
|
-
var communityMachineToken = sqliteTable("community_machine_token", {
|
|
17682
|
-
id: text("id").primaryKey().$defaultFn(() => "cmt_" + nanoid3(32)),
|
|
17683
|
-
userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
|
|
17684
|
-
machineId: text("machine_id"),
|
|
17685
|
-
status: text("status").notNull().default("pending"),
|
|
17686
|
-
expiresAt: text("expires_at").notNull(),
|
|
17687
|
-
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString()),
|
|
17688
|
-
lastUsedAt: text("last_used_at")
|
|
17689
|
-
}, (t) => [
|
|
17690
|
-
index("idx_community_machine_token_user_status").on(t.userId, t.status),
|
|
17691
|
-
uniqueIndex("uq_community_machine_token_user_pending").on(t.userId).where(sql`status = 'pending'`)
|
|
17692
|
-
]);
|
|
17693
|
-
var communityMachine = sqliteTable("community_machine", {
|
|
17694
|
-
id: text("id").primaryKey().$defaultFn(() => "cm_" + nanoid3()),
|
|
17695
|
-
userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
|
|
17696
|
-
displayName: text("display_name").notNull().default(""),
|
|
17697
|
-
hostname: text("hostname").notNull().default(""),
|
|
17698
|
-
platform: text("platform").notNull().default(""),
|
|
17699
|
-
arch: text("arch").notNull().default(""),
|
|
17700
|
-
osRelease: text("os_release").notNull().default(""),
|
|
17701
|
-
daemonVersion: text("daemon_version").notNull().default(""),
|
|
17702
|
-
metadata: text("metadata"),
|
|
17703
|
-
availableRuntimes: text("available_runtimes", { mode: "json" }).$type().notNull().default([]),
|
|
17704
|
-
status: text("status").notNull().default("offline"),
|
|
17705
|
-
lastSeenAt: text("last_seen_at"),
|
|
17706
|
-
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString()),
|
|
17707
|
-
updatedAt: text("updated_at").notNull().$defaultFn(() => new Date().toISOString())
|
|
17708
|
-
}, (t) => [
|
|
17709
|
-
index("idx_community_machine_user_last_seen").on(t.userId, t.lastSeenAt),
|
|
17710
|
-
index("idx_community_machine_user_updated").on(t.userId, t.updatedAt),
|
|
17711
|
-
index("idx_community_machine_user_status").on(t.userId, t.status)
|
|
17712
|
-
]);
|
|
17713
|
-
var communityMachineCredential = sqliteTable("community_machine_credential", {
|
|
17714
|
-
id: text("id").primaryKey().$defaultFn(() => "cmkid_" + nanoid3()),
|
|
17715
|
-
userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
|
|
17716
|
-
machineId: text("machine_id").notNull().references(() => communityMachine.id, { onDelete: "cascade" }),
|
|
17717
|
-
credentialHash: text("credential_hash").notNull().unique(),
|
|
17718
|
-
doName: text("do_name").notNull().unique(),
|
|
17719
|
-
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString()),
|
|
17720
|
-
lastUsedAt: text("last_used_at"),
|
|
17721
|
-
revokedAt: text("revoked_at")
|
|
17722
|
-
}, (t) => [
|
|
17723
|
-
index("idx_community_machine_credential_user").on(t.userId),
|
|
17724
|
-
index("idx_community_machine_credential_machine").on(t.machineId)
|
|
17725
|
-
]);
|
|
17726
|
-
var communityBotBinding = sqliteTable("community_bot_binding", {
|
|
17727
|
-
userId: text("user_id").primaryKey().references(() => user.id, { onDelete: "cascade" }),
|
|
17728
|
-
machineId: text("machine_id").notNull().references(() => communityMachine.id, { onDelete: "restrict" }),
|
|
17729
|
-
runtime: text("runtime").notNull(),
|
|
17730
|
-
modelName: text("model_name"),
|
|
17731
|
-
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString())
|
|
17732
|
-
}, (t) => [index("idx_community_bot_binding_machine").on(t.machineId)]);
|
|
17733
|
-
var communityAgentRunnerKey = sqliteTable("community_agent_runner_key", {
|
|
17734
|
-
id: text("id").primaryKey().$defaultFn(() => "crkid_" + nanoid3()),
|
|
17735
|
-
userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
|
|
17736
|
-
machineId: text("machine_id").notNull().references(() => communityMachine.id, { onDelete: "cascade" }),
|
|
17737
|
-
agentId: text("agent_id").notNull(),
|
|
17738
|
-
runnerKeyHash: text("runner_key_hash").notNull().unique(),
|
|
17739
|
-
doName: text("do_name").notNull().unique(),
|
|
17740
|
-
createdAt: text("created_at").notNull().$defaultFn(() => new Date().toISOString()),
|
|
17741
|
-
revokedAt: text("revoked_at")
|
|
17742
|
-
}, (t) => [
|
|
17743
|
-
index("idx_community_agent_runner_key_machine_agent").on(t.machineId, t.agentId)
|
|
17744
|
-
]);
|
|
17745
|
-
|
|
17746
17950
|
// ../shared/src/db/queries/user.ts
|
|
17747
17951
|
var publicUserColumns = {
|
|
17748
17952
|
id: user.id,
|
|
@@ -18309,6 +18513,8 @@ function toAlookAddress(h) {
|
|
|
18309
18513
|
var FTS_KEYWORDS = new Set(["and", "or", "not", "near"]);
|
|
18310
18514
|
// ../shared/src/db/queries/community/server-folder.ts
|
|
18311
18515
|
var FOLDER_ITEM_INSERT_MAX_ROWS = maxRowsPerInsert(3);
|
|
18516
|
+
// ../shared/src/db/queries/community/diagnostic-report.ts
|
|
18517
|
+
var diagnosticOwner = alias(user, "diagnostic_owner");
|
|
18312
18518
|
// ../shared/src/mode.ts
|
|
18313
18519
|
function isLocalUrl(url2) {
|
|
18314
18520
|
try {
|
|
@@ -20712,10 +20918,10 @@ function ensureSymlinks(workDir) {
|
|
|
20712
20918
|
const canonicalPath = join2(workDir, CANONICAL_FILE);
|
|
20713
20919
|
if (!existsSync(canonicalPath))
|
|
20714
20920
|
return;
|
|
20715
|
-
for (const
|
|
20716
|
-
if (
|
|
20921
|
+
for (const alias2 of SYMLINK_ALIASES) {
|
|
20922
|
+
if (alias2 === CANONICAL_FILE)
|
|
20717
20923
|
continue;
|
|
20718
|
-
const aliasPath = join2(workDir,
|
|
20924
|
+
const aliasPath = join2(workDir, alias2);
|
|
20719
20925
|
try {
|
|
20720
20926
|
const stat = lstatSync(aliasPath);
|
|
20721
20927
|
if (stat.isSymbolicLink()) {
|