@otto-code/protocol 0.8.9 → 0.8.12

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.
Files changed (60) hide show
  1. package/dist/agent-queue.d.ts +87 -0
  2. package/dist/agent-queue.js +106 -0
  3. package/dist/brain.d.ts +2321 -0
  4. package/dist/brain.js +1082 -0
  5. package/dist/client-capabilities.d.ts +2 -0
  6. package/dist/client-capabilities.js +10 -0
  7. package/dist/code-intelligence.d.ts +917 -0
  8. package/dist/code-intelligence.js +699 -0
  9. package/dist/communications.d.ts +1106 -0
  10. package/dist/communications.js +384 -0
  11. package/dist/context.d.ts +787 -0
  12. package/dist/context.js +295 -0
  13. package/dist/daemon-config.d.ts +377 -0
  14. package/dist/daemon-config.js +395 -0
  15. package/dist/file-operations.d.ts +380 -0
  16. package/dist/file-operations.js +282 -0
  17. package/dist/generated/validation/ws-outbound.aot.js +54927 -48878
  18. package/dist/git-hosting.d.ts +117 -0
  19. package/dist/git-hosting.js +109 -0
  20. package/dist/git-operations.d.ts +255 -0
  21. package/dist/git-operations.js +221 -0
  22. package/dist/integration-authorization.d.ts +195 -0
  23. package/dist/integration-authorization.js +125 -0
  24. package/dist/kanban.d.ts +341 -0
  25. package/dist/kanban.js +273 -0
  26. package/dist/loop/rpc-schemas.d.ts +6 -6
  27. package/dist/meetings.d.ts +95 -0
  28. package/dist/meetings.js +57 -0
  29. package/dist/messages.d.ts +21054 -24042
  30. package/dist/messages.js +4355 -8731
  31. package/dist/orchestration.d.ts +726 -0
  32. package/dist/orchestration.js +232 -0
  33. package/dist/personality-schemas.d.ts +221 -0
  34. package/dist/personality-schemas.js +340 -0
  35. package/dist/preview.d.ts +140 -0
  36. package/dist/preview.js +98 -0
  37. package/dist/project-knowledge.d.ts +740 -0
  38. package/dist/project-knowledge.js +229 -0
  39. package/dist/project-links.d.ts +102 -0
  40. package/dist/project-links.js +62 -0
  41. package/dist/provider-config.d.ts +87 -2
  42. package/dist/provider-config.js +110 -0
  43. package/dist/refine.d.ts +93 -0
  44. package/dist/refine.js +78 -0
  45. package/dist/schedule/rpc-schemas.d.ts +47 -47
  46. package/dist/schedule/types.d.ts +13 -13
  47. package/dist/speech.d.ts +180 -0
  48. package/dist/speech.js +177 -0
  49. package/dist/storage.d.ts +79 -0
  50. package/dist/storage.js +107 -0
  51. package/dist/suggested-tasks.d.ts +106 -0
  52. package/dist/suggested-tasks.js +81 -0
  53. package/dist/terminal-compatibility.d.ts +55 -0
  54. package/dist/terminal-compatibility.js +35 -0
  55. package/dist/usage-stats.d.ts +255 -0
  56. package/dist/usage-stats.js +162 -0
  57. package/dist/validation/ws-outbound-schema-metadata.d.ts +1404 -274
  58. package/dist/worktree-ops.d.ts +81 -0
  59. package/dist/worktree-ops.js +88 -0
  60. package/package.json +1 -1
