OpenViking
volcengine
Self-evolving Context Database for AI Agents. Unify Agent Memory, Knowledge RAG and Skills.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:wenheguo2/dsh-delegation-suite
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
DeepSeek Harness 智能委派套件:按任务角色给子代理分配最强模型、失败自动互备切换、每个子代理可独立设置思考强度、名字里直接看到用的什么模型——全部可视化配置,不用改文件。
| 能力 | 说明 |
|---|---|
| 角色路由 + 失败互备 | delegate_ranked 工具按任务类型从路由表选最强模型;遇到欠费、限流、鉴权失败、传输错误、跑崩,自动换下一个模型继续,并返回完整尝试日志 |
| fork 委派 | fork: true 让子代理继承当前对话上下文(追问分析、基于本线程的 review),同时仍然按角色路由模型——不再绑死会话模型 |
| 模型透明 | 每个委派的子代理名字自动带 [provider/model] 角色 委派 标签,子代理树里一眼看清谁在用哪个模型(见下图) |
| 行内思考强度 | 路由表每行第三列直接配置思考强度(off/low/medium/high/max,留空不指定)——同一个模型在不同角色可以用不同强度 |
| 可视化编辑 | 设置 → 预设工作室:路由表每行 provider/模型/强度三列输入框,↑↓ 调优先级、✕ 删除、+添加、保存即生效(无需重启);还能编辑自定义预设的名称/描述/人格 |
| 委派策略提示 | 内置精简策略段,引导主 agent 在合适时机委派、委派后汇报所用模型 |
| 图片转写(视觉委派) | 纯文本模型收到图片时,自动派 vision 角色子代理把图片完整转写成文字再继续(走路由表 vision 行 + 失败互备);在插件设置里可关、可指定专用转写模型、可调超时 |
| Token 用量统计 | 自动记录每个 provider/模型 的 token 消耗(本周/本月/年度),与路由联动——路由表分配了哪些模型、各烧了多少一目了然;数据存本地 |
| 余额与配额(plan 用量) | 账户余额、各 plan 用量/配额尽力查询:DeepSeek 余额、Kimi Code 计划用量(5小时/周/月/年窗口)、GLM Coding Plan 配额、CodeBuddy 积分(OAuth 登录)、MiMo 本地统计;每 60 秒自动刷新 |
[provider/model] 角色 委派,谁在用什么模型一眼看清。
— 就像每个干活的小工都挂着名牌:谁在干、用的什么机器,扫一眼就知道。委派路由编辑器(设置 → 预设工作室)——每行 = 角色下的模型优先级,第三列是思考强度,保存后即时生效:

子代理树模型透明——每个委派的子代理带 [provider/model] 角色 委派 标签,状态、token 消耗、耗时一目了然:

