使用 Claude Code 前,你必须了解的正确配置方式

AAI LABS
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00事实是,AI 永远不会彻底改变软件构建过程,至少不会以你想象的方式。
00:00:05它确实让一切变得更快,也让出错后的恢复变得更容易。
00:00:10但 60 多年来建立的产品构建流程在今天依然同样重要,只是原因不同了,
00:00:16以前实施这些流程是为了确保人类能以结构化的方式开发这些产品。
00:00:21但现在,重点已转向让 AI 智能体能够像人类那样工作。
00:00:25因此,为了让 AI 智能体正常工作,你需要正确设置它们的环境,以便它们能真正遵循流程。
00:00:32我们将详细介绍在开始构建之前需要采取的所有步骤。
00:00:36在编写任何提示词之前,妥善规划你的需求是最重要的事情。
00:00:41无论模型变得多么出色,这部分都是你需要投入时间的地方。
00:00:45现在有多种规划方式。
00:00:46你可以使用 Claude code 的规划模式来规划应用,但其规划非常侧重于技术,而非产品。
00:00:52正如我们在上一段视频中提到的,随着智能体的发展,
00:00:56规划模式不需要那么详细或偏向技术,而应转而侧重于产品方面,
00:01:01因为新模型非常强大,规划必须与早期模型能力不足时有所不同。
00:01:07因此,你可以创建另一个智能体来帮助规划应用,而不是使用 Claude 的规划模式。
00:01:11它包含构建规范 PRD 的指令,并附带一个模板,指导 Claude 确切的需求是什么。
00:01:18设置好智能体后,你可以给 Claude 发送提示词来调用它,并规划你想构建的应用。
00:01:23它实际上会加载规划智能体并不断提问,直到它理解所有的需求。
00:01:28它会不断提问,直到你对规划感到满意为止。
00:01:32现在,为了理解最小可行性产品(MVP),该智能体被设计成会询问许多问题。
00:01:36最后,它会询问你的应用是否还需要其他功能。
00:01:40如果你有,可以添加你希望智能体实现的内容。
00:01:43如果你对所有问题都感到满意,并认为智能体已经理解了计划,你只需告诉它“就这样”。
00:01:49在问答环节结束后,它会创建一个 PRD 文档并将其保存到项目文件夹中。
00:01:54该文档包含你们讨论过的所有需求的详细信息。
00:01:57实施方案被划分为多个阶段,包含了所有关键的设计决策以及应用所需的一切。
00:02:04既然你已经完善了想要构建的应用,下一步就是正确定义 Claude.md 文件。
00:02:10这个文件很重要,因为它包含了你希望智能体遵循的所有指令。
00:02:15你链接了 PRD 文档,这样它就能直接从中获取所有应用需求,而无需在此重复任何内容。
00:02:21此文件应仅包含智能体不知道的内容,而不是提及它已经知道的内容。
00:02:27它引用了你希望项目遵循的规则。
00:02:30你可以添加项目规范以及在实施应用时希望 Claude 特别遵循的所有指令。
00:02:37理想的方法是不通过 init 命令创建 Claude.md 文件,而是自行创建,
00:02:43因为该命令只是根据现有代码库的情况生成文件,而不是它真正需要知道的内容。
00:02:49但这个文件不是一个“一次性编写”后就置之不理的文件。
00:02:53你必须不断向其中添加内容,以便它能在你工作时逐步改进构建应用的过程。
00:02:58正如我们在上一个视频中谈到的,这个文件加载一次后会永远保留在上下文中,作为工作时的指南。
00:03:05因此,要确保此文件不包含真正不需要的内容,或者仅针对特定实施领域的内容。
00:03:12你需要添加到此文件中的内容包括项目将遵循的最佳实践、编码规范、写作风格和约定,
00:03:19以及其他类似内容,但不要包含它自己可以弄清楚的内容,比如项目结构。
00:03:24对于这些,它可以读取文件结构并自行理解。
00:03:28因此,在编写此文件时要花点时间,确保它在实际实施应用之前已经根据你的需求和项目进行了妥善调整。
00:03:36接下来要设置的是技能、智能体以及你想在项目中使用的任何 MCP,这些都要在实际构建之前完成。
00:03:42MCP 更容易连接。
00:03:44你只需连接希望智能体访问的任何外部服务,并通过运行其安装命令来安装它们。
00:03:50例如,我们希望后端构建在 Supabase 上,所以我们在项目中将 Supabase MCP 连接到了智能体。
00:03:57如果你使用 Shadcn UI 作为 UI 组件,并使用 Playwright 进行浏览器测试,
00:04:01你需要在构建应用之前将它们全部连接好,以便智能体在构建时可以访问这些工具。
00:04:07但那些只是为了连接外部服务,你还需要配置智能体。
00:04:12你可以根据需要配置任意数量的智能体。
00:04:14你已经有一个专门的规划智能体用于规划。
00:04:16你还可以创建一个提交智能体,负责提交代码、运行预检并遵循约定式提交消息。
00:04:23你可以拥有一个重构智能体,用于重构代码并全面提升性能。
00:04:28你还可以拥有一个验证智能体,利用 Playwright MCP 的工具来验证 UI 和用户流程是否按预期工作,并包含相关指令。
00:04:39除了智能体,你还需要配置技能。
00:04:42你可以根据需要创建任意数量的技能,并可以使用开源 GitHub 仓库中的技能创建器轻松创建。
00:04:49你可以添加任意数量的参考资料,还可以包含脚本,以便它能直接运行脚本并使用其输出。
00:04:55关于何时使用智能体以及何时使用技能的区别:将所有可重复且需要指导和参考的工作流实现为技能。
00:05:04例如,你可以创建一个前端技能,因为它是一个可重复的工作流,且需要在整个应用中一致地遵循专用指南。
00:05:11而对于需要专用上下文窗口的任务,则应实现为智能体。
00:05:14你也可以使用那个开源的前端技能,Claude Code 的创建者本人也在积极使用它。
00:05:20你还需要为应用的特定方面添加特定路径规则。
00:05:23这些规则定义了它们适用的路径,并包含了实施该特定部分所需的全部指令。
00:05:29你可以随心所欲地配置这些规则,并在 Claude.md 中链接它们,以便智能体知道必须遵循这些指令。
00:05:36正如我们之前提到的,Claude.md 用于广泛的原则,这就是为什么针对特定部分定制特定路径规则,让智能体知道特定实施的具体要求。
00:05:46我们在这个频道涵盖了所有这些设置以及更多关于用 AI 构建产品的内容,如果你想看更多,请订阅并关注未来的视频。
00:05:54但即使有了所有这些正面指令,仍然存在差距。
00:05:58智能体倾向于采取行动,可能会实施超出你正面约束范围的内容。
00:06:03因此,你需要明确告诉智能体它不应该做什么。
00:06:06你可以在 docs 文件夹中创建此文件,并在 Claude.md 中链接它,以便智能体知道这些约束的存在。
00:06:12它应包含针对该项目定制的所有指令,详细说明你不希望智能体创建的每一件事。
00:06:19负面约束很重要,因为正面规范留下了隐含的缺口,而负面约束填补了这些缺口,消除了歧义,防止智能体在不该尝试的地方进行实验。
00:06:29它们为输出不该是什么样子提供了更清晰的目标。
00:06:32例如,如果你不希望 AI 遵循它通常使用的默认紫色或蓝白组合,请明确说明你不想要那个,而不是仅仅含蓄表达。
00:06:41但在继续之前,让我们听听赞助商 Way in Video 的介绍。
00:06:44如果你处理长视频,你一定知道那种痛苦。花几个小时翻找素材只为寻找一个精彩瞬间,然后又要花更多时间剪辑。
00:06:52Way in Video 解决了这一切。这是一个真正理解你视频内容的 AI 视频平台。
00:06:56他们在 OpenClaw 上的 AI 剪辑技能可以处理任何长视频,找到最热门的时刻,自动将其重构为竖版并添加字幕。
00:07:04无需编程,无需设置。只需运行该技能,你的剪辑就准备好发布了。就是这么简单。
00:07:08如果你有特定需求,可以用通俗易懂的英语在任何视频中搜索。只需输入“有趣的反应”或“金句”,它就会直接跳转。
00:07:16它还能处理带说话人标签的视频摘要和转录。非常适合播客、讲座和直播。
00:07:22无论你是要重新利用内容还是自动化工作流程,Way in Video 每周都能为你节省数小时的时间。
00:07:27停止在手动编辑上浪费时间。点击置顶评论中的链接开始体验吧。
00:07:32这是大多数 AI 框架都会以某种形式使用的一种方法,即为不同目的使用多个文档。
00:07:38但所有这些文档的核心是进度和学习文档。
00:07:42进度文件至关重要,因为当你开发具有多个功能的大型应用时,智能体会忘记哪些功能已实现,哪些尚未开发。
00:07:52如果没有这个文件,智能体必须回头读取实施代码并与文档对比,以查明已完成的工作。
00:07:58这会产生开销,既浪费时间又浪费 Token。
00:08:01因此,创建一个进度文件,让智能体只需看一个地方就能确切了解进度。
00:08:07但仅跟踪进度是不够的,因为智能体还需要知道哪里出了问题。
00:08:11因此,你还需要一个学习文件,供智能体记录其错误、原因以及修复方法。
00:08:17这样,当它以后遇到类似情况时,就不会犯同样的错误。
00:08:22由于这两个文件都要在智能体实施应用时主动更新,
00:08:26你需要在 Claude.md 中明确指示智能体不断向这些文件添加内容,在构建过程中完善其知识库。
00:08:34这两个文件是每个设置中最核心的。
00:08:38当你构建自己的编码设置时,可以使用这些方法。
00:08:41我们之前也做过一段视频,讲述如何自行构建框架,你可以在频道上观看。
00:08:46但如果你不想经历设置的麻烦,
00:08:49你可以直接依靠现有的编码框架,因为它们使用了不同的机制来实现这些功能,你可以直接应用。
00:08:56另一个常见的错误是仅在开发结束时才实施测试。
00:09:00这会有问题,因为如果你在功能构建完成后才要求智能体编写和实施测试,
00:09:05测试的效果将不如预先编写的好。
00:09:09编写测试时,应让智能体参考你创建的 PRD,并据此推断功能应如何运作。
00:09:16然后,智能体应根据这些推断出的需求编写测试,
00:09:19实际上是从 PRD 中逆向工程出功能以及应用可能出错的地方。
00:09:24一旦测试准备就绪,你可以在最后运行它们,交叉验证实施是否符合需求。
00:09:29先编写测试的原因是,如果你在事后实施,智能体只知道实际实现了什么。
00:09:35它会针对现有的功能优化测试,而不是针对规范中要求的功能。
00:09:41这可能会导致你漏掉测试那些虽有规范但未正确实现的功能。
00:09:46因为智能体会向已实施的方法优化,它可能会在彻底测试上偷懒,
00:09:50错过那些如果直接根据规范推导测试就能捕获的边缘案例。
00:09:55你不应该给智能体诸如“测试应用程序”之类的开放式指令,因为这样 Claude 只会针对实施进行优化。
00:10:02相反,应在规范指导下实施适当的测试,这样智能体就知道确切该优化什么。
00:10:07另外,如果你喜欢我们的内容,请考虑按下 Hype 按钮,这有助于我们创作更多此类内容并接触到更多人。
00:10:14许多人在应用开发过程中遇到的另一个问题是缺乏前置的问题追踪。
00:10:19如果没有它,问题会堆积如山,没有原因或开始时间的记录,随着应用规模扩大,追踪变得更加困难。
00:10:26因此,在测试期间保持适当的日志至关重要。
00:10:29许多人使用 GitHub 来处理,GitHub 是追踪和管理问题的优秀平台。
00:10:34将其与结构良好的 Git 提交消息相结合,可以为 Claude 提供每次提交所做工作的指导,并允许它追踪进度。
00:10:42Git 最好的功能之一是,如果更改破坏了代码库,你可以回滚提交。
00:10:47如果你想测试实验性的内容,可以使用 worktree 来进行隔离操作。
00:10:51你可以配置你的设置,使智能体在每次实施后使用详细消息进行提交,以保持清晰度。
00:10:58但 GitHub 适用于技术用户,非技术团队成员可能难以提交问题。
00:11:03因此,对于他们来说,将智能体连接到 Trello 或 Notion 等项目管理工具是理想的选择。
00:11:08这允许记录问题、跟踪进度以及协作进行修复。
00:11:12你应该连接对应工具的 MCP,以便智能体可以访问它、追踪问题、在看板上移动任务并高效管理报告。
00:11:20你还需要在 Claude.md 中添加一条指令,指定智能体应使用 Notion MCP 来妥善追踪 Bug 和问题。
00:11:28在开始时设置好这些是非常有价值的,因为随着项目规模扩大和多人协同开发,可以确保一切都能被高效记录和追踪。
00:11:36但即使你的应用在测试中运行完美,AI 生成的代码本质上并非为了同时处理多用户而构建。
00:11:43这就是为什么许多人发现 AI 实施的方案在生产环境表现不佳。
00:11:47因此,你也需要为此做好准备。
00:11:49如果你有一个估算值,你可以告诉智能体预期用户数量,以及将有多个用户同时使用该应用。
00:11:56然后,智能体应根据此信息编写用于压力测试负载的测试案例。
00:12:01你可以使用多种测试工具,并选择最符合你要求的。
00:12:05我们为一个 Next.js 应用使用了 K6,因为它易于实施且符合我们的需求。
00:12:10你也可以在这里使用 Claude 的规划模式来为应用映射出多种方法,因为这里我们需要详细的技术计划。
00:12:17Claude 会根据 PRD 和你预期的近似同时在线用户数进行规划。
00:12:23Claude 会从不同角度提出多个问题,并阐明生产环境中可能出现的问题。
00:12:29即使出现问题,这也有助于应用优雅地降级,并确保用户体验得到优化。
00:12:34使用这种模式,你可以阐明意图,并让智能体也为可扩展性进行规划。
00:12:39这个计划成为了将你的应用从想法变为生产就绪状态的最后一块拼图。
00:12:43本视频以及我们之前所有视频中提到的所有智能体和技能都可以在 AI Labs Pro 中获取,你可以下载并用于自己的项目。
00:12:53如果你觉得我们的工作有价值并想支持这个频道,这是最好的方式。
00:12:57链接在描述中。
00:12:59本期视频到此结束。
00:13:00如果你想支持频道并帮助我们继续制作此类视频,可以使用下方的 Super Thanks 按钮。
00:13:07一如既往,感谢观看,我们下期再见。

