Claude Code 完全指南:使用方式、技巧与最佳实践

Claude Code 完全指南:使用方式、技巧与最佳实践

最近在深度使用 Claude Code,发现真的很香!即整理了一份全面的指南,从零开始逐步了解 Claude Code 的核心功能、高级特性和最佳实践。这篇博客实际上更像是一本工具书,让我自己在使用时也能随时参考其内容,更好的使用这个强大的 AI 工具。

目录


一、Claude Code 简介

1.1 什么是 Claude Code?

Claude Code(CC)是由 Anthropic 开发的系统级 AI Agent,它不仅是一个代码编写工具,更是一个可以通过自然语言指令完成各种电脑任务的智能助手。

核心特性:

特性 说明
🔧 全功能访问 拥有系统级权限,可执行文件操作、运行命令、管理进程等
🧠 超大上下文 支持 200K token 上下文窗口,可处理大型项目
🔌 高度可扩展 支持 MCP、Skills、Plugins、Hooks 等多种扩展方式
🤖 多代理协作 支持子代理(Subagents)并行处理复杂任务
💬 自然交互 支持自然语言指令,无需学习复杂命令语法

1.2 Claude Code vs 传统工具

graph LR A[传统开发工具] --> B[代码编辑器] A --> C[Chat AI工具] A --> D[Coding助手] E[Claude Code] --> F[代码编写] E --> G[对话问答] E --> H[数据分析] E --> I[文件管理] E --> J[爬虫自动化] E --> K[Office处理] style E fill:#667eea style F fill:#764ba2 style G fill:#764ba2 style H fill:#764ba2 style I fill:#764ba2 style J fill:#764ba2 style K fill:#764ba2

核心差异:

  • 传统工具:单一功能,需要人工操作多个工具完成复杂任务
  • Claude Code:系统级 AI Agent,通过自然语言指令即可完成全流程任务

二、安装与配置

2.1 前置准备

必需工具:

工具 用途 安装地址
Node.js 运行环境 https://nodejs.org
Git 版本控制 https://git-scm.com
API Key 模型服务 智谱GLM/月之暗面K2/阿里Qwen等

验证安装:

bash 复制代码
# 检查 Node.js 版本
node -v

# 检查 Git 版本
git --version

2.2 安装 Claude Code

全局安装(推荐):

bash 复制代码
npm install -g @anthropic-ai/claude-code

验证安装:

bash 复制代码
claude --version

2.3 配置模型

Claude Code 支持多种模型配置方式,你可以根据自己的需求选择合适的模型。

方式一:手动配置(通用方式)

手动配置适用于所有兼容 Anthropic API 的模型。配置方式如下:

Windows:

cmd 复制代码
setx ANTHROPIC_BASE_URL "模型API地址"
setx ANTHROPIC_AUTH_TOKEN "你的API密钥"
setx ANTHROPIC_MODEL "模型名称"

macOS/Linux:

bash 复制代码
export ANTHROPIC_BASE_URL=模型API地址
export ANTHROPIC_AUTH_TOKEN=你的API密钥
export ANTHROPIC_MODEL=模型名称

# 永久配置(添加到 ~/.bashrc 或 ~/.zshrc)
echo 'export ANTHROPIC_BASE_URL=模型API地址' >> ~/.bashrc
echo 'export ANTHROPIC_AUTH_TOKEN=你的API密钥' >> ~/.bashrc
echo 'export ANTHROPIC_MODEL=模型名称' >> ~/.bashrc
source ~/.bashrc

常用国内模型配置示例:

模型 API地址 模型名称 获取API Key
智谱 GLM-4.7 https://open.bigmodel.cn/api/anthropic GLM-4.7 https://open.bigmodel.cn/
Kimi K2 https://api.moonshot.cn/v1 kimi-k2 https://platform.moonshot.cn/console/account
通义千问 https://dashscope.aliyuncs.com/compatible-mode/v1 qwen-coder-plus https://bailian.console.aliyun.com/
DeepSeek https://api.deepseek.com/v1 deepseek-coder https://platform.deepseek.com/

配置示例(以智谱GLM为例):

bash 复制代码
export ANTHROPIC_BASE_URL=https://open.bigmodel.cn/api/anthropic
export ANTHROPIC_AUTH_TOKEN=your_glm_api_key
export ANTHROPIC_MODEL=GLM-4.7

注意: 配置环境变量后需要重启终端或运行 source ~/.bashrc 使配置生效。

方式二:使用自动化助手(仅适用于智谱GLM)

如果选择使用智谱GLM系列模型,还可以使用自动化配置助手:

bash 复制代码
npx @z_ai/coding-helper

按照交互式提示完成配置:

  1. 选择界面语言
  2. 设置 Coding 套餐
  3. 配置 API 密钥
  4. 选择编码工具

这种方式可以自动完成智谱GLM模型的配置,适合不想手动设置环境变量的用户。

国内模型对比

模型 提供商 代码能力 价格 优势 适用场景
GLM-4.7 智谱AI ⭐⭐⭐⭐⭐ 中等 中文理解强,有Coding套餐 中文项目为主
Kimi K2 月之暗面 ⭐⭐⭐⭐⭐ 较低 超长上下文,MoE架构 大型项目重构
Qwen-Coder-Plus 阿里云 ⭐⭐⭐⭐⭐ 开源,性能优秀 Python/JS项目
DeepSeek-Coder 深度求索 ⭐⭐⭐⭐ 极低 价格优势 预算有限的场景

2.4 启动 Claude Code

基本启动:

bash 复制代码
claude

危险模式(跳过权限确认):

bash 复制代码
claude --dangerously-skip-permissions

Headless 模式(非交互式):

bash 复制代码
git diff | claude -p "解释这些更改"

三、核心概念详解

了解了 Claude Code 的安装配置后,深入了解一下它的一些核心概念。这些概念是充分发挥 Claude Code 能力的基础。

3.1 Skills(技能包)

什么是 Skills?

Skills 是预封装的工作流,就像游戏中的"技能包",用完即走,不占用上下文。它是别人已经编写好的、可直接使用的功能模块。

官方 Skills 库: https://github.com/anthropics/skills (32k+ Stars)

Skills 的类型

类型 说明 示例
User Skills 用户自定义技能,存储在本地 个人工作流自动化
Plugin Skills 插件提供的技能,随插件安装 frontend-design
Built-in Skills Claude Code 内置技能 commit, review-pr

常用官方 Skills

bash 复制代码
# 前端设计技能
npx skills-installer install @anthropics/claude-code/frontend-design --client claude-code

# 文档协同技能
npx skills-installer install @anthropics/claude-code/doc-coauthoring --client claude-code

# Canvas 设计技能
npx skills-installer install @anthropics/claude-code/canvas-design --client claude-code

# PDF 处理技能
npx skills-installer install @anthropics/claude-code/pdf --client claude-code

# 算法艺术生成
npx skills-installer install @anthropics/claude-code/algorithmic-art --client claude-code

如何使用 Skills

查看可用 Skills:

bash 复制代码
claude /skills

调用 Skill:

bash 复制代码
# 在 Claude Code 对话中
使用 frontend-design skill 优化 https://example.com

使用 pdf skill 提取 report.pdf 中的表格数据

如何编写自己的 Skills

Skill 目录结构:

复制代码
my-skill/
├── skill.json          # Skill 元数据
├── skill.md            # Skill 文档
├── api/                # API 定义(可选)
└── tools/              # 自定义工具(可选)

skill.json 示例:

json 复制代码
{
  "name": "my-custom-skill",
  "description": "我的自定义技能",
  "version": "1.0.0",
  "author": "Your Name",
  "categories": ["automation"],
  "license": "MIT",
  "skill": {
    "file": "skill.md",
    "description": "这个技能用于..."
  }
}

skill.md 示例:

