Skip to content

Releases: FxRayHughes/dsh-peer-link

v0.4.0 — 一键打开对端网页

Choose a tag to compare

@FxRayHughes FxRayHughes released this 23 Oct 05:10

新功能:一键打开对端的 DSH 网页

同一局域网里,可以直接在浏览器中打开另一台已配对机器的 DSH 网页界面,查看并操作它的全部会话。

  • 侧边栏底部「对端设备」:只配对一台时直接显示对端名称,点一下就打开;配对多台时弹出列表,逐台显示在线状态,并注明不可用的原因(离线、未开启共享、版本过旧)。
  • 设置页:每个在线且开启共享的对端旁有「打开网页」按钮。
  • 子代理会话标题栏「在 <对端> 上查看」:打开对端网页,并直接定位到这个 subagent_peer 子代理对应的对端会话。

浏览器版在新标签页打开;桌面版交给系统默认浏览器打开。

工作方式与安全

  • 本机先通过签名协议向对端申请一次性入场票(webTicket),票据 60 秒内有效,只能用一次。
  • 对端在服务端用自己的启动令牌登录 DSH,令牌不会出现在浏览器里;同时发一个门禁 Cookie:HttpOnly、SameSite=Strict,绑定浏览器 IP,12 小时有效,用配对密钥派生的密钥签名。
  • 之后的页面、接口和 WebSocket 请求都经对端的 peer-link 端口转发到它回环地址上的 DSH,不用改 DSH 的监听地址或 trustedHosts。没有门禁 Cookie 的请求和跨站请求都会被拒绝,并且同样受 allowCidrs 限制。
  • 新增配置 shareWeb(默认开启)。关闭后对端不能再打开本机页面,已经打开的页面也立即失效。

两台机器都需要升级到 0.4.0。

限制

传输仍是明文 HTTP,只适合在可信局域网内使用。

v0.3.2

Choose a tag to compare

@FxRayHughes FxRayHughes released this 21 Oct 13:01

新增:配套 skill

skills/dsh-peer-link/SKILL.md 教 agent 怎么用 subagent_peer / peer_dsh 把任务交给另一台机器:

  • 什么时候用哪个工具(默认用 subagent_peer,发给非默认对端或需要同步拿结果时用 peer_dsh run)
  • 怎么写委派任务(自成一体、写对端的绝对路径、只读查询要说明不改东西、危险操作先和用户确认)
  • 怎么续接、回答对端提问、核实结果
  • 常见错误的含义和处理(离线、Windows 上的 0xC0000142、specify a peer、签名失败、时钟偏差)

插件本身不加载这个 skill,需要复制到 skill 目录:

mkdir -p ~/.agents/skills
cp -R skills/dsh-peer-link ~/.agents/skills/

~/.agents/skills/ 是多个 agent 共用的目录,DSH 也会读取;只给 DSH 用的话放到 ~/.dsh/skills/。Windows 上的对应路径是 %USERPROFILE%\.agents\skills\。

插件代码没有改动,已装 v0.3.1 的机器不用重装插件,只需复制 skill。

v0.3.1

Choose a tag to compare

@FxRayHughes FxRayHughes released this 21 Oct 12:37

修复

  • 子代理带回的结果被后续回合顶替:对端答完任务后,如果又被别的事唤醒(例如会话权限被修改后的通知),插件会把后一轮的回复当成结果带回来。现在只认收到委派消息的那一轮。

新增:安装后请求授权

启用插件后,界面会弹窗询问 是否允许对端会话完全访问本机:

  • 允许完全访问:对端发来的新会话使用 danger-full-access,不受沙箱限制、不经审批。
  • 暂不:保持本机默认权限。

对端任务是无人值守执行的。默认沙箱下需要审批的操作会卡住;在 Windows 上,默认沙箱甚至无法启动 PowerShell(0xC0000142),所以 Windows 端建议选择允许。选择只问一次,之后可在设置页的「对端会话的权限预设」里修改。

升级

被委派的那台机器(例如 Windows)必须升级,修复在对端生效。把压缩包解压后,用 plugin_manager install_bundle 安装(target 填解压目录的绝对路径);也可以替换原目录后重新启用插件。

v0.3.0

Choose a tag to compare

@FxRayHughes FxRayHughes released this 21 Oct 10:38

子代理可以续接了

subagent_peer 的子代理现在是本机的普通可续接子代理,它的"模型"是对端 DSH(新增的 peer-link 模型通道):

  • 续接:子代理结束后用 send_message 继续追问,消息发到同一个对端会话,对端保留完整上下文。
  • 运行中插话:对端还在处理时发来的消息,会立即转给对端正在运行的那一轮。
  • 回答对端提问:对端的 ask_user_question 没人回答时,回复里会列出问题,下一条 send_message 会作为回答交给对端。peer_dsh action=run 续接会话时也一样。
  • 停止:停止子代理会同时取消对端当前回合。DSH 关闭或重载插件时不会取消,恢复后继续等待同一回合。
  • 子代理与对端会话的对应关系保存在 ~/.dsh/peer-link/links.json,重启后仍能续接。

升级

两台机器都要升级到 v0.3.0,因为对端的 run 接口新增了插话和回答提问。把压缩包解压后,用 plugin_manager install_bundle 安装(target 填解压目录的绝对路径);也可以替换原目录后重新启用插件。

模型列表里会多一个「DSH 互联(对端执行)」,只供 subagent_peer 子代理使用。

v0.2.0

Choose a tag to compare

@FxRayHughes FxRayHughes released this 21 Oct 02:53

首个公开版本。

  • subagent_peer:把子代理任务委派给局域网里另一台电脑上的 DSH,完成后结果回传。
  • peer_dsh:配对 / 解除、列出对端、新开或续接对端会话、读消息、中止回合。
  • 随机端口 + 签名的 UDP 局域网自动发现(组播 + 广播 + 单播),换端口、换 IP 后自动重新找到对端;请求和响应都带 HMAC 签名。
  • 插件设置页(设置 → 插件 → DSH 互联 → 配置):查看状态和对端、粘贴配对码完成配对、编辑全部配置。

安装:下载 dsh-peer-link-v0.2.0.zip 解压,在 DSH 里让 agent 用 plugin_manager install_bundle 安装解压后的目录(绝对路径)。Windows 防火墙设置见 README。