目录

  1. 什么是 Claude Code
  2. 安装与配置
  3. 基本使用
  4. 常用命令与快捷键
  5. Slash Commands(斜杠命令)
  6. Hooks(钩子)
  7. MCP 服务器
  8. IDE 集成
  9. 自定义 Agent 与 Agent SDK
  10. Claude API 集成
  11. 实用技巧与最佳实践

1. 什么是 Claude Code

Claude Code 是 Anthropic 官方推出的命令行 AI 编程工具,基于 Claude 大语言模型构建。它可以直接在你的终端中运行,帮助你完成代码编写、代码审查、调试、重构、文档生成等开发任务。claude code目前据我所知有三种使用方式:
1、cli版本也就是我们所说的终端版本,这个版本我认为缺点就是不太方便管理对话记录。
2、vscode插件版本,这个方式比较使用用远程开发,体验下来感觉没有什么缺点。
3、桌面版本:体验下来的话,这个可以统计使用的模型数据以及属于的tokens啥的,比较适合本地开发,远程开发连接云服务器我感觉不太适合。

核心特点:

  • 终端原生:直接在命令行中使用,无需打开浏览器或 IDE 插件
  • 文件操作:可以直接读取、编辑、创建项目文件
  • 命令执行:可以运行 shell 命令、测试、构建等
  • 上下文感知:理解整个项目结构,而不仅仅是当前文件
  • 可扩展:支持 MCP 服务器、Hooks、自定义 Agent 等扩展机制

2. 安装与配置

2.1 系统要求

  • Node.js 18+ 或 Python 3.10+
  • 有效的 Anthropic API 密钥
  • 支持 macOS、Linux、Windows(WSL)

2.2 安装方式

方式一:通过 npm 安装(推荐)
npm install -g @anthropic-ai/claude-code
方式二:通过 pip 安装
pip install anthropic-claude-code
方式三:通过 npx 直接运行(无需全局安装)
npx @anthropic-ai/claude-code

2.3 配置 API 密钥

安装完成后,运行以下命令配置 API 密钥:

claude config set anthropic_api_key your_api_key_here

或者设置环境变量:

export ANTHROPIC_API_KEY=your_api_key_here

2.4 初始化项目

进入你的项目目录,初始化 Claude Code:

cd /path/to/your/project
claude init

这会在项目根目录创建 CLAUDE.md 文件,你可以在此文件中为 Claude Code 提供项目特定的指令。


3. 基本使用

3.1 启动 Claude Code

claude

启动后,你会进入交互式对话界面,可以直接用自然语言与 Claude 交流。

3.2 基本对话示例

> 帮我创建一个 Express.js 的 REST API 服务器
> 解释这段代码的作用
> 重构这个函数,使其更易读
> 找出代码中的 bug 并修复

3.3 文件操作

Claude Code 可以直接操作项目文件:

  • 读取文件cat filename.js 或在对话中提及文件路径
  • 编辑文件edit filename.js 或在对话中要求修改
  • 创建文件:直接要求创建新文件

3.4 多文件理解

Claude Code 可以一次性理解多个文件的内容,你可以:

> 对比 user.js 和 admin.js 的差异
> 检查 auth.js 中的认证逻辑是否在所有路由中都使用了

4. 常用命令与快捷键

4.1 内置命令

命令 说明
/help 显示帮助信息
/clear 清除当前对话历史
/compact 压缩对话历史,减少上下文占用
/quit/exit 退出 Claude Code
/editor 切换编辑器模式

4.2 快捷键

