视频课程深度分析 · 全文转写 + 48 关键帧
Matt Pocock 的 AI 编程速成课程(全新)
AI Coding Crash Course (Brand New) —— 一套与工具无关的五步 AI 编程工作流
TL;DR 一句话总结
这门课把讲师两年的 AI 编程实践提炼成一套与具体工具无关 的五步工作流,并围绕"上下文管理"与"如何给 agent 立规矩"两条主线,把背后的原理一直讲到了 API 请求的层面。课程的立论很直白:AI 编程的瓶颈不在模型,而在驾驭模型的人——不是让模型变强,而是让你变强 。
1 Grilling 开工前连环拷问,对齐设计共识
2 Spec 写下目的地:问题、方案、用户故事
3 Tickets 每个 smart zone 一张,带验收标准
4 Implement auto mode + TDD,人可以离场
5 Review 双 sub-agent + 三层检查兜底
[00:02:36] 课程开场画面:讲师在 VS Code 终端中运行 Claude Code,工作目录即课程练习仓库 ai-coding-crash-course。
小结: 五步法(grilling → spec → tickets → implement → review)是全课骨架,上下文管理与 steering 是两条贯穿的基本功;方法不绑定任何工具,Claude Code 只是演示载体。
INFO 课程信息
正式开始前,先用一张卡片墙说清:谁讲的、需要什么基础、怎么跟练、要花多少钱。
讲师 Matt Pocock,AI Hero 创始人。其 skills 开源仓库在录制时刚突破 20 万 star(GitHub 历史 top 20),下载量超 1300 万。
先修要求 只有两条:能读代码(不要求会写)、会用终端(cd/ls);Windows 用户需通过 WSL 获得 Linux 终端。
练习项目 Cadence React Router v7 + Drizzle + SQLite 的课程平台(买课/课时/quiz),仓库 ai-hero-dev/ai-coding-crash-course;npm run reset 可把代码重置到任意课时快照跟着练。
费用建议 需付费订阅:Anthropic Pro 起步、职业化使用上 Max(5x 档约 $100/月)。订阅比 API 按 token 计费便宜 20~50 倍,还能避免"电表心理"。
适用工具 harness agnostic:任何能在终端运行、能用 skills 的 agent 都可以——课程演示用 Claude Code,Codex / Open Code / GitHub Copilot 同样适用。
配套资源 Discord 社区(付费学员有专属问答 forum)、AI Coding Dictionary 术语库;后续进阶方向是 Sandcastle(AFK agents)与 AI Hero cohorts。
小结: 门槛低(会读代码、会用终端即可)、工具自由(演示用 Claude Code 但方法通用)、需要一份付费订阅作为入场券。
CH.1 开场:五步法与订阅建议 00:00:00 ~ 00:07:03
本章概述: 讲师用七分钟交代了整门课的骨架(五步法)、第二条主线(上下文管理),以及一个非常实际的开场问题——该买哪一档订阅。
00:00:39 五步法正式登场:grilling → spec → tickets → implement → review 。讲师坦言,敢开这门课正是因为这五步在两年的工具迭代中始终没变——工具会过时,流程不会。
00:01:02 预告第二条主线:上下文管理 ——注意力会随上下文变深而衰减,因此要学会判断何时 compact、何时 clear、何时 handoff,以及如何把大块工作拆成 agent 能消化的小块。
00:01:43 选 agent 的标准只有两条:能在终端运行、能使用 skills。课程教的是通用基本功,Claude Code 只是讲师的日常主力,被选作演示工具。
00:03:09 结课承诺:学完后你能交付"数量巨大且质量超高"的工作——而实现方式不是让模型变强,是让你变强 。
00:03:38 费用问题开门见山:免费额度撑不住 agentic 工作,"第一节正经课就会撞墙"。Anthropic Pro 是推荐起点,职业化使用建议 Max;OpenAI 的 Plus 大致对应 Pro。
00:05:35 为什么强烈推荐订阅而非按 token 计费?除了便宜 20~50 倍,更重要的是避免"电表心理" ——按量计费会让人下意识地"为省 token 而优化"(比如降级到便宜模型压低账单),而不是"为效率而优化",从而做出非理性决定。
本章小结: 五步法是课程的骨,上下文管理是课程的血;订阅制不只是省钱,更是保护你"为效率优化"的决策心态。
CH.2 环境搭建与跟练工具链 00:07:03 ~ 00:22:46
本章概述: 从零到能跑的完整上手流程:装好 VS Code、Node 和练习项目,跑起 Cadence 应用,登录 Claude Code,最后掌握课程配套的"跟练三工具"。
00:07:34 IDE 推荐 VS Code,理由很务实:免费、跨平台、门槛低,关键是有内置终端 ——agent 本身就是终端程序,IDE 和终端一体化最顺手。Windows 用户先装 WSL。
00:09:08 克隆练习仓库 ai-hero-dev/ai-coding-crash-course,安装 Node LTS 版本(22 或 24 均可)。
00:12:16 初始化数据库:npm run db:migrate 生成 SQLite 文件 data.db,npm run db:seed 灌入假数据;00:13:04 npm run dev 起开发服务器(localhost:5175),Ctrl+点击链接可在 VS Code 内直接打开页面。
00:15:52 安装 Claude Code 后运行 claude,登录时选 subscription (订阅);00:16:19 用 /model 选套餐默认模型即可,effort(推理档位)调到 medium 就够用。
00:17:56 跟练三工具(底层都是 AI Hero CLI):npm run reset 把代码重置到任意课时的快照;cherry-pick 在保留自己改动的前提下叠加课时改动;pull 拉取讲师对上游的更新。不熟 git 的话,全程只用 reset 就够了。
[00:18:17] npm run reset 列出的课时快照——try-the-cli、make-a-schema-change、grill-me-skill、handoff-skill……这份列表几乎就是整门课的大纲。左侧是练习应用 Cadence 的课程页面。
本章小结: 环境搭建没有花哨内容,核心是两条:终端是 agent 的家(所以选带内置终端的 VS Code),reset 三工具让你随时跟上课程进度、不怕改坏。
CH.3 概念预备:数据库 vs 源码、配置白板化 00:22:46 ~ 00:30:34
本章概述: 正式讲方法论之前,先立两个贯穿全课的基本概念:源代码与数据库的关系,以及"你的 agent 配置应该从白板开始"。
00:23:13 项目里有两个基本单位:源代码 和数据库 (本项目中就是一个 SQLite 文件 data.db,表结构定义在 app/db/schema.ts)。
00:24:01 两者有一个重要的方向性:源码定义数据库"应该"是什么形态,但数据库不会自动跟上——migration 必须手动跑 。只改源码不迁移,运行时就报 no such column。
00:26:36 一个高频坑:npm run reset 只重置源码、不跑迁移。所以每次 reset 之后,记得补一句 npm run db:migrate。
00:27:09 seed 脚本是"删全表、重灌假数据",所以练习库可以放心玩坏;想测特定场景时,还可以让 agent 帮你改 seed 数据。
00:28:04 第二个概念:多数人的 agent 配置是过度配置 的——一堆 MCP servers、settings、skills、插件层层叠加。讲师的建议很激进:全删了,从白板开始;备份和恢复都可以交给 agent 自己做,因为"你的 agent 应该是它自己配置的专家" 。
[00:28:45] 本章幻灯片:"Your Agent Config ...is probably a dumpster fire"(你的 agent 配置大概率是个着火的垃圾箱)——先备份,再从干净的起点重建。
本章小结: 记住两句话——源码与数据库必须一起版本化、migration 永远手动;agent 配置从白板开始,让 agent 自己管自己的配置。
CH.4 request logger 与 agent 四要素 00:30:34 ~ 00:45:27
本章概述: 全课的第一个理论高峰。讲师先教你用 request-logger 亲眼看清 agent 每次往 API 发了什么,然后提出贯穿全课的四层心智模型,最后讲透模型"非确定性"的本质。
00:30:56 request-logger 是一个本地代理:起服务(npm run request-logger,监听 localhost:8787),再用 ANTHROPIC_BASE_URL=localhost:8787 claude 启动 Claude Code,此后每次请求/响应都会完整留痕——包括全部 system prompt 。
00:37:09 四层心智模型:Model (引擎)→ Harness (把无状态模型连到外部世界的程序层)→ Environment (agent 能操作的文件系统)。核心公式:Agent = model harnessed in an environment ,agent 不是独立实体。
00:40:06 由此得出一个反潮流的结论:人们为"换模型"疯狂,但模型只是汽车的引擎;模型训练太贵你控制不了,真正的工作重心应该放在 harness 和 environment 这两个你完全可控的层面。
00:41:13 模型的本质是 next token prediction,输出经过采样器做加权随机——所以它永远是非确定的 。
00:43:12 为什么不把 temperature 设为 0?因为 likelihood trap (似然陷阱):每次都选最大似然的 token,输出质量反而下降(课程引用了质量-多样性权衡的论文);即使设为 0,并行计算的顺序差异也会让结果不同。结论:非确定性是 feature,不是 bug 。
00:44:43 两个推论:你的 agent 行为必然和讲师不一样(这是方差,不是故障);再聪明的 agent 也有非零概率干坏事——这一点直接决定了第七章的权限设计。
[00:39:12] 全课核心心智模型:由内到外依次是 Model(黄)、Harness(蓝)、Agent(白虚线)、Environment(红)四层同心圆。
本章小结: Agent = 模型 + harness + 环境,三者都值得理解,但只有后两者值得你投入;模型的不确定性无法消除,只能用权限和流程去管理它。
CH.5 请求解剖、context / session 与 attention degradation 00:45:32 ~ 01:12:46
本章概述: 全课理论密度最高的一章,回答一个所有人都遇到过的问题——为什么 agent 聊久了会变笨?答案从一条 API 请求开始,一路推到 smart zone / dumb zone 这个核心概念。
00:49:16 解剖日志能看到的关键事实:每次请求都携带整段对话历史 。一个 turn(回合)可以持续数小时、包含数百次 API 请求——一切 harness 魔法都可以归结为一个公式:turns → requests → tool calls → tool results。
00:57:09 为什么聊久了会变笨?Transformer 的注意力机制让 token 之间的关系数随长度平方增长 :1k token 约 100 万条关系,100k token 就是约 100 亿条——"像一屋子人同时喊着引起注意",每条信息分到的注意力越来越少。
01:00:11 由此引出 smart zone / dumb zone :上下文窗口的前段(经验值约 150k tokens 以内)模型能做复杂任务;超过阈值进入 dumb zone 后,只配做简单任务,而且又差又贵 。注意这是缓坡不是悬崖,所以需要你主动保持警觉。
01:02:36 实操建议:150k 是一条"逃生阈值"——到了就考虑收尾、bail out 或 handoff。这种 context paranoia(上下文偏执)非常有用。
01:03:18 三层状态模型:model 完全无状态;harness 只在 session 内有状态;environment(文件系统)永远有状态 。所以"记忆"的正解是写进文件系统——引 Mario Zechner 的话:01:05:40 "My code base is my memory system."
01:09:44 计费机制:prefix cache 命中部分按 input 价的 1/10 计费,而 session 是 append-only 的,把不变的内容放前面能最大化缓存命中;thinking tokens 按 output 计费 ,长篇推理很贵。
01:12:14 sediment(沉积物)警告 :session 早期的每个 token,会在之后每一次请求里被重新计费、重新消耗注意力——早期的废话会被一路背着走。
[00:49:39] request-logger 记录的原始 API 请求:消息列表、IDE 上下文注入、MCP 工具调用一览无余——你只打了一句话,发出去的可能有几百行。
[01:00:06] 注意力机制示意图:token 之间的连接随上下文变长爆炸式增长,这正是 attention degradation 的根源。
本章小结: 上下文既是成本也是质量——关系数平方增长导致注意力衰减,约 150k 是 smart zone 的边界;想被记住的东西写进文件(环境永远有状态),想省钱省注意力就保持上下文小而相关。
CH.6 幻觉字典、effort 与模型选择 01:13:00 ~ 01:33:45
本章概述: 三个紧密相关的话题:幻觉怎么分类和对症下药、effort(推理档位)到底值不值、以及日常该用哪个模型——讲师的答案都很克制。
01:13:23 幻觉的定义是 confidently wrong (自信地错)。它分两类:factuality (事实性)错误——世界事实答错了;faithfulness (忠实性)错误——信息明明在上下文里,却被无视或偏离。
01:14:32 factuality 的根因是 parametric knowledge 不足:知识在训练时被压缩进权重(像一张模糊的 jpeg),训练完就冻结。knowledge cutoff (知识截止)之后的库和 API 模型不可能知道,凭记忆回答就是编造。
01:16:34 现场演示很有说服力:问 X(推特)API 定价,agent 凭记忆报出旧价格,web search 之后才发现早已降价——即使是 cutoff 之前的知识,也会因压缩模糊而出错。解药是 contextual knowledge :答案就在眼前时,幻觉大幅减少。
01:18:42 幻觉决策树 :信息不在上下文 → 把资料 load 进去;在上下文还出错 → 多半是进了 dumb zone,该清理上下文了。口诀:01:19:03 "Never trust an unsourced LLM."
01:20:22 effort 对照实验 :同一个"explore this code base"任务,max 档花 41k tokens / 2 分 15 秒,low 档只花 11k / 1 分 11 秒——但 max 多挖出了 auth 实现细节和一处文档漂移。effort 的本质是花更多 reasoning tokens,同时牺牲延迟和 smart zone 容量 。
01:25:59 结论很克制:几乎别用 max / extra high 档 (那是厂商刷榜用的);讲师自己常年固定 Opus + medium。
01:26:54 模型选择上:调 harness / environment 而非调模型 ——两者对效果的贡献约 50-50,但调后者换模型时全系统受益。按任务分级用 effort:探索/研究/总结用 low,详细规划/code review 值得 high;选型看每个任务的实际效率,不看单 token 价。
[01:15:47] AI Coding Dictionary 词条 "Knowledge cutoff":cutoff 之后的库和 API 是 fabrication trap(编造陷阱),除非先把文档 load 进上下文。
[01:26:15] DeepSWE 榜单:横轴是平均每个任务消耗的 output tokens / 成本,纵轴是分数——右上角是 "most efficient"(最高效)前沿。
本章小结: 幻觉先分"事实错"还是"无视 context",前者补资料、后者清上下文;effort 和模型都按任务分级使用,默认 medium 足够——把精力省下来投给 harness 和 environment。
CH.7 subagent 与 Claude Code 实操基础 01:33:45 ~ 01:57:12
本章概述: 从原理转向工具。先讲 sub-agents 这个解决"上下文不够用"的核心机制,然后把 Claude Code 日常高频的命令、快捷键、权限模型完整过一遍。
01:35:04 Sub-agents :主 agent(orchestrator)派子 agent 去深探代码库,子 agent 烧自己的 token、只把摘要带回来——讲师比喻为"资深开发差遣初级开发做调研"。子 agent 可并行、可用不同的 system prompt / 模型 / effort。
01:36:48 基础命令:/terminal-setup 配键位(Shift+Enter 换行)、/usage 查用量、/context 可视化上下文构成、/clear 清空开新局;Esc 中断任务,Tab 补全命令。
01:41:49 @ 引用文件有个隐藏优势:文件直接随第一个请求进入 context,不产生 tool call ——适合直接塞 spec 给 agent;Ctrl+S 可暂存输入到一半的 prompt;终端里还能直接粘贴图片。
01:44:23 /ide IDE 集成的核心价值是 diff 管理 :富 diff 视图、Accept proposed changes、保存即接受——"99% 的时间就用这个"。
01:46:21 Rewind (连按两次 Esc):按检查点回滚,三种恢复方式可选——代码+会话、只会话、只代码;/resume 则能恢复任意历史会话。
01:49:14 Bash mode(! 前缀) :让命令输出进入 Claude 的 context(比如 ! npm run typecheck 报错后 Claude 直接诊断)——agent 由此从"被动写手"变成能建 feedback loop 的协作者。Ctrl+B 把常驻命令(如 dev server)放后台;Ctrl+Z 挂起跑私货、fg 恢复。
01:53:07 权限模型 按 risk vs reward 设计:审批弹窗显示确切命令和理由,可单次允许/本项目不再问/拒绝(拒绝时按 Tab 附理由)。长期配置写在 .claude/settings.local.json:permissions.allow 用 Bash(<命令>) 语法加通配符精确放行,deny 禁止危险命令;文件改名 settings.json 即可随仓库共享给团队。
[01:47:09] Rewind 面板:按检查点把代码和/或会话回滚到任意历史点——图中演示撤销对 package.json 的一次改动。
本章小结: sub-agent 用"独立的上下文"换主会话的清净;日常高频操作其实不多——diff 管理、Rewind、bash mode、权限放行这四样用熟,工具层面就毕业了。
CH.8 auto mode 与 context 精简实战 01:57:12 ~ 02:09:11
本章概述: 两个让日常效率质变的实操技巧:用 auto mode 换取"人可以离开"的自由,以及一次完整的 system prompt 精简实战——把默认上下文从 68k 压到 20k 以下。
01:57:12 auto mode (Shift+Tab 在 manual / accept edits / plan / auto 之间循环):由 LLM 分类器自动判断操作是否安全,能挡住 rm -rf 级别的危险;代价是每次审批多耗一点 token。它让"人离开工位、agent 继续干活"成为可能。
01:59:22 Context paranoia 的实践:讲师自己的 settings 比默认配置少 17k tokens。他的精简方法论是——每次只改一项,退出重启,发一句 hello,用 /context 量化对比效果。
02:03:11 实战数字(基线 68.3k):禁掉 claude.ai connectors → 47k;禁 workflows → 39k;禁 bundled skills(deep research、data viz 等)→ 37k;关 artifacts → 33k;再 deny 一批用不到的工具 → 21.6k;最后 deny 定义很长的 AskUserQuestion → 20k 以下 。
02:05:26 关键机制值得记住:deny 一个工具,它就从 system prompt 里被移除 ——所以权限配置同时就是上下文精简,每省下的 token 都在之后每一次请求里持续省钱、省注意力。这套 "system prompt hygiene" 方法论可迁移到任何 harness。
02:07:38 配套技巧:配置 statusLine ,让状态栏实时显示当前 context token 数,把"上下文焦虑"变成一个随时可见的客观指标。
[02:02:50] settings.json 的 permissions 实况:allow 列表精确到 Bash(npx vitest run *) 级别,deny 列表直接裁掉不需要的工具——每裁一个,system prompt 就瘦一圈。
本章小结: auto mode 负责"放心离开",上下文精简负责"轻装上阵"——改一项、量一次、可持续优化;deny 工具是最被低估的瘦身手段。
CH.9 探索、teach skill、基线练习与 grilling 实战 02:09:11 ~ 02:35:00
本章概述: 五步法第一步 grilling 的完整演示。先用一个裸跑实验暴露 agent"急于求成"的天性,再展示 grilling 如何用连环追问把设计共识逼出来——这是全课方法论真正的起点。
02:09:11 先立论:agent 的所有约束中,statelessness(无状态)最难绕 ——模型什么都不记得,每个新 session 都要重新探索,而探索的质量决定之后一切的质量 。
02:12:26 顺带演示了 teach skill :给 agent 一个仓库,它搭建一个 stateful 的教学 workspace(mission.md / notes.md / resources.md + HTML 课程 + quiz),记录落盘、随时 clear 从断点继续——学任何新代码库都能用这招。
02:18:47 基线练习(做课程评价功能):裸跑一个 prompt,agent 探索完立刻动手实现——没有验证、没有对齐,还引入了 critical bug。
02:19:19 讲师把这种毛病命名为 agent 的 sycophantic trait(谄媚特质) :"过早完成、一路冲向终点"。plan mode 也治标不治本——那只是 rush to plan ,plan 读起来像实现本身,仍然没有对齐时刻。引 Brooks《The Design of Design》:design concept 不是一份资产,是在对话中逐渐清晰的共识。
02:23:31 grilling 实战 (lesson comments 功能):/grill-me 驱动 agent 连环拷问,约 40 问只花 ~40k tokens,问 what 也问 why;agent 甚至在后台并行探索代码库。过程中它抓到讲师回答自相矛盾并当面 challenge(讲师回复 "you've convinced me"),还自主发现了 renderMarkdown 没做 sanitization 的 XSS 隐患。
02:31:37 一个关键操作细节:grilling 结束后不要 clear context ——这个 session 是最值钱的一手史料,实现接着做即可。课程实录:实现跑了 14 分 26 秒、155k tokens 收尾,刚好卡在 smart zone 内——到位的 grilling 让实现变得 trivial(平庸无趣),这正是目的。
[02:28:58] /grill-me 的设计拷问:平铺列表还是回复线程?"未回答"如何定义?每个问题都给出选项、推荐和权衡——写代码之前先把硬决策做完。
本章小结: agent 天生急于交差,plan mode 只是把这种冲动换成计划的形式;grilling 通过连环追问逼出设计共识,让实现变得平庸无趣——40 问换 40k tokens,是全套流程里性价比最高的一步。
CH.10 上下文管理:compaction、handoff 与阶段边界决策树 02:35:00 ~ 02:56:32
本章概述: 当 smart zone 用完而工作还没完,怎么办?本章给出完整的答案框架——先认清"交接必有损耗"的本质,再学会在正确的时机(阶段边界)用正确的方式(五选一)做交接。
02:36:53 Compaction 可以理解为"反向的 sub agent":会话历史被 summarize 之后,作为新会话的种子继续。/compact 可以附 summarization instruction(比如"我们要在这个区域做 QA")来引导摘要保留正确的内容;实测把 ~150k 压到了 28.3k。
02:40:11 核心比喻:primary source vs secondary source (一手史料 vs 二手史料)——原始会话是一手史料,compact 出的摘要、handoff 出的文档都是二手史料。一切交接机制都是"丢信息换效率" ,所以时机很重要。
02:42:15 Handoff skill :生成一份 ephemeral(用完即弃)的 handoff.md 存到临时目录,可以喂给另一个 agent(课程演示了交给 Codex 做 code review)、跨目录、甚至发给同事;compaction 则限于同目录、同 agent。
02:45:46 核心框架:会话 = 阶段 + 阶段边界 。阶段边界才是决策点——绝不在阶段中途压缩或清空。
02:52:04 auto-compact 批判 :撞上自动压缩 ≈ 工作流出了问题——时机不可控、阶段中途压缩会让 agent 迷失(忘需求、前后代码风格不一致),还剥夺了你附 summarization instruction 的机会。
阶段边界五选项决策树(按顺序判断)
还能继续吗? 还需要一手史料、且 token 预算够 → 不用做任何交接,直接继续。
CONTINUE
上下文完全可弃吗? 这个 session 里的探索和决策过程都是 disposable 的 → 零成本、最高效的选项。
/CLEAR
需要交接给"别人"吗? 另一个 agent、另一个目录、另一位同事 → 生成一份可移植的 markdown 交接文档。
/HANDOFF
任务可以 AFK 吗? 范围足够清晰、不需要你参与(如自动 review、深度调研)→ 子 agent 用独立 context,不占主会话。
SUB AGENT
其余情况(默认项) :附 summarization instruction 做压缩;拿不准时选 clear——更便宜、更快。
/COMPACT
[02:49:53] 课程原版决策树幻灯片:Is your context irrelevant? → /clear;Do you need to handoff? → /handoff;Can the task be done AFK? → Subagent。
本章小结: 交接的本质是有损压缩,所以只在阶段边界做、绝不在中途做;五选项按 continue → clear → handoff → sub agent → compact 的顺序判断;auto-compact 触发的那一刻,说明你的工作流早就出问题了。
CH.11 Steering:push vs point、skills 与剪枝 02:56:47 ~ 03:29:39
本章概述: 怎么把项目的规矩教给 agent?本章先算清每条指令的真实成本(context load),再给出"默认用指针"的总原则、skills 这套标准化机制,以及 AGENTS.md 的写法与剪枝纪律。
02:58:38 先认识成本——讲师命名为 context load :预载的每条指令每次请求都重新付费(token 成本),更要命的是注意力成本 ——每条新指令都会让其他指令更"安静"。
02:59:04 两种加载方式:push (像 AGENTS.md 那样常驻,每次请求都在)和 point (内容本体放环境里,context 只留一行指针,按需加载)。本课程默认 point 。
03:00:42 push 的病灶是 agent 不知道规则何时适用——课程讲了个笑话:全局挂着"PCI DSS 信用卡合规"指令,问它怎么烤巧克力蛋糕,食谱结尾都在谈信用卡安全。03:05:23 request logger 还证实了 CLAUDE.md 是被包在 system-reminder 里注入、且附了 Anthropic 的免责声明——这解释了为什么里面的指令经常被忽略。
03:08:34 Skill = 打包标准化的 pointer :SKILL.md 的 name/description 常驻当指针,正文按需拉入,还能分层(SKILL.md → REFERENCE.md);开放标准 agentskills.io ,跨 harness 可移植。
03:10:53 skill 分两类:model invoked (description 常驻,模型自决何时调用,增加 context load)和 user invoked (disable-model-invocation: true,零 load 但要你记着手动调用——讲师多数 skill 是这种);存放分 user level (~/.claude,跟个人走)和 project level (check in 仓库,团队共享,是更强的默认)。
03:15:30 对代码库的指引用 navigation pointer :代码库是卫星视图,agent 默认只走 local roads(逐文件慢慢探索),pointer 是高速公路——只修向 agent 自己难发现的地方 ;反面教训:"一条过时的高速比没有高速更糟"。
03:21:21 steering 文件只会长大(加规则有安全感,删规则像否定别人),所以必须定期剪枝 ,三把刀:duplication (重复破坏 single source of truth)、sediment (曾经正确现在过时的堆积)、no-op (删了行为也不变,白付 context load)。03:25:12 反面教材:/init 自动生成的 172 行 CLAUDE.md 是"最差起点"。
03:27:17 最后建议关掉 auto memory——"Auto memory is like auto sediment" ,没人审过的记忆在未来每次请求里都要付费;记忆的创建应该由你掌控。
[03:10:48] Skill 的分层加载:Context Window → SKILL.md → REFERENCE.md,按需逐层拉入——这是 push 的优雅替代。
本章小结: 每条常驻指令都在持续交税,所以默认用指针而非预载;skills 是标准化的指针包;AGENTS.md 只留导航指针并定期剪枝;memory 的创建权留在人手里。
CH.12 Spec & Tickets、并行实现与三层 review 03:29:39 ~ 04:10:48
本章概述: 方法论的收拢章节。前面所有原理在这里组装成一条完整流水线:spec 定目的地、tickets 按 smart zone 切分、implement 离场执行、三层 review 兜底——以及两个现实问题的答案:spec 完成后怎么办、中途改方向怎么办。
03:30:51 大任务的解法是拆成"每块能装进 smart zone"的小块,对应两份文档:spec (destination,可编辑的长期文档)和 tickets (每 smart zone 一张,disposable)。存放地是 GitHub issues 而不是仓库——"This is how I schedule all of my work for my agents."
03:36:25 to-spec skill 把 grilling 后的对话综合成 spec 发到 issue tracker——它假定 grilling 已经发生,不会再拷问你 。
03:37:52 切分门票:smart zone ≈ 150k/张、总预算 450k → 最多 3 张。警惕 agent 顽固的 horizontal slicing (按技术层横切,每片都无法独立验证),人必须亲自审拆分、要求 vertical slicing (按功能竖切)。tickets 之间带 blocking 依赖,每张都有显式 acceptance criteria 作为 agent 的停止点 。
03:41:11 实现:每个 ticket 开新 session 跑 implement skill,auto mode 让人可以离场("没必要坐着看 agent 做饭");TDD red-green loop 保证验证节奏。03:42:42 留意 verification loops 吞 token ——agent 卡壳时会反复试错自救,这正是切分要准的原因。
03:43:00 实现完成自动链式调用 code-review:standards review + spec review 双 sub-agent 并行,各自带独立 smart zone。03:50:51 实战里两个 agent 独立抓到了同一处违规——"实现 agent 偏离 spec 可以很远,review 兜得住"。
03:57:41 spec 落成代码即归档 :spec 是代码的二手来源,必然 drift;agent 读到过期 spec 会信以为真而不读代码——讲师明确反对 spec-driven development:"The code base doesn't lie about itself."
04:01:09 中途改方向配方 :删掉未实现的 tickets → 开新 session 重新 grilling 修改 spec → 重新生成 tickets → 继续。这正是双文档设计(spec 可编辑 / tickets 可弃)的用意。
04:03:12 三层检查 :① automated checks(lint/type/test,确定性、几乎免费)→ ② automated review(定性一稿,不取代人)→ ③ human review(最终 sanity check)。
04:05:21 coding-standards.md 沉淀编码标准:agent 做了蠢事不要吼它,写进文件里,下次 review 自然抓住——reviewer 的 context window 富余得多。文件内置 Fowler《Refactoring》的经典 code smells(feature envy / shotgun surgery / divergent change)。
[03:31:42] Spec(描述多会话工作目标的可编辑交接文档)与 Tickets(一次性的单会话工作单元)的关系图。
[03:47:23] 实现完成、397 个测试全绿后自动启动 code-review:Standards review 与 Spec review 两个子 agent 并行审查,各自带独立的 smart zone。
本章小结: 流水线全貌——grilling 对齐、spec 定向、tickets 竖切(每张一个 smart zone、带停止点)、implement 离场执行、三层 review 兜底;spec 用完即归档,代码库才是唯一不会撒谎的 source of truth。
CORE 核心方法论总结
把 12 章内容压成五张表和四段话——这是全课的"带走清单"。
五步法:每一步做什么、为什么
步骤 做什么 为什么
1. Grilling grill-me skill 驱动 agent 连环提问(what + why),人在对话中做完所有硬决策。 对抗 agent 的 sycophantic trait(rush to implement / rush to plan),建立设计共识;约 40 问仅 ~40k tokens,到位的标志是"实现变得 trivial"。
2. Spec to-spec skill 把对话综合成目的地文档(problem statement / solution / user stories),发布到 issue tracker。 跨多个 session 管理上下文的锚;假定 grilling 已发生,不再拷问。
3. Tickets 每块能装进一个 smart zone(≈150k)一张 ticket,vertical slicing,带 blocking 关系和显式验收标准。 为并行、为塞进 smart zone;验收标准是 agent 的停止点;horizontal slicing 是 agent 的顽疾,人审不可省。
4. Implement implement skill + auto mode,TDD red-green loop,人可离场去别的 branch 干活。 上下文已在窗口之外(spec / tickets / commits),开新 session 很安全;verification loops 吞 token,所以切分要准。
5. Review 完成后自动链式 code-review(standards + spec 双 sub-agent)+ 三层检查。 检查"实现期间无法检查的";reviewer 的 context window 富余得多;重复犯错沉淀进 coding-standards.md。
上下文管理的根源与决策逻辑
一切源于 attention degradation :token 关系数平方增长,smart zone(约 150k 内)质量高,之后是又差又贵的 dumb zone。因此会话要分阶段,只在阶段边界决策、绝不在中途压缩 ;决策树按序:continue → clear(可弃则清,零成本)→ handoff(跨 agent / 目录 / 同事)→ sub agent(可 AFK)→ compact(默认,附摘要指令)。撞上 auto-compact,说明工作流出了问题。
Spec 与 Tickets 的双文档设计
spec 是 destination(可编辑),tickets 完全可弃。中途改方向配方 :删未实现 tickets → 重新 grill 改 spec → 重新生成 tickets → 继续。spec 落成代码即归档——二手来源必然 drift,agent 会信过期 spec 而不读代码;放 issue tracker 而非仓库(归档可检索、团队可评论、跨设备 durable)。这是对 spec-driven development 的明确反对。
Skills 机制与 CLAUDE.md 剪枝
Skill 是打包标准化的 context pointer:SKILL.md 常驻当指针、正文按需拉入、可分层嵌套,开放标准 agentskills.io 跨 harness 可移植。CLAUDE.md / AGENTS.md 是 push 型 steering——常驻、每条规则每次请求都付 context load、agent 不知何时适用;正确姿势是默认 point :详细内容放 docs/ 或 skills,AGENTS.md 只留 pointers,值得编码的只有无法从代码推导的隐性知识("新员工第一天口头交代的东西")。剪枝三把刀 :duplication / sediment / no-op。
小结: 五步法管流程,决策树管上下文,push/point 管规矩,剪枝三刀管卫生——四件套合起来就是这门课的全部心法。
REF 实操命令 / 快捷键 / 配置清单
全课出现过的命令、快捷键和配置项,按用途分组汇总,方便随时查阅。
npm / CLI(练习仓库)
命令 作用
npm install / npm run dev安装依赖 / 起开发服务器(localhost:5175)
npm run db:migrate / db:generate / db:seed建 data.db / Drizzle 生成迁移 / 删表重灌假数据
npm run reset / cherry-pick / pull按课时快照重置 / 叠加保留改动 / 拉上游更新(底层 AI Hero CLI)
npm run request-logger起本地代理 localhost:8787,记录原始 API 请求
ANTHROPIC_BASE_URL=localhost:8787 claude让 Claude Code 的请求经 request-logger 留痕
npx ai-hero-cli fork把练习仓库 fork 为私有 repo(单 fresh commit 替换 history)
Claude Code 斜杠命令
命令 作用
/model · /effort选模型(用套餐默认档)· 调推理档位(medium 即可,几乎别用 max)
/context · /usage可视化 context 构成 · 查 session / 当周用量
/clear上下文可弃时清空(零成本、最高效的选项)
/compact [instruction]压缩会话(附摘要指令;等待时可 queue 消息;Ctrl+O 展开摘要)
/handoff <目的>生成 ephemeral handoff.md,跨 agent / 目录 / 同事交接
/ide · /resumeIDE diff 管理("99% 的时间就用这个")· 恢复历史会话
/terminal-setup · /skills · /config键位设置 · 查看技能 · auto compact 阈值 / 默认权限模式
/init · /memory反面教材 (生成 172 行臃肿 CLAUDE.md)· 建议关掉 auto memory
快捷键(Windows / WSL)
按键 作用
Shift+Tab权限模式循环:manual / accept edits / plan / auto
Esc · Esc Esc中断任务 · 进入 Rewind 检查点回滚
@ · Ctrl+S引用文件(不产生 tool call)· 暂存当前 prompt
! · Ctrl+Bbash mode(输出进 Claude context,建 feedback loop)· 后台化常驻命令
Ctrl+Z + fg挂起 Claude Code 跑私货、恢复且会话保留
Shift+Enter · Tab · Ctrl+C×2换行 · 补全 / 拒绝时附理由 · 退出开新会话
settings.json 要点
.claude/settings.local.json 个人使用(被 gitignore);改名 settings.json 随仓库共享给团队。
permissions.allow 用 Bash(<命令>) 语法加通配符精确放行;permissions.deny 禁止危险命令(如所有 git push)。
deny 一个工具即把它从 system prompt 移除 ——权限配置同时就是上下文精简(实战:68.3k → 20k 以下)。
statusLine 让状态栏实时显示 context token 数;auto compact 默认开启,可在 settings.json 自定义阈值。
skill front matter 写 disable-model-invocation: true 即为 user invoked skill(零 context load)。
小结: 不必全背——先记住 /context、/clear、/compact、/handoff 和 Rewind(Esc Esc),其余用到时再回来查。
QUOTE 金句
十二句最能代表课程立场的原话(附中文翻译与时间戳),每一句背后都有一整节的论证。
"This won't be done by making the model better, it'll be done by making you better by giving you the skills you need to drive agents better." 这不会通过让模型变强来实现,而是让你变强——给你驾驭 agent 所需的技能。 [00:03:13]
"An agent is a model harnessed in an environment." Agent 就是一个被套上 harness、置于 environment 之中的 model。 [00:39:15]
"People go crazy for the model... But I see the model as just one aspect in a larger ecosystem. It's just the engine of the car." 人们为模型疯狂……但模型只是更大生态中的一环,它只是汽车的引擎。 [00:40:11]
"This non-determinism is a feature, not a bug." 非确定性是特性而非缺陷——每次都选最可能的 token 就是 likelihood trap,输出反而更差。 [00:44:11]
"My code base is my memory system." 我的代码库就是我的记忆系统。(引 Mario Zechner) [01:05:46]
"Never trust an unsourced LLM." 永远不要相信没有信息来源的 LLM——让 agent 基于有出处的、上下文内的信息工作。 [01:19:03]
"Vibe coding stops working when you can't tell whether the agent's output is right." 当你无法判断 agent 的产出对不对时,vibe coding 就失效了。 [02:12:41]
"This feeling of premature completion, of it just rushing to get to the end, is a kind of sycophantic trait of agents." 这种"过早完成"、一路冲向终点的冲动,是 agent 的一种谄媚特质。 [02:21:45]
"If you're hitting the auto compact buffer... then something is probably going wrong. Instead, you should be in control." 如果你撞上 auto-compact 被自动压缩,多半是哪里出了问题——掌控权应该在你手里。 [02:56:32]
"A stale highway is actually worse than no highway, because the agent gets confused about it." 一条过时的高速公路比没有高速公路更糟,因为 agent 会被它搞糊涂。 [03:19:15]
"The code base doesn't lie about itself." 代码库不会对自己撒谎。(反对把 spec 当 source of truth) [03:59:31]
"Don't shout at the agent. Instead, put it in coding standards." 别冲 agent 发火——把你不喜欢的行为写进 coding standards,让 reviewer 下次抓住它。 [04:08:12]
NOTE 评价与备注
最后是对课程本身的评价,以及转写与整理过程中需要说明的存疑之处。
可信度高 :讲师是该领域头部创作者,全部论断都有现场实操或原始 API 日志(request-logger)佐证;对自家 Discord 社区、cohorts、Sandcastle 有软性推广,属合理范围。
适合谁 :想用 AI agent 职业化交付代码的开发者;课程节奏慢、原理与实操并重,是系统性课程而非技巧集锦。内容 harness agnostic,非 Claude Code 用户也能迁移。
鲜明立场 :默认 point 而非 push、反对 spec-driven development、关 auto memory、几乎不用 max effort——都是可争议的强观点,但课程内部逻辑自洽、且都给出了论证。
转写存疑处 (whisper small 识别,整体质量良好):① 型号名(Opus 5 / Fable 5 / GPT 5.6 Sol 等)为转写原文,可能与实际型号不符;② [00:05:22] Theo 费用数字前后矛盾;③ 个别 settings 键名为语音直译,真实键名以官方文档为准;④ [01:07:28] 附近有约一分钟逐字重复段(已去重);⑤ context 基线数字 23k 与 68.3k 两处不一致(可能来自不同录制版本)。以上请以实际视频画面或官方文档为准。
小结: 这是一门"方法论密度"远高于"工具操作密度"的课,值得二刷;个别数字与型号名存在转写噪声,引用前建议核对。
本页由 Kimi Code「video-content-analysis」技能生成:yt-dlp 下载 → faster-whisper(small) 全文转写(2876 段)→ 48 关键帧抽样解读 → 8 块并行精读合并成 12 章大纲。
配套材料:AI-Coding-Crash-Course-教学文档.md(脱离视频可自学)· outline.md · downloads/*.analysis.md · downloads/*.transcript.txt
仅供个人学习分析使用,请勿二次分发视频内容。