diff --git a/opencode.json b/opencode.json
new file mode 100644
index 00000000..720ece5c
--- /dev/null
+++ b/opencode.json
@@ -0,0 +1,3 @@
+{
+ "$schema": "https://opencode.ai/config.json"
+}
diff --git a/packages/app/src/app/components/session/sidebar.tsx b/packages/app/src/app/components/session/sidebar.tsx
index 91af2b6d..1fc54257 100644
--- a/packages/app/src/app/components/session/sidebar.tsx
+++ b/packages/app/src/app/components/session/sidebar.tsx
@@ -297,7 +297,7 @@ export default function SessionSidebar(props: SidebarProps) {
return (
(null);
const openworkServerClient = createMemo(() => {
const baseUrl = props.openworkServerUrl.trim();
+ const localBaseUrl = props.openworkServerHostInfo?.baseUrl?.trim() ?? "";
const hostToken = props.openworkServerHostInfo?.hostToken?.trim() ?? "";
const clientToken = props.openworkServerHostInfo?.clientToken?.trim() ?? "";
const settingsToken = props.openworkServerSettings.token?.trim() ?? "";
- const token = clientToken || settingsToken;
+ // Use clientToken only when connecting to the local server; use settingsToken for remote
+ const isLocalServer = localBaseUrl && baseUrl === localBaseUrl;
+ const token = isLocalServer ? (clientToken || settingsToken) : (settingsToken || clientToken);
if (!baseUrl || !token || !props.openworkServerWorkspaceId) return null;
- return createOpenworkServerClient({ baseUrl, token, hostToken });
+ return createOpenworkServerClient({ baseUrl, token, hostToken: isLocalServer ? hostToken : undefined });
});
const debugOwpenbot = (message: string, data?: Record) => {
if (!props.developerMode) return;
diff --git a/packages/desktop/src-tauri/Cargo.lock b/packages/desktop/src-tauri/Cargo.lock
index 2ad64edb..039da338 100644
--- a/packages/desktop/src-tauri/Cargo.lock
+++ b/packages/desktop/src-tauri/Cargo.lock
@@ -2726,7 +2726,7 @@ dependencies = [
[[package]]
name = "openwork"
-version = "0.11.8"
+version = "0.11.9"
dependencies = [
"base64 0.22.1",
"gethostname",