第1章

为什么 PM 要用 Claude Code——而非 Claude.ai

1.1 选对工具,每周节省数小时

一位客户报告了你结账流程中的严重 bug。工程团队正在全力冲刺季度路线图。你需要分类判断:真实 bug 还是用户操作失误?影响范围多大?归属哪个团队?你只能等工程团队切换上下文、完成调查、提交报告。两天过去了,这个 bug 仍然停留在分类状态。

或者:你在自己的仓库中打开 Claude Code,问一句"结账验证是如何工作的?请展示一下空支付方式可能绕过校验的位置",10 分钟内就能获得附带纯英文解释的文件引用。你把调查结果连同具体代码位置整理成文。工程团队直接确认并修复,无需额外发现阶段。总耗时:15 分钟。

这两种情形的差异在于工具选择。大多数 PM 因为熟悉而默认用 Claude.ai 处理一切,然后困惑为什么 AI 没有改变自己的工作流。网页界面能很好地处理对话式任务,但在对 PM 最重要的那些工作中却力不从心:深入调查代码库、生成属于仓库的制品、构建可重复的流程。

你有三种访问 Claude 的方式:Claude.ai 网页界面、API,以及 Claude Code。API 是给构建集成的工程师用的。Claude.ai 和 Claude Code 都面向 PM,但二者解决的是不同问题。选错工具代价高昂。

Claude Code 是一个智能体,拥有文件系统访问权限、shell 命令执行能力,并且能跨会话持久化上下文。当你的工作涉及文件、代码仓库或可重复流程时(无论你是否专业写代码),这些能力就格外重要。

选错工具的隐性成本如下:你在 Claude.ai 上花 30 分钟解释代码库上下文,要求它分析存储在 CSV 中的客户反馈,并生成一份综合文档。它给了你一份深思熟虑的回复。你复制粘贴到 Google Doc 中。两周后,你需要对新一轮反馈运行同样的分析。一切从零开始:同样 30 分钟的背景说明,同样的手动导出,同样的复制粘贴。至此你在这项任务上花了一个小时,而 Claude Code 通过一个可复用的 skill 只需 5 分钟。

图 1.1:工作流对比——用于理解选错工具的隐性成本。左侧:手动复制粘贴工作流,每次都重复上下文说明、手动导出和重新格式化。右侧:基于 skill 的自动化,设置只需一次,后续每次运行只需 5 分钟而非 30 分钟。

或者,你需要理解结账流程的工作原理,因为有一个严重 bug 报告送来了。你去问工程团队,但他们正在冲刺规划中。你尝试用 Claude.ai,但你不可能上传整个代码库,缺乏上下文时它的回答只能泛泛而谈。你只能等。工程团队明天才能回复你。这个 bug 又多搁置了一天。如果你用了 Claude Code,10 分钟内你就能得出一个有根因假设的调查结论,并附上相关文件和函数的具体引用。

工具选择问题的核心在于任务持久性和数据访问能力。当工作存在于文件中、需要迭代、或者要做不止一次时,网页界面强加的手动开销会在每次重复中叠加放大。Claude Code 通过直接在你的工作空间中运行,消除了这种开销。

大多数 PM 是通过浪费来发现这一点的。他们用 Claude.ai 好几周,后来才意识到自己一直在把相同的上下文复制到每段对话中,手动重新格式化输出,重做本应自动化的工作。切换成本看似很高:安装、学习命令、理解权限模式。但浪费成本更高,而且是在无声地累积。

决策不在于技术能力的高低,而在于你的工作是否涉及需要反复操作的文件,或者这只是一次性问题。诚实地回答这个问题,工具选择自然就清晰了。

1.2 Claude Code 如何工作:自主行动胜过对话

Claude Code 是一个智能体运行时。这是技术术语。对于产品经理来说,这意味着 Claude 能够行动而不仅仅是回应。当你向 Claude.ai 提问时,它思考并回答。当你向 Claude Code 提问时,它思考、读取文件、运行命令、生成制品、检查自己的工作,然后才回答。区别在于自主性。

这一点非常重要,因为 PM 的工作很大程度上是关于跨分散来源的信息综合。需求在 Jira 中,客户反馈在 Zendesk 导出文件中,实现细节在代码库中,市场研究在书签 URL 和凌乱的笔记中。获得一个连贯的答案需要从所有这些来源提取信息,而手动完成这一切会耗费好几个小时。

Claude Code 在你的项目目录中运行,拥有 Claude.ai 从根本上缺少的五项能力。理解这些能力,你就能判断何时需要智能体而不仅仅是对话。

