TUI: refresh token counts after agent runs complete. Closes #1078

This commit is contained in:
Dimitrios Ploutarchos
2026-01-17 07:39:56 +00:00
parent 6d969fe58e
commit cddf198321
2 changed files with 5 additions and 1 deletions

View File

@@ -8,10 +8,11 @@ type EventHandlerContext = {
tui: TUI;
state: TuiStateAccess;
setActivityStatus: (text: string) => void;
refreshSessionInfo?: () => Promise<void>;
};
export function createEventHandlers(context: EventHandlerContext) {
const { chatLog, tui, state, setActivityStatus } = context;
const { chatLog, tui, state, setActivityStatus, refreshSessionInfo } = context;
const finalizedRuns = new Map<string, number>();
const noteFinalizedRun = (runId: string) => {
@@ -64,6 +65,8 @@ export function createEventHandlers(context: EventHandlerContext) {
noteFinalizedRun(evt.runId);
state.activeChatRunId = null;
setActivityStatus(stopReason === "error" ? "error" : "idle");
// Refresh session info to update token counts in footer
void refreshSessionInfo?.();
}
if (evt.state === "aborted") {
chatLog.addSystem("run aborted");

View File

@@ -399,6 +399,7 @@ export async function runTui(opts: TuiOptions) {
tui,
state,
setActivityStatus,
refreshSessionInfo,
});
const { handleCommand, sendMessage, openModelSelector, openAgentSelector, openSessionSelector } =