Key Takeaway

通过配置 Claude.md 指令文件、区分技能与智能体并坚持先写测试的开发流程,可以将 Claude Code 从单纯的代码助手转变为遵循产品规范的生产级 AI 开发智能体。

Highlights

手动创建 Claude.md 文件比使用 init 命令更有效,因为后者仅基于现有代码库生成内容,而非项目真正需要的指令。

将可重复且需要特定指南的工作流实现为“技能”(Skills),而将需要独立上下文窗口的任务配置为“智能体”(Agents)。

在开发功能前先编写测试案例,使智能体根据 PRD 逆向工程功能需求,避免其仅针对已实现的现有代码进行测试优化。

通过 Notion 或 Trello 的 MCP 连接项目管理工具,使非技术团队成员能够提交问题并由 AI 智能体追踪修复进度。

利用 K6 等工具对 Next.js 应用进行压力测试,并根据预期的同时在线用户数让 Claude 的规划模式生成技术扩展方案。

Timeline

产品规划与 PRD 自动化生成

  • AI 智能体的核心价值在于模拟人类遵循结构化的产品构建流程。
  • 使用专门的规划智能体代替 Claude Code 自带的规划模式,以专注于产品需求而非纯技术细节。
  • 规划智能体通过持续提问明确 MVP 需求,并自动生成包含设计决策和分阶段实施方案的 PRD 文档。

