找回密码
 立即注册
首页 业界区 科技 初学者掌握 claude code 的一些进阶知识

初学者掌握 claude code 的一些进阶知识

戟铵腴 2026-1-19 00:45:00
<p></p>目录<ul><li>1.发展史</li><li>2.斜杠命令 commands</li><li>3.skill 技能包</li><li>4.钩子 HOOK</li><li>5. MCP 服务器</li><li>6.插件 plugins</li><li>7.子代理 SubAgents</li><li><strong>8.项目记忆文件</strong> CLAUDE.md</li><li>9.Plan模式</li><li>暂时的结语</li></ul><p></p>
<p>很少有人真的喜欢天天学新东西,我一个 java 技术栈的朋友,说我们怎么天天能学那么多东西(针对于全栈)。我作为一个 出海 Saas 人,我自己也沉默了:</p>

   
<img loading="lazy"  src="https://img1.ccgxk.com/ccgxk-oss/2026/01/202601182351407NUQsG.png-testccgxk" alt="自己每天用到的技术栈">


<p>本文完整版全文原文: https://www.ccgxk.com/codeother/623.html</p>
<p>是啊,全栈开发者(偏前端),可能自己都意识不到,但列出来自己每天用到的技术栈,自己也会吓一条。对于一些精钻某个技术的人来讲,如果要转全栈,下意识觉得每个都要学很久很久,会吓一跳。</p>
<p>但是 claude code 是最应该好好学的。因为我发现,其他的半桶水,几乎不影响你挣钱,但 claude code 等类似 agent 产品,肯定会拖慢你本应达到的速度。学吧,学无止境。</p>
<p>不要排斥,就好像我小学 5 年级,第一次用 baidu 时的那种恐惧一样。后来就离不开搜索引擎了。越用越熟练。</p>
<p>如何安装 claude code ?这个我昨天有写过,不再多说:</p>
<p>https://www.ccgxk.com/codeother/622.html</p>
<p>下面就是进阶内容了。</p>
<p>本文主要讲 斜杠命令、skill、sub-agent、插件、CLAUDE.md、plan模式、hooks 等初步使用。</p>
<p>首先,可以先阅读一下我的这篇文章,了解一下 claude code 的各种功能的发展原因,为什么会出现这么多工具,然后来再来阅读下文:</p>
<p>https://www.ccgxk.com/codeother/612.html</p>
<h2 id="1发展史">1.发展史</h2>
<p>历史吧,即这 5 个:</p>

   
<img loading="lazy"  src="https://img1.ccgxk.com/ccgxk-oss/2026/01/202601182352537NdkDm.png-testccgxk" alt="发展史">


<h2 id="2斜杠命令-commands">2.斜杠命令 commands</h2>
<p>斜杠命令,是一种快捷方式,为解决临时的 重复性 命令而设立的。</p>
<p>因为 claude code 界面,第一页,本质就是一个大的对话框而已。如果我们每次都要写一段长长的某提示词,比如,「输入 /hello 时,输出 hi, 祝你今天开心!」。方便干净!</p>
<p>怎么搞呢?严格的方法,是在项目根目录,这个 .claude/commands/hello.md 文件夹的 markdown 文件里,写入 下面的话:</p>
  1. <code>输出问候消息。
  2. 这是一个简单的命令,用于向用户打招呼。
  3. 执行步骤:
  4. 1. 输出消息 "hi, 祝你今天开心!"
  5. </code>
复制代码
<p>哈哈,没错,写人话就行了,就这么简单!!!</p>
<p>当然,最好的办法是,直接跟 claude 说 (shift 可以换行) ,「添加一个 自定义斜杠命令 (Slash Commands)输入 /hello 时,输出 hi, 祝你今天开心!」</p>

   
<img loading="lazy"  src="https://img1.ccgxk.com/ccgxk-oss/2026/01/202601182353247NHLZu.png-testccgxk" alt="img">


