dsh-ask-peer:爲 DeepSeek Harness 提供去中心化 agent 互問插件

前言

DeepSeek Harness(DSH)通過插件擴展智能體能力。dsh-ask-peer 是一個面向 DeepSeek Harness 的插件,讓一個 agent 在局域網內直接詢問另一個 agent,並得到基於對方工作區和會話上下文的回答。

下面介紹它的定位、核心能力、安裝方式和典型用法。

這是什麼

dsh-ask-peer 由 zzhzz 維護,許可證爲 MIT,GitHub 地址爲 https://github.com/zzhzz/dsh-ask-peer。

它的一句話定位是:Decentralized peer-to-peer “ask a colleague’s agent” plugin for DeepSeek Harness。

該插件的核心設計是 peer-to-peer:

  • 沒有 hub、broker 或 shared database。
  • agents 直接在 LAN 上通信。
  • 每一側保存自己的一份關係記錄。

核心功能

詢問與交叉驗證

模型可以使用以下工具:

ask_peer
ask_peers
peers_list
recommend_peer
ask_peer_async
ask_result

其中:

  • ask_peer:詢問一個 colleague。
  • ask_peers:並行詢問 2–3 個 agent,並交叉驗證答案。
  • peers_list:展示 live roster 與 tags,幫助模型選擇 peer。
  • ask_peer_async / ask_result:使用 backlogged asks,不中斷 answerer 的當前工作。

發現新 agent

recommend_peer 用於發現新的 agent:

  1. 當前 agent 詢問一個 colleague。
  2. 如果該 colleague 認識匹配的 agent,會返回另一個 agent 的 signed card。
  3. signed card 以 notification 或 chat bubble 的形式呈現,包含 Add/Decline。
  4. 接受後,該 agent 會合併到 friend list。

如果當前 colleague 不認識匹配的 agent,她會繼續向自己的朋友詢問。這個過程受以下限制:

  • hop limit,默認爲 1。
  • small fan-out。

氣泡中會顯示推薦路徑,例如:

via carol → erin

會話級回答

插件使用 session-level answers:

  • 由一個 fresh、read-only agent 回答。
  • 回答內容來自目標 session context 的 copy。
  • 不觸碰 live sessions。

審批與策略

在 Web UI 中,可以使用 approval bubbles 處理請求:

  • answer:同意回答。
  • decline:拒絕回答。
  • auto:信任某個 friend,直接執行。

每個 friend 可以配置以下策略之一:

ask
auto
deny

其中:

  • ask:在 UI 中審批。
  • auto:trusted friends 直接執行。
  • deny:拒絕。

簽名好友卡片

添加 friend 時使用 signed friend card:

  • 粘貼一個 signed blob 即可添加。
  • 不需要手工複製 host、port、key。

自然觸發

當用戶請求匹配某個 friend 的廣告能力時,agent 可以自行調用:

ask_peer
recommend_peer

不需要用戶手動指定工具。

安裝與啓用

先確認運行環境滿足要求:

node: ^22.19.0 || >=24.0.0
pnpm: >=10

安裝插件到指定 profile:

dsh plugin --profile web add dsh-ask-peer

如果從本地 checkout 或 tarball 添加,對應路徑爲:

./dsh-ask-peer
./dsh-ask-peer-0.1.0.tgz

然後添加 bootstrap row:

- id: ask-peer
  config:
    callerName: 'ada'
    keyDir: '/home/ada/.dsh-ask-peer/keys'
    listen: true

這裏:

  • callerName 是 agent 名稱。
  • keyDir 是密鑰目錄。
  • listen 表示啓用監聽。

啓動 profile:

dsh --profile web

在 Web UI 中打開:

Settings → Ask Peer

複製自己的 sign 或 friend card,發給 colleague。再粘貼 colleague 的 card,添加 friend。

典型用法

可以直接對 agent 說:

Carol, recommend another agent who can help me stand up a docker-compose dev environment.

README 示例中的流程如下:

  1. Bob 詢問自己的 agent:希望找到一個能幫忙搭 docker-compose dev environment 的 agent。
  2. Carol 先查看認識的 agent;如果沒人 advertise docker expertise,她會向朋友 Erin 繼續詢問。
  3. Erin 查看自己的關係,找到 Ada。
  4. Ada 正在 docker-compose session 中,並 advertise:
docker
env-setup
  1. Ada 的 signed friend card 沿鏈路返回,在 Bob 的 chat 中顯示:
ada recommended via carol → erin
  1. Bob 點擊 Add friend 後,他的 agent 就可以直接詢問 Ada 的 agent。

完整配置參考與協議見倉庫中的:

src/config.ts
docs/ARCHITECTURE.md

適用場景與注意

適合在本地網絡內需要 agent 互問、跨工作區獲取上下文答案、或希望以插件方式擴展 DSH 的開發者使用。

使用前注意:

  • 插件以當前 dsh 進程權限運行,安裝前應檢查源碼和許可證。
  • 許可證爲 MIT。
  • auto 策略會讓 trusted friend 直接執行,應只對可信 peer 使用。
  • recommend_peer 的發現過程受 hop limit 和 fan-out 限制,但仍建議控制 peer 數量與策略。

獲取地址

GitHub 倉庫:

https://github.com/zzhzz/dsh-ask-peer
羽毛球分组比赛记分
小程序二维码

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

小夜