图 1.2:五大核心能力——用于理解 Claude Code 能做到而 Claude.ai 做不到的事情。文件系统读写访问、shell 命令执行、通过 CLAUDE.md 实现持久化项目上下文、用于并行工作的子智能体派发,以及通过 MCP 集成外部系统。这些能力实现了代码库调查、制品生成和可重复工作流。

文件系统读写访问。Claude Code 可以打开项目中的任何文件,阅读、理解并写入新文件或修改现有文件。这听起来很基础,直到你意识到 Claude.ai 需要你复制粘贴一切。分析反馈时需要引用 PRD?用 Claude.ai 的话,你要粘贴 PRD、粘贴反馈、请求综合分析,然后手动保存输出。用 Claude Code,你只需指向 docs/prd.md 和 data/feedback.csv,它就会直接在仓库中生成 analysis/synthesis.md。无需剪贴板,无需手动格式化,不会出现粘贴错误。

对于 PM 来说,这意味着调查输出会保留在它们应该在的地方:在版本控制中,与它们引用的代码并列,对团队可访问。你的代码库分析变成了一份 markdown 文件,工程团队可以阅读、评论和更新。

Shell 命令执行。Claude Code 可以运行终端命令。对于 PM 来说,这主要意味着 git 操作(查看历史记录、比较分支、查看谁改了什么)以及运行那些你自己不会写但能说清需求的分析脚本。

具体例子:你需要了解某个功能是什么时候引入的、谁参与了开发。你可以请工程团队运行 git log 并解读结果,也可以直接问 Claude Code:"结账流程的二步验证是什么时候添加的,当时的理由是什么?"它运行 git 命令,读取相关提交记录和文件变更,然后告诉你来龙去脉。无需打扰工程团队。

这让终端能力通过自然语言变得可用,无需专业知识。

通过 CLAUDE.md 实现持久化项目上下文。每次打开 Claude.ai,你都是从头开始。每次在项目目录中启动 Claude Code,如果存在 CLAUDE.md 文件,它就会读取这个文件:该文件包含跨所有会话持久化的项目特定上下文。

对于 PM 来说,这个文件可能包含你的产品领域词汇表、映射到代码区域的关键用户旅程、团队约定、外部文档链接,以及常见调查问题的答案。你只需构建一次这样的上下文,后续每次会话开始时就已拥有充分的信息。不再需要每次对话都加一段"这是我们产品做什么"的开场白。

这就是聪明助手和团队成员的区别。团队成员有上下文。拥有维护良好的 CLAUDE.md 的 Claude Code 就有上下文。

子智能体派发。Claude Code 可以启动额外的 Claude 实例来并行处理子任务或以专门聚焦的方式工作。作为 PM,你很少直接调用它,但它支撑着复杂的工作流。

例如:你要求 Claude Code 准备一份竞品分析,将你的产品与三个竞争对手在功能、定价和定位方面进行比较。它不是按顺序依次处理,而是可以派发三个子智能体(每个竞品一个)并行研究,然后将结果汇总为对比矩阵。原本需要你花三个小时在各标签页间切换的工作,10 分钟即可完成。

这里的成本是真实的(你在同时运行多个 Claude 实例),但对于高价值的研究任务,节省的时间往往值得投入。

通过 MCP 集成外部系统。Model Context Protocol 让 Claude Code 能够连接到外部工具:Jira、Slack、Figma、数据库、分析平台。这是最新的能力,也是入门时最不必要的能力,但它消除了扼杀动力的导出-导入循环。

无需将 Jira 工单导出为 CSV、上传到 Claude.ai、再将结果复制粘贴回来,Claude Code 可以直接查询 Jira、就地分析,并将结果更新到工单中。整个工作流保持在同一个环境中。第 10 章会详细讨论这点,但目前你只需要知道这是可行的,而且在掌握基础后非常强大。

这五项能力有一个共同模式:它们消除了思考和行动之间的手动交接。Claude.ai 负责思考,你来完成工作。Claude Code 思考并行动,然后把结果展示给你审批。一次性问题用哪个都可以。可重复的 PM 工作流则受益于自主性。

智能体循环是 Claude Code 的实际运行方式。你给它一个目标。它规划一个方案。它执行一步(读取文件、运行命令、生成制品)。它观察结果。它决定是继续迭代还是停止。然后向你汇报。

图 1.3:智能体循环——用于理解 Claude Code 的运行方式。持续循环:接收目标 → 规划方案 → 执行步骤(读取文件、运行命令、生成制品)→ 观察结果 → 决定继续迭代或停止 → 汇报。正是这个循环让 Claude Code 的会话体验与对话不同——你看到的是智能体在逐步解决问题。

