@getpaseo/server 0.1.3 → 0.1.6

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 (148) hide show
  1. package/dist/server/client/daemon-client-relay-e2ee-transport.d.ts +8 -0
  2. package/dist/server/client/daemon-client-relay-e2ee-transport.d.ts.map +1 -0
  3. package/dist/server/client/daemon-client-relay-e2ee-transport.js +161 -0
  4. package/dist/server/client/daemon-client-relay-e2ee-transport.js.map +1 -0
  5. package/dist/server/client/daemon-client-terminal-stream-manager.d.ts +43 -0
  6. package/dist/server/client/daemon-client-terminal-stream-manager.d.ts.map +1 -0
  7. package/dist/server/client/daemon-client-terminal-stream-manager.js +134 -0
  8. package/dist/server/client/daemon-client-terminal-stream-manager.js.map +1 -0
  9. package/dist/server/client/daemon-client-transport-types.d.ts +34 -0
  10. package/dist/server/client/daemon-client-transport-types.d.ts.map +1 -0
  11. package/dist/server/client/daemon-client-transport-types.js +2 -0
  12. package/dist/server/client/daemon-client-transport-types.js.map +1 -0
  13. package/dist/server/client/daemon-client-transport-utils.d.ts +9 -0
  14. package/dist/server/client/daemon-client-transport-utils.d.ts.map +1 -0
  15. package/dist/server/client/daemon-client-transport-utils.js +121 -0
  16. package/dist/server/client/daemon-client-transport-utils.js.map +1 -0
  17. package/dist/server/client/daemon-client-transport.d.ts +5 -0
  18. package/dist/server/client/daemon-client-transport.d.ts.map +1 -0
  19. package/dist/server/client/daemon-client-transport.js +4 -0
  20. package/dist/server/client/daemon-client-transport.js.map +1 -0
  21. package/dist/server/client/daemon-client-websocket-transport.d.ts +7 -0
  22. package/dist/server/client/daemon-client-websocket-transport.d.ts.map +1 -0
  23. package/dist/server/client/daemon-client-websocket-transport.js +64 -0
  24. package/dist/server/client/daemon-client-websocket-transport.js.map +1 -0
  25. package/dist/server/client/daemon-client.d.ts +63 -46
  26. package/dist/server/client/daemon-client.d.ts.map +1 -1
  27. package/dist/server/client/daemon-client.js +497 -796
  28. package/dist/server/client/daemon-client.js.map +1 -1
  29. package/dist/server/server/agent/agent-management-mcp.d.ts +2 -0
  30. package/dist/server/server/agent/agent-management-mcp.d.ts.map +1 -1
  31. package/dist/server/server/agent/agent-management-mcp.js +29 -4
  32. package/dist/server/server/agent/agent-management-mcp.js.map +1 -1
  33. package/dist/server/server/agent/agent-manager.d.ts +48 -0
  34. package/dist/server/server/agent/agent-manager.d.ts.map +1 -1
  35. package/dist/server/server/agent/agent-manager.js +224 -14
  36. package/dist/server/server/agent/agent-manager.js.map +1 -1
  37. package/dist/server/server/agent/agent-sdk-types.d.ts +14 -0
  38. package/dist/server/server/agent/agent-sdk-types.d.ts.map +1 -1
  39. package/dist/server/server/agent/agent-storage.d.ts +4 -4
  40. package/dist/server/server/agent/mcp-server.d.ts +2 -0
  41. package/dist/server/server/agent/mcp-server.d.ts.map +1 -1
  42. package/dist/server/server/agent/mcp-server.js +30 -5
  43. package/dist/server/server/agent/mcp-server.js.map +1 -1
  44. package/dist/server/server/agent/providers/claude/tool-call-mapper.d.ts.map +1 -1
  45. package/dist/server/server/agent/providers/claude/tool-call-mapper.js +120 -6
  46. package/dist/server/server/agent/providers/claude/tool-call-mapper.js.map +1 -1
  47. package/dist/server/server/agent/providers/claude-agent.d.ts +7 -0
  48. package/dist/server/server/agent/providers/claude-agent.d.ts.map +1 -1
  49. package/dist/server/server/agent/providers/claude-agent.js +83 -9
  50. package/dist/server/server/agent/providers/claude-agent.js.map +1 -1
  51. package/dist/server/server/agent/providers/codex-app-server-agent.d.ts.map +1 -1
  52. package/dist/server/server/agent/providers/codex-app-server-agent.js +25 -0
  53. package/dist/server/server/agent/providers/codex-app-server-agent.js.map +1 -1
  54. package/dist/server/server/agent/providers/tool-call-detail-primitives.d.ts +42 -0
  55. package/dist/server/server/agent/providers/tool-call-detail-primitives.d.ts.map +1 -1
  56. package/dist/server/server/agent/stt-manager.d.ts +3 -2
  57. package/dist/server/server/agent/stt-manager.d.ts.map +1 -1
  58. package/dist/server/server/agent/stt-manager.js +5 -3
  59. package/dist/server/server/agent/stt-manager.js.map +1 -1
  60. package/dist/server/server/agent/timeline-append.d.ts +10 -0
  61. package/dist/server/server/agent/timeline-append.d.ts.map +1 -0
  62. package/dist/server/server/agent/timeline-append.js +27 -0
  63. package/dist/server/server/agent/timeline-append.js.map +1 -0
  64. package/dist/server/server/agent/timeline-projection.d.ts +19 -0
  65. package/dist/server/server/agent/timeline-projection.d.ts.map +1 -0
  66. package/dist/server/server/agent/timeline-projection.js +142 -0
  67. package/dist/server/server/agent/timeline-projection.js.map +1 -0
  68. package/dist/server/server/agent/tts-manager.d.ts +3 -2
  69. package/dist/server/server/agent/tts-manager.d.ts.map +1 -1
  70. package/dist/server/server/agent/tts-manager.js +5 -3
  71. package/dist/server/server/agent/tts-manager.js.map +1 -1
  72. package/dist/server/server/agent-attention-policy.d.ts +20 -0
  73. package/dist/server/server/agent-attention-policy.d.ts.map +1 -0
  74. package/dist/server/server/agent-attention-policy.js +40 -0
  75. package/dist/server/server/agent-attention-policy.js.map +1 -0
  76. package/dist/server/server/bootstrap.d.ts.map +1 -1
  77. package/dist/server/server/bootstrap.js +16 -18
  78. package/dist/server/server/bootstrap.js.map +1 -1
  79. package/dist/server/server/dictation/dictation-stream-manager.d.ts +10 -2
  80. package/dist/server/server/dictation/dictation-stream-manager.d.ts.map +1 -1
  81. package/dist/server/server/dictation/dictation-stream-manager.js +81 -14
  82. package/dist/server/server/dictation/dictation-stream-manager.js.map +1 -1
  83. package/dist/server/server/exports.d.ts +1 -1
  84. package/dist/server/server/exports.d.ts.map +1 -1
  85. package/dist/server/server/persisted-config.d.ts +12 -12
  86. package/dist/server/server/relay-transport.d.ts +3 -2
  87. package/dist/server/server/relay-transport.d.ts.map +1 -1
  88. package/dist/server/server/relay-transport.js +21 -5
  89. package/dist/server/server/relay-transport.js.map +1 -1
  90. package/dist/server/server/session.d.ts +51 -14
  91. package/dist/server/server/session.d.ts.map +1 -1
  92. package/dist/server/server/session.js +872 -250
  93. package/dist/server/server/session.js.map +1 -1
  94. package/dist/server/server/speech/provider-resolver.d.ts +3 -0
  95. package/dist/server/server/speech/provider-resolver.d.ts.map +1 -0
  96. package/dist/server/server/speech/provider-resolver.js +7 -0
  97. package/dist/server/server/speech/provider-resolver.js.map +1 -0
  98. package/dist/server/server/speech/providers/local/runtime.d.ts +1 -0
  99. package/dist/server/server/speech/providers/local/runtime.d.ts.map +1 -1
  100. package/dist/server/server/speech/providers/local/runtime.js +4 -3
  101. package/dist/server/server/speech/providers/local/runtime.js.map +1 -1
  102. package/dist/server/server/speech/providers/local/sherpa/model-downloader.d.ts.map +1 -1
  103. package/dist/server/server/speech/providers/local/sherpa/model-downloader.js +3 -66
  104. package/dist/server/server/speech/providers/local/sherpa/model-downloader.js.map +1 -1
  105. package/dist/server/server/speech/speech-runtime.d.ts +26 -3
  106. package/dist/server/server/speech/speech-runtime.d.ts.map +1 -1
  107. package/dist/server/server/speech/speech-runtime.js +466 -112
  108. package/dist/server/server/speech/speech-runtime.js.map +1 -1
  109. package/dist/server/server/websocket-server.d.ts +23 -7
  110. package/dist/server/server/websocket-server.d.ts.map +1 -1
  111. package/dist/server/server/websocket-server.js +288 -64
  112. package/dist/server/server/websocket-server.js.map +1 -1
  113. package/dist/server/server/worktree-bootstrap.d.ts +29 -0
  114. package/dist/server/server/worktree-bootstrap.d.ts.map +1 -0
  115. package/dist/server/server/worktree-bootstrap.js +407 -0
  116. package/dist/server/server/worktree-bootstrap.js.map +1 -0
  117. package/dist/server/shared/binary-mux.d.ts +31 -0
  118. package/dist/server/shared/binary-mux.d.ts.map +1 -0
  119. package/dist/server/shared/binary-mux.js +114 -0
  120. package/dist/server/shared/binary-mux.js.map +1 -0
  121. package/dist/server/shared/messages.d.ts +6437 -5839
  122. package/dist/server/shared/messages.d.ts.map +1 -1
  123. package/dist/server/shared/messages.js +238 -50
  124. package/dist/server/shared/messages.js.map +1 -1
  125. package/dist/server/shared/terminal-key-input.d.ts +9 -0
  126. package/dist/server/shared/terminal-key-input.d.ts.map +1 -0
  127. package/dist/server/shared/terminal-key-input.js +132 -0
  128. package/dist/server/shared/terminal-key-input.js.map +1 -0
  129. package/dist/server/shared/tool-call-display.d.ts.map +1 -1
  130. package/dist/server/shared/tool-call-display.js +4 -0
  131. package/dist/server/shared/tool-call-display.js.map +1 -1
  132. package/dist/server/terminal/terminal-manager.d.ts +11 -0
  133. package/dist/server/terminal/terminal-manager.d.ts.map +1 -1
  134. package/dist/server/terminal/terminal-manager.js +75 -24
  135. package/dist/server/terminal/terminal-manager.js.map +1 -1
  136. package/dist/server/terminal/terminal.d.ts +18 -0
  137. package/dist/server/terminal/terminal.d.ts.map +1 -1
  138. package/dist/server/terminal/terminal.js +142 -5
  139. package/dist/server/terminal/terminal.js.map +1 -1
  140. package/dist/server/utils/checkout-git.d.ts +4 -0
  141. package/dist/server/utils/checkout-git.d.ts.map +1 -1
  142. package/dist/server/utils/checkout-git.js +92 -0
  143. package/dist/server/utils/checkout-git.js.map +1 -1
  144. package/dist/server/utils/worktree.d.ts +32 -0
  145. package/dist/server/utils/worktree.d.ts.map +1 -1
  146. package/dist/server/utils/worktree.js +160 -10
  147. package/dist/server/utils/worktree.js.map +1 -1
  148. package/package.json +2 -2
