DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Npm Runner — DeepSeek Harness 插件(DSH Plugin)
← Plugins

dsh-npm-runner

Npm Runner

DeepSeek Harness 插件:发现当前工作区中的 npm/pnpm/yarn/bun 脚本(不会进入 node_modules),并通过编辑器区域或会话标题中的紧凑控件在后台运行任意脚本。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add dsh-npm-runner@0.1.1
README兼容性版本

兼容性与来源证明

Npm Runner 以 dsh-npm-runner 发布,当前版本为 0.1.1。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
npm
Registry 更新时间
2026/9/20

版本

0.1.1stable
2026/9/11
0.1.0stable
2026/9/11

相关插件

正在加载相关插件…

最新版
0.1.1
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
103.1 kB
文件数
9
Surface
web
许可证
MIT
发布源
npm
GitHub
★ 0
周下载
63
最近提交
2026/9/11
查看源码 ↗
项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录

相关插件

继续浏览 developer-tools 分类下经过校验的插件。

DSCODE@toddzheng024/dscode-bundle完整的 DeepSeek 编码代理,支持持久化 shell、Ultra 协作和自动权限审查。Plugindsh-pluginDeepSeek Harness 社区插件市场,遵循官方插件规范——无需离开应用即可浏览、搜索并安装 9000+ 个由人工精选的社区插件。· DeepSeek Harness 社区插件市场(遵循官方开发规范):9000+ 人工精选社区插件,每日更新。Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)Sdk Minimal@deepseek-ai/dsh-sdk-minimal独立的最小 SDK 配置包:JSON-RPC、一个 DeepSeek 适配器、持久化 Shell 和 JSONL 会话

README

dsh-npm-runner

A DeepSeek Harness plugin that finds the npm scripts of the current workspace and runs any of them in the background.

  • Finds the scripts without walking node_modules — the workspace root manifest, plus the packages its workspaces field declares or its immediate subdirectories.
  • One collapsible group per package, like VS Code's NPM Scripts view, with the folded shape remembered per workspace.
  • Runs in the background, with live output, elapsed time, and a Stop that reaps the whole process tree.
  • Uses each package's own package manager (pnpm, yarn, bun or npm, from the lockfiles present) in each package's own directory.
  • Shows nothing when there is nothing to show.

Requirements

DSH 0.1.5-rc.1 or newer, and Node.js 20 or newer.

Install

dsh plugin --profile web add -w dsh-npm-runner

-w is not optional: the profile directory is a pnpm workspace root, and pnpm refuses an add there without it.

To track the repository instead of a release:

dsh plugin --profile web add -w github:nobu121/dsh-npm-runner

Update or remove:

dsh plugin --profile web update -w dsh-npm-runner
dsh plugin --profile web remove dsh-npm-runner

Restart DSH afterwards — a newly added bundle is picked up at profile boot, not by a page refresh.

Working on the plugin itself? dsh plugin --profile web add -w . from the checkout links the working tree instead of taking a snapshot.

Usage

Session stateWhere it appears
New sessionRight-aligned on the workspace/mode row.
ConversationIn the header's action row, next to DSH's own background-task list.

The control appears only when the current workspace has at least one script. Clicking it opens the script list:

  • One collapsible group per package, labelled with the directory its scripts run in and a script count. With several packages there are also Collapse all / Expand all.
  • One row per script, showing the name and the command it expands to. Clicking starts it in the background and expands its live output.
  • A running script shows a status dot and elapsed time, with Stop to reap it. A dot on the trigger means something is running, so the state stays visible with the list closed.
  • The list is per workspace: every run of the current workspace, including ones started from another conversation, and nothing from another project.
  • Clear finished, on the Background runs header, drops completed, failed and stopped runs and leaves live ones alone.

DSH background jobs

Runs are also registered with DSH's own background-job registry, so they join the job list and the agent can read them with job_list / job_output / job_kill.

Stopping a run from the panel marks it as accounted for, so DSH does not inject a background job finished notice into the session for a stop you asked for — a run that ends on its own still notifies. Set registerJobs: false to keep runs private to the plugin's own list.

Configuration

Optional, on the plugin row in the profile's cordis.patch.yml:

- id: npm-runner
  name: 'dsh-npm-runner'
  config:
    maxPackages: 60      # packages reported per scan
    maxJobs: 12          # retained runs; the oldest finished one is evicted first
    maxRunning: 6        # concurrently live runs
    bufferBytes: 65536   # retained output per run, in bytes
    registerJobs: true   # also register runs with DSH's background-job registry
    jobScope: session    # 'session' keeps a run inside its own conversation; 'global' shares it machine-wide

Security

These routes start processes, so three limits apply: every request passes the same trust fence DSH's own gateway applies (loopback or a trusted Host, no cross-site, a matching Origin); the workspace comes from the Session rather than from the request; and a request cannot name a command — the client sends a directory and a script name, and the host re-reads that directory's own package.json and rebuilds <packageManager> run <name> itself. Runs start in the DSH host process, on the machine DSH runs on.

Limitations

  • Clearing does not touch DSH's own job list. DSH's background-task count keeps a finished entry until DSH restarts; its registry exposes no delete.
  • DSH's job list is not workspace-aware. With the default jobScope: 'session', a run does not appear there in another conversation, even one in the same workspace. The plugin's own list is the surface that matches by workspace.
  • The scanner never walks above the session's workspace, and nothing is shown while no session is selected.

Development

npm test          # hermetic: scanner, runner, job bridge, host routes, client bundle
npm run test:e2e  # really runs npm: the fixtures, the run lifecycle and the tree kill

examples/ holds a second package of runnable fixtures — a long-lived service, a streamer, a high-volume writer, a process tree, a failure and a working-directory probe. It is not published, and npm run test:e2e drives all of it through the plugin's own registry.

License

MIT