From 3b5e636730a83b31012cc26d6271f43a1ca319e5 Mon Sep 17 00:00:00 2001 From: Jared Miller Date: Wed, 28 Jan 2026 14:55:47 -0500 Subject: [PATCH] Add git event types to ClientMessage and SSEEvent --- src/server.ts | 2 ++ src/types.ts | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/server.ts b/src/server.ts index 4c0d5d7..c9fbc9c 100644 --- a/src/server.ts +++ b/src/server.ts @@ -47,6 +47,8 @@ function createDefaultSessionState(): SessionState { mode: "normal", model: null, idle_since: null, + git_branch: null, + git_files_json: null, dirty: false, }; } diff --git a/src/types.ts b/src/types.ts index 6f22e57..e02865f 100644 --- a/src/types.ts +++ b/src/types.ts @@ -136,6 +136,16 @@ export type ClientMessage = tool_timestamps: number[]; session_start: number; idle_since: number | null; + } + | { + type: "git"; + branch: string; + files: Array<{ + path: string; + status: string; + additions: number; + deletions: number; + }>; }; export type ServerMessage = @@ -191,6 +201,12 @@ export type SSEEvent = mode: "normal" | "auto_accept" | "plan"; model: string | null; idle_since: number | null; + } + | { + type: "git"; + session_id: number; + branch: string; + files_json: string; }; // Session state tracking (in-memory) @@ -212,5 +228,7 @@ export interface SessionState { mode: "normal" | "auto_accept" | "plan"; model: string | null; idle_since: number | null; + git_branch: string | null; + git_files_json: string | null; dirty: boolean; }