正是这个循环让 Claude Code 的会话体验不同于 Claude.ai 的对话。你看着智能体逐步解决一个问题,能看到每一步,并且对关键操作保持否决权。一开始可能会觉得它过于啰嗦("现在我要读取这个文件"),但这能建立信任。你看到它在做什么,然后它才去执行。

对于习惯了要么每一步都需要手动操作、要么像黑箱一样运行的工具的 PM 来说,这种中间状态需要适应。Claude Code 在展示其工作过程的同时完成工作本身。这是一种你保持监督的协作模式。

Claude Code 是一个拥有工作空间访问权限和持久化能力的智能体。它和 Claude.ai 使用同一个模型,但拥有不同的能力:文件操作、shell 命令和上下文保留。这些能力解决的是特定的 PM 问题,因此下一节将提供一个选择正确工具的决策框架。

1.3 何时使用哪个工具的决策方法

在 Claude.ai 和 Claude Code 之间做选择归结为三个问题:这个任务需要读取或写入文件吗?你会再次做这个任务吗?输出需要存放在版本控制中吗?如果任何一个答案是"是",就用 Claude Code。如果三个答案都是"否",就用 Claude.ai。

大多数 PM 都搞反了。他们因为熟悉而默认使用 Claude.ai,然后在需要引用文件或重复工作流时才发现摩擦。从一开始就选对工具能省去后面的迁移成本。

图 1.4:工具选择决策树——用于为每个任务选择合适的工具。三个问题:需要文件吗?会再做一次吗?输出需要版本控制吗?任一答案为"是"→ Claude Code。全部为"否"→ Claude.ai。不确定时默认以只读模式使用 Claude Code。

以下是十二种常见 PM 场景的参考表。收藏本页。

任务 工具 理由
起草利益相关者邮件 Claude.ai 一次性对话任务,不需要文件
利用代码库调查 bug 报告 Claude Code 需要读取代码、git 历史记录、生成制品
头脑风暴功能创意 Claude.ai 探索性对话,不需要持久性
分析客户反馈 CSV Claude Code 文件输入、结构化输出、可能重复使用
从文档中解释技术概念 Claude.ai 快速回答,无需文件操作
从 git 历史生成发布说明 Claude Code 需要 git 命令、文件输出、每月可重复
基于研究笔记撰写 PRD 章节 Claude.ai 如果笔记在脑子里用 Claude.ai;如果在文件里用 Claude Code
理解功能 X 是如何实现的 Claude Code 需要代码库导航和上下文持久性
竞品功能对比 Claude Code 如果可重复用 Claude Code;一次性用 Claude.ai
综合用户访谈转录文稿 Claude Code 多文件输入、结构化输出制品
审阅并改进 API 文档 Claude Code 需要读取仓库中的文档、建议文件编辑
从零创建用户画像 Claude.ai 初始草稿用对话方式;如果是数据驱动的用 Code

规律:Claude.ai 负责思考,Claude Code 负责执行。需要将输出复制到另一个工具的任务,说明更适合用 Claude Code。

"我会再做一次吗?"这个启发式问题是最快的决策规则。如果你会每周运行这个分析、每月创建这份报告、或者反复调查这类问题,Claude Code 的初始设置成本能立即获得回报。即使第一次运行花费更长时间(学习命令、构建提示词、保存 skill),第二次运行就能快 10 倍。

PM 总是低估重复性。你以为只是在做一份竞品分析,实际上你正在建立一个季度评审流程。你以为只是在写一个用户故事,实际上你正在定义一个将用于后续 50 个故事的模板。如果存在任何重复此任务的可能性,倾向于用 Claude Code,现在就构建可复用工作流。

反过来,如果这确实是一次性的(起草某条特定消息、探索一个模糊概念、获取快速答案),Claude.ai 更快。无需设置,无需学习曲线,问了就走。在目录中启动 Claude Code、授权权限、构建文件输出的开销,只有在你能分摊这些成本时才有意义。

当你真的不确定时,默认以只读模式使用 Claude Code。用 --permission-mode plan 标志启动它,这会阻止任何修改。提出你的问题。如果 Claude Code 的回答涉及"我会读取这些文件并生成这个制品",说明你选对了工具。如果回答纯粹是对话性质的,没有任何文件引用,那你本可以用 Claude.ai。久而久之,这种判断会变得本能。