markdown 复制代码
# My Custom Skill

这个技能帮助用户快速完成[特定任务]。

## 使用场景

- 场景1:描述...
- 场景2:描述...

## 使用方式

用户只需要告诉你要完成什么,这个技能就会自动:

1. 分析需求
2. 执行步骤
3. 返回结果

## 注意事项

- 注意事项1
- 注意事项2

安装本地 Skill:

bash 复制代码
# 将技能复制到 Claude Code 配置目录
cp -r my-skill ~/.claude/skills/

# 或使用安装命令
npx skills-installer install ./my-skill --client claude-code

3.2 Hooks(钩子)

什么是 Hooks?

Hooks 是在特定事件触发时自动执行的脚本,用于自定义工作流、拦截危险操作、自动格式化代码等。

核心价值:
graph LR A[事件触发] --> B{Hook 拦截} B --> C[执行自定义脚本] C --> D[返回结果] D --> E[继续/阻止操作] style B fill:#f093fb style C fill:#f5576c

Hook 事件类型

事件类型 触发时机 典型用途
user-prompt-submit 用户提交提示词前 验证、修改提示词
tool-use 工具使用前 权限检查、参数验证
after-tool-use 工具使用后 日志记录、结果处理
permission-request 权限请求时 拦截危险操作
notification 通知时 发送告警、更新状态

Hook 配置方式

方式一:通过 /hooks 命令

bash 复制代码
# 在 Claude Code 中
/hooks

方式二:通过配置文件

~/.claude/settings.json 或项目 .claude/settings.json 中配置:

json 复制代码
{
  "hooks": {
    "user-prompt-submit-hook": {
      "command": "npm run validate-prompt",
      "enabled": true
    },
    "tool-use-hook": {
      "command": "~/.claude/hooks/check-permission.sh",
      "enabled": true,
      "blocking": true
    },
    "after-tool-use-hook": {
      "command": "echo 'Tool used: {{toolName}}' >> ~/.claude/hooks.log",
      "enabled": true
    }
  }
}

Hook 实战示例

拦截危险命令:

bash 复制代码
#!/bin/bash
# ~/.claude/hooks/check-dangerous.sh

# 读取工具调用信息
TOOL_NAME=$(jq -r '.toolName' <<< "$CLAUDE_HOOK_INPUT")

# 危险操作列表
DANGEROUS_TOOLS=("rm" "delete" "format" "shutdown")

if [[ " ${DANGEROUS_TOOLS[@]} " =~ " ${TOOL_NAME} " ]]; then
  echo "⚠️  警告:即将执行危险操作 - $TOOL_NAME"
  echo "请确认是否继续? (yes/no)"
  read -r confirmation
  if [[ "$confirmation" != "yes" ]]; then
    exit 1  # 阻止操作
  fi
fi

自动格式化代码:

json 复制代码
{
  "hooks": {
    "after-write-hook": {
      "command": "if [[ {{filePath}} == *.js ]]; then prettier --write {{filePath}}; fi",
      "enabled": true,
      "blocking": false
    }
  }
}

发送通知:

json 复制代码
{
  "hooks": {
    "task-complete-hook": {
      "command": "notify-send 'Claude Code' '任务已完成'",
      "enabled": true
    }
  }
}

3.3 Plugins(插件)

什么是 Plugins?

Plugins 是打包在一起的扩展集合,可以包含:

  • 5 个 Skills
  • 10 个斜杠命令
  • 3 个 MCP 服务器配置
  • 2 个 SubAgent 定义
  • 若干 Hooks

Plugins vs Skills:

特性 Skills Plugins
复杂度 简单工作流 完整功能套件
内容 单一技能 多种资源的集合
安装 独立安装 一次性安装多个资源
适用场景 单一任务 完整解决方案

Plugin 安装与使用

哪里获取已有 Plugins?

官方插件市场:

来源 地址 说明
Anthropic Skills https://github.com/anthropics/skills 官方Skills库,包含多个插件
Claude Code Marketplace https://claudecodemarketplaces.com 插件市场目录
Awesome Claude Code https://awesomeclaude.ai/plugins 社区插件精选

添加插件市场:

bash 复制代码
# 添加官方Anthropic插件市场
claude /plugin marketplace add anthropics/skills

# 添加本地插件市场
claude /plugin marketplace add ~/my-marketplace

# 浏览可用插件
claude /plugin
# 选择 "Browse Plugins" 查看完整列表

常用官方插件:

bash 复制代码
# 文档处理插件套件
claude /plugin marketplace add anthropics/skills
claude /plugin install document-skills

# 前端开发插件
claude /plugin install frontend-design

# Git工作流插件
claude /plugin install git-workflow
安装 Plugin

从市场安装:

bash 复制代码
claude plugin install <plugin-name>

从本地安装:

bash 复制代码
# 安装本地插件
claude plugin install ./my-plugin

# 或使用完整路径
claude plugin install /path/to/my-plugin

从GitHub安装:

bash 复制代码
# 直接从GitHub仓库安装
claude plugin install github:user/repo
查看 Plugins

查看已安装 Plugins:

bash 复制代码
claude /plugin

浏览可用插件:

bash 复制代码
# 在Claude Code中输入
/plugin
# 选择 "Browse Plugins"

卸载 Plugin:

bash 复制代码
claude plugin uninstall <plugin-name>

创建自定义 Plugin:

复制代码
my-plugin/
├── plugin.json           # Plugin 配置
├── skills/              # Skills 目录
│   ├── skill1/
│   └── skill2/
├── commands/            # 自定义斜杠命令
│   └── my-command.md
├── mcp/                 # MCP 配置
│   └── mcp-config.json
├── agents/              # SubAgent 定义
│   └── agent1.json
└── hooks/               # Hook 脚本
    └── hook1.sh

plugin.json 示例:

json 复制代码
{
  "name": "my-plugin",
  "version": "1.0.0",
  "description": "我的自定义插件",
  "author": "Your Name",
  "skills": [
    "skills/skill1",
    "skills/skill2"
  ],
  "commands": [
    {
      "name": "/my-command",
      "description": "我的自定义命令",
      "file": "commands/my-command.md"
    }
  ],
  "mcpServers": [
    {
      "name": "my-mcp",
      "config": "mcp/mcp-config.json"
    }
  ],
  "agents": [
    {
      "name": "my-agent",
      "config": "agents/agent1.json"
    }
  ]
}

3.4 MCP Servers(模型上下文协议服务器)

什么是 MCP?

MCP (Model Context Protocol) 是 AI 的扩展接口标准,通过添加 MCP 服务器可以扩展 Claude Code 获取外部工具、资源、服务的能力。

核心概念:
graph LR A[Claude Code] --> B[MCP Client] B --> C[MCP Server 1] B --> D[MCP Server 2] B --> E[MCP Server N] C --> F[GitHub API] D --> G[Database] E --> H[Browser] style A fill:#667eea style B fill:#764ba2 style C fill:#f093fb style D fill:#f093fb style E fill:#f093fb

常用 MCP 服务器

MCP Server 功能 Star 数
chrome-devtools-mcp 浏览器自动化,26个工具 18.5k
github-mcp GitHub API 集成 10k+
postgres-mcp PostgreSQL 数据库操作 5k+
filesystem-mcp 增强文件系统操作 3k+
web-search-mcp 网络搜索功能 2k+

MCP 安装方式

方式一:命令行安装

bash 复制代码
claude mcp add chrome-devtools npx chrome-devtools-mcp@latest

方式二:配置文件安装

编辑 ~/.claude/mcp.json:

json 复制代码
{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": ["chrome-devtools-mcp@latest"],
      "disabled": false
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "your_github_token_here"
      }
    },
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres"],
      "env": {
        "POSTGRES_CONNECTION_STRING": "postgresql://user:password@localhost:5432/db"
      }
    }
  }
}

