dsh-custom-tool

插件安全与权限MIT
Custom tools for the DeepSeek Harness: users author their own JavaScript tools in the settings UI with a Monaco (VS Code) editor and TypeScript intellisense, and the model grows and prunes the same toolset itself through custom_tool_create / custom_tool_remove / custom_tools_list. Every tool is durable, hot-registered, and written into the model prompt on the next step.

功能特性

  • Untrusted code runs in-process: every call executes in a fresh worker thread inside a node:vm realm with an explicit allowlist and hard budgets, instead of eval in the agent process.
  • Durable store: tools live in the custom-tools settings namespace (schema defaults, composition base, user document — the ordinary settings layering). Edits apply live; restart restores them.
  • Model self-service: custom_tool_create (upsert by name), custom_tools_list, and custom_tool_remove share the UI's validation gate and the ownership rules below.
  • The root is the session workspace directory (the initiating agent's cwd), resolved at call time.
  • Relative paths resolve from the root; absolute paths must stay inside it; any path that escapes the root is rejected with an explicit error.
  • Outside a session (no initiator context) a workspace tool fails with no workspace root rather than running without a boundary.

安装命令

dsh plugin --profile web add https://github.com/omdsh-dev/dsh-custom-tool/archive/refs/heads/main.tar.gz

项目预览

话题标签

#dsh#dsh-plugin
← 返回 插件 列表