第 2 课:插件能做什么?
一句话版:从「给模型加一个能查 CSV 的工具」到「把整个界面换成 QQ2006 皮肤」再到「让 dsh 跑在安卓手机上」——只要是 DSH 的一部分,就能被插件改。这一课用生态里 275 个真实插件,带你看清这套机制的实际边界。
1. 先看一眼盘子有多大
截至 2026 年 8 月,dsh-external 组织里有 275 个已收录的插件仓库(本站「插件超市」页就是这份清单)。按标签统计,最集中的方向是:
| 方向 | 数量 |
|---|---|
界面改造(web-ui) | 76 |
给模型加工具(tool) | 35 |
技能(skill) | 18 |
会话与记忆(session) | 16 |
纯好玩(fun) | 15 |
桌面端(desktop) | 10 |
工作流(workflow) | 8 |
看得出来一个规律:改界面的最多。因为 DSH 的 Web 界面本身就是几十个 UI 插件拼的,往里加一块、换一块的成本极低。
下面按「你想改哪儿」分七类,每类都是真实存在的仓库。
2. 七类改造,配真实例子
2.1 给模型加一双手:新工具
模型本来只会读写文件、跑命令、搜网页。你可以给它加任何新本事:
| 插件 | 它给了模型什么能力 |
|---|---|
dsh-tool-csv | 解析 / 查询 / 统计 CSV,零依赖的 RFC 4180 解析器 |
dsh-latex | 写完文档一键编译 PDF,还能结构化定位报错,右侧面板预览 |
dsh-vision | view_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-browser | Chrome 侧边栏扩展,直接操作浏览器 |
dsh-android | 跑在安卓手机上 |
dsh-desktop-electron | 托盘常驻的跨平台桌面壳 |
2.6 纯粹为了好玩
这一类占了 15 个,说明这个机制的门槛是真的低:
| 插件 | 它干了啥 |
|---|---|
dsh-pet | 桌宠小鲸鱼,不打开 DSH 也能实时感知会话状态,还有音效 |
7d7d | 7k7k 风格小游戏平台,模型生成小游戏你直接在界面里玩 |
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里的六个零依赖小工具)。它们不改界面、不碰底层,出问题影响面最小。
关键点回顾
- 275 个真实插件,最集中的是界面改造(76)、模型工具(35)、技能(18)。
- 七个改造方向:加工具、改界面、改模型协作方式、改记忆会话、换使用场所、纯好玩、换底层零件。
- 界面类最多,因为 Web 界面本身就是几十个 UI 插件拼的,边际成本极低。
- 边界是真实存在的:协议与安全不变量固定;自指工具默认不开;冲突在加载时就报错。
- 装卸都是改配置,删掉
cordis.yml里那一行就回到原样。
🚀 下一课:动手写一个。三步,二十行代码。
自测题 · 插件能做什么
完成作答后点击「提交答案」,可以查看对错与解析。