一个边缘情况:协作工作。如果输出需要由工程团队审阅、存放在仓库中、或融入 CI/CD 流程,那么无论重复性如何,都需要 Claude Code。一份存放在 docs/ 中的调查总结,与它引用的代码并列,比 Slack 消息中的同样内容有价值得多。基于文件的制品能持久存在,链接到具体提交,并与团队工作流集成。对话式输出则会消失。

这个框架帮助你根据任务需求匹配合适的工具能力。两个工具使用同一个模型。区别在于文件访问、命令执行和持久性。大多数 PM 的工作涉及文件、迭代和协作。Claude.ai 优雅地覆盖了 30% 的 PM 用例,而 Claude Code 处理另外 70% 能真正改变你工作方式的用例。

1.4 PM 需要 Claude Code 的三大用例

三类 PM 工作需要 Claude Code 的能力。如果你的任务属于以下任何一类,选择就已经明确。

图 1.5:三大 PM 用例——用于识别何时 Claude Code 必不可少。代码库调查(无需亲自阅读代码即可理解实现)、上下文制品生成(引用并与代码同步的文档),以及可重复工作流(编码了 PM 周期性流程的 skill)。如果你的工作涉及以上任何一项,Claude Code 就成为必不可少的基础设施。

代码库调查。你需要理解某些东西的工作原理,但你不会流畅阅读代码,而工程团队有其他优先事项。这是 Claude Code 对 PM 最经典的用例。

一位客户报告说折扣码在不该叠加的时候叠加了。工程团队正全力冲刺季度目标。你需要分类判断:这是真实 bug 还是用户操作失误?如果是真的,有多严重?大概的影响范围是什么?

在仓库中打开 Claude Code。提问:"折扣码验证是如何工作的?请展示在单个订单中可能叠加应用多个折扣的位置。"几分钟内,你就能获得文件引用、用通俗英文解释的函数功能,以及关于这个 bug 的假设。你把包含具体代码位置的调查报告整理出来。工程团队看到报告,确认问题,无需通常的发现阶段即可修复。PM 总耗时:15 分钟。节省的工程时间:一小时调查加上多轮来回沟通澄清。

这种模式不断重复。"认证是如何工作的?""支付失败时会发生什么?""应用在哪里检查订阅状态?"这些问题需要阅读代码、追踪数据流、理解实现细节。Claude Code 通过自然语言查询提供这些能力。

输出存放在 docs/investigations/ 或相关工单旁。当类似问题再次出现时,未来的你会受益。未来加入的团队成员受益于被记录下来的机构知识。调查结果变成了一个制品,而不是一段丢失的对话。

上下文制品生成。你需要创建一份引用你的代码库、引用外部研究、或者需要与代码变更保持同步的文档。文档的价值来自于它与仓库的集成。

例子:一份引用当前 API 能力并链接到相关文件的 PRD。从 git 历史记录和 Jira 工单生成的发布说明,用你的产品风格撰写。竞品分析,每季度以相同结构更新并存放在 research/competitors/ 中。随实现演进而保持更新的文档。

Claude.ai 可以撰写这些文档,但你需要手动提供上下文、手动保存输出,并在发生变化时手动更新。Claude Code 从你的仓库读取信息,通过 MCP 从外部来源拉取数据,就地生成制品,并且能在你需要下次更新时重新运行工作流。

第一次季度竞品分析作为 skill 设置需要 30 分钟。第二次只需要 5 分钟运行。第三、四、五次各只需 5 分钟。你构建了一个生成一致输出的可重复流程,而且制品存放在版本控制中,团队可以看到它的演进。

可重复工作流。你定期做同类任务:每周反馈综合分析、每月发布规划、每季度路线图更新、按功能的用户故事生成。具体输入每次不同,但流程是稳定的。

这就是 skill 发挥作用的地方。skill 是存储在 .claude/skills/ 中的文档化工作流,Claude Code 按需执行。你定义一次流程:所需输入、执行的步骤、输出格式、质量标准。然后你调用它:"对 data/customer-feedback-nov-2024.csv 运行 feedback-synthesis",Claude Code 执行这个工作流。

没有 skill 时,你每次都要重复相同的指令(解释分类方案、输出格式、综合深度)。有了 skill,工作流被编码。你只需关注输入和审查输出。认知负担从"准确记住上个月我是怎么做的"降低为"运行那个东西"。

第 8 章和第 9 章深入介绍了 skill。目前你只需要知道:如果某件事你做超过两次,你就该考虑构建一个 skill。投入的努力在第三次运行时就回收了。