验证安装:

bash 复制代码
# 在 Claude Code 中
/mcp

# 或通过命令行
claude mcp list
claude mcp test chrome-devtools

Chrome DevTools MCP 实战

安装:

bash 复制代码
claude mcp add chrome-devtools npx chrome-devtools-mcp@latest

使用示例:

bash 复制代码
# 在 Claude Code 中
用Chrome浏览器打开 https://example.com,然后通过 chrome devtools mcp 完成以下任务:
1. 截取页面截图
2. 提取所有链接
3. 分析页面结构
4. 获取页面性能数据

26个内置工具包括:

  • chrome_navigate: 导航到指定 URL
  • chrome_screenshot: 截取页面截图
  • chrome_click: 点击元素
  • chrome_fill: 填写表单
  • chrome_select: 选择元素
  • chrome_evaluate: 执行 JavaScript
  • 等等...

3.5 Subagents(子代理)

什么是 Subagents?

Subagents 是可以并行处理任务的独立 AI 代理,每个子代理拥有独立的 200K 上下文窗口,可以分配不同任务以提高效率。

核心优势:
graph TB A[主代理 Claude Code] --> B[子代理1: 代码审查] A --> C[子代理2: 测试编写] A --> D[子代理3: 文档生成] A --> E[子代理4: 性能优化] B --> F[并行处理] C --> F D --> F E --> F F --> G[结果汇总] style A fill:#667eea style B fill:#f093fb style C fill:#f093fb style D fill:#f093fb style E fill:#f093fb style G fill:#764ba2

Subagent 配置

方式一:通过 /agents 命令

bash 复制代码
claude /agents

方式二:配置文件

~/.claude/agents.json 或项目 .claude/agents.json 中配置:

json 复制代码
{
  "agents": {
    "code-reviewer": {
      "description": "专门负责代码审查的子代理",
      "model": "claude-opus-4-5",
      "instructions": "你是一个专业的代码审查专家,专注于检查代码质量、安全漏洞和性能问题。",
      "tools": ["read", "search", "git"],
      "permissions": {
        "allowWrite": false
      }
    },
    "test-writer": {
      "description": "专门负责编写测试的子代理",
      "model": "claude-sonnet-4-5",
      "instructions": "你是一个测试工程师,专注于编写全面的单元测试和集成测试。",
      "tools": ["read", "write", "bash"]
    },
    "doc-generator": {
      "description": "专门负责生成文档的子代理",
      "model": "claude-sonnet-4-5",
      "instructions": "你是一个技术文档专家,专注于生成清晰、准确的技术文档。",
      "tools": ["read", "write"]
    }
  }
}

Subagent 使用示例

场景:完成一个功能开发

bash 复制代码
# 主任务
我需要完成用户认证功能,请帮我:

1. 使用 code-reviewer agent 审查现有认证代码
2. 使用 test-writer agent 编写测试用例
3. 使用 doc-generator agent 更新 API 文档

这三个任务并行执行

Claude Code 会自动:

  1. 创建三个独立的子代理
  2. 分配各自的上下文(200K × 3)
  3. 并行执行任务
  4. 汇总结果返回

3.6 CLAUDE.md(项目记忆文件)

什么是 CLAUDE.md?

CLAUDE.md 是 Claude Code 的"项目记忆文件",记录项目结构、构建命令、代码规范、架构决策等信息,让 Claude Code 快速理解项目上下文。

CLAUDE.md 的作用

作用 说明
📚 项目知识库 记录项目架构、技术栈、依赖关系
🚀 快速启动 自动读取,无需重复解释项目背景
🤝 团队协作 共享项目规范,确保团队理解一致
🔄 持续迭代 随项目演进自动更新

CLAUDE.md 最佳位置

graph TD A[项目根目录_CLAUDE.md] B[src_.claude_CLAUDE.md] C[.claude_rules_auth.md] D[home_.claude_CLAUDE.md] A --> E[全局项目配置] B --> F[模块级配置] C --> G[特定规则] D --> H[用户级配置] style A fill:#667eea style B fill:#764ba2 style C fill:#f093fb style D fill:#f5576c style E fill:#667eea style F fill:#764ba2 style G fill:#f093fb style H fill:#f5576c

优先级: 特定规则 > 模块配置 > 项目配置 > 用户配置

CLAUDE.md 示例

完整示例:

markdown 复制代码
# 项目名称: E-Commerce Platform

## 项目概述
这是一个基于 Node.js + React 的电商平台,支持商品管理、订单处理、支付集成等功能。

## 技术栈
- **前端:** React 18, TypeScript, Tailwind CSS, Redux Toolkit
- **后端:** Node.js 20, Express, TypeScript
- **数据库:** PostgreSQL 15, Redis 7
- **认证:** JWT, OAuth 2.0
- **测试:** Jest, Playwright
- **部署:** Docker, Kubernetes

