From d39ca5ec503a39695938d39bc7befd09c731983a Mon Sep 17 00:00:00 2001 From: OpeOginni Date: Mon, 25 May 2026 07:59:51 +0200 Subject: [PATCH] fix(tui): handle non-git project paths when opening editor --- .../src/cli/cmd/tui/component/prompt/index.tsx | 7 ++++++- .../src/cli/cmd/tui/routes/session/index.tsx | 14 ++++++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx b/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx index 0566e07b3451..25c54f01a985 100644 --- a/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx +++ b/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx @@ -512,7 +512,12 @@ export function Prompt(props: PromptProps) { const content = await Editor.open({ value, renderer, - cwd: project.instance.path().worktree || project.instance.directory() || process.cwd(), + cwd: + (project.instance.path().worktree === "/" + ? undefined + : project.instance.path().worktree) || + project.instance.directory() || + process.cwd(), }) if (!content) return diff --git a/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx b/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx index 270c11049e0f..4436ac423bf8 100644 --- a/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx +++ b/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx @@ -968,7 +968,12 @@ export function Session() { await Editor.open({ value: transcript, renderer, - cwd: project.instance.path().worktree || project.instance.directory() || process.cwd(), + cwd: + (project.instance.path().worktree === "/" + ? undefined + : project.instance.path().worktree) || + project.instance.directory() || + process.cwd(), }) } else { const exportDir = process.cwd() @@ -981,7 +986,12 @@ export function Session() { const result = await Editor.open({ value: transcript, renderer, - cwd: project.instance.path().worktree || project.instance.directory() || process.cwd(), + cwd: + (project.instance.path().worktree === "/" + ? undefined + : project.instance.path().worktree) || + project.instance.directory() || + process.cwd(), }) if (result !== undefined) { await Filesystem.write(filepath, result)