Windows 11 下使用 Kimi K2 和 Anyrouter 驱动 Claude Code,并切换

告别WSL!在原生Windows上流畅使用Claude Code CLI的终极指南 (2025版)

好消息! 各位Windows用户,如果你一直因为需要WSL(Windows Subsystem for Linux)而对Claude Code CLI望而却步,现在可以彻底解放了。只需稍作配置,就能在Windows原生的命令提示符(CMD)或PowerShell中完美运行Claude,并能灵活接入如月之暗面(Kimi)、AnyRouter等第三方服务。关于 claude code 的安装,网上已有教程,不再赘述。有 node 环境的话,npm install @anthropic-ai/claude-code -g --registry=https://registry.npmmirror.com

本文将为你提供一份详尽的指南,纠正一些过时的信息,解决常见问题,并附赠一个强大的多配置切换工具,让你的AI编程体验更上一层楼。


一、核心问题:网络限制与配置方法

当你首次在原生Windows环境中运行 claude 时,最可能遇到的就是网络连接错误。这是因为CLI默认连接Anthropic的官方服务器,这在很多地区可能无法访问。
`
✻ Welcome to Claude Code │
╰──────────────────────────╯

Unable to connect to Anthropic services

Failed to connect to api.anthropic.com: ECONNRESET

Please check your internet connection and network settings.

Note: Claude Code might not be available in your country. Check supported countries at
https://anthropic.com/supported-countries
`
image
解决方案是将CLI指向一个可用的代理服务。你有两种主流方法来配置,推荐第一种。

方法一:环境变量(推荐,最灵活)

通过设置环境变量,可以临时或永久地改变CLI的行为。关键变量已从旧的 ANTHROPIC_AUTH_TOKEN 更新为 ANTHROPIC_API_KEY

  • ANTHROPIC_API_KEY: 你的API密钥。
  • ANTHROPIC_BASE_URL: 你选择的服务提供商的API基地址。

临时设置 (仅对当前CMD窗口有效):

set ANTHROPIC_API_KEY=sk-xxxxxxxxxxxxxxxxxx
set ANTHROPIC_BASE_URL=https://api.moonshot.cn/anthropic

**或者使用 PowerShell

$env:ANTHROPIC_API_KEY = "anyrouter_api_key"
$env:ANTHROPIC_BASE_URL = "https://anyrouter.top"

也可用 powershell 的 [Environment]::SetEnvironmentVariable 或者命令行的 setx 设置系统级长期变量

方法二:settings.json 配置文件 (持久化)

你可以在项目文件夹中创建一个名为 .claude 的子文件夹,并在其中放置一个 settings.json 文件来为该项目进行持久化配置。

路径: 你的项目文件夹/.claude/settings.json

示例 settings.json 内容:

{
"env": {
"ANTHROPIC_API_KEY": "sk-xxxxxxxxxxxxxxxxxx",
"ANTHROPIC_BASE_URL": "https://api.moonshot.cn/anthropic",
"CLAUDE_CODE_MAX_OUTPUT_TOKENS": 32000,
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1
}
}

注意:配置文件中的 env 设置会覆盖系统级的环境变量,为你提供了项目级的精确控制。
如果使用了环境变量,依旧还是先前的提示,可以考虑在%userprofile%目录下,也就是你的用户名路径下(比如c:\users\your_name)手动创建 .claude.json文件
如果存在.calude.json,可以先重命名,然后写入类似下面的内容

{
"env": {
    "ANTHROPIC_BASE_URL": "<CUSTOM_URL>",
    "ANTHROPIC_AUTH_TOKEN": "<YOUR_API_KEY>"
}
}

再运行 claude ,如果成功,过一会会看到.claude.json中的配置信息不见了,取而代之的是有很多 project 相关的。
如果还是之前的提示,使用外网,依然有

image
╭──────────────────────────╮
│ ✻ Welcome to Claude Code │
╰──────────────────────────╯

✢ Checking connectivity...