## 项目结构
\`\`\`
src/
├── frontend/          # React 前端
│   ├── components/    # 可复用组件
│   ├── pages/         # 页面组件
│   ├── store/         # Redux store
│   └── utils/         # 工具函数
├── backend/           # Node.js 后端
│   ├── controllers/   # 控制器
│   ├── services/      # 业务逻辑
│   ├── models/        # 数据模型
│   └── routes/        # API 路由
└── shared/            # 共享代码
    └── types/         # TypeScript 类型定义
\`\`\`

## 常用命令

### 开发环境
\`\`\`bash
# 安装依赖
npm install

# 启动前端开发服务器
npm run dev:frontend

# 启动后端开发服务器
npm run dev:backend

# 同时启动前后端
npm run dev
\`\`\`

### 构建与部署
\`\`\`bash
# 构建前端
npm run build:frontend

# 构建后端
npm run build:backend

# 构建所有
npm run build

# Docker 构建
docker-compose build
docker-compose up
\`\`\`

### 测试
\`\`\`bash
# 运行所有测试
npm test

# 前端单元测试
npm run test:frontend

# 后端单元测试
npm run test:backend

# E2E 测试
npm run test:e2e

# 测试覆盖率
npm run test:coverage
\`\`\`

### 代码质量
\`\`\`bash
# 代码格式化
npm run format

# 代码检查
npm run lint

# 类型检查
npm run type-check
\`\`\`

## 代码规范

### 命名规范
- **文件名:** kebab-case (user-profile.ts)
- **组件名:** PascalCase (UserProfile)
- **函数/变量:** camelCase (getUserProfile)
- **常量:** UPPER_SNAKE_CASE (API_BASE_URL)
- **类型/接口:** PascalCase (UserProfile)

### Git 提交规范
遵循 Conventional Commits:
- \`feat: 新功能\`
- \`fix: 修复 bug\`
- \`docs: 文档更新\`
- \`style: 代码格式调整\`
- \`refactor: 代码重构\`
- \`test: 测试相关\`
- \`chore: 构建/工具链更新\`

### 代码审查清单
- [ ] 代码符合项目命名规范
- [ ] 添加了必要的注释
- [ ] 更新了相关文档
- [ ] 编写了/更新了测试
- [ ] 通过了所有测试
- [ ] 通过了 lint 检查
- [ ] 没有引入安全漏洞

## 架构决策

### ADR-001: 选择 TypeScript 而非 JavaScript
**日期:** 2024-01-15
**状态:** 已接受
**理由:**
- 类型安全减少运行时错误
- 更好的 IDE 支持
- 代码可维护性更高

### ADR-002: 采用微服务架构
**日期:** 2024-02-20
**状态:** 已接受
**理由:**
- 便于团队并行开发
- 独立部署和扩展
- 技术栈灵活性

## 环境变量

### 必需变量
\`\`\`bash
DATABASE_URL=postgresql://...
REDIS_URL=redis://...
JWT_SECRET=your-secret-key
API_BASE_URL=https://api.example.com
\`\`\`

### 可选变量
\`\`\`bash
LOG_LEVEL=info
NODE_ENV=development
PORT=3000
\`\`\`

## 常见问题

### Q: 如何添加新的 API 端点?
A:
1. 在 \`backend/routes/\` 创建路由文件
2. 在 \`backend/controllers/\` 创建控制器
3. 在 \`backend/services/\` 实现业务逻辑
4. 添加测试用例
5. 更新 API 文档

### Q: 如何调试前端状态管理问题?
A:
1. 使用 Redux DevTools 浏览器扩展
2. 在 \`src/frontend/store/\` 添加日志
3. 检查 action 和 reducer 逻辑

## 重要注意事项

1. **安全:** 永远不要在代码中硬编码密钥或敏感信息
2. **性能:** 大数据查询必须使用分页
3. **测试:** 所有新功能必须包含测试
4. **文档:** API 变更必须更新文档
5. **兼容性:** 确保向后兼容,使用版本控制

## 相关资源
- [项目 Wiki](https://wiki.example.com)
- [API 文档](https://docs.example.com)
- [设计规范](https://design.example.com)

生成 CLAUDE.md 的方式

方式一:使用 /init 命令

bash 复制代码
# 在项目根目录
claude /init

Claude Code 会自动扫描项目并生成初始 CLAUDE.md

方式二:手动创建

bash 复制代码
# 创建基础文件
touch CLAUDE.md

# 让 Claude Code 帮助生成
claude "请根据当前项目结构生成 CLAUDE.md 文件"

方式三:模块化规则

bash 复制代码
# 在 .claude/rules/ 目录创建多个规则文件
.claude/rules/
├── auth.md          # 认证相关规则
├── database.md      # 数据库相关规则
├── api.md           # API 设计规范
└── testing.md       # 测试规范

四、高级功能

实际上CC还有一些高级功能,这些功能将帮助更高效地完成复杂任务。

4.1 Plan 模式(规划模式)

什么是 Plan 模式?

Plan 模式是一种"先规划、后执行"的工作模式,Claude 会先分析项目架构、依赖关系并起草实现方案,确认后才开始编写代码。

核心价值:
graph LR A[接收任务] --> B[分析项目] B --> C[探索代码库] C --> D[设计方案] D --> E{用户确认?} E -->|是| F[执行实现] E -->|否| G[调整方案] G --> D F --> H[完成任务] style B fill:#667eea style C fill:#764ba2 style D fill:#f093fb style E fill:#f5576c style F fill:#4facfe

进入 Plan 模式

快捷键:

bash 复制代码
# 按两次 Shift+Tab
Shift+Tab, Shift+Tab

命令方式:

bash 复制代码
/plan

Plan 模式工作流程

1. 探索阶段

  • 读取相关文件
  • 分析代码结构
  • 理解依赖关系

2. 规划阶段

  • 设计实现方案
  • 列出具体步骤
  • 识别潜在风险

3. 确认阶段

  • 展示完整计划
  • 等待用户反馈
  • 根据反馈调整

4. 执行阶段

  • 按计划实施
  • 实时反馈进度
  • 处理异常情况

Plan 模式最佳实践

适合场景:

  • ✅ 复杂功能开发(多文件、多步骤)
  • ✅ 架构重构
  • ✅ 性能优化
  • ✅ 代码迁移
  • ✅ 不熟悉的项目

不适合场景:

  • ❌ 简单 bug 修复
  • ❌ 单行代码修改
  • ❌ 文档查询
  • ❌ 快速原型验证

使用技巧:

bash 复制代码
# 启用 Plan 模式
Shift+Tab × 2

# 明确任务需求
请帮我实现用户认证功能,包括:
1. 用户注册
2. 用户登录
3. JWT token 验证
4. 密码加密存储

# Claude 会先探索并规划:
# Plan: 实现用户认证功能
#
# 1. 分析现有代码结构
# 2. 设计认证流程
# 3. 创建数据模型
# 4. 实现 API 端点
# 5. 添加中间件
# 6. 编写测试
#
# 确认后开始执行? (yes/no)

# 确认后开始实施
yes

4.2 Sandbox 模式(沙箱模式)

什么是 Sandbox 模式?

Sandbox 模式通过定义允许的操作范围,拦截危险操作,提高安全性。

核心机制:
graph TB A[操作请求] --> B{Sandbox 规则检查} B -->|允许| C[执行操作] B -->|拒绝| D[拦截并警告] B -->|需要确认| E[询问用户] E -->|允许| C E -->|拒绝| D style B fill:#667eea style C fill:#4facfe style D fill:#f5576c style E fill:#f093fb

配置 Sandbox 模式

方式一:通过 /permissions 命令

bash 复制代码
claude /permissions

方式二:配置文件

编辑 ~/.claude/settings.json:

json 复制代码
{
  "permissions": {
    "allow": {
      "bash": [
        "npm install",
        "npm test",
        "npm run build",
        "git *",
        "node -v",
        "npm -v"
      ],
      "write": [
        "src/**/*",
        "tests/**/*",
        "*.md"
      ],
      "read": [
        "**/*"
      ]
    },
    "deny": {
      "bash": [
        "rm -rf *",
        "format *",
        "shutdown",
        "reboot"
      ],
      "write": [
        "node_modules/**/*",
        ".git/**/*",
        "/etc/*",
        "/usr/*"
      ]
    }
  }
}

Sandbox 最佳实践

最小权限原则:

json 复制代码
{
  "permissions": {
    "allow": {
      "bash": ["npm test", "npm run build"],
      "write": ["src/**/*", "tests/**/*"]
    }
  }
}

特定项目配置:

json 复制代码
// .claude/settings.json (项目级)
{
  "permissions": {
    "allow": {
      "bash": [
        "npm run dev:*",
        "npm run test:*",
        "npm run build:*"
      ],
      "write": ["src/**/*", "tests/**/*", "docs/**/*"]
    },
    "deny": {
      "write": ["dist/**/*", "build/**/*"]
    }
  }
}

4.3 Headless 模式(无头模式)

什么是 Headless 模式?

Headless 模式是非交互式运行方式,输出结果直接流向标准输出,可集成到 Shell 脚本或 CI/CD 流程中。

使用场景:

场景 示例
🔄 CI/CD 集成 自动化代码审查
📜 脚本自动化 批量处理任务
🔍 快速分析 不需要交互的代码分析
📊 报告生成 自动生成文档

Headless 模式使用

基本用法:

bash 复制代码
# 从管道输入
git diff | claude -p "解释这些更改"

# 从文件输入
cat file.txt | claude -p "总结这个文件"

# 直接指定
claude -p "检查代码质量" < src/main.js

CI/CD 集成示例:

yaml 复制代码
# .github/workflows/claude-review.yml
name: Claude Code Review

on:
  pull_request:
    types: [opened, synchronize]

jobs:
  review:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Setup Node.js
        uses: actions/setup-node@v3
        with:
          node-version: '20'

      - name: Install Claude Code
        run: npm install -g @anthropic-ai/claude-code

      - name: Run Code Review
        run: |
          git diff origin/main...HEAD | claude -p "审查这个 PR 的代码变更" > review.txt

      - name: Comment PR
        uses: actions/github-script@v6
        with:
          script: |
            const fs = require('fs');
            const review = fs.readFileSync('review.txt', 'utf8');
            github.rest.issues.createComment({
              issue_number: context.issue.number,
              owner: context.repo.owner,
              repo: context.repo.repo,
              body: review
            });

脚本自动化示例:

bash 复制代码
#!/bin/bash
# batch-process.sh

for file in src/**/*.js; do
  echo "Processing $file..."

  # 使用 Claude Code 分析代码
  claude -p "检查文件 $file 的代码质量,包括:
  1. 潜在的 bug
  2. 性能问题
  3. 安全漏洞
  4. 代码规范违规" < "$file" > "reports/$(basename $file).md"

  echo "✓ Completed $file"
done

echo "All files processed!"

4.4 Vim 模式

启用 Vim 模式

bash 复制代码
/vim

Vim 常用快捷键

快捷键 功能
h 左移光标
j 下移光标
k 上移光标
l 右移光标
ciw 修改单词
dd 删除行
yy 复制行
p 粘贴
u 撤销
Ctrl+r 重做

五、实用技巧与快捷操作

了解了 Claude Code 的高级功能后,分享一些实用的技巧和快捷操作,可以更高效地使用这个工具。

5.1 基础操作技巧

项目初始化(/init)

bash 复制代码
# 自动生成 CLAUDE.md
/init

# 或手动指定
claude /init "这是一个 Node.js + React 项目"

快速引用上下文(@提及)

bash 复制代码
# 引用单个文件
@src/auth.ts

# 引用整个目录
@src/components/

# 引用多个文件
@src/auth.ts @src/user.ts @src/database.ts

# 引用 MCP 服务器
@mcp:github

# 模糊匹配
@auth  # 自动匹配 auth.ts, auth.controller.ts 等

即时执行 Bash 命令(!前缀)

bash 复制代码
# 查看状态
!git status

# 运行测试
!npm test

# 查看进程
!ps aux | grep node

# 组合使用
!git diff && echo "=== Changes Summary ==="

回退操作(双击 ESC)

bash 复制代码
ESC ESC

选项:

  • 仅回退对话
  • 仅回退代码
  • 同时回退对话和代码

注意: 已执行的 Bash 命令无法回退

5.2 效率提升技巧

反向搜索历史提示词(Ctrl+R)

bash 复制代码
Ctrl+R    # 开始搜索
Ctrl+R    # 循环匹配项
Enter     # 运行
Tab       # 编辑后运行

提示词暂存(Ctrl+S)

bash 复制代码
Ctrl+S    # 暂存当前提示词
# ... 处理其他事务 ...
# 恢复暂存内容继续工作

类似 Git stash,但用于提示词

自定义状态栏(/statusline)

bash 复制代码
/statusline

可显示信息:

  • Git 分支
  • 当前模型
  • Token 用量
  • 上下文占比
  • 任务进度

配置示例:

json 复制代码
{
  "statusline": {
    "segments": [
      "git.branch",
      "model.name",
      "context.usage",
      "token.cost"
    ],
    "refreshInterval": 1000
  }
}

可视化上下文(/context)

bash 复制代码
/context

显示:

  • 当前 token 使用情况
  • 上下文占用百分比
  • 各文件占用大小
  • 建议优化方向

5.3 文件夹管理技巧

工作空间隔离

最佳实践:

bash 复制代码
# 为每个任务创建独立文件夹
project-1/
project-2/
task-a/
task-b/

快速启动:

bash 复制代码
# Windows: 在地址栏输入 cmd
# macOS: 在右键菜单选择"服务 > 新建终端位于文件夹"

# 然后启动 Claude Code
claude

拖拽文件

支持操作:

  • 拖拽单个文件
  • 拖拽整个文件夹
  • 拖拽多个文件

使用场景:

bash 复制代码
# 拖拽文件后直接描述任务
[拖入 auth.ts]
这个认证模块有安全问题,请帮我审查并修复

5.4 粘贴技巧

文本粘贴

操作 方式
在 CC 中粘贴文本 鼠标右键 → 粘贴
在普通命令行粘贴 Ctrl+V
在 CC 中粘贴图片 复制图片 → Alt+V (Windows) / Ctrl+V (macOS)

注意:

  • CC 中不能用 Ctrl+V 粘贴文本
  • CC 中不能用 Ctrl+A 全选
  • 图片必须在打开状态复制,预览状态无法粘贴

5.5 常用斜杠命令速查

命令 功能 使用频率
/clear 清空对话历史 ⭐⭐⭐⭐⭐
/compact 清空对话但保留摘要 ⭐⭐⭐⭐⭐
/context 可视化上下文使用 ⭐⭐⭐⭐⭐
/model 切换模型 ⭐⭐⭐⭐
/cost 显示费用统计 ⭐⭐⭐⭐
/export 导出对话 ⭐⭐⭐⭐
/add-dir 添加工作目录 ⭐⭐⭐⭐
/status 查看系统状态 ⭐⭐⭐
/mcp 管理 MCP 服务器 ⭐⭐⭐
/skills 列出可用技能 ⭐⭐⭐
/hooks 管理钩子 ⭐⭐
/agents 管理子代理 ⭐⭐
/vim 切换 Vim 模式 ⭐⭐
/theme 更换主题
/doctor 诊断环境 ⭐⭐⭐⭐

六、最佳实践

继续。提供并建立一些最佳实践以提升团队协作和开发效率。

6.1 项目组织最佳实践

目录结构规范

bash 复制代码
project/
├── .claude/                    # Claude Code 配置
│   ├── settings.json           # 项目级设置
│   ├── agents.json             # 子代理配置
│   ├── rules/                  # 模块化规则
│   │   ├── auth.md
│   │   ├── database.md
│   │   └── api.md
│   └── mcp.json                # MCP 配置
├── src/                        # 源代码
├── tests/                      # 测试代码
├── docs/                       # 文档
├── CLAUDE.md                   # 项目主配置
└── README.md                   # 项目说明

CLAUDE.md 层级配置

graph TD A[用户级_home_claude_CLAUDE_md] B[项目级_CLAUDE_md] C[模块级_src_claude_CLAUDE_md] D[特定规则_claude_rules] A --> E[合并规则] B --> E C --> E D --> E E --> F[最终配置] style A fill:#f5576c style B fill:#667eea style C fill:#764ba2 style D fill:#f093fb style E fill:#4facfe style F fill:#00d2ff

6.2 工作流最佳实践

探索-规划-编码-提交工作流

这是一个完整的开发工作流程,需要配合特定的Skills和MCP使用。

前置准备 - 安装必要工具:

bash 复制代码
# 1. 安装代码分析MCP(可选,用于深度分析)
claude mcp add github npx -y @modelcontextprotocol/server-github

# 2. 安装commit skill(用于生成规范的commit消息)
npx skills-installer install @anthropics/claude-code/commit --client claude-code

# 3. 安装Chrome DevTools MCP(用于浏览器测试,可选)
claude mcp add chrome-devtools npx chrome-devtools-mcp@latest

详细工作流程:

第1步:探索阶段 - 理解项目

bash 复制代码
# 启动Claude Code
claude

# 探索项目架构
请帮我分析这个项目的架构,重点关注:
1. 整体项目结构
2. 认证模块的实现
3. 依赖关系
4. 技术栈

# 使用@引用特定目录
@src/

# 如果有GitHub仓库,使用GitHub MCP
请使用github MCP查看最近的commit历史和issue

第2步:规划阶段 - 使用Plan模式

bash 复制代码
# 进入Plan模式(按两次Shift+Tab)
Shift+Tab, Shift+Tab

# 或使用命令
/plan

# 明确任务需求
我需要添加 OAuth2.0 认证支持,请规划实现方案,包括:
1. 需要创建哪些新文件
2. 需要修改哪些现有文件
3. 需要安装哪些依赖
4. 实现步骤顺序
5. 潜在的风险点

# Claude会生成详细计划,等待你的确认
# Plan: 添加OAuth2.0认证支持
#
# 1. 分析现有认证代码
# 2. 设计OAuth2.0流程
# 3. 创建OAuth控制器
# 4. 实现token生成和验证
# 5. 添加测试用例
# 6. 更新文档
#
# 预计需要修改的文件:
# - src/auth/oauth.controller.ts (新建)
# - src/auth/auth.service.ts (修改)
# - src/config/oauth.config.ts (新建)
#
# 确认后开始执行? (yes/no)

# 确认后开始实施
yes

第3步:编码阶段 - 实施计划

bash 复制代码
# 让Claude按照计划实施
按照上面的计划开始实施

# 如果遇到问题,可以要求暂停
暂停,让我先检查一下这一步

# 继续实施
继续下一步

# 运行测试
!npm test

# 修复失败的测试
测试失败了,请帮我修复

第4步:提交阶段 - 使用commit skill

bash 复制代码
# 使用commit skill生成规范的commit消息
使用commit skill为这些更改创建一个规范的commit消息

# Claude会分析变更并生成commit
# commit skill会:
# 1. 分析git diff
# 2. 生成符合Conventional Commits的消息
# 3. 自动创建commit

# 或手动指导commit
请帮我创建git commit,包含这些更改
commit消息格式: feat(auth): 添加OAuth2.0认证支持

测试驱动开发(TDD)工作流

前置准备 - 安装测试相关工具:

bash 复制代码
# 1. 安装测试编写skill(可选)
npx skills-installer install @anthropics/claude-code/test-writer --client claude-code

# 2. 或者配置test-writer子代理(后面详细说明)

TDD工作流程:

bash 复制代码
# 第1步:先写测试
# 使用test-writer skill或agent
使用test-writer skill为用户登录功能编写测试,包括:
1. 正常登录场景
2. 错误密码场景
3. 用户不存在场景
4. Token验证场景

@src/auth/login.controller.ts

# 第2步:运行测试(预期失败)
!npm test

# 第3步:实现最小可行代码
测试失败了,请实现登录功能使测试通过,只写能通过的代码

# 第4步:重构代码
代码通过了但不够优雅,请重构以提高可读性,但保持测试通过

# 第5步:重复循环
继续添加新功能的测试...

代码审查工作流

前置准备 - 创建和配置代码审查子代理:

方式1:使用 /agents 命令创建

bash 复制代码
# 在Claude Code中
claude
/agents

# 选择 "Create new agent"
# 按提示配置:
- Name: code-reviewer
- Description: 专门负责代码审查的子代理
- Instructions: 你是一个代码审查专家,专注于检查代码质量、安全漏洞和性能问题
- Tools: read, search, git
- Permissions: 禁止写入(allowWrite: false)

方式2:手动配置文件

bash 复制代码
# 创建agents配置文件
mkdir -p ~/.claude
cat > ~/.claude/agents.json << 'EOF'
{
  "agents": {
    "code-reviewer": {
      "description": "专门负责代码审查的子代理",
      "model": "claude-sonnet-4-5",
      "instructions": "你是一个专业的代码审查专家。专注于:\n1. 代码质量(Clean Code原则)\n2. 安全漏洞(OWASP Top 10)\n3. 性能问题(算法复杂度、资源使用)\n4. 最佳实践\n\n请以结构化方式输出审查结果。",
      "tools": ["read", "search", "git"],
      "permissions": {
        "allowWrite": false
      }
    },
    "security-reviewer": {
      "description": "专注于安全问题的子代理",
      "model": "claude-sonnet-4-5",
      "instructions": "你是一个安全专家,专注于识别:\n1. SQL注入、XSS、CSRF等漏洞\n2. 敏感信息泄露\n3. 权限控制问题\n4. 依赖安全问题",
      "tools": ["read", "search"],
      "permissions": {
        "allowWrite": false
      }
    },
    "performance-reviewer": {
      "description": "专注于性能问题的子代理",
      "model": "claude-sonnet-4-5",
      "instructions": "你是一个性能优化专家,专注于:\n1. 算法效率\n2. 内存使用\n3. 数据库查询优化\n4. 缓存策略",
      "tools": ["read", "search"],
      "permissions": {
        "allowWrite": false
      }
    }
  }
}
EOF

# 验证配置
claude
/agents
# 应该看到刚创建的三个agent

使用代码审查工作流:

bash 复制代码
# 第1步:使用子代理并行审查
# 代码质量审查
使用code-reviewer agent审查以下文件的代码质量:
- 是否符合Clean Code原则
- 是否有代码异味
- 是否易于维护

@src/auth.ts @src/user.ts @src/database.ts

# 安全审查(并行)
使用security-reviewer agent审查这些文件的安全问题:
- SQL注入风险
- XSS漏洞
- 敏感信息泄露

@src/auth.ts @src/user.ts @src/database.ts

# 性能审查(并行)
使用performance-reviewer agent审查这些文件的性能问题:
- 算法复杂度
- 数据库查询效率
- 内存使用

@src/auth.ts @src/user.ts @src/database.ts

# 第2步:生成综合审查报告
请综合以上三个agent的审查结果,生成一份详细报告,包括:
- 发现的问题列表
- 每个问题的严重程度(Critical/High/Medium/Low)
- 具体的修复建议
- 修复优先级排序

# 第3步:逐个修复问题
根据审查报告,请帮我修复Critical和High级别的问题:
1. 先修复安全问题
2. 再修复性能问题
3. 最后修复代码质量问题

# 第4步:重新审查
修复完成后,使用code-reviewer agent重新审查修复后的代码

6.3 团队协作最佳实践

共享 CLAUDE.md

**场景:**团队项目

实施步骤:

  1. 在项目根目录创建 CLAUDE.md
  2. 团队共同维护
  3. 定期更新
  4. 版本控制

示例:

markdown 复制代码
# 团队项目规范

## 团队约定
- 代码审查至少 1 人 approve
- 所有 PR 必须通过 CI
- 文档与代码同步更新

## 分工信息
- @alice: 前端负责人
- @bob: 后端负责人
- @charlie: DevOps

## 沟通渠道
- Slack: #team-channel
- JIRA: 项目看板

GitHub 集成

安装 GitHub App:

bash 复制代码
/install-github-app

使用 PR 评论:

bash 复制代码
# 在 PR 中
@.claude 请审查这个 PR 的代码变更

# 自动添加问题到 CLAUDE.md
/pr-comments

6.4 性能优化最佳实践

上下文管理

策略:

bash 复制代码
# 长对话定期 compact
/compact "保留以下要点: ..."

# 新任务先 clear
/clear

# 监控上下文使用
/context

# 定期 export 备份
/export conversation-2026-01-06.json

Token 优化

技巧 说明 节省效果
使用 @提及 只加载需要的文件 30-50%
定期 /compact 清理历史保留摘要 40-60%
避免重复加载 检查 /context 输出 20-30%
使用 Subagents 并行处理减少串行上下文 50-70%

模型选择策略

国外模型选择策略:
graph LR A[简单任务] --> B[Haiku 4.5] C[中等复杂度] --> D[Sonnet 4.5] E[高复杂度] --> F[Opus 4.5] B --> G[成本优化] D --> H[平衡性能] F --> I[质量优先] style A fill:#4facfe style C fill:#667eea style E fill:#f5576c style B fill:#4facfe style D fill:#667eea style F fill:#f5576c

国外模型使用建议:

  • 快速查询/格式化: Haiku 4.5 - 最快最便宜
  • 日常开发/代码编写: Sonnet 4.5 - 性价比平衡
  • 架构设计/复杂重构: Opus 4.5 - 最高质量

国内模型选择策略:
graph LR A[简单任务] --> B[DeepSeek-Coder] C[中文项目] --> D[GLM-4.7] E[大型项目] --> F[Kimi K2] G[Python/JS] --> H[Qwen-Coder-Plus] B --> I[极低成本] D --> J[中文优化] F --> K[超长上下文] H --> L[开源优秀] style A fill:#00d2ff style C fill:#667eea style E fill:#f093fb style G fill:#4facfe style B fill:#00d2ff style D fill:#667eea style F fill:#f093fb style H fill:#4facfe

国内模型使用建议:

任务类型 推荐模型 理由 价格(相对)
简单查询 DeepSeek-Coder 极低成本,够用
中文项目 GLM-4.7 中文理解最强,有Coding套餐 ⭐⭐⭐
大型重构 Kimi K2 超长上下文(2M+),MoE架构 ⭐⭐
Python/JS Qwen-Coder-Plus 开源,Python/JS性能优秀 ⭐⭐
预算有限 DeepSeek-Coder 价格优势明显
团队协作 GLM-4.7 有团队套餐,管理方便 ⭐⭐⭐

模型切换策略:

bash 复制代码
# 方式1:使用 /model 命令快速切换
claude
/model
# 选择对应模型

# 方式2:临时切换(当前会话)
export ANTHROPIC_MODEL=kimi-k2
claude

# 方式3:针对不同任务使用不同配置
# 创建alias
alias cc-glm='ANTHROPIC_MODEL=GLM-4.7 claude'
alias cc-kimi='ANTHROPIC_MODEL=kimi-k2 claude'
alias cc-qwen='ANTHROPIC_MODEL=qwen-coder-plus claude'

# 使用
cc-glm   # 使用智谱GLM
cc-kimi  # 使用Kimi
cc-qwen  # 使用通义千问

成本优化建议:
graph TB A[任务开始] --> B{任务类型?} B -->|简单查询| C[DeepSeek-Coder] B -->|中文开发| D[GLM-4.7] B -->|大型重构| E[Kimi K2] B -->|Python项目| F[Qwen-Coder-Plus] B -->|高质量要求| G[Sonnet 4.5] C --> H[成本: \] D --\> I\[成本: \] E --\> J\[成本: \] F --\> K\[成本: \] G --\> L\[成本: $$$] style A fill:#667eea style C fill:#00d2ff style D fill:#f093fb style E fill:#f5576c style F fill:#4facfe style G fill:#764ba2

混合使用策略:

bash 复制代码
# 日常开发用国产模型(便宜)
export ANTHROPIC_MODEL=GLM-4.7

# 遇到复杂任务时临时切换到高质量模型
/model
# 选择 Opus 4.5

# 完成后切换回国产模型
/model
# 选择 GLM-4.7

6.5 安全最佳实践

Sandbox 配置

json 复制代码
{
  "permissions": {
    "allow": {
      "bash": ["npm run *", "git *"],
      "write": ["src/**/*", "tests/**/*"],
      "read": ["**/*.ts", "**/*.js", "**/*.json"]
    },
    "deny": {
      "bash": ["rm -rf *", "format *", "shutdown"],
      "write": ["node_modules/**/*", ".git/**/*", "/etc/*", "/usr/*"]
    }
  }
}

Hooks 安全检查

bash 复制代码
#!/bin/bash
# ~/.claude/hooks/security-check.sh

# 检查敏感操作
if [[ "$TOOL_NAME" == "Bash" ]]; then
  COMMAND=$(jq -r '.command' <<< "$CLAUDE_HOOK_INPUT")

  # 危险命令黑名单
  DANGEROUS_CMDS=("rm -rf" "format" "shutdown" "reboot" "chmod 000")

  for cmd in "${DANGEROUS_CMDS[@]}"; do
    if [[ "$COMMAND" == *"$cmd"* ]]; then
      echo "🚫 拦截危险命令: $COMMAND"
      exit 1
    fi
  done
fi

敏感信息保护

markdown 复制代码
# CLAUDE.md 安全规范

## 禁止事项
- ❌ 在代码中硬编码密钥
- ❌ 在 CLAUDE.md 中记录密码
- ❌ 在 Git 提交中包含凭证

## 推荐做法
- ✅ 使用环境变量
- ✅ 使用 .env 文件(不提交)
- ✅ 使用密钥管理服务(AWS Secrets Manager 等)
- ✅ .gitignore 排除敏感文件

七、实战案例

简单几个案例看看如何运用到实际工作中。

7.1 案例1:批量文件重命名

**需求:**将文件夹中所有文件名改为规范的英文名称

实现:

bash 复制代码
# 拖拽文件夹到 Claude Code

请将文件夹中的所有文件名改成规范的英文名称,只改名字,不改序号

# Claude Code 自动:
# 1. 读取文件夹内容
# 2. 分析文件名
# 3. 批量重命名
# 4. 报告结果

7.2 案例2:自动化数据抓取

**需求:**抓取公众号多页文章数据并导出 Excel

实现:

bash 复制代码
# 使用 Chrome DevTools MCP

用Chrome浏览器打开这个链接:[公众号链接]

然后通过 chrome devtools mcp 完成:
1. 获取第1、2、3页每篇文章的详细数据
2. 包括标题、阅读量、点赞量、发布时间等
3. 保存到 Excel 表格中

# Claude Code 自动:
# 1. 启动 Chrome
# 2. 导航到页面
# 3. 翻页抓取数据
# 4. 生成 Excel 报告

效果对比:

方式 耗时 准确率
人工 30分钟 90%
Claude Code + MCP 5分钟 99%

7.3 案例3:代码质量审查

**需求:**审查 PR 的代码变更

实现:

bash 复制代码
# 使用 code-reviewer subagent

使用 code-reviewer agent 审查这个 PR:
- 代码质量
- 安全漏洞
- 性能问题
- 最佳实践

@src/ @tests/

# Claude Code 自动:
# 1. 读取所有相关文件
# 2. 应用审查标准
# 3. 生成详细报告
# 4. 提供修复建议

7.4 案例4:自动化测试生成

**需求:**为新功能编写测试

实现:

bash 复制代码
# 使用 test-writer subagent

使用 test-writer agent 为用户认证功能编写测试:
- 单元测试
- 集成测试
- E2E 测试
- 边界情况测试

@src/auth.ts @src/auth.controller.ts

# Claude Code 自动:
# 1. 分析代码逻辑
# 2. 识别测试场景
# 3. 编写测试用例
# 4. 运行测试验证

7.5 案例5:CI/CD 集成

**需求:**在 PR 创建时自动审查代码

实现:

yaml 复制代码
# .github/workflows/claude-review.yml

name: Claude Auto Review

on:
  pull_request:
    types: [opened, synchronize]

jobs:
  review:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Install Claude Code
        run: npm install -g @anthropic-ai/claude-code

      - name: Configure Claude
        run: |
          echo "配置模型..."
          export ANTHROPIC_MODEL="claude-sonnet-4-5"

      - name: Run Review
        run: |
          git diff origin/main...HEAD > diff.txt
          claude -p "审查这个 PR 的代码变更,重点关注:
          1. 安全漏洞
          2. 性能问题
          3. 代码规范
          请提供详细审查意见" < diff.txt > review.txt

      - name: Comment on PR
        uses: actions/github-script@v6
        with:
          script: |
            const fs = require('fs');
            const review = fs.readFileSync('review.txt', 'utf8');
            github.rest.issues.createComment({
              issue_number: context.issue.number,
              owner: context.repo.owner,
              repo: context.repo.repo,
              body: `## 🤖 Claude Code 自动审查\n\n${review}`
            });

