← 返回拾句全部内容

如何用5个Claude Code技能,将AI变成你的“超级工程师”?

YouTube2026-03-18

摘要

资深工程师分享5个核心Claude Code技能,通过严格流程设计,将AI助手转化为高质量、可预测的代码生产力。

At your fingertips now you have access to a fleet of middling to good engineers that you can deploy at any time. But the weird thing about these engineers is they have no memory.

深度解读

如何用5个Claude Code技能,将AI变成你的“超级工程师”?

一句话总结:资深工程师分享5个核心Claude Code技能,通过严格流程设计,将AI助手转化为高质量、可预测的代码生产力。


📋 内容概览

  • 主题:AI编程、Claude Code、工程流程、代码质量、技能设计
  • 适合人群:软件工程师、技术负责人、AI工具使用者、希望提升AI编程效率的开发者

💡 核心观点

  1. 流程为王:AI工程师没有记忆,需要严格引导 当前的AI编程助手如同一个没有记忆的工程师团队,可以随时调用,但无法记住过去的经验。因此,建立极其严格、定义清晰的流程,是引导它们产出有用成果的关键。

  2. 技能即流程:用简短指令编码复杂工程思维 通过设计精炼的“技能”(Skills),可以将复杂的工程决策流程固化下来,为AI提供一条每次都能遵循的严格路径,从而显著提升其输出的代码质量。

  3. 人机协作:将AI视为有特殊约束的“人类”工程师 提升AI代码质量最有效的方法,就是像对待人类工程师一样对待它们——理解其约束(如无记忆、上下文窗口限制),并通过设计好的流程和反馈循环进行有效管理。


📝 深度摘要

在近十年的工程师生涯中,我从未像现在这样深刻地感受到“流程”的重要性。如今,我们指尖下随时可以调遣一支从“平庸”到“优秀”不等的工程师舰队——即各类AI编程助手。然而,这些“工程师”有一个古怪的特性:它们没有记忆。它们不记得自己做过什么。因此,你需要极其严格且定义清晰的流程,才能让这些智能体真正做出有用的工作。这意味着,作为开发者,你必须不断寻找方法来“驾驭”你的AI助手,确保它们走在正确的轨道上。对我而言,这催生了大量的“技能”构建。以下是我每天都在使用的五个核心Claude Code技能,它们帮助我将工程流程编码化,让AI每次都能沿着一条明确的路径前进,从而使其产出的代码质量大幅提升。

🔥 技能一:“拷问我”——用深度访谈达成共识

这是我的最爱技能之一,它只有三句话:

“就这个计划的每个方面对我进行无情的访谈,直到我们达成共识。沿着设计树的每个分支走下去,逐一解决决策间的依赖关系。最后,如果一个问题可以通过探索代码库来回答,那就去探索代码库。”

这里的“设计树”概念源于Frederick P. Brooks的《设计的设计》一书。其核心思想是,当你接近一个设计时,需要遍历设计树的所有分支。例如,设计一个搜索页面时,你需要决定是采用高级搜索还是简单文本框。如果选择高级搜索,接着就需要确定所有需要的过滤器和排序方法……如此不断深入,直到在真正编码前,尽可能完整地勾勒出设计全貌。

我通常在希望与大型语言模型(LLM)达成“共识理解”时调用这个技能。我发现,最近Claude Code在“计划模式”下倾向于过早地吐出一个计划,在我感觉还没和LLM充分对齐之前就创建文档。“拷问我”技能强制进行了这场对话,迫使LLM就计划的每个部分对我进行提问。

在一个为我的课程视频编辑器代码库添加功能的实际对话中,我给出了一个Markdown格式的研究文档,并说“拷问我。我想考虑把这个加到正确的页面。”它加载了该技能,然后开始了密集提问:文档放在哪?UI布局如何?哪些模式需要文档面板?文档生命周期是怎样的?……一直问到了第16个问题。这在我经历中还算是相对简短的“拷问”会话,我曾有过就一个复杂功能与AI问答近半小时到45分钟的经历,可能涉及30、40甚至50个问题。这一切都源于这个极其简短的技能。技能不必冗长就能产生巨大影响,关键在于在正确的时间为LLM选择正确的词语。

