Feagent 采用独特的三 Agent 协作架构,实现智能任务分解与执行:
核心能力: - ReAct 推理循环:Thought → Action → Observation - 上下文容量感知与自动压缩 - 短期记忆蒸馏与结构化摘要(八段结构) - 动态节点审批与自描述验证 - 工作流依赖图与拓扑排序
严格遵循领域驱动设计(DDD-lite)与六边形架构:
Interface Layer(接口层) ← FastAPI 路由、DTO 转换
↓
Application Layer(应用层) ← 用例编排、事务边界
↓
Domain Layer(领域层) ← 实体、聚合根、领域服务
↓
Infrastructure Layer(基础设施) ← ORM、消息队列、缓存
架构优势: - 模块化解耦,易于测试与扩展 - 领域逻辑与技术实现分离 - 支持 TDD 驱动开发
# 1. 克隆仓库
git clone https://github.com/DSGWJQ/Feagent.git
cd Feagent
# 2. 安装依赖
pip install -e ".[dev]"
# 3. 配置环境变量
cp .env.example .env
# 编辑 .env 文件,配置数据库和 OpenAI API Key
# 4. 初始化数据库
alembic upgrade head
# 5. 启动开发服务器
python -m uvicorn src.interfaces.api.main:app --reload --port 8000
Windows 用户注意:请使用
python -m uvicorn ...命令,避免 watchfiles 兼容性问题。
cd web
# 1. 安装依赖
pnpm install
# 2. 启动开发服务器
pnpm dev
Feagent 采用严格的分层架构设计,确保系统的高内聚、低耦合。
详细的四层架构规范请参考架构文档。
核心原则: - Interface 层:仅处理 HTTP 协议,DTO 转换 - Application 层:用例编排,事务边界 - Domain 层:零框架依赖,纯领域逻辑 - Infrastructure 层:技术实现,适配器模式
请务必阅读以下文档: - 开发规范文档
后端: - Python 3.11+ - FastAPI - SQLAlchemy - Alembic - Pydantic v2
前端: - React 18 - TypeScript - Vite - Tailwind CSS - ReactFlow
# 运行所有测试
pytest
# 运行单元测试
pytest tests/unit
# 运行集成测试
pytest tests/integration
# 生成覆盖率报告
pytest --cov=src --cov-report=html
definitions/nodes/ 创建 YAML 定义文件python scripts/validate_node_definitions.py 验证启动后端服务后访问: - Swagger UI: http://localhost:8000/docs - ReDoc: http://localhost:8000/redoc
完整的文档索引请参考 文档目录。
我们欢迎所有形式的贡献!
bash
git checkout -b feature/AmazingFeaturebash
git commit -m 'Add some AmazingFeature'bash
git push origin feature/AmazingFeature在开始任何开发任务前,请先查看: - 开发规范 - 架构设计
本项目采用 MIT 许可证。详见 LICENSE 文件。
如果这个项目对你有帮助,请给我们一个 ⭐️ Star!
$ claude mcp add Feagent \
-- python -m otcore.mcp_server <graph>