八、常见问题与解决方案

在使用 Claude Code 的过程中,你可能会遇到一些常见问题。本章节收集了最常见的问题及其解决方案,帮助你快速排除故障。

8.1 安装问题

Q1: npm install 失败

问题:

bash 复制代码
npm ERR! code EACCES
npm ERR! syscall access

解决方案:

bash 复制代码
# 方式1: 使用 sudo (macOS/Linux)
sudo npm install -g @anthropic-ai/claude-code

# 方式2: 修改 npm 全局目录
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
export PATH=~/.npm-global/bin:$PATH
npm install -g @anthropic-ai/claude-code

# 方式3: 使用 nvm (推荐)
nvm install --lts
npm install -g @anthropic-ai/claude-code

Q2: claude 命令未找到

问题:

bash 复制代码
bash: claude: command not found

解决方案:

bash 复制代码
# 检查 npm 全局路径
npm config get prefix

# 添加到 PATH
export PATH=$(npm config get prefix)/bin:$PATH

# 永久配置
echo 'export PATH=$(npm config get prefix)/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

8.2 配置问题

Q3: 模型配置不生效

**问题:**配置后仍显示默认模型

解决方案:

bash 复制代码
# 1. 验证环境变量
echo $ANTHROPIC_BASE_URL
echo $ANTHROPIC_AUTH_TOKEN
echo $ANTHROPIC_MODEL

