Claude Code 全面使用手册

你的 AI 编程伙伴 — 从代码编写到项目管理的全流程辅助工具


目录

  1. Claude Code 是什么
  2. 核心功能概览
  3. 基础使用方式
  4. 核心功能详解
  5. 实际应用场景案例
  6. 配置与权限管理
  7. 高级特性
  8. 常见问题与解决方案

一、Claude Code 是什么

Claude Code 是 Anthropic 推出的官方 CLI(命令行界面)工具,它将强大的 Claude AI 能力直接带入你的终端,帮助开发者完成各类编程任务。

核心理念

  • 自然语言编程:用日常语言描述需求,AI 帮你写代码
  • 深度集成:与文件系统、Git、开发工具紧密配合
  • 自动化能力:通过 Skills 和 Hooks 实现工作流自动化

适用人群

人群 使用场景
前端/后端开发者 代码编写、调试、重构
技术团队 代码审查、团队知识管理
初学者 学习编程、获取指导
全栈工程师 多语言项目开发

二、核心功能概览

┌─────────────────────────────────────────────────────────────┐
│                    Claude Code 核心能力                      │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│   ┌─────────────┐  ┌─────────────┐  ┌─────────────┐        │
│   │  代码编辑   │  │  项目分析   │  │  问题诊断   │        │
│   │  读取/编写  │  │  架构理解   │  │  调试排错   │        │
│   └─────────────┘  └─────────────┘  └─────────────┘        │
│                                                             │
│   ┌─────────────┐  ┌─────────────┐  ┌─────────────┐        │
│   │  Git 集成   │  │  文件操作   │  │  终端命令   │        │
│   │  提交/分支  │  │  搜索/批量  │  │  执行脚本   │        │
│   └─────────────┘  └─────────────┘  └─────────────┘        │
│                                                             │
│   ┌─────────────┐  ┌─────────────┐  ┌─────────────┐        │
│   │   Skills    │  │   Hooks     │  │   MCP       │        │
│   │  自定义技能 │  │  自动化钩子 │  │  扩展集成   │        │
│   └─────────────┘  └─────────────┘  └─────────────┘        │
│                                                             │
└─────────────────────────────────────────────────────────────┘

三、基础使用方式

3.1 启动方式

# 方式一:交互式对话(最常用)
claude

# 方式二:单次命令执行
claude "帮我写一个快速排序算法"

# 方式三:指定模型
claude --model claude-3-5-sonnet-20241022

# 方式四:启用调试模式
claude --debug

# 查看帮助
claude --help

3.2 交互模式基本操作

操作 快捷键/命令 说明
退出程序 Ctrl + D/exit 结束当前会话
中断操作 Ctrl + C 取消正在执行的任务
清屏 Ctrl + L 清除屏幕内容
历史导航 / 切换历史命令
自动补全 Tab 命令行补全

3.3 Slash 命令

Claude Code 内置了大量 Slash 命令(以 / 开头的快捷指令):

# 常用内置命令
/help                     # 显示帮助信息
/exit                     # 退出程序
/clear                    # 清除对话历史

# 项目级命令(需在项目目录下)
/read <文件路径>          # 读取特定文件
/review                   # 代码审查
/debug                    # 启用调试模式
/update-config            # 修改配置
/simplify                 # 代码优化审查
/batch                    # 批量处理任务
/loop                     # 循环执行任务
/claude-api               # Claude API 开发
/init                     # 初始化 CLAUDE.md
/pr-comments              # 获取 PR 评论
/security-review          # 安全审查
/insights                 # 会话分析

四、核心功能详解

4.1 代码编辑能力

Claude Code 拥有强大的文件操作能力,可以直接读取、编辑、创建代码文件。

可用工具
工具 功能 示例
Read 读取文件内容 读取源代码、配置文件
Edit 精确修改代码 修改变量名、添加功能
Write 创建/覆盖文件 生成新文件、重写内容
Glob 按模式搜索文件 查找所有 .tsx 文件
Grep 全文搜索 搜索函数定义、关键词
Bash 执行终端命令 运行构建、测试命令
使用示例
# 搜索特定函数
"在 src 目录下查找所有使用到 userAuth 的地方"

