diff --git a/packages/app/src/components/prompt-input/submit.ts b/packages/app/src/components/prompt-input/submit.ts index a96bdcbad..c118f8cb2 100644 --- a/packages/app/src/components/prompt-input/submit.ts +++ b/packages/app/src/components/prompt-input/submit.ts @@ -137,7 +137,7 @@ export function createPromptSubmit(input: PromptSubmitInput) { const projectDirectory = sdk.directory const isNewSession = !params.id - const worktreeSelection = input.newSessionWorktree ?? "main" + const worktreeSelection = input.newSessionWorktree || "main" let sessionDirectory = projectDirectory let client = sdk.client diff --git a/packages/app/src/components/session/session-new-view.tsx b/packages/app/src/components/session/session-new-view.tsx index 9306e8acb..b20f3ab60 100644 --- a/packages/app/src/components/session/session-new-view.tsx +++ b/packages/app/src/components/session/session-new-view.tsx @@ -1,6 +1,7 @@ import { Show, createMemo } from "solid-js" import { DateTime } from "luxon" import { useSync } from "@/context/sync" +import { useSDK } from "@/context/sdk" import { useLanguage } from "@/context/language" import { Icon } from "@opencode-ai/ui/icon" import { getDirectory, getFilename } from "@opencode-ai/util/path" @@ -15,6 +16,7 @@ interface NewSessionViewProps { export function NewSessionView(props: NewSessionViewProps) { const sync = useSync() + const sdk = useSDK() const language = useLanguage() const sandboxes = createMemo(() => sync.project?.sandboxes ?? []) @@ -24,11 +26,11 @@ export function NewSessionView(props: NewSessionViewProps) { if (options().includes(selection)) return selection return MAIN_WORKTREE }) - const projectRoot = createMemo(() => sync.project?.worktree ?? sync.data.path.directory) + const projectRoot = createMemo(() => sync.project?.worktree ?? sdk.directory) const isWorktree = createMemo(() => { const project = sync.project if (!project) return false - return sync.data.path.directory !== project.worktree + return sdk.directory !== project.worktree }) const label = (value: string) => { diff --git a/packages/app/src/pages/session.tsx b/packages/app/src/pages/session.tsx index 7678ea6a8..24d46f828 100644 --- a/packages/app/src/pages/session.tsx +++ b/packages/app/src/pages/session.tsx @@ -591,7 +591,7 @@ export default function Page() { const newSessionWorktree = createMemo(() => { if (store.newSessionWorktree === "create") return "create" const project = sync.project - if (project && sync.data.path.directory !== project.worktree) return sync.data.path.directory + if (project && sdk.directory !== project.worktree) return sdk.directory return "main" }) @@ -1647,7 +1647,7 @@ export default function Page() { const target = value === "main" ? sync.project?.worktree : value if (!target) return - if (target === sync.data.path.directory) return + if (target === sdk.directory) return layout.projects.open(target) navigate(`/${base64Encode(target)}/session`) }}