Buckets:
| --- | |
| title: Windows (WSL) | |
| description: Run OpenCode on Windows using WSL for the best experience. | |
| --- | |
| import { Steps } from "@astrojs/starlight/components" | |
| While OpenCode can run directly on Windows, we recommend using [Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install) for the best experience. WSL provides a Linux environment that works seamlessly with OpenCode's features. | |
| WSL?] | |
| WSL offers better file system performance, full terminal support, and compatibility with development tools that OpenCode relies on. | |
| --- | |
| ## Setup | |
| <Steps> | |
| 1. **Install WSL** | |
| If you haven't already, [install WSL](https://learn.microsoft.com/en-us/windows/wsl/install) using the official Microsoft guide. | |
| 2. **Install OpenCode in WSL** | |
| Once WSL is set up, open your WSL terminal and install OpenCode using one of the [installation methods](/docs/). | |
| ```bash | |
| curl -fsSL https://opencode.ai/install | bash | |
| ``` | |
| 3. **Use OpenCode from WSL** | |
| Navigate to your project directory (access Windows files via `/mnt/c/`, `/mnt/d/`, etc.) and run OpenCode. | |
| ```bash | |
| cd /mnt/c/Users/YourName/project | |
| opencode | |
| ``` | |
| </Steps> | |
| --- | |
| ## Desktop App + WSL Server | |
| If you prefer using the OpenCode Desktop app but want to run the server in WSL: | |
| 1. **Start the server in WSL** with `--hostname 0.0.0.0` to allow external connections: | |
| ```bash | |
| opencode serve --hostname 0.0.0.0 --port 4096 | |
| ``` | |
| 2. **Connect the Desktop app** to `http://localhost:4096` | |
| If `localhost` does not work in your setup, connect using the WSL IP address instead (from WSL: `hostname -I`) and use `http://<wsl-ip>:4096`. | |
| When using `--hostname 0.0.0.0`, set `OPENCODE_SERVER_PASSWORD` to secure the server. | |
| ```bash | |
| OPENCODE_SERVER_PASSWORD=your-password opencode serve --hostname 0.0.0.0 | |
| ``` | |
| --- | |
| ## Web Client + WSL | |
| For the best web experience on Windows: | |
| 1. **Run `opencode web` in the WSL terminal** rather than PowerShell: | |
| ```bash | |
| opencode web --hostname 0.0.0.0 | |
| ``` | |
| 2. **Access from your Windows browser** at `http://localhost:<port>` (OpenCode prints the URL) | |
| Running `opencode web` from WSL ensures proper file system access and terminal integration while still being accessible from your Windows browser. | |
| --- | |
| ## Accessing Windows Files | |
| WSL can access all your Windows files through the `/mnt/` directory: | |
| - `C:` drive → `/mnt/c/` | |
| - `D:` drive → `/mnt/d/` | |
| - And so on... | |
| Example: | |
| ```bash | |
| cd /mnt/c/Users/YourName/Documents/project | |
| opencode | |
| ``` | |
| For the smoothest experience, consider cloning/copying your repo into the WSL filesystem (for example under `~/code/`) and running OpenCode there. | |
| --- | |
| ## Tips | |
| - Keep OpenCode running in WSL for projects stored on Windows drives - file access is seamless | |
| - Use VS Code's [WSL extension](https://code.visualstudio.com/docs/remote/wsl) alongside OpenCode for an integrated development workflow | |
| - Your OpenCode config and sessions are stored within the WSL environment at `~/.local/share/opencode/` | |
Xet Storage Details
- Size:
- 3.05 kB
- Xet hash:
- f55573c28fe7814a0ceb9f0da073b325274c71e7ac5a4753d2e0292d023edff3
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.