Windows 系统完整操作手册【Claude Code】
文章目录
一、系统要求与安装
1.1 系统要求
| 组件 | 要求 | 说明 |
|---|---|---|
| 操作系统 | Windows 10/11 | 必须使用 WSL2 (Windows Subsystem for Linux) |
| WSL | Ubuntu 20.04+ | 在 PowerShell 管理员模式下运行 wsl --install |
| Node.js | v18.0+ | 必须在 WSL 内部安装,不是 Windows 版 |
| Git | 任意版本 | 用于代码版本控制 |
| Ripgrep | 可选 | 提升代码搜索速度 |
1.2 安装 WSL2 (首次使用必需)
步骤 1:以管理员身份打开 PowerShell,运行:
wsl --install
- 这将安装 WSL2 和默认 Ubuntu 发行版
- 重启电脑后,Ubuntu 会自动启动并提示设置用户名密码
步骤 2:在 Ubuntu 中安装 Node.js:
# 更新包列表
sudo apt update
# 安装 Node.js 18+
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs
# 验证版本
node --version # 应显示 v18.x.x 或更高
npm --version
1.3 安装 Claude Code
方式一:官方安装脚本(推荐)
# 在 WSL Ubuntu 终端中运行
curl -fsSL https://claude.ai/install.sh | bash
方式二:通过 npm 安装
npm install -g @anthropic-ai/claude-code
方式三:Windows 原生安装(实验性)
# 在 PowerShell 中运行
irm https://claude.ai/install.ps1 | iex
⚠️ 注意:如果遇到执行策略错误,先运行:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
1.4 验证安装
# 检查版本
claude --version
# 诊断环境
claude doctor
二、认证与登录配置
Claude Code 需要付费订阅或 API 密钥才能使用。
2.1 认证方式选择
| 方式 | 适用场景 | 费用 |
|---|---|---|
| Claude Pro/Max | 个人开发,网页版用户 | $20-200/月 |
| Anthropic Console | API 调用,按量付费 | 按 token 计费 |
| Teams/Enterprise | 团队协作 | 联系销售 |
2.2 方式一:Claude Pro/Max 订阅(推荐个人用户)
步骤:
- 访问 claude.ai 注册账号
- 订阅 Pro ($20/月) 或 Max ($100-200/月) 计划
- 在 WSL 终端运行:
claude - 首次运行会自动打开浏览器 OAuth 登录
- 登录成功后,终端显示
✓ Authenticated as your-email@example.com
2.3 方式二:Anthropic Console API Key
步骤:
- 访问 console.anthropic.com
- 创建账号并启用计费
- 生成 API Key (格式:
sk-ant-api03-...) - 设置环境变量:
临时设置(当前会话):
export ANTHROPIC_API_KEY="sk-ant-api03-your-key-here"
永久设置(推荐):
# 编辑 ~/.bashrc 或 ~/.zshrc
echo 'export ANTHROPIC_API_KEY="sk-ant-api03-your-key-here"' >> ~/.bashrc
source ~/.bashrc
2.4 验证认证状态
claude /status
三、模型配置与切换
Claude Code 支持三种主力模型,适用于不同场景。
3.1 模型对比
| 模型 | 速度 | 智力 | 成本 | 最佳场景 |
|---|---|---|---|---|
| Haiku 4.5 | ⚡️ 极快 | 入门级 | 最低 💰 | 简单脚本、代码审查、快速迭代 |
| Sonnet 4.5 | 🚀 快 | 高级 (推荐) | 中等 💰💰 | 日常编程、多文件编辑、调试 |
| Opus 4.5 | 🐢 较慢 | 顶级 | 最高 💰💰💰 | 复杂架构、大规模重构、深度分析 |
3.2 启动时指定模型
# 使用 Sonnet 4.5(默认推荐)
claude --model claude-sonnet-4-5
# 使用 Haiku 4.5(轻量级任务)
claude --model claude-haiku-4-5
# 使用 Opus 4.5(复杂任务)
claude --model claude-opus-4-5
# 使用特定版本
claude --model claude-sonnet-4-20250514
3.3 会话中切换模型
在 Claude Code 交互界面中,输入:
/model sonnet # 切换到 Sonnet
/model haiku # 切换到 Haiku
/model opus # 切换到 Opus
3.4 设置默认模型
编辑配置文件 ~/.claude/settings.json:
{
"model": "claude-sonnet-4-5",
"maxTokens": 4096
}
3.5 环境变量配置模型
# 添加到 ~/.bashrc
export ANTHROPIC_DEFAULT_SONNET_MODEL=claude-sonnet-4-20250514
export ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-haiku-4-20250514
export ANTHROPIC_DEFAULT_OPUS_MODEL=claude-opus-4-20250514
四、MCP 服务器配置
MCP (Model Context Protocol) 是 Anthropic 推出的开放标准,用于连接外部工具和 API。
4.1 MCP 简介
作用:让 Claude Code 能够:
- 搜索网页 (Exa、Brave Search)
- 管理 GitHub 仓库
- 查询数据库 (PostgreSQL、MySQL)
- 集成 Salesforce、Slack 等 SaaS 平台
- 访问本地文件系统
4.2 MCP 配置文件位置
| 范围 | 文件路径 |
|---|---|
| 用户全局 | ~/.claude.json 或 ~/.mcp.json |
| 项目级 | .claude/mcp.json 或 .mcp.json |
4.3 常用 MCP 服务器配置示例
4.3.1 文件系统访问 (Filesystem)
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/home/username/projects",
"/home/username/documents"
]
}
}
}
4.3.2 GitHub 集成
{
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
}
}
}
}
获取 GitHub Token:
- 访问 GitHub Settings → Developer settings → Personal access tokens
- 生成 Token (需要
repo和read:org权限)
4.3.3 PostgreSQL 数据库
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-postgres",
"postgresql://localhost/mydb"
]
}
}
}
4.3.4 Web 搜索 (Exa)
{
"mcpServers": {
"exa": {
"command": "npx",
"args": [
"-y",
"exa-mcp"
],
"env": {
"EXA_API_KEY": "your-exa-api-key"
}
}
}
}
4.3.5 Brave 搜索
{
"mcpServers": {
"brave-search": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-brave-search"
],
"env": {
"BRAVE_API_KEY": "your-brave-api-key"
}
}
}
}
4.4 添加 MCP 服务器的 CLI 命令
# 添加 GitHub MCP
claude mcp add github npx -y @modelcontextprotocol/server-github
# 添加文件系统 MCP
claude mcp add filesystem npx -y @modelcontextprotocol/server-filesystem /path/to/allowed/dir
# 查看已添加的 MCP
claude mcp list
# 测试 MCP 连接
claude mcp test github
# 移除 MCP
claude mcp remove github
4.5 验证 MCP 状态
在 Claude Code 会话中输入:
/mcp
将显示所有已连接 MCP 服务器的状态和可用工具。
4.6 Salesforce MCP 示例(企业用户)
{
"mcpServers": {
"salesforce": {
"command": "npx",
"args": [
"-y",
"@salesforce/mcp",
"--orgs", "your-org-alias",
"--toolsets", "orgs,metadata,data,users",
"--allow-non-ga-tools"
]
}
}
}
五、Skills 技能系统
Skills 是可复用的工作流模板,通过 Markdown 文件定义。
5.1 Skills 文件位置
项目根目录/
├── .claude/
│ ├── skills/ # 技能定义目录
│ │ ├── code-review.md
│ │ ├── refactor-react.md
│ │ └── write-tests.md
│ └── settings.json # 配置文件
5.2 创建 Skill 文件
示例:React 组件重构技能
创建 .claude/skills/refactor-react.md:
# React Component Refactoring
将类组件重构为函数组件,使用 Hooks 替代生命周期方法。
## When to Use
- 遇到 legacy React 类组件
- 需要优化组件性能
- 迁移到现代 React 模式
## Process
1. **分析现有组件**:
- 列出所有 state 和 props
- 识别生命周期方法
- 标记副作用 (side effects)
2. **规划转换**:
- state → useState
- componentDidMount → useEffect
- componentWillUnmount → useEffect cleanup
- this.props → 直接解构参数
3. **执行重构**:
- 保持原有功能不变
- 添加 TypeScript 类型(如需要)
- 使用 React.memo 优化(如适用)
4. **验证**:
- 运行现有测试
- 检查 TypeScript 错误
- 手动测试关键路径
## Tools to Use
- Read/Write: 文件操作
- Bash: 运行测试 (npm test)
- WebSearch: 查询最新 React 模式(如需要)
## Output
- 重构后的函数组件文件
- 更新的测试文件(如需要)
- 重构说明文档