@@ -0,0 +1,93 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * Otto Refine wire schemas: the file.refine.* RPCs (see docs/refine.md). Fork-only capability, so it owns its schemas; messages.ts re-exports them.
4
+ */
5
+ /**
6
+ * Refine - an AI rewrite the user reviews as a diff before anything is written.
7
+ * This RPC only *proposes*: it reads nothing from disk and writes nothing. The
8
+ * accepted result goes back through `file.write.request` like any other save,
9
+ * so the conditional-write precondition still guards it.
10
+ *
11
+ * `base` travels from the client rather than being re-read on the daemon, so
12
+ * the model rewrites exactly the document the user is looking at and the diff
13
+ * they review is the diff of what they saw.
14
+ */
15
+ /**
16
+ * One document in a refine request. `id` is opaque and client-minted; the model
17
+ * never sees it and the daemon only echoes it back. That is deliberate: the
18
+ * client maps id -> absolute path itself, so a model that mangles or invents a
19
+ * filename cannot misroute a write. `label` is the only path-ish thing the
20
+ * model sees, and it exists purely so the prompt can say which file is which.
21
+ */
22
+ export declare const FileRefineDocumentSchema: z.ZodObject<{
23
+ id: z.ZodString;
24
+ label: z.ZodString;
25
+ content: z.ZodString;
26
+ }, z.core.$strip>;
27
+ /** A file the model may read for context but must never rewrite. */
28
+ export declare const FileRefineReferenceSchema: z.ZodObject<{
29
+ label: z.ZodString;
30
+ content: z.ZodString;
31
+ }, z.core.$strip>;
32
+ export declare const FileRefineRequestSchema: z.ZodObject<{
33
+ type: z.ZodLiteral<"file.refine.request">;
34
+ cwd: z.ZodString;
35
+ documents: z.ZodArray<z.ZodObject<{
36
+ id: z.ZodString;
37
+ label: z.ZodString;
38
+ content: z.ZodString;
39
+ }, z.core.$strip>>;
40
+ references: z.ZodOptional<z.ZodArray<z.ZodObject<{
41
+ label: z.ZodString;
42
+ content: z.ZodString;
43
+ }, z.core.$strip>>>;
44
+ instruction: z.ZodString;
45
+ requestId: z.ZodString;
46
+ }, z.core.$strip>;
47
+ /**
48
+ * A refine proposal: the whole rewritten text of each document the model chose
49
+ * to change, keyed by the id the request minted. Documents it left alone are
50
+ * simply absent, and ids the request never sent are dropped by the daemon.
51
+ *
52
+ * The client diffs each one against the base it pinned, so a truncated or
53
+ * chatty answer shows up as a diff the user can refuse rather than as a
54
+ * corrupted file.
55
+ */
56
+ export declare const FileRefineFileSchema: z.ZodObject<{
57
+ id: z.ZodString;
58
+ content: z.ZodString;
59
+ }, z.core.$strip>;
60
+ export declare const FileRefineResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
61
+ status: z.ZodLiteral<"ok">;
62
+ files: z.ZodArray<z.ZodObject<{
63
+ id: z.ZodString;
64
+ content: z.ZodString;
65
+ }, z.core.$strip>>;
66
+ }, z.core.$strip>, z.ZodObject<{
67
+ status: z.ZodLiteral<"error">;
68
+ message: z.ZodString;
69
+ }, z.core.$strip>], "status">;
70
+ export declare const FileRefineResponseSchema: z.ZodObject<{
71
+ type: z.ZodLiteral<"file.refine.response">;
72
+ payload: z.ZodObject<{
73
+ cwd: z.ZodString;
74
+ result: z.ZodDiscriminatedUnion<[z.ZodObject<{
75
+ status: z.ZodLiteral<"ok">;
76
+ files: z.ZodArray<z.ZodObject<{
77
+ id: z.ZodString;
78
+ content: z.ZodString;
79
+ }, z.core.$strip>>;
80
+ }, z.core.$strip>, z.ZodObject<{
81
+ status: z.ZodLiteral<"error">;
82
+ message: z.ZodString;
83
+ }, z.core.$strip>], "status">;
84
+ requestId: z.ZodString;
85
+ }, z.core.$strip>;
86
+ }, z.core.$strip>;
87
+ export type FileRefineRequest = z.infer<typeof FileRefineRequestSchema>;
88
+ export type FileRefineDocument = z.infer<typeof FileRefineDocumentSchema>;
89
+ export type FileRefineReference = z.infer<typeof FileRefineReferenceSchema>;
90
+ export type FileRefineFile = z.infer<typeof FileRefineFileSchema>;
91
+ export type FileRefineResponse = z.infer<typeof FileRefineResponseSchema>;
92
+ export type FileRefineResult = z.infer<typeof FileRefineResultSchema>;
93
+ //# sourceMappingURL=refine.d.ts.map
package/dist/refine.js ADDED
@@ -0,0 +1,78 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * Otto Refine wire schemas: the file.refine.* RPCs (see docs/refine.md). Fork-only capability, so it owns its schemas; messages.ts re-exports them.
4
+ */
5
+ /**
6
+ * Refine - an AI rewrite the user reviews as a diff before anything is written.
7
+ * This RPC only *proposes*: it reads nothing from disk and writes nothing. The
8
+ * accepted result goes back through `file.write.request` like any other save,
9
+ * so the conditional-write precondition still guards it.
10
+ *
11
+ * `base` travels from the client rather than being re-read on the daemon, so
12
+ * the model rewrites exactly the document the user is looking at and the diff
13
+ * they review is the diff of what they saw.
14
+ */
15
+ /**
16
+ * One document in a refine request. `id` is opaque and client-minted; the model
17
+ * never sees it and the daemon only echoes it back. That is deliberate: the
18
+ * client maps id -> absolute path itself, so a model that mangles or invents a
19
+ * filename cannot misroute a write. `label` is the only path-ish thing the
20
+ * model sees, and it exists purely so the prompt can say which file is which.
21
+ */
22
+ export const FileRefineDocumentSchema = z.object({
23
+ id: z.string().min(1),
24
+ label: z.string(),
25
+ content: z.string(),
26
+ });
27
+ /** A file the model may read for context but must never rewrite. */
28
+ export const FileRefineReferenceSchema = z.object({
29
+ label: z.string(),
30
+ content: z.string(),
31
+ });
32
+ export const FileRefineRequestSchema = z.object({
33
+ type: z.literal("file.refine.request"),
34
+ // Provider resolution only - which workspace's mini-task chain runs this.
35
+ // Documents are NOT read from disk here; they travel on the wire.
36
+ cwd: z.string(),
37
+ // What the model may rewrite. The blast radius of the whole request: a file
38
+ // absent from this list cannot be changed, whatever the model returns.
39
+ documents: z.array(FileRefineDocumentSchema).min(1),
40
+ // What it may read to understand the first list. Optional so an old client
41
+ // that only sends documents still parses.
42
+ references: z.array(FileRefineReferenceSchema).optional(),
43
+ // The user's plain-language instruction, possibly seeded from a preset.
44
+ instruction: z.string(),
45
+ requestId: z.string(),
46
+ });
47
+ /**
48
+ * A refine proposal: the whole rewritten text of each document the model chose
49
+ * to change, keyed by the id the request minted. Documents it left alone are
50
+ * simply absent, and ids the request never sent are dropped by the daemon.
51
+ *
52
+ * The client diffs each one against the base it pinned, so a truncated or
53
+ * chatty answer shows up as a diff the user can refuse rather than as a
54
+ * corrupted file.
55
+ */
56
+ export const FileRefineFileSchema = z.object({
57
+ id: z.string().min(1),
58
+ content: z.string(),
59
+ });
60
+ export const FileRefineResultSchema = z.discriminatedUnion("status", [
61
+ z.object({
62
+ status: z.literal("ok"),
63
+ files: z.array(FileRefineFileSchema),
64
+ }),
65
+ z.object({
66
+ status: z.literal("error"),
67
+ message: z.string(),
68
+ }),
69
+ ]);
70
+ export const FileRefineResponseSchema = z.object({
71
+ type: z.literal("file.refine.response"),
72
+ payload: z.object({
73
+ cwd: z.string(),
74
+ result: FileRefineResultSchema,
75
+ requestId: z.string(),
76
+ }),
77
+ });
78
+ //# sourceMappingURL=refine.js.map
@@ -122,22 +122,14 @@ export declare const ScheduleCreateResponseSchema: z.ZodObject<{
122
122
  prompt: z.ZodString;
123
123
  name: z.ZodNullable<z.ZodString>;
124
124
  id: z.ZodString;
125
+ createdAt: z.ZodString;
126
+ updatedAt: z.ZodString;
125
127
  status: z.ZodEnum<{
126
- paused: "paused";
127
128
  completed: "completed";
128
129
  active: "active";
130
+ paused: "paused";
129
131
  }>;
130
- createdAt: z.ZodString;
131
- updatedAt: z.ZodString;
132
132
  expiresAt: z.ZodNullable<z.ZodString>;
133
- cadence: z.ZodDiscriminatedUnion<[z.ZodObject<{
134
- type: z.ZodLiteral<"every">;
135
- everyMs: z.ZodNumber;
136
- }, z.core.$strip>, z.ZodObject<{
137
- type: z.ZodLiteral<"cron">;
138
- expression: z.ZodString;
139
- timezone: z.ZodOptional<z.ZodString>;
140
- }, z.core.$strip>], "type">;
141
133
  target: z.ZodDiscriminatedUnion<[z.ZodObject<{
142
134
  type: z.ZodLiteral<"agent">;
143
135
  agentId: z.ZodGUID;
@@ -169,6 +161,14 @@ export declare const ScheduleCreateResponseSchema: z.ZodObject<{
169
161
  mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
170
162
  }, z.core.$strip>;
171
163
  }, z.core.$strip>], "type">;
164
+ cadence: z.ZodDiscriminatedUnion<[z.ZodObject<{
165
+ type: z.ZodLiteral<"every">;
166
+ everyMs: z.ZodNumber;
167
+ }, z.core.$strip>, z.ZodObject<{
168
+ type: z.ZodLiteral<"cron">;
169
+ expression: z.ZodString;
170
+ timezone: z.ZodOptional<z.ZodString>;
171
+ }, z.core.$strip>], "type">;
172
172
  nextRunAt: z.ZodNullable<z.ZodString>;
173
173
  lastRunAt: z.ZodNullable<z.ZodString>;
174
174
  lastRunStatus: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
@@ -193,22 +193,14 @@ export declare const ScheduleListResponseSchema: z.ZodObject<{
193
193
  prompt: z.ZodString;
194
194
  name: z.ZodNullable<z.ZodString>;
195
195
  id: z.ZodString;
196
+ createdAt: z.ZodString;
197
+ updatedAt: z.ZodString;
196
198
  status: z.ZodEnum<{
197
- paused: "paused";
198
199
  completed: "completed";
199
200
  active: "active";
201
+ paused: "paused";
200
202
  }>;
201
- createdAt: z.ZodString;
202
- updatedAt: z.ZodString;
203
203
  expiresAt: z.ZodNullable<z.ZodString>;
204
- cadence: z.ZodDiscriminatedUnion<[z.ZodObject<{
205
- type: z.ZodLiteral<"every">;
206
- everyMs: z.ZodNumber;
207
- }, z.core.$strip>, z.ZodObject<{
208
- type: z.ZodLiteral<"cron">;
209
- expression: z.ZodString;
210
- timezone: z.ZodOptional<z.ZodString>;
211
- }, z.core.$strip>], "type">;
212
204
  target: z.ZodDiscriminatedUnion<[z.ZodObject<{
213
205
  type: z.ZodLiteral<"agent">;
214
206
  agentId: z.ZodGUID;
@@ -240,6 +232,14 @@ export declare const ScheduleListResponseSchema: z.ZodObject<{
240
232
  mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
241
233
  }, z.core.$strip>;
242
234
  }, z.core.$strip>], "type">;
235
+ cadence: z.ZodDiscriminatedUnion<[z.ZodObject<{
236
+ type: z.ZodLiteral<"every">;
237
+ everyMs: z.ZodNumber;
238
+ }, z.core.$strip>, z.ZodObject<{
239
+ type: z.ZodLiteral<"cron">;
240
+ expression: z.ZodString;
241
+ timezone: z.ZodOptional<z.ZodString>;
242
+ }, z.core.$strip>], "type">;
243
243
  nextRunAt: z.ZodNullable<z.ZodString>;
244
244
  lastRunAt: z.ZodNullable<z.ZodString>;
245
245
  lastRunStatus: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
@@ -304,9 +304,9 @@ export declare const ScheduleInspectResponseSchema: z.ZodObject<{
304
304
  }, z.core.$strip>;
305
305
  }, z.core.$strip>], "type">;
