本系统通过 API Gateway + Workers 微服务架构,实现从企业微信群消息到代码生成的全链路自动化。网关作为唯一公网入口,负责消息分发和路由,各业务模块通过 REST API 通信,可独立部署和扩展。
1. 智能任务解析与路由
LLM混合调度:根据任务复杂度自动选择本地Ollama(简单/中等任务)或云端Claude/GPT(复杂任务)。
去重与过滤:网关层对重复消息自动去重,避免同一任务多次触发。
2. 人机协同决策
确认机制:分析后的任务需用户通过飞书卡片确认或修改,支持超时自动取消或推迟(later状态)。
安全拦截:执行前可配置危险操作(如删除文件、高危命令)的拦截规则。
3. 多端集成与闭环记录
企业微信捕获:通过ntwork或UIAutomation监听群消息。
飞书多维表格:自动记录任务ID、标题、描述、代码仓库链接、完成状态等,形成可追溯的工作台账。
4. 灵活的部署与执行模式
双模式运行:单进程模式(开发/测试)与分布式模式(生产可扩展)。
干跑模式:支持--dry-run,在不实际执行代码的情况下验证全流程。
5. 可观测性与调试
提供/health、/queue/status、/tasks/{task_id}等接口,实时查看任务状态与队列积压。
支持--log-level DEBUG,便于排查问题。
1. 技术栈
后端框架 FastAPI + Uvicorn 高性能异步API网关与Worker服务
LLM集成 OpenAI SDK、Anthropic SDK、Ollama 统一调用云端/本地模型
企业IM集成 lark-oapi(飞书SDK)、ntwork(企微HOOK) 接收回调、推送卡片、操作多维表格
2. 架构描述(结合代码结构细化)
系统采用分层解耦、事件驱动的微服务架构,核心模块如下:
关键组件职责:
gateway/:唯一公网入口,负责消息校验、去重、任务状态机管理(TaskManager)、队列调度(QueueManager)和路由分发(MessageRouter)。不执行任何业务逻辑。
workers/:
filter_analysis:消息过滤(是否@机器人、是否含指令触发词)+ LLM分析生成任务标题、功能点、技术栈。
decision:生成飞书交互卡片,等待用户确认/修改/拒绝/推迟。
execution:调用OpenCode API生成代码并执行(容器化或本地沙箱),收集输出与产物。
recording:将最终结果写入飞书多维表格,并发送通知。
listener_push/:主动从企业微信拉取消息或通过WebSocket接收,解决回调无法直连
3.项目亮点:
极低的接入门槛:用户无需学习新系统,在群内自然语言交互即可完成复杂任务。
成本与效果的平衡:本地Ollama处理简单任务(免费且隐私安全),复杂任务仅按需调用云端高精度模型。
架构清晰可扩展:网关与Worker彻底解耦,新增一个业务类型(如“发送短信”)只需增加一个新Worker并注册到网关,不影响现有模块。
完整的人机协同闭环:关键操作需用户确认,避免自动化“黑盒”风险。
开箱即用的集成:内置企业微信、飞书、OpenCode、常见LLM的适配,减少企业自研的重复工作。