kun2-5code/dsh-plugin-template

DeepSeek Harness(dsh)插件入门模板:包含六种插件形态、十四个浏览器界面,以及一个可安装包中的演示斜杠命令。

Project Overview项目介绍

This is a ready-to-run starter template built exclusively for creating native DeepSeek Harness (DSH) plugins. It includes working examples of six of the most common plugin patterns for DSH, from config schema definition to tool registration, event handling, service provision, permission hooks, and client-side UI registration across 14 different UI surfaces. It strictly follows the official DSH bundle distribution specification, with a complete pre-configured project structure that lets developers start building their own custom plugins immediately after cloning.

The template is intended for new plugin developers learning DSH plugin development, as well as experienced developers who want to quickly bootstrap a new DSH plugin project. Every common extension point is covered with working, commented code, so you can see exactly how each feature works and adapt the patterns to your own needs. To start working from the template, you just clone the repository, install dependencies with pnpm, and run the build script to get a ready-to-install output bundle.

The project is released under the permissive MIT license, so it can be used for both personal and commercial projects free of charge. It requires a working Node.js environment and the pnpm package manager to develop and build plugins. You can test your plugin locally during development using the dsh web --patch command, and publish completed plugins via npm, tarball archive, or direct Git installation per DSH's official guidelines.

这是一个专门为开发 DeepSeek Harness(DSH)原生插件准备的开箱即用的启动模板。它在一个可安装的最小包中演示了六种最常见的插件开发形态,包括配置定义、工具注册、事件处理、服务提供、钩子拦截和浏览器端 UI 注册,完全遵循官方 DSH 捆绑包分发规范。模板自带完整的项目结构和预配置的构建设置,开发者可以直接复刻或克隆它来开始开发自己的插件。

模板涵盖了插件开发从后端逻辑到前端界面的全流程示例,后端包括配置模式定义、模型可调用工具注册、类型化事件声明、服务类插件编写、工具调用权限钩子的实现,前端则演示了14种不同界面位置的 UI 组件注册方式,从设置页的配置卡片到会话输入框旁的按钮都有示例。目标用户是想要学习 DSH 插件开发或者快速启动新插件项目的开发者。

本项目使用 MIT 许可证开源,无任何使用成本。它依赖 Node.js 运行环境和 pnpm 包管理器,开发时可以使用 DSH 的本地补丁开发命令 dsh web --patch 加载本地源码进行调试。打包发布支持 npm 发布、tarball 包安装和 Git 直接安装三种方式,所有开发步骤都关联了官方 DSH 开发文档便于参考。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 8 stars - very few users, little community feedback星标只有 8,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile demo add github:you/dsh-plugin-template

把 kun2-5code/dsh-plugin-template 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-plugin-template

English | 中文

A ready-to-run, ready-to-install starter template for DeepSeek Harness (dsh) plugins. It demonstrates the most common plugin shapes in one minimal installable bundle:

  • Config — a Config interface plus a Schemastery schema whose live fields carry .volatile(), so the Plugins page can edit them without a restart (docs)
  • Tool — ctx.tools.register(defineTool(...)) registers a model-callable tool with a card-tagged render intent (docs)
  • Events — ctx.on / ctx.emit with declaration merging for typed events (docs)
  • Service — a class-form plugin that provides a service to other plugins (docs)
  • Hook — a tools/pre-execute permission gate that denies tool calls by config (docs)
  • Browser half (client) — src/client/ registers browser UI on fourteen surfaces (index: docs/ui-surfaces.md): a configuration form on the Plugins page, a sidebar footer action, an input dock strip above the composer, a shell overlay, a header utility badge, input tool-row buttons (left/right), a custom command row for /dsh-demo, a General settings row, a Plugins settings tab, a settings header action, a session header action, a composer dock strip, and per-message actions on AI replies — plus a presentResult render intent on the greet tool.

The template follows the official bundle distribution model: the package declares dsh.bundle plus cordis.patch.yml, and dsh plugin add activates it as a config layer.

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev dsh-devquest 下一个 Next dsh-paper-reader →