夜雨聆风学习资料网

ARTICLE · 1004294

在自己电脑跑爆火的AI,先装这 5 个插件,工作台才听话

在自己电脑跑爆火的AI,先装这 5 个插件,工作台才听话

上回装完 ModLens 我以为到头了。结果一查社区推荐列表,还有 4 个通用插件没装——然后我又在 PowerShell 里蹲了半小时

上篇文章写完 ModLens 之后,链接如下:

Deepseek Harness的模型看不见图,我给它装了双眼睛

我做了一件事:去翻 DSH 社区推荐的「普通用户通用插件」清单。

结果发现,除了 ModLens(读图),还有 4 个东西是社区公认「装了体验会好一大截」的:

at-file — 输入框里 @ 引用文件,不用手动贴内容

better-sidebar — 补官方右边栏缺失的文件树 / 终端 / Git 面板

memento — 跨会话记忆,本地 SQLite 存储

automation — 定时任务和一次性任务调度

四个都装上,DSH 才算从「能对话」进化到「能干活」。

我说行,那就装。

先让 DSH 自己去找

跟上次装 ModLens 一样,我没自己去 GitHub 翻。直接让 DSH 帮我搜:

安装 at-file / better-sidebar / memento / automation 以上四个技能

DSH 的反应很规范——先查本地(市场/技能库/插件库),没有再去社区找来源。

▲ 图1:让 DSH 自动搜索 4 个插件的来源——本地没有,去社区找

搜索结果出来了,一张表讲清楚:

▲ 图2:定位结果——4 个插件的包名和来源全部确认

插件
来源
状态
at-file
npm @freespace8/dsh-at-file
✅ 包名确认
better-sidebar
GitHub omdsh-dev/DSH-better-sidebar
⚠️ npm包名待定
memento
npm dsh-memento
✅ 包名确认
automation
npm @michengai/dsh-automation
✅ 包名确认

三个绿一个黄。better-sidebar 的 npm 包名 DSH 一时没锁定,但 GitHub 仓库地址是准的,后面可以手动补。

到这里有个细节值得注意——DSH 插件和技能是两套东西

技能是你丢进 skills 目录的 SKILL.md 文件夹,DSH 启动时自动识别。插件不一样,它是通过 pnpm add 装进 web profile 的依赖包,写进 dsh.profile.bundles 锁文件里,重启后才生效。

所以安装方式也不是 npm install -g 那套,而是要在 DSH 的 web profile 里用 pnpm 来加。

三行命令,自己终端跑

DSH 给了我三行命令,让我在自己的 PowerShell 里跑:

▲ 图3:DSH 生成的三行安装命令——PATH 设置 + pnpm 全局安装 + 插件注册

三行分别干的事:

第 1 行 — 把 WorkBuddy 自带 Node 目录加进当前 PATH(这样 pnpm 能找到)

第 2 行 — 用你的 npm 全局安装 pnpm(跟装 ModLens 同理,得用完整路径)

第 3 行 — 重跑插件安装(三个包:dsh-memento / @michengai/dsh-automation / @freespace8/dsh-at-file)

老读者看到这里应该熟悉了——又是沙箱无外网那套,跟 ModLens 一模一样的套路。复制粘贴到 PowerShell,回车。

第一坑:dsh-memento 下载中断

进展不错。pnpm 通了,at-file 和 automation 已经成功登记进 package.json 依赖。

但 dsh-memento 卡住了。

它在下载一个 11.18 MB 的安装包的时候网络报错——error (23)。重试了一次,这次更惨,下到 3.23 MB 就断了。

▲ 图4:memento 下载卡在 error(23)——典型 npmjs 连接不稳症状

原因很明确:我的网络连 npmjs 官方源不稳定。这是国内开发者的经典症状——不是你操作错了,是源本身就连不上。

解决办法:换国内镜像源。把 registry 从官方源切到 npmmirror(淘宝镜像),其他不变。

DSH 直接给了替换后的命令,核心就多了一个参数:

pnpm config set registry https://registry.npmmirror.com

复制粘贴重新跑。

第二坑:node-pty 原生构建被拦截

换了镜像源之后,memento 这次顺利下载完了(11.18 MB,done)。automation 也装上了。

但 better-sidebar 出了新问题。

▲ 图5:PowerShell 实际运行——memento 过了,但 better-sidebar 被 pnpm 拦截

报错信息是:

ERROR: pnpm failedgated binary scripts "node-pty@1.1.0" are not allowed to run.Run "pnpm approve-builds" to pick which dependencies should be allowed to run scripts.

这是什么意思?

