Back to directory

dsh-tool-plus

In a curated listMaintenance: Active

xiaoso456/dsh-tool-plus

Replace DSH shell/filesystem/search tools with persistent bash and structured read, write, edit, grep, glob, and image tools.

View on GitHub
$ dsh plugin --profile web add --allow-build=@xiaoso/dsh-tool-plus --allow-build=koffi @xiaoso/dsh-tool-plus

16

stars

1

forks

TypeScript

Language

MIT

License

2026-08-27

Created

2026-11-13

Last push

MIT DSH plugin that swaps the official tool set for a persistent bash, structured read, atomic write and multi-format edit, with optional AST tools and two presets.

DSH integration

Native runtime

Author-claimed

Safety audit

Unaudited

Last verified

2026-11-12

License

MIT

01What can it help you accomplish?

  • Give the DSH agent a stateful shell and precise file reads instead of one-shot commands

    A persistent bash where `cd` and `export` survive across calls, compressed verbose logs, head/tail output with the full text kept on disk, and automatic backgrounding of long commands

    DSH users whose sessions spend most of their time in the shell and file tools

  • Edit and write files with atomic writes, patch formats and a diff back

    Atomic `write` returning a diff, `edit` with replace / patch / hashline / apply-patch, multi-range edits, uniqueness checks and whitespace-tolerant matching

    Users who want fewer failed edits on large files and archives

  • Ship a Tool Plus preset alongside the official standard and PTC presets

    Two presets (`@deepseek-ai/dsh-agent-preset` declarations) installable from the preset list, editable from Tool Plus → Presets with minimal-update, align-to-template, restore-bundled and view-diff actions

    Teams standardising which tools a DSH profile exposes

02How to install into DeepSeek Harness

Prerequisites

  • `dsh` CLI installed globally (`npm i -g @deepseek-ai/dsh`) and Node.js ≥ 24.9
  • pnpm ≥ 10.4, because `--allow-build` must approve the install scripts of this package and `koffi`
  • Git Bash on Windows, as the bash execution environment
  • Written for DeepSeek Harness `dsh` v0.2.2-rc.1, which the README labels a pre-release whose interfaces may change

Installation steps

  1. 01

    Web profile: `dsh plugin --profile web add --allow-build=@xiaoso/dsh-tool-plus --allow-build=koffi @xiaoso/dsh-tool-plus`

    $ dsh plugin --profile web add --allow-build=@xiaoso/dsh-tool-plus --allow-build=koffi @xiaoso/dsh-tool-plus

  2. 02

    Desktop profile: the app owns the profile, so `cd ~/.dsh/profiles/desktop` and run `pnpm add --allow-build=@xiaoso/dsh-tool-plus --allow-build=koffi @xiaoso/dsh-tool-plus`

  3. 03

    If pnpm is too old for `--allow-build`, add `allowBuilds:` entries for both packages to the profile's `pnpm-workspace.yaml`, or run `pnpm approve-builds --all` in the profile directory, then retry

Verify the integration

Not specified by the author

03DSH integration and capability boundaries

DSH integrationNative runtime

DSH plugin (ported from the Oh My Pi kernel) that takes over the official bash / pwsh / file / search tools, plus optional `ast_grep` / `ast_edit` and two agent presets declared through the plugin's patch layer

  • Persistent bash and safe delete

    Shell commands from the agent→State kept across calls, compressed logs, head/tail truncation with full output on disk, auto-backgrounding, and `rm` that moves files to the system trash

    Trash locations differ per platform; network drives have no trash, macOS needs 10.12+, and some Linux desktops cannot see the entry
  • Structured `read`

    A path, optionally with `:N-M`, `:raw` or multiple ranges→Line-range reads, structural summaries for large code files, direct reads of zip/tar, SQLite, notebooks and PDF, image reads with auto-scaling, and web fetch that renders SPAs in a local browser

    Reading a page may launch a local browser for JS-rendered sites
  • Atomic `write` and multi-format `edit`

    File content or an edit instruction→Atomic writes that return a diff, patch-style writes into archives and SQLite, and edits in replace / patch / hashline / apply-patch formats

    Multi-range edits are applied with uniqueness checks and whitespace-tolerant matching
  • grep / glob and optional AST tools

    A pattern or filename glob→Full-text search and filename matching with mtime sorting, context lines and configurable ignore rules; optional `ast_grep` / `ast_edit` for syntax-tree search and rewrite

    `ast_grep` / `ast_edit` are off unless enabled in settings
  • Preset management

    Tool Plus → Presets in the settings page→Minimal update, align to template, restore bundled declarations, or view the diff before writing

    Writes go through the host's `ctx.configEditor`, so they inherit profile locking, concurrency protection, atomic writes and rollback