5.3 使用 Skills
在 Claude Code 会话中,输入斜杠命令:
/refactor-react
Claude 将自动按照 Skill 中定义的流程执行任务。
5.4 常用 Skill 模板
代码审查 Skill (.claude/skills/code-review.md)
# Code Review
执行全面的代码审查,检查质量、安全性和性能。
## When to Use
- Pull Request 审查
- 代码提交前自检
- 遗留代码评估
## Process
1. **静态分析**:
- 检查代码风格和格式
- 识别潜在 bug 和反模式
- 验证类型安全
2. **安全性检查**:
- 查找硬编码密钥
- 检查 SQL 注入风险
- 验证输入验证
3. **性能评估**:
- 识别不必要的重渲染
- 检查内存泄漏
- 评估算法复杂度
4. **可维护性**:
- 检查命名规范
- 评估函数长度和复杂度
- 验证注释质量
## Output
- 审查报告(按严重程度分类)
- 具体改进建议
- 重构示例代码

测试生成 Skill (.claude/skills/write-tests.md)
# Write Tests
为现有代码生成全面的单元测试和集成测试。
## When to Use
- 新功能开发后
- 遗留代码补测试
- TDD 开发流程
## Process
1. **分析代码**:
- 识别公共 API 和边界情况
- 确定依赖项和 mock 需求
- 选择测试框架 (Jest/Vitest/Playwright)
2. **生成测试**:
- 编写单元测试(覆盖率 >80%)
- 添加集成测试(关键路径)
- 包含边界情况和错误处理
3. **验证测试**:
- 运行测试确保通过
- 检查覆盖率报告
- 修复脆弱的测试
## Tools to Use
- Read: 分析源代码
- Write: 创建测试文件
- Bash: 运行测试套件
## Output
- 测试文件 (*.test.ts 或 *.spec.ts)
- 必要的 mock 和 fixture
- 覆盖率报告