# 批量重命名
"将 src/components 目录下所有 .js 文件重命名为 .tsx"

# 代码替换
"把项目中所有的 console.log 替换成使用 logger"

4.2 Git 集成

Claude Code 原生支持 Git 操作,简化版本控制工作流。

主要功能
Git 操作流程:
┌──────────────┐    ┌──────────────┐    ┌──────────────┐
│   查看状态   │ -> │   阶段文件   │ -> │   提交代码   │
│  git status  │    │   git add    │    │  git commit  │
└──────────────┘    └──────────────┘    └──────────────┘
                                                    │
                     ┌──────────────┐               │
                     │   推送代码   │ <- (可选)     │
                     │  git push    │               │
                     └──────────────┘               │
                                                    ▼
                                          ┌──────────────┐
                                          │  创建 PR     │
                                          │ (GitHub CLI) │
                                          └──────────────┘
使用示例
# 提交代码的完整流程
1. 输入 "帮我提交当前的更改"
2. Claude 会自动:
   - 分析未暂存的更改
   - 询问提交信息
   - 执行提交

# 代码审查
"审查这个分支与 main 的差异"

4.3 MCP 服务器(Model Context Protocol)

MCP 是一个开放协议,允许 Claude Code 连接外部服务和工具。

MCP 架构
┌─────────────┐         ┌─────────────┐
│ Claude Code │ <-----> │  MCP Server │
└─────────────┘         └─────────────┘
                               │
                               ▼
                        ┌─────────────┐
                        │  外部服务   │
                        │ - 数据库    │
                        │ - API       │
                        │ - 云服务    │
                        └─────────────┘
常用 MCP 服务器
服务器 用途 配置示例
PostgreSQL 数据库查询 连接到 PostgreSQL
SQLite 轻量数据库 本地 SQLite 文件
Filesystem 文件系统 访问指定目录
GitHub GitHub API PR、Issue 管理
Puppeteer 浏览器自动化 网页抓取、测试
配置方法

settings.json 中配置:

{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb"]
    },
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/directory"]
    }
  }
}

4.4 Skills(自定义技能)

Skills 允许你创建自定义命令,扩展 Claude Code 的能力。

内置 Skills

你已经配置了以下内置 Skills:

Skill 功能
/update-config 修改 Claude Code 配置
/debug 启用调试模式
/simplify 代码优化审查
/batch 批量处理任务
/loop 循环执行任务
/claude-api Claude API 开发
/init 初始化 CLAUDE.md
/review 代码审查
/security-review 安全审查
创建自定义 Skill

~/.claude/skills/ 目录下创建 .md 文件:

# skill: my-tool
描述:生成常用的 React 组件模板

# 触发指令
instruction: |
  当用户说 "创建组件" 或 "生成 react 组件" 时,执行以下操作:
  1. 询问组件名称和属性
  2. 生成符合项目规范的 React 组件代码
  3. 同时生成对应的测试文件

4.5 Hooks(自动化钩子)

Hooks 允许在特定事件发生时自动执行操作。

钩子类型
钩子 触发时机
PreToolUse 工具执行前
PostToolUse 工具执行后
Start 会话开始时
Stop 会话结束时
Notification 通知事件
配置示例
{
  "hooks": {
    "PostToolUse": [
      {
        "match": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "echo '执行了终端命令: ${tool_name}'"
          }
        ]
      }
    ]
  }
}
实际应用场景
{
  "hooks": {
    "PreToolUse": [
      {
        "match": "git commit",
        "hooks": [
          {
            "type": "command",
            "command": "npm run lint"
          }
        ]
      }
    ]
  }
}

上述配置会在 git commit 执行前自动运行 lint 检查。


五、实际应用场景案例

场景一:开发小工具

需求:创建一个文件重命名工具

操作步骤

1. 启动 Claude Code
   $ claude

