读见

Claude Code 团队如何用 Claude Code 重塑软件开发流程

原题How the Claude Code team uses Claude Code

约 8 分钟原文英文已翻译

视频由 YouTube 提供

推荐理由Claude Code 团队用自己的开发流程说明,AI 原生研发并不是把每个步骤交给模型,而是把人的注意力移到目标、边界和证据上。工程师先描述期望结果,让 Agent 检索上下文、协调相关方和推进实现;复杂任务通过扇出调查扩大搜索,再用对抗性审查过滤误报,测试、截图、录屏和指标共同构成验收证据。团队也会随着模型能力提升删除过时支架。这个一手 dogfooding 案例特别适合正在增加 Agent 并发的团队,用来重新设计调查、评审和信任扩大的节奏。

看前速览

4 个要点

Claude Code 团队说明,目标导向的智能体、可组合的基础能力、扇出式工作流与验证产物,正如何把软件开发从逐步监督工具调用转向更高层次的编排。

  1. 从监督工具调用转向指挥目标

    团队越来越多地向 Claude Tag 交代复杂的预期结果,并让它访问产品上下文和既有决策;只有在需要精细控制时,才通过 TUI 或桌面应用介入。

  2. 把工作框架视为对模型局限的阶段性回应

    待办清单和交互式提问等功能,在模型需要更多支架时十分重要;随着记忆和长程执行能力增强,团队会删除或重塑这些功能。

  3. 以扇出和对抗性审查让智能体产出可审阅

    工作流让多个智能体同时调查潜在缺陷或研究方向,再用额外审查过滤误报,最终把可由人判断的一组问题交回工程师。

  4. 将验证与反馈纳入开发的基础能力

    测试、截图、录制的交互、指标、Slack 反馈和个人检查共同构成证据循环,使工程师能够逐步提高信任,而不是盲目接受生成的改动。

完整摘要

Claude Code 团队成员介绍了一种以目标为中心的开发方式:工程师不再逐一监督模型的每个动作,而是明确期望结果,再让智能体利用产品上下文与决策自主推进。Slack 中的智能体 Claude Tag 能检索上下文、协调相关方、制作原型、协助实现改动,并在内部上线后持续收集反馈。团队认为,产品的交互与能力边界会随模型进步而变化;待办清单和交互式提问等机制曾为模型提供必要支架,如今也会随着记忆与长程执行能力提升而被调整或移除。面对复杂任务,他们把长时间运行的托管智能体与扇出式流程结合:先广泛排查缺陷或研究路径,再通过对抗性审查过滤误报,并用确定性循环保证每项工作都得到一致处理。人的审查重点随之转向 API 意图、服务边界与关键判断;测试、截图、录屏、指标和个人检查则构成证据闭环,让团队逐步扩大信任,而非盲目接受生成的改动。

文字稿

查看原文

简要说明Brief Description

Claude Code 团队成员讨论了他们如今如何使用 Claude Code 和 Claude Tag 来处理日益复杂的软件工作。他们反思了模型能力的快速变化、工作流和长时间运行的代理所扮演的角色、代码审查与验证方式如何不断演进,以及工程师为何正从监督单个工具调用转向指导更高层次的目标。Members of the Claude Code team discuss how they now use Claude Code and Claude Tag for increasingly complex software work. They reflect on rapidly changing model capabilities, the role of workflows and long-running agents, how code review and verification are evolving, and why engineers are shifting from supervising individual tool calls to directing higher-level goals.

目录Table of Contents

  • 从单个提示到目标导向的工作
    From individual prompts to goal-directed work
  • 以模型变化的速度进行构建
    Building at the speed of changing models
  • 交互式工具、制品和可组合原语
    Interactive tools, artifacts, and composable primitives
  • 长时间运行的代理和循环
    Long-running agents and loops
  • 代码审查、扇出与工作流
    Code review, fan-out, and workflows
  • Claude Tag:作为软件开发的接口
    Claude Tag as an interface for software development
  • 开发循环中的验证与反馈
    Verification and feedback in the development loop
  • 工程师保留的内容与变化之处
    What engineers keep and what changes

