Rick-Brick
Claude Code 完全入门指南 — 系统理解 AI 编码代理的全部功能

引言 — 什么是Claude Code

2025年2月,Anthropic 发布的 Claude Code,彻底革新了AI编码工具的概念。它不仅能补全和提案代码,还能自主完成文件读写、命令执行、git操作、PR创建等开发任务,提供代理型工具。

仅仅是代码补全的区别

以往的AI编码工具主流是“代码补全”。预测光标位置后的代码,让开发者决定采用与否。虽然补全效果佳,但仅是建议

Claude Code 超越了此模型。当开发者“写测试、运行、修正失败”时,Claude Code 会读取文件、生成测试、执行、分析错误、修复代码,并重复这个循环——实现自主闭环。

# 自动生成并修正测试
claude "为auth模块写测试,运行并修正"

# 实时监控日志异常
tail -200 app.log | claude -p "如果发现异常,通知Slack"

# 安全审查
git diff main --name-only | claude -p "审查这些变更文件的安全问题"

运行环境

Claude Code 支持多种环境使用:

环境方法
终端claude 命令(CLI)
VS Code / Cursor插件
JetBrains IDE插件
桌面应用Claude桌面版
浏览器claude.ai

通常开发者在终端使用claude命令,在项目根目录启动即可无缝访问全部代码。

功能发展历程

自2025年2月发布后,Claude Code功能快速扩展:

功能时代
公布2025年2月
MCP 集成2024年11月
Subagents(子代理)2025年7月
Hooks(钩子)2025年9月
Skills(技能)2025年10月
Agent Teams(代理团队)2026年2月

截止到2026年3月,Claude Code已成长为“AI编码操作系统”。本文系统解析这些功能。


安装与初始配置

安装方式

macOS / Linux / WSL(推荐)

curl -fsSL https://claude.ai/install.sh | bash

此方法实现原生安装,后台自动更新。

Windows PowerShell

irm https://claude.ai/install.ps1 | iex

Windows用户需安装 Git for Windows。

Homebrew(macOS)

brew install --cask claude-code

通过Homebrew安装不会自动更新,需定期运行brew upgrade claude-code

首次启动与认证

安装后,进入项目目录,执行:

cd your-project
claude

首次启动会要求登录,登录后将出现交互式聊天界面,可指示Claude Code进行操作。

常用命令

命令说明
claude开始交互式会话
claude -p "prompt"非交互执行(CI/CD 场景)
claude --continue续用上次会话
claude --resume选择历史会话重新开启
/init自动生成CLAUDE.md
/clear重置上下文
/compact压缩上下文
/memory查看/编辑CLAUDE.md和内存文件
/agents管理子代理
/hooks查看钩子设置
/permissions权限管理
/skills查看技能

CLAUDE.md — 设计项目“记忆”

CLAUDE.md 是什么

Claude Code启动时必读的Markdown文件,记载编码规范、工作流程、架构决策。作为“持续性上下文”,避免每次重复说明。

就像给新人提前准备好团队规则文档。Claude Code会阅读此文档开始工作。

三级存放位置

作用域位置作用对象团队共享
组织政策/etc/claude-code/CLAUDE.md(Linux)全体用户IT管理
项目./CLAUDE.md./.claude/CLAUDE.md项目成员Git管理
个人~/.claude/CLAUDE.md个人私人

存在多个CLAUDE.md时,优先级从具体到广泛,团队规则写项目根部,个人偏好写用户目录。

内容编写指南

内容禁忌
Claude无法猜测的bash命令代码应能理解
非默认代码风格Claude已知即无需重复
测试策略与测试框架API文档(链接替代)
分支命名、PR规则频繁变化信息
项目架构判定自明原则(如“写优雅代码”)
必要环境变量文件结构列表

示例:

# 示例 CLAUDE.md

## 代码风格
- 使用ES modules(import/export),禁止使用CommonJS
- 导入尽可能使用解构赋值

## 工作流程
- 改动后必须运行类型检查:`npx tsc --noEmit`
- 测试只在单一文件上运行

