dsh-subagent-pi-plus:基于 Pi RPC 的真网关子代理插件

前言

DeepSeek Harness (DSH) 支持通过插件扩展能力。官方的 dsh-subagent-codex 插件实现了“真网关”架构,允许本地命令行程序与 DSH 会话直连。dsh-subagent-pi-plus 是基于该架构的移植版本,将直连代理从 Codex 切换为 Pi,使 Pi 成为 DSH 中的第一公民。它通过 Pi RPC 协议提供单次 Pi 子代理提供者和真网关功能,适合需要本地化运行 Pi 会话的场景。

插件介绍

该插件由 february2015 维护,是一个开源工作流插件(MIT 许可证)。它 fork 自官方 @deepseek-ai/dsh-subagent-codex 插件,仅修改了直连代理对象为 Pi,保留了完整的“真网关”核心逻辑。

核心功能

  1. 真网关直连
    通过本地命令绑定当前 DSH 会话与持久化的 Pi 会话。DSH 不再运行中间模型,仅作为消息透传通道。

  2. 持续对话:队列 + 直接插入
    当 Pi 忙碌时,新消息自动进入队列,按顺序执行。支持通过浮动面板查看、提升(插队)、插入、编辑或删除队列中的消息。

  3. 实时中间输出
    Pi 的执行进度(消息增量、工具调用、状态事件)会以近实时方式显示在 DSH 会话中,默认仅展示不进入模型上下文。

  4. 状态显示
    绑定成功后,会话标题栏显示 PI-xxxx 徽章(状态点 + 会话 ID 前四位),输入栏显示状态行。未绑定会话保持界面整洁。

  5. 图片/附件透传
    支持直接粘贴或上传图片,原样传递给 Pi。视觉理解能力依赖 TeamAI 技能 ocgw-vision,此插件本身不具备视觉理解能力。

  6. 委派与网关共存
    一个 DSH 会话可同时使用模型触发的单次 Pi 委派和用户挂载的网关会话,互不干扰。

安装与启用

在安装前,需确保当前机器已安装并配置好 pi 命令行工具(包括登录和模型设置)。

1. 安装插件

使用 DSH 插件管理命令添加本地路径:

dsh plugin --profile <name> add /path/to/dsh-subagent-pi

2. 启动 DSH

安装完成后,使用对应的 profile 启动 DSH:

dsh --profile <name>

典型用法

  1. 打开任意 DSH 会话(建议 cwd 为你的项目目录)。
  2. 输入 /pi-lock。绑定成功后,标题栏会出现 PI-xxxx 徽章,后续输入的内容将直接发送给 Pi。
  3. 当 Pi 正在处理消息时,后续输入会自动排队。使用浮动面板查看队列,可手动提升消息优先级或直接插入新内容。
  4. 输入 /pi-unlock 断开连接。Pi 会话数据保留,可通过 /pi-lock <piSessionId> 指定会话 ID 重新绑定。

注意事项

  • npm 包名差异:npm 包名 dsh-subagent-pi 属于较早的第三方项目,不是此插件。此插件的 npm 包名为 dsh-subagent-pi-plus。
  • 前置依赖:必须在本地安装并配置 pi 工具。
  • 绑定限制:一个 Pi 会话只能绑定到一个 DSH 会话。
  • 视觉能力:插件不直接具备视觉理解能力,图片透传后由外部技能(如 ocgw-vision)处理。
  • 未绑定状态:未绑定会话不会显示任何内容,仅作为普通 DSH 会话运行。

结语

该插件为在 DSH 中使用 Pi 提供了标准化的直连方案,解决了远程调用与本地编排之间的割裂问题。若需进一步了解实现细节,可查阅 GitHub 仓库文档。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