我让 AI 当了回老师,把 Claude Code 从头到尾盘了一遍 🔥

作者:LinDaiDai_霖呆呆日期:2026/4/29

前言

你盼世界,我盼望你无bug。Hello 大家好,我是霖呆呆!

最近尝试在用 Claude Code 写项目,建仓库、修 bug、代码审查什么的都用它。但说实话,用是用了,总感觉自己就是个"面向弹窗编程"选手 —— 它弹窗我就点确认,它问我就说好,至于它到底是怎么运作的?权限模式有几种?Hooks 能干嘛?emmm...😅

直到我发现三元写了个 skill(名为 sigma) ,安装完后在 claudeCode 里使用 /sigma 你想学习的知识 命令,它就能变身 AI 1v1 家教,基于 Bloom's 2-Sigma 方法论来教你任何知识。于是我就让它来教我 Claude Code 本身。

是的,我让 Claude Code 当老师,教我怎么用 Claude Code。有点套娃,但效果出奇的好 🤯

这篇文章就是我把整个学习过程整理出来的,10 个核心概念,从 agentic loop 到实战工作流,全给你安排上。


一、核心交互模型:Claude Code 不是聊天机器人

上来第一课,AI 老师就问了我一个灵魂问题:

当你给 Claude Code 一个任务(比如"修复这个 bug"),你觉得它内部是怎样决定接下来该做什么的?

我随口答了一下,但老师追问了:它并没有预先把整个代码库加载到上下文里,它是怎么"追溯定位"的?

它就会告诉你,Claude Code 本质上是一个 agentic loop(代理循环)

1你的指令  LLM 推理  调用工具  拿到结果  LLM 再推理  再调工具  ...  最终回复你
2

