refactor: 移除代理检测逻辑(WSL2 镜像模式自动继承 Windows 代理)
WSL2 mirror mode + autoProxy=true 下,WSL2 自动继承 Windows 代理状态 无需脚本干预,是否使用代理由 Windows 侧决定 移除内容: - -ProxyPort 参数 - Get-V2RayNProxyPort / Set-WindowsProxy / Clear-WindowsProxy 函数 - Step 0 代理检测配置块 - ~/.mcp-proxy.env 生成及所有 source 调用 - git proxy save/restore 逻辑 - npm proxy 配置 - 最终摘要代理信息行 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
WSL2 + Claude Code CLI + Unity MCP + Rust Token Killer **全栈一键部署方案**,适用于 Windows 11 开发环境。
|
||||
|
||||
支持 **v2rayN 代理自动检测**、**WSL2 代理透传**、**防火墙自动放行**。
|
||||
支持 **WSL2 镜像网络模式**(`autoProxy=true`),WSL2 自动继承 Windows 代理状态,无需脚本干预。
|
||||
|
||||
## 组件清单
|
||||
|
||||
@@ -47,14 +47,8 @@ cd path\to\claude-dev-stack
|
||||
cp .env.example .env
|
||||
notepad .env
|
||||
|
||||
# 3. 运行部署脚本(灵眸模式自动跳过代理检测)
|
||||
# 3. 运行部署脚本
|
||||
pwsh .\deploy.ps1
|
||||
|
||||
# 手动指定代理端口(使用官方 Anthropic API 时需要)
|
||||
pwsh .\deploy.ps1 -ProxyPort 10809
|
||||
|
||||
# 不使用代理(直连)
|
||||
pwsh .\deploy.ps1 -ProxyPort -1
|
||||
```
|
||||
|
||||
首次安装 WSL2 特性后可能需要**重启系统**,重启后重新执行脚本。
|
||||
@@ -71,45 +65,25 @@ pwsh .\deploy.ps1 -SkipWSL
|
||||
# 在 WSL2 Ubuntu 终端中执行
|
||||
cp .env.example .env
|
||||
nano .env
|
||||
# 如需代理(端口由 deploy.ps1 写入 ~/.mcp-proxy.env,或手动指定)
|
||||
PROXY_PORT=10809 bash wsl-setup.sh
|
||||
bash wsl-setup.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 代理说明(v2rayN)
|
||||
## 代理说明
|
||||
|
||||
### 自动检测顺序
|
||||
### WSL2 镜像模式自动继承 Windows 代理
|
||||
|
||||
1. Windows 系统代理注册表(v2rayN「设为系统代理」时写入)
|
||||
2. v2rayN 配置文件(`%APPDATA%\v2rayN\guiNConfig.json`)
|
||||
3. 探测常用端口:`10809, 10808, 7890, 1080, 8080`
|
||||
脚本自动配置 `~/.wslconfig` 启用 WSL2 镜像网络模式:
|
||||
|
||||
### WSL2 代理透传原理
|
||||
|
||||
```
|
||||
WSL2 Ubuntu
|
||||
→ [Windows 主机 vEthernet(WSL) IP]:10809
|
||||
→ v2rayN
|
||||
→ 互联网
|
||||
```ini
|
||||
[wsl2]
|
||||
networkingMode=mirrored
|
||||
autoProxy=true
|
||||
```
|
||||
|
||||
**必须**在 v2rayN 中开启:
|
||||
> 参数设置 → **「允许来自局域网的连接」** ✅
|
||||
|
||||
脚本自动完成:
|
||||
- 写入 WSL2 `~/.mcp-proxy.env`(每次 shell 启动自动生效)
|
||||
- 配置 WSL2 `git` + `npm` 代理
|
||||
- `apt-get` 安装阶段同样走代理
|
||||
|
||||
### 代理覆盖范围
|
||||
|
||||
| 操作 | 是否走代理 |
|
||||
|------|-----------|
|
||||
| Windows `git clone` / `npm install` | ✅ |
|
||||
| WSL2 `apt-get` / `git clone` / `npm install` / `cargo install` | ✅ |
|
||||
| MCP Server ↔ AI 客户端(stdio) | ❌ 本地通信,无需代理 |
|
||||
| MCP Server ↔ Unity Plugin(localhost) | ❌ 本地通信,无需代理 |
|
||||
`autoProxy=true` 下,WSL2 自动继承 Windows 系统代理状态。
|
||||
**是否使用代理由 Windows 侧决定**(例如通过 v2rayN「设为系统代理」),无需脚本干预。
|
||||
|
||||
---
|
||||
|
||||
@@ -133,7 +107,6 @@ WSL2 Ubuntu
|
||||
> | `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | `1` | 关闭遥测/自动更新检查 |
|
||||
>
|
||||
> - Token 写入 `settings.json` 的 `env` 块(不写入 `~/.bashrc`,避免与 `ANTHROPIC_API_KEY` 冲突)
|
||||
> - 部署脚本自动跳过代理检测(国内直连无需代理)
|
||||
> - 旧 `ANTHROPIC_API_KEY` / `ANTHROPIC_BASE_URL` 变量从 `~/.bashrc` 自动清除
|
||||
|
||||
### 备选:Anthropic 官方 API
|
||||
@@ -367,19 +340,17 @@ wsl -d Ubuntu -- bash -c "cd ~/.mcp-servers/unity-mcp-server && git pull && npm
|
||||
|
||||
**问题:npm install 安装超时(国内网络)**
|
||||
```bash
|
||||
# 方案一:通过 v2rayN 代理(推荐)
|
||||
pwsh .\deploy.ps1 -ProxyPort 10809
|
||||
|
||||
# 方案一:在 Windows 侧开启系统代理(v2rayN「设为系统代理」),WSL2 自动继承
|
||||
# 方案二:WSL2 内配置镜像
|
||||
npm config set registry https://registry.npmmirror.com
|
||||
```
|
||||
|
||||
**问题:WSL2 无法连接 v2rayN 代理**
|
||||
**问题:WSL2 无法访问外网**
|
||||
```
|
||||
解决:
|
||||
1. v2rayN → 参数设置 → 勾选「允许来自局域网的连接」
|
||||
2. 确认防火墙未拦截 v2rayN 监听端口
|
||||
3. WSL2 内测试:curl -I https://github.com --proxy http://$(ip route | grep default | awk '{print $3}'):10809
|
||||
1. 确认 Windows 侧代理已开启系统代理(v2rayN → 参数设置 → 勾选「允许来自局域网的连接」)
|
||||
2. 确认 ~/.wslconfig 包含 networkingMode=mirrored 和 autoProxy=true
|
||||
3. 重启 WSL2:wsl --shutdown,再重新启动
|
||||
```
|
||||
|
||||
**问题:Unity 版本兼容性**
|
||||
|
||||
Reference in New Issue
Block a user