虽然 AI 加速了开发并降低了错误恢复成本,但 60 年来建立的产品流程依然是确保 AI 智能体正常工作的基石。投入时间进行需求规划是最高效的环节,无论模型能力如何提升,清晰的规范都是基础。自动化生成的 PRD 直接保存至项目文件夹,作为后续所有开发的权威索引。

Claude.md 核心指令文件配置

  • Claude.md 文件应通过链接 PRD 来引用应用需求,避免在指令文件中重复冗余内容。
  • 该文件只需包含项目特定的最佳实践、编码规范和写作风格,无需包含 AI 能够自行读取的文件结构信息。
  • 指令文件需要随着项目的进行不断动态更新,以逐步改进 AI 智能体的构建过程。

Claude.md 是智能体在整个工作周期中永久驻留上下文的指南。避免使用 init 命令自动生成,因为手动编写能确保 AI 只获取其不知道的关键指令。保持该文件的简洁性至关重要,过度细化的实施细节应转移到特定路径规则中,以节省上下文空间。

智能体、技能与外部工具集成

  • 通过 MCP 连接 Supabase、Shadcn UI 和 Playwright 等外部服务,使智能体在构建时拥有完整的工具链。
  • 根据职责划分创建提交、重构和验证等多个专用智能体。
  • 针对应用的不同路径设置特定规则,在 Claude.md 中进行链接以提供局部实施的精确指导。

