<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>终端工具 on Chico's Tech Blog</title><link>https://realtime-ai.chat/tags/%E7%BB%88%E7%AB%AF%E5%B7%A5%E5%85%B7/</link><description>Recent content in 终端工具 on Chico's Tech Blog</description><image><title>Chico's Tech Blog</title><url>https://github.com/chicogong.png</url><link>https://github.com/chicogong.png</link></image><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Tue, 13 Jan 2026 10:00:00 +0800</lastBuildDate><atom:link href="https://realtime-ai.chat/tags/%E7%BB%88%E7%AB%AF%E5%B7%A5%E5%85%B7/index.xml" rel="self" type="application/rss+xml"/><item><title>Claude Code 深度体验：终端里的AI编程革命</title><link>https://realtime-ai.chat/posts/claude-code-deep-dive/</link><pubDate>Tue, 13 Jan 2026 10:00:00 +0800</pubDate><guid>https://realtime-ai.chat/posts/claude-code-deep-dive/</guid><description>Claude Code 深度体验评测:终端里的 AI 编程到底强在哪,与 Cursor、Copilot 的真实差异。</description><content:encoded><![CDATA[<h2 id="开场不是copilot是coder">开场：不是Copilot，是Coder</h2>
<p>2025年，AI编程工具已经卷到飞起。Cursor、Windsurf、GitHub Copilot……每个都说自己是&quot;最强AI编程助手&quot;。</p>
<p>但当我第一次用上 <strong>Claude Code</strong> 时，我意识到：</p>
<blockquote>
<p>这玩意儿不是来&quot;辅助&quot;我写代码的，它是来<strong>替我干活</strong>的。</p></blockquote>
<p>Claude Code 是 Anthropic 推出的命令行AI编程工具。它不是IDE插件，而是一个<strong>独立运行在终端里的Agent</strong>。你给它一个任务，它会：</p>
<ul>
<li>自己读代码</li>
<li>自己写代码</li>
<li>自己跑命令</li>
<li>自己修Bug</li>
<li>自己提交PR</li>
</ul>
<p><strong>这才是2025年该有的AI编程体验。</strong></p>
<hr>
<h2 id="1-安装30秒上手">1. 安装：30秒上手</h2>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span><span class="lnt">7
</span><span class="lnt">8
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 全局安装</span>
</span></span><span class="line"><span class="cl">npm install -g @anthropic-ai/claude-code
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 进入项目目录</span>
</span></span><span class="line"><span class="cl"><span class="nb">cd</span> your-project
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 启动</span>
</span></span><span class="line"><span class="cl">claude
</span></span></code></pre></td></tr></table>
</div>
</div><p>首次启动会要求登录 Anthropic 账号，授权后就能用了。</p>
<p><strong>费用</strong>：使用 Claude API 计费，Claude Sonnet 大约 $3/百万token，正常使用一天几毛钱。</p>
<hr>
<h2 id="2-核心能力不只是聊天">2. 核心能力：不只是聊天</h2>
<h3 id="21-自主文件操作">2.1 自主文件操作</h3>
<p>Claude Code 可以直接读写你的项目文件：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span><span class="lnt">20
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">You: 帮我看看 src/api/user.ts 里有什么问题
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Claude: 我来读取这个文件...
</span></span><span class="line"><span class="cl">[读取 src/api/user.ts]
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">发现了几个问题：
</span></span><span class="line"><span class="cl">1. 第23行：缺少错误处理
</span></span><span class="line"><span class="cl">2. 第45行：类型定义不完整
</span></span><span class="line"><span class="cl">3. 第67行：存在潜在的内存泄漏
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">要我修复吗？
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">You: 修
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Claude: 
</span></span><span class="line"><span class="cl">[编辑 src/api/user.ts]
</span></span><span class="line"><span class="cl">已完成修复，主要改动：
</span></span><span class="line"><span class="cl">- 添加了 try-catch 包装
</span></span><span class="line"><span class="cl">- 补充了 UserResponse 类型定义
</span></span><span class="line"><span class="cl">- 在 useEffect 中添加了 cleanup 函数
</span></span></code></pre></td></tr></table>
</div>
</div><h3 id="22-执行shell命令">2.2 执行Shell命令</h3>
<p>它能直接在你的终端跑命令：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">You: 跑一下测试，看看有没有挂的
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Claude:
</span></span><span class="line"><span class="cl">[执行 npm test]
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">测试结果：
</span></span><span class="line"><span class="cl">✓ 45 passed
</span></span><span class="line"><span class="cl">✗ 2 failed
</span></span><span class="line"><span class="cl">  - user.test.ts: &#34;should handle empty input&#34;
</span></span><span class="line"><span class="cl">  - auth.test.ts: &#34;should refresh token&#34;
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">要我修复这两个失败的测试吗？
</span></span></code></pre></td></tr></table>
</div>
</div><h3 id="23-git-操作">2.3 Git 操作</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span><span class="lnt">20
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-gdscript3" data-lang="gdscript3"><span class="line"><span class="cl"><span class="n">You</span><span class="p">:</span> <span class="err">把今天的改动提交一下，写个清晰的</span><span class="n">commit</span> <span class="n">message</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">Claude</span><span class="p">:</span>
</span></span><span class="line"><span class="cl"><span class="p">[</span><span class="err">执行</span> <span class="n">git</span> <span class="n">status</span><span class="p">]</span>
</span></span><span class="line"><span class="cl"><span class="p">[</span><span class="err">执行</span> <span class="n">git</span> <span class="n">diff</span><span class="p">]</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="err">我看到你改了这些文件：</span>
</span></span><span class="line"><span class="cl"><span class="o">-</span> <span class="n">src</span><span class="o">/</span><span class="n">api</span><span class="o">/</span><span class="n">user</span><span class="o">.</span><span class="n">ts</span> <span class="p">(</span><span class="err">修复类型问题</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="o">-</span> <span class="n">src</span><span class="o">/</span><span class="n">components</span><span class="o">/</span><span class="n">Login</span><span class="o">.</span><span class="n">tsx</span> <span class="p">(</span><span class="err">添加</span><span class="n">loading状态</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="o">-</span> <span class="n">tests</span><span class="o">/</span><span class="n">user</span><span class="o">.</span><span class="n">test</span><span class="o">.</span><span class="n">ts</span> <span class="p">(</span><span class="err">补充测试用例</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="err">建议的</span> <span class="n">commit</span> <span class="n">message</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="p">[</span><span class="err">执行</span> <span class="n">git</span> <span class="n">add</span> <span class="o">.</span> <span class="o">&amp;&amp;</span> <span class="n">git</span> <span class="n">commit</span> <span class="o">-</span><span class="n">m</span> <span class="s2">&#34;fix: 修复用户API类型问题并完善登录组件</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="o">-</span> <span class="err">修复</span> <span class="n">user</span><span class="o">.</span><span class="n">ts</span> <span class="err">中的类型定义不完整问题</span>
</span></span><span class="line"><span class="cl"><span class="o">-</span> <span class="err">为</span> <span class="n">Login</span> <span class="err">组件添加</span> <span class="n">loading</span> <span class="err">状态处理</span>
</span></span><span class="line"><span class="cl"><span class="o">-</span> <span class="err">补充用户模块的单元测试</span><span class="s2">&#34;]</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="err">已提交。需要我</span> <span class="n">push</span> <span class="err">吗？</span>
</span></span></code></pre></td></tr></table>
</div>
</div><hr>
<h2 id="3-实战场景它能干什么">3. 实战场景：它能干什么</h2>
<h3 id="场景1debug-一个复杂bug">场景1：Debug 一个复杂Bug</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span><span class="lnt">20
</span><span class="lnt">21
</span><span class="lnt">22
</span><span class="lnt">23
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">You: 用户反馈说登录后会闪退，帮我查一下
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Claude: 让我先看看相关代码...
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">[读取 src/pages/Login.tsx]
</span></span><span class="line"><span class="cl">[读取 src/hooks/useAuth.ts]
</span></span><span class="line"><span class="cl">[读取 src/store/authSlice.ts]
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">我需要看看错误日志：
</span></span><span class="line"><span class="cl">[执行 npm run dev]
</span></span><span class="line"><span class="cl">[执行 打开浏览器开发者工具 - 等待错误]
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">找到问题了！
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">在 useAuth.ts 第34行：
</span></span><span class="line"><span class="cl">auth.user.name.toLowerCase()
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">当 user 对象存在但 name 为 null 时会崩溃。
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">修复方案：
</span></span><span class="line"><span class="cl">auth.user?.name?.toLowerCase() ?? &#39;&#39;
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">要我修复吗？
</span></span></code></pre></td></tr></table>
</div>
</div><h3 id="场景2重构整个模块">场景2：重构整个模块</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span><span class="lnt">20
</span><span class="lnt">21
</span><span class="lnt">22
</span><span class="lnt">23
</span><span class="lnt">24
</span><span class="lnt">25
</span><span class="lnt">26
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">You: 把 src/utils 下的所有 JavaScript 文件迁移到 TypeScript
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Claude: 收到，我来处理这个迁移任务。
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">[扫描 src/utils 目录]
</span></span><span class="line"><span class="cl">发现 12 个 JS 文件需要迁移。
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">开始迁移...
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">[1/12] helpers.js → helpers.ts
</span></span><span class="line"><span class="cl">- 添加参数类型注解
</span></span><span class="line"><span class="cl">- 添加返回值类型
</span></span><span class="line"><span class="cl">- 导出类型定义
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">[2/12] formatters.js → formatters.ts
</span></span><span class="line"><span class="cl">...
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">[12/12] 完成！
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">[执行 npx tsc --noEmit]
</span></span><span class="line"><span class="cl">类型检查通过，无错误。
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">[执行 npm test]
</span></span><span class="line"><span class="cl">所有测试通过。
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">迁移完成！共修改 12 个文件，添加了 45 个类型定义。
</span></span></code></pre></td></tr></table>
</div>
</div><h3 id="场景3从零实现一个功能">场景3：从零实现一个功能</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span><span class="lnt">20
</span><span class="lnt">21
</span><span class="lnt">22
</span><span class="lnt">23
</span><span class="lnt">24
</span><span class="lnt">25
</span><span class="lnt">26
</span><span class="lnt">27
</span><span class="lnt">28
</span><span class="lnt">29
</span><span class="lnt">30
</span><span class="lnt">31
</span><span class="lnt">32
</span><span class="lnt">33
</span><span class="lnt">34
</span><span class="lnt">35
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-gdscript3" data-lang="gdscript3"><span class="line"><span class="cl"><span class="n">You</span><span class="p">:</span> <span class="err">帮我实现一个用户头像上传功能，要支持裁剪和压缩</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">Claude</span><span class="p">:</span> <span class="err">好的，我来实现这个功能。</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="err">首先分析一下需求：</span>
</span></span><span class="line"><span class="cl"><span class="mf">1.</span> <span class="err">前端：选择图片</span> <span class="err">→</span> <span class="err">裁剪</span> <span class="err">→</span> <span class="err">预览</span> <span class="err">→</span> <span class="err">上传</span>
</span></span><span class="line"><span class="cl"><span class="mf">2.</span> <span class="err">后端：接收文件</span> <span class="err">→</span> <span class="err">压缩</span> <span class="err">→</span> <span class="err">存储</span> <span class="err">→</span> <span class="err">返回</span><span class="n">URL</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="err">让我先看看现有的项目结构</span><span class="o">...</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="p">[</span><span class="err">读取</span> <span class="n">package</span><span class="o">.</span><span class="n">json</span><span class="p">]</span>
</span></span><span class="line"><span class="cl"><span class="p">[</span><span class="err">读取</span> <span class="n">src</span><span class="o">/</span><span class="n">components</span> <span class="err">目录结构</span><span class="p">]</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="err">我建议使用</span> <span class="n">react</span><span class="o">-</span><span class="n">image</span><span class="o">-</span><span class="n">crop</span> <span class="err">做裁剪，</span><span class="n">browser</span><span class="o">-</span><span class="n">image</span><span class="o">-</span><span class="n">compression</span> <span class="err">做压缩。</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="p">[</span><span class="err">执行</span> <span class="n">npm</span> <span class="n">install</span> <span class="n">react</span><span class="o">-</span><span class="n">image</span><span class="o">-</span><span class="n">crop</span> <span class="n">browser</span><span class="o">-</span><span class="n">image</span><span class="o">-</span><span class="n">compression</span><span class="p">]</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="err">现在创建组件</span><span class="o">...</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="p">[</span><span class="err">创建</span> <span class="n">src</span><span class="o">/</span><span class="n">components</span><span class="o">/</span><span class="n">AvatarUploader</span><span class="o">/</span><span class="n">index</span><span class="o">.</span><span class="n">tsx</span><span class="p">]</span>
</span></span><span class="line"><span class="cl"><span class="p">[</span><span class="err">创建</span> <span class="n">src</span><span class="o">/</span><span class="n">components</span><span class="o">/</span><span class="n">AvatarUploader</span><span class="o">/</span><span class="n">ImageCropper</span><span class="o">.</span><span class="n">tsx</span><span class="p">]</span>
</span></span><span class="line"><span class="cl"><span class="p">[</span><span class="err">创建</span> <span class="n">src</span><span class="o">/</span><span class="n">components</span><span class="o">/</span><span class="n">AvatarUploader</span><span class="o">/</span><span class="n">styles</span><span class="o">.</span><span class="n">module</span><span class="o">.</span><span class="n">css</span><span class="p">]</span>
</span></span><span class="line"><span class="cl"><span class="p">[</span><span class="err">创建</span> <span class="n">src</span><span class="o">/</span><span class="n">api</span><span class="o">/</span><span class="n">upload</span><span class="o">.</span><span class="n">ts</span><span class="p">]</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="err">组件已创建完成。使用方式：</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">import</span> <span class="p">{</span> <span class="n">AvatarUploader</span> <span class="p">}</span> <span class="n">from</span> <span class="s1">&#39;@/components/AvatarUploader&#39;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="o">&lt;</span><span class="n">AvatarUploader</span> 
</span></span><span class="line"><span class="cl">  <span class="n">onUpload</span><span class="o">=</span><span class="p">{(</span><span class="n">url</span><span class="p">)</span> <span class="o">=&gt;</span> <span class="n">updateUserAvatar</span><span class="p">(</span><span class="n">url</span><span class="p">)}</span>
</span></span><span class="line"><span class="cl">  <span class="n">maxSize</span><span class="o">=</span><span class="p">{</span><span class="mi">5</span><span class="p">}</span> <span class="o">//</span> <span class="n">MB</span>
</span></span><span class="line"><span class="cl">  <span class="n">aspectRatio</span><span class="o">=</span><span class="p">{</span><span class="mi">1</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="o">/&gt;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="err">要我写个使用示例吗？</span>
</span></span></code></pre></td></tr></table>
</div>
</div><hr>
<h2 id="4-高级用法">4. 高级用法</h2>
<h3 id="41-自定义指令claudemd">4.1 自定义指令（CLAUDE.md）</h3>
<p>在项目根目录创建 <code>CLAUDE.md</code>，写入项目规范：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-markdown" data-lang="markdown"><span class="line"><span class="cl"><span class="gh"># 项目规范
</span></span></span><span class="line"><span class="cl"><span class="gh"></span>
</span></span><span class="line"><span class="cl"><span class="gu">## 代码风格
</span></span></span><span class="line"><span class="cl"><span class="gu"></span><span class="k">-</span> 使用 TypeScript 严格模式
</span></span><span class="line"><span class="cl"><span class="k">-</span> 组件使用函数式写法
</span></span><span class="line"><span class="cl"><span class="k">-</span> 状态管理使用 Zustand
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="gu">## 命名规范
</span></span></span><span class="line"><span class="cl"><span class="gu"></span><span class="k">-</span> 组件：PascalCase
</span></span><span class="line"><span class="cl"><span class="k">-</span> 函数：camelCase
</span></span><span class="line"><span class="cl"><span class="k">-</span> 常量：UPPER_SNAKE_CASE
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="gu">## 提交规范
</span></span></span><span class="line"><span class="cl"><span class="gu"></span><span class="k">-</span> feat: 新功能
</span></span><span class="line"><span class="cl"><span class="k">-</span> fix: 修复
</span></span><span class="line"><span class="cl"><span class="k">-</span> refactor: 重构
</span></span><span class="line"><span class="cl"><span class="k">-</span> docs: 文档
</span></span></code></pre></td></tr></table>
</div>
</div><p>Claude Code 会自动读取这个文件，所有操作都会遵循你的规范。</p>
<h3 id="42-并行任务">4.2 并行任务</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">You: /parallel 同时帮我：1. 升级所有过期依赖 2. 修复 ESLint 警告 3. 补充缺失的测试
</span></span></code></pre></td></tr></table>
</div>
</div><p>Claude Code 会同时执行多个任务，大幅提升效率。</p>
<h3 id="43-持久记忆">4.3 持久记忆</h3>
<p>Claude Code 会记住你的项目上下文：</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span><span class="lnt">7
</span><span class="lnt">8
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">You: 还记得上周我们讨论的那个性能优化方案吗？执行它
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Claude: 记得，上周我们讨论了：
</span></span><span class="line"><span class="cl">1. 将大型列表改为虚拟滚动
</span></span><span class="line"><span class="cl">2. 添加 React.memo 包装
</span></span><span class="line"><span class="cl">3. 使用 useMemo 缓存计算结果
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">我现在开始实施...
</span></span></code></pre></td></tr></table>
</div>
</div><hr>
<h2 id="5-与其他工具对比">5. 与其他工具对比</h2>
<table>
  <thead>
      <tr>
          <th style="text-align: left">特性</th>
          <th style="text-align: left">Claude Code</th>
          <th style="text-align: left">Cursor</th>
          <th style="text-align: left">GitHub Copilot</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td style="text-align: left">运行环境</td>
          <td style="text-align: left">终端</td>
          <td style="text-align: left">IDE</td>
          <td style="text-align: left">IDE插件</td>
      </tr>
      <tr>
          <td style="text-align: left">自主执行命令</td>
          <td style="text-align: left">✅</td>
          <td style="text-align: left">❌</td>
          <td style="text-align: left">❌</td>
      </tr>
      <tr>
          <td style="text-align: left">读写任意文件</td>
          <td style="text-align: left">✅</td>
          <td style="text-align: left">有限</td>
          <td style="text-align: left">❌</td>
      </tr>
      <tr>
          <td style="text-align: left">Git操作</td>
          <td style="text-align: left">✅</td>
          <td style="text-align: left">❌</td>
          <td style="text-align: left">❌</td>
      </tr>
      <tr>
          <td style="text-align: left">多文件重构</td>
          <td style="text-align: left">✅ 强</td>
          <td style="text-align: left">✅ 中</td>
          <td style="text-align: left">❌</td>
      </tr>
      <tr>
          <td style="text-align: left">项目理解</td>
          <td style="text-align: left">✅ 深度</td>
          <td style="text-align: left">✅ 中等</td>
          <td style="text-align: left">❌</td>
      </tr>
      <tr>
          <td style="text-align: left">价格</td>
          <td style="text-align: left">按量付费</td>
          <td style="text-align: left">$20/月</td>
          <td style="text-align: left">$10/月</td>
      </tr>
  </tbody>
</table>
<p><strong>我的建议</strong>：</p>
<ul>
<li><strong>日常补全</strong>：用 Copilot</li>
<li><strong>复杂编辑</strong>：用 Cursor</li>
<li><strong>项目级任务</strong>：用 Claude Code</li>
</ul>
<hr>
<h2 id="6-注意事项">6. 注意事项</h2>
<h3 id="安全性">安全性</h3>
<p>Claude Code 有完整的<strong>权限控制系统</strong>：</p>
<ul>
<li>读取文件：自动允许</li>
<li>写入文件：需要确认（可设置自动）</li>
<li>执行命令：需要确认（可设置白名单）</li>
<li>网络请求：需要确认</li>
</ul>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">Claude: 我需要执行 rm -rf node_modules，允许吗？
</span></span><span class="line"><span class="cl">[Allow] [Deny] [Allow All npm commands]
</span></span></code></pre></td></tr></table>
</div>
</div><h3 id="token-消耗">Token 消耗</h3>
<p>复杂任务可能消耗大量 token。建议：</p>
<ol>
<li>任务描述要清晰具体</li>
<li>大型重构分步进行</li>
<li>使用 <code>/compact</code> 命令压缩上下文</li>
</ol>
<hr>
<h2 id="7-总结">7. 总结</h2>
<p>Claude Code 代表了 AI 编程工具的新方向：</p>
<blockquote>
<p><strong>从&quot;辅助编码&quot;到&quot;自主编码&quot;</strong></p></blockquote>
<p>它不是在你旁边提建议的助手，而是一个能独立完成任务的程序员。</p>
<p><strong>适合场景</strong>：</p>
<ul>
<li>大型代码重构</li>
<li>跨文件修改</li>
<li>自动化运维任务</li>
<li>快速原型开发</li>
</ul>
<p><strong>不太适合</strong>：</p>
<ul>
<li>需要精细控制的核心算法</li>
<li>涉及敏感数据的操作</li>
<li>完全没有代码基础的用户</li>
</ul>
]]></content:encoded></item></channel></rss>