快捷键 说明
Ctrl + C 中断当前操作
Ctrl + D 退出(等同于 /quit
Ctrl + L 清屏
Tab 自动补全

4.3 文件操作命令

# 查看文件内容
cat filename.js

# 编辑文件
edit filename.js

# 列出当前目录文件
ls

5. Slash Commands(斜杠命令)

Slash Commands 是 Claude Code 提供的快捷命令,以 / 开头。

5.1 常用 Slash Commands

命令 说明
/help 显示所有可用命令和帮助信息
/clear 清除当前对话的上下文
/compact 压缩对话历史,保留关键信息
/editor 切换编辑器模式
/init 初始化项目配置
/config 查看或修改配置
/status 显示当前状态信息
/undo 撤销上一次的编辑操作

5.2 自定义 Slash Commands

你可以通过配置自定义 Slash Commands 来扩展功能。在 CLAUDE.md 或配置文件中定义:

## 自定义命令

当用户输入 /test 时,运行以下命令:
- 执行 npm test
- 如果测试失败,分析错误并尝试修复

6. Hooks(钩子)

Hooks 允许你在特定事件发生时自动执行自定义逻辑。

6.1 Hook 类型

Hook 类型 触发时机
pre_execution 在 Claude 执行命令之前
post_execution 在 Claude 执行命令之后
pre_write 在写入文件之前
post_write 在写入文件之后
pre_read 在读取文件之前
post_read 在读取文件之后

6.2 配置 Hooks

CLAUDE.md 中定义 Hook:

## Pre-execution Hook

在执行任何 shell 命令之前,检查是否有未提交的更改:
- 如果有未提交的更改,提醒用户
- 如果用户确认,继续执行

6.3 Hook 示例

// pre_execution hook 示例
module.exports = {
  name: 'pre-execution-check',
  event: 'pre_execution',
  handler: async (context) => {
    // 检查是否有未提交的 git 更改
    const hasChanges = await checkGitChanges();
    if (hasChanges) {
      console.log('⚠️  有未提交的更改,请谨慎操作');
    }
  }
};

7. MCP 服务器

MCP(Model Context Protocol)服务器允许 Claude Code 连接到外部工具和服务,扩展其能力。

7.1 什么是 MCP

MCP 是一个开放协议,允许 AI 模型与外部数据源和工具进行标准化交互。通过 MCP 服务器,Claude Code 可以:

  • 访问数据库
  • 操作 Git 仓库
  • 与 Slack、Jira、GitHub 等工具集成
  • 读取文件系统
  • 执行远程 API 调用

7.2 配置 MCP 服务器

claude_desktop_config.json 或项目配置中添加 MCP 服务器:

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "your_token_here"
      }
    },
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem"],
      "args": ["/path/to/allowed/directory"]
    },
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres"],
      "env": {
        "DATABASE_URL": "postgresql://user:pass@localhost/db"
      }
    }
  }
}

7.3 常用 MCP 服务器

服务器 用途
@modelcontextprotocol/server-filesystem 文件系统访问
@modelcontextprotocol/server-github GitHub API 集成
@modelcontextprotocol/server-slack Slack 消息和频道
@modelcontextprotocol/server-jira Jira 项目管理
@modelcontextprotocol/server-postgres PostgreSQL 数据库
@modelcontextprotocol/server-sqlite SQLite 数据库
@modelcontextprotocol/server-sequential-thinking 顺序思考工具

7.4 使用 MCP 服务器

配置完成后,Claude Code 可以自动使用 MCP 服务器提供的功能。例如:

> 查看 GitHub 上 #123 的 PR 状态
> 在 Slack #dev 频道发送一条消息
> 查询数据库中最近 10 条用户记录

8. IDE 集成

8.1 VS Code 集成

Claude Code 可以与 VS Code 深度集成:

  1. 安装 VS Code 扩展
  2. 在设置中配置 Claude Code 路径
  3. 使用快捷键打开 Claude Code 面板

8.2 JetBrains IDE 集成

对于 IntelliJ IDEA、WebStorm 等 JetBrains IDE:

  1. 安装 Claude Code 插件
  2. 配置 API 密钥
  3. 在编辑器中直接使用 Claude 辅助编码

8.3 编辑器功能

  • 行内建议:在编辑器中实时获取代码建议
  • 代码解释:选中代码,让 Claude 解释其作用
  • 重构建议:让 Claude 提供重构方案
  • 测试生成:自动生成单元测试

9. 自定义 Agent 与 Agent SDK

9.1 什么是 Agent

Agent 是 Claude Code 的扩展形式,允许你创建具有特定能力和工具的自定义 AI 助手。每个 Agent 可以:

  • 拥有独立的工具集
  • 具有特定的角色和能力
  • 被配置为处理特定类型的任务

9.2 Agent SDK

Anthropic 提供了 Agent SDK,允许你构建自定义 Agent:

from anthropic import Anthropic
from anthropic.types import Message

client = Anthropic(api_key="your_api_key")

# 创建自定义 Agent
response = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "解释这段代码的作用"}
    ],
    tools=[
        {
            "name": "read_file",
            "description": "读取文件内容",
            "input_schema": {
                "type": "object",
                "properties": {
                    "path": {"type": "string"}
                },
                "required": ["path"]
            }
        }
    ]
)

9.3 Agent 类型

类型 用途
general-purpose 通用任务处理
Explore 代码搜索和文件定位
Plan 架构设计和实施规划
claude-code-guide Claude Code 使用指导

9.4 创建自定义 Agent

// 自定义 Agent 配置示例
const agentConfig = {
  name: 'code-reviewer',
  description: '专门用于代码审查的 Agent',
  tools: ['read', 'grep', 'glob', 'bash'],
  systemPrompt: `你是一个经验丰富的代码审查员。
  请检查代码的质量、安全性和可维护性。`,
  capabilities: {
    codeAnalysis: true,
    securityReview: true,
    performanceReview: true
  }
};

10. Claude API 集成

10.1 API 概述

Claude API 允许你将 Claude 的能力集成到自己的应用中。API 端点:

POST https://api.anthropic.com/v1/messages

10.2 基本请求

curl https://api.anthropic.com/v1/messages \
  -H "content-type: application/json" \
  -H "x-api-key: your_api_key" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-sonnet-4-20250514",
    "max_tokens": 1024,
    "messages": [
      {"role": "user", "content": "你好,请介绍一下自己"}
    ]
  }'

10.3 Python SDK 使用

from anthropic import Anthropic

client = Anthropic(api_key="your_api_key")

message = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "解释量子计算的基本原理"}
    ]
)

print(message.content[0].text)

10.4 工具调用(Tool Use)

Claude API 支持工具调用,让 Claude 可以调用外部函数:

import json

def calculate_bmi(weight_kg, height_m):
    """计算 BMI"""
    return weight_kg / (height_m ** 2)

tools = [
    {
        "name": "calculate_bmi",
        "description": "根据身高和体重计算 BMI",
        "input_schema": {
            "type": "object",
            "properties": {
                "weight_kg": {"type": "number", "description": "体重(公斤)"},
                "height_m": {"type": "number", "description": "身高(米)"}
            },
            "required": ["weight_kg", "height_m"]
        }
    }
]

response = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "我的体重是 70 公斤,身高 1.75 米,我的 BMI 是多少?"}
    ],
    tools=tools
)

# 处理工具调用
if response.stop_reason == "tool_use":
    for tool in response.content:
        if tool.type == "tool_use":
            result = calculate_bmi(
                tool.input["weight_kg"],
                tool.input["height_m"]
            )
            # 将结果返回给 Claude
            response = client.messages.create(
                model="claude-sonnet-4-20250514",
                max_tokens=1024,
                messages=[
                    {"role": "user", "content": "我的体重是 70 公斤,身高 1.75 米,我的 BMI 是多少?"},
                    {"role": "assistant", "content": response.content},
                    {"role": "user", "content": json.dumps({"result": result})}
                ],
                tools=tools
            )

10.5 流式响应

with client.messages.stream(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "写一个 Python 斐波那契数列函数"}
    ]
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)

11. 实用技巧与最佳实践

11.1 编写清晰的提示

  • 具体明确:描述你想要的具体结果
  • 提供上下文:包含相关文件路径和代码片段
  • 分步描述:复杂任务分解为多个步骤
✅ 好的提示:
"在 src/auth/login.js 中,添加 JWT 过期时间验证,
 过期时间设为 1 小时,使用 express-jwt 中间件"

❌ 模糊的提示:
"修改一下登录功能"

11.2 使用 CLAUDE.md

在项目根目录创建 CLAUDE.md 文件,为 Claude Code 提供项目特定的指令:

# 项目指南

## 技术栈
- 前端:React 18 + TypeScript
- 后端:Node.js + Express
- 数据库:PostgreSQL

## 代码规范
- 使用 ESLint 和 Prettier
- 组件使用函数式写法
- 测试覆盖率要求 80%+

## 常用命令
- 开发:npm run dev
- 测试:npm test
- 构建:npm run build

11.3 管理对话上下文

  • 使用 /compact 压缩长对话,保留关键信息
  • 使用 /clear 开始全新的对话
  • 重要决策和结论及时保存到文件中

11.4 安全注意事项

  • 不要泄露 API 密钥:永远不要将 API 密钥提交到版本控制
  • 审查生成的代码:Claude 生成的代码需要人工审查
  • 敏感数据:避免在对话中处理敏感信息
  • 权限控制:限制 Claude Code 可访问的文件和命令

11.5 性能优化

  • 使用 /compact 定期压缩对话历史
  • 避免在单个对话中处理过多文件
  • 复杂任务拆分为多个小任务
  • 使用 MCP 服务器连接外部工具,减少上下文负担

11.6 调试技巧

  • 要求 Claude 逐步解释代码逻辑
  • 使用 console.log 或调试器辅助定位问题
  • 让 Claude 生成测试用例验证修复
  • 利用 Claude 的代码审查功能提前发现问题

附录

A. 常见问题

Q: API 密钥如何获取?
A: 访问 https://console.anthropic.com/ 注册并创建 API 密钥。

Q: 如何查看使用量?
A: 在 Anthropic 控制台的 Billing 页面查看 API 调用次数和费用。

Q: Claude Code 支持哪些语言?
A: Claude Code 支持所有编程语言,包括但不限于 Python、JavaScript、TypeScript、Go、Rust、Java、C++、Ruby 等。

Q: 如何离线使用?
A: Claude Code 需要联网使用,因为它依赖 Anthropic 的云端 API。

B. 相关资源

C. 版本信息

  • Claude Code 版本:请运行 claude --version 查看
  • 当前模型:claude-sonnet-4-20250514(请以官方最新信息为准)
  • API 版本:2023-06-01

本教程基于 Claude Code 官方文档和最佳实践编写,有问题可在评论区进行讨论,也可以私信我,最后更新时间:2026 年 5 月 22 日

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