Claude code在Windows上的配置流程
前言
昨天在服务器上配置好了 Claude code,发现其编码性能和效率都非常不错。
然而,尝试用它修改带 UI 界面的客户端程序时颇为不便,因为服务器没有图形化界面,无法直接将应用界面直接显示到开发机上,调试起来颇为不便。
因此,本文在 windows 系统上部署 Claude code,让开发体验更为丝滑。
WSL方案
由于 Claude code(原本) 只支持 Linux 和 MacOS 系统,因此在 windows 中可以通过 WSL 配置一套 Ubuntu 系统。
当然,也可以用 VMvare 这类虚拟机软件,但性能开销比 windows 自带的 wsl 高很多。
首先可以在 windows 的微软商店中下载 ubuntu 系统,这里以Ubuntu 22.04
为例,其它系统也可以。
也可以直接用 wsl 安装,但我的 win10系统用wsl直接安装存在一点小问题,于是选择直接在商店下载安装。
wsl --install -d Ubuntu-22.04
安装完后,重启电脑,进入软件界面,会提示新建用户名和密码。
之后,在 Cursor 中,安装一个 WSL 的插件。
安装完后,就可以直接打开 WSL 的终端,它会自动将当前项目挂载到系统中。
然后,就可以参照前文,到镜像站去创建key,进行相同步骤的配置。
镜像站地址:https://anyrouter.top/register?aff=kUGb
配置完之后,它就能正确读取文件内容。
Windows原生部署方案
然而,当我折腾完时,突然发现它的更新公告:
What's new:• Added support for native Windows (requires Git for Windows)• Added support for Bedrock API keys through environment variable AWS_BEARER_TOKEN_BEDROCK• Settings: /doctor can now help you identify and fix invalid setting files• `--append-system-prompt` can now be used in interactive mode, not just --print/-p.• Increased auto-compact warning threshold from 60% to 80%
它现在可以直接原生支持windows系统了。
在安装号 npm 的前提下,可以直接安装:
npm install -g @anthropic-ai/claude-code --ignore-scripts
安装完后,用命令启动:
npx win-claude-code@latest
如果能正常启动,参照前文相同的方式配置环境变量,就可以再终端使用了。
由于 windows 的启动命令和其它系统有所不同,可以创建一个别名。
在用户目录下创建一个claude.bat
输入以下内容:
@echo off
npx win-claude-code@latest %*
保存后,将该路径添加到用户Path
环境变量。
重启终端,就可以直接用claude
启动了。
配置完后,就可以优雅得在 Cursor 中搭配使用。
Claude code 使用技巧
参考 Claude 官方文档,在让它修改代码前,建议让它先熟悉一下项目文件,对后续提问创造有利的上下文条件。
此外,CLI 还有以下参考命令和参数,可以应对会话恢复、权限跳过等常用情况。
CLI 命令参考:
命令 | 描述 | 示例 |
---|---|---|
claude | 启动交互式 REPL | claude |
claude "query" | 启动 REPL,并使用初始提示词 | claude "explain this project" |
claude -p "query" | 使用 SDK 查询并退出 | claude -p "explain this function" |
cat file | claude -p "query" | 处理管道内容 | cat logs.txt | claude -p "explain" |
claude -c | 继续最近的一次对话 | claude -c |
claude -c -p "query" | 使用 SDK 继续最近对话 | claude -c -p "Check for type errors" |
claude -r "<session-id>" "query" | 通过 ID 恢复对话会话 | claude -r "abc123" "Finish this PR" |
claude update | 更新到最新版本 | claude update |
claude mcp | 配置 Model Context Protocol (MCP) 服务器 | 详见 Claude Code MCP 文档 |
CLI 参数:
参数(Flag) | 描述 | 示例 |
---|---|---|
--add-dir | 添加 Claude 可以访问的额外工作目录(路径必须为有效目录) | claude --add-dir ../apps ../lib |
--allowedTools | 设置无需提示即可允许使用的工具列表(可配合 settings.json 使用) | "Bash(git log:*)" "Bash(git diff:*)" "Read" |
--disallowedTools | 设置无需提示即可禁止使用的工具列表(可配合 settings.json 使用) | "Bash(git log:*)" "Bash(git diff:*)" "Edit" |
--print , -p | 以非交互模式输出 Claude 响应(适合脚本使用,详见 SDK 文档) | claude -p "query" |
--output-format | 指定输出格式(可选项:text 、json 、stream-json ) | claude -p "query" --output-format json |
--input-format | 指定输入格式(可选项:text 、stream-json ) | claude -p --output-format json --input-format stream-json |
--verbose | 启用详细日志模式,显示完整交互过程(调试推荐) | claude --verbose |
--max-turns | 在非交互模式下限制 Agent 回合数 | claude -p --max-turns 3 "query" |
--model | 设置当前会话所使用的模型(如 sonnet 、opus 或模型全名) | claude --model claude-sonnet-4-20250514 |
--permission-mode | 启动时设置权限模式(详见权限模式文档) | claude --permission-mode plan |
--permission-prompt-tool | 在非交互模式下指定一个 MCP 工具来处理权限请求提示 | claude -p --permission-prompt-tool mcp_auth_tool "query" |
--resume | 恢复指定会话(通过 ID 或交互方式选择) | claude --resume abc123 "query" |
--continue | 在当前目录加载最近对话 | claude --continue |
--dangerously-skip-permissions | 跳过权限请求提示(请谨慎使用) | claude --dangerously-skip-permissions |