2. 描述需求
   "帮我创建一个命令行文件重命名工具,支持以下功能:
    - 批量重命名
    - 支持前缀/后缀添加
    - 正则表达式替换
    - 支持预览模式"

3. Claude 会:
   - 分析需求,设计程序架构
   - 生成代码(可能包括 CLI 参数解析、文件操作等)
   - 编写使用说明

生成代码示例

#!/usr/bin/env python3
"""文件批量重命名工具"""

import argparse
import os
import re
import shutil
from pathlib import Path

def rename_files(directory, pattern, replacement, prefix="", suffix="", preview=False):
    """批量重命名文件"""
    directory = Path(directory)
    renamed = []

    for file in directory.iterdir():
        if not file.is_file():
            continue

        new_name = file.name

        # 正则替换
        if pattern:
            new_name = re.sub(pattern, replacement, new_name)

        # 添加前缀
        if prefix:
            new_name = prefix + new_name

        # 添加后缀
        if suffix:
            name_parts = new_name.rsplit('.', 1)
            if len(name_parts) == 2:
                new_name = f"{name_parts[0]}{suffix}.{name_parts[1]}"
            else:
                new_name = new_name + suffix

        if new_name != file.name:
            old_path = file
            new_path = file.parent / new_name

            if preview:
                print(f"预览: {file.name} -> {new_name}")
            else:
                if not new_path.exists():
                    shutil.move(str(old_path), str(new_path))
                    renamed.append((file.name, new_name))
                    print(f"重命名: {file.name} -> {new_name}")
                else:
                    print(f"跳过(目标已存在): {new_name}")

    return renamed

if __name__ == "__main__":
    parser = argparse.ArgumentParser(description="文件批量重命名工具")
    parser.add_argument("directory", help="目标目录")
    parser.add_argument("-p", "--pattern", help="正则匹配模式")
    parser.add_argument("-r", "--replacement", help="替换内容")
    parser.add_argument("--prefix", help="添加前缀")
    parser.add_argument("--suffix", help="添加后缀")
    parser.add_argument("--preview", action="store_true", help="预览模式")

    args = parser.parse_args()
    rename_files(args.directory, args.pattern, args.replacement,
                 args.prefix, args.suffix, args.preview)

场景二:代码审查

需求:审查 PR 中的代码更改

方式一:使用内置技能

/review

方式二:自然语言描述

"帮我审查这个 PR 的代码更改,重点关注:
1. 潜在的 bug
2. 性能问题
3. 安全漏洞
4. 代码风格"

Claude 审查维度

代码审查清单:
┌────────────────────────────────────────────────────────────┐
│  ✓ 逻辑正确性    - 业务逻辑是否正确                         │
│  ✓ 边界条件      - 空值、异常处理是否完善                   │
│  ✓ 性能          - 是否有不必要的循环/重复计算              │
│  ✓ 安全性        - 是否有 SQL 注入、XSS 等漏洞              │
│  ✓ 可读性        - 命名、注释是否清晰                       │
│  ✓ 最佳实践      - 是否遵循语言/框架规范                    │
│  ✓ 测试覆盖      - 是否有遗漏的测试场景                     │
└────────────────────────────────────────────────────────────┘

场景三:代码提交

需求:提交代码到 Git 仓库

操作步骤

1. 输入:
   "帮我提交当前的更改"

2. Claude 会自动:
   a) 执行 git status 查看更改
   b) 分析更改内容(新增、修改、删除的文件)
   c) 询问提交信息或建议合适的提交信息
   d) 执行 git add 和 git commit
   e) 可选:询问是否需要 git push

提交示例

更改分析:
  ✦ modified: src/utils/helper.ts
  ✦ modified: package.json
  ✦ new file: tests/helper.test.ts

建议提交信息:
"添加日期格式化工具函数及测试

- 新增 formatDate、parseDate 工具函数
- 补充完整的单元测试
- 更新 package.json 依赖"

是否确认提交?(yes/no)

场景四:问题调试

需求:诊断应用崩溃问题

操作步骤

1. 启用调试模式(可选)
   /debug

