diff options
| author | Ryan Vogel <[email protected]> | 2026-02-16 13:45:00 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-02-16 13:45:00 -0500 |
| commit | 5cc1d6097e02e2f157b7ae68de9e5df06531b53d (patch) | |
| tree | 330f0175984fa0d5e5968714c5863bada9bec1b7 /packages | |
| parent | 8c1af9b445a45128d147f6f818dfd3ed7c4e75ef (diff) | |
| download | opencode-5cc1d6097e02e2f157b7ae68de9e5df06531b53d.tar.gz opencode-5cc1d6097e02e2f157b7ae68de9e5df06531b53d.zip | |
feat(cli): add --continue and --fork flags to attach command (#13879)
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/opencode/src/cli/cmd/tui/attach.ts | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/packages/opencode/src/cli/cmd/tui/attach.ts b/packages/opencode/src/cli/cmd/tui/attach.ts index 8b8979c83..a2559cfce 100644 --- a/packages/opencode/src/cli/cmd/tui/attach.ts +++ b/packages/opencode/src/cli/cmd/tui/attach.ts @@ -1,4 +1,5 @@ import { cmd } from "../cmd" +import { UI } from "@/cli/ui" import { tui } from "./app" import { win32DisableProcessedInput, win32InstallCtrlCGuard } from "./win32" @@ -16,11 +17,20 @@ export const AttachCommand = cmd({ type: "string", description: "directory to run in", }) + .option("continue", { + alias: ["c"], + describe: "continue the last session", + type: "boolean", + }) .option("session", { alias: ["s"], type: "string", describe: "session id to continue", }) + .option("fork", { + type: "boolean", + describe: "fork the session when continuing (use with --continue or --session)", + }) .option("password", { alias: ["p"], type: "string", @@ -31,6 +41,12 @@ export const AttachCommand = cmd({ try { win32DisableProcessedInput() + if (args.fork && !args.continue && !args.session) { + UI.error("--fork requires --continue or --session") + process.exitCode = 1 + return + } + const directory = (() => { if (!args.dir) return undefined try { @@ -49,7 +65,11 @@ export const AttachCommand = cmd({ })() await tui({ url: args.url, - args: { sessionID: args.session }, + args: { + continue: args.continue, + sessionID: args.session, + fork: args.fork, + }, directory, headers, }) |