六、Agents 智能体配置
Agents 是自主执行任务的 AI 实体,可以通过配置实现自动化工作流。
6.1 Agents 与 Skills 的区别
| 特性 | Skills | Agents |
|---|---|---|
| 触发方式 | 手动 (/command) | 自动或手动 |
| 自主性 | 按步骤执行 | 自主决策、循环执行 |
| 状态管理 | 无状态 | 可维护状态 |
| 适用场景 | 标准化流程 | 探索性、创造性任务 |
6.2 创建 Agent 配置
在项目根目录创建 .claude/agents/ 目录:
.claude/
├── agents/
│ ├── bug-bounty-agent.md
│ ├── doc-writer-agent.md
│ └── security-audit-agent.md
6.3 Agent 定义示例
Bug 修复 Agent (.claude/agents/bug-bounty-agent.md):
# Bug Bounty Agent
自主发现并修复代码库中的 bug。
## Role
你是一个专业的 bug 修复工程师,擅长:
- 静态代码分析
- 运行时错误诊断
- 自动化测试修复
## Goals
1. 扫描代码库识别潜在 bug
2. 复现并诊断问题根因
3. 实现修复方案
4. 验证修复不引入回归
## Constraints
- 每次修改后必须运行相关测试
- 不得修改没有测试覆盖的代码
- 重大变更需用户确认
## Tools
- Read/Write: 代码编辑
- Bash: 运行测试、git 操作
- WebSearch: 查询最佳实践
## Workflow
1. **Discovery**: 运行 linter 和类型检查,扫描错误
2. **Reproduction**: 创建最小复现案例
3. **Diagnosis**: 分析调用栈和依赖关系
4. **Fix**: 实施最小侵入性修复
5. **Verify**: 运行测试套件,确保通过
6. **Report**: 总结修复内容和验证结果
## Handoff
当遇到以下情况时,请求用户介入:
- 需要架构级重构
- 测试覆盖率不足 50%
- 涉及第三方 API 变更

