Files
core/skills/assets/template/AGENTS.md
T

2.4 KiB

Dever 应用开发

在本项目运行 dever skill path .,读取返回目录的 SKILL.md 和 references/development.md,使用与项目版本匹配的规则。AI 尚未接入 skill 时,可用 dever skill install <新的AI技能目录>/dever-language 创建稳定入口。这里使用 Dever 语言,不是 Go Dever 框架;命令缺失时按 README 的安装入口处理,不猜语法或用 dever-go 替代。

  • 源码放在 module/<组件>/<领域>/,按职责使用 app、domain、model、api、port、adapter、job;只创建实际需要的角色。
  • 不写 main.dever、package、import 或 expose。API/CMD/Job 是入口;跨领域调用 App。
  • 部署配置只用 config/setting.json,不增加环境变量配置或写死真实地址、凭据。用户、租户和权限来自可信上下文,不用特殊账号 ID 判断权限;正常字面量与明确业务常量可以保留。
  • 修改前先读实际调用链并查找复用点。文件按内聚业务主题组织,函数须有业务含义、不变量、实际复用或隔离复杂流程的作用;不按行数拆分,不机械地一个函数一个文件,不建 utils/common 等通用桶。
  • 普通 CRUD 用 Model 与 REST,增加业务合同或编排才写 App,不叠加空转发层。API 只声明入口,Domain 保存业务规则,外部能力经 Port/Adapter。
  • 不用假调用、吞错、假成功、修改接口基线、弱化测试或转移到第三方语言绕过检查。只清理本次引入或废弃的代码,保留无关修改。
  • 保持当前项目源码格式一致。Markdown 源码只编译顶层 dever 围栏,声明文档必须与源码一致。
  • 修改后执行范围内的 dever fmt . --check、dever check . 和适当验证。check 静态执行与 run/build 相同的应用入口可达性及冗余硬检查,不准备外部依赖或执行应用;报告实际覆盖范围,不能把 check 成功当作全部验收。
  • 普通测试位于 test/<组件>/<领域>/,用文件同名零输入零输出函数,外部能力用 Port fake。dever test . 会运行全部应用测试,已有大项目不默认全量执行;新模板的小套件可完整验证。遵守用户对生产数据、服务、真实数据库和压测的限制。
  • 安装、升级、依赖准备与业务运行分开;run/build 不隐式联网。没有用户要求,不提交或推送 Git。