306
306
  status: z.ZodEnum<{
307
- paused: "paused";
308
307
  completed: "completed";
309
308
  active: "active";
309
+ paused: "paused";
310
310
  }>;
311
311
  createdAt: z.ZodString;
312
312
  updatedAt: z.ZodString;
@@ -378,22 +378,14 @@ export declare const SchedulePauseResponseSchema: z.ZodObject<{
378
378
  prompt: z.ZodString;
379
379
  name: z.ZodNullable<z.ZodString>;
380
380
  id: z.ZodString;
381
+ createdAt: z.ZodString;
382
+ updatedAt: z.ZodString;
381
383
  status: z.ZodEnum<{
382
- paused: "paused";
383
384
  completed: "completed";
384
385
  active: "active";
386
+ paused: "paused";
385
387
  }>;
386
- createdAt: z.ZodString;
387
- updatedAt: z.ZodString;
388
388
  expiresAt: z.ZodNullable<z.ZodString>;
389
- cadence: z.ZodDiscriminatedUnion<[z.ZodObject<{
390
- type: z.ZodLiteral<"every">;
391
- everyMs: z.ZodNumber;
392
- }, z.core.$strip>, z.ZodObject<{
393
- type: z.ZodLiteral<"cron">;
394
- expression: z.ZodString;
395
- timezone: z.ZodOptional<z.ZodString>;
396
- }, z.core.$strip>], "type">;
397
389
  target: z.ZodDiscriminatedUnion<[z.ZodObject<{
398
390
  type: z.ZodLiteral<"agent">;
399
391
  agentId: z.ZodGUID;
@@ -425,6 +417,14 @@ export declare const SchedulePauseResponseSchema: z.ZodObject<{
425
417
  mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
426
418
  }, z.core.$strip>;
427
419
  }, z.core.$strip>], "type">;
420
+ cadence: z.ZodDiscriminatedUnion<[z.ZodObject<{
421
+ type: z.ZodLiteral<"every">;
422
+ everyMs: z.ZodNumber;
423
+ }, z.core.$strip>, z.ZodObject<{
424
+ type: z.ZodLiteral<"cron">;
425
+ expression: z.ZodString;
426
+ timezone: z.ZodOptional<z.ZodString>;
427
+ }, z.core.$strip>], "type">;
428
428
  nextRunAt: z.ZodNullable<z.ZodString>;
429
429
  lastRunAt: z.ZodNullable<z.ZodString>;
430
430
  lastRunStatus: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
@@ -449,22 +449,14 @@ export declare const ScheduleResumeResponseSchema: z.ZodObject<{
449
449
  prompt: z.ZodString;
450
450
  name: z.ZodNullable<z.ZodString>;
451
451
  id: z.ZodString;
452
+ createdAt: z.ZodString;
453
+ updatedAt: z.ZodString;
452
454
  status: z.ZodEnum<{
453
- paused: "paused";
454
455
  completed: "completed";
455
456
  active: "active";
457
+ paused: "paused";
456
458
  }>;
457
- createdAt: z.ZodString;
458
- updatedAt: z.ZodString;
459
459
  expiresAt: z.ZodNullable<z.ZodString>;
460
- cadence: z.ZodDiscriminatedUnion<[z.ZodObject<{
461
- type: z.ZodLiteral<"every">;
462
- everyMs: z.ZodNumber;
463
- }, z.core.$strip>, z.ZodObject<{
464
- type: z.ZodLiteral<"cron">;
465
- expression: z.ZodString;
466
- timezone: z.ZodOptional<z.ZodString>;
467
- }, z.core.$strip>], "type">;
468
460
  target: z.ZodDiscriminatedUnion<[z.ZodObject<{
469
461
  type: z.ZodLiteral<"agent">;
470
462
  agentId: z.ZodGUID;
@@ -496,6 +488,14 @@ export declare const ScheduleResumeResponseSchema: z.ZodObject<{
496
488
  mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
497
489
  }, z.core.$strip>;
498
490
  }, z.core.$strip>], "type">;
491
+ cadence: z.ZodDiscriminatedUnion<[z.ZodObject<{
492
+ type: z.ZodLiteral<"every">;
493
+ everyMs: z.ZodNumber;
494
+ }, z.core.$strip>, z.ZodObject<{
495
+ type: z.ZodLiteral<"cron">;
496
+ expression: z.ZodString;
497
+ timezone: z.ZodOptional<z.ZodString>;
498
+ }, z.core.$strip>], "type">;
499
499
  nextRunAt: z.ZodNullable<z.ZodString>;
500
500
  lastRunAt: z.ZodNullable<z.ZodString>;
501
501
  lastRunStatus: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
@@ -568,9 +568,9 @@ export declare const ScheduleRunOnceResponseSchema: z.ZodObject<{
568
568
  }, z.core.$strip>;
569
569
  }, z.core.$strip>], "type">;
