diff --git a/index.ts b/index.ts index c7c1a2e..cf27dbc 100644 --- a/index.ts +++ b/index.ts @@ -147,6 +147,10 @@ async function runPlugin(ctx: any, options: any, dataDir: string) { const sessionId = eventData?.data?.sessionID || "" const assistantMsgID = eventData?.data?.assistantMessageID || "" + // Skip all events after session is done + const state = sessionsBySessionID.get(sessionId) + if (state?.done) continue + // ── Step lifecycle ────────────────────────────────────────────── if (eventType === "session.step.started") { @@ -242,6 +246,8 @@ async function runPlugin(ctx: any, options: any, dataDir: string) { if (eventType === "session.text.ended" && assistantMsgID) { const state = sessionsBySessionID.get(sessionId) + // Skip text events after final step + if (state?.done) continue const step = state?.steps.get(assistantMsgID) if (step) { step.text = eventData?.data?.text || ""