╭──────────────────────────╮
│ ✻ Welcome to Claude Code │
╰──────────────────────────╯

 Let's get started.

 Choose the text style that looks best with your terminal:
 To change this later, run /theme

 ❯ 1. Dark mode✔
   2. Light mode
   3. Dark mode (colorblind-friendly)
   4. Light mode (colorblind-friendly)
   5. Dark mode (ANSI colors only)
   6. Light mode (ANSI colors only)


 Preview
 ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
 │   1   function greet() {                                                                                                                                                          │
 │   2 -    console.log("Hello, World!");                                                                                                                                            │
 │   2 +    console.log("Hello, Claude!");                                                                                                                                           │
 │   3   }                                                                                                                                                                           │
 ╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
 Claude Code can now be used with your Claude subscription or billed based on API usage through your Console account.


 Select login method:

   1. Claude account with subscription
    Starting at $20/mo for Pro, $100/mo for Max - Best value, predictable pricing

 ❯ 2. Anthropic Console account
    API usage billing

则可以多设置几次.claude.json文件,每次未必相同,也可以把 env的section 设置到已存在的.claude.json的projects的section前面,而不必完全重写.claude.json。
Windows 下,不用 WSL 的话,一般需要安装 Git For Windows。然后设置 set BASH="C:\Program Files\Git\bin\bash.exe",接着修改.claude.json,接着在设置了bash变量的终端运行claude命令看看,是否出现claude的一些设置项。

如果不成功,可以多试两次,笔者在 win10 系统安装node,安装git-bash,设置BASH变量(添加Git及bin路径到系统PATH可以以后再设置),设置.claude.json文件两次,一次带ANTHROPIC_API_KEY,另一次则是换成了ANTHROPIC_AUTH_TOKEN,然后claude通过一些设置就可以了。即便没有真实的key,也没关系,只要是合法的json格式,没有更多设置。
之前一直出现claude not work,但是 claude -d -p "hello"是OK的,也试过 禁用遥测 set DISABLE_TELEMETRY=1,但似乎没有效果。


二、测试你的配置

当你首次配置好一个新服务时(例如Kimi),可以使用 --debug--print 参数来快速测试连接是否成功,而无需进入完整的交互模式。

claude --debug --print "hello world"

查看返回的调试信息,如果一切正常,你将看到请求成功发送到你配置的 BASE_URL 并收到模型的回复。


三、理解并管理“安全提示”

首次在某个文件夹中运行 claude 时,你会看到一个请求文件读写权限的安全提示。

这个行为是可控的。当你同意后,CLI会记住你的选择,通常通过以下几种方式之一:

claude.json 文件: 在你的用户配置目录中(例如 C:\Users\YourUserName\.claude.json),可能会生成类似下面的记录,标记某个项目文件夹为“已信任”。

{
"projects": {
"C:\Users\YourUserName\my_project": {
"hasTrustDialogAccepted": "true"
}
}
}

settings.local.json 文件: 这是更高级的用法。你可以在项目文件夹的 .claude 目录中创建一个 settings.local.json 文件,预先授予权限,从而完全跳过安全提示。

{
"permissions": {
"allow": [
"Read(*)",
"Search(*)",
"Edit(*)",
"Write(*)"
]
}
}

这会允许Claude在该项目中执行所有基本的文件操作。


四、终极工具:多配置一键切换脚本

对于需要频繁切换多个服务的用户,使用环境变量法会比较繁琐。下面的批处理脚本可以让你通过菜单或命令一键切换。

准备工作:

创建配置目录: 在你的用户文件夹(%USERPROFILE%)下创建一个名为 .claude-env 的文件夹。

创建配置文件: 在 .claude-env 文件夹中,为每个服务创建一个 .env.服务名或者服务名.txt 格式的文本文件。

配置文件模板 (.env.kimi)或者(moonshot.txt):


#描述,方便自己识别
DESCRIPTION=Moonshot AI (Kimi)
#你的API密钥(请替换)
ANTHROPIC_API_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
#API基地址
ANTHROPIC_BASE_URL=https://api.moonshot.cn/anthropic

Kimi用户小贴士: 建议账户充值50元以上,以获得更高的 RPM(每分钟请求数),避免在连续使用时出现速率限制错误。

moonshot kimi 平台的 key 的查看链接是 platform.moonshot.cn
anyrouter 的邀请链接是 anyrouter.top

.env.anyrouter 或 anyrouter.txt 的设置也如法炮制

# Description
DESCRIPTION=AnyRouter Proxy Service

# API Configuration
ANTHROPIC_API_KEY=sk-yourkey
ANTHROPIC_BASE_URL=https://anyrouter.top

# Optional Settings
# ANTHROPIC_API_VERSION=2023-06-01
# ANTHROPIC_MAX_TOKENS=4000
# ANTHROPIC_TIMEOUT=60