## 脚本命令
- 构建:`npm run build`
- 测试:`npm test`
- Lint:`npm run lint`

## 注意事项
- 把秘密写入 `.env.local`,绝不提交
- PR 的目标分支是 develop(禁止直接push到main)

通过 /init 自动生成

项目已有,可用 /init 让Claude Code解析代码并生成CLAUDE.md草稿。用户据此编辑,删除多余,补充缺失内容。

拆分管理规则

项目大时,CLAUDE.md会变长。可在 .claude/rules/ 目录拆分不同话题。

.claude/
  CLAUDE.md
  rules/
    code-style.md
    testing.md
    security.md
    branching.md

特定文件模式规则还可以单独定义。

---
paths:
  - "src/api/**/*.ts"
---
# API开发规范
- 所有端点需验证输入
- 错误返回遵守RFC 7807

此文件只会在匹配路径的文件操作时读取。

自动记忆(Auto Memory)

v2.1.59后加入Auto Memory,Claude在工作中学到的内容:调试发现的问题、设计决策、常用命令,自动保存到 ~/.claude/projects/<project>/memory/MEMORY.md 。通过 /memory 查看和编辑,保证下一次会话“学到的内容”得以延续。


Skills — 封装可重用的工作流

Skills 概念

Skills是将重复使用的知识和工作流程打包成 SKILL.md,通过 /skill-name 调用或Claude自动加载关联技能。例如“修复GitHub Issue”——确认Issue、修改代码、运行测试、提出PR,定义为Skill后,只需输入 /fix-issue 123 即自动完成一系列操作。

Claude.md为全局指令,“常时启用”;Skills为“按需调用”。

SKILL.md结构

YAML前导和正文共同组成。

---
name: fix-issue
description: >
  修复GitHub Issue。指定编号时启用。
disable-model-invocation: true
user-invocable: true
allowed-tools: Read, Grep, Bash, Write, Edit
---

获取issue信息,分析,修正,测试,提交PR。

$ARGUMENTS 替换调用参数,/fix-issue 123触发时, $ARGUMENTS=123。多个参数用 $ARGUMENTS[0]$1 访问。

关键字段

