浏览经审核的插件精确版本并一键安装
30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/20 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add VibeDev-Si/vibedev-plugin-index该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · market
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 15 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0⚪ 扫描:无法判定尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0已尝试扫描但取不到可分析的源码:仓库或包不存在、已删除,或为非 JS/TS 实现、未随包发布源码。无法判定,不代表安全。
- · 包内无可扫 JS
- · TS 源码(可能为非 JS 实现或未发布源码),无法判定
扫描于 2026/11/3(0 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-plugin-market-index给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
VibeDev 精选插件索引:只收录审核过的精确插件版本
README
由 DeepSeek 最新模型翻译生成VibeDev 精选插件索引 · VibeDev Curated Plugin Index
索引地址 / Index URL:https://vibedev-si.github.io/vibedev-plugin-index/index.json
这是什么
这是 VibeDev 维护的社区插件索引:一个 DSH 插件市场索引(format 1) JSON 文件,由本仓库的 plugins.yml 生成,经 GitHub Actions 发布到 GitHub Pages。它只列出 VibeDev 审核过的精确版本:某个插件发布新版本时,新版本不会自动出现在索引里,必须有人按下面的清单审核,并在 plugins.yml 里记录版本号和 npm integrity 之后才会上架。
插件仍然是第三方代码。审核降低风险,但不是安全担保;索引本身也没有签名,所以只通过 https 发布。
VibeDev 怎么使用它
VibeDev 使用上游 DeepSeek Harness 自带的插件市场:Host 端服务 @deepseek-ai/dsh-plugin-market 加上「插件」页的「发现」标签 @deepseek-ai/dsh-client-ui-plugin-market。
展开完整文档(README 剩余 1 节)
VibeDev 精选插件索引 · VibeDev Curated Plugin Index
索引地址 / Index URL:https://vibedev-si.github.io/vibedev-plugin-index/index.json
这是什么
这是 VibeDev 维护的社区插件索引:一个 DSH 插件市场索引(format 1) JSON 文件,由本仓库的 plugins.yml 生成,经 GitHub Actions 发布到 GitHub Pages。它只列出 VibeDev 审核过的精确版本:某个插件发布新版本时,新版本不会自动出现在索引里,必须有人按下面的清单审核,并在 plugins.yml 里记录版本号和 npm integrity 之后才会上架。
插件仍然是第三方代码。审核降低风险,但不是安全担保;索引本身也没有签名,所以只通过 https 发布。
VibeDev 怎么使用它
VibeDev 使用上游 DeepSeek Harness 自带的插件市场:Host 端服务 @deepseek-ai/dsh-plugin-market 加上「插件」页的「发现」标签 @deepseek-ai/dsh-client-ui-plugin-market。
- 索引源:市场服务读取 plugin-market 行的 indexes 配置(URL 列表,按 profile 保存;用户在「发现 → 管理索引源」里增删时写入 profile 的 cordis.patch.yml)。上游默认不配置任何源;VibeDev 计划把本索引设为默认源(尚未启用)。
- 读取规则:Host 端用 fetch 读取,拒绝重定向(所以要配置最终 URL),超时 15 秒,正文上限 128 MiB,在独立 Worker 里按严格 UTF-8 + JSON + format 1 校验,成功结果缓存 10 分钟;任一字段违规则整个索引被拒绝,只影响这一个源。多个源分别浏览,不合并。
- 展示:发现页的卡片显示图标、标题、标签、一行描述、默认版本、作者和发布日期;可按分类、标签筛选,支持中英文模糊搜索。默认版本是与当前 DSH 兼容的最高正式版。
- 安装:卡片上的「安装」先显示来源和信任提示,再打开「插件」页自己的安装对话框,执行 pluginManager.installBundle("<name>@<version>")。安装前 DSH 会按包内 manifest 再检查一次兼容性(engines.dsh,没有时看 @deepseek-ai/dsh- peer),pnpm 11 会拦下依赖的构建脚本并请用户批准。上游目前没有「升级」动作,升级要先卸载再安装。
- 在 VibeDev 正式内置之前,可以手动试用:插件 → 更多 → 实验性插件 → 打开「自定义插件市场」,再在「发现」里添加上面的索引地址。
收录标准
一个版本要同时满足以下条件,npm run validate 会自动检查其中能机器判断的部分:
1. 开源许可:package.json 的 license 是 OSI 批准的 SPDX 许可证(见 scripts/lib/manifest.mjs 的列表),且与审核记录一致;包内应附带许可证文本(缺失会警告,需在记录中说明)。
2. 发布在 npm:来自 registry.npmjs.org,并声明 dsh.bundle(可安装的 DSH bundle)。不收录 Git、tarball 或私有源。
3. 精确版本:每个版本单独审核,记录版本号和 npm 的 dist.integrity(sha512)。不接受范围(^1.0.0)或标签(latest)。
4. 兼容当前 VibeDev 的 DSH 版本(plugins.yml 的 target.dsh,现在是 0.2.1-rc.2):发现页的兼容判断和安装时的检查都必须通过;完全没有 DSH 声明(无 engines.dsh、无 dsh peer)的包,必须由审核人在目标版本上实际运行过(testedOn)。
5. 行为已声明:网络(访问哪些主机; 表示用户或 Agent 选择的网站,例如它驱动的浏览器)、文件(none/read/write)、DSH 配置(none/read/write)、子进程(启动哪些程序)都写进审核记录;构建时据此给条目加上「联网」「运行外部程序」「写入文件」「修改 DSH 配置」「安装脚本」标签。遥测必须写明,默认开启的第三方遥测要产品负责人批准。
6. 没有未经审核的安装脚本:包自身的 preinstall/install/postinstall 和 binding.gyp 必须逐项记录在 installScripts,否则校验失败;依赖树里的安装脚本用 npm run inspect -- <name>@<version> --deps 检查。
7. 体量限制:解包后不超过 20 MiB(policy.maxUnpackedBytes),超出时必须写 sizeException 说明理由;依赖越少越好。
8. 维护者可联系且有响应:记录 issue 地址或邮箱;仓库未归档,最近 90 天有提交或 issue 回复。安全问题报告 7 天内无回应的,可以先下架。
9. 其他:不自我更新、不修改其他插件或 VibeDev 内置插件、不在运行时下载并执行未审核的代码;不与 VibeDev 内置功能重复。
新增收录 / 更新版本
从申请到用户看到一共六步,不需要发布 VibeDev 桌面版。
1. 审核:在本地运行一条命令。
npm run review -- <name>@<version> --dsh <已构建的 DSH 检出>
更新已收录的插件时,会自动与最新收录的版本对比;也可以用 --previous <版本> 指定
它会依次完成:
- 静态检查:tarball、provenance、依赖树、代码线索;
- 安装试用:在临时 profile 里用 installBundle 安装并重启,记录子进程、外连、凭据读取和注册项;
- 写出审核记录 reviews/<name>@<version>.md(中文在前)和对应的 .json。
记录末尾是 plugins.yml 草稿:新插件给出整段条目;新版本给出一条 versions 记录,并沿用上一版本的审核判断。
2. 判断:阅读记录(更新时主要看「与 X 相比」一节),填写 TODO:结论、风险提示和显示文字。把草稿粘进 plugins.yml,运行 npm run validate;只要还有 TODO,校验就不会通过。
3. PR:提交 plugins.yml 和 reviews/ 下的记录,开 PR。main 受保护,只能通过 PR 合并,并且 Validate 检查必须通过。
4. 合并:Pages 工作流会自动构建并发布 index.json,大约 1–2 分钟。
5. 镜像:运行 npm run mirror -- --ssh … --identity … --known-hosts … --apply,同步到 https://download.vibedev.studio/plugin-index/index.json,详见下文「镜像到 VibeDev 下载服务器」。
6. 生效:DSH 读取索引后会缓存 10 分钟,之后「发现」页就会显示新插件或新版本;点刷新按钮会立即重新读取。已安装旧版本的用户会看到「有更新」。前提是 VibeDev 已把本索引设为默认源(计划中),或者用户已手动添加。
下架只需第 3–6 步:在 plugins.yml 里删除对应版本或整个插件即可。
审核清单
审核人对每个版本逐项完成,并把结果写进 PR:
- [ ] 运行 npm run review -- <name>@<version> --dsh <DSH 检出>,把 reviews/ 下生成的记录一起提交。记录包含许可证、兼容性、安装脚本、体量、依赖树、代码线索和安装试用结果。
- [ ] 许可证是 OSI 许可证,与仓库和包内 LICENSE 一致。
- [ ] dsh.bundle 存在;engines.dsh(或 dsh peers)允许 target.dsh。
- [ ] 包和依赖树都没有未审核的安装脚本。
- [ ] 体量与依赖数合理。
- [ ] 阅读代码(不只看扫描结果),确认网络主机、文件读写、DSH 配置写入、子进程、环境变量和凭据读取、eval/动态代码、遥测。
- [ ] 在 VibeDev(目标 DSH 版本)里实际安装、启用、使用主要功能、停用、卸载:无报错,不改动无关配置,卸载后无残留进程。
- [ ] 维护者联系方式可用,项目仍在维护。
- [ ] 在 plugins.yml 写完整审核记录:reviewer、date、license、testedOn、capabilities、installScripts、notes(必要时 sizeException)。
- [ ] npm run validate 通过,PR 的 Validate 检查通过后合并。目前只有一位维护者,所以不要求批准;有第二位维护者后,改为要求 1 个批准。
如何提交或申请更新
- 申请收录:用 收录申请 表单,或直接提 PR(使用 PR 模板,按上面的清单填写)。
- 申请新版本:用 版本更新 表单,或提 PR 在该插件的 versions 里加一条新记录。
- 报告问题 / 申请下架:用 问题报告;安全漏洞请走仓库的 Security → Report a vulnerability 私下报告。
- PR 上的 CI 会运行单元测试、校验正式清单、用真实 npm 数据跑一遍构建,并确认两个故意写错的清单会被拒绝。
上游发布新版本时
- 从不自动收录。 索引只包含 plugins.yml 里的版本,发现页安装的永远是记录过的 name@version。
- 每周一(02:17 UTC)定时任务运行 scripts/check-updates.mjs,把收录插件比已审核版本更新的版本列成表(发布时间、engines.dsh、与目标 DSH 是否兼容、安装脚本、体量、许可证),新建或更新一个带 upstream-release 标签的 issue;没有待审版本时关闭它。
- 审核人运行 npm run review -- <name>@<新版本>,它会自动与最新收录的版本对比,通常只需要看「变化」一节。然后在 PR 里加上新版本(旧版本可以保留或删除),合并后 Pages 自动重新发布。已安装旧版本的用户会在发现页看到「有更新」。
- 紧急下架:删除对应版本(或整个插件)并合并,Pages 几分钟内更新;客户端最多缓存 10 分钟。已经安装的副本不会被自动卸载,需要在 issue 和发布说明里通知用户。
仓库结构与命令
plugins.yml 收录清单(唯一的数据来源) CANDIDATES.md 候选插件与审核结论 reviews/ 每个审核过的版本一份记录:<name>@<version>.md(中文在前)和 .json scripts/review.mjs 一条命令完成审核:静态检查、安装试用、记录与 plugins.yml 草稿 scripts/build.mjs 生成 dist/index.json、dist/icons/、dist/index.html scripts/validate.mjs 校验清单、npm 事实与生成的索引 scripts/check-updates.mjs 每周的上游新版本报告 scripts/inspect.mjs 审核辅助:一个版本的事实与 plugins.yml 片段(--grep 查看代码出处) scripts/mirror.mjs 把 dist/ 发布到 VibeDev 下载服务器(默认只演练) scripts/lib/ 共用模块(部分改编自 DSH 参考生成器,见 NOTICE.md) test/.test.mjs 离线单元测试 test/fixtures/ e2e 测试清单与两个故意写错的清单 test/dsh-composition/ 用 DSH 源码检出做真实组合测试:market-list.mjs(读索引)、install-trial.mjs(安装试用) .github/ CI、Pages 发布、每周检查、issue 与 PR 模板
npm ci # 依赖已锁定精确版本;.npmrc 禁止执行安装脚本
npm test # 离线单元测试
npm run validate # 校验 plugins.yml(需要访问 npm)
npm run build # 生成 dist/
npm run review -- dsh-context@0.73.3 --dsh <已构建的 DSH 检出> # 审核一个版本,见上文
npm run inspect -- dsh-context@0.73.2 --grep "user/balance" # 查看某条代码线索的原文
npm run check-updates
node test/dsh-composition/market-list.mjs --dsh <已构建的 DSH 检出> --dist .cache/e2e-dist
node test/dsh-composition/install-trial.mjs --dsh <已构建的 DSH 检出> --pnpm <pnpm.mjs> --out report.json <name@version>...
install-trial.mjs 会在临时 DSH_HOME、用户目录、APPDATA、TEMP 和 pnpm 仓库里启动 DSH 的 web 配置档,用 pluginManager.installBundle 安装精确版本(与「发现」页安装走同一条路径),再重启一次。它记录以下内容:
- 每个条目的状态,以及注册的工具、技能和路由;
- 启动的子进程、fetch 调用和凭据读取;
- 经本地代理的每个外连:代理只放行 npm registry,其余一律拒绝并记录;
- 写入的文件,以及配置档补丁中的行;
- 在 Windows 上,每隔几秒采样一次整个进程树的监听端口、绕过代理的直接外连和进程;最后一次停止后仍在运行的进程会被记录并结束。
npm run review 会把下面这些选项原样传给试用:
| 选项 | 作用 |
| --call "METHOD /path" | 安装后调用一次插件注册的路由。 |
| --invoke <服务>.<方法> | 安装后无参数调用一次插件提供的服务方法,例如界面第一次使用时会调用的启动动作。 |
| --approve-builds <包名> | 安装因依赖的构建脚本待批准而停止时,模拟用户在「插件」页点击「允许这些脚本并重试」。 |
| --extra-start-env KEY=VALUE、--extra-start-reset <DSH_HOME 下的路径> | 先删除指定文件,再带额外的环境变量启动第三次,例如删除遥测状态后带 DO_NOT_TRACK=1 启动,检查开关是否生效。 |
需要 Node.js 22.12 或更高版本。依赖只有 4 个,全部锁定精确版本:@deepseek-ai/dsh-plugin-market-index(与 DSH 自己使用的 format 1 校验器相同,版本与 target.dsh 一致)、semver、yaml、resolve.exports。
镜像到 VibeDev 下载服务器
GitHub Pages 是源站;国内访问用 https://download.vibedev.studio/plugin-index/index.json,由 scripts/mirror.mjs 把构建好的 dist/ 发布到下载服务器(站点根目录 /data/vibedev-download/public)。
npm run build
默认只演练:列出文件、远端路径和每一条命令,不做任何改动
node scripts/mirror.mjs --ssh deploy@<server> --identity <私钥> --known-hosts <known_hosts 文件>
确认无误后真正发布
node scripts/mirror.mjs --ssh deploy@<server> --identity <私钥> --known-hosts <known_hosts 文件> --apply
- 连接:ssh 固定使用 BatchMode=yes、StrictHostKeyChecking=yes、给定的 known_hosts 和 IdentitiesOnly=yes,不会自动信任新主机。
- 上传:发布前先确认 dist/index.json 是合法的 format 1。dist/ 以 tar 流经 ssh 上传到 plugin-index.releases/<id>.staging,然后在服务器上逐个文件核对 sha256。
- 切换:把暂存目录改名为正式版本目录,再用一次原子重命名把符号链接 plugin-index 指向它。如果已有的 plugin-index 不是符号链接,脚本在改动任何东西之前就停止。
- 验证:通过 HTTPS 取公开地址,不跟随重定向,要求 HTTP 200、application/json,且字节与 dist/index.json 完全一致。验证失败时自动切回上一个版本。
- 清理:只在 plugin-index.releases/ 里保留最近 --keep 个版本(默认 5),站点根目录下其他内容一概不碰。
- 服务器要求:POSIX shell、GNU coreutils(mv -T、ln -sfn、sha256sum)和 tar。Web 服务器要能跟随该符号链接,并对这个 URL 直接返回 200:DSH 读取索引时拒绝重定向。
索引格式
输出完全遵循 DSH format 1,写出前用 @deepseek-ai/dsh-plugin-market-index 校验:根字段 format、title、description、metadata.categories、metadata.labels、plugins;每个插件有 name、title、description、icon、author、homepage、repository、metadata(category、labels、keywords)、dist-tags.latest、versions(version、publishTimestamp、source: {type: npm}、engines.dsh)。展示字段取自最高的已审核版本的 tarball,可在 plugins.yml 用 display 覆盖标题和描述。图标不超过 16 KiB 时内嵌为 data: URL,更大的发布在 icons/ 并用相对路径引用,所以整个 dist/ 可以原样放到镜像站。
许可
本仓库使用 MIT 许可。scripts/lib/ 中改编自 DeepSeek Harness 参考生成器的代码保留其 MIT 版权声明,见 NOTICE.md。索引中转载的插件名称、描述和图标归各插件所有,按各自许可证使用。
这是什么
VibeDev 维护的社区插件索引:一个 DSH 插件市场索引(format 1) JSON 文件,由本仓库的 plugins.yml 生成,经 GitHub Actions 发布到 GitHub Pages。它只列出 VibeDev 审核过的确切版本。插件发布新版本不会自动出现在索引里;只有有人完成下面的审核清单,并把版本号和它在 npm 上的 integrity 记进 plugins.yml,新版本才会被列出。
插件仍是第三方代码。审核能降低风险,但不是安全保证;索引未签名,因此只通过 https 提供。
VibeDev 如何使用它
VibeDev 使用上游 DeepSeek Harness 内置的插件市场:Host 服务 @deepseek-ai/dsh-plugin-market,以及 Plugins 页面的 Discover 标签页 @deepseek-ai/dsh-client-ui-plugin-market。
- 来源:服务读取 plugin-market 行的 indexes 字段,这是一份按配置档划分的 URL 列表;在 Discover 里编辑来源会写入该配置档的 cordis.patch.yml。上游不配置任何来源;VibeDev 计划把本索引设为默认来源(尚未启用)。
- 读取:Host 拉取时拒绝重定向(请配置最终 URL),超时 15 s,响应体上限 128 MiB,然后在 Worker 中校验严格 UTF-8、JSON 和 format 1,并把合格的文档缓存 10 分钟。任何一处违规都会拒掉整个索引,且只影响该来源。多个来源逐个浏览,从不合并。
- 展示:Discover 卡片显示图标、标题、标签、一行描述、默认版本、作者和发布日期,支持按分类和标签筛选,以及中英文模糊搜索。默认版本是与当前运行的 DSH 兼容的最高稳定版本。
- 安装:Install 先显示来源和信任提示,再打开 Plugins 安装对话框,执行 pluginManager.installBundle("<name>@<version>")。DSH 会再次检查已安装的 manifest(engines.dsh,否则检查 @deepseek-ai/dsh- peers),pnpm 11 会阻止依赖构建脚本,直到用户批准。目前没有升级操作:先卸载,再安装。
- 在 VibeDev 把它设为默认之前,先手动试试:Plugins → More → Experimental plugins → 打开 Custom plugin markets,然后在 Discover 里添加上面的索引 URL。
收录标准
版本必须全部满足以下条件;npm run validate 会检查其中可机器校验的部分:
1. 开源许可证:package.json 的 license 是 OSI 认可的 SPDX 许可证(清单在 scripts/lib/manifest.mjs),且与审核记录一致;包应附带许可证文本(缺文件是警告,需在记录里说明)。
2. 已发布到 npm(registry.npmjs.org)并声明 dsh.bundle。不接受 Git、tarball 或私有来源。
3. 精确版本:每个版本单独审核,并记录其 npm dist.integrity(sha512)。不接受范围(^1.0.0)或标签(latest)。
4. 与 VibeDev 发布的 DSH 版本兼容(target.dsh,目前是 0.2.1-rc.2),Discover 检查和安装时检查都要通过;完全没声明 DSH 的包,必须由审核者在目标版本上跑过(testedOn)。
5. 声明行为:网络主机(* 表示由用户或智能体选择的站点,比如它驱动的浏览器)、文件访问(none/read/write)、DSH 配置访问(none/read/write)、启动的程序都要记录;构建时把它们转成标签 Uses the network、Runs programs、Writes files、Changes DSH settings 和 Install scripts。遥测必须声明;默认开启的第三方遥测需产品负责人批准。
6. 没有未审核的安装脚本:preinstall/install/postinstall 和 binding.gyp 必须各自列在 installScripts 里,否则校验失败;用 npm run inspect -- <name>@<version> --deps 检查依赖树。
7. 体积:解包后最多 20 MiB(policy.maxUnpackedBytes),除非 sizeException 给出理由;依赖要少。
8. 维护者响应及时:记录 issue tracker 或邮箱;仓库未归档,且 90 天内有提交或 issue 回复。安全报告 7 天内无答复可能导致下架。
9. 其他:不能自更新,不能改动其他插件或内置插件,不能在运行时下载并运行未审核代码,不能与 VibeDev 内置功能重复。
添加插件或新版本
六个步骤就能让插件从请求走到用户手里;不需要发布 VibeDev 桌面版。
1. 审核:运行一条命令,npm run review -- <name>@<version> --dsh <built DSH checkout>。已收录插件的新版本会自动与最新收录版本比较;--previous <version> 可另选版本。该命令会:
- 运行静态检查:tarball、来源、依赖树和代码线索;
- 运行安装试用:在临时配置档里执行 installBundle,然后重启,记录子进程、出站连接、凭据读取和注册项;
- 写出 reviews/<name>@<version>.md(中文优先)和 .json。
记录末尾是一份 plugins.yml 草稿:要么是新插件的完整条目,要么是新版本的一条 versions 记录,沿用上一版已审核的能力。
2. 决定:读记录(更新版本时主要看「Changes since」一节),填好 TODO:结论、风险说明、展示文案。把草稿粘进 plugins.yml,运行 npm run validate;只要还有 TODO 没填,校验就会失败。
3. 提交拉取请求:提交 plugins.yml 和 reviews/ 下的记录,然后开一个拉取请求。main 受保护:改动只能通过拉取请求合入,且 Validate 检查必须通过。
4. 合并:Pages 工作流大约 1–2 分钟就能构建并发布 index.json。
5. 镜像:运行 npm run mirror -- --ssh … --identity … --known-hosts … --apply,把它发布到 https://download.vibedev.studio/plugin-index/index.json(见下文「镜像」一节)。
6. 上线:DSH 会缓存索引 10 分钟。之后 Discover 就会显示新插件或新版本,点刷新按钮会立刻重读索引;版本较旧的用户会看到 Update available。前提是 VibeDev 把这个索引当作默认源(计划中),或者用户自己添加了它。
删除只需第 3–6 步:从 plugins.yml 里删掉该版本或整个插件。
审核清单
- [ ] 运行 npm run review -- <name>@<version> --dsh <DSH checkout>,把生成的记录提交到 reviews/ 下。记录涵盖许可证、兼容性、安装脚本、体积、依赖树、代码线索和安装试用。
- [ ] 许可证经 OSI 认证,且与仓库和打包的 LICENSE 一致。
- [ ] dsh.bundle 存在;engines.dsh(或 dsh peers)允许 target.dsh。
- [ ] 包及其依赖树中没有未审核的安装脚本。
- [ ] 体积和依赖数量合理。
- [ ] 读代码,不能只看扫描结果:网络主机、文件写入、DSH 配置写入、子进程、环境变量与凭据读取、eval/动态代码、遥测。
- [ ] 在目标 DSH 的 VibeDev 里安装、启用、使用、禁用、卸载:无报错,无无关配置改动,无残留进程。
- [ ] 维护者联系方式有效,项目仍在维护。
- [ ] 在 plugins.yml 里写完整的审核记录。
- [ ] npm run validate 通过,且合并前拉取请求的 Validate 检查通过。目前只有一位维护者,无需批准;等有了第二位维护者,要求 1 人批准。
提交与申请更新
- 新插件:用插件申请表单,或按拉取请求模板提交拉取请求。
- 新版本:用版本更新表单,或提交拉取请求添加一条 versions 记录。
- 问题与移除:用问题报告表单;漏洞请通过 Security → Report a vulnerability 私下报告。
- PR 上的 CI 会运行单元测试、校验生产列表、用真实 npm 数据跑一次完整构建,并检查两份故意写坏的列表会被拒绝。
列表中的插件发布新版本时
- 绝不自动更新。 索引只保留 plugins.yml 里的版本;Discover 安装的就是那个 name@version。
- 每周一(02:17 UTC)定时工作流运行 scripts/check-updates.mjs,列出比最新已审核版本更新的版本及其事实信息,并开一个或更新一个带 upstream-release 标签的 issue;没有待处理项时关闭该 issue。
- 审核者运行 npm run review -- <name>@<new version>,它会自动与列表中最新的版本对比,所以通常只需读「Changes since」一节。审核者随后在 PR 里加上该版本,保留或删掉旧版本。合并后重新部署 Pages,使用旧版本的用户会看到 Update available。
- 紧急下架:删掉版本或插件并合并;Pages 几分钟内更新,客户端缓存最多 10 分钟。已安装的副本仍会保留,所以要发布下架公告。
仓库结构与命令
文件树和命令见中文部分。审核记录放在 reviews/(每个已审核版本一个 .md 和一个 .json);npm run review 负责写入,校验时若某个列表版本没有记录会给出警告。--pnpm 默认用 VibeDev 自带的 pnpm;DSH_CHECKOUT 和 PNPM_MJS 可以替换 --dsh 和 --pnpm,没有 DSH 检出时记录会注明试运行未执行。
试运行(test/dsh-composition/install-trial.mjs)在临时的 DSH_HOME、用户、APPDATA、TEMP 和 pnpm store 目录中运行。除了入口状态、注册项、子进程、fetch 调用、凭据读取,以及经由其仅限 npm 的代理建立的连接,它还会记录写入的文件和配置档补丁的各行。在 Windows 上,它还会每隔几秒采样整个进程树的监听套接字、直连(非代理)连接和进程,并报告和杀掉最后一次停止后仍在运行的进程。npm run review 会透传这些试运行选项:
| 选项 | 作用 |
| --call "METHOD /path" | 安装后调用一次已注册的路由。 |
| --invoke <service>.<method> | 不带参数调用一次服务方法,比如插件 UI 首次使用时执行的动作。 |
| --approve-builds <package> | 安装因待处理的依赖构建脚本而停下时,回答 Plugins 页面的「Allow these scripts and retry」。 |
| --extra-start-env KEY=VALUE、--extra-start-reset <path under DSH_HOME> | 删除列出的文件,然后带上额外环境变量第三次启动。例如,删掉遥测状态文件,再用 DO_NOT_TRACK=1 启动,检查开关是否生效。 | 需要 Node.js 22.12 或更高版本。四个依赖精确锁定版本:@deepseek-ai/dsh-plugin-market-index(DSH 自己使用的 format-1 校验器,版本与 target.dsh 一致)、semver、yaml、resolve.exports;.npmrc 禁用安装脚本。
镜像到 VibeDev 下载服务器
GitHub Pages 是源站;中国用户读取 https://download.vibedev.studio/plugin-index/index.json。scripts/mirror.mjs 把构建好的 dist/ 发布到下载服务器(站点根目录 /data/vibedev-download/public)。默认是试运行:只列出文件、远程路径和每条命令,不做任何改动。用 --ssh user@host --identity <key> --known-hosts <file> 运行,再加上 --apply 才会发布。
- 连接:ssh 始终带 BatchMode=yes、StrictHostKeyChecking=yes、指定的 known_hosts 文件和 IdentitiesOnly=yes 运行。
- 上传:脚本先检查 dist/index.json 是合法的 format 1。然后把 dist/ 以 tar 归档流式传到 ssh 上的 plugin-index.releases/<id>.staging,并在服务器上校验每个文件的 sha256。
- 切换:把 staging 目录重命名为 release,再用一次原子重命名把 plugin-index 符号链接指向它。如果已有的 plugin-index 不是符号链接,本次运行在改动任何东西之前就停止。
- 验证:通过 HTTPS 抓取公开 URL,不跟随重定向,要求 HTTP 200、application/json,且字节与 dist/index.json 完全一致。失败时把链接切回上一个 release。
- 清理:保留最新的 --keep 个 release(默认 5 个),只在 plugin-index.releases/ 内操作;站点根目录下的其他内容一概不动。
- 服务器要求:POSIX shell、GNU coreutils(mv -T、ln -sfn、sha256sum)和 tar。Web 服务器必须跟随符号链接,并直接以 200 响应这个 URL,因为 DSH 读取索引时拒绝重定向。
索引格式
输出遵循 DSH format 1,写入前用 @deepseek-ai/dsh-plugin-market-index 校验。展示字段取自审核通过的最高版本的 tarball,plugins.yml 里的 display 可以覆盖标题和描述。不超过 16 KiB 的图标内联为 data: URL;更大的图标发布到 icons/ 下并以相对路径引用,因此 dist/ 可以原样复制到镜像。
许可证
MIT。scripts/lib/ 中的代码改编自 DeepSeek Harness 参考生成器,保留其 MIT 声明;见 NOTICE.md。索引中重新发布的插件名称、描述和图标归各自插件所有,按其许可证使用。预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
VibeDev-Si/vibedev-plugin-index
浏览经审核的插件精确版本并一键安装
相关插件 · 市场 / 管理
插件精选列表awesome-dsh-plugin/awesome-dsh-plugin
DeepSeek Harness(dsh)插件精选列表
★ 22,225未汉化DSH
73.6
新词雷达zhuyansen/new-term-radar
new-term-radar新词雷达
★ 2,049已汉化MCP
72.8
插件生态导航0xsline/awesome-deepseek-harness
安装 贡献指南 DeepSeek Docs 公开插件目录 Issues
★ 1,188已汉化DSH
72.6
技能注册中心iflytek/skillhub
企业级开源智能体技能注册中心——发布、发现并管理组织内可复用的技能包。
★ 5,370已汉化DSH
71.9
插件市场目录imsai-sh/awesome-deepseek-harness-plugins
面向 DeepSeek Harnessdsh生态的社区插件目录,共收录 13941 个插件含 PR 收录与…
★ 355已汉化DSH
71.8
插件精选清单Anil-matcha/awesome-dsh-plugin
DeepSeek Harnessdsh精选指南——DeepSeek…
★ 1,013已汉化DSH
71.7
这是你的仓库?认领条目