我做了个 DeepSeek Harness 的 插件 DAG 编排引擎,已开源

0 条回复
12 次浏览

DeepSeek Harness ( dsh )刚开源没几天,GitHub 上线一天就冲上几万星,「一切皆插件」刷屏。这几天我在社区里逛了一圈:插件市场、Awesome 列表、桌面壳,全冒出来了。但它们解决的都是同一件事——帮你插件。装完插件之后呢?你还得手写 YAML ,才能把这些 skill 、工具、事件钩子组装成一个真正能用的 Agent 。

我给它补上了缺的这一环:一个插件编排扩展,把「组装 Agent 」从写配置,变成画布上拖拽连线。

仓库链接见文末

为什么要做编排

dsh 里一个 Agent 的能力由 preset 决定——一组按顺序挂载的插件:用什么模型、给哪些工具、挂哪些 skill 、有哪些事件钩子。想自定义一个「必须走 plan mode + 只用 bash + 禁联网」的 Agent ,标准做法是手写 preset 配置。插件一多,这份配置就难维护:谁依赖谁、挂载顺序、service 该包进哪个 realm ,全靠人肉保证。对老手是体力活,对新手是一堵墙。

所以我把它可视化了:从节点库拖出积木,连线表达依赖,填参数,保存。

  • 连线 = 显式依赖:你不连的线,交给 Cordis 依赖注入自动装配;连上的线,按拓扑序写回。有环会直接报错回退。
  • 服务 realm 自动包裹:凡发布 Cordis service 的插件会自动包进隔离 realm——否则挂载时整个 preset 会被拒掉。
  • 重复挂载守卫:同作用域撞了同名插件会提示,避免「会话无法恢复」这类坑。
  • 配置表单由运行时 Schema 驱动:节点面板的字段和 dsh 设置编辑器同源,插件升级字段跟着走,不漂移。
  • 「验证」是真实挂载:点验证会真的让运行中的 dsh 拿这个组合建一个空白会话,用框架自己的判定告诉你合不合法

编排画布

编排完,就是一个自定义 Agent

连好的流程会编译成 dsh 原生的 preset ,可复用、可隔离、可共享。出厂带了标准、极简、PTC 几套模板,复制一份就能改。团队里「必须走 plan mode + 挂代码评审工具 + 禁联网」这类规范,可以固化成一份 preset ,大家拿来就用。

承载它的桌面应用

它以一个 macOS 桌面应用交付,本地优先:API key 存本机、不继承 shell 环境变量、会话数据留本地。算是 dsh 的一个桌面入口。

桌面

接下来

  1. 自进化——从会话历史里挖出反复出现的固定模式,封装成 skill ,再编排成 preset ,团队分享,形成「越用越顺手」的飞轮。这块目前还只是设计规划,代码没写,先说清楚。
  2. 手机端和远程连接

链接

欢迎试用、觉得有点用的,点个 star

发表一个评论

R保持