Skip to content

Claude Code 功能总览

Claude Code 是 Anthropic 推出的终端原生编程 Agent(terminal-native agentic coding system):直接跑在你的项目目录里,能读写文件、执行命令、跑测试、提交 Git,把「让 AI 帮我改代码」从补全升级成「让 AI 自主完成一个工程任务」。本块系统介绍它的功能、代码架构与底层机制。通用编程 Agent 原理见 编程 Agent 底层架构与机制

说明:本块内容综合自 Claude Code 官方文档与社区逆向分析白皮书(如 ccb.agent-aura.top)。核心机制(agentic loop、工具、上下文压缩、权限、MCP、Hooks、Skills、子 Agent 等)是公开可观察的行为;个别内部实现细节(具体文件名、内部 flag 等)来自社区逆向,可能随版本变化,仅供理解原理参考。

一、它是什么?一句话定位

维度Claude Code
形态终端 CLI(也有 IDE 扩展、SDK)
本质自主 agentic loop 驱动的编程 Agent
权限在本地进程运行,有真实文件系统和 shell 访问权
与补全的区别不是「补下一行」,而是「自主完成多步任务」
与云端 Chat 的区别直接操作你的真实代码库,不是隔离沙箱里的玩具

核心理念:把强模型放进一个能真正动手的循环里——看代码、改代码、跑测试、看结果、再改,直到任务完成。

二、核心功能清单

1. 自主编码(Agentic Coding)

给一个任务(「修复这个 bug」「加一个功能」「重构这个模块」),Claude Code 自己决定:读哪些文件、怎么改、跑什么命令验证——多轮自主推进,而非一问一答。机制见 核心机制

2. 工具系统

内置一套文件/命令/搜索工具(社区统计 50+ 个),让模型能真正操作环境:

  • 文件:Read / Edit / Write(精确「旧文本→新文本」替换,而非整文件覆盖)
  • 命令:Bash(跑测试、git、构建、装依赖)
  • 搜索:Grep / Glob(基于 ripgrep 的快速代码检索)
  • 任务:TodoWrite / Task(待办与子任务管理)

3. 项目记忆(CLAUDE.md)

项目根目录的 CLAUDE.md(及用户级配置)存放项目约定、常用命令、代码风格,每次会话自动注入上下文,让 Claude「记得」你的项目规矩。详见 核心机制 - 上下文

4. 计划模式(Plan Mode)

「先看后做」的安全机制:让 Claude 先调研、给出方案,你确认后再动手改代码,避免它一上来就乱改。适合复杂或高风险任务。

5. 子 Agent / 并行(Subagents)

复杂任务可派生子 Agent(Task 工具),各自维护独立上下文并行处理子任务、只回传结论——避免主上下文被塞爆(上下文隔离,见 上下文工程)。

6. 扩展能力:MCP / Hooks / Skills / Slash Commands

  • MCP:通过 MCP 协议 接入外部工具和数据源(数据库、API、第三方系统)。
  • Hooks:在工具执行前后挂自定义脚本(拦截、校验、通知),实现确定性的工程约束。
  • Skills:把「提示即能力」打包成可复用的技能(带 Frontmatter 描述、按需加载)。
  • Slash Commands/ 开头的自定义命令,封装常用工作流。

7. 多后端 / 多形态

  • 模型后端可对接 Anthropic API、AWS Bedrock、Google Vertex 等。
  • 形态:终端 CLI、IDE 扩展(VS Code/JetBrains)、Agent SDK(构建自定义 Agent)、CI 集成(claude -p 管道式调用)。

三、典型工作流

你:「给用户登录加上限流」

Claude Code:
  grep 找到登录相关代码 → 读相关文件理解结构
  → (可选)Plan Mode 给出方案让你确认
  → Edit 修改代码 + 新增限流逻辑
  → Bash 跑测试验证
  → 测试失败则读报错、再改、再跑
  → 完成后总结改动(可帮你 git commit)

全程模型自主决策每一步,你在关键节点(权限、计划)介入。

四、和其他编程工具的关系

工具定位
Claude Code终端原生自主 Agent,跨文件大改/自动化/CI
Cursor / WindsurfIDE 内嵌,编辑体验 + 索引 + Agent
Copilot 补全编辑器内联、即时补全
Codex CLI / Gemini CLI同类终端 Agent,范式趋同

横向对比与底层范式收敛见 编程 Agent 底层架构与机制

高频追问

Q:Claude Code 和 Copilot 有什么本质区别? Copilot 主要是「补全下一段代码」,低延迟、零摩擦但被动;Claude Code 是「自主 agentic loop」——能跨多文件读、改、跑测试、迭代,自主完成一个完整工程任务。一个是「副驾驶补字」,一个是「自主完成工单」。

Q:它真的能跑命令、改我的文件吗?安全吗? 能——它运行在本地进程、有真实 shell 和文件访问权,所以能跑测试、提交 Git。安全靠权限模型(Allow/Ask/Deny)、Plan Mode(先看后做)、沙箱等多层机制;高危操作会询问你(见 核心机制 - 权限)。

Q:CLAUDE.md 是干什么的? 项目级记忆文件,存放项目约定、命令、风格等,每次会话自动注入上下文,让 Claude 持续「记得」你的项目规矩,相当于给 Agent 的持久化项目说明书(持久记忆,见 Agent 记忆)。

Q:为什么强调「终端原生」? 终端意味着直接、可组合(Unix 管道 echo ... | claude -p)、易集成 CI/CD、无 IDE 绑定。它把 Agent 当成「命令行里的一等公民」,而非某个编辑器的插件,从而能自动化和脚本化。

基于 MIT 许可发布