2. 描述问题
   "应用在用户登录时崩溃,错误信息是:
   TypeError: Cannot read property 'token' of null
   发生在 AuthProvider.jsx 的第 42 行"

3. Claude 会:
   - 分析错误堆栈
   - 定位问题代码
   - 提供修复方案

调试输出示例

问题分析:
─────────────────────────────────────────
错误类型:TypeError
原因:尝试读取 null 对象的 token 属性

可能原因:
1. user 对象未正确初始化
2. 异步数据加载时序问题
3. 登录接口返回数据格式异常

建议修复:
─────────────────────────────────────────
方案一:添加空值检查
  const token = user?.token || null;

方案二:添加加载状态判断
  if (!user || user.isLoading) {
    return <Loading />;
  }

方案三:检查 API 返回数据
  确认登录接口返回的 user 对象结构

场景五:项目初始化

需求:快速搭建新项目

操作步骤

1. 输入:
   "帮我初始化一个 React + TypeScript 项目"

2. Claude 会:
   - 检查当前目录
   - 创建项目结构
   - 生成配置文件
   - 安装依赖

项目结构示例

my-react-project/
├── public/
│   └── index.html
├── src/
│   ├── components/
│   │   └── App.tsx
│   ├── hooks/
│   ├── utils/
│   ├── types/
│   ├── App.tsx
│   ├── main.tsx
│   └── index.css
├── .eslintrc.json
├── tsconfig.json
├── vite.config.ts
├── package.json
└── README.md

场景六:批量文件操作

需求:批量处理文件

示例 1:查找并修改

"在 src 目录下,将所有 console.log 替换成 logger.info"

示例 2:代码迁移

"将所有 class 组件迁移到函数组件 + Hooks 形式"

示例 3:文档生成

"为 src 目录下的所有 .ts 文件生成 TypeDoc 文档"

场景七:数据库操作

需求:连接数据库并执行查询

前置配置:在 settings.json 中配置 MCP

{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://user:pass@localhost:5432/mydb"]
    }
  }
}

操作

"查询所有用户,按注册时间排序,显示最近注册的 10 个"

Claude 会生成并执行 SQL 查询,返回结果。


场景八:API 开发

需求:使用 Claude API 构建应用

使用内置 Skill

/claude-api

代码示例

import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  apiKey: process.env.ANTHROPIC_API_KEY
});

async function chatWithClaude(prompt) {
  const message = await client.messages.create({
    model: 'claude-3-5-sonnet-20241022',
    max_tokens: 1024,
    messages: [{
      role: 'user',
      content: prompt
    }]
  });

  return message.content[0].text;
}

// 使用
const response = await chatWithClaude('用 Python 写一个快速排序');
console.log(response);

场景九:大型项目重构

需求:重构遗留代码

操作步骤

1. 使用 /batch 技能并行处理
   /batch

2. 描述重构目标
   "将 src/utils 目录下的代码重构为 TypeScript,
    添加完整的类型定义,并提取公共方法"

3. Claude 会:
   - 分析代码依赖关系
   - 制定重构计划
   - 逐步执行重构
   - 确保重构后功能不变

场景十:自动化工作流

需求:配置自动化任务

场景 A:循环执行任务

/loop 5m /check-deploy

每 5 分钟检查一次部署状态。

场景 B:定时提醒

使用 Cron 表达式设置提醒:

{
  "cron": "0 9 * * *",
  "prompt": "检查今天待处理的 Code Review",
  "recurring": true
}

每天早上 9 点自动检查待处理的代码审查。


场景十一:安全审查

需求:检查代码安全漏洞

使用内置 Skill

/security-review

或者直接要求:

"审查 src 目录下的代码,检查是否有安全漏洞:
- SQL 注入
- XSS 跨站脚本
- 敏感信息泄露
- 权限控制问题"

场景十二:文档编写

需求:生成项目文档

"为这个项目生成完整的 README.md,包括:
- 项目简介
- 技术栈
- 安装说明
- 使用示例
- API 文档"

六、配置与权限管理

6.1 配置文件优先级