# 2. 重新启动终端
# 配置环境变量后必须重启终端才能生效

# 3. 使用 claude /status 检查
claude
/status

# 4. 手动设置(临时)
claude
/model
# 选择第4个(自定义模型)

Q4: MCP 服务器无法连接

问题:

bash 复制代码
Error: MCP server 'chrome-devtools' failed to start

解决方案:

bash 复制代码
# 1. 检查 MCP 状态
claude
/mcp

# 2. 测试连接
claude mcp test chrome-devtools

# 3. 重新安装
claude mcp remove chrome-devtools
claude mcp add chrome-devtools npx chrome-devtools-mcp@latest

# 4. 检查网络
npx chrome-devtools-mcp@latest --version

# 5. 查看日志
claude /doctor

8.3 使用问题

Q5: 上下文超出限制

问题:

复制代码
Context exceeded: Request too large

解决方案:

bash 复制代码
# 1. 查看上下文使用
/context

# 2. 使用 compact 保留摘要
/compact "保留项目背景和当前任务"

# 3. 使用 clear 清空历史
/clear

# 4. 减少文件引用
# 不要用 @src/ 引用整个目录
# 改用 @src/file1.ts @src/file2.ts 精确引用

# 5. 使用 Subagents 分担上下文
# 将大任务拆分给多个子代理

