一万两千字:教你用 Claude Code 解锁 10 倍生产力
[!abstract] 摘要
一万两千字的 Claude Code 完全指南:从软件介绍、安装(Mac / Windows)、国内低成本使用(智谱 GLM4.5 / Kimi K2 环境变量配置、Claude Code Router 接入第三方模型),到指令、记忆、子 Agent、Hooks、MCP、模式切换、回退与可视化工具等高级技巧。
今天给大家带来一期 ClaudeCode 的使用指南,让大家用好 AI 编程。
文章分三个部分。
这是我收集国内外所有大神的 ClaudeCode 的使用指南,最终总结归纳起来的。
包括:各种薅羊毛、性价比套餐、高级技巧、最佳实践、周边插件等。
从入门安装到高级技巧,全都包括了。每一个字都是手打的,没有任何 AI 生成的内容。
第一部分,简单介绍下这款软件。
第二部分,教大家安装。(国内用户是可以使用的,还会说一下如何低成本使用,一个月 20 块钱)
第三部分,详细讲解下它的使用技巧。
相信我,读下去,有很多惊喜。
1. 简单介绍
ClaudeCode 是国外一家公司 Anthropic 出品的 CLI(命令行界面)的 AI 编程软件。
也就是说,它是一个命令行界面,你的对话发生在命令行。
可能很多人跟我一样,刚开始一听说命令行,就感觉挺麻烦,觉得没有界面肯定不好用,实际体验下来非常棒,简单,快捷,效率非常高。
之所以这么设计,是因为每个程序员的使用习惯不同,程序员很挑剔,所以开发一个带 UI 的界面,很多人用的不习惯,也就无法做到统一。
但是,所有程序员基本上都用过命令行,所以,大家都采用了命令行的形式来开发 AI 编程软件。
同样的命令行编程软件还有阿里的 Qwen Code、谷歌的 Gemini CLI 等。
1.1. 谈谈 Anthropic 这家公司
再来说说这家公司,Anthropic 这家公司很厉害,但是这个单词挺不常见,所以,我刚开始对它也不感兴趣,只是经常听到。
后来,没办法,这家公司的模型能力实在太顶尖了,不得不去尝试一下,后来发现,真香。
这家公司的 CEO Dario Amodei 曾是百度的员工,后来就职于 OpenAI,再后来自己创建了公司,公司的影响力以及研发大模型能力和 OpenAI 不相上下。
这里说一句,百度在大模型研发早期还是非常牛的,只是百度一贯的尿性,很多东西做着做着就做黄了,很让人叹息。
ClaudeCode 默认使用 Anthropic 自家模型,比如说:
-
Claude Opus 4.1
-
Claude Sonnet 4
-
Claude Haiku 3.5
这几款模型都是非常牛 X 的,经常就是性能排名第一第二的,他们家的模型都针对于编程这一任务专门训练,所以编程的效果非常好。
下方是 Claude 模型对比其他模型在一些任务测试表现上的通过率,能看出来,比其他顶尖的模型也要高出好多。
当然,这些模型都很贵,一个月可能要一二百美金,所以普通开发者很少有用得起的。
所以,我们只能找一些性价比比较高的模型,比方说:Kimi 的 K2、智谱的 GLM4.5。
这几个模型性能都还不错,也很便宜,一个月也就几十块钱。
当然,ClaudeCode 这款软件,官方是禁止在中国使用的,由于一些特殊的政策原因,但是我们还是可以绕过去的,非常简单,需要配置两个环境变量就行。
我会在安装部分说明下如何使用国内的模型。
1.2. Anthropic 调用格式
通常的大模型都是兼容 OpenAI 的调用格式,但是 Anthropic 家的模型有自己的调用格式。
因为 ClaudeCode 使用的正是自家 Anthropic 调用格式,所以如果谁家的大模型支持 Anthropic 格式,那它就能无缝对接上 ClaudeCode。
如果不支持 Anthropic 格式,就得通过一个叫做 Claude Code Router 的软件来做格式转换,这样所有的模型(例如阿里的 Qwen 系列)都能对接上 ClaudeCode,这个放在最后说。
目前,官方支持 Anthropic 格式的大模型主要有两家,就是上面说的,Kimi 的 K2、智谱的 GLM4.5。
当然,这里说一个大多数人都不知道的细节:
ClaudeCode 本身也是一个智能体,它的提示词是 Claude 团队针对自家的模型特点专门定制的,使用自家的模型效果最好。
这也是我一直以来坚信的一点:专业的提示词并不通用。
每一家的大模型都是自家的数据训练出来的,只有最符合自家训练数据的提示词,才能达到最好的训练效果。
所以,这就引出来一个事,当我们用其他模型来接入 ClaudeCode,使用效果实际上会受一点点影响的。
如果这个模型本身能力不差,那么影响较小,如果本身就不怎么样,那效果将会受到比较大的影响。
好在现在模型的能力都还可以,基本上我实际感受,大约有个 5%-20% 的效果损失差不多。
对于我们的大部分的开发场景,这个损失其实还可以接受,只要你能把你的事描述清楚,效果不会差很多的。
但是,大家要有一个心理预期,就是如果你在 ClaudeCode 用过两个不同的模型,他们的效果差别可能会很大,这和软件没有关系。
毕竟,人家官方原本就没允许你用别的模型,只是我们用了特殊方法绕过去了。
而且,我正是读过 ClaudeCode 的提示词之后,又一次被他圈粉了,提示词写的很专业,很好。
1.3. 与传统的 AI 编程插件的不同
再来说说和我们之前用过的其他 AI 编程插件有什么不同。
国内大多数用户都用过通义灵码等 IDE 插件,那个时候,模型能力还不太行,上下文窗口长度太小,能塞进去的内容很少。
所以,那些插件,基本上就充当了剪切板的功能,不需要复制代码到网页中和大模型对话,也就仅仅是和模型的一次对话。
当然,我不知道现在通义灵码这种 IDE 插件发展成什么样子了,我已经好久没用了。
ClaudeCode 这种算是第二代的编程助手,是在模型能力增强之后,上下文长度增大之后才出来的。
所以,它能够理解的内容是海量的,是能够理解你整个项目文件夹的,并且有了复杂任务和多任务的处理能力,同时拥有很强的自主规划能力。传统的 AI 编程工具,如代码自动补全,扮演的是被动的“助手”角色,根据开发者输入的上下文提供建议。
而 Claude Code 则是一种主动的、具备自主性的“合作伙伴”,它能够理解高层次的自然语言指令,并将其转化为一系列具体的、可执行的动作。
它不仅仅是生成代码片段供开发者复制粘贴,而是能够直接编辑文件、运行测试套件、执行构建命令,甚至处理版本控制工作流,如创建 Git 提交。
这种能力将其从一个“建议引擎”转变为一个真正的“开发伙伴”,能够处理从需求分析到实现、再到验证的端到端工作流程。开发者的角色也因此从任务的直接“执行者”转变为复杂工程任务的“委托者”。
基本上,你只要把需求跟它说清楚,它是能够按照高级工程师的思路来给你一步步完成这件事,它的能力完全不亚于一个拥有数年工作经验的架构师。
这也是我写这篇文章的主要原因,未来,我们开发者的工作,都会演变成写写需求文档,做一些架构设计,真正的编码工作完全由 AI 去做。
这不是天方夜谭,这是事实,很多人已经进入了 VibeCoding(氛围编程)的编程状态,包括我,每天做的事,就是鞭策大模型给我写代码。
老板鞭策我,我鞭策大模型。
网上流传着这样一句话,说,年度最佳的 AI 编程 Prompt(提示词)是:“你不干,有的是 AI 干!”
将来,更进一步,直接从文档,转化成项目代码,也是趋势。GitHub 上就有一个开源项目非常火,叫做 Paper2Code,说的就是直接从论文生成代码。
2. 安装教程
下面的安装教程都在苹果的 Mac 系统上进行,Windows 上基本上也差不多,没有太多步骤。
2.1. 快速安装
npm install -g @anthropic-ai/claude-code
只需要这么简单的一条命令(要求 Node.js 版本大于等于 18),即可全局安装 ClaudeCode,安装完成后即可在任何目录下使用。
注(初学者):npm 命令找不到,是因为你没有安装 Node.js。网上搜索 Node.js 18 安装即可。
2.2. 使用 ClaudeCode
随便找个目录,可以是你的工程根目录,运行 claude 命令即可对话了。
# Install Claude Code
npm install -g @anthropic-ai/claude-code
# Navigate to your project
cd your-awesome-project
# Start coding with Claude
claude
# You'll be prompted to log in on first use
2.3. 提示不允许在国内的访问
如果你运行 claude 命令之后,显示不允许在你的国家或者地区使用,让你登录的。
这是正常的,在简单介绍里面,我们说过它确实不能在国内使用。
但是我们有办法解决,很简单,配置两行环境变量后重新打开 claude 即可。
3. 国内使用方式
3.1. 添加环境变量
vi .zshrc
首先,打开新的命令行,新的命令行默认运行目录是用户的 Home 根目录,也就是类似 /Users/xiaoshi 这样的目录。
你可以使用 pwd 目录来获取当前所在的目录。
➜ ~ pwd
/Users/xiaoshi
确定好是在你的用户根目录下之后(不是的话,通过 cd 命令跳转到),运行这个命令,编辑一下 .zshrc 文件。
注(新手):如果你不会使用 vi(也就是 vim),请搜索相关教程。
我简单说下怎么操作:运行 vi 之后,按 i 进入插入模式,复制下面的内容,粘贴后,按 esc 键,然后输入 :wq 即可保存并退出。
export ANTHROPIC_BASE_URL=你的模型调用地址
export ANTHROPIC_AUTH_TOKEN=你的APIKEY
这里有人就会问了,我的 APIKEY 从哪里来呢?
以及这个 BASE_URL 从哪里来?
这个和你使用的模型有关,具体的去搜一下。
我这里举两个例子,也是大家用的最多的,性价比最高的。
智谱的 GLM4.5 和 Kimi K2。
并不是广告哈,确实这两家性价比很高,是当前比较不错的了。
两家的运营人员看到这篇文章后,记得私聊我打钱!
特别要注意,配置完环境变量后,一定要用 source 命令,让操作系统重新读取下这个文件,不然不生效。
source .zshrc
然后,重新运行 claude 命令即可。
3.1.1. 配置 ClaudeCode 使用智谱 GLM4.5 模型
- 注册新用户
注册地址:https://bigmodel.cn/login
- 充值(可选)
新用户一般都会赠送一定额度的 Token,但是通常会限制速率。
所以建议还是选择一个比较不错的套餐,套餐都很便宜。
- 选购套餐(可选)
选购地址:https://bigmodel.cn/special_area
建议选择特惠专区的 Coding 编程套餐,这是专门针对开发者推出的套餐,首月 20 元,基本上可以算是不限制调用次数。
- 新建 APIKEY
登录之后访问:https://bigmodel.cn/usercenter/proj-mgmt/apikeys
新建 APIKEY,名字随便起,建完之后,复制 APIKEY。
- 配置环境变量
智谱的模型调用地址是:https://open.bigmodel.cn/api/anthropic
export ANTHROPIC_BASE_URL=https://open.bigmodel.cn/api/anthropic
export ANTHROPIC_AUTH_TOKEN=你的APIKEY
- 配置完成后,让命令行窗口重新读取环境变量。(必须操作)
使用 source 命令重新读取环境变量。
弄一次之后,之后就不用动了,开机之后,操作系统默认会读取这个文件。
source .zshrc
- 重新运行 claude 命令即可完成配置
如果重新运行,还是不行,还是不让用或者让登录,那就是环境变量复制错了,检查下字符。
3.1.2. 配置 ClaudeCode 使用 Kimi 的 K2 模型
- 注册新用户
地址:https://platform.moonshot.cn/console
- 充值(可选)
注册完了之后打开月之暗面的个人后台管理系统:https://platform.moonshot.cn/console
找到账户充值。
但是强烈建议充值 50 元及以上,因为他们家的模型有一个调用速率的等级限制,充值 50 元才能达到一个正常的速率,不然没法用。
- 新建 APIKEY
然后就是新建 APIKEY,复制你的 APIKEY,名字随便起,这很简单。
- 配置环境变量
Kimi 的模型调用地址是:https://api.moonshot.cn/anthropic/
export ANTHROPIC_BASE_URL=https://api.moonshot.cn/anthropic/
export ANTHROPIC_AUTH_TOKEN=你的APIKEY
- 配置完成后,让命令行窗口重新读取环境变量。(必须操作)
使用 source 命令重新读取环境变量。
弄一次之后,之后就不用动了,开机之后,操作系统默认会读取这个文件。
source .zshrc
- 重新运行 claude 命令即可完成配置
如果重新运行,还是不行,还是不让用或者让登录,那就是环境变量复制错了,检查下字符。
4. 使用 ClaudeCodeRouter 接入 OpenAI 格式的大模型
如果你不喜欢用上面说的两家模型,你也可以通过 ClaudeCodeRouter 这个工具来将任何一家支持 OpenAI 格式的大模型接入 ClaudeCode。
比如说 Qwen 系列和 Doubao 系列等。
注意:如果下面的 ClaudeCodeRouter 教程没有用,请在网上搜索最新的信息,或者去 ClaudeCodeRouter 开源项目找找最新的帮助。
https://github.com/musistudio/claude-code-router
安装命令如下:
npm install -g @musistudio/claude-code-router
其主要功能如下:
-
模型路由: 根据您的需求将请求路由到不同的模型(例如,后台任务、思考、长上下文)。
-
多提供商支持: 支持 OpenRouter、DeepSeek、Ollama、Gemini、Volcengine 和 SiliconFlow 等各种模型提供商。
-
请求/响应转换: 使用转换器为不同的提供商自定义请求和响应。
-
动态模型切换: 在 Claude Code 中使用
/model命令动态切换模型。 -
GitHub Actions 集成: 在您的 GitHub 工作流程中触发 Claude Code 任务。
-
插件系统: 使用自定义转换器扩展功能。
然后运行下面的命令,启动一个 ClaudeCodeRouter 的页面
ccr ui
然后选择,添加模型供应商,基本上,你只需要填写上 APIKEY 即可。
这个工具都已经配置好了很多东西,选择模版后,只需要你添加 APIKEY,以及输入对应的模型名字,点击添加,然后保存即可。
添加供应商之后,在右侧的路由部分,全部选择刚刚添加上的供应商即可,然后保存并重启。
这里说明一下,ClaudeCode 为了节省 Token 消耗,因为不是所有的工作都需要调用最强的模型,不然费用很高。
所以,针对于不同的工作,分别使用不同的模型。
所以,这里可以个性化地选择不同的模型。
这就算配置完成了,使用 ccr code 来启动 ClaudeCode。
注意,这里,只有使用 ccr code,才会使用这个 ClaudeCodeRouter 来启动 ClaudeCode,才能用上咱们配置的模型。
可以看到,这里我们使用的模型地址是:http://127.0.0.1:3456,这就说明,我们配置成功了。
接下来就可以正常对话了。
5. 在 IDE 中使用 ClaudeCode 增强插件
ClaudeCode 本身不依赖于 IDE,有命令行的地方就能运行。
但是,他们也针对 VS Code 和 JetBrains 家的 IDE(如 IDEA、Webstorm、PyCharm 等)开发了对应的插件。
这个插件能够增强使用体验,和 IDE 很好地交互,建议大家装上,并在 IDE 中使用。
下面,以 IDEA 为例,演示下如何安装,VS Code 基本上也差不多。
在 IDE 中的设置中,找到插件市场,搜索 Claude Code,安装即可。(我记得 IDEA 有版本要求,它会提示你是否需要升级 IDEA 版本)
安装完之后,就可以在右上角,一键启动 Claude Code。
6. 详解使用技巧
6.1. 基本使用
@符号
使用@符号可以用来指定文件。
#符号
使用#符号,可以让 ClaudeCode 记住某些东西。
比如说:你期望它:“变量命名要体现出具体含义”
!符号
这个符号用来进入 bash 模式,也就是命令行模式,可以直接运行命令。
让你在会话模式和命令行模式来回切换。
ESC按键 中断操作
ClaudeCode 在处理任务过程中,如果你觉得不对,想要终止运行,就按 ESC 即可停止。
然后继续对话。
6.2. 多行输入
| 方法 | 快捷键 | 上下文 |
|---|---|---|
| 快速转义 | \+Enter |
在所有终端中有效 |
| macOS 默认 | Option+Enter |
macOS 上的默认设置 |
| 终端设置 | Shift+Enter |
在 /terminal-setup 之后 |
| 控制序列 | Ctrl+J |
多行的换行字符 |
| 粘贴模式 | 直接粘贴 | 用于代码块、日志 |
运行 /terminal-setup 为 iTerm2 和 VS Code 终端安装 Shift+Enter 绑定。
安装这个之后,就可以使用 Shift+Enter 进行换行,但是仅限这两个终端,在 JetBrains IDE 中没有用。
6.3. 全部指令
ClaudeCode 有很多指令(官方叫做 Commands),输入斜杠,即可上下选择,回车运行,列表如下:
/add-dir 添加一个新的工作目录
/agents 管理代理配置
/bashes 列出和管理后台任务
/clear (reset, new) 清除对话历史并释放上下文
/compact 清除对话历史,但在上下文中保留摘要。可选:/compact [摘要说明]
/config (theme) 打开配置面板
/context 将当前上下文使用情况可视化为彩色网格
/cost 显示当前会话的总成本和持续时间
/doctor 诊断并验证您的 Claude Code 安装和设置
/exit (quit) 退出 REPL
/export 导出当前对话到文件或剪贴板
/feedback (bug) 提交关于 Claude Code 的反馈
/help 显示帮助和可用命令
/hooks 管理工具事件的钩子配置
/ide 管理 IDE 集成并显示状态
/init 使用代码库文档初始化一个新的 CLAUDE.md 文件
/install-github-app 为代码仓库设置 Claude GitHub Actions
/login 使用您的 Anthropic 帐户登录
/logout 从您的 Anthropic 帐户注销
/mcp 管理 MCP 服务器
/memory 编辑 Claude 内存文件
/migrate-installer 从全局 npm 安装迁移到本地安装
/model 设置 Claude Code 的 AI 模型
/output-style 直接或从选择菜单设置输出样式
/output-style:new 创建一个自定义输出样式
/permissions (allowed-tools) 管理允许和拒绝工具的权限规则
/pr-comments 从 GitHub 拉取请求中获取评论
/release-notes 查看发行说明
/resume 继续一个对话
/review 审查一个拉取请求
/security-review 完成对当前分支上待定更改的安全审查
/status 显示 Claude Code 状态,包括版本、模型、帐户、API 连接和工具状态
/statusline 设置 Claude Code 的状态行用户界面
/terminal-setup 安装 Shift+Enter 换行快捷键
/todos 列出当前的待办事项
/upgrade 升级到 Max 以获得更高的速率限制和更多的 Opus 模型使用权
/vim 在 Vim 和普通编辑模式之间切换
/zcf:bmad-init /bmad-init 命令 (project, gitignored)
/zcf:feat 用于新增功能开发的命令,支持完整的开发流程和工具集成 (project, gitignored)
/zcf:git-cleanBranches 安全查找并清理已合并或过期的 Git 分支,支持 dry-run 模式与自定义基准/保护分支 (project, gitignored)
/zcf:git-commit 仅用 Git 分析改动并自动生成 conventional commit 信息(可选 emoji);必要时建议拆分提交,默认运行本地 Git 钩子(可 --no-verify 跳过) (project, gitignored)
/zcf:git-rollback 交互式回滚 Git 分支到历史版本;列分支、列版本、二次确认后执行 reset / revert (project, gitignored)
/zcf:workflow 专业AI编程助手,提供结构化六阶段开发工作流(研究→构思→计划→执行→优化→评审),适用于专业开发者 (project, gitignored)
6.4. 常用指令解释
这里特别说明几个比较常用的指令。
/init
这个指令是基于你的项目目录中的文档和代码文件,让大模型给你的项目生成一个 CLAUDE.md 文件,这个文件能够在之后的会话中起到重要的作用。
这个文档会从整体上理解这个项目的内容、构成、技术栈等,将帮助未来的 Claude Code 实例更高效地理解和操作这个代码库。
所以,这个命令有利于代码生成更符合你的项目实际情况。
/compact
这个指令用来压缩之前的对话历史,保留关键的信息。
因为在 ClaudeCode 处理过程中会进行大量的代码分析,这些代码都会放到模型的上下文中,Token 消耗量很大。
上下文占用越多,也会影响生成的效果。
所以,为了节省 Token,也为了保证连续工作后的使用效果,ClaudeCode 会进行自动的上下文压缩,到达阈值之后就会触发。
它是利用大模型来进行摘要总结,保证摘要的内容能够保留关键的东西,从而不会太影响下一次的会话。
这个命令是让你手动地进行压缩,相当于你触发了压缩机制。
这个命令后面还可以空格加上你自己的压缩要求,你需要保留那些信息你可以写上。
不过一般情况下,人家写的压缩提示词就够用了,除非有很小的细节要求保留,你可以提。
/clear
清除指令,顾名思义,用来清除历史会话和上下文的。
运行之后,相当于开启一个新的会话。和你直接开启一个新的 ClaudeCode 效果是一样的。
/resume
这个指令用来恢复历史会话。
你可以看到之前发起过的对话,回车即可恢复,然后继续这个历史会话进行提问。
/memory
记忆指令,用来定制化你的编码需求。
比方说:你希望它的编码风格是什么样子的,按照你自己的风格来,你可以在这几个位置选择一个文件在这里面添加上你的要求。
官方默认支持七种记忆,如下:
比方说,ClaudeCode 所使用的语言、个性、编码规则、技术要求、MCP 服务要怎么使用等。
凡是在~/.claude 目录下的,都属于全局的记忆,对于所有的工程都生效。
也就是说,ClaudeCode 所谓的记忆,都是一些规则。
这也是 ClaudeCode 的用户提示词之一,也就是说,每次运行,ClaudeCode 都会加载并使用这些提示词作为自己的上下文。
所以这些文件内容的对代码生成的影响还是挺大的。
最后一个是 Project Memory,是仅仅针对于当前项目的,对其他项目没有影响。所以这个 md 文件也是放在当前工程的根目录下的。
我们找一个 rules.md 来看一下。
你的任务是:**审查、理解并迭代式地改进/推进一个[项目类型,例如:现有代码库 / 软件项目 / 技术流程]。**
在整个工作流程中,你必须内化并严格遵循以下核心编程原则,确保你的每次输出和建议都体现这些理念:
- **简单至上 (KISS):** 追求代码和设计的极致简洁与直观,避免不必要的复杂性。
- **精益求精 (YAGNI):** 仅实现当前明确所需的功能,抵制过度设计和不必要的未来特性预留。
- **坚实基础 (SOLID):**
- **S (单一职责):** 各组件、类、函数只承担一项明确职责。
- **O (开放/封闭):** 功能扩展无需修改现有代码。
- **L (里氏替换):** 子类型可无缝替换其基类型。
- **I (接口隔离):** 接口应专一,避免“胖接口”。
- **D (依赖倒置):** 依赖抽象而非具体实现。
- **杜绝重复 (DRY):** 识别并消除代码或逻辑中的重复模式,提升复用性。
- **文档同步 (Doc Sync):** 代码变更必须同步更新相关文档,保持一致性。
**请严格遵循以下工作流程和输出要求:**
1. **深入理解与初步分析(理解阶段):**
- 详细审阅提供的[资料/代码/项目描述],全面掌握其当前架构、核心组件、业务逻辑及痛点。
- 在理解的基础上,初步识别项目中潜在的**KISS, YAGNI, DRY, SOLID**原则应用点或违背现象。
2. **明确目标与迭代规划(规划阶段):**
- 基于用户需求和对现有项目的理解,清晰定义本次迭代的具体任务范围和可衡量的预期成果。
- 在规划解决方案时,优先考虑如何通过应用上述原则,实现更简洁、高效和可扩展的改进,而非盲目增加功能。
3. **分步实施与具体改进(执行阶段):**
- 详细说明你的改进方案,并将其拆解为逻辑清晰、可操作的步骤。
- 针对每个步骤,具体阐述你将如何操作,以及这些操作如何体现**KISS, YAGNI, DRY, SOLID**原则。例如:
- “将此模块拆分为更小的服务,以遵循 SRP 和 OCP。”
- “为避免 DRY,将重复的 XXX 逻辑抽象为通用函数。”
- “简化了 Y 功能的用户流,体现 KISS 原则。”
- “移除了 Z 冗余设计,遵循 YAGNI 原则。”
- 重点关注[项目类型,例如:代码质量优化 / 架构重构 / 功能增强 / 用户体验提升 / 性能调优 / 可维护性改善 / Bug 修复]的具体实现细节。
4. **总结、反思与展望(汇报阶段):**
- 检查是否需要更新文档(README、CHANGELOG、API文档等)。
- 提供一个清晰、结构化且包含**实际代码/设计变动建议(如果适用)**的总结报告。
- 报告中必须包含:
- **本次迭代已完成的核心任务**及其具体成果。
- **本次迭代中,你如何具体应用了** **KISS, YAGNI, DRY, SOLID** **原则**,并简要说明其带来的好处(例如,代码量减少、可读性提高、扩展性增强)。
- **遇到的挑战**以及如何克服。
- **下一步的明确计划和建议。**
6.5. 自定义指令
ClaudeCode 允许你自定义一些指令来运行。
如果你有经常要做的一些工作,你可以把它写到一个 markdown 里面,最终做成一个自定义指令。
你就可以使用这个指令,让大模型干你所指定的工作。
举个例子:
如果你希望让大模型为你生成一个代码 ChangeLog,也就是版本变更记录。
你可以写到一个 md 文件中,文件名就是你的指令名,然后把这个文件移动到~/.claude/commands/目录下,就可以在 ClaudeCode 中使用这个命令。
记得要重启 ClaudeCode 哈,已经打开的 ClaudeCode 页面没法实时加载新的指令。
cp add-changelog.md ~/.claude/commands/
下面是我运行这个 add-changelog 指令的效果:
可以看到,它真的基于 Git 提交记录和现有的 Changelog 文件,生成了版本变更记录,而且非常详细。
有的人会说,这个自定义指令这么强,我不会写啊,看着好复杂。
没关系,现在就有这样一个网站收录了大量好用的指令,直接下载导入即可。
这个网站就是 https://www.buildwithclaude.com/
到目前为止,已经收录了 174+ 个指令,快去试试吧。
强烈建议大家给个关注,我这收录了很多好东西,大家多多帮忙点赞、在看、转发支持一下吧。
整理真的太不容易了,这些东西,网上都是很零碎的教程,甚至自己找很难找到,我的文章都花了我很大的精力,希望大家多多支持。
细心的小伙伴已经看到了上面截图中的另一个特性,Subagents,就是我们接下来要讲的子代理系统。
这个网站上也有大量的已经配置好的子智能体供你挑选。
6.6. 子 Agent 系统
子代理系统,顾名思义,就是 ClaudeCode 有一个主智能体。
它还开发了一套子智能体系统,让主智能体可以动态地调用各个子智能体,来完成更复杂的任务。
或者说是,把子任务分配给更专业的智能体去处理。
然后,主智能体再整理汇总。
同时,这也提高了问题的解决效率,因为子智能体的工作是并行的。
可以想象一下,如果你的工作涉及到前后端,甚至 UX 设计,那么你就可以先将这几个角色分别注册成智能体。
然后,直接把需求丢给主智能体,这样从 UX 设计到前端实现,再到后端实现,都可以一次性完成。
听起来是不是非常的 Nice?
你可以自定义子智能体,说白了,就是写提示词,让它干活,并且给他一个描述。
这个子智能体的子描述是用来告诉主智能体,它能干什么。
6.6.1. 让大模型给你创建子 Agent
我们使用 /agents 可以看到所有的 Agents。
然后选择 Create new agent。
可以将该 Agent 定义为项目 Agent,只有这个项目可以使用。
也可以定义为用户 Agent,全局可用。
然后选择使用 Claude 来创建,也就是让大模型根据你的要求来自动生成一个 Agent。
比如说这里我说:一个 UX 设计师,然后它就开始生成。
然后问我要给这个 Agent 配备哪些工具,直接 Continue 就行,默认就是全部工具都选中。
使用模型选择第一个就行,对于咱们来说,咱只接入了一个模型,实际上使用其他模型伪装成了 Claude Sonnet 模型。
颜色,随便选。
然后它就生成了,如果它生成的提示词你很满意,按回车即可保存。如果不满意,就可以自己接着它的编辑,按 e 开始编辑。
然后我们来使用一下我们刚刚创建的 UX 设计师的 Agent。
只要你的提问中,能够让它觉得需要调用 UX 设计师来工作即可。
可以看到,主智能体调用了设计师来工作。
并且设计师,真的给出了设计。
然后主智能体就开始继续工作,开始编码了。
当然,这里你也可以设计一个专业的前端子智能体,或者说是跟你编码习惯一样的子智能体,给人的感觉好像真的就是你写的代码一样。
第一次给我的结果,运行报错了,把错误给他,他很快就找到原因解决了。
最终的效果是这样的。
说实话,这个效果已经非常不错了。如果想要更好的效果,肯定要在提示词上面多下点功夫。
就连手机端也做了完美适配。
细心的朋友们,已经看到了,他的工作,其实是有一个任务列表的,我们叫做 TodoList。
他在接到用户的问题时,会将问题理解,先出一个规划,然后按照规划里的任务列表执行。
每完成一个任务,都会打勾,是不是很像咱们的工作方式。
这也是 ClaudeCode 最吸引我的地方,很专业。
6.6.2. 从其他地方导入子 Agent
依旧是这个网站:https://www.buildwithclaude.com/
收录了 117 个子 Agent。
网站上也教你怎么导入了,下面给大家举个例子,就两步,下载和移动。
比如下面这个后端架构师的例子:
注册方式也很简单,和自定义指令一样,也是把这个子智能体的 md 文件,移动到对应的文件夹下就可以。
不过这次的文件夹是 agents 目录。
cp backend-architect.md ~/.claude/agents/
然后重启 ClaudeCode 就行。
我们使用 /agents 指令,可以列出当前所有的 Agent,其中就有我们刚刚添加上的 backend-architect。
我们还可以看到这里分两类 agents,一类是用户自建的,一类是 ClaudeCode 自带的。
这样,就完成了注册。
6.7. 钩子系统(Hooks)
前端的小伙伴可能非常熟悉钩子系统。
就是某个事件发生之后,触发了你注册的一个函数。
ClaudeCode 也有这样的东西。
hooks 的示例用例包括:
-
通知:自定义当 Claude Code 等待您的输入或运行某些内容的权限时如何获得通知。
-
自动格式化:在每次文件编辑后对 .ts 文件运行
prettier,对 .go 文件运行gofmt等。 -
日志记录:跟踪和计算所有执行的命令以进行合规性检查或调试。
-
反馈:当 Claude Code 生成不符合您代码库约定的代码时提供自动反馈。
-
自定义权限:阻止对生产文件或敏感目录的修改。
举个实际场景,你希望 ClaudeCode 每次生成代码之后,都自动进行代码格式化,以保持代码的美观性。
那就可以用到这个钩子系统,配置也相当简单。
编辑后自动格式化 TypeScript 文件:
{
"hooks"
: {
"PostToolUse"
: [
{
"matcher"
:
"Edit|MultiEdit|Write"
,
"hooks"
: [
{
"type"
:
"command"
,
"command"
:
"jq -r '.tool_input.file_path' | { read file_path; if echo \"$file_path\" | grep -q '\\.ts$'; then npx prettier --write \"$file_path\"; fi; }"
}
]
}
]
}
}
配置好后,重启 ClaudeCode,之后它就会在每次编辑完成后,触发这个钩子,自动运行这个 Command 命令。
所以,如果你有其他的需求,也可以执行任意命令。
我们可以运行 /hooks 指令来查看所有的 hooks 事件。
这里再给大家分享一个好用的工具。
利用 AI 来帮我生成对应的 Hooks 配置。
你只要说明你想要做什么,它就能给你生成。
这个工具叫做 claudecode-rule2hook:https://github.com/zxdxjtu/claudecode-rule2hook
用这个就可以自然语言写 hook 了!
6.8. 配置 MCP Server
6.8.1. 添加本地 Stdio MCP Server
# 基本语法
claude mcp add <name> <command> [args...]
# 实际示例:添加 Airtable 服务器
claude mcp add airtable --env AIRTABLE_API_KEY=YOUR_KEY -- npx -y airtable-mcp-server
6.8.2. 添加 SSE MCP Server
# 基本语法
claude mcp add --transport sse <name> <url>
# 实际示例:连接到 Linear
claude mcp add --transport sse linear https://mcp.linear.app/sse
# 带认证头的示例
claude mcp add --transport sse private-api https://api.company.com/mcp --header "X-API-Key: your-key-here"
6.8.3. 添加 HTTP 服务器
# 基本语法
claude mcp add --transport http <name> <url>
# 实际示例:连接到 Notion
claude mcp add --transport http notion https://mcp.notion.com/mcp
# 带 Bearer 令牌的示例
claude mcp add --transport http secure-api https://api.example.com/mcp --header "Authorization: Bearer your-token"
6.8.4. 管理 MCP Server
# 列出所有配置的服务器
claude mcp list
# 获取特定服务器的详细信息
claude mcp get github
# 删除服务器
claude mcp remove github
# (在 Claude Code 中)检查服务器状态
/mcp
6.9. 更改 ClaudeCode 设置
6.10. 提示词技巧
6.10.1. XML 标签结构化提示
Claude 对结构化语言比较敏感,使用类似 XML 的分块格式,可以显著提升提示词的清晰度与可控性。推荐使用如下结构:
<instruction>
你希望 Claude 执行的主要任务或目标
</instruction>
<context>
任务的背景信息,比如涉及的框架、业务逻辑、团队规范等
</context>
<code_example>
可以参考的代码片段、接口规范或已有实现
</code_example>
这种写法能帮助 Claude 更准确地区分“你要它做什么”和“你提供了哪些辅助信息”,避免它把背景当成目标来执行。
6.11. 三种工作模式切换
ClaudeCode 一共有三种模式:自动接受模式、计划模式和正常模式。
一般情况下,使用 Claude Code 是正常模式。
普通模式下,它可以编辑文件,但是需要经过用户的批准。
如果你不想被打扰,十分信任它的话,你可以把编辑权限、命令权限全都交给它,所有操作默认批准。
通过 Shift+Tab,来循环切换三种模式。
模式一:正常模式
模式二:自动接受模式
模式三:计划模式
计划模式下,是先要做规划,不能做执行操作。
6.12. 回退历史
双击ESC 回退会话
双击 ESC 可以选择回退到当前对话的某句话。
当然,这个回退,只能回退对话,代码变动无法撤销,估计后续官方可能会支持。
可以配合 /resume 指令来恢复到任何会话中的某一句。
有一个开源工具,可以回退 ClaudeCode 的代码更改。
叫做 ccundo:https://github.com/RonitSachdev/ccundo
npm install -g ccundo
6.13. ClaudeCode 可视化配置工具 opcode
上面所说的基本上所有的配置工作,都可以通过这个可视化工具来整。
包括工具使用权限、钩子事件、自定义指令,甚至是查看对话和可视化使用 ClaudeCode。
6.14. Claude 官方中文指南
https://docs.claude.com/zh-CN/docs/claude-code/hooks
这里,贴一个 ClaudeCode 官方的指南,东西非常的全,国内也可以访问,有中文。
7. 结语
好了,朋友们,今天的分享到此结束了。
还是希望朋友们多多点赞、喜欢、转发一下,希望大家多给我一些动力支持,我才能继续更新下去。
每一次都是倾尽所有,把我知道的,看到的,都给大家汇总,整理,总结了,属实不易,希望大家多多支持。
感谢大家。