570
570
  status: z.ZodEnum<{
571
- paused: "paused";
572
571
  completed: "completed";
573
572
  active: "active";
573
+ paused: "paused";
574
574
  }>;
575
575
  createdAt: z.ZodString;
576
576
  updatedAt: z.ZodString;
@@ -657,9 +657,9 @@ export declare const ScheduleUpdateResponseSchema: z.ZodObject<{
657
657
  }, z.core.$strip>;
658
658
  }, z.core.$strip>], "type">;
659
659
  status: z.ZodEnum<{
660
- paused: "paused";
661
660
  completed: "completed";
662
661
  active: "active";
662
+ paused: "paused";
663
663
  }>;
664
664
  createdAt: z.ZodString;
665
665
  updatedAt: z.ZodString;
@@ -1,8 +1,8 @@
1
1
  import { z } from "zod";
2
2
  export declare const ScheduleStatusSchema: z.ZodEnum<{
3
- paused: "paused";
4
3
  completed: "completed";
5
4
  active: "active";
5
+ paused: "paused";
6
6
  }>;
7
7
  export type ScheduleStatus = z.infer<typeof ScheduleStatusSchema>;
8
8
  export declare const ScheduleCadenceSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
@@ -109,9 +109,9 @@ export declare const StoredScheduleSchema: z.ZodObject<{
109
109
  }, z.core.$strip>;