Q6: 代码生成质量差

**问题:**生成的代码不符合项目规范

解决方案:

bash 复制代码
# 1. 完善 CLAUDE.md
# 在 CLAUDE.md 中明确代码规范

# 2. 使用 Plan 模式
Shift+Tab × 2
# 让 Claude 先理解项目再编写代码

# 3. 提供示例
# 这是符合规范的代码示例:
@src/good-example.ts
# 请参照这个风格编写新功能

# 4. 明确要求
请编写符合以下规范的代码:
- 使用 TypeScript 严格模式
- 遵循项目命名规范
- 包含完整的错误处理
- 添加必要的注释

8.4 性能问题

Q7: 响应速度慢

**问题:**Claude Code 响应延迟高

解决方案:

bash 复制代码
# 1. 检查网络
ping api.anthropic.com

# 2. 切换更快的模型
/model
# 选择 Haiku 4.5(最快) 或国产模型

# 3. 优化提示词
# 避免冗长的提示词,直接说明需求

# 4. 减少上下文
/context
# 如果接近 100%,使用 /compact 清理

# 5. 使用本地模型(如果有)
export ANTHROPIC_BASE_URL=http://localhost:8000

Q8: Token 消耗过快

**问题:**费用增长过快

解决方案:

bash 复制代码
# 1. 监控费用
/cost

