ClaudeCode 基本介绍

Claude Code 是一个由 AI 驱动的编码助手

  • 理解和编辑代码,运行指令,构建功能、修复错误和自动化开发任务
  • 跨多个文件和工具来执行任务,支持终端、IDE、桌面应用和浏览器中使用

快速上手

官方脚本一键安装:

# macOS, Linux, WSL
curl -fsSL https://claude.ai/install.sh | bash

# Windows PowerShell
irm https://claude.ai/install.ps1 | iex

# Windows CMD
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

账户登录与激活:使用 cc-switch 来配置和管理 AI 接口

基本操作:

  • 自然对话,支持复制粘贴文本或图片文件
  • 使用 @ 命令符可单独引用文件
  • 使用 ! 命令符可执行终端命令
  • 命令 | claude 可直接将命令结果发送给 claude

基本命令(完整命令列表 - 参考):

cd /path/project # 先进入项目根目录
claude  # 启动后,即可直接开始对话

# 其他常见命令
/login # 登录账号(不是必须)
/help # 查看可用命令(可选)
/doctor # 检查安装的健康状态

/init # 项目初始化分析,创建CLAUDE.md
/clear # 清理历史对话
/context # 查看当前上下文占用情况
/cost # 查看当前会话的Token消耗
/compact # 压缩上下文
/resume # 继续对话(用于对话中断后)

/model # 切换模型
/agents # 配置自定义子代理
/memory # 浏览并打开记忆文件
/mcp # 管理MCP服务
/skills # 列出可用 Skills

/rewind # 检查点回滚代码或对话,/checkpoint是别名
/code-review # 对当前代码进行审核
claude commit # 创建 Git 提交

核心概念

Agentic loop

智能体循环(agentic loop)

  • 对于用户输入的要求/目标,ClaudeCode 会启动 agentic loop 来满足要求/实现目标
  • agentic loop 包含收集上下文、采取行动和验证结果三个阶段,每个阶段可反复循环
  • agentic loop 包含模型和工具两类组件,模型用于代码理解和任务推理,并对复杂任务进行拆解、执行、验证和调整;工具则用于文件操作、检索、脚本执行等具体行为

Agentic loop 的扩展能力:

  • MCP,连接外部服务和工具,获取外部数据或进行操作
  • skills,持久化可复用的内容、文档和任务工作流
  • subagents,上下文隔离、可并行任务的独立专用 Agent
  • Hook,事件驱动的自动化脚本,常用于格式化、通知、审计等工作
  • Agent teams,协调多个独立会话,用于并行研究和新功能开发

Plugins,作为 skills、hooks、MCP 等拓展能力的打包层,将其封装为独立的可安装单元,方便拓展能力的管理和分享

环境与会话

Claude Code 的访问权限范围:

  • 指定项目内的所有文件,经批准的其他位置文件
  • 任意当前环境下支持的终端命令,Git 状态与历史纪录
  • 项目说明文件 CLAUDE.md,核心记忆文件 MEMORY.md
  • 其他扩展能力(可选),比如 MCP、skills、subagents 和浏览器

Claude Code 的三种运行环境:

  • Local(默认),可以完全访问本地文件、工具和环境
  • Cloud,通过虚拟机来执行任务,可处理非本地的代码
  • RemoteControl,通过浏览器进行控制,保持内容的本地化

Claude Code 的会话管理:

  • 每条消息、工具调用和结果都会被写入本地文件,会话与目录绑定
  • 支持会话的回溯和恢复,可切换会话到不同分支,且不影响记忆
  • 多个终端中恢复同一个会话后,会导致消息穿插,对话内容混乱
  • 当接近上下文限制时会触发上下文自动压缩,可能导致会话细节丢失
  • 不同会话之间是独立的,只有 CLAUDE.md 和 MEMORY.md 可传递

CLAUDE.md VS MEMORY.md

  • 前者包含规则与项目描述,比如编程规范、工作流程和项目架构
  • 后者包含经验和模式,比如构建命令,调试建议和挖掘到的偏好设置
  • 前者会在每次对话时全部载入,适用于项目内的所有组织或成员
  • 后者只是部分载入(前 200 行或 25KB),适用于每次工作流

CLAUDE.md 要尽量简洁(200 行以内),以减少 Token 的消耗

MEMORY.md 仅作为记忆存储目录的索引,其具体的记忆文件存储路径为: ~/.claude/projects/<project>/memory/

安全机制

内容快照与检查点

  • 默认对当前内容进行快照,可通过两次 Esc 键进行撤销回退
  • 检查点与 Git 相互独立,仅在当前的会话生效
  • 仅支持文件的变更快照,不支持系统操作和程序接口快照

不同的权限模式

  • default(默认),在进行文本编辑和 Shell 命令操作前会进行询问
  • acceptEdits,自行编辑文件并执行常见命令,特定命令仍会查询
  • plan,仅进行只读操作,用于制定一份执行前需批准的计划
  • auto,根据后台的安全检查自动评估所有操作(实验性功能)
  • dontAsk,仅通过已允许的操作,其他自动拒绝(受限场景)
  • bypassPermissions,自动允许,适合容器和虚拟机等隔离场景

.claude/settings.json 可配置默认允许的特定命令

运行流程

(1)启动前:在输入任何内容之前,加载 CLAUDE.md、MEMORY.md(部分)、MCP 工具列表, skills 描述以及个性化输出风格提示

(2)运行时:将读取到的文件添加到上下文,加载路径规划约束;在每次完成文件编辑后,触发相关的事件 hook(比如语法校验)

(3)后续提示:subagent 会在隔离的上下文窗口内进行特定任务,因此大文件的读取操作不会占用主会话的上下文(subagent 会返回摘要和元信息)

(4)结束:压缩对话并形成结构化摘要,重新加载启动前的内容

进阶阅读

ClaudeCode 经验总结

ClaudeCode 源码解读

其他参考: AI 编程新阶段:Claude Code上手指南

往年同期文章