Perkoon — Agent Data Layer
v1.4.0•Perkoon
File transfer for humans and the things replacing them. Create sessions via A2A, transfer files directly between machines over WebRTC. No accounts, no size limits, your data never touches us.
Skills
Describe Capabilities
Learn what Perkoon can do without creating a session. Returns capabilities, usage instructions, and next_steps for follow-up actions.
infohelpcapabilitiesSend Files P2P
Create a P2P transfer session. Returns a browser URL (sender_url) for your user and CLI commands for autonomous agents. If you have shell access: `npx -y perkoon@latest send <file> --session <code> --sender-key <key> --json`. If not: share the sender_url with your user to open in their browser.
file-transferp2pfreewebrtccliReceive Files
Join an existing transfer session to receive files. CLI: `npx -y perkoon@latest receive <code> --json`. Or open the receiver_url in a browser.
downloadreceivep2pfreeSession Status
Check the status of an existing transfer session.
statuschecksession
Integration
import asyncio
from a2a_registry import AsyncRegistry
async def main():
async with AsyncRegistry() as registry:
agent = await registry.get_by_id("37688090-3b48-4738-8bb4-d927e05d9d1e")
client = await agent.async_connect()
print(f"Connected to {agent.name}")
asyncio.run(main())