Development & Runtime

dsh-plugin-dev

baihejiangnan/dsh-plugin-dev · ★ 0

baihejiangnan

Local development dashboard for DeepSeek Harness plugins with explicit project registration and safety-confirmed GitHub workflows.

README body is shown in Chinese.

License
MIT
Added
2026-08-16
Maintenance
active
Install kind
github
Manifest details
Manifest status
Declared
Manifest path
package.json#dsh
Manifest checked
2026-08-19
Lifecycle scripts
None found

Static manifest checks report declarations only; they are not compatibility or security review.

安装

dsh plugin --profile web add github:baihejiangnan/dsh-plugin-dev

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

For install and environment setup, plus plugin development tutorials, see DSH community docs ↗

README

Source README · body: zh · Read Chinese README

Table of contents
  1. 功能
  2. 面板位置
  3. 安装
  4. 更新与卸载
  5. 依赖
  6. 目录结构
  7. 说明
  8. License

本地插件开发管理面板(DeepSeek Harness Web 插件)。帮助 DSH 用户开发、上传和管理自己的插件。

功能

功能 说明
本地插件列表 扫描各 profile 的 package.json,将开发根目录中通过 file: / link: 安装的包列为候选;只有用户主动加入的项目才进入开发管理
主动加入/移出 从“待加入项目”明确加入开发管理,也可随时移出;登记使用路径真实化结果,不修改被管理插件
打开资源管理器 使用 Harness 官方 workspace 服务,在系统文件管理器中打开插件源码目录
讨论上传 GitHub 在插件工作区创建安全确认会话,预填仓库名、可见性、描述和风险约束;插件本身不执行 git / gh 命令
讨论更新 已有关联 remote 的插件会开启更新检查会话;模型须先只读检查变更和风险,等待用户明确确认后才可操作
继续开发 在该插件目录开启工作区会话,并发送「继续开发」提示词开始对话
相似度(预留) 计划中的后续功能:GitHub 上相似插件的相似度检测

面板位置

设置 → 本地开发(与「插件」同级的独立设置条目,排在设置导航末尾)。

安装

dsh plugin --profile web add link:<本目录绝对路径>

安装后重启 DSH 并硬刷新 Web 页面。

也可以直接从 GitHub 安装:

dsh plugin --profile web add "github:baihejiangnan/dsh-plugin-dev"

更新与卸载

# 更新:移除旧安装后重新获取
dsh plugin --profile web remove @baihejiangnan/dsh-plugin-dev
dsh plugin --profile web add "github:baihejiangnan/dsh-plugin-dev"

# 卸载
dsh plugin --profile web remove @baihejiangnan/dsh-plugin-dev

依赖

  • 创建开发对话依赖宿主的 workspaces / sessions 服务(Web 组合自带)。
  • 插件不会直接运行 Git 或 GitHub CLI。若用户在会话中检查风险后明确授权模型上传,实际执行仍依赖本机 Git,以及已安装并登录的 GitHub CLI(gh auth login)。凭据由 gh 自身管理。

目录结构

lib/index.js       宿主端:只读 /api/plugin-dev/list 路由
lib/client.js       客户端:设置面板(settings.plugins.tab 槽位)
cordis.patch.yml    挂载声明(bundle patch)
package.json        包与 dsh.client 元数据

说明

  • 候选插件必须同时满足:在 profile package.json 中通过 file: / link: 声明、拥有有效 package.json,并且真实路径位于开发工作区内。默认开发工作区为 ~/Documents/herness。
  • 候选项目不会自动被认定为用户自己的开发项目。用户必须在面板的“待加入项目”中明确点击“加入开发管理”,之后才会显示完整开发操作。
  • 登记表保存在 DSH_HOME/plugin-dev/projects.json(默认 ~/.dsh/plugin-dev/projects.json)。移出管理只删除登记,不删除源码、不卸载插件。
  • 扫描和登记均使用 realpath 解析符号链接 / Windows junction 后再验证开发根目录,从而防止用根目录内的链接指向外部项目。
  • 如需配置多个开发工作区,可设置 DSH_PLUGIN_DEV_ROOTS,Windows 下使用分号分隔多个绝对路径。
  • 上传和更新属于高风险操作:可能泄露敏感文件、发布未完成修改、选错仓库可见性/owner/remote,或造成错误提交与推送。面板只负责创建带安全约束的对话,不会自动提交、推送或创建仓库。
  • 安全确认提示词要求模型先进行只读检查、展示拟执行步骤,然后停止并等待用户在会话中明确确认。最终授权和执行结果仍需用户自行审阅。
  • 功能三(相似度)尚未实现,仅作为后续开发点保留。

License

MIT