110
110
  }, z.core.$strip>], "type">;
111
111
  status: z.ZodEnum<{
112
- paused: "paused";
113
112
  completed: "completed";
114
113
  active: "active";
114
+ paused: "paused";
115
115
  }>;
116
116
  createdAt: z.ZodString;
117
117
  updatedAt: z.ZodString;
@@ -152,22 +152,14 @@ export declare const ScheduleSummarySchema: z.ZodObject<{
152
152
  prompt: z.ZodString;
153
153
  name: z.ZodNullable<z.ZodString>;
154
154
  id: z.ZodString;
155
+ createdAt: z.ZodString;
156
+ updatedAt: z.ZodString;
155
157
  status: z.ZodEnum<{
156
- paused: "paused";
157
158
  completed: "completed";
158
159
  active: "active";
160
+ paused: "paused";
159
161
  }>;
160
- createdAt: z.ZodString;
161
- updatedAt: z.ZodString;
162
162
  expiresAt: z.ZodNullable<z.ZodString>;
163
- cadence: z.ZodDiscriminatedUnion<[z.ZodObject<{
164
- type: z.ZodLiteral<"every">;
165
- everyMs: z.ZodNumber;
166
- }, z.core.$strip>, z.ZodObject<{
167
- type: z.ZodLiteral<"cron">;
168
- expression: z.ZodString;
169
- timezone: z.ZodOptional<z.ZodString>;
170
- }, z.core.$strip>], "type">;
171
163
  target: z.ZodDiscriminatedUnion<[z.ZodObject<{
172
164
  type: z.ZodLiteral<"agent">;
173
165
  agentId: z.ZodGUID;
@@ -199,6 +191,14 @@ export declare const ScheduleSummarySchema: z.ZodObject<{
199
191
  mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
200
192
  }, z.core.$strip>;
201
193
  }, z.core.$strip>], "type">;
194
+ cadence: z.ZodDiscriminatedUnion<[z.ZodObject<{
195
+ type: z.ZodLiteral<"every">;
196
+ everyMs: z.ZodNumber;
197
+ }, z.core.$strip>, z.ZodObject<{
198
+ type: z.ZodLiteral<"cron">;
199
+ expression: z.ZodString;
200
+ timezone: z.ZodOptional<z.ZodString>;
201
+ }, z.core.$strip>], "type">;
202
202
  nextRunAt: z.ZodNullable<z.ZodString>;
203
203
  lastRunAt: z.ZodNullable<z.ZodString>;
204
204
  lastRunStatus: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
@@ -0,0 +1,180 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * Otto speech wire schemas: the speech.* settings, TTS preview and speak RPCs, the local STT/TTS model options, and the mutable speech daemon config. Fork-only capability, so it owns its schemas; messages.ts re-exports them.
4
+ */
5
+ export declare const MutableSpeechSttConfigSchema: z.ZodObject<{
6
+ provider: z.ZodOptional<z.ZodString>;
7
+ model: z.ZodOptional<z.ZodString>;
8
+ language: z.ZodOptional<z.ZodString>;
9
+ }, z.core.$loose>;
10
+ export declare const MutableSpeechTtsConfigSchema: z.ZodObject<{
11
+ provider: z.ZodOptional<z.ZodString>;
12
+ model: z.ZodOptional<z.ZodString>;
13
+ voice: z.ZodOptional<z.ZodString>;
14
+ speed: z.ZodOptional<z.ZodNumber>;
15
+ }, z.core.$loose>;
16
+ export declare const MutableSpeechDictationConfigSchema: z.ZodObject<{
17
+ enabled: z.ZodOptional<z.ZodBoolean>;
18
+ stt: z.ZodOptional<z.ZodObject<{
19
+ provider: z.ZodOptional<z.ZodString>;
20
+ model: z.ZodOptional<z.ZodString>;
21
+ language: z.ZodOptional<z.ZodString>;
22
+ }, z.core.$loose>>;
23
+ }, z.core.$loose>;
24
+ export declare const MutableSpeechVoiceModeConfigSchema: z.ZodObject<{
25
+ enabled: z.ZodOptional<z.ZodBoolean>;
26
+ stt: z.ZodOptional<z.ZodObject<{
27
+ provider: z.ZodOptional<z.ZodString>;
28
+ model: z.ZodOptional<z.ZodString>;
29
+ language: z.ZodOptional<z.ZodString>;
30
+ }, z.core.$loose>>;
31
+ tts: z.ZodOptional<z.ZodObject<{
32
+ provider: z.ZodOptional<z.ZodString>;
33
+ model: z.ZodOptional<z.ZodString>;
34
+ voice: z.ZodOptional<z.ZodString>;
35
+ speed: z.ZodOptional<z.ZodNumber>;
36
+ }, z.core.$loose>>;
37
+ }, z.core.$loose>;
38
+ export declare const MutableSpeechOpenAiConfigSchema: z.ZodObject<{
39
+ apiKey: z.ZodOptional<z.ZodString>;
40
+ }, z.core.$loose>;
41
+ export declare const MutableSpeechConfigSchema: z.ZodObject<{
42
+ dictation: z.ZodOptional<z.ZodObject<{
43
+ enabled: z.ZodOptional<z.ZodBoolean>;
44
+ stt: z.ZodOptional<z.ZodObject<{
45
+ provider: z.ZodOptional<z.ZodString>;
46
+ model: z.ZodOptional<z.ZodString>;
47
+ language: z.ZodOptional<z.ZodString>;
48
+ }, z.core.$loose>>;
49
+ }, z.core.$loose>>;
50
+ voiceMode: z.ZodOptional<z.ZodObject<{
51
+ enabled: z.ZodOptional<z.ZodBoolean>;
52
+ stt: z.ZodOptional<z.ZodObject<{
53
+ provider: z.ZodOptional<z.ZodString>;
54
+ model: z.ZodOptional<z.ZodString>;
55
+ language: z.ZodOptional<z.ZodString>;
56
+ }, z.core.$loose>>;
57
+ tts: z.ZodOptional<z.ZodObject<{
58
+ provider: z.ZodOptional<z.ZodString>;
59
+ model: z.ZodOptional<z.ZodString>;
60
+ voice: z.ZodOptional<z.ZodString>;
61
+ speed: z.ZodOptional<z.ZodNumber>;
62
+ }, z.core.$loose>>;
63
+ }, z.core.$loose>>;
64
+ openai: z.ZodOptional<z.ZodObject<{
65
+ apiKey: z.ZodOptional<z.ZodString>;
66
+ }, z.core.$loose>>;
67
+ }, z.core.$loose>;
68
+ export type MutableSpeechConfig = z.infer<typeof MutableSpeechConfigSchema>;
69
+ export declare const SpeechSettingsGetOptionsRequestSchema: z.ZodObject<{
70
+ type: z.ZodLiteral<"speech.settings.get_options.request">;
71
+ requestId: z.ZodString;
72
+ }, z.core.$strip>;
73
+ export declare const SpeechTtsPreviewRequestSchema: z.ZodObject<{
74
+ type: z.ZodLiteral<"speech.tts.preview.request">;
75
+ requestId: z.ZodString;
76
+ text: z.ZodString;
77
+ voice: z.ZodOptional<z.ZodObject<{
78
+ provider: z.ZodOptional<z.ZodString>;
79
+ model: z.ZodOptional<z.ZodString>;
80
+ name: z.ZodString;
81
+ }, z.core.$loose>>;
82
+ }, z.core.$strip>;
83
+ export declare const SpeechTtsSpeakRequestSchema: z.ZodObject<{
84
+ type: z.ZodLiteral<"speech.tts.speak.request">;
85
+ requestId: z.ZodString;
86
+ text: z.ZodString;
87
+ voice: z.ZodOptional<z.ZodObject<{
88
+ provider: z.ZodOptional<z.ZodString>;
89
+ model: z.ZodOptional<z.ZodString>;
90
+ name: z.ZodString;
91
+ }, z.core.$loose>>;
92
+ }, z.core.$strip>;
93
+ export declare const SpeechTtsSpeakCancelRequestSchema: z.ZodObject<{
94
+ type: z.ZodLiteral<"speech.tts.speak.cancel.request">;
95
+ requestId: z.ZodString;
96
+ }, z.core.$strip>;
97
+ export declare const SpeechEngineOptionSchema: z.ZodObject<{
98
+ id: z.ZodString;
99
+ available: z.ZodBoolean;
100
+ reason: z.ZodOptional<z.ZodString>;
101
+ }, z.core.$strip>;
102
+ export declare const LocalSpeechSttModelOptionSchema: z.ZodObject<{
103
+ id: z.ZodString;
104
+ label: z.ZodOptional<z.ZodString>;
105
+ description: z.ZodString;
106
+ }, z.core.$strip>;
107
+ export declare const LocalSpeechTtsModelOptionSchema: z.ZodObject<{
108
+ id: z.ZodString;
109
+ label: z.ZodOptional<z.ZodString>;
110
+ description: z.ZodString;
111
+ voices: z.ZodArray<z.ZodString>;
112
+ defaultVoice: z.ZodString;
113
+ }, z.core.$strip>;
114
+ export declare const SpeechSettingsGetOptionsResponseSchema: z.ZodObject<{
115
+ type: z.ZodLiteral<"speech.settings.get_options.response">;
116
+ payload: z.ZodObject<{
117
+ requestId: z.ZodString;
118
+ options: z.ZodObject<{
119
+ sttEngines: z.ZodArray<z.ZodObject<{
120
+ id: z.ZodString;
121
+ available: z.ZodBoolean;
122
+ reason: z.ZodOptional<z.ZodString>;
123
+ }, z.core.$strip>>;
124
+ ttsEngines: z.ZodArray<z.ZodObject<{
125
+ id: z.ZodString;
126
+ available: z.ZodBoolean;
127
+ reason: z.ZodOptional<z.ZodString>;
128
+ }, z.core.$strip>>;
129
+ local: z.ZodObject<{
130
+ sttModels: z.ZodArray<z.ZodObject<{
131
+ id: z.ZodString;
132
+ label: z.ZodOptional<z.ZodString>;
133
+ description: z.ZodString;
134
+ }, z.core.$strip>>;
135
+ ttsModels: z.ZodArray<z.ZodObject<{
136
+ id: z.ZodString;
137
+ label: z.ZodOptional<z.ZodString>;
138
+ description: z.ZodString;
139
+ voices: z.ZodArray<z.ZodString>;
140
+ defaultVoice: z.ZodString;
141
+ }, z.core.$strip>>;
142
+ }, z.core.$strip>;
143
+ openai: z.ZodObject<{
144
+ configured: z.ZodBoolean;
145
+ sttModels: z.ZodArray<z.ZodString>;
146
+ ttsModels: z.ZodArray<z.ZodString>;
147
+ ttsVoices: z.ZodArray<z.ZodString>;
148
+ }, z.core.$strip>;
149
+ }, z.core.$strip>;
150
+ }, z.core.$loose>;
151
+ }, z.core.$strip>;
152
+ export type SpeechSettingsOptions = z.infer<typeof SpeechSettingsGetOptionsResponseSchema>["payload"]["options"];
153
+ export declare const SpeechTtsPreviewResponseSchema: z.ZodObject<{
154
+ type: z.ZodLiteral<"speech.tts.preview.response">;
155
+ payload: z.ZodObject<{
156
+ requestId: z.ZodString;
157
+ audio: z.ZodOptional<z.ZodString>;
158
+ format: z.ZodOptional<z.ZodString>;
159
+ error: z.ZodOptional<z.ZodString>;
160
+ }, z.core.$loose>;
161
+ }, z.core.$strip>;
162
+ export type SpeechTtsPreviewResult = z.infer<typeof SpeechTtsPreviewResponseSchema>["payload"];
163
+ export declare const SpeechTtsSpeakResponseSchema: z.ZodObject<{
164
+ type: z.ZodLiteral<"speech.tts.speak.response">;
165
+ payload: z.ZodObject<{
166
+ requestId: z.ZodString;
167
+ ok: z.ZodOptional<z.ZodBoolean>;
168
+ canceled: z.ZodOptional<z.ZodBoolean>;
169
+ error: z.ZodOptional<z.ZodString>;
170
+ }, z.core.$loose>;
171
+ }, z.core.$strip>;
172
+ export type SpeechTtsSpeakResult = z.infer<typeof SpeechTtsSpeakResponseSchema>["payload"];
173
+ export declare const SpeechTtsSpeakCancelResponseSchema: z.ZodObject<{
174
+ type: z.ZodLiteral<"speech.tts.speak.cancel.response">;
175
+ payload: z.ZodObject<{
176
+ requestId: z.ZodString;
177
+ }, z.core.$loose>;
178
+ }, z.core.$strip>;
179
+ export type SpeechTtsSpeakCancelResult = z.infer<typeof SpeechTtsSpeakCancelResponseSchema>["payload"];
180
+ //# sourceMappingURL=speech.d.ts.map