dshbase

Plugin directory / Developer / dsh-software-tools

dsh-software-tools

Verified · install-tested on dsh AllenLogo

✓ Actively maintained Builds on 1 official DSH packages

View on GitHub ↗ ← Back to plugin directory

0Stars
0Forks
0Open issues
—Language
2026-08-21Last push
Cross-platformPlatform

What it does

DSH 侧边栏【软件工具】管理器:勾选本机 WSL/Windows 软件工具并注入模型系统提示,随插件自带 add-software-tool 技能。Sidebar software-tools manager for DeepSeek Harness Web.

✅
Our take
Works — verified, early-stage project

DSH 侧边栏【软件工具】管理器:勾选本机 WSL/Windows 软件工具并注入模型系统提示,随插件自带 add-software-tool 技能。Sidebar software-tools manager for DeepSeek Harness Web. It installs cleanly and boots without issues in our testing. It's early-stage but functional.

“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.

README

dsh-software-tools

Sidebar 🔧 软件工具 manager for DeepSeek Harness Web. Maintain a curated inventory of local software — WSL CLI tools and Windows apps reachable via interop — and check the ones you want the model to know about. The checked set is injected into the model's system prompt as a compact section, so every session knows what software exists on this machine and how to call it. 中文说明见 README.zh.md。

panel

Problem

A model (e.g. deepseek-v4-flash) has no idea that you have IDM, ComfyUI, Obsidian, aria2… installed, let alone how to invoke each one. This plugin turns "local software inventory + invocation recipes" into a checkable, persisted, auto-injected system-prompt section: the model reads the usage field and runs the ready-made command.

Features

Capability Detail
🔧 Sidebar panel Tools grouped by category; toggling takes effect on the model's very next request — no restart
📥 Built-in + user catalog merge Portable built-in catalog (aria2 / proxy / playwright / uvx / interop / zstd …); user entries in catalog.json override built-ins by id
🧠 System-prompt injection Checked tools become a compact section on every assembly (systemPrompt.section, same seam as persona / plan-mode)
🛠 Bundled skill Ships add-software-tool: the model learns to write newly installed software into the user catalog — no rebuild, no restart
🔒 Loopback RPC Panel ↔ host over a loopback-pinned RPC channel; reads local JSON only

Install

dsh plugin --profile web add dsh-software-tools

If your pnpm supply-chain policy blocks dsh plugin add, install manually: copy the package into ~/.dsh/profiles/web/node_modules/ and append to ~/.dsh/profiles/web/cordis.patch.yml:

- insert:
    - id: dsh-software-tools
      name: dsh-software-tools
      config: {}
- insert:
    - id: software-tools-skill
      name: '@deepseek-ai/dsh-skill-filesystem'
      config:
        providerName: software-tools-skill
        includeDefaultRoots: false
        customSkillDirs:
          - !!js process.getBuiltinModule('node:path').join(process.getBuiltinModule('node:path').dirname(process.getBuiltinModule('node:module').createRequire(baseUrl).resolve('dsh-software-tools/package.json')), 'skills')

Restart dsh web and hard-refresh (Ctrl+Shift+R). A 🔧 软件工具 entry appears in the sidebar.

Configuration

All optional; zero-config by default:

Field Default Meaning
settingsDir $DSH_HOME/software-tools State directory holding selection.json + catalog.json

State files

File Purpose
<settingsDir>/selection.json {"ids": ["aria2", …]} — current selection
<settingsDir>/catalog.json {"tools": [entry…]} — user catalog; same id overrides a built-in

Entry fields: id ([a-z0-9-]{1,32}, unique), name, category (download/proxy/media/browser/knowledge/runtime/model/misc), desc (≤40 chars), usage (1–2 actionable, directly executable lines).

Adding a tool

Tell the model "add XXX to 软件工具" — the bundled add-software-tool skill researches the software and writes it into catalog.json (no rebuild, no restart; visible on panel refresh). You can also edit catalog.json by hand.

How it works

  • Host half (src/index.ts): registers systemPrompt.section (software-tools, order 200) rendered from the current selection, plus the loopback RPC channel / _dsh-software-tools (list / set).
  • Browser half (src/client/): DOM-injected sidebar entry + panel (same selector pattern as the linxin666 plugin family), built by tsdown into a lazy-CJS __ModuleLoader__ bundle (React comes from the host shell).
  • Skill (skills/add-software-tool/): mounted via dsh-skill-filesystem's customSkillDirs, scoped to the plugin's own directory so user skill roots stay untouched.

License

MIT

Install

🧩 Let your agent install it (recommended)

Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:

dsh plugin add dshbase-catalog

Then say "install dsh-software-tools for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.

This plugin is GitHub source (not published to npm) — install it straight from the repo:

Web profile:

dsh plugin --profile web add github:AllenLogo/dsh-software-tools

Headless (CLI) profile:

dsh plugin --profile headless add github:AllenLogo/dsh-software-tools

Test report

Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.

Security: not yet scanned — our daily static scan will cover it shortly.

Share this badge

More in Developer

Browse all 7819 plugins →