它手上有这些工具:

  • Glob — 按文件名模式搜索(比如 **/*login*.tsx
  • Grep — 按内容搜索(比如搜 "console.log")
  • Read — 读文件内容
  • Bash — 运行 shell 命令
  • Edit/Write — 修改/创建文件

跟 ChatGPT 网页版最大的区别是:普通聊天是单轮的(输入 → 输出),而 Claude Code 是多轮自主循环的。你只发了一条指令,但中间可能发生了 20 次工具调用,每次之间都有一次 LLM 推理在做决策。

💡 Tips: Glob 是按文件名搜,Grep 是按文件内容搜。

来个🌰感受一下。假设你说"把项目里所有的 console.log 删掉",它会:

  1. Grep console.log → 直接拿到所有包含它的文件和行号
  2. Read 相关文件(确认上下文,避免误删)
  3. Edit 逐个删除

而且第 2、3 步可以对多个文件并行执行,因为没有依赖关系。

还有个实用小原则:能直接从系统拿到的信息,优先用 Bash。比如查 Node.js 版本,别费劲去 Grep package.json,直接 node -v 就完事了 👇

1#  绕远路
2grep "engines" package.json
3
4#  直接问系统
5node -v
6

二、权限模式:别无脑 YOLO

第二课讲的是安全。Claude Code 有三种权限模式:

模式读文件写文件Bash 命令
Default(默认)✅ 自动⚠️ 需确认⚠️ 需确认
Auto-edit✅ 自动✅ 自动⚠️ 需确认
YOLO✅ 自动✅ 自动✅ 自动

老师问我:你同事说"YOLO 模式太爽了,确认弹窗烦死了",你怎么建议他?

我的回答是:建议用 Auto-edit 模式,读写自动,但 Bash 还是要确认。或者用默认模式 + 把常用命令加到 allow 列表。

🚨 YOLO 模式为什么危险? 因为 Bash 基本等于完全控制你的电脑 —— 安装包、发网络请求、修改系统配置、甚至 git push --force 把远程仓库搞乱。这就是为什么即使 Auto-edit 放开了文件操作,Bash 仍然需要确认

实际使用中,最舒服的配置是 Default 模式 + allow 规则:

1// settings.json
2{
3  "allow": [
4    "npm test",
5    "npm run build",
6    "git status"
7  ]
8}
9

这几个命令风险都不高,加进去以后就不会弹窗了,既安全又不烦人 👍


三、CLAUDE.md:给 AI 立规矩

CLAUDE.md 就是给 Claude Code 的项目级指令,每次对话开始时自动读取。

重点是它支持多层级

1~/.claude/CLAUDE.md           用户级(你个人的偏好,所有项目通用)
2项目根目录/CLAUDE.md           项目级(团队共享,提交到 git)
3子目录/CLAUDE.md               子项目级(前端/后端各自的规范)
4

当你在前端子目录工作时,三层会合并生效,子目录优先级最高。

老师问我:如果一个团队的 monorepo 里有前端和后端,你怎么安排?

这个简单:公共目录放通用规则(提交规范、PR 模板),前端和后端各放各的(技术栈、代码风格)。

💡 CLAUDE.md 的内容要足够具体,让 LLM 能直接据此做决策。

来看个对比 👇

1#  太笼统
2写好的代码
3
4#  具体可执行
5- 提交信息格式用 conventional commits(feat:、fix: 等)
6- 所有 React 组件必须用 TypeScript 函数式组件
7- className 命名使用【组件名-具体功能】格式
8

不过这里有一点可以优化的,那就 CLAUDE.md 并不建议写太多的内容,太长的话中间段落可能会> 被忽略,一般建议在 200 行以内。可以来把不同类型且独立的规则放在.claude/rules/下,> 关于这部分可以查看 CLAUDE.md 进阶手册:防忽略、防过载、防团队甩锅


四、提示词技巧:告诉 AI 做什么,也要告诉它不做什么

这一课是我得分最高的(90%),因为太实用了。

看这两个提示词:

1#  模糊
2帮我改一下登录页面
3
4#  精准
5登录页面 src/pages/Login.tsx 的表单提交后没有 loading 状态,
6用户会重复点击。加一个 loading state,提交时禁用按钮并显示 spinner。
7

好的提示词三要素:

  1. 指明位置 — 给出文件路径,减少搜索轮次
  2. 描述问题 — 说清现象
  3. 说明期望 — 具体要做什么

但还有一个很多人忽略的点:约束边界

1#  可能改太多
2重构 src/api/userService.ts,这个文件太大了,拆分一下
3
4#  明确边界
5src/api/userService.ts  800 行,请只把其中的验证逻辑
6(validateEmail, validatePassword, validateUsername)
7提取到新文件 src/api/validation.ts,其他不要动
8

告诉 Claude Code "不要做什么"和"要做什么"同样重要,尤其是大范围操作时。

💡 反复出现的指令放 CLAUDE.md,一次性的具体需求写在提示词里。 想想看,如果你每次都要提醒"用 TypeScript"、"用 Tailwind",那就该放 CLAUDE.md 或者 rules 里了。影响范围在个人就放用户级,在团队就放项目级。


五、Slash Commands:不只是快捷方式

Claude Code 里 / 开头的命令叫 slash commands,比如:

  • /model — 切换 Claude 模型(Opus、Sonnet、Haiku)
  • /skill — 查看和管理 skills
  • /add-dir — 把一个已有目录添加到工作上下文中
  • /sigma — 就是我现在正在用的 AI 家教

🚨 我在这踩了两个坑:

  1. /add-dir 不是创建文件夹!是把一个已存在的目录添加到 Claude Code 的上下文里。比如你在前端项目里,但需要参考后端的 API 定义,用 /add-dir /path/to/backend 就行。
  2. /model 只能切 Claude 系列模型,不能切到 GPT。Claude Code 是 Anthropic 的工具,只用自家模型。(这里其实也有一些偏差了,虽然原生不直接支持非 Anthropic 模型,但通过本地网关 / 兼容层或者其它操作也可以切换其他主流模型)

那 slash commands 的本质是什么?老师问了我一个很好的问题:/sigma 触发后发生的事情,和你直接说一句话,在 agentic loop 里有什么区别?

这个其实很容易想到答案:本质上就是多了更多上下文。Slash command 是预设好的提示词模板 + 额外上下文注入到 agentic loop 里,LLM 的推理机制没变,只是输入更丰富了。


六、Hooks:从"建议"到"保证"

这个概念是我觉得最有价值的之一。

Hooks 是在 Claude Code 生命周期的特定节点插入你自定义的 shell 命令:

Hook时机
PreToolUse工具调用之前
PostToolUse工具调用之后
Notification发出通知时
Stop完成回复停下时

来个🌰:你想每次编辑文件后自动跑 prettier 格式化,就在 PostToolUse 里匹配 Edit|Write,执行 prettier --write

但这里有个灵魂问题:这个需求我也可以写在 CLAUDE.md 里啊,比如"每次修改文件后请运行 prettier"。有什么区别?

方式执行者可靠性
CLAUDE.mdLLM 理解后主动执行可能被忽略(尤其 CLAUDE.md 很长时)
Hookharness 自动执行100% 可靠,不经过 LLM

🚨 这就是 Hook 的核心价值:把"希望 LLM 做的事"变成"系统保证做的事"。

可以在实际项目中这么配:

1PostToolUse + Edit|Write  prettier 格式化
2PostToolUse + Edit|Write  eslint 检查
3PreToolUse  + Edit|Write  TypeScript 类型检查(写入前就拦截)
4

第三个特别有意思 —— 在写入之前就做类型检查,比写完再查更安全。


七、MCP Servers:给 AI 装外挂

MCP(Model Context Protocol)是连接 LLM 和外部工具的通用协议。

Claude Code 内置工具(Read、Edit、Bash 等)能做的事毕竟有限。如果你想让它查公司内部系统的数据、操作数据库、访问设计稿怎么办?这就是 MCP 的用武之地。

关键理解:MCP 工具和内置工具对 LLM 来说使用方式完全一样,都在 agentic loop 里按需调用。区别只在于:

  • 内置工具 → Claude Code 自带
  • MCP 工具 → 你提前配置和声明,Claude Code 启动时加载

对于前端开发者,这些 MCP 比较实用:

MCP用途
Figma MCP直接读取设计稿,还原 UI
GitHub MCP查看 PR、创建 issue、review 代码
Sentry MCP查线上报错和堆栈
数据库 MCP直接查数据库验证数据
Playwright MCP操控浏览器做 E2E 测试

八、多代理并行:快是快,但别翻车

Claude Code 可以通过 subagent 分发子任务并行执行,用 git worktree 让每个 subagent 在独立的代码副本上工作。

听起来很美好对不对?来做个判断题 👇

任务能并行吗?
给 5 个独立的 React 页面写 Storybook stories✅ 可以
重构数据库 schema 并更新所有 API 端点❌ 有依赖
ESLint→Biome 迁移 + CSS Modules→Tailwind 迁移❌ 不行!

第三个为什么是不行呢? 😬 乍一看这两个迁移逻辑上完全独立,但仔细想想 —— ESLint 迁移要改 JS/TSX 文件的代码风格,Tailwind 迁移也要改同样的 JSX 文件(把 className={styles.xxx} 改成 Tailwind classes)。两个 agent 同时改同一批文件,必冲突。

🚨 判断能否并行的关键不只是"任务逻辑是否独立",还要看是否触碰同一批文件。


九、IDE 集成:不只是终端里的工具

Claude Code 支持多种环境:

  • CLI(终端) — 最原始的方式
  • VS Code 扩展 — 集成在编辑器侧边栏
  • JetBrains 插件 — WebStorm、IntelliJ 等
  • Desktop App — 独立桌面应用
  • Web App — claude.ai/code

底层的 LLM 和工具能力完全一样,区别在于交互体验。比如在 VS Code 里,Claude Code 能感知你当前打开的文件、你选中的代码。CLI 没有这些上下文。

为什么在 IDE 里比网页聊天复制粘贴更高效?一句话:它能直接修改本地文件,你只需要做确认和检查,不用来回复制粘贴了。


十、实战工作流:把所有概念串起来

最后一课是综合题:从零搭建一个 React + TypeScript 项目的完整流程。

我的回答基本把前面学的全用上了 👇

第一步:配置 CLAUDE.md

1# 项目概述
2这是一个 xxx 功能的项目,PRD 链接:xxx
3
4# 技术栈
5React + TypeScript + Vite
6
7# 代码规范
8- 所有组件使用 TypeScript 函数式组件
9- className 使用【组件名-功能】格式
10- 提交信息使用 conventional commits(feat:、fix: 等)
11
12# 常用命令
13- 启动开发服务器:`npm run dev`
14- 运行测试:[`npm test`](https://xplanc.org/primers/document/zh/10.Bash/90.%E5%B8%AE%E5%8A%A9%E6%89%8B%E5%86%8C/EX.test.md)
15- 运行单个测试:[`npm test --testPath=home`](https://xplanc.org/primers/document/zh/10.Bash/90.%E5%B8%AE%E5%8A%A9%E6%89%8B%E5%86%8C/EX.test.md)
16
17# 后台API文档
18参考`docs/api-spec.yaml`
19
20# <important>
21# 功能完成后,核心部分,例如 /xxx/xxx 必须编写单元测试并验证通过
22# </important>
23

第二步:配置权限

用 Auto-edit 模式 + 常用命令加入 allow:

1{
2  "permissions": { "allow": ["npm test", "npm run build", "git status"] }
3}
4

第三步:配置 Hooks

1PreToolUse  + Write|Edit  TypeScript 类型检查
2PostToolUse + Write|Edit  prettier 格式化 + eslint 检查
3

第四步:开发

用精准的提示词下达任务,告诉它文件位置、问题现象、期望结果。互不影响的任务可以并行。

第五步:提交 & 审查

Claude Code 可以通过 gh 命令创建 PR,也可以用 /review 审查代码。

不过很明显,这个回答也只能是让AI老师知道了我这节课是有认真听的,实际开发中肯定还是得视项目的复杂度、结合具体需求来处理。


学习成绩单

概念得分
核心交互模型80%
权限模式与安全模型85%
CLAUDE.md 项目配置82%
高效提示词技巧90% 🏆
Slash Commands80%
Hooks:自动化工作流88%
MCP Servers92% 🏆
多代理与并行执行85%
IDE 集成82%
实战工作流90% 🏆
平均85%

最大的收获不是某个具体概念,而是从"会用"到"理解原理"的转变。知道 agentic loop 是怎么跑的,你就能写出更好的提示词;知道 Hook 和 CLAUDE.md 的区别,你就能做出更好的配置决策。

后语

知识无价,支持原创!这篇文章就介绍到这里。

如果你也在用 Claude Code 但总感觉没发挥出它的全部实力,试试让它当一次你的老师。套娃虽套娃,但效果还行的 😂

喜欢霖呆呆的小伙伴还希望可以关注霖呆呆的公众号 LinDaiDai

我会不定时的更新一些前端方面的知识内容以及自己的原创文章🎉。

你的鼓励就是我持续创作的主要动力 😊。


我让 AI 当了回老师,把 Claude Code 从头到尾盘了一遍 🔥》 是转载文章,点击查看原文


相关推荐


拒绝低效!这款神器,让你的终端效率起飞 | 深度解析 fzf 终极指南
GetcharZp2026/4/20

还在手动敲 cd 和 ls?还在繁琐的 history 中翻找命令?是时候换个方式工作了。一篇文章带你彻底掌握命令行模糊找回神器 fzf,从安装到进阶玩法,助你效率翻倍! 身为开发者,我们每天大部分的时间都花在了终端(Terminal)里。不论是切换目录、搜索文件,还是翻阅历史命令,这些细碎的操作如果效率低下,积少成多便会吞噬掉大量专注力。 你是否也曾经历过: 想找一个深层目录下的文件,却记不清完整路径,只能不断 ls 确认? 按 Ctrl+R 搜索历史命令,结果搜出来的不是自己想要的?


OpenClaw实操指南13|用AI接管飞书多维表格:自动建表、写数据、做分析,一条指令搞定
Rubin智造社2026/4/12

飞书多维表格是很多团队的数据中枢——项目管理、内容选题、客户跟进、数据分析,全在里面。 但维护它是个体力活:手动建字段、逐条录数据、定期整理……重复劳动大量消耗精力。 这篇教程教你用OpenClaw的lark全套技能,把飞书多维表格的常见操作全部交给AI。 一条指令建表,一条指令批量写数据,一条指令做分析汇总。你只需要告诉AI你要什么,剩下的它来做。 核心概要 这篇解决什么问题? 安装并配置lark全套技能,实现飞书多维表格的AI自动化操作:建表、字段管理、数据读写、视图


别再把 LangChain 当成 API 胶水:Runnable 才是把 AI 流程工程化的关键接口
swipe2026/4/4

很多人第一次接触 LangChain,会把它理解成一组“帮你调模型”的工具类:PromptTemplate 负责拼 prompt,ChatOpenAI 负责调模型,OutputParser 负责解析结果。这样理解没错,但只对了一半。 真正到了工程里,问题很快就不是“怎么调一次模型”,而是“怎么把一条会持续演化的 AI 流程组织好”。 比如一个看起来简单的企业问答助手,往往很快就会长成这样: 先清洗用户问题 再决定这是闲聊、任务型问题,还是知识问答 不同类型走不同 prompt 有的分支要结构化


【35天从0开始备战蓝桥杯 -- Day6】
小年糕是糕手2026/3/26

🫧个人主页:小年糕是糕手 💫个人专栏:《C++》《Linux》《数据结构》《C语言》 🎨你不能左右天气,但你可以改变心情;你不能改变过去,但你可以决定未来! 目录 一、进制转换 1.1、二进制转十进制 1.2、十进制转二进制 1.3、二进制转八进制 1.4、二进制转十六进制 1.5、原码、反码、补码 练习 1°10 进制转 x 进制 2°x 进制转 10 进制 3°进制转换1 4°进制转换2 二、位运算操作符 2.1、左移操作符 2.2、右移操


【养虾日记】Openclaw操作浏览器自动化发文
卷福同学2026/3/18

用QClaw操作本地浏览器,登录自媒体平台,实现自动发文 1.更新 Openclaw在3.13版本更新后,加入了Chrome DevTools MCP 官方支持,就是可以控制浏览器了。 Openclaw虽然自带内置浏览器,但是打开后完全没有登录信息和安装的扩展插件,这次升级后就能用上我们自己的浏览器了,比较方便。 这里小卷用QClaw做演示,如何让它操作浏览器干活 2.打开浏览器调试 我们需要用到Chrome浏览器 打开chrome://inspect/#remote-debugging


OpenClaw 卸载教程,一篇讲透
不惑_2026/3/10

有些朋友尝鲜体验后,觉得不太适合自己,想要完全卸载却不知道如何操作。以下是完整的卸载步骤: 1. 打开终端,输入以下命令: openclaw uninstall 2. 使用鼠标上下移动光标,按空格键勾选所有选项,然后按回车键确认。 3. 选择 yes 并按回车,此命令会自动删除 OpenClaw 的工作目录。 4. 卸载 npm 包: 如果使用 npm 安装:npm rm -g openclaw 如果使用 pnpm 安装:pnpm remove -g openclaw 如果使用 bun


弃用html2pdf.js,这个html转pdf方案能力是它的几十倍
刘发财2026/3/2

欢迎转载文章 在前端开发中,“把网页变成 PDF”是个老生常谈的需求。无论是生成发票、报告还是简历,用户总希望点一下按钮就能带走一份格式完美的文档。 目前主流的前端html转pdf方案是通过html2canvas将网页渲染成canvas,再通过jsPDF将canvas转换为pdf。代表方案就是 html2pdf.js,npm包周下载量达到了80万,为广大开发者所接受。但是因为它基于html2canvas和jsPDF,会有一些无法解决的问题,比如: 生成速度慢 生成的pdf文件体积大 生成的pd


【大模型面试突击】03_大模型架构演进与对比
香芋Yu2026/2/21

2026大模型面试:大模型架构演进与对比必考28题(含答案) 精选自176道采集题目,保留最高频最核心的28题 | 难度:⭐基础 ⭐⭐进阶 ⭐⭐⭐深入 一、GPT与LLaMA系列演进(7题) 1. ⭐⭐ [字节/高频] GPT系列从GPT-1到GPT-4的架构演进主要脉络是什么? 一句话秒答: 四代GPT走的是一条"预训练范式→暴力出奇迹→多模态融合"的进化路线,每一步都在重新定义规模的上限。 展开来说: GPT-1其实干了一件很简单但当时很大胆的事——把Transformer Decod


2025 年客户端技术盘点与 2026 年技术展望
陆业聪2026/2/13

摘要:2025 年客户端技术围绕三条主线展开:Apple Liquid Glass 与 Android Material 3 Expressive 引领设计革新,端侧 AI 通过 Apple Foundation Models 框架和 Google Gemini 走向开发者可编程化,Flutter、React Native、KMP 等跨平台框架在性能上全面向原生看齐。2026 年的核心看点在于端侧 AI 生态建设、新设计语言落地及鸿蒙全球化验证。 本文基于 2025 年各平台官方发布的公开信


Rust多线程编程学习笔记
sayang_shao2026/2/4

目录 Rust 多线程基础同步线程编程 基本线程创建线程间通信共享状态线程返回值线程池 异步线程编程 Tokio 异步运行时异步任务异步通道异步共享状态 线程安全 所有权与借用同步原语Send 和 Sync trait 性能优化 线程数量避免竞争异步 vs 同步 最佳实践完整代码示例总结 Rust 多线程基础 Rust 的多线程编程建立在标准库的 std::thread 模块之上。与其他语言不同,Rust 通过其所有权系统和类型系统来保证线程安全,避免了常见的并发问

首页编辑器站点地图

本站内容在 CC BY-SA 4.0 协议下发布

Copyright © 2026 XYZ博客