# 2. 定期 compact
/compact "保留关键信息"

# 3. 新任务先 clear
/clear

# 4. 使用更便宜的模型
# Haiku < Sonnet < Opus
# 国产模型(更便宜)

# 5. 优化工作流
# 避免反复修改,一次性明确需求

8.5 调试技巧

启用调试模式

bash 复制代码
# 设置环境变量
export CLAUDE_DEBUG=true
export CLAUDE_LOG_LEVEL=debug

# 启动 Claude Code
claude

# 查看日志
tail -f ~/.claude/logs/claude.log

使用 /doctor 诊断

bash 复制代码
claude
/doctor

检查项:

  • ✅ 安装版本
  • ✅ 配置文件
  • ✅ API 连接
  • ✅ MCP 服务器
  • ✅ 权限设置
  • ✅ 环境变量

附录

A. 快速参考卡

核心命令速查

bash 复制代码
# 基础操作
claude                    # 启动 Claude Code
claude -p "prompt"        # Headless 模式
claude --version          # 查看版本

# 斜杠命令
/clear                    # 清空对话
/compact                  # 压缩对话
/context                  # 查看上下文
/cost                     # 查看费用
/model                    # 切换模型
/mcp                      # 管理 MCP
/skills                   # 查看 Skills
/hooks                    # 管理 Hooks
/agents                   # 管理子代理
/status                   # 系统状态
/doctor                   # 诊断环境

# 快捷键
Ctrl+R                    # 搜索历史
Ctrl+S                    # 暂存提示词
Ctrl+C                    # 中止操作
Shift+Tab × 2             # Plan 模式
ESC ESC                   # 回退操作
Alt+V                     # 粘贴图片

# 文件操作
@file.ts                  # 引用文件
@src/                     # 引用目录
!command                  # 执行 Bash

B. 配置文件清单

配置文件 位置 作用
CLAUDE.md 项目根目录 项目配置
settings.json ~/.claude/ 或项目/.claude/ 全局/项目设置
agents.json ~/.claude/ 或项目/.claude/ 子代理配置
mcp.json ~/.claude/ MCP 服务器配置
hooks/ ~/.claude/hooks/ Hook 脚本
skills/ ~/.claude/skills/ 自定义 Skills
rules/ 项目/.claude/rules/ 模块化规则

C. 推荐资源

官方资源


总结

Claude Code 真的很强,是一个强大的系统级 AI Agent,用好这个工具能为自己提高很多工作效率。

核心能力清单

  • Skills: 预封装的工作流,快速复用专业能力
  • Hooks: 事件驱动的自动化,打造个性化工作流
  • Plugins: 完整解决方案,一键安装多功能套件
  • MCP Servers: 外部服务集成,无限扩展能力边界
  • Subagents: 并行处理复杂任务,提升团队协作效率
  • CLAUDE.md: 项目记忆系统,让 AI 理解你的项目
  • Plan 模式: 先规划后执行,减少返工提高质量
  • Sandbox 模式: 安全防护机制,保护你的工作环境
  • Headless 模式: CI/CD 集成,实现自动化工作流
相关推荐
智泊AI5 小时前
一文讲清:主流大模型推理部署框架:vLLM、SGLang、TensorRT-LLM、ollama、XInference
llm
大霸王龙7 小时前
MinIO 对象存储系统架构图集
人工智能·llm·minio
哥布林学者8 小时前
吴恩达深度学习课程五:自然语言处理 第一周:循环神经网络 (三)语言模型
深度学习·ai
MoonOut9 小时前
LLM | ARC-AGI:有趣的 benchmark
llm
营销操盘手阿泽10 小时前
从流量红利到构建长期AI数据资产的深度共建指南
ai
栀秋66613 小时前
🌟从“抽卡式编程”到规范驱动: 深度解析「Vibe Coding」的三层跃迁
微信小程序·llm·vibecoding
YuTaoShao13 小时前
【Prompt】Prompt 工程入门指南
人工智能·llm·prompt·提示词
熊猫钓鱼>_>13 小时前
AI 加 CloudBase 帮我从零快速打造儿童英语故事学习乐园
ide·人工智能·ai·mcp·codebuddy·cloudbase·ai toolkit
向量引擎14 小时前
[架构师级] 压榨GPT-5.2与Sora 2的极限性能:从单体调用到高并发多模态Agent集群的演进之路(附全套Python源码与性能调优方案)
开发语言·人工智能·python·gpt·ai·ai写作·api调用
CoderJia程序员甲14 小时前
GitHub 热榜项目 - 日榜(2026-1-6)
ai·开源·大模型·github·ai教程