跳到正文
dsh-market 浏览插件 GitHub EN

wjingshan/dsh-dock-launcher#dsh-dock-bridge

为「DeepSeek Harness 开关」程序坞应用写出运行中 dsh Web 服务的 PID、端口与带 token 的地址(运行时文件权限 0600),并在退出时删除。

Star 数 ★ 1 分类 UI 增强 收录于 2026-09-13

安装

在 DeepSeek Harness 里通过 dsh-market 安装

dsh plugin --profile web add dshmarket

或使用命令行

dsh plugin --profile web add "https://github.com/wjingshan/dsh-dock-launcher/releases/download/v0.15.0/dsh-dock-bridge-0.1.0.tgz"

装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络。请先审阅源码,并尽量锁定 commit(github:owner/repo#sha)。

README

该插件的 README 只有英文版本。

Host plugin for the DeepSeek Harness Switch Dock app (wjingshan/dsh-dock-launcher).

It publishes the running Web server's endpoint facts to a small runtime file, so the Dock app can open an already authenticated page instead of parsing the server's startup log for the ?token=... URL.

What it does

On activation it injects two host services — webServer (the bound loopback port) and connection (the per-process launch token) — and writes:

~/.config/dsh-dock-launcher/runtime.json      (mode 0600)
{
  "pid": 4821,
  "host": "127.0.0.1",
  "port": 3080,
  "origin": "http://127.0.0.1:3080/",
  "url": "http://127.0.0.1:3080/?token=...",   // tokenized root URL
  "tokenized": true,
  "updatedAt": "2026-01-01T00:00:00.000Z"
}

It rewrites the file only when a value actually changes (checked once a minute), and deletes it on disposal — so a stopped server leaves no stale port behind. The file is removed only when its pid is the current process.

Install

dsh plugin --profile web add dsh-dock-bridge

or from a checkout, with a path:

dsh plugin --profile web add /path/to/dsh-dock-launcher/plugins/dsh-dock-bridge

Then restart the Web profile. The plugin is a host row inserted by cordis.patch.yml; remove that insert and the harness behaves exactly as before — the Dock app falls back to reading the startup log.

Configuration

Field Default Meaning
path ~/.config/dsh-dock-launcher/runtime.json Runtime file location

The DSH_DOCK_RUNTIME environment variable overrides the default path.

Security

  • The file contains a live launch token, so it is written owner-only (0600) and the token is never logged — only the redacted origin and PID are.
  • Loopback only. The plugin opens no socket, makes no network request, and sends nothing anywhere.
  • Zero dependencies, no build step, plain ESM. Every step is guarded so a failure can only log and stop; it never throws into the host's startup path.

License

MIT

内容来自项目 README(GitHub)↗

评论

评论存放在 GitHub Discussions。用 GitHub 账号登录后可发表评论或点表情。