文档

项目背景

代理知晓的关于项目的信息、无法推断的内容,以及你需要告知它们的内容。

代理会读取你的代码库。这能满足它们的大部分需求——但无法覆盖那些存在于人脑、Wiki或两年前对话中的决策。

项目上下文它将代码库指令与你保存在Coroid中的指引相结合。

代码库指令也属于上下文的一部分

Coroid会读取内存文件,比如根目录下的AGENTS.md、CLAUDE.md和GEMINI.md,外加Cursor的规则在.cursor/rules。工作启动前,已启用的数据源会被纳入智能体的项目上下文。仓库本地@导入功能可以引入其他指令文件。重复导入、循环以及完全相同的指令内容仅会被包含一次。你无需将这些指令复制到应用上下文条目中。

在设置 → 知识 → 上下文、代码库源用于控制代理接收的文件,而应用上下文用于存放手动备注以及存储在Coroid中的生成的上下文。除非明确禁用,否则源默认处于启用状态;你可以关闭那些不希望合并的重叠或冲突指令。

代码库指令会随Git中的代码一同传输。应用上下文则适用于存放在代码库之外的指引和参考资料。当约定发生变化时,两者都需要维护。请参阅项目上下文设置以了解支持的路径、文件检测和管控规则。

Coroid能自行处理的内容

仅凭代码库,代理就能识别:

  • 所使用的语言、框架和库
  • 项目的构建、测试和运行方式
  • 现有模式——错误处理方式、模块结构以及命名规则
  • 各组件之间的依赖关系

你无需记录上述内容。重复描述纯属浪费精力,还容易与代码产生偏差,而代码才是更具权威性的来源。

无法推断的内容

代码只能展示_做了什么_,却无法展示_为什么这么做_:

  • 选择某款库而非明显更优的替代方案的原因至今仍适用
  • 看似重复实则刻意设计的模式
  • 未经与特定团队沟通不得触碰的模块
  • 已达成共识但尚未在任何地方强制执行的约定
  • 代码库之外的约束——合规性要求、合同条款、正在进行的迁移任务

这些正是需要纳入项目上下文的内容。判断标准很简单:仅阅读代码库的人能否推导出这些信息?如果能,就无需写入上下文;如果不能,就把它记录下来。

该代码库展示了什么内容

智能体会在每个任务中读取这些内容。无需重复表述。

  • 所用语言、框架及库
  • 构建、测试和运行方式
  • 现有模式和命名规则
  • 各模块间的依赖关系

您补充原因

项目背景包含仅存在于人员脑海中的信息。

  • 选择某库而非其他显而易见替代方案的原因
  • 刻意设计的代码分隔点
  • 未经特定团队许可不得触碰的模块
  • 尚未强制执行的约定
  • 外部约束:合规要求、合同条款、正在进行的迁移工作

测试如下: 仅阅读代码库的人能解出这个问题吗?能的话就忽略它;不能的话就把它写下来。

代码库中已有的内容无需重复填写。仅记录仅靠代码库无法推断的信息。

添加上下文

将文档、政策和参考资料附加到项目的上下文板块下。架构说明、决策记录、风格指南以及API合约都适用。

优质的上下文应当简短且具体。为人撰写的40页入职指南多为叙述性内容;其中能体现真实约束的三段文字才是关键,应将其提取出来。

单任务上下文

附加到项目上的上下文适用于所有场景。若某内容仅与某项工作相关——比如工单、设计文档或客户报告——应将其附加到该任务中。

应保留长期有效的项目上下文。若项目上下文中存在仅针对特定任务的备注,会在后续所有任务中造成干扰。

确保信息准确

已过时的上下文比没有上下文更糟糕,因为智能体将其视为权威依据。一旦规范发生变更,需同步更新对应的上下文。

若你频繁在返工评论中纠正同一内容,说明上下文存在缺失或错误。