From a2db58f125b1b70484532a806cd367011fbadf01 Mon Sep 17 00:00:00 2001 From: Aiden Cline <63023139+rekram1-node@users.noreply.github.com> Date: Tue, 19 Aug 2025 22:40:07 -0500 Subject: [PATCH] fix: don't let --continue access subagent session (#2091) --- packages/opencode/src/cli/cmd/run.ts | 16 +++++++++++----- packages/opencode/src/cli/cmd/tui.ts | 16 +++++++++++----- 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/packages/opencode/src/cli/cmd/run.ts b/packages/opencode/src/cli/cmd/run.ts index f44d90c3..25d917e1 100644 --- a/packages/opencode/src/cli/cmd/run.ts +++ b/packages/opencode/src/cli/cmd/run.ts @@ -67,11 +67,17 @@ export const RunCommand = cmd({ await bootstrap({ cwd: process.cwd() }, async () => { const session = await (async () => { if (args.continue) { - const list = Session.list() - const first = await list.next() - await list.return() - if (first.done) return - return first.value + const it = Session.list() + try { + for await (const s of it) { + if (s.parentID === undefined) { + return s + } + } + return + } finally { + await it.return() + } } if (args.session) return Session.get(args.session) diff --git a/packages/opencode/src/cli/cmd/tui.ts b/packages/opencode/src/cli/cmd/tui.ts index c2f2ee2e..25d0fbcb 100644 --- a/packages/opencode/src/cli/cmd/tui.ts +++ b/packages/opencode/src/cli/cmd/tui.ts @@ -82,11 +82,17 @@ export const TuiCommand = cmd({ const result = await bootstrap({ cwd }, async (app) => { const sessionID = await (async () => { if (args.continue) { - const list = Session.list() - const first = await list.next() - await list.return() - if (first.done) return - return first.value.id + const it = Session.list() + try { + for await (const s of it) { + if (s.parentID === undefined) { + return s.id + } + } + return + } finally { + await it.return() + } } if (args.session) { return args.session