从单个提示到目标导向的工作From individual prompts to goal-directed work

发言者 1:团队开场时指出,即使提前规划几个月也非常困难。一位参与者加入 Claude Code 已经将近一年,而如今与早期产品的对比十分明显:人们过去会向 Claude Code 提示、提供反馈,并直接接受权限提示。Speaker 1: The team opens by noting how difficult it is to plan even a few months ahead. It has been almost a year since one participant joined Claude Code, and the contrast with the early product is striking: people used to prompt Claude Code, give feedback, and accept permission prompts directly.

发言者 1:现在,许多工作都是通过 Claude Tag(一款原生集成 Slack 的智能代理)完成的。交给它的问题远比实现一个类或编写一个函数复杂得多。由于它可以查阅产品背景信息和团队决策,因此能够更好地判断该做什么。Speaker 1: Now much of the work happens through Claude Tag, a Slack-native agent. The problems given to it are far more complicated than implementing a class or writing a function. Because it can look up product context and team decisions, it can make better choices about what to do.

发言者 1:另一位参与者表示,他们有 70% 到 80% 的工作是在 Claude Tag 中完成的。他们可能会打开 TUI 或桌面应用来完善某些内容,或者在想要微观管理其 Claude 实例时这样做。团队已经不再关注每一份记录、每次工具调用和模型的每个单独决策,而是转向表达目标并让模型自行实现该目标。Speaker 1: Another participant says that 70 to 80 percent of their work happens in Claude Tag. They may open the TUI or desktop app to refine something, or when they want to micromanage their Claudes. The team has moved away from caring about every transcript, tool call, and individual model decision toward expressing a goal and letting the model pursue it.

说话人 1:构建 Claude Code 以及为 Claude Tag 提供支持的基础功能,改变了软件开发生命周期。团队现在利用这些能力进行验证、代码审查、头脑风暴和监控。Speaker 1: Building Claude Code and the primitives that feed into Claude Tag has changed the software-development lifecycle. The team now uses these capabilities for verification, code review, brainstorming, and monitoring.

以不断变化的模型速度进行构建Building at the speed of changing models

发言者 1:每种产品及其底层技术都有生命周期,但如今这个生命周期已经缩短了。过去,团队可以放心地打造一款产品,相信其技术将在多年内保持稳定。而对于 AI 模型而言,技术可能每两个月就发生根本性变化,随着时间推移,变化速度甚至可能更快。Speaker 1: Every product and its underlying technology has a shelf life, but that lifetime has compressed. In the past, a team could make a product with confidence that the technology would remain stable for years. With AI models, the technology can shift fundamentally every two months, perhaps even faster over time.

发言者 1:挑战在于保持处于前沿,有时甚至超越前沿,同时仍然为使用当前模型的人们创造价值。为发展如此迅速的技术进行构建,是艺术与科学之间的一种平衡。Speaker 1: The challenge is to stay at the frontier, and sometimes beyond it, while still delivering value to people using current models. Building for technology that moves this quickly is a balancing act between art and science.

发言者 1:一个很有用的例子是 Sonnet 3.5 时期的待办事项列表功能。当时,模型无法可靠地完成长周期任务:给它们五项任务,它们可能完成三项后就停下来了。待办事项列表正好是当时所需要的支持,但一年后,由于有了更丰富的记忆状态和其他能力,它就没那么必要了。Speaker 1: A useful example was the to-do list feature around Sonnet 3.5. The models could not reliably do long-horizon work: give them five tasks and they might finish three, then stop. A to-do list was exactly the right support for that moment, but a year later it was less necessary because richer memory states and other capabilities were available.

