开发者指南#
参与 EvoFabric#
感谢您对 EvoFabric 项目的关注!我们的社区面向所有人开放,欢迎您通过各种形式反馈建议或是发布您的功能组件。您可以通过下述方法参与:
找到并报告问题或 Bug。
提出需求或新增一个新的特性。
提出需求或新增一个新的组件。
License#
当前项目使用的License是 MIT License.
开发流程#
如果您期望贡献您的组件或功能到 EvoFabric , 我们期望您能遵循下面的开发原则:
在PR中清晰描述您所提供的组件或功能
保证新增的组件继承现有基类,或继承工厂基类
BaseComponent并保证组件可被pydantic序列化和反序列化代码遵循 PEP 8 风格
提供可离线运行的 Unit test 以完整验证您的功能
我们将会组织定期审查所有新增的PR,并及时与您沟通进展。
版本策略#
本项目遵循明确的版本策略,以确保开发过程规范、版本管理清晰,并便于社区使用与贡献。版本体系分为三类:主线版本、发布版本和开发版本。
版本号命名规则#
版本号采用三段式命名规则:
Major.Minor.Patch[-Suffix]
主版本号 (MAJOR):当项目发生不兼容的 API 变更时,主版本号递增。
次版本号 (MINOR):当项目新增功能且向下兼容时,次版本号递增。
修订号 (PATCH):当项目进行向下兼容的问题修复时,修订号递增。
后缀 (Suffix, 可选):用于标记开发版本或预发布版本,例如 -rc1、-rc2、-beta。
版本类型定义#
主线版本 (Mainline Version)
描述:项目的核心开发分支,包含最新功能和改进。
命名:一般无后缀,例如 1.2.0。
特点:
保持与主版本兼容性。
可合并到发布版本分支进行正式发布。
发布版本 (Release Version)
描述:经过充分测试、稳定可用的版本,面向用户发布。
命名:遵循版本号规则,不带开发后缀,例如 1.2.0。
发布周期:双月发布。
特点:
不包含不稳定功能。
用于生产环境和社区发布。
每次发布版本应记录更新日志(CHANGELOG)。
开发版本 (Development Version)
描述:用于日常开发和测试的版本,可能包含不稳定或实验性功能。
命名:在修订号后添加 -dev 后缀,例如 1.3.0-dev。
特点:
频繁更新,供开发者测试和预览。
不推荐直接用于生产环境。
后续版本计划#
我们计划后续会陆续更新以下特性:
EvoFabric 的前端UI,支持显示运行过程中的消息日志(含流式消息)、图结构和节点状态,以及在可视化界面进行调试功能
Agent场景的Memory功能
Magentic-one等Multi-agent模块
Client、工具等资源使用监控