dsh-plugins
by daisywait
持续开发的 DeepSeek Harness (DSH) Web 插件源码仓库。每个插件一个文件夹;配合内置的「插件管理器」( dsh-repo-sync )可一键安装/卸载/提交。安装采用 官方 pnpm 方式 ( pnpm add link:... ,等价 dsh plugin --profile web add ),记录进 profile 的…
Source repo of continuously developed DeepSeek Harness (DSH) web plugins, one folder per plugin; install/uninstall/commit in one click with the built-in plugin manager (dsh-repo-sync), using the official pnpm approach recorded into the profile.
安装
dsh plugin --profile web add github:daisywait/dsh-pluginsGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
目录
持续开发的 DeepSeek Harness (DSH) Web 插件源码仓库。每个插件一个文件夹;配合内置的「插件管理器」(dsh-repo-sync)可一键安装/卸载/提交。安装采用官方 pnpm 方式(pnpm add link:...,等价 dsh plugin --profile web add),记录进 profile 的 package.json,源码即本仓库,改代码刷新即生效。
远端:https://github.com/Daisywait/dsh-plugins(公开)
结构
dsh-plugins/
├── dsh-skin-shiguangdailiren/ # 《时光代理人》皮肤:壁纸 + 暖粉毛玻璃主题 + GenUI 网页质感
├── dsh-repo-sync/ # 插件管理器:「仓库」标签页,一键安装/卸载/提交
├── dsh-quote/ # 消息「引用」:选中文本引用(开发中,暂未收录到远端)
├── dsh-video/ # 视频工作室:Remotion 实时预览 + 参数交互 + 渲染 MP4(新「视频」标签页)
└── README.md
快速开始(一条命令,无需克隆)
在 PowerShell 里运行:
powershell -Command "irm https://raw.githubusercontent.com/Daisywait/dsh-plugins/master/install-remote.ps1 | iex"
脚本自动:拉取插件源码到托管目录 ~\.dsh\plugins-src\(git clone,重跑自动 pull 更新)→ 用 pnpm add link: 按官方方式安装到 profile(记录进 package.json)→ 写入 cordis.patch.yml 注册行(幂等)。完成后重启 DSH。
之后打开会话头部「仓库」标签页(插件管理器),所有插件的安装/卸载/提交都在这里。
本机开发建议:如果你自己有本地克隆(如
D:\Documents\dsh-plugins),直接用它跑powershell -ExecutionPolicy Bypass .\install.ps1,链接会指向本地克隆——改代码刷新即生效。 远程一条命令适合新机器/快速引导(会建~\.dsh\plugins-src托管副本,编辑要在那里改)。
想指定插件或复制模式,远程脚本也透传参数:... | iex 后接 dsh-repo-sync -Copy 之类(用法与本地 install.ps1 相同)。
安装插件(管理器一键安装)
- 打开 DSH 会话头部的「仓库」标签页(插件管理器)。
- 「仓库可安装」列表里点插件旁的 安装:
- 用官方方式
pnpm add link:<仓库目录>安装(记录进 profile 的 package.json) - 自动写入
cordis.patch.yml注册行(幂等,不会重复)
- 用官方方式
- 重启 DSH 生效。
之后改本仓库里的插件源码 → 刷新页面即生效(链接直达,无需复制)。
卸载插件
「仓库」标签 → 已安装插件 → 卸载:移除链接 + 移除注册行,重启生效。
手动安装(备用,不走管理器)
- 复制插件文件夹到
C:\Users\<你的用户名>\.dsh\profiles\web\node_modules\ cordis.patch.yml顶层数组加:- insert: - id: <注册id> name: 'dsh-<name>'- 重启 DSH。
各插件注册 id:dsh-skin-shiguangdailiren → skin-shiguangdailiren;dsh-repo-sync → repo-sync;dsh-video → dsh-video(注意:dsh-video 手动安装后还要运行它的 scripts/install-deps.ps1 装渲染依赖)。
插件清单
| 插件 | 功能 |
|---|---|
| dsh-skin-shiguangdailiren | 时光代理人壁纸 + 毛玻璃主题(明暗双套);会话头部 🖌 打开右侧栏调节:透明度/水平位置/图片大小/GenUI 浓度/上传壁纸,全部自动保存;GenUI 卡片网页质感样式 |
| dsh-repo-sync | 插件管理器:「仓库」标签页。已安装插件(状态 + 提交/同步 + 卸载)+ 仓库可安装(安装,官方 pnpm 方式)。提交自动 git add + commit + push |
| dsh-quote | 消息引用:助手消息操作区 ⤴ 按钮,把该消息文本带进输入框(方便引用上下文) |
| dsh-video | 视频工作室:会话头部「视频」标签页。Remotion 实时预览(标题卡/结束卡两种合成,可改文字、配色、Emoji、时长/帧率),一键渲染 H.264 MP4(720p/1080p),「全屏预览」在新浏览器标签页打开交互工作室。智能体可直接调用 video_render / video_job_status 工具生成视频 |
开发流程
- 在本仓库改插件源码(host 半区
index.js、客户端 bundleclient.js)。 - 已安装(链接模式)→ 刷新页面即生效;host 改动需重启 DSH。
- 改完在「仓库」页点 提交 → git commit + push 到 GitHub(自动)。
- 新插件:先在仓库建文件夹(package.json 带
dsh.client: { platform: "web" }+exports["./client"])→ 「仓库」页点安装。
dsh-video 的依赖与构建(其余插件无此步骤)
dsh-video 的 host 渲染栈(@remotion/bundler、@remotion/renderer)装在插件自己的目录(链接安装不共享 profile 的 node_modules):
- 首次安装:仓库「仓库」页点安装会自动运行
scripts/install-deps.ps1(pnpm install --ignore-scripts+node scripts/build.mjs);或用install.ps1一并处理。 - 手动:
cd dsh-video && powershell -ExecutionPolicy Bypass .\scripts\install-deps.ps1 - 改客户端源码(
src/、remotion/src/)后重跑node scripts/build.mjs重建client.js/studio/studio.js,刷新页面生效。 node_modules/、output/、.bundle/均已 gitignore。
让智能体生成视频(模型工具)
dsh-video 在 host 端通过 ctx.tools 注册两个模型可调用工具(无需额外配置,重启 DSH 后模型自动可见):
video_render:渲染一段视频。参数:kind(Title/End)、seconds(5/10/15/20)、fps(24/30/60)、width/height、以及全部文案与配色(title/subtitle/byline/emoji/bg1/bg2/accent/textColor),wait默认 true 等待完成并返回outputUrl成品地址;false 则立即返回 jobId。video_job_status:按jobId查询进度与结果(适合wait:false后轮询)。
用法示例(对模型说):「用 video_render 生成一个 10 秒 1080p 的标题卡视频,标题『你好,世界』,紫色渐变背景,等渲染完把链接给我」。渲染结果同时出现在「视频」标签页的「最近渲染」列表里,可重播/下载。工具注册失败会把原因写进 /video/status 的 lastError,不影响标签页使用。
技术要点
- 客户端 bundle 格式:
window.__ModuleLoader__.load({ id, factory }),由 DSH 的 clientModules 服务按需读取(no-cache,改文件刷新即生效)。 - 插件包声明:
package.json里dsh.client: { platform: "web" }+exports["./client"]指向 bundle 文件;exports["./package.json"]也需导出。 - Host 半区用
node:child_process执行 git(web profile 未挂载 shell/subprocess 服务,不要用ctx.get('shell'))。 - 安装用 junction 链接(
fs.symlinkSync(..., 'junction')),Node/浏览器按普通目录解析。 - 客户端与 Host 通信:Host 注册
webServerHTTP 路由(如/repo-sync/plugins),客户端用fetch轮询/调用;不要用动态插件的harness.handle/host.call(常驻插件没有这两个内置)。 - 常驻插件给模型加工具:
ctx.inject(['tools'], (toolsCtx) => toolsCtx.tools.register({ name, description, parameters, output: { schema, render }, execute }))—— 直接注册 rawToolDefinition对象即可(defineTool只是 TS 辅助),插件目录解析不到@deepseek-ai/*平台包,不要 import 它们。
贡献者
- Daisywait(仓库作者,方向与使用)
- DeepSeek(deepseek-ai):AI 开发助手,实现皮肤插件、插件管理器、引导脚本与文档
本仓库的插件与脚本由 DeepSeek 持续迭代维护;历史提交均署名 DeepSeek(deepseek-ai)。
原始 README: https://github.com/Daisywait/dsh-plugins/blob/master/README.md ↗
同类插件
查看全部 →
dsh-web-ui-all
DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。

dsh-web-ui
DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。

dsh-TUI
Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。

DSH-better-sidebar
侧边栏完整工作台:内置文件渲染编辑、终端、Git 与子代理,支持三方插件注册新 Tab。

working-activity
让 agent 的"工作状态行"活过来——实时工具动态与进度、俏皮文案、模型自述、上下文预警。同一套想法,适配两个平台: pi CLI 与 DeepSeek Harness(DSH) 。

deepseek-idesign
可视化设计工作室,支持网站、App 原型、海报、信息卡、报告和杂志的模板创建、元素编辑、选区级 AI 草稿衔接与导出。