开源了一个自托管的 Agent 编排项目,不想再用拖拽画工作流了

9 小时 50 分钟前
 gongzhaoman

最近把之前自己用的 Agent 编排项目开源了,地址在这里:

https://github.com/gongzhaoman0426/agent

先说背景。我折腾 Agent 有一段时间了,Dify 、LangGraph 这些都用过。能用,但有几个地方一直不太顺手:

所以这个项目走了一条比较「程序员向」的路:工作流、工具包、技能,全部用 TypeScript 代码定义,启动时自动同步到数据库。改逻辑就是改代码、提 PR ,和普通后端项目一样。

它大概能干什么

不是那种「上传文档就能聊天」的 demo ,更接近一个可自部署的小型 Agent 平台:

技术栈

前后端 monorepo ( pnpm ):

docker compose up -d 能起全套( Postgres + API + Web ),本地开发就 pnpm dev:api / pnpm dev:web

几个我觉得还算有意思的设计

1. 代码即配置

工作流不是在前端创建的,而是在 apps/agent-api/src/workflow/workflows/*.workflow.ts 里继承 BaseWorkflow 写 DSL 。工具包、技能同理,装饰器 + 启动时 discovery ,跟 NestJS 模块注册的感觉差不多。

2. Agent 无状态

每次对话请求重新拉配置、实例化工具、创建 LlamaIndex agent 。不跨请求复用实例,部署和调试简单一些,代价是冷启动开销,目前还能接受。

3. 定时任务

Agent 可以通过工具创建 cron 任务,到点自动发消息给自己处理。比如「每天早上 9 点帮我整理待办」这种,不用另外挂个调度系统。

现状和局限(说 honest 的)

适合谁看

不适合:想要零代码拖拽、开箱即用的企业级平台——这个方向不一样。

想参与的话

Issue 、PR 、Star 都欢迎。如果你也在做 Agent 编排,尤其是「代码优先 vs 可视化优先」这块,挺想听听你的做法和踩过的坑。

仓库:https://github.com/gongzhaoman0426/agent

240 次点击
所在节点    开源软件
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1221780

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX