Back to home@abworks-dev

dsh-plugin-lab

Workshop and lab for developing, testing, and maintaining DeepSeek Harness Cordis plugins.

Stars
0
Language
JavaScript
Created
Sep 1, 2026
Updated
Sep 1, 2026

Introduction

DSH Plugin Lab

DSH Plugin Lab 是用于开发、测试和维护 DeepSeek Harness(DSH)Cordis 插件的 workshop / lab。仓库集中管理多个插件、可复制模板、Agent skill、测试脚本和维护文档。

当前状态:early development / developer preview。本项目不是 DeepSeek 官方项目,也不代表官方背书。

目录结构

plugins/                       # 正式插件,每个插件独立目录
 templates/minimal-tool/       # 最小可复制 TypeScript 插件模板
skills/                        # Agent 可复用开发技能
examples/                      # 使用示例和复现材料
docs/                          # 开发、测试、发布和兼容性文档
scripts/                       # 仓库级检查脚本
tests/                         # 仓库级 Node.js 测试
.github/workflows/             # CI

pnpm-workspace.yaml 只将 plugins/*templates/* 视为 workspace package;普通文档目录不会被 pnpm 当作包处理。

快速开始

环境建议为 Node.js 22 或更高版本和 pnpm。当前 checkout 读取到的基线见 docs/compatibility.md

pnpm install
pnpm check
pnpm typecheck
pnpm build
pnpm test

创建新插件

templates/minimal-tool 复制一个独立目录,修改 package.json 的包名,入口的 name,工具名以及 cordis.patch.yml 的 plugin row id / name。完整流程见 docs/development.md

模板使用 defineToolparametersoutput.schemaoutput.renderexecute,并通过 inject: ["tools"] 声明工具注册服务。

安装到 DSH profile

在隔离 profile 中执行插件目录的 pnpm pack,再使用当前 DSH CLI 的本地包安装命令:

pnpm pack
# dsh plugin add .\your-plugin-0.1.0.tgz

不同 DSH 版本的 CLI 参数可能不同,请以 dsh plugin --help 和目标 profile 的实际日志为准。安装后验证 patch 被载入且工具已出现在工具注册表中。

安全说明

安装第三方插件前先审查源码、package.json scripts 和传递依赖。安装脚本可能执行任意代码。不要提交 API key、cookie、session、DSH_HOME、profile 或个人配置;优先使用隔离 profile,并固定 Git commit 或明确的 npm 版本。

兼容性

模板依赖版本基于本机 DSH checkout 的实际 package metadata 固定。Loader、profile activation 和 tarball smoke test 尚未在本仓库中自动完成,未验证内容会在兼容性文档中标记为 TODO。

后续规划

  • 增加第一个真实插件及其独立测试。
  • 补充真实 Loader / profile activation smoke test。
  • 建立每个插件的 DSH 版本兼容矩阵和发布检查清单。
  • 在不暴露凭据的前提下完善隔离 profile 测试工具。