dsh-subagent-registry

DSH PLUGIN记忆与知识

仓库 fan56/dsh-subagent-registry · npm @aiwayds/dsh-subagent-registry

记忆与知识 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

将 ~/.dsh/agents/*.md 定义的自定义 agent 注册为 DSH plugin 可调用的 subagent,支持中断续跑与后台交互式追问。

验证等级 L5 L5 · 运行验证通过
GitHub 星标 6 复刻 2 · 未关闭 issue 1
最近更新 2026-10-06 创建于 2026-08-16
README 7.2 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add @aiwayds/[email protected]
兼容 DSH 版本0.2.0-rc.2 等 8 个版本版本不匹配时安装会报错
Node.js 要求>=22.19.0来自仓库 package.json 的 engines 字段
前置依赖@deepseek-ai/dsh-agent@>=0.2.0-rc.2、@deepseek-ai/dsh-llm@>=0.2.0-rc.2 等 6 个需要同时安装的同级依赖
npm 包名@aiwayds/dsh-subagent-registry可用 npm view 查看包信息

能做什么

4 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-subagent-registry:DeepSeek Harness 的自定义子代理注册插件

  • 注册本地 agent 为 subagent
  • 支持中断后续跑
  • 后台派发与追问
  • 按名调用 use_agent

适用场景

记忆文件读写智能体编排

上游标签

dshdsh-plugin

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

仓库档案

记忆与知识
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方fan56仓库 dsh-subagent-registry · 默认分支 main
分类记忆与知识memory
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue6 / 2 / 1收录时的数值,非实时
创建 / 更新2026-08-16 · 2026-10-06最后推送 2026-10-06
本站收录2026-08-27首次进入本站目录的时间

README 全文

7.2 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-subagent-registry

English

把 ~/.dsh/agents/*.md 定义的自定义 agent(frontmatter 元数据 + markdown
正文作为 persona/system prompt)注册成 dsh
可按名调用的 subagent:主对话通过 use_agent 点名调用,ask_agent 对后台
代理追问并等回复。跑在 dsh 自带的 spawn provider 上,纯插件、不改 dsh 本体。

特点

  • 一个 markdown 文件就是一个 agent — frontmatter 写模型/思考强度,正文就是
    system prompt,改完即生效。
  • 断点续跑 — 长任务中断(报错/取消/限额/崩溃)后再次调用,自动从已保存的
    中间进度继续,不从头重来。
  • 后台派发 + 双向追问 — background: true 把代理放到后台跑,主对话继续干活;
    ask_agent 发追问并等它的回复。
  • 开箱即用三个人物 — 装好即自动植入 workhorse / oldfox / rubber-duck
    三个预置 agent(见下)。
  • 站在官方 subagent 机制之上 — 不自建执行器:每个自定义 agent 都通过 dsh
    官方的 spawn provider 启动,子代理就是货真价实的 dsh subagent(完整会话、
    持久化、continuable)。官方 subagent 栈的新能力(如双向通信)本插件自动
    继承;官方原生 subagent 工具继续可用,两者并存、互不干扰。
  • 纯插件 — 只依赖 dsh ≥ 0.2.0-rc.2 的公开 subagent 机制,可随时干净卸载。

三个预置 agent

首次启动时植入 ~/.dsh/agents/(仅当目录里还没有可解析的 agent 时;你的修改
永远不会被覆盖)。它们就是普通的 markdown 文件,随便改。

Agent 一句话 典型用法
workhorse(牛马狗) 干活的主力:写代码、调查、测试、部署,脏活累活全包;默认 deepseek-flash,受保护禁止危险操作 「用 workhorse 把发布清单整理成表格」
oldfox(老法师) 顾问不干活:分析、trouble shooting、review 挑刺,只把关不动手;glm-5.3 「让 oldfox 审一下这个方案」
rubber-duck(小黄鸭) 多模态视觉 agent:看截图/图表/手写字,画 plotext/mermaid/matplotlib 图;跑在支持图像的模型上 「用 rubber-duck 看这个截图,提取页面文字」

用法

装好、重启 dsh,然后在对话里直接说——主模型会按名字挑 agent:

> 用 workhorse 把今天的发布清单整理成表格

底层就是 use_agent(agent: "workhorse", prompt: "…")。后台代理用
ask_agent(agent: "worker", message: "…") 追问,会等它的回复。

定义自己的 agent

往 ~/.dsh/agents/ 丢一个文件:

---
name: my-agent
description: "一行简介,显示在 use_agent 名册里"
model: opencode-go/deepseek-flash
thinking: high
---

You are my-agent. 这段 markdown 正文会原样作为 system prompt。

Frontmatter 字段:name(必填)、description、display_name、model
(provider/model,缺省继承)、thinking(off/low/medium/high/max,缺省继承)、
deep(0 = 叶子不许再开子代理,缺省 1)、background(true = 默认后台跑)、maxRounds(正整数,per-agent 轮数上限,覆盖 dsh-tui.maxRounds 全局值;宿主 TUI 的硬停梯消费)。
未知字段静默忽略。

并发与轮数上限(0.1.7 起)

并发数与嵌套深度由官方 dsh-subagent 托管,本插件不自管并发计数与排队
(官方 ActivationManager 统一调度):maxActiveSubagents(同时活跃子代理上限,
默认 8)与 maxDepth(委托嵌套深度上限,默认 1)。两者都是 volatile 字段,
免重启热调——在 profile patch 里写 subagent: { maxActiveSubagents: N, maxDepth: M },
或运行时 settings.update('subagent', …)。use_agent 的 deep frontmatter
只是在这条官方深度预算内再收紧(deep: 0 叶子直接拔掉所有开代理的工具)。

maxRounds(per-agent 轮数上限)本插件继续保留:官方 subagent seam 没有轮数
预算能力,该键仍由宿主 TUI 的硬停梯消费。

→ 完整参考:docs/AGENT-FORMAT.md(英文)——每个字段
的校验与失败行为、deep/thinking 语义、续跑机制、后台派发、配置项、已知边界。

内置技能

插件随包注册一个名为 dsh-subagent-registry-config 的技能(bundled skill)。对话涉及自定义
子代理、agent .md 编写、子代理续跑或本插件配置时,dsh 会自动加载这份使用与配置指南,
主模型可以据此用 ask_user_question 代写 agent 文件、调整插件配置,无需翻 README。
技能与插件同版本发布,随 npm 包携带(skills/dsh-subagent-registry-config/SKILL.md)。

安装

要求 dsh >= 0.2.0-rc.2(RC/稳定线;alpha 线不再支持)。

方式 A — 把本地 checkout 挂进 dsh profile:

dsh plugin --profile tui add ~/github/dsh-subagent-registry

方式 B — npm 依赖:npm i @aiwayds/dsh-subagent-registry,然后在 profile
配置里以稳定 id dsh-subagent-registry 加载,或通过 bundle patch 挂载
(挂法见本仓 cordis.patch.yml)。

卸载

dsh plugin --profile  remove @aiwayds/dsh-subagent-registry

宿主会把插件从 profile 里摘除;重启 dsh 后 use_agent / ask_agent 工具
消失。~/.dsh/agents/ 里的 agent 文件会保留——它们归你所有,不会被
重新植入或覆盖。没有本插件时 dsh-tui-pi 会优雅降级(只是失去自定义 agent
派发能力)。

开发

npm run check    # tsc --noEmit
npm run build    # tsc -> lib/
npm test         # 全部单元测试(无 LLM、无网络)

@deepseek-ai/* 依赖契约(为什么是 optional peer)

本仓对 @deepseek-ai/*(cordis、dsh-subagent、dsh-llm、schemastery 等)
只声明 optional peerDependencies(>=0.2.0-rc.2)。这是有意的两层分工:

  • 发布语义(给消费者):声明表达「使用宿主自带的同名包、版本下限
    >=0.2.0-rc.2」。optional peer 不会被 pnpm / npm 自动安装,因此不会在
    profile 的 node_modules 里生成第二份拷贝去遮蔽(shadow)宿主 bundled 的
    闭包。会出事的是硬 dependency 精确钉旧 rc 版——那会把宿主 0.2.x 弄到无法
    boot(已知社区事故模式)。
  • 开发 typecheck(给本仓):peer 不被安装,scripts/link-dsh-closure.mjs
    (postinstall)把 node_modules/@deepseek-ai/* 软链到全局 dsh 安装的闭包,
    保证类型图里只有一份 @deepseek-ai/cordis——出现第二份会打断 cordis 的
    declare module 类型增强(Property 'settings' does not exist on type 'Context')。

维护守则:这些包永远保持 optional peer 形态——不要移回 dependencies /
devDependencies,也不要去掉 optional: true(非 optional peer 在
auto-install-peers 开启的 pnpm 下会被自动安装,第二副本问题即复发)。

License

MIT

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
dsh-subagent-registry 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add @aiwayds/[email protected]` 即可。对应的 npm 包名是 `@aiwayds/dsh-subagent-registry`。

dsh-subagent-registry 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-subagent-registry 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

dsh-subagent-registry 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.2.0-rc.1、0.1.7-rc.2、0.1.7-rc.1、0.1.6-alpha.2、0.1.6-alpha.1、0.1.5-rc.2、0.1.1-rc.2。

dsh-subagent-registry 需要什么运行环境?

Node.js >=22.19.0;需要同时安装 @deepseek-ai/dsh-agent@>=0.2.0-rc.2、@deepseek-ai/dsh-llm@>=0.2.0-rc.2、@deepseek-ai/dsh-skill@>=0.2.0-rc.2、@deepseek-ai/dsh-subagent@>=0.2.0-rc.2、@deepseek-ai/dsh-tools@>=0.2.0-rc.2。环境不满足时安装会失败,建议先确认本机版本。

dsh-subagent-registry 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-subagent-registry 有哪些功能?

注册本地 agent 为 subagent、支持中断后续跑、后台派发与追问、按名调用 use_agent。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

记忆与知识
按星标排序,可作替代方案

ruflo

ruflo

L3 · 安装规范通过 7.4 万 星

OpenViking

OpenViking

面向 DeepSeek Harness 的 OpenViking 记忆与上下文插件:pre-step 自动召回与画像注入、会话捕获、`vik

L3 · 安装规范通过 3.9 万 星

WeKnora

WeKnora

把 WeKnora 知识库接入 dsh 的四个只读工具:列出知识库、混合检索原文片段、按顺序还原单篇文档,以及直接取用 WeKnora 自己

L4 · 沙盒安装通过 3.3 万 星

distilly

distilly

Distilly — Distill how they think into reusable Skills for any Agent o

L4 · 沙盒安装通过 2.5 万 星

EverOS

EverOS

L4 · 沙盒安装通过 1.3 万 星

MemOS

MemOS

L4 · 沙盒安装通过 1.2 万 星

fan56 的其它插件

6 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-08。