04Who is it for? When not to use it?

Good for

  • DSH users whose sessions spend most of their time in the shell and file tools
  • Users who want fewer failed edits on large files and archives
  • Teams standardising which tools a DSH profile exposes

Not for

  • The README recommends running the plugin under `danger-full-access`, because sandbox mode can wrongly block file writes.
  • On SWE-bench Multilingual on Linux the plugin matched the official solve rate but used more total tokens per task and more prompt tokens; the README explicitly does not promise token savings or better performance on Linux.
  • pnpm ≥ 10.4 is needed for `--allow-build`; without the flag on pnpm 11 the install fails with `ERR_PNPM_IGNORED_BUILDS`. The plugin targets `dsh` v0.2.2-rc.1, a pre-release whose interfaces may change.

05Compatibility, maintenance and safety notes

  • Safe `rm` moves files to the system trash, and the trash is not uniform: network drives have none, macOS requires 10.12+, and some Linux desktop environments cannot show the entry, so restore from the recorded location.
  • The README recommends running the plugin under `danger-full-access`, because sandbox mode can wrongly block file writes.
  • On SWE-bench Multilingual on Linux the plugin matched the official solve rate but used more total tokens per task and more prompt tokens; the README explicitly does not promise token savings or better performance on Linux.
  • pnpm ≥ 10.4 is needed for `--allow-build`; without the flag on pnpm 11 the install fails with `ERR_PNPM_IGNORED_BUILDS`. The plugin targets `dsh` v0.2.2-rc.1, a pre-release whose interfaces may change.
  • There is no separate `pwsh` tool — the persistent `bash` covers shell work, which matters on Windows where Git Bash is the recommended environment.
2026-08-272026-11-07tool-plus-v0.1.20

MIT source; every claim here comes from the repository README at the recorded commit, with no independent safety audit.

06Frequently asked questions

How do I install Tool Plus on a Web profile?

`dsh plugin --profile web add --allow-build=@xiaoso/dsh-tool-plus --allow-build=koffi @xiaoso/dsh-tool-plus`. The two `--allow-build` flags approve the install scripts of this package and `koffi`, and need pnpm ≥ 10.4; on pnpm 11 the install fails without them.

Why is the desktop install different?

The desktop app owns its profile, so `dsh plugin --profile desktop` is refused. Enter the profile directory (`cd ~/.dsh/profiles/desktop`) and run `pnpm add --allow-build=@xiaoso/dsh-tool-plus --allow-build=koffi @xiaoso/dsh-tool-plus` there.

Does it actually save tokens compared with the official tools?

Not according to its own benchmark. On SWE-bench Multilingual on Linux the solve rate matched, `bash` calls returned fewer tokens, but total tokens per task and system-prompt tokens were higher, so the README says it cannot promise token savings or better performance on Linux.

What does safe `rm` do?

It moves files into the system trash instead of deleting them: the Recycle Bin on Windows, `~/.Trash` on macOS, `$XDG_DATA_HOME/Trash` on Linux. Network drives have no trash, macOS needs 10.12+, and some Linux desktops cannot show the entry. Use `command rm` when you really want deletion.

Which DSH version and environment does it target?

DeepSeek Harness `dsh` v0.2.2-rc.1 — a pre-release the README warns may change — with Node.js ≥ 24.9, `dsh` installed globally, Git Bash on Windows, and the plugin running under `danger-full-access` as recommended.

08Data and sources

  • Author-claimedgithub.comb66e7fc473c9…

    DeepSeek Harness 基础工具增强:持久 bash、结构化 read、多模式 edit、原子 write、全文搜索、图像直读,一个插件全覆盖。基于 [Oh My Pi](https://github.com/can1357/oh…

  • Author-claimedgithub.comb66e7fc473c9…

    | **Tool Plus 标准增强版** | 官方 standard | 官方标准模式全部能力 + 文件/Shell 工具集换成本插件 |

This page is generated from the project’s public documentation, repository metadata and a structured parse of DSH Plugins; last verified on 2026-11-12. Found an error? Submit a correction.

🏆

Best DeepSeek Harness Plugins

Twelve plugins worth installing first — picked from the whole catalog, across every category.

DSH Plugins is an independent community directory of DeepSeek Harness plugins. Not affiliated with or endorsed by DeepSeek. Third-party plugins are not security-audited — review the source before installing.

New DeepSeek Harness plugins, weekly. No spam.