发言者 1:这一课的要点是,不要对正在构建的事物产生执念。Claude Code 工具框架中的功能往往是在弥补当前模型的失败模式。随着模型不断改进,团队可以移除那些已不再相关的功能,并专注于保持模型在更大规模、更高要求的任务中连贯运行所需的新工具。Speaker 1: The lesson is to remain unattached to the things being built. Features in the Claude Code harness often compensate for present model failure modes. As models improve, the team can remove features that are no longer relevant and focus on the new tools needed to keep models coherent on larger, more demanding tasks.

发言者 1:Claude Code 团队的工作方式有点像软件开发中的超时间室。它必须紧跟模型能力的发展,有时还要迅速做出重大变更,例如在创建新的主动式智能体的同时,重写权限系统并创建配套工件。其他产品的工程师也需要及时了解模型能力的发展方向,而产品应帮助他们持续维护这一心智模型。Speaker 1: The Claude Code team works in a kind of hyperbolic time chamber for software development. It must follow model capability closely and sometimes make major changes quickly, such as creating a new proactive agent while also rewriting the permission system and creating supporting artifacts. Engineers in other products also need a current mental model of where model capabilities are going, and the product should help them maintain it.

交互式工具、工件和可组合原语Interactive tools, artifacts, and composable primitives

发言者 1:ask-user-question 工具体现了这种快速变化。它最初是为了让 Claude 具备交互能力而设计的,起初被放在规划之后。设计者意识到,它也可以成为 Claude 自行调用的工具,但要让模型很好地调用它,仍需付出大量工作。Speaker 1: The ask-user-question tool illustrates this rapid change. It began as a way to make Claude interactive, initially placed after planning. The designer realized it could instead be a tool Claude called itself, but it took substantial work to get the model to call it well.

发言者 1:工具开始可靠运行后不久,模型的能力很快就超越了最初的交互方式。如今,这位发言者通常会改为创建一个工件:HTML 工件可以提出问题,并包含图表和模型图。对模型而言最初颇为困难的一项能力,竟如此迅速地变成了例行操作。Speaker 1: Once the tool began working reliably, model capabilities soon outpaced the original interaction. The speaker now often creates an artifact instead: an HTML artifact can ask questions and include diagrams and mockups. A capability that was initially difficult for the model has become routine surprisingly quickly.

发言者 1:团队就是这样使用 Claude Code 的:它为权限、可视化及相关功能创建基础组件,然后将它们分层组合起来。随着模型行为的变化,合适基础组件的具体细节也会随之改变。Speaker 1: This is how the team approaches Claude Code: it creates primitives for permissions, visualizations, and related capabilities, then layers them together. The details of the right primitive change as model behavior changes.

长时间运行的代理和循环Long-running agents and loops

发言者 1:关于循环的讨论始于一个实际问题。一位参与者过去习惯在笔记本电脑上本地运行所有任务,但一旦离开办公室,就意味着必须关机并停止代理。远程托管的开发环境使工作能够在无需让笔记本电脑持续开机的情况下继续进行,但这要求通过 SSH 访问,并返回到托管界面。Speaker 1: The discussion of loops begins with a practical problem. One participant used to run everything locally on a laptop, but leaving the office meant shutting it down and stopping the agent. Remote hosted developer boxes allowed work to continue without keeping the laptop on, but required SSH access and returning to a hosted surface.

发言者 1:Claude Code on the web 正是出于这一需求而诞生的。托管容器可以继续在后台运行,不过让容器访问开发环境可能很难设置。该发言者认为这很值得,并估计这使其生产力提高了十倍。Speaker 1: Claude Code on the web emerged from that need. Hosted containers can continue running in the background, though giving a container access to a development environment can be difficult to set up. The speaker considers it worthwhile and estimates that it has increased their productivity tenfold.

发言人 1:这一演进过程是从在本地运行的 Claude,到在云端运行的 Claude,再到能够执行例行任务的智能体。例如,它可以检查每日反馈,按重要性对其进行分组,并修复那些它非常确定能够解决的问题。Speaker 1: The progression is from Claude running locally, to Claude running in the cloud, to an agent that can perform routines. For example, it can examine daily feedback, group it by importance, and fix issues it has high confidence it can resolve.

