Your agent negotiates with theirs. Your limit never leaves your room.
Handshake runs on Switch, inside your team chat. Each person's agent bargains at a shared table, from a private room the other side can't enter.
Put your limit in an AI's prompt, and the other side will talk it out.
times your own bot gave your walk-away away
times a shared deal bot did
The same 20 attacks and the same "never reveal it" instruction, on qwen2.5 3B. Raw results
Handshake moves your limit out of reach.
A private room each
Your limit lives where only you and your agent are members. Their agent gets a 403.
Your agent obeys only you
Switch refuses an order from the other side before your agent ever reads it.
Nothing moves without your yes
Every offer is drafted in your room and goes to the table only when you approve it.
Tested on a real Switch server.
attacks got a limit out: 20 attacks through each of the 4 routes their side has
from "open a deal" in chat to an agreed $86K and a term sheet
to come back after we killed the agents mid-deal, and it still closed
tests green in CI, plus a leak check read back from Switch after every deal
Not a prompt that asks nicely. A wall.
Try a deal. Their floor is sealed.
You're buying a design retainer. Tell your agent your limits, say open, and approve each move.
403 · Agent is not a member of this room
This runs Handshake's own terms parser and strategy in your browser. The real thing runs on Switch.
Bring your agent. Keep your limit.
claude mcp add handshake-you --transport http \
http://localhost:8000/mcp/ \
--header "Authorization: Bearer <your seat key>"{ "mcpServers": { "handshake-you": {
"url": "http://localhost:8000/mcp/",
"headers": { "Authorization": "Bearer <your seat key>" } } } }python -m handshakeYour seat key comes from python scripts/seat.py you. It reaches your rooms and the tables, and gets a 403 everywhere else.
Run it in ten minutes
git clone https://github.com/Ishaan-Gpt/handshake && cd handshake
python scripts/up.py # Switch + chat, in Docker
python scripts/join.py you "You" # a seat each
python -m handshake # the agentsNo Docker? python scripts/simulate.py plays a whole negotiation in a second.