MCP 简化了外部服务的连接过程,只需运行安装命令即可让智能体访问数据库或测试框架。技能适用于前端开发等重复性强且需要统一规范的工作流,而智能体则处理需要深度逻辑推理的任务。这种模块化的配置确保了 AI 在处理不同模块时能调用最匹配的指令集。

负面约束与进度管理

  • 显式的负面约束文件能够填补正面规范留下的隐含缺口,防止 AI 进行不必要的实验或使用默认配色。
  • 进度文件防止智能体在处理大型项目时忘记已实现的功能,降低重复读取代码带来的 Token 开销。
  • 学习文件记录智能体在开发中遇到的错误及修复方法,构建针对当前项目的专属知识库。

由于 AI 倾向于过度采取行动,明确规定“不该做什么”比只说“该做什么”更能消除歧义。进度和学习文件是整个设置中最核心的部分,通过在 Claude.md 中指示 AI 主动更新这些文档,项目得以在开发过程中自我完善。这种多文档协作的方法是目前主流 AI 开发框架的核心逻辑。

逆向工程测试与多用户生产环境准备

  • 先于代码实现编写测试案例,防止智能体根据已有的错误实现来优化测试逻辑。
  • 利用 Git 提交消息和项目管理工具(Notion/Trello)建立技术与非技术成员通用的问题追踪体系。
  • 针对多用户并发场景,使用 K6 进行压力测试,并让 Claude 根据预期用户数规划系统扩展性。

在功能构建后才写测试会导致 AI 在边缘案例上偷懒,通过从 PRD 逆向推导测试案例可以确保实施符合原始规范。对于生产环境,AI 生成的代码通常缺乏并发处理优化,因此必须提供预期的用户负载数据。利用 Claude 的规划模式可以详细映射出应对高并发的技术路径,确保应用具备优雅降级的能力。

Community Posts

View all posts