做了个简单的 AGENTS.md,目的是在一个目录下放置多个临时性研究项目,管理项目下的进度和文档,不需要在多个目录下切换会话。工作区的源码可以在这里找到:Gist。
做这玩意主要是为了解决这么几个问题:
- 减少重复工作:每个研究项目都会涉及不止一个 Git 仓库,总是需要重复一遍建文件夹、拉取多个仓库、在 Codex 里添加新文件夹的操作。
- 规范目录结构:我想在一个永久目录下完成项目的整个生命周期,把项目相关的所有源码、文档、实验都放到指定的目录下,方便查找。
- 方便同步项目进度:研究项目可能会在多个设备上断续进行,所以还是需要依赖 Git 对工作产出的文件进行同步,但是文件中实际上有一大堆不需要同步的源码和依赖,所以需要一个规范的流程。
这个工作区使用时,目录结构如下。每个 Project 创建之后,都会在 worktree/ 和 docs/ 目录下拥有自己的目录,Sync only Push one Project,需要给定一个 Git 仓库,脚本会将该 Project 的 docs 和 worktree 中的独立内容 Push 到该 Git 仓库的独立分支,然后将该仓库的对应分支提供给另一端的 Agent,就可以在两端同步工作进度了。
当然,同步工作肯定会遇到冲突问题,这里的同步脚本支持 Conflict 就地处理,以及 continue/abort 操作,所以 project_sync.py 脚本比较复杂。
TEXT
PROJECTS.toml 项目元数据
AGENTS.md agent 的入口约定
project 脚本文件,用于同步
.agents/
workflow.md 研究流程与元数据字段
sync.md 同步与恢复说明
scripts/
validate.py 只读校验
project_sync.py 同步实现
worktrees/<name>/
README.md 研究问题、当前进度、证据入口、下一步
repos/<repo>/ 独立 clone 或 Git linked worktree
notes/ 资料摘记与实验日志
experiments/ 试验代码和复现步骤(按需创建)
docs/<name>/ 已核验的阶段总结与结论