summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOpeOginni <[email protected]>2025-12-10 22:55:15 +0100
committerGitHub <[email protected]>2025-12-10 15:55:15 -0600
commit7435d94f85364654dda80c7b41d9c2379ebad640 (patch)
tree64a83b0cf07aa1ecc6bd0611397949bbeef27470
parente060f968f5f87b9e176ce7af41fd82f015ec54b0 (diff)
downloadopencode-7435d94f85364654dda80c7b41d9c2379ebad640.tar.gz
opencode-7435d94f85364654dda80c7b41d9c2379ebad640.zip
fix(cli): obtain directory data from server (#5320)
-rw-r--r--packages/opencode/src/cli/cmd/tui/context/directory.ts3
-rw-r--r--packages/opencode/src/cli/cmd/tui/context/sync.tsx4
2 files changed, 6 insertions, 1 deletions
diff --git a/packages/opencode/src/cli/cmd/tui/context/directory.ts b/packages/opencode/src/cli/cmd/tui/context/directory.ts
index 2ea8cf007..4664f2a88 100644
--- a/packages/opencode/src/cli/cmd/tui/context/directory.ts
+++ b/packages/opencode/src/cli/cmd/tui/context/directory.ts
@@ -5,7 +5,8 @@ import { Global } from "@/global"
export function useDirectory() {
const sync = useSync()
return createMemo(() => {
- const result = process.cwd().replace(Global.Path.home, "~")
+ const directory = sync.data.path.directory ?? process.cwd()
+ const result = directory.replace(Global.Path.home, "~")
if (sync.data.vcs?.branch) return result + ":" + sync.data.vcs.branch
return result
})
diff --git a/packages/opencode/src/cli/cmd/tui/context/sync.tsx b/packages/opencode/src/cli/cmd/tui/context/sync.tsx
index 28ea60a67..f74f787db 100644
--- a/packages/opencode/src/cli/cmd/tui/context/sync.tsx
+++ b/packages/opencode/src/cli/cmd/tui/context/sync.tsx
@@ -24,6 +24,7 @@ import type { Snapshot } from "@/snapshot"
import { useExit } from "./exit"
import { batch, onMount } from "solid-js"
import { Log } from "@/util/log"
+import type { Path } from "@opencode-ai/sdk"
export const { use: useSync, provider: SyncProvider } = createSimpleContext({
name: "Sync",
@@ -62,6 +63,7 @@ export const { use: useSync, provider: SyncProvider } = createSimpleContext({
}
formatter: FormatterStatus[]
vcs: VcsInfo | undefined
+ path: Path
}>({
provider_next: {
all: [],
@@ -86,6 +88,7 @@ export const { use: useSync, provider: SyncProvider } = createSimpleContext({
mcp: {},
formatter: [],
vcs: undefined,
+ path: { state: "", config: "", worktree: "", directory: "" },
})
const sdk = useSDK()
@@ -286,6 +289,7 @@ export const { use: useSync, provider: SyncProvider } = createSimpleContext({
sdk.client.session.status().then((x) => setStore("session_status", x.data!)),
sdk.client.provider.auth().then((x) => setStore("provider_auth", x.data ?? {})),
sdk.client.vcs.get().then((x) => setStore("vcs", x.data)),
+ sdk.client.path.get().then((x) => setStore("path", x.data!)),
]).then(() => {
setStore("status", "complete")
})