一键切换脚本 (claude_interactive.bat):

将以下代码保存为 claude_interactive.bat 文件,记得要以 GBK/ANSI 方式编码保存。

@echo off

rem claude_interactive.bat - 交互式选择Claude配置

:menu
cls
echo ============================================
echo           Claude CLI 配置选择器
echo ============================================
echo,
echo 当前配置:
if defined ANTHROPIC_API_KEY (
    echo   API Key: %ANTHROPIC_API_KEY:~0,8%...
) else (
    echo   API Key: 未设置
)
if defined ANTHROPIC_BASE_URL (
    echo   Base URL: %ANTHROPIC_BASE_URL%
) else (
    echo   Base URL: 默认 (Anthropic)
)
echo,
echo 请选择配置:
echo,
echo [1] Moonshot AI (月之暗面)
echo [2] AnyRouter 代理服务
echo [3] Anthropic 官方
echo [4] 查看所有可用配置文件
echo [5] 退出
echo,
set /p choice=请输入选择 (1-5):

if "%choice%"=="1" goto moonshot
if "%choice%"=="2" goto anyrouter
if "%choice%"=="3" goto anthropic
if "%choice%"=="4" goto listfiles
if "%choice%"=="5" goto exit
echo 无效选择,请重试...
pause
goto menu

:moonshot
echo,
echo 正在加载 Moonshot AI 配置...
set "config_file=%USERPROFILE%\.claude-env\moonshot.txt"
if not exist "%config_file%" (
    echo 错误: 配置文件不存在: %config_file%
    pause
    goto menu
)
goto loadconfig

:anyrouter
echo,
echo 正在加载 AnyRouter 配置...
set "config_file=%USERPROFILE%\.claude-env\anyrouter.txt"
if not exist "%config_file%" (
    echo 错误: 配置文件不存在: %config_file%
    pause
    goto menu
)
goto loadconfig

:anthropic
echo,
echo 正在加载 Anthropic 官方配置...
set ANTHROPIC_API_KEY=your_anthropic_api_key_here
set ANTHROPIC_BASE_URL=
set DESCRIPTION=Anthropic Official
echo [注意] 请确保设置了真实的 Anthropic API Key
goto startclaude

:listfiles
echo,
echo 可用的配置文件:
dir /b *.txt 2>nul | findstr /E ".txt"
echo,
echo .claude-env 目录中的文件:
if exist "%USERPROFILE%\.claude-env" (
    dir /b "%USERPROFILE%\.claude-env\.env.*" 2>nul
) else (
    echo 目录不存在
)
echo,
pause
goto menu

:loadconfig
rem 清空变量
set ANTHROPIC_API_KEY=
set ANTHROPIC_BASE_URL=
set DESCRIPTION=

rem 读取配置文件
for /f "usebackq tokens=1,* delims==" %%a in ("%config_file%") do (
    if not "%%a"=="" if not "%%a:~0,1%"=="#" (
        if "%%a"=="ANTHROPIC_API_KEY" set ANTHROPIC_API_KEY=%%b
        if "%%a"=="ANTHROPIC_BASE_URL" set ANTHROPIC_BASE_URL=%%b
        if "%%a"=="DESCRIPTION" set DESCRIPTION=%%b
    )
)

echo [成功] 配置已加载:
echo   提供商: %DESCRIPTION%
echo   API Key: %ANTHROPIC_API_KEY:~0,8%...
echo   Base URL: %ANTHROPIC_BASE_URL%

:startclaude
echo,
echo 即将启动 Claude CLI...
echo,
rem set /p confirm=确认启动吗? (y/n):
rem if not "%confirm%"=="y" if not "%confirm%"=="Y" goto menu

echo,
echo 启动中...
claude
goto end

:exit
echo 退出程序
goto end

:end
echo,
pause

如何使用这个脚本:

  • 交互模式:直接运行 claude_interactive.bat,会出现菜单供你选择。

实测下来,国内用户使用 Kimi K2 驱动 claude code,效果相对还是可以的。

参考阅读
Without Star Default Tools Are Unsafe
How to stop Claude Code from asking for permission every time?
使用Kimi的最新模型(kimi-k2-0711-preview)驱动您的Claude Code。
国内用Claude Code的Kimi K2方案
Claude Code in Windows without WSL

posted @ 2025-07-13 12:26  geyee  阅读(4272)  评论(4)    收藏  举报