DeepSeek Harness Plugin Hub

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

探索

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

社区

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

相关链接

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

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

Plugin Sidebar Terminal Tools — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
P

@huanlin/dsh-plugin-sidebar-terminal-tools

Plugin Sidebar Terminal Tools

将官方侧边栏终端堆栈桥接至模型的 DSH 插件:sidebar_terminal_open/send/read/wait_for/close/list 驱动 ctx.terminalController,终端会自动以原生侧边栏标签页显示,用户可随时接管。

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

npx -y @deepseek-ai/dsh plugin --profile web add github:HuanLinOTO/dsh-plugin-sidebar-terminal-tools#1cae4cb15c51b77ad4e94d32e7887e014b03b0e0
README兼容性版本

兼容性与来源证明

Plugin Sidebar Terminal Tools 以 @huanlin/dsh-plugin-sidebar-terminal-tools 发布,当前版本为 0.1.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

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

版本

0.1.0stable
2026/9/30

相关插件

正在加载相关插件…

最新版
0.1.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
AGPL-3.0
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/9/30
查看源码 ↗
README Badge

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

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

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

认领这个 Plugin →
报告问题

README

dsh-plugin-sidebar-terminal-tools card

sidebar-terminal-tools

DSH plugin that gives the model six sidebar_terminal_* tools over the official right-sidebar terminal stack (ctx.terminalController), which upstream exposes with no model-facing entry point. Terminals the model opens appear in the user's sidebar automatically as native terminal tabs, and the user can take over input at any time.

DSH 插件:把官方右侧栏终端(ctx.terminalController,上游零模型入口)通过 6 个 sidebar_terminal_* 工具交给模型驱动。模型开的终端会自动出现在用户侧栏成为官方终端 tab,用户可随时点「接管」亲自输入。

[!WARNING] 安全警告 / Security warning

  • 这些终端以系统用户权限运行,不套 Agent 沙箱、不走审批(terminalController 的上游刻意设计,供人手操作;本插件把它交给模型)。启用即表示你接受模型可以在你的桌面/服务器上直接执行命令。
  • These terminals run with your system user's permissions, outside the Agent sandbox and the approval pipeline — that is an upstream property this plugin deliberately exposes to the model.
  • 建议在 permission 规则里按工具名 sidebar_terminal_* 加闸(至少对 sidebar_terminal_open / sidebar_terminal_send 要求确认)。
  • Consider gating sidebar_terminal_* in your permission rules before enabling.
  • 与用户手动终端共享每会话 maxTerminals=8 配额;模型开满后你自己就开不了了(反之亦然)。Terminals share the per-session quota of 8 with your manual sidebar terminals.
  • 无提权能力:OS / 容器层面的限制仍然生效。No privilege escalation: OS / container limits still apply.

工具 / Tools

工具说明
sidebar_terminal_open开一条新终端(id stb-*),自动出现在侧栏;返回 terminalId/shell/cwd/cols/rows/state;配额满时返回 limit_reached。
sidebar_terminal_send向终端写输入(默认追加回车)。用户接管中时自动夺回控制权再写入,返回 regained_control: true。
sidebar_terminal_read读该终端的纯文本转录(ANSI 已清洗、行/字节有界、offset 从最新端计数的分页)。
sidebar_terminal_wait_for阻塞等待正则在转录中出现,返回五态之一:found / timeout / exited / gone / cancelled(核心与单测取自上一代插件 terminal-extension-wait-for)。
sidebar_terminal_close关闭终端(杀 shell)并释放转录。
sidebar_terminal_list列出本会话经本插件打开的终端(状态、行数、当前控制者是 plugin / user / none)。

只操作本插件创建并登记的 (sessionId, terminalId):用户手动开的终端永远不会被这些工具碰到。模型与用户对输入是同等地位:谁最后 attach 谁持有;用户接管后模型会收到一条注入提醒("用户可能执行了自己的命令"),下一次 send 自动收回控制。

English summary: six tools (open/send/read/wait_for/close/list) drive real sidebar terminals the user can watch and take over; transcripts are ANSI-cleaned and bounded; wait_for synchronizes on regex cues instead of busy-polling; only plugin-created terminals are reachable.

安装 / Install

# from npm (recommended):
dsh plugin --profile web add @huanlin/dsh-plugin-sidebar-terminal-tools

# from a local checkout (dev):
dsh plugin --profile web add link:D:\Projects\deepseek-harness\dsh-plugin-sidebar-terminal-tools

预构建策略:lib/ 入库(含 host 与 client 双产物),无 prepare 脚本,npm 安装开箱即用。

