走音米霸 發表於 2025-7-11 09:39:00

榨干 Claude Code 的 16 个实用小技巧(高端玩法,建议收藏!)

<p>大家好,我是R哥。</p>
<p>这几年 AI 编程工具越来越火,尤其是 Cursor、Claude Code 这种终端级 AI 编程助手,用好了真的能让程序员开发效率直接起飞。</p>
<p>但很多同学用 AI 写代码,常常卡在 “不会提问”、“不会拆需求”、“不会控制上下文”,只会傻傻提问,很多实用技巧都不会,结果总是写不出自己想要的效果。</p>
<p>今天这篇笔记,R哥就手把手带你盘一盘:<strong>如何高效用 Claude Code 搞定开发、提效撸活,告别低效体力活!</strong>(内容干货,建议收藏慢慢看~)</p>
<p>Claude Code 的安装和使用先看这篇:</p>
<blockquote>
<p>自从用上了 Claude Code,才发现 Cursor 和 Gemini Cli 都是弱智。。(保姆级安装和使用教程分享)</p>
</blockquote>
<h2 id="1把你的需求说具体点">1、把你的需求说具体点</h2>
<p>别再说:“<strong>修复这个漏洞</strong>” 这么笼统的指令:尽量把你的需求说具体点。</p>
<p>你可以这样和它说:</p>
<blockquote>
<p>修复用户登录时不输入密码出现的空指针错误</p>
</blockquote>
<h2 id="2把复杂的需求分步执行">2、把复杂的需求分步执行</h2>
<p>如果是小任务/模块,可以一次性把需求发给 AI,一次性出结果,整体效率更高。</p>
<p>但是,如果是大需求,实现流程比较长的那种,建议把复杂的任务拆解成小步骤,比如:</p>
<ul>
<li>给用户 API 创建一个新接口;</li>
<li>给请求的字段添加必要的验证;</li>
<li>编写这个接口的测试用例;</li>
<li>...</li>
</ul>
<p>因为 AI 上下文都有限制,代码量/记忆太长可能输出不全、甚至被截断,还是分步最安全,每一步完成后你都可以先 review/测试,再让 AI 执行下一步。</p>
<blockquote>
<p>像上面的示例,其实并不复杂,可以一次性发给 Claude Code,AI 能整体考虑代码结构和风格,减少重复解释和沟通成本。</p>
</blockquote>
<h2 id="3先理解项目代码再开动">3、先理解项目代码再开动</h2>
<p>在修改代码之前,先让 Claude 理解你的代码,比如:</p>
<ul>
<li>分析一下数据库表结构;</li>
<li>这个应用中的错误是如何处理的?</li>
<li>...</li>
</ul>
<p>修改前,先让 AI 理解你业务和代码,这样才能更精准、高效地辅助你开发和优化。</p>
<h2 id="4学会用快捷键节省时间">4、学会用快捷键,节省时间</h2>
<p>比如:</p>
<ul>
<li>输入 <code>/</code> 查看所有斜杠命令;</li>
<li>使用上下方向键查看命令历史;</li>
<li>使用 Tab 键进行命令快速补全;</li>
<li>使用 <code>Option + Enter</code> 换行;</li>
<li>使用 <code>Ctrl + C</code> 退出终端等等。</li>
</ul>
<h2 id="5使用免授权模式">5、使用免授权模式</h2>
<p>你是不是经常遇到 Claude Code 干活干一半,停下来让你授权?不授权就卡在那里,虽然可以在当前会话可以设置不再询问,但权限又有好几种,每种权限都要来问一下,严重影响效率。</p>
<p>其实,启动 claude 时有一个参数:</p>
<pre><code class="language-css">claude --dangerously-skip-permissions
</code></pre>
<p>带上这个参数启动时,Claude Code 会出现警告提示:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093910768-728463036.png"></p>
<p>你需要点确认(Yes)才能开启 <strong>Bypassing Permissions</strong> 模式,开启此模式后,终端下面会出现黄色的 <code>Bypassing Permissions</code> 模式提示:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093911072-1996349036.png"></p>
<p>开启 <strong>Bypassing Permissions</strong> 模式后,后面所有操作就都不需要你授权了,Claude Code 哐当就把所有活干了。</p>
<p>每次都输入 <code>claude --dangerously-skip-permissions</code> 太麻烦了,还可能输错,可以考虑他那一个 alias 别名:</p>
<blockquote>
<p>alias claude='claude --dangerously-skip-permissions'</p>
</blockquote>
<p>这只是临时生效,永久生效可以把它放到个人环境配置文件中,然后 source 生效一下。</p>
<h2 id="6激活深度思考模式">6、激活深度思考模式</h2>
<p>在 Claude Code 中,可以使用 “<strong>think</strong>” 这个词来激活深度思考模式,包括以下几种级别:</p>
<blockquote>
<p>“think” &lt; “think hard” &lt; “think harder” &lt; “ultrathink”</p>
</blockquote>
<p>使用这些深度思考,会直接对应系统中不同级别的思考预算,每一级都会逐步增加 Claude 可用的思考预算,毫无疑问,使用 <code>ultrathink</code> 是最费钱的,也能发挥它的最大潜能。</p>
<p>如果你是订阅的是 Max 套餐,可以考虑使用 <code>ultrathink</code> 模式,不然就得小心你的钱包。</p>
<p>比如我来测试一下:</p>
<blockquote>
<p>1+1=?ultrahink</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093911368-1844540173.png"></p>
<p>一个 1+1 计算耗费了 0.06 美元,大概不到 5 毛 RMB。。</p>
<h2 id="7输错指令随时打断它工作">7、输错指令,随时打断它工作</h2>
<p>如果在 Claude Code 工作时,有时候可能给的命令描述的不对,如果你想让它停止,只需要按 <code>ESC</code> 键即可:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093911594-1444805113.png"></p>
<p>终端上面会显示被用户打断。</p>
<h2 id="8发送图片处理">8、发送图片处理</h2>
<p>Claude Code 可以发送图片并进行处理,在命令行中,把图片和提示词发过去,让它更好的理解你的意图。</p>
<p>如图所示:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093911821-394858425.png"></p>
<blockquote>
<p>注意,在 Mac 中粘贴图片不是使用 command + v,而是使用 <strong>ctrl + v</strong> 快捷键。</p>
</blockquote>
<p>你还可以发送以下命令:</p>
<ul>
<li>这个图片显示了什么?</li>
<li>这是错误的截图,是什么原因导致的?</li>
<li>请根据这个图片的设计模型设计网页</li>
</ul>
<h2 id="9恢复历史会话">9、恢复历史会话</h2>
<h3 id="非交互模式">非交互模式</h3>
<p>Claude Code 提供两个选项来恢复之前的对话:</p>
<ul>
<li><code>claude --continue</code> 或者 <code>claude -c</code>:自动继续最近的对话,无需任何提示。</li>
<li><code>claude --resume</code> 或者 <code>claude -r</code>:显示历史对话选择器;</li>
</ul>
<p>这两个带参数的命令需要在「<strong>非交互模式</strong>」下进行,也就是还没有进入 Claude Code。</p>
<h3 id="交互模式">交互模式</h3>
<p>如果你已经进入了 Claude Code 会话,想恢复到之前的哪个历史会话,可以使用 <code>/resume</code> 命令恢复历史会话:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093912150-697523656.png"></p>
<p>上下方向键选中一条记录可以恢复会话。</p>
<h2 id="10记忆管理">10、记忆管理</h2>
<h3 id="记忆文件介绍">记忆文件介绍</h3>
<p>Claude Code 提供三种记忆位置,每种都有不同用途:</p>
<table>
<thead>
<tr>
<th>记忆类型</th>
<th>文件位置</th>
<th>用途说明</th>
<th>使用示例</th>
</tr>
</thead>
<tbody>
<tr>
<td>项目记忆(共享)</td>
<td><code>./CLAUDE.md</code></td>
<td>项目团队共享的指令</td>
<td>项目架构、编码规范、常用工作流程</td>
</tr>
<tr>
<td>用户记忆(全局)</td>
<td><code>~/.claude/CLAUDE.md</code></td>
<td>用于所有项目的个人偏好设置</td>
<td>代码风格偏好、个人工具快捷方式</td>
</tr>
<tr>
<td>项目记忆(本地)</td>
<td><code>./CLAUDE.local.md</code></td>
<td>项目的个人偏好设置(已废弃)</td>
<td>你的沙箱地址、测试数据偏好等</td>
</tr>
</tbody>
</table>
<p>其中, <code>CLAUDE.md</code> 文件是 Claude Code 自动读取的记忆文件,类似于 Cursor 中 <code>rules</code> 规则文件,但比它要更强大,它可以为 Claude 提供更多项目相关的上下文信息,如:</p>
<ul>
<li>常用的 bash 命令</li>
<li>核心文件和工具函数</li>
<li>代码风格指南</li>
<li>测试说明</li>
<li>代码库规范</li>
<li>开发环境设置</li>
<li>更多希望 Claude 记住的信息等等</li>
</ul>
<p>当 Claude Code 启动时,以上所有记忆文件会自动加载到运行环境中。</p>
<p>可以在多个位置放置 <code>CLAUDE.md</code> 文件,Claude Code 会递归读取这些文件,从当前工作目录开始,向上递归到根目录,读取找到的任何 <code>CLAUDE.md</code> 文件。</p>
<h3 id="编辑记忆文件">编辑记忆文件</h3>
<p>在会话期间使用 <code>/memory</code> 斜杠命令,可以在系统编辑器中打开记忆文件:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093912398-1871340249.png"></p>
<p>选择一个记忆文件回车进行编辑,其中第一个就是使用 <code>/init</code> 初始化命令生成的,第二个已废弃,第三个是用户级记忆文件。</p>
<p>比如我们可以修改第三个用户级记忆文件:</p>
<blockquote>
<p>每次请用中文回答我。</p>
</blockquote>
<p>这样设置记忆后,后续所有项目的交互就都是中文回答的了。</p>
<h2 id="11和-git-进行交互">11、和 Git 进行交互</h2>
<p>在 Claude Code 中,我们的 Git 操作就可以变得对话形式,不用记住一些繁琐的命令。</p>
<blockquote>
<p>我修改了哪些文件</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093912710-956382687.png"></p>
<blockquote>
<p>用合理描述性信息提交我的更改</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093913026-1755221692.png"></p>
<blockquote>
<p>推送本分支到远程</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093913229-2013632637.png"></p>
<blockquote>
<p>创建一个新分支:feature/test</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093913422-1000674305.png"></p>
<blockquote>
<p>删除本分支并切换到master分支</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093913621-1302235113.png"></p>
<blockquote>
<p>显示最近3次提交中所有文件列表</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093913930-252532629.png"></p>
<p>很方便快捷吧,使用自然语言和 Git 进行交互吧!</p>
<h2 id="12和-linux-交互">12、和 Linux 交互</h2>
<p>因为 Claude Code 是终端形式使用嘛,所以我们也可以把它当作 Linux 智能助手用,无需记住繁杂的 Linux 命令。</p>
<p><strong>在交互模式下:</strong></p>
<blockquote>
<p>列出行数最多的前3个.java文件</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093914243-1423237358.png"></p>
<p>从执行信息可以看到它正在执行的命令,这么复杂的命令一般人是很难记住的。</p>
<p><strong>在非交互模式下:</strong></p>
<blockquote>
<p>claude -p "列出行数最多的前3个.java文件"</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093914623-811964607.png"></p>
<p>这是执行一次命令,它会列出满足条件的文件后退出 Claude Code 交互模式。</p>
<h2 id="13模型切换">13、模型切换</h2>
<p>Claude Code 目前支持 <strong>Claude Opus 与 Claude Sonnet 4</strong> 两个模型的灵活切换,使用 <code>/model</code> 命令进行切换:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093914926-1222964461.png"></p>
<p>默认为 <strong>Claude Sonnet 4</strong>,可以切换到 Claude Opus,不过个人感觉没必要,<strong>强烈推荐使用 Claude Sonnet 4,其使用体验与ClaudeOpus 并没有明显差别,但计费倍率仅为其 1/5</strong>,土豪请忽略。</p>
<blockquote>
<p>注意,<strong>只有 Max 用户才支持 Claude Opus 并支持切换</strong>,Pro 用户只支持 Claude Sonnet 4。</p>
</blockquote>
<h2 id="14查看消耗情况">14、查看消耗情况</h2>
<p>使用 <code>/cost</code> 命令查看当前会话使用情况:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093915261-1406384766.png"></p>
<p>如图,显示我当前会话已经消耗了 1.23 美金。</p>
<p>官方查看消耗,但过于笼统,不够直观,推荐使用 <code>ccusage</code> 工具来查看。</p>
<p><strong>安装 ccusage:</strong></p>
<blockquote>
<p>sudo npm install -g ccusage</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093915614-1065199758.png"></p>
<p>如果要查看自某天开始的消耗:</p>
<blockquote>
<p>ccusage -s 20250701</p>
</blockquote>
<p>如果要实时查看消耗:</p>
<blockquote>
<p>ccusage blocks --live</p>
</blockquote>
<p>Claude Pro / Max 订阅用户可以不用理会消耗,它是按月计费的,不是按使用量计费的,如下面所示:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093915860-1678333289.png"></p>
<p>超过了使用量就会变得不可用:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093916093-180000276.png"></p>
<p>需要等待,到了指定时间才能恢复。</p>
<h2 id="15上下文压缩">15、上下文压缩</h2>
<p>Claude Code 提供了一个 <code>/compact</code> 压缩命令:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093916367-1675016341.png"></p>
<p>它会清除对话历史记录,但保留上下文中的摘要。</p>
<p>这样做的好处是:</p>
<ul>
<li><strong>减少对话上下文大小</strong>:当对话历史变得很长时,使用 <code>/compact</code> 可以压缩对话内容,减少令牌使用量。</li>
<li><strong>手动压缩控制</strong>:虽然 Claude Code 默认在上下文超过 95% 容量时自动压缩(可通过 <code>/config</code> 开启/关闭自动压缩),但你可以使用 <code>/compact</code> 手动触发压缩。</li>
</ul>
<p>如图所示:</p>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093916896-774151134.png"></p>
<p>当剩余上下文空间不多时,右下角会显示自动压缩的剩余百分比,当达到 0% 时就会进行压缩。</p>
<p>所以,为了有效管理成本和性能:</p>
<ul>
<li>建议在上下文变大时定期使用 <code>/compact</code> 手动进行压缩;</li>
<li>定时使用 <code>clear</code> 命令重置上下文;</li>
<li>分解复杂任务或者把需求尽量具体化;</li>
</ul>
<p>当然,土豪,请略过。</p>
<h2 id="16自定义快捷命令">16、自定义快捷命令</h2>
<h4 id="使用介绍">使用介绍</h4>
<p>Claude Code 支持自定义命令,你可以创建一些命令来快速执行特定的提示或任务,比如:</p>
<ul>
<li>分析这个项目的性能,并提出三个具体的优化建议。</li>
<li>用合理描述性信息提交所有变更文件,然后推送到远程仓库。</li>
<li>...</li>
</ul>
<p>这样一些常用的操作就不需要写一堆文字了,用自定义命令即可。</p>
<p>自定义命令语法:</p>
<pre><code class="language-plaintext">/&lt;prefix&gt;:&lt;command-name&gt;
</code></pre>
<p><strong>自定义命令解读:</strong></p>
<ul>
<li>命令分为用户级和项目级;</li>
<li>用户级命令所有项目都能用,项目级命令只有当前项目可以用;</li>
<li>用户级命令放在个人 <code>~/.claude/commands</code> 目录下,而项目级命令放在当前项目 <code>.claude/commands</code> 目录下;</li>
<li>使用命令时,用户级命令以 <code>/user:</code> 为前缀,项目级命令 <code>/project:</code> 为前缀,后面跟的是命令文件名称,可级联;</li>
<li>命令文件支持使用 <code>$ARGUMENTS</code> 参数占位符,在命令后面带上参数,如:<code>/project:test 123</code> 它会用 123 替换命令文件中的 <code>$ARGUMENTS</code> 标记。</li>
</ul>
<p>比如如果有 <code>.claude/commands/frontend/component.md</code> 自定义命令,使用方法 就是:<code>/project:frontend:component</code>。</p>
<h4 id="实战应用">实战应用</h4>
<h5 id="项目级命令">项目级命令</h5>
<p>在当前项目创建自定义命令目录:</p>
<blockquote>
<p>mkdir -p .claude/commands</p>
</blockquote>
<p>创建一个项目级优化命令:</p>
<blockquote>
<p>echo "分析这个项目的性能,并提出三个具体的优化建议。" &gt; .claude/commands/optimize.md</p>
</blockquote>
<p>在 Claude Code 中使用自定义命令:</p>
<blockquote>
<p>/project:optimize</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093917369-1790641063.png"></p>
<p>没想到它还自己把任务细化了,从分析项目整体架构、性能瓶颈、数据库操作,然后再提出优化建议。</p>
<h5 id="用户级命令">用户级命令</h5>
<p>在个人目录下创建自定义命令目录:</p>
<blockquote>
<p>mkdir -p ~/.claude/commands</p>
</blockquote>
<p>创建一个项目级优化命令:</p>
<blockquote>
<p>echo "用合理描述性信息提交所有变更文件,然后推送到远程仓库。" &gt; ~/.claude/commands/push.md</p>
</blockquote>
<p>在 Claude Code 中使用自定义命令:</p>
<blockquote>
<p>/user:push</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/other/1218593/202507/1218593-20250711093917905-1983648323.png"></p>
<p>nice~这样让 Git 交互也更简单了!</p>
<hr>
<p>好了,这次的分享就到了~</p>
<p>以上就是我在实际使用 Claude Code 编程时的一些<strong>高效技巧和避坑心得</strong>,真的都是无保留实践总结。</p>
<p><strong>AI 不会淘汰程序员,但不会用 AI 的除外,会用 AI 的程序员才有未来!</strong></p>
<p>未完待续,接下来会继续分享下 Claude Code 心得体验、高级使用技巧,公众号持续分享 AI 实战干货,关注「<strong>AI技术宅</strong>」公众号和我一起学 AI。</p>
<blockquote>
<p><strong>版权声明:</strong> 本文系公众号 "AI技术宅" 原创,转载、引用本文内容请注明出处,抄袭、洗稿一律投诉侵权,后果自负,并保留追究其法律责任的权利。</p>
</blockquote>
<p><strong>更多文章推荐:</strong></p>
<p>1.Spring Boot 3.x 教程,太全了!</p>
<p>2.3,000+ 道 Java面试题及答案整理(最新版)</p>
<p>3.免费获取 IDEA 激活码的 7 种方式(最新版)</p>
<p>4.Java &amp; DeepSeek &amp; AI 学习资料分享</p>
<p>5.程序员精美简历模板分享</p>
<p>觉得不错,别忘了随手点赞+转发哦!</p>


</div>
<div id="MySignature" role="contentinfo">
   
<div style="clear: both"></div><br><br>
来源:https://www.cnblogs.com/javastack/p/18978280
頁: [1]
查看完整版本: 榨干 Claude Code 的 16 个实用小技巧(高端玩法,建议收藏!)