dshbase

插件目录 / Developer / dsh-herdr-bridge

dsh-herdr-bridge

未验证 damozhang

✓ 持续维护 基于 2 个官方 DSH 包

查看 GitHub ↗ ← 返回插件目录

2Stars
1Forks
0未关闭 issue
语言
2026-08-15最近推送
跨平台平台

功能简介

Developer 类别的 DeepSeek Harness 插件。

我们的评价
未验证 — 尚未实测

Developer 类别的 DeepSeek Harness 插件。 尚未验证——请自行安装测试。

「未验证」表示我们的自动化 CI 尚未安装过该插件。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

你是插件作者? 想拿到「已验证」标签——提交你自己的验证证据(截图、日志或短视频),我们审核通过后即改为「已验证」。

提交验证证据 ↗

README

herdr-bridge

A dsh plugin that bridges a DeepSeek Harness web session to Herdr, letting the dsh agent discover, start, prompt, and observe other agents (pi, claude, codex, ...) running under Herdr — all from inside the dsh web UI.

dsh-herdr-bridge demo

Requirements

  • dsh (npx @deepseek-ai/dsh or a local build) with the web profile
  • Herdr running on the same machine (herdr CLI on PATH, socket at ~/.config/herdr/herdr.sock)
  • Node.js >= 20

Install

From GitHub (published source):

dsh plugin --profile web add github:damozhang/dsh-herdr-bridge

From npm (once published):

dsh plugin --profile web add dsh-herdr-bridge

From a local checkout (development):

dsh plugin --profile web add /path/to/herdr-bridge

Then restart the dsh web server so the bundle is loaded. To update to a newer version, run add again with the same source (pnpm caches; remove first if you switch sources). For active development, link the local checkout — source edits take effect on the next server restart — and switch back to the GitHub source to validate what others will install.

Starting dsh so Herdr integration works (important)

Herdr's own skill refuses to act when the agent process is not Herdr-managed: it checks HERDR_ENV=1 in the environment and stops otherwise. The dsh web process must therefore run with HERDR_ENV=1 set, otherwise the dsh agent will refuse to touch Herdr even though this plugin is installed.

Option A — recommended: run dsh web inside a Herdr pane

Herdr automatically injects HERDR_ENV=1 (and HERDR_SOCKET_PATH/HERDR_PANE_ID) into every pane it manages. Create a pane bound to your usual working directory and run:

npx @deepseek-ai/dsh web

The web server inherits the Herdr environment, the skill gate passes, and the server's own output stays observable in that pane.

Option B — run in a plain terminal with exported environment

If you prefer the web server outside Herdr, export the markers first:

export HERDR_ENV=1
export HERDR_SOCKET_PATH="$HOME/.config/herdr/herdr.sock"
npx @deepseek-ai/dsh web

This satisfies the skill check but is less "native" than running inside a Herdr pane.

Verify

Open the dsh web UI and ask the agent to herdr_agent_list. If it returns the live Herdr agents (with pane ids), the bridge is working. If the agent refuses with a Herdr environment error, the server was started without HERDR_ENV=1.

The plugin's tools also set HERDR_ENV=1 and a default socket path on every spawned herdr CLI call, so tool execution itself is resilient; the process-level variable is what the skill gate checks.

Tools

Tool Purpose
herdr_agent_list List Herdr agents (pane id, status, cwd) to discover collaboration targets
herdr_agent_start Create a workspace and start an agent (kind: pi, claude, codex, ...; optional model)
herdr_agent_prompt Send a message to an agent by pane id, wait for completion, return its output
herdr_delegate One-shot: start agent → submit task → wait → return output (optional cleanup)
herdr_pane_run Run a shell command in any pane and read its output (optional match-wait)
herdr_workspace_close Close a workspace to clean up its agents and panes

Examples

Ask the dsh web agent:

herdr_delegate: review /path/to/code with model opencode-go/deepseek-v4-pro

or compose primitives:

herdr_agent_list
herdr_agent_start pi in /path with model opencode-go/deepseek-v4-pro
herdr_agent_prompt <paneId> "implement feature X and run the tests"
herdr_workspace_close <workspaceId>

Development

pnpm install        # installs devDependencies
pnpm run build      # compile src/ to dist/ — required before committing a source change
dsh plugin --profile web add /abs/path/to/this/repo

dist/ is committed on purpose. The plugin ships compiled JavaScript: main points at dist/index.js, never at src/index.ts, because Node refuses to strip types from any .ts file resolved under node_modules — and dsh plugin add always installs into node_modules. The build cannot be deferred to install time either: pnpm rejects a git-hosted package that carries a prepare (or any build) script unless the consumer allowlists it in pnpm-workspace.yaml, which would break dsh plugin add github:... for everyone. Committing the build is what keeps all three install sources working with no consumer configuration.

So: run pnpm run build and commit dist/ in the same commit as any src/ change, or installers will get the previous build.

@deepseek-ai/dsh-tools is a peerDependency, not a regular dependency, so the plugin binds to the single copy the host dsh runtime already loaded instead of pulling a second, possibly stale one into the profile.

Schema notes: the dsh value-schema DSL is stricter than JSON Schema — required lives per-field, and object schemas must declare additionalProperties explicitly.

License

MIT

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 dsh-herdr-bridge」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

Web profile:

dsh plugin --profile web add github:damozhang/dsh-herdr-bridge

Headless(CLI)profile:

dsh plugin --profile headless add github:damozhang/dsh-herdr-bridge

实测报告

尚未 L3 验证——若已跑过,见下方失败备注。

状态:pending · 最近测试 2026-08-26
备注:验证: runtime-fail 浏览全部待验证失败 →
安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

Developer 里更多

浏览全部 7789 个插件 →