这三大用例——代码库调查、上下文制品生成和可重复工作流——涵盖了 PM 应用 Claude Code 的大部分高价值场景。如果你的工作中不涉及这些,Claude.ai 可能就足够了。如果你的工作三样都涉及,Claude Code 就成为必不可少的基础设施。

1.5 开始之前,了解得失

Claude Code 解决了真实的问题,但它带来的成本和约束是 Claude.ai 可以避免的。

学习曲线。你需要安装它、理解权限模式、学习基本命令,并培养何时使用哪些能力的直觉。这需要数小时的动手练习。网页界面无需安装,开箱即用。对于那些偶尔需要 AI 协助但很少与代码仓库打交道的 PM 来说,切换成本可能超过收益。

预期第一周会感觉效率低下。你会手忙脚乱地操作命令,忘记在想用只读模式时设置了可写模式,然后怀疑这么做是否值得。到第二周,如果你用在正确的任务上,效率提升就会变得显而易见。到第四周,你会抗拒使用 Claude.ai,因为相比之下它显得太受限了。但最开始那几次会话确实会让人不太适应。

成本可见性和预算管理。Claude.ai 采用订阅定价:固定月费,在速率限制内无限使用。Claude Code 采用 API 定价(按消耗的 token 付费)。对于探索性较强的 PM 工作,token 消耗可能难以预测。读取大型代码库、派发多个子智能体、或运行复杂的综合分析任务,可能会以订阅定价掩盖的方式快速消耗你的月度预算。

第 2 章详细介绍了成本管理。简短版:为典型的 PM 使用量预算 $50-150/月,每次会话后用 /cost 监控,成本攀升时用 /compact 减少上下文。如果你对可变成本感到不安或没有预算审批权,尽管有局限性,Claude.ai 的固定定价可能更适合你。

企业部署。许多组织限制 API 访问,要求对具有文件系统访问权限的工具进行安全审查,或禁止连接到外部服务。Claude Code 需要一个 Anthropic API 密钥并以本地文件权限运行。如果你所在组织的安全策略禁止这样做,你就只能使用他们批准的官方工具(很可能只有网页界面)。

这不是 Claude Code 的限制,而是企业 IT 治理的现实。去争取批准使用是有可能的,尤其是你能先在个人项目上证明其价值,但要做好多周审批流程的准备。

何时 Claude.ai 确实更好。快速问题、头脑风暴讨论、你把内容粘贴进去希望获得对话式反馈的草稿审阅、任何尚未定义输出或不需要文件操作的探索性事务。网页界面打开更快,无需为权限操心,可以在任何设备上使用而无需安装。

如果你发现自己在用 Claude Code 处理更适合网页界面的任务,那说明你在优化错误的事情。两个工具的存在是因为它们服务于不同的需求。为每个任务选择合适的工具,而不是把一切强行塞进你偏好的界面。

1.6 双工具思维模型

两个工具,相同的智能,不同的能力。基于任务需求选择,而非基于哪个界面让人更熟悉。

Claude.ai:对话式助手。你说话,它回应。每次对话从头开始。输出保留在对话历史中,除非你手动复制到别处。适合思考问题、获取快速答案、起草不需要与文件或代码仓库集成的内容。零设置成本、零学习曲线、固定订阅定价。

Claude Code:拥有工作空间访问权限的自主智能体。你设定目标;它读取文件、运行命令、生成制品并报告结果。对话建立在 CLAUDE.md 的持久化项目上下文之上。输出写入你的文件系统,经过版本控制,对团队可访问。适合代码库调查、制品生成和可重复工作流。需要安装和学习,可变 API 成本,更高的认知负担。

决策框架:

  • 这个任务涉及文件吗?→ Claude Code
  • 我会再做一次这个任务吗?→ Claude Code
  • 输出需要存放在代码仓库中吗?→ Claude Code
  • 这是一次性的对话式任务吗?→ Claude.ai
  • 我是在做没有明确输出的头脑风暴吗?→ Claude.ai

大多数 PM 会定期使用两个工具。Claude.ai 用于 30% 的任务,Claude Code 用于 70%。错误在于因为感觉更容易所以对所有事情都用 Claude.ai,然后疑惑为什么 AI 其实并没有改变你的工作流。能带来改变的工作流,是那些制品重要、重复性重要、与你的代码仓库集成重要的工作流。

Claude Code 处理这些。这就是本书存在的原因:向你展示如何识别那些工作流,正确构建它们,并随着时间推移让价值不断叠加。第 2 章涵盖设置和安全性。让我们先让你跑起来。