mirror of
https://github.com/anomalyco/opencode.git
synced 2026-05-03 19:26:41 +00:00
113 lines
3.1 KiB
Plaintext
113 lines
3.1 KiB
Plaintext
---
|
||
title: Windows (WSL)
|
||
description: 通过 WSL 在 Windows 上运行 OpenCode 以获得最佳体验。
|
||
---
|
||
|
||
import { Steps } from "@astrojs/starlight/components"
|
||
|
||
虽然 OpenCode 可以直接在 Windows 上运行,但我们推荐使用 [Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install) 以获得最佳体验。WSL 提供了一个 Linux 环境,能够与 OpenCode 的各项功能无缝配合。
|
||
|
||
:::tip[为什么选择 WSL?]
|
||
WSL 提供更出色的文件系统性能、完整的终端支持,以及与 OpenCode 所依赖的开发工具的良好兼容性。
|
||
:::
|
||
|
||
---
|
||
|
||
## 安装配置
|
||
|
||
<Steps>
|
||
|
||
1. **安装 WSL**
|
||
|
||
如果尚未安装,请参照 Microsoft 官方指南[安装 WSL](https://learn.microsoft.com/en-us/windows/wsl/install)。
|
||
|
||
2. **在 WSL 中安装 OpenCode**
|
||
|
||
WSL 设置完成后,打开 WSL 终端,使用任一[安装方式](/docs/)安装 OpenCode。
|
||
|
||
```bash
|
||
curl -fsSL https://opencode.ai/install | bash
|
||
```
|
||
|
||
3. **从 WSL 中使用 OpenCode**
|
||
|
||
导航到你的项目目录(通过 `/mnt/c/`、`/mnt/d/` 等路径访问 Windows 文件),然后运行 OpenCode。
|
||
|
||
```bash
|
||
cd /mnt/c/Users/YourName/project
|
||
opencode
|
||
```
|
||
|
||
</Steps>
|
||
|
||
---
|
||
|
||
## 桌面应用 + WSL 服务器
|
||
|
||
如果你希望使用 OpenCode 桌面应用,同时在 WSL 中运行服务器:
|
||
|
||
1. **在 WSL 中启动服务器**,添加 `--hostname 0.0.0.0` 以允许外部连接:
|
||
|
||
```bash
|
||
opencode serve --hostname 0.0.0.0 --port 4096
|
||
```
|
||
|
||
2. **在桌面应用中连接到** `http://localhost:4096`
|
||
|
||
:::note
|
||
如果 `localhost` 在你的环境中无法使用,请改用 WSL 的 IP 地址进行连接(在 WSL 中运行:`hostname -I`),使用 `http://<wsl-ip>:4096`。
|
||
:::
|
||
|
||
:::caution
|
||
使用 `--hostname 0.0.0.0` 时,请设置 `OPENCODE_SERVER_PASSWORD` 以保护服务器安全。
|
||
:::
|
||
|
||
```bash
|
||
OPENCODE_SERVER_PASSWORD=your-password opencode serve --hostname 0.0.0.0
|
||
```
|
||
|
||
---
|
||
|
||
## Web 客户端 + WSL
|
||
|
||
要在 Windows 上获得最佳的 Web 体验:
|
||
|
||
1. **在 WSL 终端中运行 `opencode web`**,而非在 PowerShell 中运行:
|
||
|
||
```bash
|
||
opencode web --hostname 0.0.0.0
|
||
```
|
||
|
||
2. **在 Windows 浏览器中访问** `http://localhost:<port>`(OpenCode 会输出该 URL)
|
||
|
||
从 WSL 中运行 `opencode web` 可确保正确的文件系统访问和终端集成,同时仍可通过 Windows 浏览器进行访问。
|
||
|
||
---
|
||
|
||
## 访问 Windows 文件
|
||
|
||
WSL 可以通过 `/mnt/` 目录访问你的所有 Windows 文件:
|
||
|
||
- `C:` 盘 → `/mnt/c/`
|
||
- `D:` 盘 → `/mnt/d/`
|
||
- 其他盘符以此类推...
|
||
|
||
示例:
|
||
|
||
```bash
|
||
cd /mnt/c/Users/YourName/Documents/project
|
||
opencode
|
||
```
|
||
|
||
:::tip
|
||
为了获得更流畅的体验,建议将仓库克隆或复制到 WSL 文件系统中(例如 `~/code/` 目录下),然后在该位置运行 OpenCode。
|
||
:::
|
||
|
||
---
|
||
|
||
## 使用技巧
|
||
|
||
- 对于存储在 Windows 驱动器上的项目,在 WSL 中运行 OpenCode 即可无缝访问文件
|
||
- 搭配 VS Code 的 [WSL 扩展](https://code.visualstudio.com/docs/remote/wsl) 使用 OpenCode,打造一体化的开发工作流
|
||
- OpenCode 的配置和会话数据存储在 WSL 环境中的 `~/.local/share/opencode/`
|