dsh-reaper
在终端中运行以下命令:
dsh plugin install 11111353535/dsh-reaper
将以下提示词粘贴到 DeepSeek Harness 对话框中:
在 DeepSeek Harness 中执行 dsh plugin install 11111353535/dsh-reaper,即可从 https://github.com/11111353535/dsh-reaper 安装本插件。
插件介绍
Agent 一轮对话里常会拉起 Vite、Next dev、文件监听或隧道;回合结束、会话关了,进程却还在占着 5173 这类端口。下一轮一上来就是 EADDRINUSE,你还得在任务管理器里对着一堆 node.exe 猜该杀谁。
dsh-reaper 会先盘点机器上所有在监听的端点,把每个占用者尽量归到「当前会话」:是不是 harness 子进程、是不是当前工作区命令行、像不像 dev 服务、还是系统或基础设施。它不会单凭端口号就动手,而是给出分级结论和完整回收计划;只有在你明确 confirm: true 时才会发信号。计划会覆盖整棵后代进程树、先 SIGTERM、可选手动 force 升级,并在事后复查端口是否真的空出来;harness 自身、系统进程、neverKill 与 protectPorts 一律拒绝。
适合在 DeepSeek Harness 里频繁跑本地 dev 服务、又不想再被「幽灵进程」拖垮端口的开发者与 Agent 工作流维护者。只看不杀可以用 reaper_scan;要按端口或会话批量回收则用 reaper_reap 或 reaper_free_port。
使用场景
- 本地 dev 服务在会话结束后仍占用端口,导致下次启动 EADDRINUSE
- 需要看清哪些监听进程属于当前 harness 会话再决定是否终止
- 想一键清理本会话遗留的 Agent 子进程,但不想误杀数据库或 nginx
适合人员
- 在 Harness 中频繁启动前端或本地服务的开发者
- 维护 Agent 自动化脚本、担心端口泄漏的人
- 需要保守默认、可确认后再执行的运维式清理流程的用户