6.4 启动 Agent
# 启动特定 Agent
claude --agent bug-bounty-agent
# 或在会话中切换
/agent bug-bounty-agent
6.5 Multi-Agent 协作配置
创建 .claude/agents/squad.md 定义多 Agent 团队:
# Development Squad
协调多个 Agent 完成复杂开发任务。
## Agents
- **Architect**: 负责技术设计和架构决策
- **Implementer**: 负责代码实现
- **Reviewer**: 负责代码审查和测试
- **Documenter**: 负责文档编写
## Workflow
1. Architect 分析需求并创建设计文档
2. Implementer 根据设计实现代码
3. Reviewer 审查代码并运行测试
4. Documenter 编写用户文档和 API 文档
## Handoff Rules
- Architect → Implementer: 设计文档完成
- Implementer → Reviewer: 功能实现完成
- Reviewer → Documenter: 代码合并到 main
- 任何 Agent 遇到阻塞: 升级给用户

七、Hooks 自动化钩子
Hooks 在特定生命周期事件自动执行命令,实现工作流自动化。
7.1 Hooks 配置位置
编辑 .claude/settings.json 或 ~/.claude/settings.json:
{
"hooks": {
"SessionStart": [],
"PreToolCall": [],
"PostToolUse": [],
"SessionEnd": []
}
}
7.2 生命周期事件说明
| 事件 | 触发时机 | 用途 |
|---|---|---|
| SessionStart | 会话开始时 | 环境检查、加载上下文、同步状态 |
| PreToolCall | 工具执行前 | 权限验证、安全检查、日志记录 |
| PostToolUse | 工具执行后 | 格式化、验证、通知、自动提交 |
| SessionEnd | 会话结束时 | 清理、总结、生成报告 |
7.3 实用 Hooks 配置示例
会话启动时检查环境
{
"hooks": {
"SessionStart": [
{
"type": "command",
"command": "git status",
"timeout": 5000
},
{
"type": "command",
"command": "npm --version && node --version",
"timeout": 5000
}
]
}
}
保存文件后自动格式化
{
"hooks": {
"PostToolUse": [
{
"matcher": "Write(*.ts)",
"hooks": [
{
"type": "command",
"command": "npx prettier --write $CLAUDE_FILE_PATH",
"timeout": 10000
}
]
},
{
"matcher": "Write(*.py)",
"hooks": [
{
"type": "command",
"command": "python -m black $CLAUDE_FILE_PATH",
"timeout": 10000
}
]
}
]
}
}
工具调用前安全检查
{
"hooks": {
"PreToolCall": [
{
"matcher": "Bash(rm *)",
"hooks": [
{
"type": "prompt",
"message": "⚠️ 即将执行删除操作,是否继续?"
}
]
}
]
}
}
7.4 高级 Hooks:自动 Git 提交
{
"hooks": {
"PostToolUse": [
{
"matcher": "Write(*)",
"hooks": [
{
"type": "command",
"command": "git add $CLAUDE_FILE_PATH && git commit -m \"chore: update $CLAUDE_FILE_PATH via Claude\" || true",
"timeout": 10000
}
]
}
]
}
}
八、高级配置与故障排除
8.1 完整配置文件示例
~/.claude/settings.json (用户全局配置):
{
"model": "claude-sonnet-4-5",
"maxTokens": 4096,
"permissions": {
"allow": [
"Read(*)",
"Write(src/**)",
"Write(tests/**)",
"Bash(git *)",
"Bash(npm *)",
"Bash(node *)"
],
"deny": [
"Read(.env*)",
"Read(secrets/**)",
"Write(production.config.*)",
"Bash(rm -rf /)",
"Bash(sudo *)",
"Bash(curl * | bash)"
]
},
"hooks": {
"SessionStart": [
{
"type": "command",
"command": "echo 'Claude Code 已启动,当前目录: $(pwd)'",
"timeout": 5000
}
],
"PostToolUse": [
{
"matcher": "Write(*.js)",
"hooks": [
{
"type": "command",
"command": "npx eslint --fix $CLAUDE_FILE_PATH || true",
"timeout": 10000
}
]
}
]
},
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/home/user/projects"]
}
}
}
8.2 项目级配置 .claude/settings.json
{
"model": "claude-opus-4-5",
"permissions": {
"allow": [
"Read(*)",
"Write(*)",
"Bash(docker *)",
"Bash(make *)"
]
},
"hooks": {
"SessionStart": [
{
"type": "command",
"command": "docker-compose ps",
"timeout": 10000
}
]
}
}
8.3 本地覆盖配置 .claude/settings.local.json
{
"env": {
"DATABASE_URL": "postgresql://localhost:5432/devdb",
"API_KEY": "sk-local-only"
}
}
⚠️ 注意:此文件应添加到 .gitignore,不要提交到版本控制。
8.4 常用故障排除
问题 1:Windows 上安装脚本执行失败
症状:irm https://claude.ai/install.ps1 | iex 报错
解决:
# 检查执行策略
Get-ExecutionPolicy
# 设置为 RemoteSigned(当前用户)
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
# 或使用 WSL 安装(推荐)
wsl -d Ubuntu
curl -fsSL https://claude.ai/install.sh | bash
问题 2:MCP 服务器连接失败
症状:/mcp 显示服务器未连接
解决步骤:
# 1. 检查 Node.js 版本
node --version # 需 v18+
# 2. 验证 JSON 语法
cat .mcp.json | python -m json.tool
# 3. 重启 Claude Code
exit
claude
# 4. 查看详细错误
claude /mcp
问题 3:模型切换无效
症状:/model opus 后仍使用 Sonnet
解决:
- 检查是否有
settings.json中的model配置覆盖了切换 - 某些平台(如 VS Code 扩展)可能不支持动态切换,需重启会话
问题 4:权限被拒绝 (Permission Denied)
症状:Claude 无法执行 Bash 命令或写入文件
解决:
// 在 settings.json 中显式允许
{
"permissions": {
"allow": [
"Bash(your-command *)",
"Write(/path/to/allowed/dir/**)"
]
}
}
问题 5:WSL 中无法访问 Windows 文件
症状:无法读取 /mnt/c/Users/... 下的文件
解决:
# 在 WSL 中创建符号链接
ln -s /mnt/c/Users/YourName/Projects ~/projects
# 然后在 Claude 中使用 ~/projects 路径
claude ~/projects/my-app
8.5 性能优化建议
-
使用 Ripgrep:安装
ripgrep大幅提升代码搜索速度sudo apt-get install ripgrep -
限制 MCP 工具范围:在
mcpServers配置中指定允许的目录,避免扫描整个文件系统 -
合理使用 Haiku:对于简单任务(如代码格式化、 lint 检查),使用 Haiku 模型节省成本
-
缓存 npm 包:配置 npm 缓存避免重复下载 MCP 服务器
npm config set cache ~/.npm-cache --global
8.6 安全最佳实践
-
敏感信息保护:
// settings.json { "permissions": { "deny": [ "Read(.env*)", "Read(*.key)", "Read(*.pem)" ] } } -
API Key 管理:使用环境变量而非硬编码
# ~/.bashrc export ANTHROPIC_API_KEY="sk-..." export GITHUB_TOKEN="ghp_..." -
审查 Hooks:定期检查
PostToolUsehooks,确保没有恶意命令 -
使用本地配置:敏感配置放在
settings.local.json,不提交到 git
附录:快速参考卡
常用命令速查
| 命令 | 说明 |
|---|---|
claude | 启动交互式会话 |
claude --model claude-opus-4-5 | 指定模型启动 |
claude -p "你的问题" | 打印模式(单次查询) |
claude -c | 继续上次会话 |
claude /status | 查看状态 |
claude /config | 交互式配置 |
claude doctor | 诊断环境 |
claude mcp list | 列出 MCP 服务器 |
claude mcp add <name> <command> | 添加 MCP |
claude update | 更新 Claude Code |
会话内命令
| 命令 | 功能 |
|---|---|
/model sonnet | 切换到 Sonnet |
/model haiku | 切换到 Haiku |
/model opus | 切换到 Opus |
/mcp | 查看 MCP 状态 |
/clear | 清除上下文 |
/status | 查看当前状态 |
/config | 打开配置菜单 |
/exit 或 Ctrl+D | 退出会话 |
文件路径速查
| 文件 | 路径 |
|---|---|
| 用户配置 | ~/.claude/settings.json |
| 用户 MCP | ~/.claude.json 或 ~/.mcp.json |
| 项目配置 | .claude/settings.json |
| 项目本地配置 | .claude/settings.local.json |
| 技能目录 | .claude/skills/ |
| Agent 目录 | .claude/agents/ |
| 全局记忆 | ~/.claude/CLAUDE.md |
| 项目记忆 | ./CLAUDE.md |
更多推荐


所有评论(0)