说话者 1:这就是循环式旅程:人不是在单个会话内部向模型发出提示,而是在高于会话边界的层级上进行提示。由此产生的代理可以持续工作、修复错误,或以其他方式执行用户的意图。Speaker 1: This is the loop journey: instead of prompting a model inside one session, a person prompts at a level above the session boundary. The resulting agent can keep working, fixing bugs, or otherwise carrying out the user's intent.

代码审查、扇出与工作流Code review, fan-out, and workflows

发言者 1:生成的代码越多,代码审查和安全就越重要。Claude 可以帮助人工审查者决定重点关注哪些地方。在传统审查中,审查者可能会留下几条小的意见,部分是为了表明自己已经阅读过代码。Claude 可以自主发现并解决其中许多小问题。Speaker 1: More generated code makes code review and security especially important. Claude can help human reviewers decide where to focus. In traditional review, a reviewer might leave a few minor comments partly to signal they had read the code. Claude can find and address many of those small issues autonomously.

发言者 1:重要的人类工作转而关注更大的图景:理解 API 为什么具有特定的结构,或服务边界为什么划定在特定位置。Claude 可以将这些背景带入审查并交由人类处理,让审查者能够在更高的抽象层次上工作,而不是逐行挑剔细节。Speaker 1: The important human work becomes the larger picture: understanding why an API has a particular structure or why service boundaries were drawn in a particular place. Claude can bring that context into review and hand it to a human, allowing the reviewer to work at a higher level of abstraction instead of nitpicking line by line.

演讲者 1:代码审查也是广泛扇出的首个重要应用。Claude 可以搜索许多潜在的错误,然后汇总结果。团队将此称为测试时计算:在推理时为问题投入大量思考和计算资源。Speaker 1: Code review was also the first major use of a broad fan-out. Claude can search for many possible bugs, then coalesce the results. The team calls this test-time compute: applying substantial inference-time thought and compute to a problem.

发言者 1:工作流正是从这种方法中发展而来的。定制的测试框架可以派 Claude 去寻找漏洞,然后运行对抗性审查,从多个角度评估每个可能存在的漏洞。这样可以过滤掉误报,留下真正值得人类关注的问题。Speaker 1: Workflows grew out of this approach. A custom harness can send Claude out to find bugs, then run adversarial reviews that assess each possible bug from several perspectives. That filters false positives and leaves the issues that genuinely deserve human attention.

说话人 1:同样的模式也适用于性能问题或一般性研究。例如,旅行规划工作流可以针对太浩湖的住宿和游玩地点发起多次搜索,然后利用智能体对结果进行整理、筛选和验证,最后生成答案。Speaker 1: The same pattern can apply to performance problems or general research. For example, a trip-planning workflow could issue many searches for Tahoe accommodations and places to visit, then use agents to sort, select, and verify the results before producing an answer.

发散会产生过多信息,个人无法直接消化,因此必须再次过滤压缩。发言者将这种模式比作 MapReduce。通过应用测试时计算获得置信度,同时确保结果仍在人类可处理的范围内。Speaker 1: Fan-out creates too much information for a person to consume directly, so it must be filtered back down. The speaker compares the pattern to MapReduce. Confidence comes from applying test-time compute, while the result remains manageable for a human.

说话人 1:Claude 可以通过决定扇出结构的拓扑、将一个代理的输出连接到下一阶段,并总结结果来构建自己的线束。工作流将确定性代码与智能体式 LLM 行为相结合。对一组项目执行 for 循环能够让人放心地保证每个项目都会应用相同的技术,从而提高对工作流的信任度。Speaker 1: Claude can make its own harnesses by deciding the topology of the fan-out, connecting one agent's output to the next stage, and summarizing the result. Workflows combine deterministic code with agentic LLM behavior. A for loop over a set of items offers a reassuring guarantee that the same technique will be applied to every item, which increases trust in the workflow.