📄 技能二:“撰写PRD”——将共识转化为目标文档

一旦通过“拷问”与LLM达成了共识,并理清了想法的所有分支和影响后,如果我决定要实施它,就会调用下一个技能:“撰写PRD”(产品需求文档)。

这个技能的触发条件是“当用户想要创建PRD时”。它包含几个步骤,但允许跳过不必要的部分。例如,在上一个对话中,LLM识别到“我们已经进行了深度访谈,让我们跳到步骤四”。步骤包括:1) 向用户索要详细描述;2) 探索代码库以验证用户断言;3) 无情地访谈用户(即再次调用“拷问我”技能);4) 勾勒出需要构建或修改的主要模块;5) 使用模板撰写PRD,并作为GitHub Issue提交。

在我的开发流程中,我会在GitHub上接收这些PRD,然后将它们转化为更多引用父PRD的GitHub Issues。之后,我会启动一个“Ralph循环”(一种自主代理),让它逐个处理这些Issue直到完成。PRD中非常重要的一部分是用户故事,它源自敏捷方法论,旨在用非技术语言描述系统的期望行为。PRD还会包含一些实施决策,但不会过于规定性,以保持其持久性——因为如果代码与PRD脱节,后续实施就会出问题。

PRD很好地描述了我们想要到达的“目的地”,但它没有告诉我们具体的“旅程”路径。

🗺️ 技能三:“PRD转Issues”——将目的地拆解为可行旅程

于是,我使用了下一个技能:“PRD转Issues”。这个技能接收一个PRD(目的地),并将其转化为一个看板,上面是不同的、可以独立领取的任务(Issues)。

该技能的第一步是定位PRD。如果PRD不在当前上下文中,则获取它。接着探索代码库(如果需要),然后起草垂直切片。如何将一个PRD分解成独立任务,是开发者长久以来一直在做的事,我们对此形成了一种直觉。我认为最好的方式是将其分解成能快速暴露“未知的未知”的任务。例如,如果你要集成一项新服务,或整合两个从未整合过的东西,就应该先做这部分工作,因为它会反馈你的方法是否有效。这里恰当的类比是“示踪子弹”——每个Issue都应该是一个薄的垂直切片,它贯穿所有集成层,而不是某一层的水平切片。

在实际对话中,它将那个复杂的PRD分解成了仅仅四个切片。第一个是创建一个带有测试的“引擎”,这是一个很好的垂直切片,因为如果这个引擎因任何原因无法工作或不可行,我们就能快速发现。此外,“PRD转Issues”还会建立任务间的阻塞关系。例如,任务二不阻塞任何任务,可以独立于任务一进行。这对于并行代理设置非常有用(比如在后台任务中同时启动两个代理)。这也意味着未来你可以添加其他Issue(如发现的QA问题或需要改进的地方),并建立它们与其他任务的阻塞关系。

创建这些GitHub Issues后,我的“Ralph循环”就会介入,基于Issue实施代码,评论并关闭它,然后下一个被解除阻塞的Issue就可以开始了。

✅ 技能四:“TDD”——用测试驱动开发确保代码坚固性

那么,如何实际执行这些任务,让实现真正坚固,并提升产出代码的质量呢?答案是TDD技能(测试驱动开发)。

当调用这个技能时,它基本上会强制(或鼓励)代理遵循“红-绿-重构”循环。这个技能内容相对丰富,不仅包含流程本身,还涉及重构、模拟、深层模块等理念。TDD是我提升AI输出质量最一致、最有效的方法。

技能中的第一步至关重要:与用户确认需要哪些接口变更。当一个AI观察一个结构糟糕的代码库时,它会看到许多微小、未分化的模块,难以理解它们之间的关系和职责。而如果你将代码重构为几个更大的模块,并辅以精简的接口(即实际导出的、调用者调用的函数),AI就更容易导航和理解代码库,也更容易测试这些模块——你只需要在接口处、在边界进行测试。

TDD技能鼓励AI将接口变更放在首位,让它明白改变接口是一个需要慎重考虑的重要决策。接着,确认要测试哪些行为,为可测试性设计接口,然后进入一个美妙的循环:一次只写一个测试,并且先写测试。AI会编写一个失败的测试(红),然后编写代码使其通过(绿),最后寻找重构机会(重构)。如此循环,直到完成。

我发现AI在“红-绿-重构”循环中表现惊人。不过,重构环节有时不尽如人意,因为LLM往往不太愿意重构自己刚写的代码。如果你清空它的上下文(相当于抹去它的记忆),它对自己代码的“珍视”程度会降低。但只要代码还在它的上下文窗口中,它就倾向于不做改动。因此,这个TDD技能是我用来提示我的“Ralph循环”进行红绿重构的工具。

🏗️ 技能五:“改进代码库架构”——为高质量输出奠定基础

然而,TDD对你的代码库要求很高。在结构糟糕的代码库中进行TDD非常困难,因为测试边界模糊不清。如果代码库结构清晰,模块边界明确,测试就会容易得多。那么,有没有一个技能能让你的代码库变得更像后者呢?有,那就是“改进代码库架构”技能。

这个技能的过程是:首先,像代理一样自然地探索代码库,试图找出“困惑点”——即AI觉得难以理解的地方。它会问一些资深工程师会问的问题:理解一个概念是否需要辗转于许多小文件之间?是否仅仅为了可测试性而提取了纯函数,但真正的bug却隐藏在调用方式中?紧密耦合的模块是否在它们之间的接缝处创造了集成风险?

第二步是呈现候选重构项,即一个编号的“深化机会”列表(将浅层模块深化为深层模块的机会)。用户从中选择一个候选项后,技能会并行生成三个子代理,每个都必须为该深化模块设计一个截然不同的接口。设计多种不同的方案是决定最佳思路的好方法。最酷的一点是,你不需要精通接口设计就能让这个过程运转起来。在比较之后,AI会给出它认为最强的设计推荐及理由,如果不同设计的元素可以很好结合,还会提出混合方案。

这个技能被设计成与语言、框架无关,你可以在任何代码库中运行它并获得如何改进的合理建议。一个代码库中可能同时有四五个需要改进的候选点,但最好一次只处理一个,因为这些重构需要人类参与决策,它们需要“品味”。最后,该技能会创建一个GitHub Issue(重构RFC)。之后,我通常会使用“PRD转Issues”技能,引用这个新创建的Issue,将其分解为可执行的任务。

定期(比如每周一次)或在经历一波密集开发、新增了大量功能后运行这个技能,对于确保新代码符合整体代码库规范、避免过于杂乱非常有用。随着你不断运行这个技能,不断精炼代码库,你会注意到AI代理的输出质量在上升。 因为那句老话依然适用:如果你的代码库是垃圾,那么AI在其中产出的也会是垃圾。


🔍 关键洞察

  1. AI工程化的核心是“流程编码化” 将人类工程师的最佳实践、决策树和协作流程,提炼成精炼、可重复的“技能”指令,是解锁AI编程潜力的关键。这不再是简单的提示工程,而是将复杂的工程思维进行结构化封装,让没有记忆的AI能够可靠地执行。

  2. “垂直切片”与“示踪子弹”是管理复杂性的利器 在将大型PRD分解为任务时,强调创建“垂直切片”(贯穿各层的薄片)而非“水平切片”(单层厚片)。这种“示踪子弹”方法能快速验证技术可行性、暴露集成风险,为后续开发提供早期、可靠的反馈,是应对“未知的未知”的有效策略。

  3. 提升AI代码质量,始于提升自身代码库质量 演讲者揭示了一个深刻循环:良好的代码架构(清晰的模块边界、接口)使得TDD等高质量实践成为可能,而TDD等实践又进一步巩固了代码质量。AI在此循环中既是执行者,也是受益者。投资于代码库的整洁度,是放大AI生产力的杠杆支点。


💬 金句提取

At your fingertips now you have access to a fleet of middling to good engineers that you can deploy at any time. But the weird thing about these engineers is they have no memory.

Skills don't have to be long to be impactful. You've just got to choose the right words for the LLM at the right time.

If you have a garbage codebase, then the AI is going to produce garbage within that codebase.


🏷️ 标签

AI 技术 方法论 案例 深度

更多值得记住的话

Skills don't have to be long to be impactful. You've just got to choose the right words for the LLM at the right time.
If you have a garbage codebase, then the AI is going to produce garbage within that codebase.