跳转到主要内容
Source project 是仓库自有的 example、starter 或 case-study project,用来帮助读者通过具体结构练习一个手册概念。它不是代码堆放区。好的 source project 会展示一个 agent-system 概念如何变成小而可检查的实现表面。 当贡献需要文件、文件夹、可运行片段、配置或项目 walkthrough,而不只是文字说明时,使用这个贡献类型。

来源项目应放在哪里

来源项目仅放在 lane 本地的示例文件夹中,路径格式为 <lane>/examples/
Lane内容范围示例项目
patterns可复用 agent-system patterns 的小型实现。memory retrieval starter、planning loop starter
systems基础设施、协议、evaluation 或 runtime 示例。weather MCP server starter、observability trace starter
ecosystem与框架、平台、工具或集成表面相关的示例。LangGraph starter、messaging assistant starter
case-studies支撑具体 case-study 页面的一组应用项目。deep research agent starter、customer support email agent starter
在 v1 中,不要在 foundations/ 下创建 examples/

Issue 和 review 流程

在构建项目之前,先创建 GitHub issue。使用 Source Project Proposal 表单,让 lane、folder name、scope、source lineage 和 review criteria 在开工前可见。 核心团队会先 review issue。他们可能批准 scope、请求修改,或拒绝 proposal。issue 被批准或确认之后,贡献者可以 fork 仓库并开始修改。 核心团队会再单独 review pull request。他们可能批准、请求修改,或拒绝 PR。如果 issue 或 PR 被拒绝,贡献者仍然可以保留自己的 fork,并在仓库外继续使用这些改动。

项目命名

  • 项目 slug 使用全小写的 kebab-case。
  • 按主题和行为命名,而不是按贡献者姓名命名。
示例:
  • agent-memory-retrieval-starter
  • weather-mcp-server-starter
  • langgraph-starter
  • deep-research-agent-starter

必需的文件夹结构

Source Project Template 开始。 每个项目都必须包含:
  • index.mdx
在相关时可选添加:
  • src/
  • assets/
  • 依赖清单
  • notebooks 或配置文件

必需的项目状态

每个项目 README 都必须声明一种状态:
  • starter
  • partial
  • runnable
除非项目已经实质完成并有文档说明,否则使用 starter

工作规则

  • 将项目与 lab 保持关联。每个 starter 都应指向一个相关页面或 lane README。
  • 不要复制上游 README 文本或大段代码块。
  • 只添加与该示例直接相关的运行时文件。
  • 如果项目尚不可运行,请明确说明。
  • 如果项目包含可执行的 starter 代码,请在 scripts/verify_example_projects.py 中添加或更新覆盖。

完成标准

当一个来源项目满足以下条件时,即可进入评审:
  • 位于正确的 lane 本地文件夹中
  • 使用了必需文件
  • 清晰声明了状态
  • 说明了它演示什么
  • 说明了仓库原生范围和后续扩展点