DSH Plugins Marketplace

DSH Plugins

Plugins

/

dsh-preset-kit

M

dsh-preset-kit

Discovered

DSH 插件:把 agent preset 作为插件包发布——软链接安装、热更新、归属登记、干净卸载 | Publish DeepSeek Harness agent presets as plugins: symlink installs, hot reload, ownership records, clean uninstall

Machine translated

dsh-preset-kit

Publish agent presets into a DeepSeek Harness home: copy installs refreshed on every boot, owner tracking, and clean uninstall.

Why

dsh treats presets as local files: a preset is a directory under $DSH_HOME/.agent-presets/<id>/ holding agent.cordis.yml (+ optional preset.yml). Bundles cannot add preset roots — composeProfile replaces the agent-presets row's roots with the shipped root at the top overlay — so a plugin that ships a preset has to write into the user root itself.

This kit is that shared piece: publish, conflict rules, ownership records, and uninstall, so every preset-carrying plugin does not reinvent it.

Hot reload vs. boot refresh

  • dsh-agent-presets re-reads its roots on every list()/resolve(), so a preset that appears in the user root is visible immediately — no restart.
  • dsh's preset scanner does not follow symlinks (readdir file types + isDirectory()), so the default mode is copy. Republish on every plugin boot (the natural apply() cadence) to refresh the copied preset from its source — upgrading the plugin and restarting dsh updates the preset.
  • symlink mode exists for tooling that consumes the user root itself, but a symlinked preset is invisible to dsh.

API

import { publishPresetSync } from 'dsh-preset-kit'

// In a Cordis plugin apply():
const undo = publishPresetSync({
  id: 'minimal-web',                    // /^[a-z0-9][a-z0-9-]*$/
  dir: new URL('./presets/minimal-web/', import.meta.url).pathname,
  owner: 'dsh-minimal-web',             // your package name
})
ctx.effect(() => undo, 'preset-publish')

Async variants for scripts: publishPreset, unpublishPreset, listPublished. dshHome defaults to $DSH_HOME, then ~/.dsh.

Ownership rules

  • Publishing into an id already published by the same owner replaces it.
  • Publishing into an id published by a different owner throws.
  • Publishing into a preset directory the user authored by hand (no publisher record) throws — never overwrite a person's work.
  • unpublishPreset removes only its own publication; the undo function is safe to run after a manual rm.

Records live in $DSH_HOME/.agent-presets/.publishers/<id>.json.

Comments

Loading…

Similar plugins

dsh_plugin_refresh

by lixiaohao001

DSH 插件:装完即可用、无需重启——检查已安装组合、就地完成激活并热重载插件模块 | Post-install plugin activation and in-place hot refresh for DeepSeek Harness

Manifest valid

★ 0

MIT

JavaScript

Oct 11, 2026

dsh plugin --profile web add dsh_plugin_refresh

by KouzakiUmi

DeepSeek Harness 插件:按 Agent preset 限制每个 Agent 可见的工具,保留全局 provider 挂载;基于 agent/created 与 ctx.tools.restrict()。

Manifest valid

★ 0

MIT

JavaScript

Oct 19, 2026

dsh plugin --profile web add dsh-preset-tool-guard

by Asteroid0449

Agent 专用的 DSH 插件检索、审计、安装与验证工具桥;不提供可视化市场界面。

Tools & CapabilitiesDevelopment & InfrastructureManifest valid

★ 0

MIT

JavaScript

Aug 21, 2026

dsh plugin --profile web add dsh-agent-plugin-research

by liceses

DeepSeek Harness 插件:一键安装「极简模式 (Git Bash)」agent preset —— 把 DSH 自带极简模式中的 bash 调用映射到 Git for Windows 的 bash(MSYS),让 Windows 上的极简模式真正可用。

Agent presetsManifest valid

★ 132

MIT

JavaScript

Oct 7, 2026

dsh plugin --profile web add @icelily/dsh-gitbash-preset

by joinsnow-star

给 DeepSeek Harness 的 按命令代理:Agent 自己决定哪条 shell 命令走代理,插件负责安装并托管它所需要的代理内核 —— 不依赖你机器上已装的任何代理软件。

Manifest valid

★ 0

↓ 475/wk

JavaScript

Sep 12, 2026

dsh plugin --profile web add dsh-agentic-proxy

by KYinCode

DeepSeek Harness (dsh) 插件热管理器:装一次、重启一次,之后装插件、卸插件、升级插件全部即时生效,不用再重启。 | A plugin that makes installing, removing and upgrading DeepSeek Harness (dsh) plugins take effect instantly — restart once, then ne

Development & InfrastructureManifest valid

★ 9

MIT

JavaScript

Sep 22, 2026

dsh plugin --profile web add dsh-hot-installer