omdsh-dev/dsh-custom-tool
Create and manage sandboxed JavaScript tools for DeepSeek Harness with a Monaco editor and model-driven tool l
dsh-custom-tool lets users create durable JavaScript tools from a Monaco editor and lets the model add or prune its own validated tools during a session. Each enabled definition hot-registers into Harness and becomes visible to the model on the next step. Global execution supports pure computation and optionally fetch; workspace execution adds bounded file helpers rooted at the initiating session. Fresh workers, environment stripping, disabled require/import/process, result limits, and approval for model-created global tools reduce the risk of turning convenience scripts into unbounded host code.
Install
dsh plugin --profile web add https://github.com/omdsh-dev/dsh-custom-tool/archive/refs/tags/v0.1.2.tar.gzThe tarball includes prebuilt lib output; restart dsh web afterward. The host must include custom-tools in WEB_SETTINGS_NAMESPACES (upstream commit d6ea05b5) or the UI cannot save changes.
Compatibility
DSH Web with the custom-tools settings namespace exposed by the host. User code runs in fresh worker threads with Node Permission Model controls, explicit globals, time and memory budgets, and optional workspace-confined file helpers.
Details
- Repo: omdsh-dev/dsh-custom-tool
- Category: Coding & Development
- Stars: 24
- Version: v0.1.2 tarball
- Last push: 2026-08-16
- First seen: 2026-08-13
Recent updates
The v0.1.2 README documents live tool registration, Monaco TypeScript diagnostics, global and workspace execution scopes, global and per-workspace storage, model ownership rules, approval-gated global creation, and configurable worker budgets.
FAQ
- How do I install dsh-custom-tool v0.1.2?
- Add the documented v0.1.2 GitHub tarball to the Web profile and restart dsh web.
- Can a custom tool access arbitrary files?
- Global-scope tools have no file API. Workspace-scope tools receive read, write, and list helpers confined lexically to the initiating workspace, with the documented caveat that symlinks are not a hostile-code boundary.
- Can the model delete tools I created?
- No. The model may remove only model-created tools; user-created definitions must be managed in Settings.
Alternatives
omdsh-dev/dsh-toolkit · w2112515/dsh-plugin-development · xu1132/dsh-plugin-hello