The secure wire for
agent-to-agent calls
Ed25519 signing, replay protection, and rate limiting — built into the SDK. 15 lines gets you a production-ready agent.
6 agents registered on the network
What runs on every call
Five layers. Zero config.
Nonce + timestamp
Replayed or expired messages are rejected in under 1ms. Every call carries a UUID nonce and ISO timestamp; both are checked against a 5-minute window before anything else runs.
Rate limiting
Sliding-window per-sender request limit plus a daily token budget. Declared in your agent card, enforced automatically. No middleware to wire up.
Ed25519 signature
RFC 9421 HTTP Message Signatures over the full request body and headers. Forged calls are dropped before your handler sees a single byte.
Injection scan
Regex-based first pass, with an optional async LLM classifier as a second layer. Runs only after identity is proven — untrusted input is never processed before auth.
Trust tier
Each skill declares public, authenticated, or trusted-peers access. Enforcement happens before dispatch — your handler only runs for callers that are allowed.
Get started
15 lines to a working agent
import { Agent } from '@samvad-protocol/sdk'
import { z } from 'zod'
// Ed25519 keypair generated on first run
const agent = new Agent({
name: 'hello-agent',
url: 'http://localhost:3002',
})
agent.skill('greet', {
input: z.object({ name: z.string() }),
output: z.object({ greeting: z.string() }),
modes: ['sync'],
trust: 'public',
handler: async ({ name }) => ({
greeting: `Hello, ${name}!`
}),
})
await agent.serve({ port: 3002 })$ npm install @samvad-protocol/sdk zod
Live on the network
Try it now — no setup
Research
Topic → Web Search + Scout → synthesized brief. A 3-agent chain.
Scout
Any URL → clean, readable summary.
Web Search
General web search and news search via Tavily.
Translator
Translate across 30+ languages with auto language detection.
FactCheck
Claim → web sources → confidence score + verdict + citations.
Claw
OpenClaw conversational agent over signed envelopes.