DeepSHPlugins
dsh-subagent-registry 專案預覽
GITHUB / COMMUNITY PROJECT

dsh-subagent-registry

工具與整合JavaScriptMIT

把本地定義的自定義 agent 註冊成 dsh 可呼叫的 subagent:主模型透過 use_agent 工具按名字派活,每個 agent 以獨立人格執行,支援斷點續跑。

3 Starsfan56 更新時間 2026-09-09
訪問 GitHub 倉庫
dsh-subagent-registry 專案預覽

專案介紹

中文

把本地定義的自定義 agent 註冊成 dsh 可呼叫的 subagent:主模型透過 use_agent 工具按名字派活,每個 agent 以獨立人格執行,支援斷點續跑。

English

Register locally-defined custom agents as callable subagents in dsh: the main conversation invokes any agent by name via use_agent, each running as a real dsh subagent with its own persona. Supports breakpoint resume for interrupted runs.

專案資訊與收錄訊號

快照 2026-09-11
作者 / 組織
fan56
倉庫
fan56/dsh-subagent-registry
GitHub Stars
3
Forks
0
開發語言
JavaScript
許可證
MIT
最近推送
2026-09-09
Manifest
資料中檢測到宣告

公開倉庫不自動等於可商用;許可證與當前相容性以原專案文件為準。Manifest 和資料評分不構成安裝安全認證。

資料評分

63/ 100
維護活躍
99
文件與實用資訊
100
生態關注度
17
安裝便捷訊號
100
專案宣告訊號
100

近 2 天仍在更新;README 含完整安裝與使用說明;關注度尚低(3)。

評分來自已有資料快照的五維模型,僅作瀏覽參考,不是實際使用評測或安全檢測結論。

安裝與使用

所有專案資料與許可均以對應 GitHub 倉庫為準。

dsh plugin --profile web add github:fan56/dsh-subagent-registry

複製命令不會自動執行。請先閱讀倉庫文件,確認環境要求與許可證。

專案截圖

倉庫 README

GitHub 原文

已儲存的倉庫文件快照;文件抓取時間未記錄,可能與上方目錄介紹處於不同版本。安裝前請核對當前倉庫說明。

儲存庫檔案保留原文,指令與授權文字不作自動改寫。

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.1.2-rc.1 的公开 subagent 机制,可随时干净卸载。

三个预置 agent

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

Agent一句话典型用法
workhorse(牛马狗)干活的主力:写代码、调查、测试、部署,脏活累活全包;默认 deepseek-v4-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-v4-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 的硬停梯消费)。 未知字段静默忽略。

→ 完整参考: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.1.2-rc.1(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 <name> 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、无网络)

License

MIT

使用前核對

安裝步驟、相容版本與授權範圍以原專案當前文件為準。Stars 和評分是快照中的導航訊號。

安裝與排錯 · 專案問題反饋

同類專案