简体中文 | English
- 智能路由:自动选择 direct / web / agent / deep(四种策略)
- Deep Research:并行检索 + 多轮迭代 + 引用证据(UI 可点击核对)
- 工具生态:沙箱代码执行、浏览器自动化、文件/文档生成、桌面控制(可选)
- 可扩展:支持 MCP(Model Context Protocol)桥接第三方工具
- 契约对齐:OpenAPI → 前端/SDK TS types 自动生成,避免接口漂移
- 流式体验:SSE 事件流 + 工具 activity 面板 + 长代码输出(虚拟滚动/查找/全屏)
完整架构与工作流图:
docs/architecture.md
graph TB UI[Next.js Web UI] -->|SSE| API[FastAPI] API --> Router{Router} Router --> Direct[Direct] Router --> Web[Web Search] Router --> Agent[Agent Tools] Router --> Deep[Deep Research] Agent --> Tools[Tool Registry] Deep --> Tools Tools --> E2B[E2B Sandbox] Tools --> Browser[Browser Automation] Tools --> MCP[MCP Bridge] 更完整的步骤(E2B / Playwright / MCP / Docker Compose)见:
docs/getting-started.md
git clone https://github.com/skygazer42/weaver.git cd weaver # 1) 配置环境变量 cp .env.example .env cp web/.env.local.example web/.env.local # 你至少需要在 .env 里填写: # - OPENAI_API_KEY(或 ANTHROPIC_API_KEY / DeepSeek 兼容配置) # - TAVILY_API_KEY # 2) 安装依赖 make setup pnpm -C web install --frozen-lockfile # 3) 启动服务 .venv/bin/python main.py pnpm -C web dev访问入口:
- 前端界面:http://localhost:3100
- 后端 API:http://localhost:8001(默认;可在根目录
.env里设置PORT) - OpenAPI 文档:http://localhost:8001/docs(默认;同上)
| 文档 | 说明 |
|---|---|
| 快速开始 | 本地运行、依赖安装、常用命令 |
| 系统架构 | 架构图与工作流示意(Mermaid) |
| 配置说明 | .env / web/.env.local / Agent / 触发器 / MCP |
| 使用指南 | 模式选择、Deep Research、代码执行、浏览器自动化 |
| 部署与加固 | Docker/Compose、反代鉴权、限流、SSE 注意事项 |
| 开发指南 | 本地开发脚本、测试、Lint、日志 |
| API 说明 | OpenAPI 合约、常用端点、SSE 调用示例 |
| 流式协议 | SSE/legacy 协议细节与回滚策略 |
| OpenAPI 合约对齐 | 后端 ↔ 前端 types 自动生成(防漂移) |
| MCP 集成 | MCP servers 配置与安全建议 |
| Benchmarks | Deep Research 回归与样例集 |
| 路线图 | 规划与方向 |
- 贡献指南:
CONTRIBUTING.md - 安全说明:
SECURITY.md - 行为准则:
CODE_OF_CONDUCT.md
MIT License,详见 LICENSE。
