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 commitrm -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:权限配置策略

通过 /permissionssettings.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 条评论
滚动至顶部