理解一个现有项目

目标

在不改动项目的情况下,让 Agent 说明项目用途、主要目录、启动入口、核心数据流和验证方式,并标出仍不确定的部分。

准备

  • 准备一个你有权读取的本地项目目录。
  • 确认至少有一个模型已在“设置 → 配置”中启用。
  • 如果项目含有敏感代码,先确认所配置模型服务的隐私和数据处理政策。Agent 读取到、并用于回答的文件内容可能会随模型请求发送到该服务。

如果希望建立更硬的只读边界,可以先在“设置 → 常规”启用“自定义”权限,并把写入设为“禁止”;否则也可以使用默认权限,并拒绝任何意外的写入审批。

步骤

1. 添加项目

在新对话的项目选择器中选择“新建项目”,或前往“设置 → 环境”点击“添加项目”,然后选择项目根目录。Captain Who 记录的是这个工作区入口,不会因为添加项目就自动修改其中的文件。

2. 创建项目对话

从左侧项目区域新建对话,确认输入框显示的是目标项目。选择一个适合代码理解的模型。

3. 先要求建立地图

发送一条边界明确的任务,例如:

text
请只读分析这个项目,不要修改文件,也不要安装依赖。

请先查看仓库入口、依赖清单、主要源码目录和测试配置,然后回答:
1. 这个项目解决什么问题;
2. 主要模块分别负责什么;
3. 一次典型请求经过哪些模块;
4. 本地启动和验证通常使用什么命令;
5. 哪些结论有文件证据,哪些仍需确认。

引用关键文件的相对路径,不要逐文件罗列。

Agent 会按需列出文件、搜索代码并读取少量关键内容。不要一开始要求“阅读全部文件”;先建立结构,再对重要链路深入,通常更快也更可靠。

4. 对一条链路追问

选择最关心的功能继续追问,例如:

text
沿着“用户提交任务”这条链路继续分析:从界面入口开始,追到后端执行和结果持久化。请给出调用顺序、每层职责和对应文件,并说明你没有验证到的部分。

5. 核对结论

打开 Agent 引用的关键文件,抽查入口、配置和测试。若回答把推测写成事实,要求它重新区分“代码已证明”“测试已覆盖”“根据命名推断”。

预期结果

你应得到一份有层次的项目地图,而不是只有目录复述。它至少应包含:项目目标、模块边界、关键入口、数据流、常用验证命令和待确认事项,并能追溯到具体文件。

失败处理

  • 找不到文件:确认对话绑定了正确项目;项目可能已移动,可在“设置 → 环境”重新添加。
  • 分析范围过大:把任务缩小到一个入口、一条请求链路或一个目录。
  • Agent 试图修改文件:拒绝审批,重申“只读分析”,或改用禁止写入的自定义权限。
  • 命令需要审批:理解项目通常不必运行高影响命令。只在确认命令确实是只读检查后批准。
  • 结论与代码不符:提供反例文件,请 Agent 基于证据修正,不要让它用更多猜测解释。

接下来可以进入实现一个小功能,或先学习如何管理大型项目

源文档核验 · 2026-08-23官网导入 · 2026-08-27