配置优先级(从高到低):
┌─────────────────────────────────────────────────────────────┐
│  1. 项目目录 .claude/settings.json    (最高优先级)          │
│  2. 项目根目录 CLAUDE.md              (项目指令)           │
│  3. ~/.claude/settings.json           (用户全局配置)       │
│  4. ~/.claude/settings.local.json     (本地覆盖)           │
└─────────────────────────────────────────────────────────────┘

6.2 CLAUDE.md 项目配置

在项目根目录创建 CLAUDE.md,定义项目特定的指令:

# 项目配置

## 项目描述
这是一个电商后端 API 项目

## 技术栈
- 后端:Node.js + Express + TypeScript
- 数据库:PostgreSQL + Prisma
- 认证:JWT

## 常用命令
- `npm run dev` - 启动开发服务器
- `npm run build` - 构建生产版本
- `npm test` - 运行测试
- `npm run lint` - 代码检查

## 代码规范
- 使用 ESLint + Prettier
- 所有 API 必须有 JSDoc 注释
- 提交前必须通过 lint 和测试

## 特殊说明
- 支付相关代码在 src/payment 目录
- 第三方集成配置在 config/third-party.ts

6.3 权限管理

{
  "permissions": {
    "allow": [
      "Bash(npm install:*)",
      "Bash(npm run:*)",
      "Bash(git commit)",
      "Bash(git push)",
      "Read",
      "Glob",
      "Grep"
    ],
    "deny": [
      "Bash(rm -rf ~)",
      "Bash(sudo)",
      "Write(~/.ssh/**)",
      "Write(/etc/**)"
    ],
    "AutoApprove": false
  }
}
权限说明
权限 说明
Bash 允许执行终端命令
Read 允许读取文件
Write 允许写入/创建文件
Glob 允许按模式搜索文件
Grep 允许搜索文件内容
Edit 允许编辑现有文件
MCP 允许使用 MCP 服务器

6.4 环境变量配置

{
  "env": {
    "ANTHROPIC_API_KEY": "your-key",
    "NODE_ENV": "development",
    "DEBUG": "true"
  }
}

七、高级特性

7.1 模型选择

# 使用不同的模型
claude --model claude-opus-4-6        # 最强能力
claude --model claude-sonnet-4-6      # 平衡性能
claude --model claude-haiku-4-5       # 快速响应

7.2 多会话管理

# 查看所有会话
/tasks

# 切换会话
/switch <会话ID>

# 查看会话历史
/history

7.3 性能优化

{
  "model": "claude-3-5-sonnet-20241022",
  "maxTokens": 4096,
  "temperature": 0.7
}

八、常见问题与解决方案

Q1: 如何更新 Claude Code?

claude --version          # 查看当前版本
claude --update           # 检查更新

Q2: 如何配置代理?

{
  "env": {
    "HTTPS_PROXY": "http://proxy:8080",
    "HTTP_PROXY": "http://proxy:8080"
  }
}

Q3: 权限被拒绝怎么办?

1. 检查 settings.json 中的权限配置
2. 临时允许:使用 /update-config 添加权限
3. 手动编辑 ~/.claude/settings.json

Q4: API 超时怎么办?

{
  "env": {
    "API_TIMEOUT_MS": 600000  // 10 分钟
  }
}

Q5: MCP 服务器连接失败?

1. 检查服务器是否已安装:npm list -g <package>
2. 验证配置是否正确
3. 查看日志:claude logs
4. 尝试重新配置

附录

常用命令速查表

# 启动
claude                    # 交互式对话
claude "提示词"           # 单次执行

# 选项
--help                    # 显示帮助
--version                 # 显示版本
--model <模型>            # 选择模型
--debug                   # 调试模式

# 退出
/exit                     # 退出程序
Ctrl + D                  # 快捷键退出

资源链接

  • 官方文档:https://docs.anthropic.com/en/docs/claude-code
  • Claude API:https://www.anthropic.com/api
  • MCP 规范:https://spec.modelcontextprotocol.io

提示:更多高级用法和最新功能,请参考官方文档。


Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