diff options
| author | Brendan Allan <[email protected]> | 2026-01-13 21:08:19 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-01-13 07:08:19 -0600 |
| commit | 35cb06e0e49647c91c733b44eaf8fd1d3ead420b (patch) | |
| tree | 6fab02ebb96245b94eb6df3e9d4f230baaaf5623 /packages | |
| parent | f3b7d2f7860aedec1a4c86511ed799d32474c32c (diff) | |
| download | opencode-35cb06e0e49647c91c733b44eaf8fd1d3ead420b.tar.gz opencode-35cb06e0e49647c91c733b44eaf8fd1d3ead420b.zip | |
fix(app): provide pty socket auth if available from desktop (#8210)
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/app/src/app.tsx | 2 | ||||
| -rw-r--r-- | packages/app/src/components/terminal.tsx | 9 | ||||
| -rw-r--r-- | packages/desktop/src-tauri/src/lib.rs | 2 |
3 files changed, 8 insertions, 5 deletions
diff --git a/packages/app/src/app.tsx b/packages/app/src/app.tsx index 3f8080972..d0678dc53 100644 --- a/packages/app/src/app.tsx +++ b/packages/app/src/app.tsx @@ -33,7 +33,7 @@ const Loading = () => <div class="size-full flex items-center justify-center tex declare global { interface Window { - __OPENCODE__?: { updaterEnabled?: boolean } + __OPENCODE__?: { updaterEnabled?: boolean; serverPassword?: string } } } diff --git a/packages/app/src/components/terminal.tsx b/packages/app/src/components/terminal.tsx index 770202f26..8001e2caa 100644 --- a/packages/app/src/components/terminal.tsx +++ b/packages/app/src/components/terminal.tsx @@ -100,9 +100,12 @@ export const Terminal = (props: TerminalProps) => { const mod = await import("ghostty-web") ghostty = await mod.Ghostty.load() - const socket = new WebSocket( - sdk.url + `/pty/${local.pty.id}/connect?directory=${encodeURIComponent(sdk.directory)}`, - ) + const url = new URL(sdk.url + `/pty/${local.pty.id}/connect?directory=${encodeURIComponent(sdk.directory)}`) + if (window.__OPENCODE__?.serverPassword) { + url.username = "opencode" + url.password = window.__OPENCODE__?.serverPassword + } + const socket = new WebSocket(url) ws = socket const t = new mod.Terminal({ diff --git a/packages/desktop/src-tauri/src/lib.rs b/packages/desktop/src-tauri/src/lib.rs index 183220d16..4bb7b21ec 100644 --- a/packages/desktop/src-tauri/src/lib.rs +++ b/packages/desktop/src-tauri/src/lib.rs @@ -441,7 +441,7 @@ async fn spawn_local_server( let timestamp = Instant::now(); loop { - if timestamp.elapsed() > Duration::from_secs(7) { + if timestamp.elapsed() > Duration::from_secs(30) { break Err(format!( "Failed to spawn OpenCode Server. Logs:\n{}", get_logs(app.clone()).await.unwrap() |