better-sidebar 这个插件依赖一个叫 node-pty 的包。node-pty 不是普通的 JavaScript 包——它包含原生(native)C++ 代码,安装时需要在本地编译(build)。pnpm 的安全机制默认不允许原生包随便执行构建脚本,怕有风险,所以拦住了。

这跟前面的 EPERM 或 error(23) 都不一样。前面是环境和网络问题,这个是 pnpm 的安全策略主动拦截

解决办法:批准 node-pty 的原生构建。两步走:编辑 pnpm-workspace.yaml 把 node-pty 设为 true(允许构建),重建 node-pty,然后重新注册 better-sidebar。

▲ 图6:最后一步——批准 node-pty 原生构建 + 重建 + 重新添加 better-sidebar

DSH 给了一整块命令,复制粘贴到 PowerShell 跑完。这次没再报错。

全部就位,4 个插件确认

最后回到 DSH 里确认一下——四个插件是不是真的都挂上了。

▲ 图7:bundle 锁确认——4 个社区插件全部登记在 dsh.profile.bundles 中

bundle 锁文件里的完整清单:

插件
来源
类型
@deepseek-ai/dsh-base
官方
内置
@deepseek-ai/dsh-web-app
官方
内置
@freespace8/dsh-at-file
社区
← 新增 ✅
@michengai/dsh-automation
社区
← 新增 ✅
dsh-memento
社区
← 新增 ✅
dsh-better-sidebar
社区
← 新增 ✅

四个绿勾。全部登记进 bundle 锁。

最后一步:重启 DSH Web,插件生效。

▲ 图8:PowerShell 最终执行——4 个插件一条命令注册完毕

重启之后,DSH 页面右侧多了一整块东西。

▲ 图9:重启后效果——better-sidebar 生效了!右侧出现 Explorers 文件树面板

看右边。之前 DSH Web 的右边栏基本是空的,现在多了 Explorers 面板——文件树、Harnesses 目录、所有 .html 和 .mpdir 文件一目了然。这就是 better-sidebar 干的事。

一个插件装前装后对比这么明显,这钱(或者说这折腾)花得值。

这轮装完,DSH 多了什么能力

简单盘点一下这四个插件各自解决什么问题:

at-file — 解决「我想让模型看某个文件但不想手动粘贴全文」的问题。在输入框里 @ 文件路径,DSH 自动读取内容喂给模型。写代码、分析日志、对比配置文件的时候特别好用。

better-sidebar — 解决「DSH 右边栏太空了」的问题。官方 Web 版的侧边栏比较简陋,这个插件补上了文件树、终端面板、Git 状态——你在 VS Code 里习惯的那些面板,这里也有了。

memento — 解决「每次开新会话模型都不记得之前聊了什么」的问题。跨会话记忆存在本地 SQLite 里,不需要接外部服务,数据完全在你自己手上。

automation — 解决「我不想每次手动触发任务」的问题。定时执行、一次性延时执行,适合跑日报生成、定期资料整理这类重复性工作。

四个装完,DSH 从一个「纯对话工具」变成了一个有文件引用能力、有侧边增强、有记忆、有定时任务的「半 IDE」。

两轮安装下来我有一个感受:DSH 的社区插件不是「装上就能用的成品」,而是一组「有人维护、但需要你配合调试」的工具链。每次装新插件几乎都会遇到一个你没见过的报错——但每个报错的解法都在 DSH 的对话里能找到。这大概就是 v0.1 开发者预览阶段的真实体验。

几个值得记住的点

第一,国内开发者装 DSH 插件,镜像源几乎是必选项。

ModLens 那次我用的是 npm 官方源勉强过了(因为包小)。这次 memento 11.18 MB 的包直接断两次。换成 npmmirror 之后秒过。如果你也在国内装 DSH 插件,建议第一步就先切镜像源,别等报错了再换。

第二,pnpm 的安全机制比 npm 严格得多。

npm install -g 的时候原生包基本直接编译不问你。pnpm 默认拦截,要你手动 approve-builds。这对安全性是好事,但对第一次遇到的人来说会很懵——明明包名都对、源也换了,为什么还是装不上?答案就是这一层安全策略。

第三,DSH 插件和技能是两套体系,别搞混。

技能是 SKILL.md 文件夹,丢进去就能用。插件是 pnpm 依赖包,要写进 bundle 锁、重启才生效。装法不同,排查方式也不同。这次四件套全是插件,所以走的是 pnpm add 路线;上次 ModLens 我们走了技能路线(modlens-local)。两条路都能到目的地,但路口不一样。

本文基于真实操作截图撰写

相关学习资料

返回首页浏览学习资料