Claude Tag:作为软件开发的接口Claude Tag as an interface for software development

发言者 1:团队正在积极使用 Claude Tag 来构建 Claude Tag 本身。一个重点是确保它拥有易于使用的开发环境和开发迭代流程,使其能够完成构建软件所需的人类任务,并对软件进行端到端测试。随着软件变得更加复杂且集成度更高,这一点也变得更加困难。Speaker 1: The team is using Claude Tag aggressively to build Claude Tag itself. One major focus is ensuring that it has an easy development environment and dev loop, so it can do the human tasks needed to build software and test it end to end. This becomes harder as the software grows more complex and integrated.

发言者 1:Claude Tag 还代表着用户界面与模型记录之间更彻底的解耦。Claude Tag 发出的 Slack 消息会通过消息工具发送;模型的内部独白不会暴露在主界面中,但通过链接可以查看完整记录。Speaker 1: Claude Tag also represents a more complete decoupling of the user interface from model transcripts. A Slack message from Claude Tag is sent through a messaging tool; the model's internal monologue is not exposed in the primary interface, though a link can reveal full transcripts.

发言者 1:起初,看不到 Claude 思考过程中的每个细节让人感到不安。但随着时间推移,这反而让人如释重负:Claude 会自行决定沟通什么以及何时沟通,人类不再需要监控每次工具调用或参数。这种体验迫使人们放手让 Claude 工作,也表明当前的模型无需对详细的过程记录进行监督,同样能够返回良好的结果。Speaker 1: Initially, not seeing every detail of Claude's thinking felt unsettling. Over time it has been freeing: Claude chooses what to communicate and when, and the human no longer has to monitor every tool call or parameter. The experience forces people to let Claude work and demonstrates that current models can return good results without detailed transcript supervision.

发言者 1:一位参与者描述了开发一款需要广泛支持的新工具的过程。他们询问 Claude Tag 应该与哪些人沟通,获得了相关利益相关者的信息,在 Slack 中创建了可通过手机查看的模型,并让 Claude Tag 协助实施。随后,他们添加了事件追踪功能,在内部完成部署,并使用 Claude Tag 监控使用情况和反馈。Speaker 1: One participant describes developing a new tool that needed broad buy-in. They asked Claude Tag who to talk to, got relevant stakeholders, created mockups in Slack that could be viewed on a phone, and had it help with implementation. They then added events, deployed internally, and used Claude Tag to monitor usage and feedback.

发言人 1:当有人提供反馈时,代理可以标记开发者,让他们更及时地响应,也更确信该工具有效。当发言人看到用户在漏斗中流失时,他们不再告诉 Claude 一个具体的解决方案,而是要求它改进漏斗,并从更高层次提出想法。Speaker 1: The agent can tag the developer when somebody provides feedback, making them more responsive and more confident that the tool works. When the speaker saw users falling out of a funnel, they shifted from telling Claude a specific solution to asking it to improve the funnel and propose ideas at a higher level.

开发循环中的验证与反馈Verification and feedback in the development loop

发言者 1:该小组将验证、代码审查和反馈视为相互关联的基本构件。反馈可以来自数据存储或事件存储、指标、Slack、GitHub issues 或其他来源,而这些都是 Claude Code 中有用的构建模块。Speaker 1: The group identifies verification, code review, and feedback as connected primitives. Feedback can come from a data or event store, metrics, Slack, GitHub issues, or other sources, and these are all useful building blocks in Claude Code.

发言者 1:验证对团队来说尤为重要。当 Claude 为 Claude Code 创建拉取请求时,它会测试更改,并发送结果应呈现的样截图。这些产物在人类检查工作之前提供了信心。Speaker 1: Verification is especially important to the team. When Claude creates a pull request for Claude Code, it tests the change and sends screenshots of what the result should look like. Those artifacts provide confidence before a human inspects the work.