字段作用
name命令名(小写、短横线、最大64字符)
description判断是否自动启用的说明
disable-model-invocationtrue 后仅用户启动,防止误操作
user-invocable是否在菜单中显示
allowed-tools允许使用的工具
context独立子代理,否则共享上下文
model模型选择(sonnetopus等)
effort思考强度(low/medium/high/max

参考技能 vs 任务技能

Reference技能:按需注入规范书或文档,保持CLAUDE.md简洁,仅必要时加载。 如API规范。

任务技能:定义具体操作,如代码评审、部署、Issue处理。

调用控制

前导控制字段:

控制字段作用
disable-model-invocation后设置为true,只允许人类调用
user-invocable是否在菜单显示

内置技能

Claude内置:

技能用途
/batch批量操作整个仓库
/claude-api载入API参考
/debug分析调试日志
/loop循环执行命令
/simplify简化代码

CLAUDE.md与Skills区别

CLAUDE.mdSkills
加载时机会话开始连续加载按需调用或自动判断
适用内容全局规则与指令专业技能或流程
占用上下文永远消耗按需消耗

Subagents — 委托专家处理任务

概念

Subagents(子代理)是可以委托专业任务的独立AI助手,每个都有自己的上下文、提示和工具权限。适用于大量文件分析、只读操作、降低成本等。

四大优势

1. 上下文隔离:子代理内部探索不污染主会话,只返回摘要。

2. 工具限制:限定只读工具,避免误写文件。

3. 专业定制:配置特定领域的系统提示,便于专业审查、性能优化等。

4. 降低成本:用轻量模型处理大量工作;重要判定由重模型执行。

内置子代理

  • Explore:用Haiku(高速)只读探索
  • Plan:规划中使用
  • general-purpose:多任务处理

定义方法

编写带YAML前导的Markdown文件。

---
name: code-reviewer
description: 代码审查专家。常用
tools: Read, Grep, Glob, Bash
model: sonnet
---

请作为高级开发者,审核以下内容:代码质量、错误处理、安全、测试覆盖、性能。优先级(Critical/Warning/Suggestion),提供具体修正建议。

存放路径:.claude/agents/ 或者~/.claude/agents/

关键字段:

字段作用
name唯一标识名
description简述任务
tools工具权限
disallowedTools禁用工具
model模型
permissionMode权限设置
maxTurns最大轮次
isolation独立环境

调用方式:

# 自然语言(Claude判断委托)
"code-reviewerで最近の変更をレビューして"

# @提及(明确指定代理)
@"code-reviewer" reviewの変更点

# 完整会话以代理模式启动
claude --agent code-reviewer

Agent Teams — 多代理协作

区别

2026年2月,发布的Agent Teams是在Subagents基础上,支持多个AI代理同时协作。

SubagentsAgent Teams
通信主→子(单向)代理间(双向)
适用单个任务委托大规模并行合作
会话单一会话独立合作

四大组成

  • Lead(领队):统筹调度,拆分任务,控制质量
  • Teammates(队友):专业子代理,执行任务
  • Task List(任务清单):任务依赖管理,识别并行任务
  • Mailbox(信箱):异步通信,报告/提问

何时用

任务复杂?
  否 → 一般Claude

任务能放入上下文?
  是 → 使用子代理

是否有独立任务可以并行?
  否 → 顺序接力
  是 → 代理团队

典型用例:大规模重构、多模块变更、数据管道、多仓库一致性。


Hooks — 必然执行的自动化脚本

概念

Hooks(钩子)是在Claude Code生命周期中在特定节点必执行的脚本,确保关键操作执行。即使Claude在指示中遗漏,Hooks也会完整触发。

事件类型

事件触发时机主要用途
SessionStart会话开始初始化环境变量
UserPromptSubmit用户提交输入过滤
PreToolUse执行前权限验证、风险屏蔽
PostToolUse成功后代码检测、日志 Record
PostToolUseFailure失败时错误处理
Stop结束响应质量控制
SubagentStart子代理启动设置
SubagentStop关闭清理
SessionEnd会话结束统计记录

配置方法

.claude/settings.json

{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          { "type": "command", "command": "npm run lint --fix" }
        ]
      }
    ],
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          { "type": "command", "command": "./.claude/hooks/check-dangerous-command.sh" }
        ]
      }
    ]
  }
}

执行:将在写入后自动执行npm run lint --fix等操作。可自定义危险命令拦截脚本。Autocmd、Exit codes定义了操作的成功/阻断等规则。

示例(阻止危险命令):

#!/bin/bash
# .claude/hooks/block-dangerous.sh
INPUT=$(cat)
COMMAND=$(echo "$INPUT" | jq -r '.tool_input.command // empty')
if echo "$COMMAND" | grep -q 'rm -rf'; then
  echo "阻止危险命令:$COMMAND" >&2
  exit 2 # 阻断
fi
exit 0 # 允许

Exit Code:

  • 0:允许
  • 2:阻断(Claude知晓)
  • 其他:错误

类型支持

类型说明
commandshell命令
http远程HTTP请求
prompt对Claude模型提问
agent生成子代理执行更复杂验证

配置存放位置

位置作用域
~/.claude/settings.json全局
.claude/settings.json项目
.claude/settings.local.json本地(不提交)

MCP服务器集成 — 连接外部服务

什么是MCP

Model Context Protocol(MCP),由Anthropic在2024年11月公布,是支持连接外部数据源和工具的行业标准。Claude Code基于MCP,可接入GitHub、Slack、数据库等。

支持的服务示例

  • 开发工具:GitHub / GitLab、Jira
  • 通信:Slack
  • 文档:Google Drive、Notion
  • 数据库:PostgreSQL、SQLite
  • 设计:Figma
  • 云服务:AWS / GCP / Azure

配置方法

可以通过命令添加MCP:

claude mcp add

也可在.mcp.json中配置:

