你永远不能:
- reset git 和 database 的任何数据和表结构
- 任意删除我文件系统中的文件
- 任何不可逆的删除操作
你可以在操作完成后的总结中告诉我需要清理哪些内容,但不要直接操作
我一般会先使用 plan 模式制定计划,然后开始实施。
plan 过程中,不要更改任何文件,仅作调研并写好 plan 的结果。在 plan 过程中,你需要参考 doc 中的项目文档,如果文档内容和当前情况不符,你应该详细指出。
agent_work/ 是我们的协作界面,任何相关的重要决策应该记录在这里。需要记录:重要决策,待办事项,重要架构说明。对于复杂的决策,流程设计,状态设计,你也应该更新到 agent_work/ 中,供后面工作的参考。每次实现的 Further consideration,未完成的 phase,后续优化事项都应该写到 agent_work/ 中,相当于是一个待办事项,我以后可以在此基础上迭代项目。如有任何问题,请你列入 agent_work 文档,并且在和我的对话中说明该问题出在哪里
文件命名格式:agent_work/YYYYMMDD-brief-description.md。agent work 文档是按照时间来组织的,
对于新的工作,你应该写新的文档,如果和之前的工作有关联,应该加入对之前文档的引用。相反的,如果你认定是一个较为简单的任务,则无需写 agent_work 文档
你可以自主决定写入到 agent_work/ 中的内容,但你应该保持内容的完整性和准确性,确保后续工作的可追溯性和可执行性。
在实施过程后,如更改了 doc/ 中的任何定义,你都应·该随手同步更新。
doc/ 中的文档是用户提供的:我来决定是否新增
非常重要!explore 应该全面。在处理任何任务时,你都应该尽量全面的考虑,而不是仅仅局限在当前代码的实现:
- 详尽考虑代码的调用关系,数据的流向,状态的变化,异常的处理,边界情况的覆盖等。
- 数据的传递和存储,接口的设计和实现
- 你应该完全考虑当前修改的影响面,如果当前修改涉及到多处修改的,你应该全面检查影响的地方,一并修改处理。
在你写完代码之后,不应该自动 git commit,所有的 git 操作应该由我手动操作,除非我明确要求
src/:主代码目录。database/init:数据库初始建表脚本。database/migrate:迁移脚本目录。doc/: 项目文档,包含项目定义,项目设计,技术设计等,应随时保持最新agent_work/: 和用户的工作记录,你可以随时参考这里的内容AGENT.md:在部分代码目录下可能存在该文件,该文件是用于对 AGENT 对当前目录的处理之用。AGENT 在修改当前目录下的功能时应该参考该文件。
当你在运行过程中,如果有遗漏的,当前未实现的内容,记录到 TODOLIST.md 中,在后续的每次工作中,你都需要检查 TODOLIST.md 中是否有未完成事项
TODOLIST.md 中的一个条目代表一个待办事项,需要有以下元数据:编号,时间和状态
应该使用以下形式:
20260728-001, TODO, 还未完成xxxx事项,可参考 xxxxxx.md (该 markdown 放置在 agent_work 文档中)
20260728-002, DOING, ADMIN 的登录 JWT 目前仍然是未验证完成者的状态,参考 xxxxxx.md
20260728-003, DONE, ADMIN 的登录 JWT 目前仍然是未验证完成者的状态,参考 xxxxxx.md
每一条代表一项任务,在对应任务完成之后标记为 DONE 即可
- 目标:明确 agent 在本仓库的主要职责(如:遵循代码风格、避免破坏数据库结构、遵守测试规则)。
- 关键约束:列出必须遵守的限制(如不改数据模型、不要发大量外部请求、避免在 CI 触发破坏性操作)。
- 尽量使用编辑器内置的文件编辑工具,尽量避免使用 rm sed 等批量文件编辑 bash。
- 鼓励使用 grep 等搜索 bash
- 在考虑功能完成之后,如果发现明显的代码逻辑有问题,你应该适当进行重构清理,保持代码的整洁和可维护性。