<p>一个样子!也免去记忆了~</p>
<h2 id="3skill-技能包">3.skill 技能包</h2>
<p>然后是 skills (技能包),也叫领域专家。</p>
<p>我们在使用 claude code 的时候,如果专注于前端,那么就可以引入一个专业前端的 skill !</p>
<p>claude 官方有几个 skill 示例(请怯魅,不过就是一大堆 markdown 格式的文本规范罢了,告诉 AI 怎么做事),质量还不错,地址是 https://github.com/anthropics/skills</p>
<p>下面是几个 skill 安装地址,使用 npx 命令安装:</p>
  1. <code># 前端设计技能
  2. npx skills-installer install @anthropics/claude-code/frontend-design --client claude-code
  3. # 文档协同技能
  4. npx skills-installer install @anthropics/claude-code/doc-coauthoring --client claude-code
  5. # Canvas 设计技能
  6. npx skills-installer install @anthropics/claude-code/canvas-design --client claude-code
  7. # PDF 处理技能
  8. npx skills-installer install @anthropics/claude-code/pdf --client claude-code
  9. # 算法艺术生成
  10. npx skills-installer install @anthropics/claude-code/algorithmic-art --client claude-code
  11. </code>
复制代码
<p>斜杠命令 /skills 可以查看本地已经安装的技能包(skills)</p>
<p>我们怎么用呢?只需要说人话即可! ⊙﹏⊙|||</p>
<p>比如 :</p>
  1. <code>使用 frontend-design skill 来做我之后的网页项目!
  2. </code>
复制代码
<p>那么,后续,它就会按照这个技能包,优化我们的后续的前端网页项目了!</p>
<p>当然,我们也可以自己设计自己的 skills</p>
<p>在 /.claude/skills/goodcoding/ 这个文件夹里,新建下面两个文件:</p>
  1. <code># skills/goodcoding/skill.json(可选)
  2. {
  3.   "name": "goodcoding",
  4.   "description": "更好的 coding",
  5.   "version": "1.0.0",
  6.   "author": "ccgxk",
  7.   "categories": ["automation"],
  8.   "license": "MIT",
  9.   "skill": {
  10.     "file": "skill.md",
  11.     "description": "这个技能用于写更好的代码"
  12.   }
  13. }
  14. # skills/goodcoding/skill.md
  15. # 好好写代码
  16. 要好好的写出更好的代码啊!
  17. </code>
复制代码
<p>之后,你就可以像 斜杠命令 一样,/goodcoding ,用了!</p>
<p>什么效果呢?看这回复,有点很搞笑哈哈,但没办法,所有 claude code 的高端技能,就是玩 markdown 文件,只要你语文好,说话清楚,你就可以把 claude code 玩的很 6 !</p>

   
<img loading="lazy"  src="https://img1.ccgxk.com/ccgxk-oss/2026/01/202601182353497NaX4n.png-testccgxk" alt="斜杠命令">


<h2 id="4钩子-hook">4.钩子 HOOK</h2>
<p>这个是好东西,用人话说,就是触发事件!</p>
<p>什么时候,执行什么命令!</p>
<p>有这 5 大类:</p>
<p>user-prompt-submit</p>
<p>tool-use</p>
<p>after-tool-use</p>
<p>permission-request</p>
<p>notifcation</p>
<p>它们的解释如下:</p>

   
<img loading="lazy"  src="https://img1.ccgxk.com/ccgxk-oss/2026/01/202601182354097Nhs36.png-testccgxk" alt="hooks 命令">


<p>我们查询当前的已经启用 hook 时,使用 /hooks 命令。我们会发现一大堆系统内置的命令。</p>
<p>不过,这个都是 命令行,如果我们想添加我们自定义的,那就得写 sh 脚本,或者 Python 脚本。</p>
<p>怎么添加呢?除了用人话直接要求 claude code 外,可以在 .claude/settings.json 中查看和设置。</p>
  1. <code># .claude/settings.json
  2. {
  3.   "hooks": {
  4.     "user-prompt-submit-hook": {  // 触发时机
  5.       "command": "npm run validate-prompt",  // 执行命令
  6.       "enabled": true  // 是否启用该 hook
  7.     },
  8.     "tool-use-hook": {
  9.       "command": "~/.claude/hooks/check-permission.sh",  // 安全检查(自定义)
  10.       "enabled": true,
  11.       "blocking": true // 是否阻塞?true 表示脚本失败时,工具调用会被中断
  12.     },
  13.     "after-tool-use-hook": {
  14.       "command": "echo 'Tool used: {{toolName}}' >> ~/.claude/hooks.log",
  15.       "enabled": true
  16.     }
  17.   }
  18. }
  19. </code>