委派(Delegation)允许主代理将复杂的、可并行的或需要特定专业能力的任务,分派给不同模型和角色的「子代理」执行。子代理根据「角色」和路由配置,自动选择最合适的模型完成工作。
主代理在 delegate_ranked 工具调用中指定一个「角色」,系统按该角色在路由表中定义的模型优先级列表,自动选择最强模型启动子代理;首选模型失败则按列表顺序换下一个。
角色定义:
| 角色 | 适用场景 |
|---|---|
frontend |
前端、UI、CSS、TS 开发 |
backend |
后端逻辑、API、基础设施 |
reasoning |
复杂分析、推理、架构设计 |
review |
独立代码审查(与编码者不同模型) |
adversary |
挑刺、红队测试 |
vision |
图像理解 |
bulk |
批量、机械性文件编辑 |
analysis |
大仓库/文档审查 |
general |
通用默认 |
$DSH_HOME/data/dsh-delegation-suite/routes.json(首次运行自动生成默认表)[provider, model, effort](第三列可选:off/low/medium/high/max,留空不指定);列表顺序 = 模型优先级(从上到下递减){
"frontend": [
["kimi-coding", "k3-256k", "max"],
["zai-coding-cn", "glm-5.3", "max"],
["deepseek-official", "deepseek-v4-flash", "high"]
],
"backend": [
["zai-coding-cn", "glm-5.3", "max"],
["deepseek-official", "deepseek-v4-flash", "high"]
]
}
子代理面板实时显示所有已启动子代理:状态(运行中/已完成)、[provider/model] 角色 委派 标签、token 消耗、耗时、任务摘要。
max;简单机械任务(bulk)用 off 或留空提速review 角色子代理独立审核(自动用不同模型)本套件负责「选对模型、失败换人、看得清楚」;复杂编排(多步流水线、并行 fan-out 汇总)交给 DSH 原生能力即可:
send_message 让它继续下一步,结果在对话里流转。workflow 工具声明式编排(pipeline / parallel 阶段),每个阶段里再用 delegate_ranked 选模型。list_agents 随时看进度;失败时 delegate_ranked 已自动换过模型,无需额外重试逻辑。推荐:预构建 tarball(免 allowBuilds 构建授权):
dsh plugin --profile web add https://github.com/wenheguo2/dsh-delegation-suite/releases/download/v1.0.0/dsh-delegation-suite-1.0.0.tgz
或从 GitHub 源码安装(本包是纯 JavaScript、无构建步骤,源码安装同样开箱即用):
dsh plugin --profile web add github:wenheguo2/dsh-delegation-suite
注意:如果你之前手动在
profiles/web/cordis.patch.yml里添加过delegation-ranker/policy-hint/preset-studio行,请先删除这些行再安装本包(同名工具/服务重复注册会冲突)。
本包是纯 JavaScript(无 TypeScript 构建步骤),lib/*.js 即发布产物,因此 git 安装不需要 prepare 脚本、也不触发 pnpm 的 allowBuilds 授权——装完即可用。运行时依赖(@deepseek-ai/dsh-tools 等)以 peerDependencies 声明,解析到 harness 自身安装,不会产生独立副本。
默认使用 deepseek-official 官方模型(flash / pro),装完在 UI 里改成你自己的 provider 即可。支持任意在「设置 → 模型」里配置过的 provider。
要让纯文本模型能处理图片,需要在路由表的 vision 角色里配置一个支持图像输入的模型(如支持多模态的模型/转接服务)。流程:
vision 角色加一行 [provider, model](强度可不填);插件设置(设置 → 插件 → dsh-delegation):可关闭转写(transcribeEnabled)、指定专用转写模型(transcribeModel,指定后不回退到 vision 表)、调整超时(transcribeTimeoutMs)。
设置 → Token 统计:

$DSH_HOME/data/dsh-delegation-suite/token-stats.json,升级不丢。
Q:委派报 "all models failed"? A:路由表里所有候选都挂了。看返回的尝试日志确认原因(欠费/限流/网络),到设置 → 模型检查对应 provider 的 key 和余额。
Q:思考强度填错会怎样?
A:该模型不支持的档位会让请求报 UNSUPPORTED_REASONING_EFFORT(响亮报错,不会静默)。改回支持的档位即可。
Q:会影响我的主会话吗? A:不会。强度注入只作用于子代理;主会话的思考强度由 /model 选择器控制。
Q:第三方/私有网关(中转站)上强度会生效吗?
A:分三种情况(子代理强度经 DSH 以标准 reasoning_effort / thinking 参数发出):
reasoning_effort 产生 reasoning tokens;Kimi 走 thinking budget(K3 恒思考、budget 微调);ZAI GLM 的 thinking 参数开关灵(enabled 有思考输出 / disabled 无)。developer role:部分网关(如腾讯 CodeBuddy)的审计会拒绝 OpenAI 的 developer role 消息。若你的模型在 DSH 里声明了 reasoningEfforts(成为 reasoning 模型),DSH 默认把 system prompt 发为 developer role,此类网关会报 content_filter。解法见随包附带的转发器脚本 tools/codebuddy-developer-role-forwarder.js:node tools/codebuddy-developer-role-forwarder.js 在本机 8790 端口起一个 developer→system 改写转发器(其余字段原样透传),然后把该网关 provider 的 baseURL 指向 http://127.0.0.1:8790 即可;或改用支持透传的网关(LiteLLM / pi2dsh 路线)。MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: model-routing、subagent。