Flyto Agent 项目宪法¶
所有贡献者(人类和 AI)每次会话必须遵守.
核心原则¶
1. 反向思维¶
任何设计决策确认前,先从反面论证.列出至少 3 个反对理由,反对站得住脚就改方案.
2. 三层防御¶
每个模型交互点:指令层(prompt 告诉模型该怎么做)+ 参数层(API 参数限制能做什么)+ 兜底层(代码处理模型不听话的情况).永远不信任模型 100% 遵守指令.
3. 精妙/操蛋注释¶
非显而易见的设计必须标注:
- // 精妙之处(CLEVER): 说明
- // 历史包袱(LEGACY): 说明
4. 零硬编码¶
- 模型 ID → ModelRegistry.GetRole(role)
- 文件路径 → 配置或运行时计算
- 行业假设 → FLYTO.md 和技能注入,不进核心
5. 测试即文档¶
每个功能必须有测试.测试名就是规格.
6. 模块化¶
包之间通过接口通信.循环依赖为零.
7. 跨场景¶
引擎核心不假设任何特定场景.编程,仓储,数据分析等都是场景模块.
8. 叠加而非替换¶
策略,评分器,恢复器,记忆类型等所有可插拔接口都支持多实现共存叠加. 现实使用永远是交叉的:编程时做调研,仓储时写脚本,分析时连 Figma. 单场景锁定违背真实使用模式.
9. 零外部依赖¶
只用 Go 标准库.供应链安全是本项目的生命线.
编码规范¶
- 中文注释,英文代码
- 文件不超过 500 行(超了就拆)
- 每个 public 函数有文档注释
- error 必须处理,不能 _ 忽略