Claude Code 实用技巧汇总与操作指南

本文汇总了 Claude Code 的实用技巧与最佳实践,涵盖从基础操作到高级自动化的全方位内容。Claude Code 是 Anthropic 推出的智能编程代理环境,与传统聊天机器人不同,它能够主动读取文件、执行命令、修改代码,并自主完成复杂任务。

重要概念:Claude Code 的上下文窗口(Context Window)是最宝贵的资源。Opus 4.5 模型拥有 200K token 的上下文窗口,但随着对话延长,性能会逐渐下降。掌握上下文管理是高效使用 Claude Code 的核心技能。


第一部分:项目初始化与配置

技巧 1:使用 /init 初始化项目

这是开启任何项目时应执行的第一条命令。/init 会分析你的代码库,检测构建系统、测试框架和代码模式,生成一份 CLAUDE.md 项目说明书。

cd your-project
claude
> /init

执行过程:

  • 扫描项目结构和依赖关系
  • 识别已有的配置文件(如 GitHub Copilot 指南、Cursor 规则等)
  • 分析数据库配置和技术栈
  • 生成结构化的 CLAUDE.md 文件

CLAUDE.md 文件位置与作用域:

位置 路径 作用范围
个人全局 ~/.claude/CLAUDE.md 所有项目通用
项目根目录 ./CLAUDE.md 当前项目(可提交到 Git)
项目本地 ./CLAUDE.local.md 当前项目(添加到 .gitignore)
父目录 任意父级 CLAUDE.md 适用于 Monorepo 场景
子目录 子文件夹中的 CLAUDE.md 按需加载

CLAUDE.md 最佳实践:

应该包含的内容:

  • Claude 无法从代码推断的 Bash 命令
  • 与默认不同的代码风格规则
  • 测试指令和首选测试运行器
  • 仓库规范(分支命名、PR 约定)
  • 项目特有的架构决策
  • 开发环境配置(必需的环境变量)
  • 常见陷阱或非直观行为

不应该包含的内容:

  • Claude 能从代码中读取的信息
  • Claude 已知的标准语言约定
  • 详细的 API 文档(改为提供链接)
  • 频繁变化的信息
  • 冗长的解释或教程
  • 逐文件的代码库描述

示例 CLAUDE.md:

# 代码风格
- 使用 ES modules (import/export) 语法,而非 CommonJS (require)
- 尽可能使用解构导入 (如 import { foo } from 'bar')

# 工作流程
- 完成代码修改后务必进行类型检查
- 优先运行单个测试而非整个测试套件,以提升性能

技巧 2:使用 <memory> 标签动态更新记忆

在输入框中使用 <memory> 标签,可以让 Claude Code 直接将内容添加到 CLAUDE.md 文件中,无需手动编辑。

<memory>不要自动运行 npm run build</memory>

Claude 会智能地将这条规则添加到文档的合理位置,而不是简单追加到末尾。它还会自动翻译成英文并优化表述。

应用场景:

  • 在编程过程中发现需要强调的规则时即时添加
  • 避免反复出现的错误
  • 沉淀协作经验

技巧 3:使用 Rules 目录实现模块化配置

对于大型项目,可以创建 .claude/rules/ 目录来存放针对不同维度的专项规则。

.claude/
├── rules/
│   ├── ui-design.md      # UI 设计规范
│   ├── testing.md        # 测试规范
│   ├── security.md       # 安全规范
│   └── api.md           # API 开发规范

可以使用 YAML 配置条件加载规则:

---
globs:
  - "src/api/**/*.ts"
---
# API 规则
- 所有 API 端点必须进行输入参数校验
- 使用 RESTful 命名约定
- 返回一致的错误格式

技巧 4:复利工程(Compound Interest Engineering)

这是 Claude Code 创始人 FirstChney 推荐的实践方法:每次完成 PR 后,询问 Claude “我的 PR 有没有什么经验可以添加到 CLAUDE.md 里”。

操作流程:

  1. 完成功能开发和 PR
  2. 让 Claude 复盘本次开发过程
  3. 将有价值的经验沉淀到 CLAUDE.md
  4. 团队成员共同维护和改进

这样,项目说明书会随着协作不断完善,AI 助手的工作质量也会持续提升。


第二部分:上下文管理与输入技巧

技巧 5:使用 @ 符号精准添加上下文

@ 可以快速引用文件、目录或 MCP 工具,支持模糊匹配。

修改 @login.tsx 页面,参考 @signup 组件的风格

支持的引用类型:

  • @文件名 – 引用特定文件
  • @目录/ – 引用整个目录
  • @mcp服务名 – 引用 MCP 工具

技巧:当需要修改某个页面时,同时 @ 相关的组件文件,让 Claude 能够保持风格一致性。

技巧 6:使用 ! 前缀直接执行 Bash 命令

在输入框开头加 ! 可以直接运行 Bash 命令,无需消耗 token 让 Claude 理解。

!git status
!npm test
!ls -la

优势:

  • 命令输出直接添加到上下文
  • 不浪费 token 在命令解释上
  • 实时显示进度和输出
  • 支持 Ctrl+B 后台运行

技巧 7:Ctrl+R 反向搜索历史提示词

按 Ctrl+R 可以搜索过去使用过的提示词。

操作方法:

  1. 按 Ctrl+R 激活搜索
  2. 输入关键词(如 “i18n”)
  3. 再按 Ctrl+R 在匹配结果中循环
  4. 按 Tab 编辑后使用,或按 Enter 直接执行
  5. 按 Ctrl+C 取消搜索

技巧 8:Ctrl+S 暂存 Prompt

当 Claude 正在执行长时间任务时,使用 Ctrl+S 暂存新的输入,避免打断当前任务。

典型场景:

  1. 需求 A 正在执行中
  2. 想到了需求 B(依赖 A 完成后才能进行)
  3. 用 Ctrl+S 暂存需求 B 的指令
  4. A 完成后,暂存的内容自动出现在输入框

技巧 9:多行输入方法

方法 快捷键 适用场景
快速换行 \ + Enter 所有终端
macOS 默认 Option+Enter macOS
iTerm2/WezTerm/Ghostty/Kitty Shift+Enter 支持的终端
控制序列 Ctrl+J 换行字符
粘贴模式 直接粘贴 代码块、日志

第三部分:快捷键完整参考

通用控制

快捷键 功能 说明
Ctrl+C 取消当前输入或生成 标准中断
Ctrl+D 退出 Claude Code EOF 信号
Ctrl+G 用默认编辑器打开 编辑提示词
Ctrl+L 清屏 保留对话历史
Ctrl+O 切换详细输出模式 查看工具执行细节
Ctrl+R 反向搜索历史 搜索之前的命令
Ctrl+V / Cmd+V 粘贴图片 从剪贴板粘贴
Ctrl+B 后台运行任务 tmux 用户需按两次
Esc + Esc 回退代码/对话 恢复到之前的状态(Checkpoint)
Shift+Tab / Alt+M 切换权限模式 Auto-Accept / Plan / Normal
Option+P / Alt+P 切换模型 不清空当前提示词
Option+T / Alt+T 切换深度思考 需先运行 /terminal-setup

文本编辑

快捷键 功能
Ctrl+A 跳到行首
Ctrl+E 跳到行尾
Ctrl+K 删除到行尾
Ctrl+U 删除整行
Ctrl+Y 粘贴删除的文本
Alt+B 向后移动一个单词
Alt+F 向前移动一个单词

Vim 模式

使用 /vim 命令启用 Vim 风格编辑,或通过 /config 永久配置。


第四部分:会话管理

技巧 10:会话持久化与恢复

Claude Code 会话是持久化的,可以随时恢复。

# 继续最近的会话
claude --continue
# 或简写
claude -c

# 选择历史会话恢复
claude --resume
# 或简写
claude -r

会话存储位置:

~/.claude/projects/{项目路径}/{sessionId}/

技巧 11:会话命名与管理

使用 /rename 为会话命名,方便后续查找:

/rename oauth-migration
/rename debugging-memory-leak

在 /resume 列表中:

  • 按 p 预览会话
  • 按 Ctrl+B 切换分支
  • 按 Ctrl+A 显示其他项目的会话

技巧 12:Checkpoint 回退机制

双击 Esc 或运行 /rewind 可以回退到之前的检查点。

回退选项:

  • 仅恢复对话(保留代码更改)
  • 仅恢复代码(保留对话)
  • 同时恢复代码和对话

注意:已执行的 Bash 命令(如 git commit、rm -rf)无法通过 Checkpoint 恢复,请及时使用 Git 进行版本管理。

技巧 13:Cloud Remote – 从网页端接管会话

在 Claude 网页版开启任务后,可以使用 /teleport 命令在本地终端接管:

/teleport

适用场景:

  • 外出时在手机/平板上启动任务
  • 回到电脑后用 CLI 继续工作
  • 云端执行与本地执行灵活切换

第五部分:斜杠命令参考

常用命令

命令 功能
/init 初始化项目,生成 CLAUDE.md
/clear 清除对话历史
/compact [指令] 压缩上下文,可指定保留重点
/config 打开设置界面
/context 可视化当前上下文使用情况
/cost 显示 token 使用统计
/usage 显示计划额度和限制(订阅用户)
/export [文件名] 导出对话为 Markdown
/model 选择或切换 AI 模型
/permissions 查看或更新权限配置
/plan 进入计划模式
/resume [会话] 恢复历史会话
/rewind 回退对话和/或代码
/stats 查看使用统计和活跃度图表
/theme 更改颜色主题
/chrome 切换浏览器集成
/mcp 管理 MCP 服务器
/hooks 管理生命周期钩子
/agents 管理子代理

语言设置

通过 /config 可以设置 Claude 的回复语言:

/config
# 找到 Language 选项,设置为中文

第六部分:深度思考与计划模式

技巧 14:Ultra Thinking 深度思考模式

在复杂架构决策或疑难调试时,使用深度思考模式让 Claude 分配更多推理 token。

ultrathink: 分析当前项目的商业模式和技术架构,给出优化建议

思考预算等级:

  • think – 基础思考
  • think harder – 增强思考
  • ultrathink – 最大思考预算(最多 32K token)

技巧 15:Plan Mode 计划模式

计划模式是 90% 场景下推荐使用的工作方式,它会:

  1. 分发多个子代理并行分析代码库
  2. 汇总分析结果给主代理
  3. 与你互动确认需求细节
  4. 生成详细的分步计划

进入方式:

/plan
# 或
Shift+Tab 切换到 Plan Mode

计划文件存储位置:

.claude/plans/

计划文档结构:

  • 目标定义
  • 分阶段步骤
  • 当前状态与预期状态
  • 具体实施方法
  • 验收标准
  • 风险披露

推荐工作流程:

  1. 探索阶段 – 了解代码库
  2. 计划阶段 – 制定方案并确认
  3. 执行阶段 – 实施代码修改
  4. 验证阶段 – 运行测试确认

第七部分:子代理(Subagent)

技巧 16:理解子代理的价值

子代理是节省上下文的利器。每个子代理拥有独立的 200K 上下文窗口,完成任务后只将摘要返回主对话。

比喻:圣诞老人不亲自包装每一个礼物,他有小精灵帮忙。子代理就是这些小精灵。

内置子代理

子代理 模型 工具 用途
Explore Haiku 只读 代码搜索和分析
Plan 继承主会话 只读 计划模式研究
general-purpose 继承主会话 全部 复杂多步骤任务

技巧 17:创建自定义子代理

在 .claude/agents/ 目录创建 Markdown 文件:

---
name: code-reviewer
description: 代码审查专家。在代码修改后主动审查质量和安全性。
tools: Read, Grep, Glob, Bash
model: sonnet
---

你是一名高级代码审查员。审查清单:
- 代码清晰可读
- 函数和变量命名良好
- 无重复代码
- 正确的错误处理
- 无暴露的密钥或 API 密钥
- 输入验证已实现

技巧 18:并行执行子代理

对于独立的调研任务,可以同时启动多个子代理:

使用子代理并行研究认证模块、数据库模块和 API 模块

前台 vs 后台子代理:

  • 前台子代理:阻塞主对话,可以交互
  • 后台子代理:并行执行,自动处理权限

按 Ctrl+B 可将正在运行的任务移到后台。


第八部分:Skills(技能)

技巧 19:理解 Skills 的作用

Skills 是给 Agent 用的说明书,类似于菜谱。它包含:

  • 指令说明
  • 执行脚本
  • 资源文件

Skills 存储位置:

位置 路径 作用范围
企业级 托管设置 组织内所有用户
个人 ~/.claude/skills/<skill-name>/SKILL.md 所有项目
项目 .claude/skills/<skill-name>/SKILL.md 当前项目
插件 <plugin>/skills/<skill-name>/SKILL.md 启用插件的地方

技巧 20:创建自定义 Skill

示例:代码解释技能

---
name: explain-code
description: 使用可视化图表和类比解释代码
---

当解释代码时:
1. 首先用简单语言概述功能
2. 使用 Mermaid 图表展示流程
3. 提供现实世界的类比
4. 逐步分解复杂部分

示例:修复 GitHub Issue 技能

---
name: fix-issue
description: 修复 GitHub issue
disable-model-invocation: true
argument-hint: [issue-number]
---

修复 GitHub issue $ARGUMENTS:

1. 使用 `gh issue view` 获取详情
2. 理解问题描述
3. 搜索相关代码
4. 实现修复
5. 编写测试
6. 创建提交

使用 disable-model-invocation: true 可以防止 Claude 自动触发该技能,只能通过 /fix-issue 123 手动调用。

技巧 21:Skill 中使用动态上下文注入

使用 !command“ 语法可以在 Skill 执行前运行 Shell 命令并注入结果:

---
name: pr-summary
description: 总结 PR 变更
context: fork
agent: Explore
---

## PR 上下文
- PR diff: !`gh pr diff`
- PR 评论: !`gh pr view --comments`
- 变更文件: !`gh pr diff --name-only`

## 任务
总结这个 PR...

第九部分:Hooks(钩子)

技巧 22:理解 Hooks 的作用

Hooks 是在 Claude Code 生命周期特定时刻执行的 Shell 脚本,提供确定性控制。

Hook 事件类型:

事件 触发时机
PreToolUse 工具调用前(可阻止)
PostToolUse 工具调用后
PermissionRequest 显示权限对话框时
UserPromptSubmit 用户提交提示词时
Notification 发送通知时
Stop 响应完成时
SubagentStop 子代理完成时
SessionStart 会话开始时
SessionEnd 会话结束时

技巧 23:创建实用 Hooks

代码格式化 Hook:

{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "jq -r '.tool_input.file_path' | { read file; [[ $file == *.ts ]] && npx prettier --write \"$file\"; }"
          }
        ]
      }
    ]
  }
}

文件保护 Hook:

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "python3 -c \"import json,sys; d=json.load(sys.stdin); p=d.get('tool_input',{}).get('file_path',''); sys.exit(2 if any(x in p for x in ['.env','package-lock.json','.git/']) else 0)\""
          }
        ]
      }
    ]
  }
}

危险命令拦截 Hook:
阻止执行 rm -rf / 等危险命令。

通知 Hook:
任务完成时发送飞书/邮件通知。


第十部分:权限与安全

技巧 24:权限配置策略

通过 /permissions 或 settings.json 配置权限。

权限模式:

  • default – 标准权限检查
  • acceptEdits – 自动接受文件编辑
  • dontAsk – 自动拒绝权限提示
  • bypassPermissions – 跳过所有权限检查
  • plan – 计划模式(只读探索)

技巧 25:Sandbox 沙盒模式

沙盒模式限制 Bash 工具的执行权限,在隔离环境中安全运行。

claude --sandbox

技巧 26:YOLO 模式(Dangerous Mode)

claude --dangerously-skip-permissions

警告:此模式跳过所有权限检查,仅在以下场景使用:

  • 隔离的容器环境
  • 低风险的自动化任务
  • 充分信任的操作

第十一部分:无头模式与自动化

技巧 27:Headless 无头模式

# 一次性查询
claude -p "解释这个项目是做什么的"

# 结构化输出
claude -p "列出所有 API 端点" --output-format json

# 流式输出
claude -p "分析这个日志文件" --output-format stream-json

技巧 28:CI/CD 集成

# 在 CI 中运行
claude -p "如果有新的文本字符串,翻译成法语并创建 PR" --dangerously-skip-permissions

# 管道处理
tail -f app.log | claude -p "发现异常时通知我"

第十二部分:MCP 与浏览器集成

技巧 29:配置 MCP 服务器

MCP(Model Context Protocol)让 Claude 能够访问外部服务。

/mcp

常用 MCP 服务:

  • Playwright – 浏览器自动化
  • Context7 – 获取最新文档
  • GitHub – 仓库管理
  • Figma – 设计稿获取
  • Jira – 任务管理

技巧 30:浏览器集成

# 启用 Chrome 集成
/chrome

# 或启动时指定
claude --chrome

功能:

  • 截图
  • 填写表单
  • 获取控制台错误
  • 检查 DOM
  • 自动化测试

最佳实践:

  • Playwright MCP 更适合非视觉密集型任务
  • Chrome 原生集成适合需要登录状态的场景
  • 使用 accessibility tree refs 而非坐标点击

第十三部分:上下文优化

技巧 31:查看上下文使用情况

/context

输出示例:

系统提示词: 3.1k tokens
系统工具: 16.5k tokens
MCP 工具: 216 tokens
消息: 9.2k tokens
剩余空间: 112k tokens (61.2%)

技巧 32:启用工具搜索减少开销

在 settings.json 中添加:

{
  "env": {
    "ENABLE_TOOL_SEARCH": "true"
  }
}

这样 MCP 工具会按需加载,而非全部预加载。

技巧 33:自定义状态栏

/statusline

可显示:

  • 当前模型
  • Git 分支
  • 上下文使用百分比
  • Token 消耗
  • 5 小时额度状态

推荐工具:

  • cc-usage – 第三方状态栏脚本
  • web-usage – 使用量追踪器

第十四部分:Plugins(插件)

技巧 34:安装和管理插件

插件将 Skills、Hooks、Subagents、MCP 服务打包成一个可安装单元。

# 查看插件市场
/config -> Marketplace

# 添加自定义市场
/config -> Add Market -> [仓库 URL]

技巧 35:常用插件推荐

  • frontend-design – 前端设计辅助
  • Context7 – 最新文档获取
  • Supabase – 数据库集成
  • Code Simplifier – 代码简化

第十五部分:LSP 集成

技巧 36:Language Server Protocol

LSP 让 Claude Code 拥有 IDE 级别的代码智能:

  • 智能诊断
  • 代码导航
  • 查找引用
  • 重构支持

不同语言有不同的 LSP 实现,Claude Code 可以借助 LSP 更精准地理解和修改代码。


第十六部分:Agent SDK

技巧 37:通过 SDK 集成 Claude Code

import { query } from '@anthropic/claude-code';

const result = await query({
  prompt: "为所有公共函数添加 Markdown 格式的 API 文档",
  options: {
    allowedTools: ["Read", "Write", "Glob"],
    permissionMode: "acceptEdits"
  }
});

这允许在自己的应用中以编程方式使用 Claude Code 的能力。


第十七部分:最佳实践总结

提供验证方式

让 Claude 能够验证自己的工作:

  • 提供测试用例
  • 要求截图对比
  • 解决根本原因而非表象

先探索,再计划,再编码

  1. 探索:了解代码库
  2. 计划:制定方案
  3. 执行:实现代码
  4. 验证:确认结果

积极管理上下文

  • 任务间使用 /clear 清除
  • 主动使用 /compact 压缩
  • 使用子代理隔离大量输出
  • 避免"厨房水槽会话"

避免常见错误

问题 解决方案
厨房水槽会话 任务间使用 /clear
反复纠正 两次失败后 /clear 并改进提示词
CLAUDE.md 过长 精简保留必要内容
信任后不验证 始终提供验证方法
无限探索 缩小范围或使用子代理

附录:快捷键速查表

必备快捷键

快捷键 功能
Esc + Esc 回退检查点
Ctrl+R 搜索历史提示词
Ctrl+S 暂存当前输入
Shift+Tab 切换权限模式
Ctrl+B 后台运行任务
Option+P / Alt+P 切换模型
Ctrl+O 切换详细模式
Ctrl+L 清屏

常用命令

命令 功能
/init 生成项目说明书
/context 查看上下文使用
/usage 查看额度使用
/compact 压缩上下文
/plan 进入计划模式
/clear 清除对话
--continue 恢复最近会话
--resume 选择历史会话
-p "prompt" 无头模式执行

Claude Code 不仅是一个编程工具,更是人机协同的新范式。我们与 AI 协同,而非向 AI 妥协。通过 Plan Mode、Subagent、Skill、Hook 等机制,我们可以定义与 AI 交互的资产,这些资产具有复利价值。

每次与 Claude 的对话中产生的新规范、需要强调的细节,都应该沉淀到 CLAUDE.md 中。同时,将最佳实践总结为 Skill,将重复操作封装为 Hook,让下一次执行更加高效。

Claude Code 正在从程序员专属工具演进为通用生产力工具,销售、营销等非技术人员也开始使用它。掌握这些技巧,将帮助你在 AI 时代获得 10 倍甚至 100 倍的生产力提升。


已有 0 条评论
滚动至顶部