@aquaclawai/aquarium 1.0.1 → 1.0.2

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.
@@ -0,0 +1,3 @@
1
+ export * from './types.js';
2
+ export * from './metadata-types.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './types.js';
2
+ export * from './metadata-types.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,33 @@
1
+ export type AuthMethodType = 'api-key' | 'oauth' | 'setup-token' | 'custom-endpoint';
2
+ export interface AuthMethod {
3
+ value: string;
4
+ label: string;
5
+ hint?: string;
6
+ type: AuthMethodType;
7
+ }
8
+ export interface ProviderModel {
9
+ id: string;
10
+ name: string;
11
+ contextWindow?: number;
12
+ reasoning?: boolean;
13
+ recommended?: boolean;
14
+ }
15
+ export interface ProviderGroup {
16
+ id: string;
17
+ name: string;
18
+ hint: string;
19
+ authMethods: AuthMethod[];
20
+ models: ProviderModel[];
21
+ envVars: string[];
22
+ }
23
+ export interface ChannelOption {
24
+ id: string;
25
+ name: string;
26
+ }
27
+ export interface OpenClawMetadata {
28
+ version: string;
29
+ extractedAt: string;
30
+ providers: ProviderGroup[];
31
+ channels: ChannelOption[];
32
+ }
33
+ //# sourceMappingURL=metadata-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-types.d.ts","sourceRoot":"","sources":["../src/metadata-types.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,aAAa,GAAG,iBAAiB,CAAC;AAErF,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,cAAc,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B"}
@@ -0,0 +1,6 @@
1
+ // === OpenClaw Metadata Types ===
2
+ // Type definitions for the build-time extracted metadata JSON.
3
+ // The extraction script (scripts/extract-openclaw-metadata.mjs) produces JSON
4
+ // conforming to these types. Consumed by Phase 3 API endpoints and Phase 4 wizard UI.
5
+ export {};
6
+ //# sourceMappingURL=metadata-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-types.js","sourceRoot":"","sources":["../src/metadata-types.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAClC,+DAA+D;AAC/D,8EAA8E;AAC9E,sFAAsF"}
@@ -0,0 +1,1136 @@
1
+ export type InstanceStatus = 'created' | 'starting' | 'running' | 'stopping' | 'stopped' | 'error';
2
+ export type DeploymentTarget = 'docker' | 'kubernetes';
3
+ export type CredentialType = 'api_key' | 'oauth_token';
4
+ export type BillingMode = 'platform' | 'byok';
5
+ export type SecurityProfile = 'strict' | 'standard' | 'developer' | 'unrestricted';
6
+ export type UserRole = 'admin' | 'user' | 'viewer';
7
+ export type ModelMode = 'auto' | 'specific';
8
+ export type ChatErrorCategory = 'timeout' | 'auth' | 'quota' | 'model' | 'gateway' | 'unknown';
9
+ /** Attachment sent with a chat message (image only, base64-encoded). */
10
+ export interface ChatAttachment {
11
+ type: 'image' | 'file';
12
+ mimeType: string;
13
+ fileName: string;
14
+ content: string;
15
+ source?: {
16
+ type: 'base64';
17
+ media_type: string;
18
+ data: string;
19
+ };
20
+ }
21
+ export declare const MAX_ATTACHMENT_SIZE: number;
22
+ export declare const MAX_ATTACHMENTS_PER_MESSAGE = 5;
23
+ export declare const ALLOWED_ATTACHMENT_TYPES: Set<string>;
24
+ /** Check whether a MIME type is an image (inline-embeddable). */
25
+ export declare function isImageMime(mime: string): boolean;
26
+ /**
27
+ * HTML `accept` attribute value for file inputs.
28
+ * Includes BOTH file extensions AND MIME types for cross-browser/macOS compatibility.
29
+ * macOS file dialogs require explicit MIME types — extensions alone are not enough.
30
+ */
31
+ export declare const FILE_INPUT_ACCEPT = "image/*,.pdf,application/pdf,.xls,application/vnd.ms-excel,.xlsx,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,.doc,application/msword,.docx,application/vnd.openxmlformats-officedocument.wordprocessingml.document";
32
+ /** Max file size for agents.files.write uploads (10 MB). */
33
+ export declare const MAX_FILE_UPLOAD_SIZE: number;
34
+ /**
35
+ * Trust levels for input sources.
36
+ * Higher trust = more privileged actions allowed.
37
+ *
38
+ * - system: Platform-injected instructions (SOUL.md security paragraphs)
39
+ * - authorized_user: Authenticated platform user
40
+ * - external_message: Third-party channel messages (WhatsApp, Telegram, email)
41
+ * - tool_return: Results from tool execution (web scraping, API responses)
42
+ */
43
+ export type TrustLevel = 'system' | 'authorized_user' | 'external_message' | 'tool_return';
44
+ export interface User {
45
+ id: string;
46
+ email: string;
47
+ displayName: string;
48
+ role?: UserRole;
49
+ billingMode?: BillingMode;
50
+ usageBalanceUsd?: number | null;
51
+ usageLimitUsd?: number | null;
52
+ createdAt: string;
53
+ }
54
+ /** Minimal user info returned by the search endpoint (no sensitive data). */
55
+ export interface UserSearchResult {
56
+ id: string;
57
+ email: string;
58
+ displayName: string;
59
+ }
60
+ export interface Instance {
61
+ id: string;
62
+ userId: string;
63
+ name: string;
64
+ agentType: string;
65
+ imageTag: string;
66
+ status: InstanceStatus;
67
+ statusMessage: string | null;
68
+ deploymentTarget: DeploymentTarget;
69
+ runtimeId: string | null;
70
+ controlEndpoint: string | null;
71
+ authToken: string;
72
+ config: Record<string, unknown>;
73
+ templateId: string | null;
74
+ templateVersion: string | null;
75
+ createdAt: string;
76
+ updatedAt: string;
77
+ billingMode?: BillingMode;
78
+ securityProfile: SecurityProfile;
79
+ proxyKeyId?: string | null;
80
+ litellmKeyHash?: string | null;
81
+ avatar?: string | null;
82
+ }
83
+ export interface InstancePublic {
84
+ id: string;
85
+ userId: string;
86
+ name: string;
87
+ agentType: string;
88
+ imageTag: string;
89
+ status: InstanceStatus;
90
+ statusMessage: string | null;
91
+ deploymentTarget: DeploymentTarget;
92
+ securityProfile: SecurityProfile;
93
+ billingMode?: BillingMode;
94
+ avatar?: string | null;
95
+ createdAt: string;
96
+ updatedAt: string;
97
+ }
98
+ export interface Credential {
99
+ id: string;
100
+ instanceId: string;
101
+ provider: string;
102
+ credentialType: CredentialType;
103
+ metadata: Record<string, unknown>;
104
+ createdAt: string;
105
+ updatedAt: string;
106
+ }
107
+ export interface InstanceEvent {
108
+ id: string;
109
+ instanceId: string;
110
+ eventType: string;
111
+ metadata: Record<string, unknown>;
112
+ createdAt: string;
113
+ }
114
+ export interface AgentTypeInfo {
115
+ id: string;
116
+ name: string;
117
+ description: string;
118
+ version: string;
119
+ defaultImageTag: string;
120
+ availableTags: string[];
121
+ implemented?: boolean;
122
+ capabilities: {
123
+ hasWebUI: boolean;
124
+ hasRPC: boolean;
125
+ supportsConfigRead: boolean;
126
+ supportsConfigWrite: boolean;
127
+ supportsModelSelection: boolean;
128
+ supportsOAuth: boolean;
129
+ supportsChannels: boolean;
130
+ channelTypes?: string[];
131
+ };
132
+ configSchema?: Record<string, unknown>;
133
+ wizard?: {
134
+ providers: Array<{
135
+ name: string;
136
+ displayName: string;
137
+ authMethods?: Array<{
138
+ value: string;
139
+ label: string;
140
+ hint: string;
141
+ type: string;
142
+ }>;
143
+ models: Array<{
144
+ id: string;
145
+ displayName: string;
146
+ isDefault?: boolean;
147
+ }>;
148
+ }>;
149
+ defaultProvider?: string;
150
+ defaultModel?: string;
151
+ platformModels?: Array<{
152
+ id: string;
153
+ displayName: string;
154
+ isDefault?: boolean;
155
+ }>;
156
+ channelSupport: {
157
+ enabled: boolean;
158
+ channels?: string[];
159
+ };
160
+ defaultPrinciples?: string[];
161
+ identityTemplates?: string[];
162
+ temperaturePresets?: Array<{
163
+ key: string;
164
+ label: string;
165
+ value: number;
166
+ description?: string;
167
+ }>;
168
+ contextOptions?: Array<{
169
+ value: number;
170
+ label: string;
171
+ description?: string;
172
+ }>;
173
+ chatSuggestions?: string[];
174
+ };
175
+ webUI?: {
176
+ port: number;
177
+ basePath: string;
178
+ authMethod: string;
179
+ iframeAllowed: boolean;
180
+ };
181
+ usageTracking?: {
182
+ method: string;
183
+ rpcMethod?: string;
184
+ pollIntervalMs?: number;
185
+ };
186
+ }
187
+ export interface AuthResponse {
188
+ user: User;
189
+ }
190
+ export interface AuthRedirectResponse {
191
+ redirect: string;
192
+ }
193
+ export interface ApiResponse<T = unknown> {
194
+ ok: boolean;
195
+ data?: T;
196
+ error?: string;
197
+ }
198
+ export type ToolProfile = 'full' | 'coding' | 'messaging' | 'minimal';
199
+ export interface ToolPermissions {
200
+ /** Tool profile — controls which tool groups are available. Default: 'full'. */
201
+ profile: ToolProfile;
202
+ /** Enable web_search tool (default: true). */
203
+ webSearchEnabled: boolean;
204
+ /** Enable web_fetch tool (default: true). */
205
+ webFetchEnabled: boolean;
206
+ /** Enable browser tool (default: true). */
207
+ browserEnabled: boolean;
208
+ /** Enable elevated exec (default: true). */
209
+ elevatedEnabled: boolean;
210
+ /** Custom deny list — tool names or groups to deny. */
211
+ denyList: string[];
212
+ }
213
+ export declare const DEFAULT_TOOL_PERMISSIONS: ToolPermissions;
214
+ export interface CreateInstanceRequest {
215
+ name: string;
216
+ agentType: string;
217
+ imageTag?: string;
218
+ deploymentTarget?: DeploymentTarget;
219
+ billingMode?: BillingMode;
220
+ securityProfile?: SecurityProfile;
221
+ config?: Record<string, unknown>;
222
+ avatar?: string;
223
+ }
224
+ export interface AddCredentialRequest {
225
+ provider: string;
226
+ credentialType: CredentialType;
227
+ value: string;
228
+ metadata?: Record<string, unknown>;
229
+ }
230
+ export interface RpcRequest {
231
+ method: string;
232
+ params?: Record<string, unknown>;
233
+ }
234
+ export type WsEventType = 'instance:status' | 'instance:logs' | 'instance:event' | 'instance:ready' | 'instance:gateway_event' | 'instance:exec_approval_request' | 'instance:exec_approval_resolved' | 'group_chat:message' | 'group_chat:delivery_status' | 'group_chat:typing' | 'group_chat:error' | 'instance:snapshot_restored' | 'notification' | 'security_event';
235
+ export interface WsMessage {
236
+ type: WsEventType;
237
+ instanceId?: string;
238
+ groupChatId?: string;
239
+ payload: Record<string, unknown>;
240
+ }
241
+ export interface UpdateProfileRequest {
242
+ displayName?: string;
243
+ }
244
+ export interface ChangePasswordRequest {
245
+ currentPassword: string;
246
+ newPassword: string;
247
+ }
248
+ export type TemplateCategory = 'customer-service' | 'sales' | 'marketing' | 'devops' | 'education' | 'personal' | 'custom' | 'general' | 'coding' | 'data-analysis' | 'content-creation';
249
+ export type TemplateLicense = 'private' | 'public' | 'mit' | 'apache-2.0';
250
+ export type TemplateTrustLevel = 'official' | 'verified' | 'community';
251
+ export interface CredentialRequirement {
252
+ provider: string;
253
+ credentialType: CredentialType;
254
+ description: string;
255
+ required: boolean;
256
+ }
257
+ export interface McpServerDeclaration {
258
+ name: string;
259
+ description: string;
260
+ env: Record<string, string>;
261
+ runtime?: 'node' | 'python' | 'binary';
262
+ installSpec?: string;
263
+ installCommand?: string[];
264
+ url?: string;
265
+ headers?: Record<string, string>;
266
+ transport?: 'stdio' | 'sse';
267
+ }
268
+ export type SkillSource = {
269
+ type: 'bundled';
270
+ } | {
271
+ type: 'inline';
272
+ } | {
273
+ type: 'clawhub';
274
+ slug: string;
275
+ version?: string;
276
+ } | {
277
+ type: 'npm';
278
+ spec: string;
279
+ };
280
+ export interface SkillDeclaration {
281
+ id: string;
282
+ name: string;
283
+ description: string;
284
+ /** @deprecated Use `source` instead. Kept for backward compatibility with existing templates. */
285
+ inline?: boolean;
286
+ source?: SkillSource;
287
+ }
288
+ export interface PluginDependency {
289
+ id: string;
290
+ npmSpec: string;
291
+ config?: Record<string, unknown>;
292
+ required: boolean;
293
+ credentialKeys?: string[];
294
+ }
295
+ export interface TemplateManifest {
296
+ id: string;
297
+ slug: string;
298
+ version: string;
299
+ isLatest: boolean;
300
+ name: string;
301
+ description: string | null;
302
+ category: TemplateCategory;
303
+ tags: string[];
304
+ locale: string;
305
+ authorId: string;
306
+ authorName: string | null;
307
+ license: TemplateLicense;
308
+ trustLevel: TemplateTrustLevel;
309
+ minImageTag: string | null;
310
+ agentType: string;
311
+ billingMode: BillingMode | null;
312
+ requiredCredentials: CredentialRequirement[];
313
+ mcpServers: Record<string, McpServerDeclaration>;
314
+ skills: SkillDeclaration[];
315
+ pluginDependencies?: PluginDependency[];
316
+ suggestedChannels: string[];
317
+ forkedFrom: string | null;
318
+ installCount: number;
319
+ forkCount: number;
320
+ rating: number;
321
+ featured: boolean;
322
+ usageCount: number;
323
+ securityScore: number;
324
+ createdAt: string;
325
+ updatedAt: string;
326
+ }
327
+ export interface SetupCommand {
328
+ command: string[];
329
+ description: string;
330
+ workDir?: string;
331
+ timeout?: number;
332
+ }
333
+ export interface TemplateSecurityConfig {
334
+ minSecurityProfile?: SecurityProfile;
335
+ includeTrustLevels?: boolean;
336
+ customNeverDoRules?: string[];
337
+ customSuspiciousPatterns?: string[];
338
+ }
339
+ export interface TemplateContent {
340
+ id: string;
341
+ templateId: string;
342
+ workspaceFiles: Record<string, string>;
343
+ mcpServerConfigs: Record<string, unknown>;
344
+ inlineSkills: Record<string, unknown>;
345
+ openclawConfig: Record<string, unknown>;
346
+ pluginDependencies?: PluginDependency[];
347
+ setupCommands: SetupCommand[];
348
+ customImage: string | null;
349
+ security?: TemplateSecurityConfig;
350
+ createdAt: string;
351
+ }
352
+ export interface UserCredential {
353
+ id: string;
354
+ userId: string;
355
+ provider: string;
356
+ credentialType: CredentialType;
357
+ displayName: string | null;
358
+ metadata: Record<string, unknown>;
359
+ createdAt: string;
360
+ updatedAt: string;
361
+ }
362
+ export type CredentialRole = 'default' | 'backup' | 'dedicated';
363
+ export type CredentialStatus = 'active' | 'disabled';
364
+ export interface UserCredentialExtended extends UserCredential {
365
+ role: CredentialRole;
366
+ status: CredentialStatus;
367
+ usageCount: number;
368
+ maskedValue: string | null;
369
+ }
370
+ export type PlanTier = 'free' | 'basic' | 'pro' | 'enterprise';
371
+ export type BillingCycle = 'monthly' | 'annual';
372
+ export interface Plan {
373
+ id: string;
374
+ name: string;
375
+ tier: PlanTier;
376
+ billingCycle: BillingCycle;
377
+ priceCny: number;
378
+ features: Record<string, unknown>;
379
+ isActive: boolean;
380
+ }
381
+ export type SubscriptionStatus = 'active' | 'expired' | 'cancelled';
382
+ export interface Subscription {
383
+ id: string;
384
+ userId: string;
385
+ plan: Plan;
386
+ status: SubscriptionStatus;
387
+ currentPeriodStart: string;
388
+ currentPeriodEnd: string;
389
+ autoRenew: boolean;
390
+ createdAt: string;
391
+ }
392
+ export type OrderType = 'subscription' | 'recharge' | 'upgrade';
393
+ export type OrderStatus = 'pending' | 'completed' | 'failed' | 'refunded';
394
+ export interface Order {
395
+ id: string;
396
+ orderNumber: string;
397
+ orderType: OrderType;
398
+ planName?: string;
399
+ amountCny: number;
400
+ status: OrderStatus;
401
+ paymentMethod?: string;
402
+ createdAt: string;
403
+ completedAt?: string;
404
+ }
405
+ export interface BillingDetail {
406
+ id: string;
407
+ instanceId: string;
408
+ instanceName: string;
409
+ date: string;
410
+ model: string;
411
+ requestCount: number;
412
+ inputTokens: number;
413
+ outputTokens: number;
414
+ costCny: number;
415
+ }
416
+ export interface UserBudget {
417
+ monthlyBudgetCny: number | null;
418
+ annualBudgetCny: number | null;
419
+ alertThresholdPercent: number;
420
+ alertEnabled: boolean;
421
+ }
422
+ export interface UsageSummaryExtended extends UsageSummary {
423
+ todaySpend: number;
424
+ yesterdaySpend: number;
425
+ dayOverDayPercent: number;
426
+ monthlyProjection: number;
427
+ totalRequests: number;
428
+ lastMonthSpend: number;
429
+ monthOverMonthPercent: number;
430
+ yearToDateSpend: number;
431
+ yearBudgetUsedPercent: number | null;
432
+ }
433
+ export interface InstanceSpendDistribution {
434
+ instanceId: string;
435
+ instanceName: string;
436
+ spend: number;
437
+ percentage: number;
438
+ }
439
+ export interface UserExtended extends User {
440
+ avatarUrl: string | null;
441
+ passwordChangedAt: string | null;
442
+ totpEnabled: boolean;
443
+ role: 'admin' | 'user';
444
+ clerkId?: string | null;
445
+ authProvider?: AuthProvider;
446
+ }
447
+ export interface LoginHistoryEntry {
448
+ id: string;
449
+ eventType: string;
450
+ ipAddress: string | null;
451
+ userAgent: string | null;
452
+ createdAt: string;
453
+ failureReason?: string;
454
+ }
455
+ export interface TotpSetupResponse {
456
+ secret: string;
457
+ qrCodeDataUrl: string;
458
+ backupCodes: string[];
459
+ }
460
+ export interface LoginWith2FAResponse {
461
+ requires2FA: true;
462
+ tempToken: string;
463
+ }
464
+ export interface CreateTemplateRequest {
465
+ slug: string;
466
+ name: string;
467
+ description?: string;
468
+ category?: TemplateCategory;
469
+ tags?: string[];
470
+ locale?: string;
471
+ license?: TemplateLicense;
472
+ minImageTag?: string;
473
+ agentType?: string;
474
+ billingMode?: BillingMode;
475
+ requiredCredentials?: CredentialRequirement[];
476
+ mcpServers?: Record<string, McpServerDeclaration>;
477
+ skills?: SkillDeclaration[];
478
+ pluginDependencies?: PluginDependency[];
479
+ suggestedChannels?: string[];
480
+ content: {
481
+ workspaceFiles?: Record<string, string>;
482
+ mcpServerConfigs?: Record<string, unknown>;
483
+ inlineSkills?: Record<string, unknown>;
484
+ openclawConfig?: Record<string, unknown>;
485
+ pluginDependencies?: PluginDependency[];
486
+ setupCommands?: SetupCommand[];
487
+ customImage?: string;
488
+ security?: TemplateSecurityConfig;
489
+ };
490
+ }
491
+ export interface UpdateTemplateRequest {
492
+ name?: string;
493
+ description?: string;
494
+ category?: TemplateCategory;
495
+ tags?: string[];
496
+ locale?: string;
497
+ license?: TemplateLicense;
498
+ minImageTag?: string;
499
+ billingMode?: BillingMode;
500
+ requiredCredentials?: CredentialRequirement[];
501
+ mcpServers?: Record<string, McpServerDeclaration>;
502
+ skills?: SkillDeclaration[];
503
+ pluginDependencies?: PluginDependency[];
504
+ suggestedChannels?: string[];
505
+ content?: {
506
+ workspaceFiles?: Record<string, string>;
507
+ mcpServerConfigs?: Record<string, unknown>;
508
+ inlineSkills?: Record<string, unknown>;
509
+ openclawConfig?: Record<string, unknown>;
510
+ pluginDependencies?: PluginDependency[];
511
+ setupCommands?: SetupCommand[];
512
+ customImage?: string;
513
+ security?: TemplateSecurityConfig;
514
+ };
515
+ }
516
+ export interface InstantiateTemplateRequest {
517
+ instanceName: string;
518
+ imageTag?: string;
519
+ deploymentTarget?: DeploymentTarget;
520
+ billingMode?: BillingMode;
521
+ credentials?: Record<string, string | null>;
522
+ saveToVault?: string[];
523
+ securityProfile?: SecurityProfile;
524
+ }
525
+ export interface InstantiateTemplateResponse {
526
+ instance: Instance;
527
+ credentialStatus: Record<string, 'provided' | 'from_vault' | 'missing'>;
528
+ }
529
+ export interface ExportTemplateResponse {
530
+ draft: Omit<CreateTemplateRequest, 'content'>;
531
+ content: {
532
+ workspaceFiles: Record<string, string>;
533
+ mcpServerConfigs: Record<string, unknown>;
534
+ inlineSkills: Record<string, unknown>;
535
+ openclawConfig: Record<string, unknown>;
536
+ setupCommands: SetupCommand[];
537
+ customImage: string | null;
538
+ };
539
+ securityWarnings: SecurityWarning[];
540
+ }
541
+ export interface SecurityWarning {
542
+ type: 'possible_hardcoded_key';
543
+ location: string;
544
+ pattern: string;
545
+ suggestion: string;
546
+ }
547
+ export interface ListTemplatesQuery {
548
+ category?: TemplateCategory;
549
+ tags?: string[];
550
+ search?: string;
551
+ license?: TemplateLicense;
552
+ trustLevel?: TemplateTrustLevel;
553
+ authorId?: string;
554
+ featured?: boolean;
555
+ page?: number;
556
+ limit?: number;
557
+ }
558
+ export interface PaginatedResponse<T> {
559
+ items: T[];
560
+ total: number;
561
+ page: number;
562
+ limit: number;
563
+ totalPages: number;
564
+ }
565
+ export interface AddUserCredentialRequest {
566
+ provider: string;
567
+ credentialType: CredentialType;
568
+ value: string;
569
+ displayName?: string;
570
+ metadata?: Record<string, unknown>;
571
+ }
572
+ export interface UpdateUserCredentialRequest {
573
+ value?: string;
574
+ displayName?: string;
575
+ metadata?: Record<string, unknown>;
576
+ role?: CredentialRole;
577
+ status?: CredentialStatus;
578
+ }
579
+ export interface ChannelStatusDetail {
580
+ /** Channel identifier (e.g., 'telegram', 'discord', 'whatsapp') */
581
+ channelId: string;
582
+ /** Normalized connection status */
583
+ connected: boolean;
584
+ /** Whether the channel plugin is running */
585
+ running: boolean;
586
+ /** Whether the channel has configuration */
587
+ configured: boolean;
588
+ /** Last inbound message timestamp (epoch ms) or null */
589
+ lastInboundAt: number | null;
590
+ /** Last outbound message timestamp (epoch ms) or null */
591
+ lastOutboundAt: number | null;
592
+ /** Most recent error message or null */
593
+ lastError: string | null;
594
+ /** When the last error occurred (epoch ms) or null */
595
+ lastErrorAt: number | null;
596
+ /** Auth status string (e.g., 'authenticated', 'expired', 'pending') or null */
597
+ authStatus: string | null;
598
+ /** Account display name (e.g., bot username) or null */
599
+ displayName: string | null;
600
+ /** Probe results (only present when probe was requested) */
601
+ probe: {
602
+ ok: boolean;
603
+ latencyMs?: number;
604
+ error?: string;
605
+ } | null;
606
+ /** Raw extra fields from the gateway (channel-type-specific data) */
607
+ extra: Record<string, unknown>;
608
+ }
609
+ export interface ChannelEnableRequest {
610
+ enabled: boolean;
611
+ }
612
+ export interface ChannelPolicyUpdate {
613
+ dmPolicy?: 'open' | 'pairing' | 'allowlist' | 'disabled';
614
+ groupPolicy?: 'open' | 'disabled' | 'allowlist';
615
+ }
616
+ export interface AdminStats {
617
+ totalUsers: number;
618
+ totalInstances: number;
619
+ instancesByStatus: Record<string, number>;
620
+ instancesByTarget: Record<string, number>;
621
+ recentSignups: number;
622
+ }
623
+ export interface AdminUser {
624
+ id: string;
625
+ email: string;
626
+ displayName: string;
627
+ createdAt: string;
628
+ instanceCount: number;
629
+ runningCount: number;
630
+ }
631
+ export interface AdminUserInstance {
632
+ id: string;
633
+ name: string;
634
+ agentType: string;
635
+ status: InstanceStatus;
636
+ statusMessage: string | null;
637
+ deploymentTarget: DeploymentTarget;
638
+ imageTag: string;
639
+ createdAt: string;
640
+ updatedAt: string;
641
+ }
642
+ export interface AdminKeyInfo {
643
+ token: string;
644
+ keyAlias: string | null;
645
+ keyName: string;
646
+ spend: number;
647
+ maxBudget: number | null;
648
+ teamId: string;
649
+ userId: string | null;
650
+ userEmail: string | null;
651
+ models: string[];
652
+ status: 'active' | 'expired' | 'revoked';
653
+ expires: string | null;
654
+ createdAt: string | null;
655
+ }
656
+ export interface AdminKeyCreateRequest {
657
+ userId: string;
658
+ models?: string[];
659
+ maxBudget?: number | null;
660
+ budgetDuration?: string;
661
+ keyAlias?: string;
662
+ }
663
+ export interface AdminKeyCreateResponse {
664
+ key: string;
665
+ keyName: string;
666
+ keyAlias: string | null;
667
+ teamId: string;
668
+ }
669
+ export interface AdminKeyUpdateRequest {
670
+ maxBudget?: number | null;
671
+ }
672
+ export type MentionMode = 'broadcast' | 'silent';
673
+ export type MessageSenderType = 'user' | 'bot' | 'system';
674
+ export type DeliveryStatusValue = 'pending' | 'delivered' | 'processing' | 'completed' | 'error';
675
+ export type AggregatedDeliveryStatus = 'pending' | 'delivered' | 'processing' | 'completed' | 'partial_error' | 'error';
676
+ export interface GroupChat {
677
+ id: string;
678
+ userId: string;
679
+ name: string;
680
+ defaultMentionMode: MentionMode;
681
+ maxBotChainDepth: number;
682
+ members: GroupChatMember[];
683
+ createdAt: string;
684
+ updatedAt: string;
685
+ }
686
+ export interface GroupChatMember {
687
+ id: string;
688
+ groupChatId: string;
689
+ instanceId: string | null;
690
+ displayName: string;
691
+ role: string | null;
692
+ isHuman: boolean;
693
+ userId: string | null;
694
+ joinedAt: string;
695
+ }
696
+ export interface GroupChatMessage {
697
+ id: string;
698
+ groupChatId: string;
699
+ senderType: MessageSenderType;
700
+ senderInstanceId: string | null;
701
+ senderUserId: string | null;
702
+ senderDisplayName?: string;
703
+ content: string;
704
+ mentionedInstanceIds: string[];
705
+ replyToMessageId: string | null;
706
+ chainDepth: number;
707
+ createdAt: string;
708
+ deliveryStatus?: DeliveryStatusEntry[];
709
+ }
710
+ export interface DeliveryStatusEntry {
711
+ id: string;
712
+ messageId: string;
713
+ targetInstanceId: string;
714
+ targetDisplayName?: string;
715
+ status: DeliveryStatusValue;
716
+ errorMessage: string | null;
717
+ responseMessageId: string | null;
718
+ retryCount: number;
719
+ maxRetries: number;
720
+ nextRetryAt: string | null;
721
+ deliveredAt: string | null;
722
+ processingAt: string | null;
723
+ completedAt: string | null;
724
+ errorAt: string | null;
725
+ createdAt: string;
726
+ }
727
+ export interface CreateGroupChatRequest {
728
+ name: string;
729
+ instanceIds: string[];
730
+ displayNames: Record<string, string>;
731
+ roles?: Record<string, string>;
732
+ defaultMentionMode?: MentionMode;
733
+ maxBotChainDepth?: number;
734
+ }
735
+ export interface UpdateGroupChatRequest {
736
+ name?: string;
737
+ defaultMentionMode?: MentionMode;
738
+ maxBotChainDepth?: number;
739
+ }
740
+ export interface AddGroupChatMemberRequest {
741
+ instanceId?: string;
742
+ userId?: string;
743
+ displayName: string;
744
+ role?: string;
745
+ isHuman?: boolean;
746
+ }
747
+ export interface SendGroupChatMessageRequest {
748
+ content: string;
749
+ attachments?: ChatAttachment[];
750
+ }
751
+ export interface RetryGroupChatMessageRequest {
752
+ targetInstanceId?: string;
753
+ }
754
+ export interface GroupChatMessagesResponse {
755
+ messages: GroupChatMessage[];
756
+ hasMore: boolean;
757
+ }
758
+ export interface GroupChatMessageSentResponse {
759
+ messageId: string;
760
+ }
761
+ export interface RetryGroupChatMessageResponse {
762
+ retriedCount: number;
763
+ }
764
+ export interface UpdateGroupChatMemberRequest {
765
+ displayName?: string;
766
+ role?: string;
767
+ }
768
+ export interface GroupChatWsMessage {
769
+ type: 'group_chat:message';
770
+ groupChatId: string;
771
+ payload: {
772
+ messageId: string;
773
+ senderType: MessageSenderType;
774
+ senderInstanceId: string | null;
775
+ senderUserId: string | null;
776
+ senderName: string;
777
+ content: string;
778
+ chainDepth: number;
779
+ createdAt: string;
780
+ deliveryStatus?: Array<{
781
+ targetInstanceId: string;
782
+ targetDisplayName: string;
783
+ status: DeliveryStatusValue;
784
+ errorMessage?: string;
785
+ }>;
786
+ };
787
+ }
788
+ export interface GroupChatDeliveryWsMessage {
789
+ type: 'group_chat:delivery_status';
790
+ groupChatId: string;
791
+ payload: {
792
+ messageId: string;
793
+ targetInstanceId: string;
794
+ targetDisplayName: string;
795
+ status: DeliveryStatusValue;
796
+ errorMessage?: string;
797
+ responseMessageId?: string;
798
+ timestamp: string;
799
+ };
800
+ }
801
+ export interface GroupChatTypingWsMessage {
802
+ type: 'group_chat:typing';
803
+ groupChatId: string;
804
+ payload: {
805
+ instanceId: string;
806
+ displayName: string;
807
+ };
808
+ }
809
+ export interface GroupChatErrorWsMessage {
810
+ type: 'group_chat:error';
811
+ groupChatId: string;
812
+ payload: {
813
+ messageId?: string;
814
+ instanceId?: string;
815
+ error: string;
816
+ };
817
+ }
818
+ export interface UsageSummary {
819
+ totalSpendUsd: number;
820
+ balanceUsd: number | null;
821
+ budgetLimitUsd: number | null;
822
+ budgetUsedPercent: number | null;
823
+ spendByModel: Record<string, number>;
824
+ periodStart: string | null;
825
+ periodEnd: string | null;
826
+ }
827
+ export interface UsageTimeseries {
828
+ date: string;
829
+ spendUsd: number;
830
+ model: string;
831
+ provider: string;
832
+ totalTokens: number;
833
+ requestCount: number;
834
+ }
835
+ export type SnapshotTriggerType = 'manual' | 'pre_operation' | 'daily';
836
+ export interface Snapshot {
837
+ id: string;
838
+ instanceId: string;
839
+ userId: string;
840
+ configSnapshot: Record<string, unknown>;
841
+ workspaceFiles: Record<string, string>;
842
+ credentialRefs: Array<{
843
+ provider: string;
844
+ type: string;
845
+ }>;
846
+ description: string | null;
847
+ triggerType: SnapshotTriggerType;
848
+ triggerDetail: string | null;
849
+ instanceStatus: string | null;
850
+ totalSizeBytes: number | null;
851
+ createdAt: string;
852
+ }
853
+ /**
854
+ * 配置变更摘要 — 描述单个字段从旧值到新值的变化
855
+ */
856
+ export interface ConfigChangeSummary {
857
+ /** 字段标识符 (如 "defaultModel", "agentsmd") */
858
+ field: string;
859
+ /** 字段显示名称 (如 "AI 模型", "工作区指令") */
860
+ fieldLabel: string;
861
+ /** 字段分类 */
862
+ category: 'core' | 'workspace' | 'channel' | 'tool' | 'mcp';
863
+ /** 变更类型 */
864
+ changeType: 'added' | 'modified' | 'removed';
865
+ /** 旧值摘要 (截断到 50 字符) */
866
+ oldValue?: string;
867
+ /** 新值摘要 (截断到 50 字符) */
868
+ newValue?: string;
869
+ /** 对于长文本,显示字符数变化 */
870
+ sizeDelta?: number;
871
+ }
872
+ export interface SnapshotSummary {
873
+ id: string;
874
+ description: string | null;
875
+ triggerType: SnapshotTriggerType;
876
+ triggerDetail: string | null;
877
+ instanceStatus: string | null;
878
+ totalSizeBytes: number | null;
879
+ createdAt: string;
880
+ /** 版本号 (如 "v2.3") — 按时间顺序递增 */
881
+ version?: string;
882
+ /** 与前一版本的变更摘要 */
883
+ changeSummary?: ConfigChangeSummary[];
884
+ /** 变更字段数量 */
885
+ changeCount?: number;
886
+ /** 创建者 ID (null = 系统自动) */
887
+ createdById?: string | null;
888
+ /** 创建者名称 */
889
+ createdByName?: string;
890
+ }
891
+ export type DiffChangeType = 'modified' | 'added' | 'removed' | 'unchanged';
892
+ export interface SnapshotDiffEntry {
893
+ file: string;
894
+ type: DiffChangeType;
895
+ snapshotContent?: string;
896
+ currentContent?: string;
897
+ }
898
+ export interface SnapshotDiff {
899
+ snapshotId: string;
900
+ snapshotCreatedAt: string;
901
+ changes: SnapshotDiffEntry[];
902
+ }
903
+ export interface SnapshotRestoredWsMessage {
904
+ type: 'instance:snapshot_restored';
905
+ instanceId: string;
906
+ groupChatId?: string;
907
+ payload: {
908
+ snapshotId: string;
909
+ restoredAt: string;
910
+ };
911
+ }
912
+ export type NotificationType = 'budget_warning' | 'budget_critical' | 'budget_exhausted' | 'burn_rate_spike' | 'instance_stopped' | 'daily_digest' | 'security_audit' | 'config_integrity' | 'skill_plugin_change' | 'dlp_alert';
913
+ export type NotificationSeverity = 'info' | 'warn' | 'critical';
914
+ export interface Notification {
915
+ id: string;
916
+ userId: string;
917
+ instanceId: string | null;
918
+ type: NotificationType;
919
+ severity: NotificationSeverity;
920
+ title: string;
921
+ body: string | null;
922
+ metadata: BudgetNotificationMetadata | Record<string, unknown>;
923
+ isRead: boolean;
924
+ isDismissed: boolean;
925
+ createdAt: string;
926
+ }
927
+ export interface NotificationSummary {
928
+ id: string;
929
+ type: NotificationType;
930
+ severity: NotificationSeverity;
931
+ title: string;
932
+ isRead: boolean;
933
+ createdAt: string;
934
+ }
935
+ export interface BudgetNotificationMetadata {
936
+ instanceId?: string;
937
+ instanceName?: string;
938
+ currentSpend?: number;
939
+ budgetLimit?: number;
940
+ percentUsed?: number;
941
+ dailyRate7d?: number;
942
+ daysUntilExhaustion?: number | null;
943
+ trend?: BurnRateTrend;
944
+ }
945
+ export type BurnRateTrend = 'fast_burn' | 'rising' | 'steady' | 'cooling' | 'idle';
946
+ export interface BurnRateResult {
947
+ dailyRate7d: number;
948
+ dailyRate30d: number;
949
+ dailyRateToday: number;
950
+ trend: BurnRateTrend;
951
+ daysUntilExhaustion: number | null;
952
+ projectedMonthlySpend: number;
953
+ }
954
+ export type BurnRateReason = 'not_platform' | 'not_provisioned' | 'no_team' | 'no_usage';
955
+ export interface BurnRateApiData {
956
+ burnRate: BurnRateResult | null;
957
+ reason?: BurnRateReason;
958
+ }
959
+ export interface WsNotificationMessage {
960
+ type: 'notification';
961
+ instanceId?: string;
962
+ groupChatId?: string;
963
+ payload: {
964
+ notification: NotificationSummary;
965
+ };
966
+ }
967
+ export type DlpMode = 'redact' | 'block' | 'warn';
968
+ export interface DlpConfig {
969
+ credentialLeakProtection: boolean;
970
+ apiKeyPatternDetection: boolean;
971
+ systemPromptLeakProtection: boolean;
972
+ envLeakProtection: boolean;
973
+ internalPathProtection: boolean;
974
+ mode: DlpMode;
975
+ }
976
+ export type OutputFilterCategory = 'credential_leak' | 'api_key_pattern' | 'system_prompt_leak' | 'env_leak' | 'internal_path_leak';
977
+ export interface OutputFilterMatch {
978
+ category: OutputFilterCategory;
979
+ redactedSnippet: string;
980
+ }
981
+ export interface OutputFilterResult {
982
+ filtered: boolean;
983
+ mode: DlpMode;
984
+ filteredContent: string;
985
+ matches: OutputFilterMatch[];
986
+ durationMs: number;
987
+ }
988
+ export type PromptGuardSeverity = 'info' | 'warning' | 'critical';
989
+ export type PromptGuardCategory = 'fake_system_message' | 'instruction_override' | 'sensitive_probe' | 'destructive_action' | 'fake_urgency' | 'repetition_attack';
990
+ export interface PromptGuardPattern {
991
+ id: string;
992
+ category: PromptGuardCategory;
993
+ severity: PromptGuardSeverity;
994
+ /** 正则表达式字符串(运行时编译) */
995
+ pattern: string;
996
+ /** 正则标志位 (默认 'i') */
997
+ flags?: string;
998
+ /** 人类可读描述 */
999
+ description: string;
1000
+ }
1001
+ export interface PromptGuardResult {
1002
+ /** 是否检测到注入模式 */
1003
+ detected: boolean;
1004
+ /** 最高严重级别 */
1005
+ maxSeverity: PromptGuardSeverity | null;
1006
+ /** 匹配的模式列表 */
1007
+ matches: Array<{
1008
+ patternId: string;
1009
+ category: PromptGuardCategory;
1010
+ severity: PromptGuardSeverity;
1011
+ /** 匹配的文本片段(脱敏,截断至 100 字符) */
1012
+ matchedSnippet: string;
1013
+ }>;
1014
+ /** 检测耗时(毫秒) */
1015
+ durationMs: number;
1016
+ }
1017
+ export interface PromptGuardConfig {
1018
+ /** 是否启用检测 */
1019
+ enabled: boolean;
1020
+ /** 触发告警的最低严重级别 */
1021
+ minAlertSeverity: PromptGuardSeverity;
1022
+ /** 自定义可疑模式(追加到默认列表) */
1023
+ customPatterns: PromptGuardPattern[];
1024
+ /** 是否记录安全事件到 instance_events */
1025
+ logEvents: boolean;
1026
+ /** 是否通过 WebSocket 推送安全事件 */
1027
+ pushEvents: boolean;
1028
+ }
1029
+ export interface ExecApprovalRequest {
1030
+ approvalId: string;
1031
+ command: string;
1032
+ args?: string[];
1033
+ workDir?: string;
1034
+ requestedAt: string;
1035
+ timeoutMs: number;
1036
+ }
1037
+ export interface ExecApprovalResponse {
1038
+ approvalId: string;
1039
+ approved: boolean;
1040
+ }
1041
+ export type SecurityEventType = 'security:prompt_injection_detected' | 'security:output_filtered' | 'security:credential_accessed' | 'security:config_changed' | 'security:suspicious_activity';
1042
+ /** Severity level for security events displayed in the dashboard timeline. */
1043
+ export type SecurityEventSeverity = 'critical' | 'warning' | 'info';
1044
+ export type AuthEventType = 'login_success' | 'login_failure' | 'signup' | 'logout';
1045
+ export type AuthProvider = 'clerk';
1046
+ export interface AuthEvent {
1047
+ id: string;
1048
+ eventType: AuthEventType;
1049
+ userId: string | null;
1050
+ email: string;
1051
+ ipAddress: string | null;
1052
+ userAgent: string | null;
1053
+ failureReason: string | null;
1054
+ createdAt: string;
1055
+ }
1056
+ /** Global security summary across all user instances (GET /api/security/summary). */
1057
+ export interface SecuritySummary {
1058
+ totalEvents: number;
1059
+ bySeverity: Record<string, number>;
1060
+ byType: Record<string, number>;
1061
+ recentCritical: number;
1062
+ }
1063
+ /** Protection status indicators for a single instance. */
1064
+ export interface ProtectionStatus {
1065
+ securityProfile: SecurityProfile;
1066
+ trustLayers: boolean;
1067
+ injectionDetection: boolean;
1068
+ outputFiltering: boolean;
1069
+ dlpScanning: boolean;
1070
+ configIntegrity: boolean;
1071
+ }
1072
+ /** Per-instance security dashboard summary (GET /api/instances/:id/security-summary). */
1073
+ export interface InstanceSecuritySummary {
1074
+ instanceId: string;
1075
+ totalEvents24h: number;
1076
+ bySeverity: Record<string, number>;
1077
+ byType: Record<string, number>;
1078
+ recentCritical: number;
1079
+ protection: ProtectionStatus;
1080
+ topEvents: InstanceEvent[];
1081
+ }
1082
+ export interface SystemConfigEntry {
1083
+ key: string;
1084
+ value: unknown;
1085
+ updatedAt: string;
1086
+ }
1087
+ export interface RateLimitConfig {
1088
+ windowMs: number;
1089
+ max: number;
1090
+ }
1091
+ export interface PlatformApiKey {
1092
+ id: string;
1093
+ name: string;
1094
+ prefix: string;
1095
+ createdAt: string;
1096
+ lastUsedAt?: string | null;
1097
+ }
1098
+ export interface SystemConfig {
1099
+ platformName?: string;
1100
+ platformDescription?: string;
1101
+ timezone?: string;
1102
+ language?: string;
1103
+ enableUserRegistration?: boolean;
1104
+ rateLimitGeneral?: RateLimitConfig;
1105
+ rateLimitLogin?: RateLimitConfig;
1106
+ rateLimitCredentials?: RateLimitConfig;
1107
+ corsOrigins?: string[];
1108
+ webhookUrl?: string;
1109
+ apiKeys?: PlatformApiKey[];
1110
+ dataRetentionEventsDays?: number;
1111
+ dataRetentionAuthEventsDays?: number;
1112
+ dataRetentionAuditLogDays?: number;
1113
+ dataAutoCleanupEnabled?: boolean;
1114
+ defaultUserRole?: UserRole;
1115
+ instanceQuotaPerUser?: number;
1116
+ }
1117
+ export interface StorageTableStats {
1118
+ table: string;
1119
+ sizeBytes: number;
1120
+ sizeFormatted: string;
1121
+ rowCount: number;
1122
+ }
1123
+ export interface StorageStats {
1124
+ tables: StorageTableStats[];
1125
+ totalSizeBytes: number;
1126
+ totalSizeFormatted: string;
1127
+ }
1128
+ export interface AdminUserWithRole {
1129
+ id: string;
1130
+ email: string;
1131
+ displayName: string;
1132
+ role: UserRole;
1133
+ createdAt: string;
1134
+ instanceCount: number;
1135
+ }
1136
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ // === Status Types ===
2
+ export const MAX_ATTACHMENT_SIZE = 5 * 1024 * 1024;
3
+ export const MAX_ATTACHMENTS_PER_MESSAGE = 5;
4
+ export const ALLOWED_ATTACHMENT_TYPES = new Set([
5
+ 'image/png',
6
+ 'image/jpeg',
7
+ 'image/webp',
8
+ 'image/gif',
9
+ 'application/pdf',
10
+ 'application/vnd.ms-excel',
11
+ 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
12
+ 'application/msword',
13
+ 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
14
+ ]);
15
+ /** Check whether a MIME type is an image (inline-embeddable). */
16
+ export function isImageMime(mime) {
17
+ return mime.startsWith('image/');
18
+ }
19
+ /**
20
+ * HTML `accept` attribute value for file inputs.
21
+ * Includes BOTH file extensions AND MIME types for cross-browser/macOS compatibility.
22
+ * macOS file dialogs require explicit MIME types — extensions alone are not enough.
23
+ */
24
+ export const FILE_INPUT_ACCEPT = 'image/*,.pdf,application/pdf,.xls,application/vnd.ms-excel,.xlsx,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,.doc,application/msword,.docx,application/vnd.openxmlformats-officedocument.wordprocessingml.document';
25
+ /** Max file size for agents.files.write uploads (10 MB). */
26
+ export const MAX_FILE_UPLOAD_SIZE = 10 * 1024 * 1024;
27
+ export const DEFAULT_TOOL_PERMISSIONS = {
28
+ profile: 'full',
29
+ webSearchEnabled: true,
30
+ webFetchEnabled: true,
31
+ browserEnabled: true,
32
+ elevatedEnabled: true,
33
+ denyList: [],
34
+ };
35
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,uBAAuB;AAwBvB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAEnD,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAE7C,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC;IAC9C,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,iBAAiB;IACjB,0BAA0B;IAC1B,mEAAmE;IACnE,oBAAoB;IACpB,yEAAyE;CAC1E,CAAC,CAAC;AAEH,iEAAiE;AACjE,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,0OAA0O,CAAC;AAE5Q,4DAA4D;AAC5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAgLrD,MAAM,CAAC,MAAM,wBAAwB,GAAoB;IACvD,OAAO,EAAE,MAAM;IACf,gBAAgB,EAAE,IAAI;IACtB,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,IAAI;IACpB,eAAe,EAAE,IAAI;IACrB,QAAQ,EAAE,EAAE;CACb,CAAC"}
@@ -0,0 +1,22 @@
1
+ {
2
+ "name": "@aquarium/shared",
3
+ "version": "1.0.0",
4
+ "private": true,
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js",
12
+ "default": "./src/index.ts"
13
+ }
14
+ },
15
+ "scripts": {
16
+ "build": "tsc",
17
+ "typecheck": "tsc --noEmit"
18
+ },
19
+ "devDependencies": {
20
+ "typescript": "^5.7.0"
21
+ }
22
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aquaclawai/aquarium",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "description": "Aquarium CE - AI agent management platform",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -19,9 +19,8 @@
19
19
  "typecheck": "tsc --noEmit",
20
20
  "migrate": "NODE_OPTIONS=--no-experimental-require-module tsx src/db/run-migrations.ts",
21
21
  "migrate:make": "knex migrate:make --knexfile src/db/knexfile.ts",
22
- "prepublishOnly": "npm run build -w @aquarium/shared && npm run build:ce -w @aquarium/web && npm run build && mkdir -p dist/web-dist && cp -r ../web/dist/* dist/web-dist/"
22
+ "prepublishOnly": "npm run build -w @aquarium/shared && npm run build:ce -w @aquarium/web && npm run build && mkdir -p dist/web-dist && cp -r ../web/dist/* dist/web-dist/ && mkdir -p dist/node_modules/@aquarium/shared && cp ../../packages/shared/package.json dist/node_modules/@aquarium/shared/ && cp -r ../../packages/shared/dist dist/node_modules/@aquarium/shared/"
23
23
  },
24
- "bundledDependencies": ["@aquarium/shared"],
25
24
  "dependencies": {
26
25
  "@kubernetes/client-node": "^1.4.0",
27
26
  "@aquarium/shared": "*",