dsh-ops
Native file and process tools for Windows and Linux.
Version 0.5.4 of dsh-ops, last published 2026-11-11; the install command and the range come from its own manifest.
Install
dsh plugin add dsh-ops writes one dependency line into the profile manifest; pnpm then unpacks it under $DSH_HOME/profiles/<name>/node_modules.
dsh plugin --profile web add dsh-opsCompatibility
engines.dsh in dsh-ops declares >=0.2.2-rc.1 <0.2.3-0; run dsh --version and compare it, because outside that range the CLI skips the plugin at boot and prints the requirement instead of booting.
If two plugins fight
Requires dsh >=0.2.2-rc.1 <0.2.3-0, and ships native binaries per platform. On a 0.2.1 CLI it is skipped at boot; beside dsh-windows-mcp you have two native Windows tool providers registering overlapping capabilities.
Who made it
Author: T-Auto. Repository: https://github.com/T-Auto/dsh-ops. Package page: https://www.npmjs.com/package/dsh-ops.
After install
It declares @deepseek-ai/dsh as a peer and renders a new callable tool in the tool list; after dsh plugin add dsh-ops, dsh --profile web --dump-config lists the row that mounts it.
Files it touches
No storage peer appears in the manifest of dsh-ops, so the dependency line in $DSH_HOME/profiles/<name>/package.json is the only file you can point at; the package description names nothing else.
Removing it
Removing dsh-ops is the mirror command, dsh plugin --profile web remove dsh-ops. Its manifest declares no storage peer, so it writes nothing under $DSH_HOME; removing it leaves no files behind.
Common questions
What does it hook into, and how do I check that slot is free?
Its manifest names no community counterpart, so the check is manual: after dsh plugin add dsh-ops, run dsh --profile web --dump-config and look for two rows claiming the same slot.
Which dsh versions load it, and what happens outside that window?
On >=0.2.2-rc.1 <0.2.3-0 the CLI loads dsh-ops; outside it, boot stops with the requirement instead of running the plugin. dsh plugin allow-version dsh-ops is the per-package override if you accept the risk.