复制代码
<p>你可以自己设计你自己的!</p>
<p>哦,对,还有个 task-complete-hook  钩子,可以在任务完成时触发。给你发个短信通知等等....</p>
<p>这个钩子,用好了,特别好用,用不好,就会是障碍。</p>
<p>你可以用在什么代码格式化上,自动 TS 转 JS 了.....</p>
<h2 id="5-mcp-服务器">5. MCP 服务器</h2>
<p>这个你可能很多地方见过,没错,它就是为了方便我们去操作很多其他软件,抽象写的一个文档。</p>
<p>MCP是一种开放协议,通过标准化的服务器实现,使 AI 模型能够安全地与本地和远程资源进行交互。</p>
<p>这个我不再多说,网上有一大把,比如让你在 bilibili 搜索东西,操作 github ,设置 wordpress 了... 安装方式各有差异,大家自行探索。</p>
<h2 id="6插件-plugins">6.插件 plugins</h2>
<p>还记得上面我写的 claude code 发展历史吗?</p>
<p>插件,就是好几个斜杠命令、skill 技能、钩子 hooks、mcp 服务器、子代理.... 打包到一起了。</p>
<p>在生产环境下,用于方便复制自己打磨好的工具,你辛辛苦苦打磨了很久 claude code,搞了一大堆技能,你想发扬开源程序员精神,为砸破 程序员饭碗 添砖加瓦,你就可以创建一个插件,把完整 的工作流套件都分享出去~</p>
<p>网上有很多成套的市场:</p>
<p>官方Skills和插件仓库        https://github.com/anthropics/skills</p>
<p>官方插件网        https://claudecodemarketplaces.com        插件市场目录</p>
<p>社区插件精选网:https://awesomeclaude.ai/plugins</p>
<p>安装的话,比如有个叫 claude-flow 的插件,在 claude code 命令行里,直接输入 /plugin install claude-flow  就行了,这些市场里,会给出安装方式。</p>
<p>有些在 github 上,那么就 claude plugin install github:user/repo 也行!</p>
<p>如果想打包自己的 plugins 的话,很简单,直接把自己的 .claude 目录复制出来,搞这个结构:</p>
  1. <code># 目录结构
  2. my-plugin/
  3. ├── plugin.json          # Plugin 配置
  4. ├── skills/              # Skills 目录
  5. │   ├── skill1/
  6. │   └── skill2/
  7. ├── commands/            # 自定义斜杠命令
  8. │   └── my-command.md
  9. ├── mcp/                 # MCP 配置
  10. │   └── mcp-config.json
  11. ├── agents/              # SubAgent 定义
  12. │   └── agent1.json
  13. └── hooks/               # Hook 脚本
  14.     └── hook1.sh
  15. # plugin.json 内容
  16. {
  17.   "name": "my-plugin",
  18.   "version": "1.0.0",
  19.   "description": "我的自定义插件",
  20.   "author": "Your Name",
  21.   "skills": [
  22.     "skills/skill1",
  23.     "skills/skill2"
  24.   ],
  25.   "commands": [
  26.     {
  27.       "name": "/my-command",
  28.       "description": "我的自定义命令",
  29.       "file": "commands/my-command.md"
  30.     }
  31.   ],
  32.   "mcpServers": [
  33.     {
  34.       "name": "my-mcp",
  35.       "config": "mcp/mcp-config.json"
  36.     }
  37.   ],
  38.   "agents": [
  39.     {
  40.       "name": "my-agent",
  41.       "config": "agents/agent1.json"
  42.     }
  43.   ]
  44. }
  45. </code>
