dsh-peer-link:爲 DSH 會話提供本機點對點消息

前言

在 DSH 做智能體會話時,如果還需要和同一臺機器上的其他 agent 會話(例如 Claude Code)來回溝通,手動複製消息不夠順手。dsh-peer-link 是一個 DSH 插件,用於讓 DSH 會話與其他本機 agent 會話通過 unix socket 互發消息。

它把當前 DSH 進程註冊爲一個可被發現的 peer,並把對端消息路由到具體 DSH 會話;同時也提供工具,讓 DSH 側查看 peer、發送消息。

插件定位

  • 插件倉庫:czm15053/dsh-peer-link
  • package.json 名稱:@deepseek-ai/dsh-peer-link
  • 維護者:czm15053
  • 許可證:MIT
  • 定位:點對點消息工具,連接 DSH 會話與本機其他 agent 會話,例如 Claude Code。

這裏需要注意:倉庫路徑、包名和 README 標題不完全一致,安裝時按已給定的命令使用倉庫地址即可。

核心能力

下面介紹已提供的主要能力:

  • DSH 進程註冊爲單個 peer,名稱格式爲 dsh-<pid>,可被 Claude Code 的 ListAgents / SendMessage 發現。
  • 每個 DSH 會話有獨立短 id,消息會攜帶 @dsh-<pid>:<session> 標識,DSH 內部按標識轉發到對應會話。
  • 收到 peer 消息時,消息以用戶消息氣泡注入對應 DSH 會話,在 web 側可見。
  • 提供 peer_send 工具,用於向 peer 發送消息;target 可傳入站消息編號、peer 名或 socket 路徑。
  • 提供 peer_list 工具,用於列出活躍 peer,可選 cwd 按目錄篩選,並支持按創建時間排序。
  • peer_list 有交互式 toolview,支持排序、搜索、彈窗發送和刷新。
  • peer 信息會顯示首句會話上下文,便於判斷這個會話在做什麼。

安裝與啓用

安裝插件

從 GitHub 倉庫安裝:

dsh plugin --profile web add "github:czm15053/dsh-peer-link"

如果已有本地倉庫路徑,也可以使用:

dsh plugin --profile web add link:<repo路徑>

安裝後啓動:

dsh --profile web

Claude Code 側配置

如果要把 DSH 會話和 Claude Code 會話打通,Claude Code 需要 2.1.224+。先執行:

claude update

然後在 ~/.claude/settings.json 中配置:

{
  "env": {
    "CLAUDE_CODE_HARBOR_KITE": "1"
  },
  "crossSessionInbound": "accept"
}

CLAUDE_CODE_HARBOR_KITE 用於繞過 feature flag。crossSessionInbound 設爲 accept 表示接受跨會話消息;不設置時,消息會先 hold 等待確認。

配置後,每個 Claude 會話會在 /tmp/cc-socks/ 生成 socket 文件,權限爲 0600。

典型用法

下面以 Claude Code 與 DSH 會話通信爲例。

1、在 Claude Code 中使用 ListAgents 查看活躍 peer,找到類似 dsh-<pid> 的條目。

2、使用 SendMessage 發給目標 peer,例如:

to: "dsh-<pid> [ref]"
message: "@dsh-<pid>:<session短id> 你好,這是一條測試消息"

這裏的 <session短id> 是 DSH 會話短 id。DSH 收到後會把消息轉發到對應會話,並以用戶消息氣泡注入。

3、在 DSH 側收到消息後,可以用 peer_send 工具回覆。target 可以傳站消息編號、peer 名或 socket 路徑。

4、如果需要確認有哪些 peer 可用,使用 peer_list。它支持按目錄篩選、按創建時間排序,交互式 toolview 還支持搜索、彈窗發送和刷新。

依賴與構建

package.json 中聲明瞭以下 peer dependencies,版本要求均爲 >=0.1.0-rc.0

{
  "peerDependencies": {
    "@deepseek-ai/dsh-agent": ">=0.1.0-rc.0",
    "@deepseek-ai/dsh-llm": ">=0.1.0-rc.0",
    "@deepseek-ai/dsh-system-prompt": ">=0.1.0-rc.0",
    "@deepseek-ai/dsh-tools": ">=0.1.0-rc.0"
  }
}

package.json 中還有:

{
  "private": true
}

本地構建與測試:

npm install
npm run build
npm test

適用場景與注意

適合場景:

  • 同一臺機器上同時運行 DSH 和 Claude Code。
  • 希望 DSH 會話能夠發現並回複本機其他 agent 會話。
  • 需要在多個 DSH 會話中區分消息來源和去向。

使用注意:

  • DSH 側 peer 名稱爲 dsh-<pid>,多個 DSH 會話靠 <session> 短 id 區分。
  • Claude Code 側必須滿足 2.1.224+,並按上述方式配置 env 塊和 crossSessionInbound
  • 不設置 crossSessionInbound: "accept" 時,消息會先進入等待確認狀態。
  • 插件會註冊工具並處理消息,安裝前應檢查源碼、許可證和來源;插件以當前 DSH 進程權限運行。
  • DSH 的“一切皆插件”是插件生態思路;社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係。

結尾

dsh-peer-link 把 DSH 會話變成一個可被本機 agent 會話發現的 peer,並通過 peer_sendpeer_list 提供發送和查看能力。對於需要在 DSH 與 Claude Code 等本機 agent 之間做點對點消息的場景,它是一個直接可用的 DSH 插件。

目錄頁:

https://www.skillhub.cn/plugins/czm15053/dsh-peer-link

GitHub:

https://github.com/czm15053/dsh-peer-link

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

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

小夜