@getpaseo/server 0.1.2 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/server/client/daemon-client-relay-e2ee-transport.d.ts +8 -0
- package/dist/server/client/daemon-client-relay-e2ee-transport.d.ts.map +1 -0
- package/dist/server/client/daemon-client-relay-e2ee-transport.js +161 -0
- package/dist/server/client/daemon-client-relay-e2ee-transport.js.map +1 -0
- package/dist/server/client/daemon-client-terminal-stream-manager.d.ts +43 -0
- package/dist/server/client/daemon-client-terminal-stream-manager.d.ts.map +1 -0
- package/dist/server/client/daemon-client-terminal-stream-manager.js +130 -0
- package/dist/server/client/daemon-client-terminal-stream-manager.js.map +1 -0
- package/dist/server/client/daemon-client-transport-types.d.ts +34 -0
- package/dist/server/client/daemon-client-transport-types.d.ts.map +1 -0
- package/dist/server/client/daemon-client-transport-types.js +2 -0
- package/dist/server/client/daemon-client-transport-types.js.map +1 -0
- package/dist/server/client/daemon-client-transport-utils.d.ts +9 -0
- package/dist/server/client/daemon-client-transport-utils.d.ts.map +1 -0
- package/dist/server/client/daemon-client-transport-utils.js +121 -0
- package/dist/server/client/daemon-client-transport-utils.js.map +1 -0
- package/dist/server/client/daemon-client-transport.d.ts +5 -0
- package/dist/server/client/daemon-client-transport.d.ts.map +1 -0
- package/dist/server/client/daemon-client-transport.js +4 -0
- package/dist/server/client/daemon-client-transport.js.map +1 -0
- package/dist/server/client/daemon-client-websocket-transport.d.ts +7 -0
- package/dist/server/client/daemon-client-websocket-transport.d.ts.map +1 -0
- package/dist/server/client/daemon-client-websocket-transport.js +64 -0
- package/dist/server/client/daemon-client-websocket-transport.js.map +1 -0
- package/dist/server/client/daemon-client.d.ts +54 -36
- package/dist/server/client/daemon-client.d.ts.map +1 -1
- package/dist/server/client/daemon-client.js +497 -800
- package/dist/server/client/daemon-client.js.map +1 -1
- package/dist/server/server/agent/agent-manager.d.ts +52 -0
- package/dist/server/server/agent/agent-manager.d.ts.map +1 -1
- package/dist/server/server/agent/agent-manager.js +238 -10
- package/dist/server/server/agent/agent-manager.js.map +1 -1
- package/dist/server/server/agent/agent-storage.d.ts +4 -4
- package/dist/server/server/agent/providers/claude/tool-call-detail-parser.d.ts.map +1 -1
- package/dist/server/server/agent/providers/claude/tool-call-detail-parser.js +62 -12
- package/dist/server/server/agent/providers/claude/tool-call-detail-parser.js.map +1 -1
- package/dist/server/server/agent/providers/claude/tool-call-mapper.d.ts +4 -4
- package/dist/server/server/agent/providers/claude/tool-call-mapper.d.ts.map +1 -1
- package/dist/server/server/agent/providers/claude/tool-call-mapper.js +213 -50
- package/dist/server/server/agent/providers/claude/tool-call-mapper.js.map +1 -1
- package/dist/server/server/agent/providers/claude-agent.d.ts +7 -0
- package/dist/server/server/agent/providers/claude-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/claude-agent.js +100 -19
- package/dist/server/server/agent/providers/claude-agent.js.map +1 -1
- package/dist/server/server/agent/providers/codex/tool-call-detail-parser.d.ts +0 -1
- package/dist/server/server/agent/providers/codex/tool-call-detail-parser.d.ts.map +1 -1
- package/dist/server/server/agent/providers/codex/tool-call-detail-parser.js +67 -30
- package/dist/server/server/agent/providers/codex/tool-call-detail-parser.js.map +1 -1
- package/dist/server/server/agent/providers/codex/tool-call-mapper.d.ts +1 -1
- package/dist/server/server/agent/providers/codex/tool-call-mapper.d.ts.map +1 -1
- package/dist/server/server/agent/providers/codex/tool-call-mapper.js +293 -266
- package/dist/server/server/agent/providers/codex/tool-call-mapper.js.map +1 -1
- package/dist/server/server/agent/providers/codex-app-server-agent.d.ts +1 -1
- package/dist/server/server/agent/providers/codex-app-server-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/codex-app-server-agent.js +49 -14
- package/dist/server/server/agent/providers/codex-app-server-agent.js.map +1 -1
- package/dist/server/server/agent/providers/codex-rollout-timeline.d.ts.map +1 -1
- package/dist/server/server/agent/providers/codex-rollout-timeline.js +5 -4
- package/dist/server/server/agent/providers/codex-rollout-timeline.js.map +1 -1
- package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.d.ts.map +1 -1
- package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.js +8 -2
- package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.js.map +1 -1
- package/dist/server/server/agent/providers/opencode/tool-call-mapper.d.ts +1 -1
- package/dist/server/server/agent/providers/opencode/tool-call-mapper.d.ts.map +1 -1
- package/dist/server/server/agent/providers/opencode/tool-call-mapper.js +121 -45
- package/dist/server/server/agent/providers/opencode/tool-call-mapper.js.map +1 -1
- package/dist/server/server/agent/providers/opencode-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/opencode-agent.js +87 -35
- package/dist/server/server/agent/providers/opencode-agent.js.map +1 -1
- package/dist/server/server/agent/providers/tool-call-detail-primitives.d.ts +2 -2
- package/dist/server/server/agent/providers/tool-call-detail-primitives.d.ts.map +1 -1
- package/dist/server/server/agent/providers/tool-call-detail-primitives.js +23 -6
- package/dist/server/server/agent/providers/tool-call-detail-primitives.js.map +1 -1
- package/dist/server/server/agent/providers/tool-call-mapper-utils.d.ts +0 -1
- package/dist/server/server/agent/providers/tool-call-mapper-utils.d.ts.map +1 -1
- package/dist/server/server/agent/providers/tool-call-mapper-utils.js +0 -10
- package/dist/server/server/agent/providers/tool-call-mapper-utils.js.map +1 -1
- package/dist/server/server/agent/stt-manager.d.ts +3 -2
- package/dist/server/server/agent/stt-manager.d.ts.map +1 -1
- package/dist/server/server/agent/stt-manager.js +5 -3
- package/dist/server/server/agent/stt-manager.js.map +1 -1
- package/dist/server/server/agent/timeline-projection.d.ts +19 -0
- package/dist/server/server/agent/timeline-projection.d.ts.map +1 -0
- package/dist/server/server/agent/timeline-projection.js +142 -0
- package/dist/server/server/agent/timeline-projection.js.map +1 -0
- package/dist/server/server/agent/tts-manager.d.ts +3 -2
- package/dist/server/server/agent/tts-manager.d.ts.map +1 -1
- package/dist/server/server/agent/tts-manager.js +5 -17
- package/dist/server/server/agent/tts-manager.js.map +1 -1
- package/dist/server/server/agent-attention-policy.d.ts +20 -0
- package/dist/server/server/agent-attention-policy.d.ts.map +1 -0
- package/dist/server/server/agent-attention-policy.js +40 -0
- package/dist/server/server/agent-attention-policy.js.map +1 -0
- package/dist/server/server/bootstrap.d.ts.map +1 -1
- package/dist/server/server/bootstrap.js +13 -20
- package/dist/server/server/bootstrap.js.map +1 -1
- package/dist/server/server/dictation/dictation-stream-manager.d.ts +10 -2
- package/dist/server/server/dictation/dictation-stream-manager.d.ts.map +1 -1
- package/dist/server/server/dictation/dictation-stream-manager.js +83 -27
- package/dist/server/server/dictation/dictation-stream-manager.js.map +1 -1
- package/dist/server/server/exports.d.ts +2 -1
- package/dist/server/server/exports.d.ts.map +1 -1
- package/dist/server/server/exports.js +1 -0
- package/dist/server/server/exports.js.map +1 -1
- package/dist/server/server/persisted-config.d.ts +36 -22
- package/dist/server/server/persisted-config.d.ts.map +1 -1
- package/dist/server/server/persisted-config.js +2 -0
- package/dist/server/server/persisted-config.js.map +1 -1
- package/dist/server/server/relay-transport.d.ts +3 -2
- package/dist/server/server/relay-transport.d.ts.map +1 -1
- package/dist/server/server/relay-transport.js +99 -16
- package/dist/server/server/relay-transport.js.map +1 -1
- package/dist/server/server/session.d.ts +34 -16
- package/dist/server/server/session.d.ts.map +1 -1
- package/dist/server/server/session.js +619 -328
- package/dist/server/server/session.js.map +1 -1
- package/dist/server/server/speech/provider-resolver.d.ts +3 -0
- package/dist/server/server/speech/provider-resolver.d.ts.map +1 -0
- package/dist/server/server/speech/provider-resolver.js +7 -0
- package/dist/server/server/speech/provider-resolver.js.map +1 -0
- package/dist/server/server/speech/providers/local/config.d.ts.map +1 -1
- package/dist/server/server/speech/providers/local/config.js +11 -8
- package/dist/server/server/speech/providers/local/config.js.map +1 -1
- package/dist/server/server/speech/providers/local/runtime.d.ts +1 -0
- package/dist/server/server/speech/providers/local/runtime.d.ts.map +1 -1
- package/dist/server/server/speech/providers/local/runtime.js +13 -9
- package/dist/server/server/speech/providers/local/runtime.js.map +1 -1
- package/dist/server/server/speech/providers/local/sherpa/model-downloader.d.ts.map +1 -1
- package/dist/server/server/speech/providers/local/sherpa/model-downloader.js +73 -54
- package/dist/server/server/speech/providers/local/sherpa/model-downloader.js.map +1 -1
- package/dist/server/server/speech/providers/openai/config.d.ts.map +1 -1
- package/dist/server/server/speech/providers/openai/config.js +10 -5
- package/dist/server/server/speech/providers/openai/config.js.map +1 -1
- package/dist/server/server/speech/providers/openai/runtime.d.ts.map +1 -1
- package/dist/server/server/speech/providers/openai/runtime.js +17 -6
- package/dist/server/server/speech/providers/openai/runtime.js.map +1 -1
- package/dist/server/server/speech/speech-config-resolver.d.ts.map +1 -1
- package/dist/server/server/speech/speech-config-resolver.js +25 -4
- package/dist/server/server/speech/speech-config-resolver.js.map +1 -1
- package/dist/server/server/speech/speech-runtime.d.ts +26 -3
- package/dist/server/server/speech/speech-runtime.d.ts.map +1 -1
- package/dist/server/server/speech/speech-runtime.js +468 -85
- package/dist/server/server/speech/speech-runtime.js.map +1 -1
- package/dist/server/server/speech/speech-types.d.ts +3 -0
- package/dist/server/server/speech/speech-types.d.ts.map +1 -1
- package/dist/server/server/speech/speech-types.js +1 -0
- package/dist/server/server/speech/speech-types.js.map +1 -1
- package/dist/server/server/websocket-server.d.ts +23 -7
- package/dist/server/server/websocket-server.d.ts.map +1 -1
- package/dist/server/server/websocket-server.js +288 -102
- package/dist/server/server/websocket-server.js.map +1 -1
- package/dist/server/shared/binary-mux.d.ts +31 -0
- package/dist/server/shared/binary-mux.d.ts.map +1 -0
- package/dist/server/shared/binary-mux.js +101 -0
- package/dist/server/shared/binary-mux.js.map +1 -0
- package/dist/server/shared/messages.d.ts +5206 -4814
- package/dist/server/shared/messages.d.ts.map +1 -1
- package/dist/server/shared/messages.js +225 -58
- package/dist/server/shared/messages.js.map +1 -1
- package/dist/server/shared/terminal-key-input.d.ts +9 -0
- package/dist/server/shared/terminal-key-input.d.ts.map +1 -0
- package/dist/server/shared/terminal-key-input.js +132 -0
- package/dist/server/shared/terminal-key-input.js.map +1 -0
- package/dist/server/terminal/terminal.d.ts +17 -0
- package/dist/server/terminal/terminal.d.ts.map +1 -1
- package/dist/server/terminal/terminal.js +89 -0
- package/dist/server/terminal/terminal.js.map +1 -1
- package/dist/server/utils/checkout-git.d.ts +9 -1
- package/dist/server/utils/checkout-git.d.ts.map +1 -1
- package/dist/server/utils/checkout-git.js +314 -75
- package/dist/server/utils/checkout-git.js.map +1 -1
- package/dist/server/utils/worktree.d.ts.map +1 -1
- package/dist/server/utils/worktree.js +33 -4
- package/dist/server/utils/worktree.js.map +1 -1
- package/package.json +2 -2
|
@@ -358,6 +358,13 @@ export const ArchiveAgentRequestMessageSchema = z.object({
|
|
|
358
358
|
agentId: z.string(),
|
|
359
359
|
requestId: z.string(),
|
|
360
360
|
});
|
|
361
|
+
export const UpdateAgentRequestMessageSchema = z.object({
|
|
362
|
+
type: z.literal("update_agent_request"),
|
|
363
|
+
agentId: z.string(),
|
|
364
|
+
name: z.string().optional(),
|
|
365
|
+
labels: z.record(z.string()).optional(),
|
|
366
|
+
requestId: z.string(),
|
|
367
|
+
});
|
|
361
368
|
export const SetVoiceModeMessageSchema = z.object({
|
|
362
369
|
type: z.literal("set_voice_mode"),
|
|
363
370
|
enabled: z.boolean(),
|
|
@@ -458,6 +465,7 @@ export const CreateAgentRequestMessageSchema = z.object({
|
|
|
458
465
|
config: AgentSessionConfigSchema,
|
|
459
466
|
worktreeName: z.string().optional(),
|
|
460
467
|
initialPrompt: z.string().optional(),
|
|
468
|
+
outputSchema: z.record(z.unknown()).optional(),
|
|
461
469
|
images: z.array(z.object({
|
|
462
470
|
data: z.string(), // base64 encoded image
|
|
463
471
|
mimeType: z.string(), // e.g., "image/jpeg", "image/png"
|
|
@@ -472,6 +480,10 @@ export const ListProviderModelsRequestMessageSchema = z.object({
|
|
|
472
480
|
cwd: z.string().optional(),
|
|
473
481
|
requestId: z.string(),
|
|
474
482
|
});
|
|
483
|
+
export const ListAvailableProvidersRequestMessageSchema = z.object({
|
|
484
|
+
type: z.literal("list_available_providers_request"),
|
|
485
|
+
requestId: z.string(),
|
|
486
|
+
});
|
|
475
487
|
export const SpeechModelsListRequestSchema = z.object({
|
|
476
488
|
type: z.literal("speech_models_list_request"),
|
|
477
489
|
requestId: z.string(),
|
|
@@ -501,21 +513,20 @@ export const RestartServerRequestMessageSchema = z.object({
|
|
|
501
513
|
reason: z.string().optional(),
|
|
502
514
|
requestId: z.string(),
|
|
503
515
|
});
|
|
504
|
-
export const
|
|
505
|
-
|
|
516
|
+
export const AgentTimelineCursorSchema = z.object({
|
|
517
|
+
epoch: z.string(),
|
|
518
|
+
seq: z.number().int().nonnegative(),
|
|
519
|
+
});
|
|
520
|
+
export const FetchAgentTimelineRequestMessageSchema = z.object({
|
|
521
|
+
type: z.literal("fetch_agent_timeline_request"),
|
|
506
522
|
agentId: z.string(),
|
|
507
523
|
requestId: z.string(),
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
//
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
agentStatus: z.string().optional(),
|
|
515
|
-
timelineSize: z.number().optional(),
|
|
516
|
-
requestId: z.string(),
|
|
517
|
-
error: z.string().optional(),
|
|
518
|
-
}),
|
|
524
|
+
direction: z.enum(["tail", "before", "after"]).optional(),
|
|
525
|
+
cursor: AgentTimelineCursorSchema.optional(),
|
|
526
|
+
// 0 means "all matching rows for this query window".
|
|
527
|
+
limit: z.number().int().nonnegative().optional(),
|
|
528
|
+
// Default should be projected for app timeline loading.
|
|
529
|
+
projection: z.enum(["projected", "canonical"]).optional(),
|
|
519
530
|
});
|
|
520
531
|
export const SetAgentModeRequestMessageSchema = z.object({
|
|
521
532
|
type: z.literal("set_agent_mode_request"),
|
|
@@ -562,6 +573,15 @@ export const SetAgentThinkingResponseMessageSchema = z.object({
|
|
|
562
573
|
error: z.string().nullable(),
|
|
563
574
|
}),
|
|
564
575
|
});
|
|
576
|
+
export const UpdateAgentResponseMessageSchema = z.object({
|
|
577
|
+
type: z.literal("update_agent_response"),
|
|
578
|
+
payload: z.object({
|
|
579
|
+
requestId: z.string(),
|
|
580
|
+
agentId: z.string(),
|
|
581
|
+
accepted: z.boolean(),
|
|
582
|
+
error: z.string().nullable(),
|
|
583
|
+
}),
|
|
584
|
+
});
|
|
565
585
|
export const SetVoiceModeResponseMessageSchema = z.object({
|
|
566
586
|
type: z.literal("set_voice_mode_response"),
|
|
567
587
|
payload: z.object({
|
|
@@ -570,6 +590,9 @@ export const SetVoiceModeResponseMessageSchema = z.object({
|
|
|
570
590
|
agentId: z.string().nullable(),
|
|
571
591
|
accepted: z.boolean(),
|
|
572
592
|
error: z.string().nullable(),
|
|
593
|
+
reasonCode: z.string().optional(),
|
|
594
|
+
retryable: z.boolean().optional(),
|
|
595
|
+
missingModelIds: z.array(z.string()).optional(),
|
|
573
596
|
}),
|
|
574
597
|
});
|
|
575
598
|
export const AgentPermissionResponseMessageSchema = z.object({
|
|
@@ -578,11 +601,6 @@ export const AgentPermissionResponseMessageSchema = z.object({
|
|
|
578
601
|
requestId: z.string(),
|
|
579
602
|
response: AgentPermissionResponseSchema,
|
|
580
603
|
});
|
|
581
|
-
export const GitDiffRequestSchema = z.object({
|
|
582
|
-
type: z.literal("git_diff_request"),
|
|
583
|
-
agentId: z.string(),
|
|
584
|
-
requestId: z.string(),
|
|
585
|
-
});
|
|
586
604
|
const CheckoutErrorCodeSchema = z.enum([
|
|
587
605
|
"NOT_GIT_REPO",
|
|
588
606
|
"NOT_ALLOWED",
|
|
@@ -659,6 +677,13 @@ export const ValidateBranchRequestSchema = z.object({
|
|
|
659
677
|
branchName: z.string(),
|
|
660
678
|
requestId: z.string(),
|
|
661
679
|
});
|
|
680
|
+
export const BranchSuggestionsRequestSchema = z.object({
|
|
681
|
+
type: z.literal("branch_suggestions_request"),
|
|
682
|
+
cwd: z.string(),
|
|
683
|
+
query: z.string().optional(),
|
|
684
|
+
limit: z.number().int().min(1).max(200).optional(),
|
|
685
|
+
requestId: z.string(),
|
|
686
|
+
});
|
|
662
687
|
export const PaseoWorktreeListRequestSchema = z.object({
|
|
663
688
|
type: z.literal("paseo_worktree_list_request"),
|
|
664
689
|
cwd: z.string().optional(),
|
|
@@ -699,11 +724,6 @@ const ParsedDiffFileSchema = z.object({
|
|
|
699
724
|
hunks: z.array(DiffHunkSchema),
|
|
700
725
|
status: z.enum(["ok", "too_large", "binary"]).optional(),
|
|
701
726
|
});
|
|
702
|
-
export const HighlightedDiffRequestSchema = z.object({
|
|
703
|
-
type: z.literal("highlighted_diff_request"),
|
|
704
|
-
agentId: z.string(),
|
|
705
|
-
requestId: z.string(),
|
|
706
|
-
});
|
|
707
727
|
const FileExplorerEntrySchema = z.object({
|
|
708
728
|
name: z.string(),
|
|
709
729
|
path: z.string(),
|
|
@@ -819,6 +839,19 @@ export const KillTerminalRequestSchema = z.object({
|
|
|
819
839
|
terminalId: z.string(),
|
|
820
840
|
requestId: z.string(),
|
|
821
841
|
});
|
|
842
|
+
export const AttachTerminalStreamRequestSchema = z.object({
|
|
843
|
+
type: z.literal("attach_terminal_stream_request"),
|
|
844
|
+
terminalId: z.string(),
|
|
845
|
+
resumeOffset: z.number().int().nonnegative().optional(),
|
|
846
|
+
rows: z.number().int().positive().optional(),
|
|
847
|
+
cols: z.number().int().positive().optional(),
|
|
848
|
+
requestId: z.string(),
|
|
849
|
+
});
|
|
850
|
+
export const DetachTerminalStreamRequestSchema = z.object({
|
|
851
|
+
type: z.literal("detach_terminal_stream_request"),
|
|
852
|
+
streamId: z.number().int().nonnegative(),
|
|
853
|
+
requestId: z.string(),
|
|
854
|
+
});
|
|
822
855
|
export const SessionInboundMessageSchema = z.discriminatedUnion("type", [
|
|
823
856
|
VoiceAudioChunkMessageSchema,
|
|
824
857
|
AbortRequestMessageSchema,
|
|
@@ -830,6 +863,7 @@ export const SessionInboundMessageSchema = z.discriminatedUnion("type", [
|
|
|
830
863
|
UnsubscribeAgentUpdatesMessageSchema,
|
|
831
864
|
DeleteAgentRequestMessageSchema,
|
|
832
865
|
ArchiveAgentRequestMessageSchema,
|
|
866
|
+
UpdateAgentRequestMessageSchema,
|
|
833
867
|
SetVoiceModeMessageSchema,
|
|
834
868
|
SendAgentMessageRequestSchema,
|
|
835
869
|
WaitForFinishRequestSchema,
|
|
@@ -839,18 +873,18 @@ export const SessionInboundMessageSchema = z.discriminatedUnion("type", [
|
|
|
839
873
|
DictationStreamCancelMessageSchema,
|
|
840
874
|
CreateAgentRequestMessageSchema,
|
|
841
875
|
ListProviderModelsRequestMessageSchema,
|
|
876
|
+
ListAvailableProvidersRequestMessageSchema,
|
|
842
877
|
SpeechModelsListRequestSchema,
|
|
843
878
|
SpeechModelsDownloadRequestSchema,
|
|
844
879
|
ResumeAgentRequestMessageSchema,
|
|
845
880
|
RefreshAgentRequestMessageSchema,
|
|
846
881
|
CancelAgentRequestMessageSchema,
|
|
847
882
|
RestartServerRequestMessageSchema,
|
|
848
|
-
|
|
883
|
+
FetchAgentTimelineRequestMessageSchema,
|
|
849
884
|
SetAgentModeRequestMessageSchema,
|
|
850
885
|
SetAgentModelRequestMessageSchema,
|
|
851
886
|
SetAgentThinkingRequestMessageSchema,
|
|
852
887
|
AgentPermissionResponseMessageSchema,
|
|
853
|
-
GitDiffRequestSchema,
|
|
854
888
|
CheckoutStatusRequestSchema,
|
|
855
889
|
SubscribeCheckoutDiffRequestSchema,
|
|
856
890
|
UnsubscribeCheckoutDiffRequestSchema,
|
|
@@ -861,9 +895,9 @@ export const SessionInboundMessageSchema = z.discriminatedUnion("type", [
|
|
|
861
895
|
CheckoutPrCreateRequestSchema,
|
|
862
896
|
CheckoutPrStatusRequestSchema,
|
|
863
897
|
ValidateBranchRequestSchema,
|
|
898
|
+
BranchSuggestionsRequestSchema,
|
|
864
899
|
PaseoWorktreeListRequestSchema,
|
|
865
900
|
PaseoWorktreeArchiveRequestSchema,
|
|
866
|
-
HighlightedDiffRequestSchema,
|
|
867
901
|
FileExplorerRequestSchema,
|
|
868
902
|
ProjectIconRequestSchema,
|
|
869
903
|
FileDownloadTokenRequestSchema,
|
|
@@ -879,6 +913,8 @@ export const SessionInboundMessageSchema = z.discriminatedUnion("type", [
|
|
|
879
913
|
UnsubscribeTerminalRequestSchema,
|
|
880
914
|
TerminalInputSchema,
|
|
881
915
|
KillTerminalRequestSchema,
|
|
916
|
+
AttachTerminalStreamRequestSchema,
|
|
917
|
+
DetachTerminalStreamRequestSchema,
|
|
882
918
|
]);
|
|
883
919
|
// ============================================================================
|
|
884
920
|
// Session Outbound Messages (Session emits these)
|
|
@@ -940,6 +976,13 @@ export const DictationStreamAckMessageSchema = z.object({
|
|
|
940
976
|
ackSeq: z.number().int(),
|
|
941
977
|
}),
|
|
942
978
|
});
|
|
979
|
+
export const DictationStreamFinishAcceptedMessageSchema = z.object({
|
|
980
|
+
type: z.literal("dictation_stream_finish_accepted"),
|
|
981
|
+
payload: z.object({
|
|
982
|
+
dictationId: z.string(),
|
|
983
|
+
timeoutMs: z.number().int().positive(),
|
|
984
|
+
}),
|
|
985
|
+
});
|
|
943
986
|
export const DictationStreamPartialMessageSchema = z.object({
|
|
944
987
|
type: z.literal("dictation_stream_partial"),
|
|
945
988
|
payload: z.object({
|
|
@@ -961,9 +1004,58 @@ export const DictationStreamErrorMessageSchema = z.object({
|
|
|
961
1004
|
dictationId: z.string(),
|
|
962
1005
|
error: z.string(),
|
|
963
1006
|
retryable: z.boolean(),
|
|
1007
|
+
reasonCode: z.string().optional(),
|
|
1008
|
+
missingModelIds: z.array(z.string()).optional(),
|
|
964
1009
|
debugRecordingPath: z.string().optional(),
|
|
965
1010
|
}),
|
|
966
1011
|
});
|
|
1012
|
+
export const ServerCapabilityStateSchema = z.object({
|
|
1013
|
+
enabled: z.boolean(),
|
|
1014
|
+
reason: z.string(),
|
|
1015
|
+
});
|
|
1016
|
+
export const ServerVoiceCapabilitiesSchema = z.object({
|
|
1017
|
+
dictation: ServerCapabilityStateSchema,
|
|
1018
|
+
voice: ServerCapabilityStateSchema,
|
|
1019
|
+
});
|
|
1020
|
+
export const ServerCapabilitiesSchema = z
|
|
1021
|
+
.object({
|
|
1022
|
+
voice: ServerVoiceCapabilitiesSchema.optional(),
|
|
1023
|
+
})
|
|
1024
|
+
.passthrough();
|
|
1025
|
+
const ServerInfoHostnameSchema = z
|
|
1026
|
+
.unknown()
|
|
1027
|
+
.transform((value) => {
|
|
1028
|
+
if (typeof value !== "string") {
|
|
1029
|
+
return null;
|
|
1030
|
+
}
|
|
1031
|
+
const trimmed = value.trim();
|
|
1032
|
+
return trimmed.length > 0 ? trimmed : null;
|
|
1033
|
+
});
|
|
1034
|
+
const ServerCapabilitiesFromUnknownSchema = z
|
|
1035
|
+
.unknown()
|
|
1036
|
+
.optional()
|
|
1037
|
+
.transform((value) => {
|
|
1038
|
+
if (value === undefined) {
|
|
1039
|
+
return undefined;
|
|
1040
|
+
}
|
|
1041
|
+
const parsed = ServerCapabilitiesSchema.safeParse(value);
|
|
1042
|
+
if (!parsed.success) {
|
|
1043
|
+
return undefined;
|
|
1044
|
+
}
|
|
1045
|
+
return parsed.data;
|
|
1046
|
+
});
|
|
1047
|
+
export const ServerInfoStatusPayloadSchema = z
|
|
1048
|
+
.object({
|
|
1049
|
+
status: z.literal("server_info"),
|
|
1050
|
+
serverId: z.string().trim().min(1),
|
|
1051
|
+
hostname: ServerInfoHostnameSchema.optional(),
|
|
1052
|
+
capabilities: ServerCapabilitiesFromUnknownSchema,
|
|
1053
|
+
})
|
|
1054
|
+
.passthrough()
|
|
1055
|
+
.transform((payload) => ({
|
|
1056
|
+
...payload,
|
|
1057
|
+
hostname: payload.hostname ?? null,
|
|
1058
|
+
}));
|
|
967
1059
|
export const StatusMessageSchema = z.object({
|
|
968
1060
|
type: z.literal("status"),
|
|
969
1061
|
payload: z
|
|
@@ -1096,16 +1188,9 @@ export const AgentStreamMessageSchema = z.object({
|
|
|
1096
1188
|
agentId: z.string(),
|
|
1097
1189
|
event: AgentStreamEventPayloadSchema,
|
|
1098
1190
|
timestamp: z.string(),
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
type: z.literal("agent_stream_snapshot"),
|
|
1103
|
-
payload: z.object({
|
|
1104
|
-
agentId: z.string(),
|
|
1105
|
-
events: z.array(z.object({
|
|
1106
|
-
event: AgentStreamEventPayloadSchema,
|
|
1107
|
-
timestamp: z.string(),
|
|
1108
|
-
})),
|
|
1191
|
+
// Present for timeline events. Maps 1:1 to canonical in-memory timeline rows.
|
|
1192
|
+
seq: z.number().int().nonnegative().optional(),
|
|
1193
|
+
epoch: z.string().optional(),
|
|
1109
1194
|
}),
|
|
1110
1195
|
});
|
|
1111
1196
|
export const AgentStatusMessageSchema = z.object({
|
|
@@ -1153,6 +1238,43 @@ export const FetchAgentResponseMessageSchema = z.object({
|
|
|
1153
1238
|
error: z.string().nullable(),
|
|
1154
1239
|
}),
|
|
1155
1240
|
});
|
|
1241
|
+
const AgentTimelineSeqRangeSchema = z.object({
|
|
1242
|
+
startSeq: z.number().int().nonnegative(),
|
|
1243
|
+
endSeq: z.number().int().nonnegative(),
|
|
1244
|
+
});
|
|
1245
|
+
export const AgentTimelineEntryPayloadSchema = z.object({
|
|
1246
|
+
provider: AgentProviderSchema,
|
|
1247
|
+
item: AgentTimelineItemPayloadSchema,
|
|
1248
|
+
timestamp: z.string(),
|
|
1249
|
+
seqStart: z.number().int().nonnegative(),
|
|
1250
|
+
seqEnd: z.number().int().nonnegative(),
|
|
1251
|
+
sourceSeqRanges: z.array(AgentTimelineSeqRangeSchema),
|
|
1252
|
+
collapsed: z.array(z.enum(["assistant_merge", "tool_lifecycle"])),
|
|
1253
|
+
});
|
|
1254
|
+
export const FetchAgentTimelineResponseMessageSchema = z.object({
|
|
1255
|
+
type: z.literal("fetch_agent_timeline_response"),
|
|
1256
|
+
payload: z.object({
|
|
1257
|
+
requestId: z.string(),
|
|
1258
|
+
agentId: z.string(),
|
|
1259
|
+
direction: z.enum(["tail", "before", "after"]),
|
|
1260
|
+
projection: z.enum(["projected", "canonical"]),
|
|
1261
|
+
epoch: z.string(),
|
|
1262
|
+
reset: z.boolean(),
|
|
1263
|
+
staleCursor: z.boolean(),
|
|
1264
|
+
gap: z.boolean(),
|
|
1265
|
+
window: z.object({
|
|
1266
|
+
minSeq: z.number().int().nonnegative(),
|
|
1267
|
+
maxSeq: z.number().int().nonnegative(),
|
|
1268
|
+
nextSeq: z.number().int().nonnegative(),
|
|
1269
|
+
}),
|
|
1270
|
+
startCursor: AgentTimelineCursorSchema.nullable(),
|
|
1271
|
+
endCursor: AgentTimelineCursorSchema.nullable(),
|
|
1272
|
+
hasOlder: z.boolean(),
|
|
1273
|
+
hasNewer: z.boolean(),
|
|
1274
|
+
entries: z.array(AgentTimelineEntryPayloadSchema),
|
|
1275
|
+
error: z.string().nullable(),
|
|
1276
|
+
}),
|
|
1277
|
+
});
|
|
1156
1278
|
export const SendAgentMessageResponseMessageSchema = z.object({
|
|
1157
1279
|
type: z.literal("send_agent_message_response"),
|
|
1158
1280
|
payload: z.object({
|
|
@@ -1169,6 +1291,7 @@ export const WaitForFinishResponseMessageSchema = z.object({
|
|
|
1169
1291
|
status: z.enum(["idle", "error", "permission", "timeout"]),
|
|
1170
1292
|
final: AgentSnapshotPayloadSchema.nullable(),
|
|
1171
1293
|
error: z.string().nullable(),
|
|
1294
|
+
lastMessage: z.string().nullable(),
|
|
1172
1295
|
}),
|
|
1173
1296
|
});
|
|
1174
1297
|
export const AgentPermissionRequestMessageSchema = z.object({
|
|
@@ -1201,15 +1324,6 @@ export const AgentArchivedMessageSchema = z.object({
|
|
|
1201
1324
|
requestId: z.string(),
|
|
1202
1325
|
}),
|
|
1203
1326
|
});
|
|
1204
|
-
export const GitDiffResponseSchema = z.object({
|
|
1205
|
-
type: z.literal("git_diff_response"),
|
|
1206
|
-
payload: z.object({
|
|
1207
|
-
agentId: z.string(),
|
|
1208
|
-
diff: z.string(),
|
|
1209
|
-
error: z.string().nullable(),
|
|
1210
|
-
requestId: z.string(),
|
|
1211
|
-
}),
|
|
1212
|
-
});
|
|
1213
1327
|
const AheadBehindSchema = z.object({
|
|
1214
1328
|
ahead: z.number(),
|
|
1215
1329
|
behind: z.number(),
|
|
@@ -1338,6 +1452,7 @@ export const CheckoutPrStatusResponseSchema = z.object({
|
|
|
1338
1452
|
payload: z.object({
|
|
1339
1453
|
cwd: z.string(),
|
|
1340
1454
|
status: CheckoutPrStatusSchema.nullable(),
|
|
1455
|
+
githubFeaturesEnabled: z.boolean(),
|
|
1341
1456
|
error: CheckoutErrorSchema.nullable(),
|
|
1342
1457
|
requestId: z.string(),
|
|
1343
1458
|
}),
|
|
@@ -1352,6 +1467,14 @@ export const ValidateBranchResponseSchema = z.object({
|
|
|
1352
1467
|
requestId: z.string(),
|
|
1353
1468
|
}),
|
|
1354
1469
|
});
|
|
1470
|
+
export const BranchSuggestionsResponseSchema = z.object({
|
|
1471
|
+
type: z.literal("branch_suggestions_response"),
|
|
1472
|
+
payload: z.object({
|
|
1473
|
+
branches: z.array(z.string()),
|
|
1474
|
+
error: z.string().nullable(),
|
|
1475
|
+
requestId: z.string(),
|
|
1476
|
+
}),
|
|
1477
|
+
});
|
|
1355
1478
|
const PaseoWorktreeSchema = z.object({
|
|
1356
1479
|
worktreePath: z.string(),
|
|
1357
1480
|
branchName: z.string().nullable().optional(),
|
|
@@ -1374,15 +1497,6 @@ export const PaseoWorktreeArchiveResponseSchema = z.object({
|
|
|
1374
1497
|
requestId: z.string(),
|
|
1375
1498
|
}),
|
|
1376
1499
|
});
|
|
1377
|
-
export const HighlightedDiffResponseSchema = z.object({
|
|
1378
|
-
type: z.literal("highlighted_diff_response"),
|
|
1379
|
-
payload: z.object({
|
|
1380
|
-
agentId: z.string(),
|
|
1381
|
-
files: z.array(ParsedDiffFileSchema),
|
|
1382
|
-
error: z.string().nullable(),
|
|
1383
|
-
requestId: z.string(),
|
|
1384
|
-
}),
|
|
1385
|
-
});
|
|
1386
1500
|
export const FileExplorerResponseSchema = z.object({
|
|
1387
1501
|
type: z.literal("file_explorer_response"),
|
|
1388
1502
|
payload: z.object({
|
|
@@ -1431,6 +1545,20 @@ export const ListProviderModelsResponseMessageSchema = z.object({
|
|
|
1431
1545
|
requestId: z.string(),
|
|
1432
1546
|
}),
|
|
1433
1547
|
});
|
|
1548
|
+
const ProviderAvailabilitySchema = z.object({
|
|
1549
|
+
provider: AgentProviderSchema,
|
|
1550
|
+
available: z.boolean(),
|
|
1551
|
+
error: z.string().nullable().optional(),
|
|
1552
|
+
});
|
|
1553
|
+
export const ListAvailableProvidersResponseSchema = z.object({
|
|
1554
|
+
type: z.literal("list_available_providers_response"),
|
|
1555
|
+
payload: z.object({
|
|
1556
|
+
providers: z.array(ProviderAvailabilitySchema),
|
|
1557
|
+
error: z.string().nullable().optional(),
|
|
1558
|
+
fetchedAt: z.string(),
|
|
1559
|
+
requestId: z.string(),
|
|
1560
|
+
}),
|
|
1561
|
+
});
|
|
1434
1562
|
export const SpeechModelsListResponseSchema = z.object({
|
|
1435
1563
|
type: z.literal("speech_models_list_response"),
|
|
1436
1564
|
payload: z.object({
|
|
@@ -1548,38 +1676,66 @@ export const KillTerminalResponseSchema = z.object({
|
|
|
1548
1676
|
requestId: z.string(),
|
|
1549
1677
|
}),
|
|
1550
1678
|
});
|
|
1679
|
+
export const AttachTerminalStreamResponseSchema = z.object({
|
|
1680
|
+
type: z.literal("attach_terminal_stream_response"),
|
|
1681
|
+
payload: z.object({
|
|
1682
|
+
terminalId: z.string(),
|
|
1683
|
+
streamId: z.number().int().nonnegative().nullable(),
|
|
1684
|
+
replayedFrom: z.number().int().nonnegative(),
|
|
1685
|
+
currentOffset: z.number().int().nonnegative(),
|
|
1686
|
+
earliestAvailableOffset: z.number().int().nonnegative(),
|
|
1687
|
+
reset: z.boolean(),
|
|
1688
|
+
error: z.string().nullable(),
|
|
1689
|
+
requestId: z.string(),
|
|
1690
|
+
}),
|
|
1691
|
+
});
|
|
1692
|
+
export const DetachTerminalStreamResponseSchema = z.object({
|
|
1693
|
+
type: z.literal("detach_terminal_stream_response"),
|
|
1694
|
+
payload: z.object({
|
|
1695
|
+
streamId: z.number().int().nonnegative(),
|
|
1696
|
+
success: z.boolean(),
|
|
1697
|
+
requestId: z.string(),
|
|
1698
|
+
}),
|
|
1699
|
+
});
|
|
1700
|
+
export const TerminalStreamExitSchema = z.object({
|
|
1701
|
+
type: z.literal("terminal_stream_exit"),
|
|
1702
|
+
payload: z.object({
|
|
1703
|
+
streamId: z.number().int().nonnegative(),
|
|
1704
|
+
terminalId: z.string(),
|
|
1705
|
+
}),
|
|
1706
|
+
});
|
|
1551
1707
|
export const SessionOutboundMessageSchema = z.discriminatedUnion("type", [
|
|
1552
1708
|
ActivityLogMessageSchema,
|
|
1553
1709
|
AssistantChunkMessageSchema,
|
|
1554
1710
|
AudioOutputMessageSchema,
|
|
1555
1711
|
TranscriptionResultMessageSchema,
|
|
1556
1712
|
DictationStreamAckMessageSchema,
|
|
1713
|
+
DictationStreamFinishAcceptedMessageSchema,
|
|
1557
1714
|
DictationStreamPartialMessageSchema,
|
|
1558
1715
|
DictationStreamFinalMessageSchema,
|
|
1559
1716
|
DictationStreamErrorMessageSchema,
|
|
1560
1717
|
StatusMessageSchema,
|
|
1561
1718
|
PongMessageSchema,
|
|
1562
1719
|
RpcErrorMessageSchema,
|
|
1563
|
-
InitializeAgentResponseMessageSchema,
|
|
1564
1720
|
ArtifactMessageSchema,
|
|
1565
1721
|
AgentUpdateMessageSchema,
|
|
1566
1722
|
AgentStreamMessageSchema,
|
|
1567
|
-
AgentStreamSnapshotMessageSchema,
|
|
1568
1723
|
AgentStatusMessageSchema,
|
|
1569
1724
|
FetchAgentsResponseMessageSchema,
|
|
1570
1725
|
FetchAgentsGroupedByProjectResponseMessageSchema,
|
|
1571
1726
|
FetchAgentResponseMessageSchema,
|
|
1727
|
+
FetchAgentTimelineResponseMessageSchema,
|
|
1572
1728
|
SendAgentMessageResponseMessageSchema,
|
|
1573
1729
|
SetVoiceModeResponseMessageSchema,
|
|
1574
1730
|
SetAgentModeResponseMessageSchema,
|
|
1575
1731
|
SetAgentModelResponseMessageSchema,
|
|
1576
1732
|
SetAgentThinkingResponseMessageSchema,
|
|
1733
|
+
UpdateAgentResponseMessageSchema,
|
|
1577
1734
|
WaitForFinishResponseMessageSchema,
|
|
1578
1735
|
AgentPermissionRequestMessageSchema,
|
|
1579
1736
|
AgentPermissionResolvedMessageSchema,
|
|
1580
1737
|
AgentDeletedMessageSchema,
|
|
1581
1738
|
AgentArchivedMessageSchema,
|
|
1582
|
-
GitDiffResponseSchema,
|
|
1583
1739
|
CheckoutStatusResponseSchema,
|
|
1584
1740
|
SubscribeCheckoutDiffResponseSchema,
|
|
1585
1741
|
CheckoutDiffUpdateSchema,
|
|
@@ -1590,13 +1746,14 @@ export const SessionOutboundMessageSchema = z.discriminatedUnion("type", [
|
|
|
1590
1746
|
CheckoutPrCreateResponseSchema,
|
|
1591
1747
|
CheckoutPrStatusResponseSchema,
|
|
1592
1748
|
ValidateBranchResponseSchema,
|
|
1749
|
+
BranchSuggestionsResponseSchema,
|
|
1593
1750
|
PaseoWorktreeListResponseSchema,
|
|
1594
1751
|
PaseoWorktreeArchiveResponseSchema,
|
|
1595
|
-
HighlightedDiffResponseSchema,
|
|
1596
1752
|
FileExplorerResponseSchema,
|
|
1597
1753
|
ProjectIconResponseSchema,
|
|
1598
1754
|
FileDownloadTokenResponseSchema,
|
|
1599
1755
|
ListProviderModelsResponseMessageSchema,
|
|
1756
|
+
ListAvailableProvidersResponseSchema,
|
|
1600
1757
|
SpeechModelsListResponseSchema,
|
|
1601
1758
|
SpeechModelsDownloadResponseSchema,
|
|
1602
1759
|
ListCommandsResponseSchema,
|
|
@@ -1606,6 +1763,9 @@ export const SessionOutboundMessageSchema = z.discriminatedUnion("type", [
|
|
|
1606
1763
|
SubscribeTerminalResponseSchema,
|
|
1607
1764
|
TerminalOutputSchema,
|
|
1608
1765
|
KillTerminalResponseSchema,
|
|
1766
|
+
AttachTerminalStreamResponseSchema,
|
|
1767
|
+
DetachTerminalStreamResponseSchema,
|
|
1768
|
+
TerminalStreamExitSchema,
|
|
1609
1769
|
]);
|
|
1610
1770
|
// ============================================================================
|
|
1611
1771
|
// WebSocket Level Messages (wraps session messages)
|
|
@@ -1663,4 +1823,11 @@ export function wrapSessionMessage(sessionMsg) {
|
|
|
1663
1823
|
message: sessionMsg,
|
|
1664
1824
|
};
|
|
1665
1825
|
}
|
|
1826
|
+
export function parseServerInfoStatusPayload(payload) {
|
|
1827
|
+
const parsed = ServerInfoStatusPayloadSchema.safeParse(payload);
|
|
1828
|
+
if (!parsed.success) {
|
|
1829
|
+
return null;
|
|
1830
|
+
}
|
|
1831
|
+
return parsed.data;
|
|
1832
|
+
}
|
|
1666
1833
|
//# sourceMappingURL=messages.js.map
|