挂载位置:本插件必须挂在 profile 根级(dsh plugin add 的默认行为)——terminalController 服务在 web-app 根 realm 提供,进任何 preset/isolate 组都注入不到。cordis.patch.yml 已按根级 insert 编写,不要把它挪进 preset 的 patch 组。

配置 / Configuration

在 DSH GUI 设置页或 cordis.patch.yml 中配置(host half):

字段默认说明
transcriptLines5000每终端保留转录行数
transcriptBytes1048576每终端保留转录字节上限(1 MiB)
defaultTimeoutMs10000wait_for 缺省超时
minTimeoutMs / maxTimeoutMs100 / 600000wait_for 超时钳制边界
pollIntervalMs150wait_for 轮询间隔
tailLines / maxLineTextChars / maxTailBytes30 / 1000 / 8192wait_for 摘录边界
maxMessageChars2000用户接管提醒的长度上限

Client half(web 客户端配置层)可配 pollIntervalMs(侧栏自动打开的轮询间隔,默认 3000ms,最小 250ms)。

架构 / Architecture

  • Host half(src/index.ts + endpoint/registry/sanitize/wait-for):结构影子类型消费 ctx.terminalController(不 import @deepseek-ai/dsh-api-terminal-controller);每条终端一个 follow 消费者,snapshot/output 经 ANSI 清洗进有界转录,state 帧维护 state/exitCode/controllerId 并在用户接管时 agent.inject 一条提醒(同一接管会话只提醒一次)。
  • Client half(src/client/,产物 lib/client.js 以 window.__ModuleLoader__.load({ id: <package name>, factory }) 注册):轮询 ctx.webTerminals.recover(),把 stb- 前缀终端用 ctx.sidebarRight.openTabIn() 开成官方 terminal tab。openTabIn 会展开侧栏列但不抢键盘焦点;上游本就把它设计为"打开即可见"。
  • 上游若在未来版本提供官方自动恢复,client half 应退役,只保留工具层。

开发 / Development

pnpm install        # 需要本地 DSH checkout 的 link: devDependencies
pnpm test           # vitest(79 例:wait_for 核心 23 + sanitize/endpoint/tools/client)
pnpm run typecheck  # host + client 两个 tsconfig
pnpm run build      # lib/index.js(host)+ lib/client/*.d.ts + lib/client.js(client bundle)

运行 / Running

dsh plugin --profile web add @huanlin/dsh-plugin-sidebar-terminal-tools
# 重启 dsh web,浏览器硬刷新(client half 是启动图的一部分)

真机验收路径:让模型 sidebar_terminal_open → 侧栏自动出现终端 tab → sidebar_terminal_send("ping -n 4 127.0.0.1") → sidebar_terminal_wait_for("(Ping 统计|丢失)") → 你点「接管」输入一条命令 → 模型下一条 sidebar_terminal_read 能看到你的命令,且收到一条接管提醒。

检查 / Compliance

  • 零源码 patch:只有根级 cordis.patch.yml 一行 insert;不修改任何上游文件
  • 不 import 上游终端包;服务名 terminalController + 结构影子类型(src/shadow.ts)
  • 工具名前缀 sidebar_terminal_、终端 id 前缀 stb-,均不与上游冲突
  • 无 default 导出;C4 规范值 / C5 业务态为值 / C6 全程尊重 signal
  • npm pack --dry-run 清单仅 lib/ + cordis.patch.yml + README/LICENSE/package.json

License

AGPL-3.0(wait_for 核心取自同一作者的 dsh-plugin-terminal-extension-wait-for @ 4dae4b8)

相关插件

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

Cc Safety Netcc-safety-net编码代理 CLI 钩子——阻止破坏性命令和访问机密文件Vision Toolkit@anionex/dsh-vision-toolkit面向 Harness 原生集成的 DeepSeek 与 agent-vision-toolkit:图像问答、OCR、定位、UI 还原、像素差异、Artifacts 和 Web UI。Remotedsh-remoteDeepSeek Harness 的远程工作助手:连接 SSH(密码/密钥/代理/键盘交互/代理跳转),选择远程工作区,使用 22 个 rw_* 工具操作该工作区(包括 rw_edit/rw_stat/rw_mkdir/rw_remove/rw_move/rw_forward),具备冲突感知的镜像 syBridge@wenbin_wb/dsh-bridgeDSH 远程连接/远程控制插件(remote control):手机扫码即可在移动端/公网继续用 DeepSeek Harness,人不在电脑前也能接着干。一键局域网二维码、Cloudflare 公网隧道、自建隧道与微信 / QQ / 飞书 / Telegram Bot(多工作区/会话持久化/媒体/卡片审批/流式输出),无需自己搭公网服务器。