{
  "playwright": { "type": "stdio", "command": "npx", "args": ["-y", "@playwright/mcp@latest"] },
  "github": { "type": "stdio", "command": "uvx", "args": ["mcp-server-github"], "env": { "GITHUB_TOKEN": "${GITHUB_TOKEN}" } }
}

可以限制某些子代理只使用部分MCP,例如:

---
name: browser-tester
description: 浏览器测试
mcpServers:
  - playwright:
      type: stdio
      command: npx
      args: ["-y", "@playwright/mcp@latest"]
  - github
---

保证主会话不暴露敏感信息,只让特定子代理访问。

推荐的MCP服务

开发和代码管理

MCP用途推荐度
GitHubIssue、PR管理及代码检视★★★
GitLabIssue、MR管理★★★
Playwright浏览器自动化测试★★★
Sentry错误监控★★☆

文档与知识库

MCP用途推荐度
Context7实时获取API文档★★★
Notion企业内部文档★★☆
Google Drive文档读取★★☆

数据库与基础设施

MCP用途推荐度
PostgreSQLSQL查询、优化建议★★★
Supabase数据库管理★★☆
AWS日志、资源★★☆

沟通与协作

MCP用途推荐度
Slack消息通知★★☆
Jira/Linear任务管理★★☆
Google Calendar日程管理★☆☆

最初建议配置的三个MCP

  • GitHub:PR/Issue全流程(工作流核心)
  • Context7:引用最新API
  • Playwright:UI变化自动截图
# 添加GitHub MCP
claude mcp add github -- uvx mcp-server-github

# 添加Context7
claude mcp add context7 -- npx -y @upstash/context7-mcp@latest

上下文管理 — 性能核心

为什么重要

Claude Code性能,关键是“上下文窗口利用率”。最大200k tokens,长会话会堆积大量信息,满时提取旧信息会出错。良好的上下文管理是提升效率的关键。

/clear、/compact、/btw的区别

指令用途何时用
/clear完全清空新任务开始
/compact压缩重要信息继续相同任务
/compact Focus on the API changes指定压缩内容特定信息优先保留
/btw插入次要问句不存入历史
Esc+Esc / /rewind撤销操作取消上次

上下文满95%时会自动压缩,阈值可通过环境变量CLAUDE_AUTOCOMPACT_PCT_OVERRIDE调节。

规划探索(Plan 模式)

Plan模式适合“先探索、后实现”。只读不写;切换方法:Shift+Tab或设置默认。

{
  "permissions": {
    "defaultMode": "plan"
  }
}

建议流程:

  1. 探索:阅读目录或代码,理解架构
  2. 规划:列出改造方案,例如“加入OAuth”
  3. 实现:根据计划重构代码,编写测试
  4. 提交:提交PR

此模式节省计算成本,快速掌握任务。

常见问题&解决方案

模式症状解决措施
混乱会话记忆信息杂乱/clear 重启会话
无限修正反复修正相同错误连续修正两次后,执行 /clear
变大CLAUDE.md内容变多,漏规则定期清理
跳过验证只看输出不测结合测试/截图验证
无限探索记忆爆满限制探索范围,委托子代理

高效管理建议

  • CLAUDE.md控制在200行以内
  • 规则拆分Skills,按主题存放
  • 30分钟快节奏,设定时间点压缩
  • 利用子代理大量探索

结语 — 功能比较与应用建议

全功能对比

功能目标时机决定性
CLAUDE.md长期指令会话开始80%遵守
Skills重用流程需要时
Hooks自动化强制特定事件100%执行
Subagents分离任务需求强
Agent Teams多代理合作任务开始
MCP接入外部工具调用

使用策略

  1. 先写CLAUDE.md,设定规则与指南
  2. 常用任务封装Skills
  3. 关键操作用Hooks自动化
  4. 复杂任务用Subagents分离
  5. 融合MCP连接工具
  6. 需要并行时,用Agent Teams

入门建议:先用 /init 生成CLAUDE.md,逐步优化设置,让Claude Code成为最贴合项目的智能帮手。

持续使用,积累经验,定制最佳开发流程。


本文由 LLM 自动生成,内容可能存在错误。