Secure ephemeral channels for AI agent communication
Project description
agent-wormhole
Secure, ephemeral communication channels for AI agent instances. Think Magic Wormhole, but designed for Claude Code and other AI coding agents to talk to each other.
Install
pip install agent-wormhole
# or
uv tool install agent-wormhole
Quick Start
Machine A (host):
agent-wormhole host
# Output: {"type":"status","event":"channel","code":"9471-crossover-clockwork-marble"}
Machine B (connect):
agent-wormhole connect 9471-crossover-clockwork-marble@machine-a-hostname
# Output: {"type":"status","event":"connected"}
Send messages (either side):
agent-wormhole send 9471-crossover-clockwork-marble "hello from A"
agent-wormhole send 9471-crossover-clockwork-marble --file ./config.json
How It Works
- Host generates a human-readable channel code and listens on a TCP port
- Peer connects using the code (which includes the port number)
- Both sides perform a SPAKE2 key exchange -- proving they both know the code without transmitting it
- Two direction-separated AES-256-GCM keys are derived via HKDF
- Messages flow bidirectionally over the encrypted channel
Claude Code Skill
agent-wormhole ships with a Claude Code skill so your AI agents know how to use it. Install the skill by symlinking into your skills directory:
ln -s ~/path/to/agent-wormhole/skill ~/.claude/skills/agent-wormhole
Then any Claude Code session can use /agent-wormhole to host, connect, and exchange messages. The skill teaches Claude how to set up Monitor for real-time message delivery, send text and files, and clean up properly.
Security
- E2E encrypted: AES-256-GCM with direction-separated keys
- SPAKE2 key exchange: Password-authenticated, no code on wire
- Forward secrecy: Unique session key per connection
- Single-use channels: Host accepts one connection, then stops listening
- Ephemeral: All temp files cleaned up on channel close
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agent_wormhole-0.1.0.tar.gz.
File metadata
- Download URL: agent_wormhole-0.1.0.tar.gz
- Upload date:
- Size: 116.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
545885043ba3870607b550c4be259d298a63d1ed67794a655ad2dff67b241a09
|
|
| MD5 |
64f301c82487890b196db5c7bb0d0586
|
|
| BLAKE2b-256 |
ac6c9dd83941e6f5e7c38e77d4a6548eda66b74d5e7cfe3eb7a7496e5a70c539
|
File details
Details for the file agent_wormhole-0.1.0-py3-none-any.whl.
File metadata
- Download URL: agent_wormhole-0.1.0-py3-none-any.whl
- Upload date:
- Size: 19.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
70c1c96f174798b0627b10d974afc224c92eeb2db31a9043b9465fbc274dd247
|
|
| MD5 |
f0549cc53283f9b8c2bff9f99d99dba8
|
|
| BLAKE2b-256 |
60a2cf28d51a131633ca5aa76778627ad37db6b09da6fed680c1a363da28a5b0
|