发言者 1:一位参与者解释说,他们仍然通过让 Claude 使用 TUI 记录自身,然后进行克隆并亲自尝试所得结果,来完成合理性检查。他们预计,随着时间推移,随着对验证闭环的信心增强,甚至可能不再需要亲自进行克隆。Speaker 1: A participant explains that they still performed a sanity check by asking Claude to record itself using the TUI, then cloning and trying the result personally. They expect that over time they may not even need to clone it themselves, as confidence in the verification loop improves.

工程师保留的内容和发生的变化What engineers keep and what changes

发言者 1:回顾过去一年,团队新增了自动模式、记忆和工作流等基础功能。开发者需要跟踪的内容非常多,但如今作为软件工程师,更难的部分是释放心理空间:了解有哪些可能性、实现更多自动化,并退后一步进行更宏观的思考。Speaker 1: Looking back over the past year, the team added primitives such as auto mode, memory, and workflows. There is a great deal for a developer to keep track of, but the harder part of being a software engineer now is freeing mental space: understanding what is possible, automating more, and stepping back to think bigger.

发言者 1:一位参与者过去曾从性能工程中获得极大的满足感:深入理解系统并提升其性能。Claude 现在更擅长完成其中许多工作,但这位参与者仍然能从这些改进中受益。他们的注意力已转向更快地产生想法,并更迅速地将想法转化为原型,再投入生产。Speaker 1: One participant used to get a great deal of satisfaction from performance engineering: deeply understanding a system and improving its performance. Claude is now better at much of that work, but the person still benefits from the improvements. Their attention has shifted toward generating ideas faster and moving from idea to prototype to production more quickly.

发言者 1:另一位参与者喜欢进行细致的 UI 工作,并回忆起曾花一天时间用 CSS 重现 Mac OS 10.4 Aqua 按钮,仔细地叠加径向渐变。如今,他们会让 Claude 来完成这项工作,而不是亲自手动操作。Speaker 1: Another participant enjoys detailed UI work and recalls spending a day recreating Mac OS 10.4 Aqua buttons in CSS, carefully layering radial gradients. That is now work they would ask Claude to do rather than perform manually.

说话人 1:他们将这种感觉比作七八岁时想制作电子游戏,却还不知道如何编程。当时,PowerPoint 是用来创建可点击元素和形状的工具。如今,Claude 让整个软件工程领域都变得触手可及:人们可以说明自己想要实现的目标,将其分解开来,并与 Claude 合作让它成为现实,而无需先掌握所有技术技能。Speaker 1: They compare the feeling to being seven or eight years old and wanting to make a video game before knowing how to code. At the time, PowerPoint was a tool for creating clickable elements and shapes. Claude now makes the full realm of software engineering feel accessible: a person can state what they want to accomplish, break it down, and work with Claude to make it happen without first possessing every technical skill.

发言人 1:软件工程一直是一种不断变化的职业。在框架、编译器和其他工具改变这项工作之前,人们曾经手写 JavaScript。如今节奏更快了,但核心依然不变:利用现有工具开发出卓越的软件并解决问题。问题可能有所不同,但这项工作仍然是解决问题。Speaker 1: Software engineering has always been a profession of change. People once hand-wrote JavaScript before frameworks, compilers, and other tools changed the work. The pace is faster now, but the core remains the same: using available tools to create remarkable software and solve problems. The problems may differ, but the work is still problem solving.

值得记下

团队已不再关注每一份转录、每一次工具调用和每个单独的模型决策,而是表达一个目标,让模型自行追求它。
Claude Code 工作框架中的功能,往往是在补偿模型当前的失效模式。
重要的人类工作转向更大的图景:理解为什么一个 API 采用特定结构,或为什么服务边界划在某个位置。
工作流把确定性代码与智能体式 LLM 行为结合起来。
如今作为软件工程师更难的部分,是腾出心智空间:理解哪些事成为可能,自动化更多工作,并退一步思考更大的问题。