复制代码
<p>以这个目录配置即可。</p>
<p>然后打包发布~</p>
<h2 id="7子代理-subagents">7.子代理 SubAgents</h2>
<p>我们很多时候,不是单线任务,需要多线共同完成。那么就需要子代理了!</p>
<p>(当然,它们执行的时候,可能看起来还是单线的,但它们确实是分工,各干各的)</p>
<p>就好像你有好几个员工一样。</p>
<p>他们有的负责 测试代码</p>
<p>有的负责安全</p>
<p>有的负责整理文档....</p>
<p>那么就可以写好几个任务。</p>
<p>怎么添加呢?除了口头用人话命令 claude code 外,就是笨办法。</p>
<p>来自 Claude Code 创始人 Boris Cherny 的实际使用案例:</p>
  1. <code># 在 agents 目录里添加三个文件
  2. # .claude/agents/code-simplifier.md
  3. 你是一个代码精简专家。在 Claude 完成工作后,你的任务是:
  4. 1. 分析代码的复杂度和可读性
  5. 2. 识别可以简化的逻辑
  6. 3. 提供优化建议但保持功能不变
  7. 4. 优先考虑性能和可维护性
  8. # .claude/agents/verify-app.md
  9. 你是一个端到端测试专家。你的任务是验证应用功能:
  10. 1. 运行完整的测试套件
  11. 2. 检查所有关键路径
  12. 3. 验证边界情况
  13. 4. 确保用户体验"感觉对劲"
  14. 5. 如果发现问题,提供详细的修复步骤
  15. </code>
复制代码
<p>然后在 claude code 命令行里,写下面的内容(shift 可以换行):</p>
  1. <code># 在 Claude Code 中
  2. 使用 code-simplifier agent 优化刚才写的代码
  3. 使用 verify-app agent 验证应用是否正常工作
  4. </code>
复制代码
<h2 id="8项目记忆文件-claudemd"><strong>8.项目记忆文件</strong> CLAUDE.md</h2>
<p>这个肯定不能不说。</p>
<p>我之前有详细整理过它的攻略:</p>
<p>https://www.zhihu.com/question/1979609139266213083/answer/1981150550633509168</p>
<p>它,就是你自定义的 系统提示词 !</p>
<p>主要用于介绍项目结构,或者 一些什么什么....</p>
<p>一般就放在你项目根目录,或者某个文件夹里。</p>
<p>文件名,就命名成一个 CLAUDE.md 就行。</p>
<p>当然 claude /init 也行,这样 claude code 会自己扫描整个项目,给你草拟一个 CLAUDE.md ,如果你懒的话....</p>
<p>算是一个智慧的积累吧。</p>
<p>claude 创始人,也建议把一些常见的报错或注意事项给放进去。</p>
<p>但你要注意,这个文件体积越小越好!不要写很多废话!!!</p>
<h2 id="9plan模式">9.Plan模式</h2>
<p>就是先规划,后执行。毕竟每一次回车 enter 下去,都是烧钱烧 token 的开始。你用国产模型,可能就 5 毛钱没了,你要是用的 国外模型,就是一张鸡蛋灌饼几块钱没了。</p>
<p>这个规划模式,就是会先告诉你它接下来的计划,让您过目,看看需不需要修改。</p>
<p>启用很简单:快速按两次快捷键,也就是 Shift+Tab, Shift+Tab 。</p>
<p>或者直接敲斜杠命令 /plan 。</p>
<p>小任务就不必了,废 token,大任务,就有必要了,必要时刻省很多 token。</p>
<p>这样,在执行时,会给出计划,和选项,<strong>同意就选第一个,不同意,就选最后一个</strong>,让 claude code 重新修改某个地方。</p>
<h2 id="暂时的结语">暂时的结语</h2>
<p>当然,还有 沙盒模式、深度思考模式、headless 无头集成模式、LSP 集成模式... 等等,以及一些技巧。这些我明天 2026.1.19 再更新!</p><br>来源:程序园用户自行投稿发布,如果侵权,请联系站长删除<br>免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册