@@ -156,6 +156,21 @@ const ToolCallDetailPayloadSchema = z.discriminatedUnion("type", [
156
156
  type: z.literal("search"),
157
157
  query: z.string(),
158
158
  }),
159
+ z.object({
160
+ type: z.literal("worktree_setup"),
161
+ worktreePath: z.string(),
162
+ branchName: z.string(),
163
+ log: z.string(),
164
+ commands: z.array(z.object({
165
+ index: z.number().int().positive(),
166
+ command: z.string(),
167
+ cwd: z.string(),
168
+ status: z.enum(["running", "completed", "failed"]),
169
+ exitCode: z.number().nullable(),
170
+ durationMs: z.number().nonnegative().optional(),
171
+ })),
172
+ truncated: z.boolean().optional(),
173
+ }),
159
174
  z.object({
160
175
  type: z.literal("unknown"),
161
176
  input: UnknownValueSchema,
@@ -390,15 +405,22 @@ export const FetchAgentsRequestMessageSchema = z.object({
390
405
  filter: z
391
406
  .object({
392
407
  labels: z.record(z.string()).optional(),
408
+ projectKeys: z.array(z.string()).optional(),
409
+ statuses: z.array(AgentStatusSchema).optional(),
410
+ includeArchived: z.boolean().optional(),
411
+ requiresAttention: z.boolean().optional(),
393
412
  })
394
413
  .optional(),
395
- });
396
- export const FetchAgentsGroupedByProjectRequestMessageSchema = z.object({
397
- type: z.literal("fetch_agents_grouped_by_project_request"),
398
- requestId: z.string(),
399
- filter: z
414
+ sort: z
415
+ .array(z.object({
416
+ key: z.enum(["status_priority", "created_at", "updated_at", "title"]),
417
+ direction: z.enum(["asc", "desc"]),
418
+ }))
419
+ .optional(),
420
+ page: z
400
421
  .object({
401
- labels: z.record(z.string()).optional(),
422
+ limit: z.number().int().positive().max(1000),
423
+ cursor: z.string().min(1).optional(),
402
424
  })
403
425
  .optional(),
404
426
  });
@@ -513,21 +535,20 @@ export const RestartServerRequestMessageSchema = z.object({
513
535
  reason: z.string().optional(),
514
536
  requestId: z.string(),
515
537
  });
516
- export const InitializeAgentRequestMessageSchema = z.object({
517
- type: z.literal("initialize_agent_request"),
538
+ export const AgentTimelineCursorSchema = z.object({
539
+ epoch: z.string(),
540
+ seq: z.number().int().nonnegative(),
541
+ });
542
+ export const FetchAgentTimelineRequestMessageSchema = z.object({
543
+ type: z.literal("fetch_agent_timeline_request"),
518
544
  agentId: z.string(),
519
545
  requestId: z.string(),
520
- });
521
- export const InitializeAgentResponseMessageSchema = z.object({
522
- // Response shares the same type literal as the request for simple requestId matching
523
- type: z.literal("initialize_agent_request"),
524
- payload: z.object({
525
- agentId: z.string(),
526
- agentStatus: z.string().optional(),
527
- timelineSize: z.number().optional(),
528
- requestId: z.string(),
529
- error: z.string().optional(),
530
- }),
546
+ direction: z.enum(["tail", "before", "after"]).optional(),
547
+ cursor: AgentTimelineCursorSchema.optional(),
548
+ // 0 means "all matching rows for this query window".
549
+ limit: z.number().int().nonnegative().optional(),
550
+ // Default should be projected for app timeline loading.
551
+ projection: z.enum(["projected", "canonical"]).optional(),
531
552
  });
532
553
  export const SetAgentModeRequestMessageSchema = z.object({
533
554
  type: z.literal("set_agent_mode_request"),
@@ -591,6 +612,9 @@ export const SetVoiceModeResponseMessageSchema = z.object({
591
612
  agentId: z.string().nullable(),
592
613
  accepted: z.boolean(),
593
614
  error: z.string().nullable(),
615
+ reasonCode: z.string().optional(),
616
+ retryable: z.boolean().optional(),
617
+ missingModelIds: z.array(z.string()).optional(),
594
618
  }),
595
619
  });
596
620
  export const AgentPermissionResponseMessageSchema = z.object({
@@ -675,6 +699,13 @@ export const ValidateBranchRequestSchema = z.object({
675
699
  branchName: z.string(),
676
700
  requestId: z.string(),
677
701
  });
702
+ export const BranchSuggestionsRequestSchema = z.object({
703
+ type: z.literal("branch_suggestions_request"),
704
+ cwd: z.string(),
705
+ query: z.string().optional(),
706
+ limit: z.number().int().min(1).max(200).optional(),
707
+ requestId: z.string(),
708
+ });
678
709
  export const PaseoWorktreeListRequestSchema = z.object({
679
710
  type: z.literal("paseo_worktree_list_request"),
680
711
  cwd: z.string().optional(),
@@ -794,6 +825,14 @@ export const ListTerminalsRequestSchema = z.object({
794
825
  cwd: z.string(),
795
826
  requestId: z.string(),
796
827
  });
828
+ export const SubscribeTerminalsRequestSchema = z.object({
829
+ type: z.literal("subscribe_terminals_request"),
830
+ cwd: z.string(),
831
+ });
832
+ export const UnsubscribeTerminalsRequestSchema = z.object({
833
+ type: z.literal("unsubscribe_terminals_request"),
834
+ cwd: z.string(),
835
+ });
797
836
  export const CreateTerminalRequestSchema = z.object({
798
837
  type: z.literal("create_terminal_request"),
799
838
  cwd: z.string(),
@@ -830,12 +869,24 @@ export const KillTerminalRequestSchema = z.object({
830
869
  terminalId: z.string(),
831
870
  requestId: z.string(),
832
871
  });
872
+ export const AttachTerminalStreamRequestSchema = z.object({
873
+ type: z.literal("attach_terminal_stream_request"),
874
+ terminalId: z.string(),
875
+ resumeOffset: z.number().int().nonnegative().optional(),
876
+ rows: z.number().int().positive().optional(),
877
+ cols: z.number().int().positive().optional(),
878
+ requestId: z.string(),
879
+ });
880
+ export const DetachTerminalStreamRequestSchema = z.object({
881
+ type: z.literal("detach_terminal_stream_request"),
882
+ streamId: z.number().int().nonnegative(),
883
+ requestId: z.string(),
884
+ });
833
885
  export const SessionInboundMessageSchema = z.discriminatedUnion("type", [
834
886
  VoiceAudioChunkMessageSchema,
835
887
  AbortRequestMessageSchema,
836
888
  AudioPlayedMessageSchema,
837
889
  FetchAgentsRequestMessageSchema,
838
- FetchAgentsGroupedByProjectRequestMessageSchema,
839
890
  FetchAgentRequestMessageSchema,
840
891
  SubscribeAgentUpdatesMessageSchema,
841
892
  UnsubscribeAgentUpdatesMessageSchema,
@@ -858,7 +909,7 @@ export const SessionInboundMessageSchema = z.discriminatedUnion("type", [
858
909
  RefreshAgentRequestMessageSchema,
859
910
  CancelAgentRequestMessageSchema,
860
911
  RestartServerRequestMessageSchema,
861
- InitializeAgentRequestMessageSchema,
912
+ FetchAgentTimelineRequestMessageSchema,
862
913
  SetAgentModeRequestMessageSchema,
863
914
  SetAgentModelRequestMessageSchema,
864
915
  SetAgentThinkingRequestMessageSchema,
@@ -873,6 +924,7 @@ export const SessionInboundMessageSchema = z.discriminatedUnion("type", [
873
924
  CheckoutPrCreateRequestSchema,
874
925
  CheckoutPrStatusRequestSchema,
875
926
  ValidateBranchRequestSchema,
927
+ BranchSuggestionsRequestSchema,
876
928
  PaseoWorktreeListRequestSchema,
877
929
  PaseoWorktreeArchiveRequestSchema,
878
930
  FileExplorerRequestSchema,
@@ -885,11 +937,15 @@ export const SessionInboundMessageSchema = z.discriminatedUnion("type", [
885
937
  ExecuteCommandRequestSchema,
886
938
  RegisterPushTokenMessageSchema,
887
939
  ListTerminalsRequestSchema,
940
+ SubscribeTerminalsRequestSchema,
941
+ UnsubscribeTerminalsRequestSchema,
888
942
  CreateTerminalRequestSchema,
889
943
  SubscribeTerminalRequestSchema,
890
944
  UnsubscribeTerminalRequestSchema,
891
945
  TerminalInputSchema,
892
946
  KillTerminalRequestSchema,
947
+ AttachTerminalStreamRequestSchema,
948
+ DetachTerminalStreamRequestSchema,
893
949
  ]);
894
950
  // ============================================================================
895
951
  // Session Outbound Messages (Session emits these)
@@ -951,6 +1007,13 @@ export const DictationStreamAckMessageSchema = z.object({
951
1007
  ackSeq: z.number().int(),
952
1008
  }),
953
1009
  });
1010
+ export const DictationStreamFinishAcceptedMessageSchema = z.object({
1011
+ type: z.literal("dictation_stream_finish_accepted"),
1012
+ payload: z.object({
1013
+ dictationId: z.string(),
1014
+ timeoutMs: z.number().int().positive(),
1015
+ }),
1016
+ });
954
1017
  export const DictationStreamPartialMessageSchema = z.object({
955
1018
  type: z.literal("dictation_stream_partial"),
956
1019
  payload: z.object({
@@ -972,9 +1035,58 @@ export const DictationStreamErrorMessageSchema = z.object({
972
1035
  dictationId: z.string(),
973
1036
  error: z.string(),
974
1037
  retryable: z.boolean(),
1038
+ reasonCode: z.string().optional(),
1039
+ missingModelIds: z.array(z.string()).optional(),
975
1040
  debugRecordingPath: z.string().optional(),
976
1041
  }),
977
1042
  });
1043
+ export const ServerCapabilityStateSchema = z.object({
1044
+ enabled: z.boolean(),
1045
+ reason: z.string(),
1046
+ });
1047
+ export const ServerVoiceCapabilitiesSchema = z.object({
1048
+ dictation: ServerCapabilityStateSchema,
1049
+ voice: ServerCapabilityStateSchema,
1050
+ });
1051
+ export const ServerCapabilitiesSchema = z
1052
+ .object({
1053
+ voice: ServerVoiceCapabilitiesSchema.optional(),
1054
+ })
1055
+ .passthrough();
1056
+ const ServerInfoHostnameSchema = z
1057
+ .unknown()
1058
+ .transform((value) => {
1059
+ if (typeof value !== "string") {
1060
+ return null;
1061
+ }
1062
+ const trimmed = value.trim();
1063
+ return trimmed.length > 0 ? trimmed : null;
1064
+ });
1065
+ const ServerCapabilitiesFromUnknownSchema = z
1066
+ .unknown()
1067
+ .optional()
1068
+ .transform((value) => {
1069
+ if (value === undefined) {
1070
+ return undefined;
1071
+ }
1072
+ const parsed = ServerCapabilitiesSchema.safeParse(value);
1073
+ if (!parsed.success) {
1074
+ return undefined;
1075
+ }
1076
+ return parsed.data;
1077
+ });
1078
+ export const ServerInfoStatusPayloadSchema = z
1079
+ .object({
1080
+ status: z.literal("server_info"),
1081
+ serverId: z.string().trim().min(1),
1082
+ hostname: ServerInfoHostnameSchema.optional(),
1083
+ capabilities: ServerCapabilitiesFromUnknownSchema,
1084
+ })
1085
+ .passthrough()
1086
+ .transform((payload) => ({
1087
+ ...payload,
1088
+ hostname: payload.hostname ?? null,
1089
+ }));
978
1090
  export const StatusMessageSchema = z.object({
979
1091
  type: z.literal("status"),
980
1092
  payload: z
@@ -1107,16 +1219,9 @@ export const AgentStreamMessageSchema = z.object({
1107
1219
  agentId: z.string(),
1108
1220
  event: AgentStreamEventPayloadSchema,
1109
1221
  timestamp: z.string(),
1110
- }),
1111
- });
1112
- export const AgentStreamSnapshotMessageSchema = z.object({
1113
- type: z.literal("agent_stream_snapshot"),
1114
- payload: z.object({
1115
- agentId: z.string(),
1116
- events: z.array(z.object({
1117
- event: AgentStreamEventPayloadSchema,
1118
- timestamp: z.string(),
1119
- })),
1222
+ // Present for timeline events. Maps 1:1 to canonical in-memory timeline rows.
1223
+ seq: z.number().int().nonnegative().optional(),
1224
+ epoch: z.string().optional(),
1120
1225
  }),
1121
1226
  });
1122
1227
  export const AgentStatusMessageSchema = z.object({
@@ -1137,30 +1242,59 @@ export const FetchAgentsResponseMessageSchema = z.object({
1137
1242
  type: z.literal("fetch_agents_response"),
1138
1243
  payload: z.object({
1139
1244
  requestId: z.string(),
1140
- agents: z.array(AgentSnapshotPayloadSchema),
1245
+ entries: z.array(z.object({
1246
+ agent: AgentSnapshotPayloadSchema,
1247
+ project: ProjectPlacementPayloadSchema,
1248
+ })),
1249
+ pageInfo: z.object({
1250
+ nextCursor: z.string().nullable(),
1251
+ prevCursor: z.string().nullable(),
1252
+ hasMore: z.boolean(),
1253
+ }),
1141
1254
  }),
1142
1255
  });
1143
- const ProjectGroupedAgentEntryPayloadSchema = z.object({
1144
- agent: AgentSnapshotPayloadSchema,
1145
- checkout: ProjectCheckoutLitePayloadSchema,
1146
- });
1147
- const ProjectGroupPayloadSchema = z.object({
1148
- projectKey: z.string(),
1149
- projectName: z.string(),
1150
- agents: z.array(ProjectGroupedAgentEntryPayloadSchema),
1151
- });
1152
- export const FetchAgentsGroupedByProjectResponseMessageSchema = z.object({
1153
- type: z.literal("fetch_agents_grouped_by_project_response"),
1256
+ export const FetchAgentResponseMessageSchema = z.object({
1257
+ type: z.literal("fetch_agent_response"),
1154
1258
  payload: z.object({
1155
1259
  requestId: z.string(),
1156
- groups: z.array(ProjectGroupPayloadSchema),
1260
+ agent: AgentSnapshotPayloadSchema.nullable(),
1261
+ error: z.string().nullable(),
1157
1262
  }),
1158
1263
  });
1159
- export const FetchAgentResponseMessageSchema = z.object({
1160
- type: z.literal("fetch_agent_response"),
1264
+ const AgentTimelineSeqRangeSchema = z.object({
1265
+ startSeq: z.number().int().nonnegative(),
1266
+ endSeq: z.number().int().nonnegative(),
1267
+ });
1268
+ export const AgentTimelineEntryPayloadSchema = z.object({
1269
+ provider: AgentProviderSchema,
1270
+ item: AgentTimelineItemPayloadSchema,
1271
+ timestamp: z.string(),
1272
+ seqStart: z.number().int().nonnegative(),
1273
+ seqEnd: z.number().int().nonnegative(),
1274
+ sourceSeqRanges: z.array(AgentTimelineSeqRangeSchema),
1275
+ collapsed: z.array(z.enum(["assistant_merge", "tool_lifecycle"])),
1276
+ });
1277
+ export const FetchAgentTimelineResponseMessageSchema = z.object({
1278
+ type: z.literal("fetch_agent_timeline_response"),
1161
1279
  payload: z.object({
1162
1280
  requestId: z.string(),
1163
- agent: AgentSnapshotPayloadSchema.nullable(),
1281
+ agentId: z.string(),
1282
+ direction: z.enum(["tail", "before", "after"]),
1283
+ projection: z.enum(["projected", "canonical"]),
1284
+ epoch: z.string(),
1285
+ reset: z.boolean(),
1286
+ staleCursor: z.boolean(),
1287
+ gap: z.boolean(),
1288
+ window: z.object({
1289
+ minSeq: z.number().int().nonnegative(),
1290
+ maxSeq: z.number().int().nonnegative(),
1291
+ nextSeq: z.number().int().nonnegative(),
1292
+ }),
1293
+ startCursor: AgentTimelineCursorSchema.nullable(),
1294
+ endCursor: AgentTimelineCursorSchema.nullable(),
1295
+ hasOlder: z.boolean(),
1296
+ hasNewer: z.boolean(),
1297
+ entries: z.array(AgentTimelineEntryPayloadSchema),
1164
1298
  error: z.string().nullable(),
1165
1299
  }),
1166
1300
  });
@@ -1356,6 +1490,14 @@ export const ValidateBranchResponseSchema = z.object({
1356
1490
  requestId: z.string(),
1357
1491
  }),
1358
1492
  });
1493
+ export const BranchSuggestionsResponseSchema = z.object({
1494
+ type: z.literal("branch_suggestions_response"),
1495
+ payload: z.object({
1496
+ branches: z.array(z.string()),
1497
+ error: z.string().nullable(),
1498
+ requestId: z.string(),
1499
+ }),
1500
+ });
1359
1501
  const PaseoWorktreeSchema = z.object({
1360
1502
  worktreePath: z.string(),
1361
1503
  branchName: z.string().nullable().optional(),
@@ -1525,6 +1667,13 @@ export const ListTerminalsResponseSchema = z.object({
1525
1667
  requestId: z.string(),
1526
1668
  }),
1527
1669
  });
1670
+ export const TerminalsChangedSchema = z.object({
1671
+ type: z.literal("terminals_changed"),
1672
+ payload: z.object({
1673
+ cwd: z.string(),
1674
+ terminals: z.array(TerminalInfoSchema.omit({ cwd: true })),
1675
+ }),
1676
+ });
1528
1677
  export const CreateTerminalResponseSchema = z.object({
1529
1678
  type: z.literal("create_terminal_response"),
1530
1679
  payload: z.object({
@@ -1557,27 +1706,54 @@ export const KillTerminalResponseSchema = z.object({
1557
1706
  requestId: z.string(),
1558
1707
  }),
1559
1708
  });
1709
+ export const AttachTerminalStreamResponseSchema = z.object({
1710
+ type: z.literal("attach_terminal_stream_response"),
1711
+ payload: z.object({
1712
+ terminalId: z.string(),
1713
+ streamId: z.number().int().nonnegative().nullable(),
1714
+ replayedFrom: z.number().int().nonnegative(),
1715
+ currentOffset: z.number().int().nonnegative(),
1716
+ earliestAvailableOffset: z.number().int().nonnegative(),
1717
+ reset: z.boolean(),
1718
+ error: z.string().nullable(),
1719
+ requestId: z.string(),
1720
+ }),
1721
+ });
1722
+ export const DetachTerminalStreamResponseSchema = z.object({
1723
+ type: z.literal("detach_terminal_stream_response"),
1724
+ payload: z.object({
1725
+ streamId: z.number().int().nonnegative(),
1726
+ success: z.boolean(),
1727
+ requestId: z.string(),
1728
+ }),
1729
+ });
1730
+ export const TerminalStreamExitSchema = z.object({
1731
+ type: z.literal("terminal_stream_exit"),
1732
+ payload: z.object({
1733
+ streamId: z.number().int().nonnegative(),
1734
+ terminalId: z.string(),
1735
+ }),
1736
+ });
1560
1737
  export const SessionOutboundMessageSchema = z.discriminatedUnion("type", [
1561
1738
  ActivityLogMessageSchema,
1562
1739
  AssistantChunkMessageSchema,
1563
1740
  AudioOutputMessageSchema,
1564
1741
  TranscriptionResultMessageSchema,
1565
1742
  DictationStreamAckMessageSchema,
1743
+ DictationStreamFinishAcceptedMessageSchema,
1566
1744
  DictationStreamPartialMessageSchema,
1567
1745
  DictationStreamFinalMessageSchema,
1568
1746
  DictationStreamErrorMessageSchema,
1569
1747
  StatusMessageSchema,
1570
1748
  PongMessageSchema,
1571
1749
  RpcErrorMessageSchema,
1572
- InitializeAgentResponseMessageSchema,
1573
1750
  ArtifactMessageSchema,
1574
1751
  AgentUpdateMessageSchema,
1575
1752
  AgentStreamMessageSchema,
1576
- AgentStreamSnapshotMessageSchema,
1577
1753
  AgentStatusMessageSchema,
1578
1754
  FetchAgentsResponseMessageSchema,
1579
- FetchAgentsGroupedByProjectResponseMessageSchema,
1580
1755
  FetchAgentResponseMessageSchema,
1756
+ FetchAgentTimelineResponseMessageSchema,
1581
1757
  SendAgentMessageResponseMessageSchema,
1582
1758
  SetVoiceModeResponseMessageSchema,
1583
1759
  SetAgentModeResponseMessageSchema,
@@ -1599,6 +1775,7 @@ export const SessionOutboundMessageSchema = z.discriminatedUnion("type", [
1599
1775
  CheckoutPrCreateResponseSchema,
1600
1776
  CheckoutPrStatusResponseSchema,
1601
1777
  ValidateBranchResponseSchema,
1778
+ BranchSuggestionsResponseSchema,
1602
1779
  PaseoWorktreeListResponseSchema,
1603
1780
  PaseoWorktreeArchiveResponseSchema,
1604
1781
  FileExplorerResponseSchema,
@@ -1611,10 +1788,14 @@ export const SessionOutboundMessageSchema = z.discriminatedUnion("type", [
1611
1788
  ListCommandsResponseSchema,
1612
1789
  ExecuteCommandResponseSchema,
1613
1790
  ListTerminalsResponseSchema,
1791
+ TerminalsChangedSchema,
1614
1792
  CreateTerminalResponseSchema,
1615
1793
  SubscribeTerminalResponseSchema,
1616
1794
  TerminalOutputSchema,
1617
1795
  KillTerminalResponseSchema,
1796
+ AttachTerminalStreamResponseSchema,
1797
+ DetachTerminalStreamResponseSchema,
1798
+ TerminalStreamExitSchema,
1618
1799
  ]);
1619
1800
  // ============================================================================
1620
1801
  // WebSocket Level Messages (wraps session messages)
@@ -1672,4 +1853,11 @@ export function wrapSessionMessage(sessionMsg) {
1672
1853
  message: sessionMsg,
1673
1854
  };
1674
1855
  }
1856
+ export function parseServerInfoStatusPayload(payload) {
1857
+ const parsed = ServerInfoStatusPayloadSchema.safeParse(payload);
1858
+ if (!parsed.success) {
1859
+ return null;
1860
+ }
1861
+ return parsed.data;
1862
+ }
1675
1863
  //# sourceMappingURL=messages.js.map