deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:hu568/dsh-plugin-pack-memory-browser
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
一组可被 DSH 插件包市场发现的插件分发清单,遵循
DSH Plugin Pack Schema v1
(清单文件 dsh-plugin-pack.json,schemaVersion: 1)。
| 插件 | 管什么 | 装完你会得到 |
|---|---|---|
@dsh-external/dsh-persona-memory |
记忆:角色设定 + 长期记忆 | memory、persona 两个工具;角色/记忆每轮自动注入;右侧栏管理面板 |
@dsh-external/dsh-browser-use |
浏览器控制:AI 直接操作浏览器 | browser_* 工具集(ARIA 快照优先的导航/点击/输入/截图/多标签);右侧栏实时投屏面板 |
requires),装哪个、先装哪个都行。playwright-core ^1.56.1(浏览器插件)、
schemastery(记忆插件)。除此之外无网络要求。cordis >=4.0.0-rc <5、@deepseek-ai/dsh-tools >=0.0.1-rc <2;
实测于 DSH 0.1.5-rc.1 ~ 0.1.7-rc.2。清单的 spec 是 github:<owner>/<repo> 形式,DSH 的插件管理器可以直接消费:
plugin_manager action=install_bundle target="github:hu568/dsh-plugin-persona-memory"
plugin_manager action=install_bundle target="github:hu568/dsh-plugin-browser-use"
命令行等价形式(桌面端 Electron profile 由应用独占管理,请用插件管理器或「设置 → 插件」):
dsh plugin --profile <profile> add github:hu568/dsh-plugin-persona-memory
dsh plugin --profile <profile> add github:hu568/dsh-plugin-browser-use
plugins/ 下放着与上述仓库同版本的 .tgz,不需要 GitHub、不需要源码树,
每个 tarball 都能单独安装,也已随包分发 lib/,安装时不需要授予任何构建脚本权限:
# 先取本包目录的绝对路径(相对路径会被 pnpm 按 profile 目录解析,指到错的位置)
dsh plugin --profile <profile> add "D:\path\to\dsh-plugin-pack-memory-browser\plugins\dsh-external-dsh-persona-memory-0.1.2.tgz"
dsh plugin --profile <profile> add "D:\path\to\dsh-plugin-pack-memory-browser\plugins\dsh-external-dsh-browser-use-0.1.1.tgz"
安装后这两个包会被追加进 profile 的 dsh.profile.bundles,各自的 cordis.patch.yml
作为组合包层生效。配置层(cordis.yml / cordis.patch.yml)通常即时生效;
但插件代码(lib/*.js)改动必须完全重启 DSH —— HMR 默认不监听
node_modules(root: [] + ignored: ["**/node_modules", …]),且 Node 的 ESM
loadCache 会按 URL 缓存已 import 的模块,仅「禁用再启用」不会重读磁盘。
(persona-memory 0.1.1 → 0.1.2 修的就是这个:0.1.1 的提示词段落未关宿主插值,
记忆里出现 {{变量}} 会让整个 turn 崩。)
验证:
dsh --profile <profile> --dump-config # 应出现以包名为标题的层
卸载:
dsh plugin --profile <profile> remove @dsh-external/dsh-persona-memory
dsh plugin --profile <profile> remove @dsh-external/dsh-browser-use
卸载不会删除插件写入的数据目录($DSH_HOME/memory、$DSH_HOME/personas、
$DSH_HOME/browser-use),需要时手动清理。
更新时注意:DSH 通过 profile 依赖差分识别「这次装的是哪个包」。若 tarball 内容变了但安装 规格字符串没变,会报
ambiguous-install;请先remove再add,或让文件名/版本号变化。
Schema:dsh-plugin-pack.json 的 schemaVersion 为 1,字段 id / name / version /
description / license / plugins[](每项含 id、name、kind、spec、repository)。
本包形态:spec 为远程安装规格(github:…),随包 plugins/*.tgz 只是离线副本;
两者版本一致,由下面的自检脚本核对。
规范的仓库 topic:dsh-plugin、dsh-plugin-pack。
本地自检:
node scripts/validate.mjs
它校验 Schema v1 字段、id 唯一性与格式、spec 形态及远端仓库命名、随包 tarball 的
存在性,并解开每个 tarball 核对里面的 name / version / license 与清单是否一致。
本插件包(清单、README、脚本、目录结构)采用 MIT License,全文见 LICENSE,
版权人 hu568(https://github.com/hu568)。目录结构参照的规范仓库
baihejiangnan/dsh-plugin-pack 同为 MIT。
两个插件本体同为 MIT,各自仓库内附 LICENSE;dsh-browser-use 另附 NOTICE,
标注其操作范式移植自 zai-org/ZCode(Apache-2.0)。
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: dsh-plugin-pack。