Skip to content

Windows Support #631

Closed
22 of 23 issues completed
Closed

Description

@thdxr

our windows support isn't really there - creating this one super issue to track all problems

Activity

  1. pinned this issue on Jul 3, 2025
  2. self-assigned this
    on Jul 3, 2025
  3. xmintec commented on Jul 3, 2025

    @xmintec

    here is how it works for me

    1. Install Chocolatey
      Open PowerShell as administrator.
      Run the following command to relax the execution policy so the installation script can run:

    Set-ExecutionPolicy Bypass -Scope Process -Force

    Now run the official Chocolatey installation command:

    [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

    1. Install the missing tools with Chocolatey:

    choco install unzip ripgrep fzf -y

    1. Navigate to the folder containing your opencode.exe.
      Double-click and Opencode should run.
  4. ikifar2012 commented on Jul 3, 2025

    @ikifar2012

    here is how it works for me

    1. Install Chocolatey
      Open PowerShell as administrator.
      Run the following command to relax the execution policy so the installation script can run:

    Set-ExecutionPolicy Bypass -Scope Process -Force

    Now run the official Chocolatey installation command:

    [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

    1. Install the missing tools with Chocolatey:

    choco install unzip ripgrep fzf -y

    1. Navigate to the folder containing your opencode.exe.
      Double-click and Opencode should run.

    Ideally though I think it would be best if this was bundled into the exe but if not possible then just document this

  5. davidanew commented on Jul 4, 2025

    @davidanew

    I have done this:

    choco install unzip ripgrep fzf -y

    I updated to the latest version v0.1.189

    I still get the "no text" probem , issue #460

  6. xmintec commented on Jul 4, 2025

    @xmintec

    I have done this:

    choco install unzip ripgrep fzf -y

    I updated to the latest version v0.1.189

    I still get the "no text" probem , issue #460

    You're right, you can't enter text. Unfortunately, I didn't test it any further than I left the welcome text from Opencode, which was fine for me because I had other things to do. It's the dependency on Bun that's a problem. I've now solved it for myself with Docker, but it's a bit of a hassle. Sooner or later, I'll install it on my Mac; it should work better there.

  7. davidanew commented on Jul 4, 2025

    @davidanew

    For the "bun" problem:

    ● Here's the problematic macro import on line 5:

    import { data } from "./models-macro" with { type: "macro" }

    This is a Bun-specific macro import that executes the data() function at compile time to fetch model information from https://models.dev/api.json. The macro system is causing the crash on Windows.

    To temporarily fix this, you can comment out that line:

    // import { data } from "./models-macro" with { type: "macro" }

    The macro is used to embed AI model data at build time, but the application should still work without it (though some model information might not be available).

    This worked for me to get the opencode gui up. It still has the "no text" problem, but at least I can starting investigating it

  8. davidanew commented on Jul 4, 2025

    @davidanew

    Setting "Use the legacy input encoding" in Poweshell settings -> Terminal emulation fixes the text problems

  9. davidanew commented on Jul 4, 2025

    @davidanew

    I had a git hash related error when doing /init . This fixed it:

    Update(packages/opencode/src/snapshot/index.ts)
    ⎿  Updated packages/opencode/src/snapshot/index.ts with 20 additions and 2 removals
    46 log.info("commit")
    47
    48 // Extract commit hash from output like "[main abc1234] snapshot"
    49 - const match = result.stdout.toString().match(/[.+ ([a-f0-9]+)]/)
    50 - if (!match) throw new Error("Failed to extract commit hash")
    49 + const output = result.stdout.toString()
    50 + log.info("git commit output", { output, stderr: result.stderr.toString() })
    51 +
    52 + const match = output.match(/[.+ ([a-f0-9]+)]/)
    53 + if (!match) {
    54 + // Fallback: get commit hash with git rev-parse
    55 + try {
    56 + const hashResult = await $git --git-dir ${git} rev-parse HEAD
    57 + .quiet()
    58 + .cwd(app.path.cwd)
    59 + .nothrow()
    60 + const hash = hashResult.stdout.toString().trim()
    61 + if (hash && hash.length >= 7) {
    62 + return hash.substring(0, 7)
    63 + }
    64 + } catch (e) {
    65 + log.error("Failed to get commit hash with rev-parse", { error: e })
    66 + }
    67 + throw new Error(Failed to extract commit hash from: ${output})
    68 + }
    69 return match[1]

  10. strager commented on Jul 5, 2025

    @strager
    Contributor

    "No text" issues might be related to num lock (see charmbracelet/x#485). Can you try turning off num lock?

  11. strager commented on Jul 5, 2025

    @strager
    Contributor

    See also #143

  12. QDaed commented on Jul 5, 2025

    @QDaed

    #404 This issue still remain with the lastest patch

  13. wienans commented on Jul 9, 2025

    @wienans
    Contributor

    @thdxr after starting the exe from the latest release i get this log (Win10).

    INFO  2025-07-09T07:16:21 +63ms service=default version=0.2.13 args= opencode
    INFO  2025-07-09T07:16:21 +8ms service=app cwd=C:\Users\******\opencode-windows-x64(1) creating
    INFO  2025-07-09T07:16:21 +0ms service=app git
    INFO  2025-07-09T07:16:21 +7ms service=bus type=storage.write subscribing
    INFO  2025-07-09T07:16:21 +0ms service=app name=bus registering service
    INFO  2025-07-09T07:16:21 +0ms service=format init
    INFO  2025-07-09T07:16:21 +0ms service=bus type=file.edited subscribing
    INFO  2025-07-09T07:16:21 +0ms service=config.hooks init
    INFO  2025-07-09T07:16:21 +0ms service=bus type=file.edited subscribing
    INFO  2025-07-09T07:16:21 +0ms service=bus type=session.idle subscribing
    INFO  2025-07-09T07:16:21 +0ms service=app name=lsp registering service
    INFO  2025-07-09T07:16:21 +0ms service=lsp initializing
    INFO  2025-07-09T07:16:21 +4ms service=app name=file.watcher registering service
    INFO  2025-07-09T07:16:21 +0ms service=app name=provider registering service
    INFO  2025-07-09T07:16:21 +1ms service=app name=config registering service
    INFO  2025-07-09T07:16:21 +4ms service=config loaded
    INFO  2025-07-09T07:16:21 +2ms service=models.dev refreshing
    INFO  2025-07-09T07:16:21 +0ms service=provider init
    INFO  2025-07-09T07:16:21 +4ms service=app name=lsp shutdown
    ERROR 2025-07-09T07:16:22 +885ms service=default name=Error message=Executable not found in $PATH: "unzip" fatal
    ERROR 2025-07-09T07:16:22 +1ms service=default e=Executable not found in $PATH: "unzip" rejection
    

    Did i miss any dependency installation process?

  14. QDaed commented on Jul 12, 2025

    @QDaed

    i dont really know when will windows have a fix,it haven't usable since the first release with a lot of render bug, i love opencode as because it is good while i was using wsl2 but want to use it on windows to sync with my workflow since claude code not supported .

  15. davidanew commented on Jul 12, 2025

    @davidanew

    i dont really know when will windows have a fix,it haven't usable since the first release with a lot of render bug, i love opencode as because it is good while i was using wsl2 but want to use it on windows to sync with my workflow since claude code not supported .

    https://www.reddit.com/r/ClaudeAI/comments/1lxlezn/they_just_casually_dropped_support_for_windows/

    (Dropped means added in gen z speak apparently)

  16. 208 remaining items

  17. Nivarrym commented on Feb 11, 2026

    @Nivarrym

    @Branskugel I am unable to repro - are you able to attach a quick video of the issue?

    Yeah, I'm afraid my report was incomplete: the problem occurs in powershell 7 wrapped with wezterm nightly, my apologies.

    1. Open Wezterm
    2. type 'opencode' to launch
    3. type '/exit' in user prompt, press enter
    4. check windows task manager - opencode.exe no longer there
    2026-02-11.13-07-13.mp4

    Here's text of the response:

    ⚠️ Process "pwsh -NoLogo -NoExit" in domain "local" didn't exit cleanly
    Exited with code 2148734499.
    This message is shown because exit_behavior="CloseOnCleanExit"

  18. gimlichael commented on Feb 12, 2026

    @gimlichael

    Could you guys consider supporting an additional "remote script execution" for Windows?

    E.g., to complement curl -fsSL https://opencode.ai/install | bash you add this for Windows: irm https://opencode.ai/install.ps1 | iex or iwr https://opencode.ai/install.ps1 | iex.

    This would greatly help onboarding "us" from the Windows side of things and i have seen this pattern on many of the well established app providers.

    Invoke-RestMethod: https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/invoke-restmethod?view=powershell-7.5

    Invoke-WebRequest: https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/invoke-webrequest?view=powershell-7.5

  19. csfercoci commented on Feb 14, 2026

    @csfercoci

    same issue with copy past on linux debian

  20. DEAN-Cherry commented on Feb 20, 2026

    @DEAN-Cherry

    @Branskugel I am unable to repro - are you able to attach a quick video of the issue?

    Yeah, I'm afraid my report was incomplete: the problem occurs in powershell 7 wrapped with wezterm nightly, my apologies.

    1. Open Wezterm
    
    2. type 'opencode' to launch
    
    3. type '/exit' in user prompt, press enter
    
    4. check windows task manager - opencode.exe no longer there
    

    2026-02-11.13-07-13.mp4

    Here's text of the response:

    ⚠️ Process "pwsh -NoLogo -NoExit" in domain "local" didn't exit cleanly
    Exited with code 2148734499.
    This message is shown because exit_behavior="CloseOnCleanExit"

    same for me. if u enter a session then use /exit it may close regularly on wezterm. However, this works well on Windows Terminal

  21. tppawelgrzesik commented on Mar 4, 2026

    @tppawelgrzesik

    Is change detection suppose to work with Windows now when using the Desktop app?

    I'm on Windows 11, using latest Desktop app v1.2.17, tried both Electron and normal version.
    And for me change detection is still completely broken.
    All my colleagues tell me the same.

    The review tab stays empty no matter what.

  22. uplg commented on Mar 4, 2026

    @uplg

    On Windows 11, in Windows Terminal, can't access agents output since the last update. Not clickable anymore. And Ctrl+X Down isn't working for me.

    EDIT : It works but you have to make Ctrl+X THEN down :')

  23. jax0m commented on Mar 7, 2026

    @jax0m

    Massively easier (and safer than adding an ExecutionPolicy Bypass) for installation overall is to leverage the inbuilt cli tool (winget) for installation.

    winget install SST.opencode

    Though... I would recommend considering renaming the desktop version so the cli could be installed a little easier because when running winget install opencode you get:

    Multiple packages found matching input criteria. Please refine the input.
    Name     Id                  Source
    -----------------------------------
    OpenCode SST.OpenCodeDesktop winget
    opencode SST.opencode        winget
    
  24. tppawelgrzesik commented on Mar 24, 2026

    @tppawelgrzesik

    @Hona @adamdotdevin @thdxr just want to make you aware that change detection still not working for our project on Windows 11.
    OpenCode Desktop
    v1.3.0

    Is there a ticket to track the status of this?

  25. PierrunoYT commented on Mar 27, 2026

    @PierrunoYT
  26. thdxr commented on Apr 2, 2026

    @thdxr
    MemberAuthor

    closing this mega issue in favor of smaller ones.

  27. unpinned this issue on Apr 2, 2026
  28. bramburn commented on Apr 2, 2026

    @bramburn
  29. ADiv0viDA commented on May 19, 2026

    @ADiv0viDA

    Windows Terminal, WSL1, i find shortcuts absolutely annoying, i keep using my 40-years-usual shortcuts and most of all don't work or even worse :

    • CTRL+C makes me quit the app many times a day... (CTRL+X, CTRL+C, CTRL+V are windows standards...)
    • Home, End, Page Up, Page Down : doesn't behave as i use to use them for (navigation inside my prompt)
    • i also don't know how to create a new line in my prompt (how many times did i send the prompt instead of creating a new line with Enter or CTRL+Enter).

    I love the app but, in its current state, shortcuts UX is a real messy PITA.
    Would it be possible to have presets of shortcuts or at least to switch from Linux to Windows shortcuts in settings ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions