Claude Code教程(三)| Claude Code的使用技巧

一、初始化配置 ​

1. 创建 CLAUDE.md 文件

CLAUDE.md 是 Claude Code 的核心配置文件,在每次会话启动时会被自动读取并加入上下文中。

该文件内容一般包含: ​

  • 项目基础信息和架构说明
  • 常用命令和构建脚本
  • 代码规范和约定
  • 测试指南
  • 开发环境配置
  • 其他必要的上下文信息(可通过 @path/to/import 来引用项目文件)

创建方式: ​

# 使用 /init 命令自动生成

> /init

# 或者手动创建并填充内容

touch CLAUDE.md

文件位置优先级: ​

  • 项目根目录:./CLAUDE.md(推荐,可提交到 git)
  • 项目本地:./CLAUDE.local.md(不提交到 git)
  • 全局配置:~/.claude/CLAUDE.md
  • 父目录和子目录中也会被自动读取

2. 配置工具权限 ​

Claude Code 默认采用保守的权限策略。可以通过四种方式显式授权:

  1. 启动时的交互式授权提示
  2. 运行 /permissions 命令
  3. 手动编辑 .claude/settings.json
  4. 启动参数 --allowedTools
# 使用 /permissions 命令管理权限
/permissions

# 或者通过命令行参数
claude --allowedTools Edit,Bash(git commit:*)

推荐允许的工具: ​

  • Edit: 文件编辑
  • Bash(git commit:*): Git 提交操作
  • WebFetch(*): 访问 URL 网址

二、需求描述 ​

1、先理解项目代码再开动

在修改代码之前,先让 Claude 理解你的代码,比如:

  • 分析一下数据库表结构;
  • 这个应用中的错误是如何处理的?

修改前,先让 AI 理解你业务和代码,这样才能更精准、高效地辅助你开发和优化。

2、需求说具体点

别再说:“修复这个漏洞” 这么笼统的指令:尽量把你的需求说具体点。

你可以这样和它说:

修复用户登录时不输入密码出现的空指针错误

3、把复杂的需求分步执行

如果是小任务/模块,可以一次性把需求发给 AI,一次性出结果,整体效率更高。

但是,如果是大需求,实现流程比较长的那种,建议把复杂的任务拆解成小步骤,比如:

  • 给用户 API 创建一个新接口;
  • 给请求的字段添加必要的验证;
  • 编写这个接口的测试用例;

因为 AI 上下文都有限制,代码量/记忆太长可能输出不全、甚至被截断,还是分步最安全,每一步完成后你都可以先 review/测试,再让 AI 执行下一步。

像上面的示例,其实并不复杂,可以一次性发给 Claude Code,AI 能整体考虑代码结构和风格,减少重复解释和沟通成本。

三、开启免授权模式 ​

你是不是经常遇到 Claude Code 干活干一半,停下来让你授权?不授权就卡在那里,虽然可以在当前会话可以设置不再询问,但权限又有好几种,每种权限都要来问一下,严重影响效率。

其实,启动 claude 时有一个参数:

claude --dangerously-skip-permissions

带上这个参数启动时,Claude Code 会出现警告提示:

你需要点确认(Yes)才能开启 Bypassing Permissions 模式,开启此模式后,终端下面会出现黄色的 Bypassing Permissions 模式提示:

开启 Bypassing Permissions 模式后,后面所有操作就都不需要你授权了,Claude Code 哐当就把所有活干了。

每次都输入 claude --dangerously-skip-permissions 太麻烦了,还可能输错,可以考虑他那一个 alias 别名:

alias claude=‘claude --dangerously-skip-permissions’

这只是临时生效,永久生效可以把它放到个人环境配置文件中,然后 source 生效一下。

四、激活深度思考模式

在 Claude Code 中,可以使用 “think” 这个词来激活深度思考模式,包括以下几种级别:

“think” < “think hard” < “think harder” < “ultrathink”

使用这些深度思考,会直接对应系统中不同级别的思考预算,每一级都会逐步增加 Claude 可用的思考预算,毫无疑问,使用 ultrathink 是最费钱的,也能发挥它的最大潜能。

如果你是订阅的是 Max 套餐,可以考虑使用 ultrathink 模式,不然就得小心你的钱包。

比如我来测试一下:

1+1=?ultrahink

一个 1+1 计算耗费了 0.06 美元,大概不到 5 毛 RMB。。

五、实操技巧

1. 发送图片处理

Claude Code 可以发送图片并进行处理,在命令行中,把图片和提示词发过去,让它更好的理解你的意图。

如图所示:

注意,在 Mac 中粘贴图片不是使用 command + v,而是使用 ctrl + v 快捷键。

你还可以发送以下命令:

  • 这个图片显示了什么?
  • 这是错误的截图,是什么原因导致的?
  • 请根据这个图片的设计模型设计网页

2. 恢复历史会话

(一)非交互模式下

Claude Code 提供两个选项来恢复之前的对话:

  • claude --continue 或者 claude -c:自动继续最近的对话,无需任何提示。
  • claude --resume 或者 claude -r:显示历史对话选择器;

这两个带参数的命令需要在「非交互模式」下进行,也就是还没有进入 Claude Code。

(二)交互模式下

如果你已经进入了 Claude Code 会话,想恢复到之前的哪个历史会话,可以使用 /resume 命令恢复历史会话,上下方向键选中一条记录可以恢复会话。
在这里插入图片描述

3. 编辑记忆文件(比如永远回复中文)

在会话期间使用 /memory 斜杠命令,可以在系统编辑器中打开记忆文件:
在这里插入图片描述
比如我们可以修改用户级记忆文件:
> 每次请用中文回答我。
这样设置记忆后,后续所有项目的交互就都是中文回答的了。

4. 上下文压缩

Claude Code 提供了一个 /compact 压缩命令:

它会清除对话历史记录,但保留上下文中的摘要。

这样做的好处是:

  • 减少对话上下文大小:当对话历史变得很长时,使用 /compact 可以压缩对话内容,减少令牌使用量。
  • 手动压缩控制:虽然 Claude Code 默认在上下文超过 95% 容量时自动压缩(可通过 /config 开启/关闭自动压缩),但你可以使用 /compact 手动触发压缩。

如图所示:
在这里插入图片描述
当剩余上下文空间不多时,右下角会显示自动压缩的剩余百分比,当达到 0% 时就会进行压缩。

所以,为了有效管理成本和性能:

  • 建议在上下文变大时定期使用 /compact 手动进行压缩;
  • 定时使用 clear 命令重置上下文;
  • 分解复杂任务或者把需求尽量具体化;

当然,土豪,请略过。

六、与工具/系统交互

1. 和 Git 进行交互

在 Claude Code 中,我们的 Git 操作就可以变得对话形式,不用记住一些繁琐的命令。

我修改了哪些文件

用合理描述性信息提交我的更改

推送本分支到远程
在这里插入图片描述

删除本分支并切换到master分支
在这里插入图片描述

显示最近3次提交中所有文件列表
在这里插入图片描述

2. 和 Linux 交互

因为 Claude Code 是终端形式使用嘛,所以我们也可以把它当作 Linux 智能助手用,无需记住繁杂的 Linux 命令。

在交互模式下:

列出行数最多的前3个.java文件

从执行信息可以看到它正在执行的命令,这么复杂的命令一般人是很难记住的。

在非交互模式下:

claude -p “列出行数最多的前3个.java文件”

这是执行一次命令,它会列出满足条件的文件后退出 Claude Code 交互模式。

七、模型切换

Claude Code 目前支持 Claude Opus 与 Claude Sonnet 4 两个模型的灵活切换。
使用 /model 命令进行切换:

默认为 Claude Sonnet 4,可以切换到 Claude Opus,不过个人感觉没必要,强烈推荐使用 Claude Sonnet 4,其使用体验与Claude Opus 并没有明显差别,但计费倍率仅为其 1/5,土豪请忽略。

注意,只有 Max 用户才支持 Claude Opus 并支持切换,Pro 用户只支持 Claude Sonnet 4。

查看消耗情况
使用 /cost 命令查看当前会话使用情况:

如图,显示我当前会话已经消耗了 1.23 美金。

官方查看消耗,但过于笼统,不够直观,推荐使用 ccusage 工具来查看。

安装 ccusage:

sudo npm install -g ccusage

如果要查看自某天开始的消耗:

ccusage -s 20250701

如果要实时查看消耗:

ccusage blocks --live

Claude Pro / Max 订阅用户可以不用理会消耗,它是按月计费的,不是按使用量计费的,如下面所示:

超过了使用量就会变得不可用:

需要等待,到了指定时间才能恢复。

八、自定义快捷命令

使用介绍

Claude Code 支持自定义命令,你可以创建一些命令来快速执行特定的提示或任务,比如:

  • 分析这个项目的性能,并提出三个具体的优化建议。
  • 用合理描述性信息提交所有变更文件,然后推送到远程仓库。

这样一些常用的操作就不需要写一堆文字了,用自定义命令即可。

自定义命令语法:

/<prefix>:<command-name> [arguments]

自定义命令解读:

  • 命令分为用户级和项目级;
  • 用户级命令所有项目都能用,项目级命令只有当前项目可以用;
  • 用户级命令放在个人 ~/.claude/commands 目录下,而项目级命令放在当前项目 .claude/commands 目录下;
  • 使用命令时,用户级命令以 /user: 为前缀,项目级命令 /project: 为前缀,后面跟的是命令文件名称,可级联;
  • 命令文件支持使用 $ARGUMENTS 参数占位符,在命令后面带上参数,如:/project:test 123 它会用 123 替换命令文件中的 $ARGUMENTS 标记。

比如如果有 .claude/commands/frontend/component.md 自定义命令,使用方法 就是:/project:frontend:component

实战应用

(一)项目级命令

在当前项目创建自定义命令目录:

mkdir -p .claude/commands

创建一个项目级优化命令:

echo “分析这个项目的性能,并提出三个具体的优化建议。” > .claude/commands/optimize.md

在 Claude Code 中使用自定义命令:

/project:optimize

在这里插入图片描述

没想到它还自己把任务细化了,从分析项目整体架构、性能瓶颈、数据库操作,然后再提出优化建议。

(二)用户级命令

在个人目录下创建自定义命令目录:

mkdir -p ~/.claude/commands

创建一个项目级优化命令:

echo “用合理描述性信息提交所有变更文件,然后推送到远程仓库。” > ~/.claude/commands/push.md

在 Claude Code 中使用自定义命令:

/user:push

在这里插入图片描述

nice~这样让 Git 交互也更简单了!

九、学会用快捷键,节省时间

  • 输入 / 查看所有斜杠命令;
  • 使用上下方向键查看命令历史;
  • 使用 Tab 键进行命令快速补全;
  • 使用 Option + Enter 换行;
  • 使用 Ctrl + C 退出终端等等。

参考文章
【1】榨干 Claude Code 的 16 个实用小技巧(高端玩法,建议收藏!)
【2】Claude Code 最佳实践和使用技巧 ​

<think>我们正在讨论Claude Code中配置CLAUDE.md文件的方法。根据引用[1],CLAUDE.md是项目的“说明书”,它作为核心配置文件,帮助Claude理解项目结构和需求。引用[3]提到了一些配置方法,比如创建自定义指令文件夹和命令文件。 配置步骤: 1. 创建CLAUDE.md文件:在项目根目录创建CLAUDE.md文件,用于描述项目整体结构、关键约定和通用指令。 2. 创建命令目录:建立.claude/commands目录存放具体命令文件(如optimize.md, fix-issue.md)。 3. 编写命令文件:每个命令对应一个.md文件,内容为指令模板(可包含步骤和变量)。 4.CLAUDE.md中引用命令:通过特殊语法(如`> /optimize`)调用命令。 示例配置: 在CLAUDE.md中: ```markdown # 项目规范 - 代码风格:遵循Google Java Style Guide - 测试要求:所有新增方法必须包含单元测试 # 常用命令 > /optimize # 性能优化命令 > /fix-issue # 问题修复命令 ``` 在.claude/commands/optimize.md中: ``` 分析指定Java类的性能并提出优化建议,包括: 1. 识别时间复杂度高于O(n log n)的代码段 2. 检查资源泄漏风险 3. 提出3条具体改进措施 ``` 使用方式: 在对话中输入`> /optimize ClassName.java`触发命令 注意事项: - 变量通过`$ARGUMENTS`传递(如/fix-issue 213中的213) - 复杂命令建议分步骤实现 - 启用深度思考模式处理复杂逻辑(在命令文件中注明) 通过这种配置,Claude能根据项目规范执行标准化操作[^1][^3]。 §§相关问题§§ 1. 如何为Claude Code创建自定义命令模板? 2. CLAUDE.md文件中应该包含哪些关键内容? 3. 如何在命令文件中使用变量和条件逻辑? 4. Claude Code如何识别项目中的多个命令文件?</think>### Claude Code 中配置 `CLAUDE.md` 文件的方法 `CLAUDE.md` 是 Claude Code 项目的核心配置文件,相当于项目的"说明书",用于定义项目规范、指令模板和上下文规则。以下是详细配置方法: --- #### **1. 创建基础文件结构** 在项目根目录执行: ```bash mkdir -p .claude/commands # 存放自定义指令模板 touch CLAUDE.md # 主配置文件 ``` --- #### **2. 配置 `CLAUDE.md` 核心内容** 编辑 `CLAUDE.md` 文件,包含以下关键部分: ```markdown ### 项目规范 - **代码风格**: Google Java Style Guide - **测试要求**: 所有新增方法必须包含单元测试 - **安全规范**: 禁止硬编码敏感信息 ### 依赖管理 ```xml <!-- 示例依赖声明 --> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>5.3.22</version> </dependency> </dependencies> ``` ### 常用命令 > /optimize # 性能优化指令 > /fix-issue # 问题修复指令 > /doc-gen # 文档生成指令 ``` --- #### **3. 创建自定义指令模板** 在 `.claude/commands` 目录下创建指令文件: ```bash # 性能优化指令模板 echo "分析代码并提出3条优化建议:\n1. 识别性能瓶颈\n2. 建议替代算法\n3. 内存优化方案" > .claude/commands/optimize.md # 问题修复指令模板 echo "修复问题#$ARGUMENTS:\n1. 复现问题\n2. 定位相关代码\n3. 编写修复方案\n4. 添加测试用例" > .claude/commands/fix-issue.md ``` --- #### **4. 启用上下文感知** 在 `CLAUDE.md` 末尾添加上下文规则: ```markdown ### 上下文规则 - 自动关联同目录的 `pom.xml` 文件 - 优先参考 `src/main/resources/config.yaml` 中的配置 - 忽略 `tmp/` 目录下的文件 ``` --- #### **5. 使用配置的指令** 在 Claude Code 对话中直接调用预定义命令: ```bash > /optimize src/main/java/com/example/Service.java # 触发性能优化 > /fix-issue 215 # 修复问题#215 ``` --- #### **关键配置技巧** 1. **变量传递** 在指令中使用 `$ARGUMENTS` 接收参数(如 `/fix-issue 213` 中的 `213`)[^3] 2. **分层配置** 子目录可放置局部 `CLAUDE_sub.md` 文件,继承并覆盖全局配置 3. **深度思考模式** 在复杂指令开头添加 `[DEEP_MODE]` 标志启用深度分析: ```markdown [DEEP_MODE] 重构数据库模块: 1. 分析当前ORM性能指标 2. 对比MyBatis与JPA方案 3. 给出迁移路线图 ``` 4. **图像辅助** 支持嵌入架构图路径(Claude 会自动解析): ```markdown ![](docs/architecture.png) # 参考此架构 ``` > **配置验证**:运行 `claude --validate-config` 检查配置完整性[^1][^3] --- ### 配置示例结构 ``` 项目根目录/ ├── CLAUDE.md # 主配置文件 ├── .claude/ │ ├── commands/ │ │ ├── optimize.md # 优化指令模板 │ │ └── fix-issue.md # 问题修复模板 │ └── contexts/ │ └── db-context.md # 数据库专用配置 └── src/ # 源码目录 ``` 通过此配置,Claude Code 能自动将相关上下文(如依赖声明、规范文档)拉入提示,显著提升任务处理精度[^1][^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值