Foreword¶
DeepSeek Harness (DSH) extends agent capabilities via plugins. dsh-ask-peer is a plugin for DeepSeek Harness that allows an agent to directly ask another agent within a local area network and receive answers based on the other’s workspace and session context.
Below is an introduction to its positioning, core capabilities, installation methods, and typical usage.
What is this¶
dsh-ask-peer is maintained by zzhzz, licensed under MIT, and the GitHub repository is https://github.com/zzhzz/dsh-ask-peer.
Its one-sentence positioning is: A decentralized peer-to-peer “ask a colleague’s agent” plugin for DeepSeek Harness.
The core design of this plugin is peer-to-peer:
- No hub, broker, or shared database.
- Agents communicate directly over the LAN.
- Each side maintains its own record of relationships.
Core Capabilities¶
Asking and Cross-Validation¶
The model can use the following tools:
ask_peer
ask_peers
peers_list
recommend_peer
ask_peer_async
ask_result
Where:
ask_peer: Asks a colleague.ask_peers: Asks 2-3 agents in parallel and cross-validates the answers.peers_list: Displays the live roster and tags to help the model select a peer.ask_peer_async/ask_result: Uses backlogged asks, interrupting the current work of the answerer.
Discovering New Agents¶
recommend_peer is used to discover new agents:
- The current agent asks a colleague.
- If that colleague knows the matching agent, a signed card for another agent is returned.
- The signed card is presented as a notification or chat bubble, including Add/Decline.
- After acceptance, the agent is merged into the friend list.
If the current colleague does not know the matching agent, she continues to ask her own friends. This process is subject to the following limitations:
- hop limit, defaulting to
1. - small fan-out.
The recommended path is displayed in the bubble, for example:
via carol → erin
Session-Level Answers¶
The plugin uses session-level answers:
- Answered by a fresh, read-only agent.
- The answer content comes from a copy of the target session context.
- Does not touch live sessions.
Approval and Strategy¶
In the Web UI, you can use approval bubbles to handle requests:
answer: Agree to answer.decline: Refuse to answer.auto: Trust a friend and execute directly.
Each friend can be configured with one of the following strategies:
ask
auto
deny
Where:
ask: Approve in the UI.auto: Trusted friends execute directly.deny: Refuse.
Signed Friend Cards¶
A signed friend card is used when adding a friend:
- Simply paste a signed blob to add.
- No need to manually copy host, port, or key.
Natural Triggering¶
When a user requests capabilities advertised by a friend, the agent can call them automatically:
ask_peer
recommend_peer
No need for the user to manually specify tools.
Installation and Enablement¶
First, confirm that the runtime environment meets the requirements:
node: ^22.19.0 || >=24.0.0
pnpm: >=10
Install the plugin to a specific profile:
dsh plugin --profile web add dsh-ask-peer
If adding from a local checkout or tarball, the corresponding path is:
./dsh-ask-peer
./dsh-ask-peer-0.1.0.tgz
Then, add a bootstrap row:
- id: ask-peer
config:
callerName: 'ada'
keyDir: '/home/ada/.dsh-ask-peer/keys'
listen: true
Here:
callerNameis the agent name.keyDiris the keys directory.listenindicates whether to enable listening.
Start the profile:
dsh --profile web
Open in the Web UI:
Settings → Ask Peer
Copy your own sign or friend card and send it to a colleague. Then paste the colleague’s card to add the friend.
Typical Usage¶
You can directly tell the agent:
Carol, recommend another agent who can help me set up a docker-compose dev environment.
The flow in the README example is as follows:
- Bob asks his agent: He wants to find an agent who can help set up a docker-compose dev environment.
- Carol first checks the agents she knows; if no one advertises docker expertise, she continues to ask her friend Erin.
- Erin checks her relationships and finds Ada.
- Ada is in a docker-compose session and advertises:
docker
env-setup
- Ada’s signed friend card returns along the chain and is displayed in Bob’s chat:
ada recommended via carol → erin
- After Bob clicks Add friend, his agent can directly ask Ada’s agent.
For complete configuration references and protocols, see in the repository:
src/config.ts
docs/ARCHITECTURE.md
Applicable Scenarios and Notes¶
Suitable for developers who need agents to ask each other within a local network, obtain context answers across workspaces, or wish to extend DSH via plugins.
Notes before use:
- The plugin runs with the permissions of the current dsh process; check the source code and license before installing.
- The license is
MIT. - The
autostrategy allows trusted friends to execute directly; use this only for trusted peers. - The discovery process of
recommend_peeris limited by hop limit and fan-out, but it is still recommended to control the number of peers and strategies.
Getting Address¶
GitHub Repository:
https://github.com/zzhzz/dsh-ask-peer