赞助商LobeHubLobeHub了解更多
ddshfind
登录

第 2 课:插件能做什么?

一句话版:从「给模型加一个能查 CSV 的工具」到「把整个界面换成 QQ2006 皮肤」再到「让 dsh 跑在安卓手机上」——只要是 DSH 的一部分,就能被插件改。这一课用生态里 275 个真实插件,带你看清这套机制的实际边界。


1. 先看一眼盘子有多大

截至 2026 年 8 月,dsh-external 组织里有 275 个已收录的插件仓库(本站「插件超市」页就是这份清单)。按标签统计,最集中的方向是:

方向数量
界面改造(web-ui76
给模型加工具(tool35
技能(skill18
会话与记忆(session16
纯好玩(fun15
桌面端(desktop10
工作流(workflow8

看得出来一个规律:改界面的最多。因为 DSH 的 Web 界面本身就是几十个 UI 插件拼的,往里加一块、换一块的成本极低。

下面按「你想改哪儿」分七类,每类都是真实存在的仓库


2. 七类改造,配真实例子

2.1 给模型加一双手:新工具

模型本来只会读写文件、跑命令、搜网页。你可以给它加任何新本事:

插件它给了模型什么能力
dsh-tool-csv解析 / 查询 / 统计 CSV,零依赖的 RFC 4180 解析器
dsh-latex写完文档一键编译 PDF,还能结构化定位报错,右侧面板预览
dsh-visionview_image 工具,桥接任意 OpenAI 兼容的多模态模型——让模型能"看图"
dsh-mineru把 MineRU 的文档解析能力暴露给模型
zotero-harvest多源检索文献(OpenAlex / arXiv / Crossref…)+ 下载解析 + 入库本地 Zotero

这是最常见也最容易上手的一类——第 3 课就带你写一个。

2.2 改你看到的界面

DSH 的 Web 界面是几十个 ui-* 插件拼出来的,所以往里塞东西特别容易:

插件它改了什么
dsh-ui-whale标题栏常驻一只像素鲸鱼,思考时摆尾,回合完成喷水
dsh-web-panel界面里内嵌一个真的终端(xterm.js + node-pty)
dsh-split-panes分屏 / 堆叠多面板,每个面板独立会话
dsh-custom-css粘贴一段 CSS 即时改观感,还能存进设置里多浏览器同步
dsh-genui模型能直接在对话里画出可交互的 UI(图表、表单、测验、3D)

2.3 改模型怎么想、怎么协作

不只是"换个模型",而是改变模型工作的方式

插件它改了什么
dsh-plan-execute规划阶段用推理型模型,批准后自动切成快速型模型执行
dsh-advisor一个副模型在旁边被动审查每一轮对话,往里注入见解
dsh-deep-research自适应的深度研究编排
dsh-llm-fallbacks按角色配置重试和备用模型策略

2.4 改记忆与会话

插件它改了什么
dsh-memory-evolve分层记忆(用户 / 项目 / 每日)+ 经验沉淀自动长出技能
dsh-session-search跨工具全文搜索会话(dsh / codex / claude / pi / opencode 都能搜)
dsh-turn-rewind回退对话和工作区状态,由一份持久变更账本驱动
dsh-sidechain/side 在当前会话的临时分叉里开个侧聊,不污染主线

2.5 换个地方用它

DSH 不一定非得在你的终端里:

插件它去了哪
tg-bot / qqbot / dsh-feishu-bot / dsh-wecom-bot变成 Telegram / QQ / 飞书 / 企业微信里的机器人
dsh-vscode原生集成进 VS Code 的聊天
dsh-browserChrome 侧边栏扩展,直接操作浏览器
dsh-android跑在安卓手机上
dsh-desktop-electron托盘常驻的跨平台桌面壳

2.6 纯粹为了好玩

这一类占了 15 个,说明这个机制的门槛是真的低:

插件它干了啥
dsh-pet桌宠小鲸鱼,不打开 DSH 也能实时感知会话状态,还有音效
7d7d7k7k 风格小游戏平台,模型生成小游戏你直接在界面里玩
dsh-gomoku跟 AI 下五子棋,也能让两个 AI 自己对局
dsh-lazyfish右侧摸鱼面板:信息流 + B站播放器
dsh-qq2006整套 QQ2006 皮肤

2.7 换掉底层零件

这一类最能体现「没有内核」——直接替换系统的执行底座:

  • 命令执行后端(本地 / 沙箱 / PowerShell / 远程沙箱)
  • 会话存储(JSONL / SQLite / 关系数据库)
  • 沙箱实现(bwrap / Landlock / Seatbelt / microsandbox)
  • 子智能体驱动(进程内 / ACP / Codex / Claude Code)

这些官方仓库里就有现成的,配置里改一行就能切。


3. 那什么是做不到的?

讲清边界比吹能力更有用。

① 插件改不了"物理规律"。 协议常量、外部 API 的规范、安全不变量是固定的——比如你不能让一个被沙箱拒绝的文件操作"绕过去",沙箱拒绝是策略结果,不是 bug。

② 有些能力是显式选择才开的(opt-in)。 最典型的是自指工具 tool-cordis——它让模型能在运行中给自己挂载新插件。官方的态度很明确:

这套工具需要显式启用,慎重程度应该和授予 bash 工具一样。

原因很直白:模型写的插件代码会真的进入你正在跑的进程。默认不装,是对的。

③ 插件之间不是完全隔离的。 多个插件抢同一个位置会冲突——比如两个插件都想当唯一的会话标题生成器。DSH 的做法是加载时就报错,而不是悄悄让后者覆盖前者。这叫「配置错误要吵闹」,是好事:早失败好过在运行到一半时表现诡异。

④ 不是所有东西都值得做成插件。 官方有条规矩叫「优先用维护良好的依赖,而不是手搓」——如果一个成熟的库能真正删掉你自己的代码和测试,就该用库。


4. 怎么找、怎么装

  • 本站的插件超市——275 个仓库按分类可筛
  • dsh-hub / dsh-plus——社区维护的精选清单
  • marisa(也叫 dshx)——外部插件管理器,按 GitHub topic 自动发现

:多数插件的 README 都会给一行命令。官方的方式是往 profile 里加:

dsh plugin --profile web add <包名或本地路径>

装完在 cordis.yml 里就能看到它的条目,不想要了删掉那一行就行——回到第 1 课那条规矩:装得上,就卸得掉。

💡 一个实用建议:先从「给模型加个工具」这类插件试起(比如 dsh-toolkit 里的六个零依赖小工具)。它们不改界面、不碰底层,出问题影响面最小。


关键点回顾

  1. 275 个真实插件,最集中的是界面改造(76)、模型工具(35)、技能(18)。
  2. 七个改造方向:加工具、改界面、改模型协作方式、改记忆会话、换使用场所、纯好玩、换底层零件。
  3. 界面类最多,因为 Web 界面本身就是几十个 UI 插件拼的,边际成本极低。
  4. 边界是真实存在的:协议与安全不变量固定;自指工具默认不开;冲突在加载时就报错。
  5. 装卸都是改配置,删掉 cordis.yml 里那一行就回到原样。

🚀 下一课:动手写一个。三步,二十行代码。

自测题 · 插件能做什么

完成作答后点击「提交答案」,可以查看对错与解析。

1. 为什么生态里「改界面」类的插件数量最多(76 个)?
2. 关于自指工具 tool-cordis(让模型给自己挂插件),官方的态度是?
3. 两个插件都想注册成唯一的会话标题生成器,会发生什么?
4. 想卸掉一个装上的插件,正确做法是?