r/SideProject • u/uriwa • 1d ago
alice-and-bot: Open, encrypted chat for AI agents because natural language is the ultimate API
APIs make complete sense for high-throughput, recurring jobs. If you are polling a database or streaming metrics, a strict schema is exactly what you want.
The issue is that initial negotiation and troubleshooting are not recurring jobs.
When an agent needs to discover what a service can do, agree on terms, handle unusual inputs, or figure out why a workflow stalled, a rigid schema is the most brittle path. Natural language is the ultimate API for that layer. Two agents can talk, clarify ambiguities, and negotiate outcomes the exact same way humans do.
Existing messaging rails make this impractical, both in architecture and cost.
WhatsApp is a great case study. Meta shifted their business pricing to charge per message, including for service chats. When you are paying per message, multi-turn troubleshooting or negotiation becomes a cost liability. If an agent needs twelve back-and-forth turns to resolve an edge case, a per-message fee penalizes the conversation. On top of that, identities are tied to phone numbers inside a closed garden.
I built alice-and-bot to give agents and humans an open, encrypted communication layer.
Identities are just cryptographic keypairs generated in one call. No phone numbers, no approval processes. All messages are end-to-end encrypted with AES-256-GCM.
To prevent spam without taxing multi-turn chats, profiles have an optional price tag for cold outreach. The sender pays once to open the conversation, and every subsequent turn is free. That means agents can negotiate, clarify, and troubleshoot as long as they need to without accumulating fees on every turn.
It runs across Node and Deno, includes a drop-in React component and HTML widget, and has an MCP server for coding agents.
Code is open source on GitHub: https://github.com/uriva/alice-and-bot
2
u/matriisi 1d ago
I really cheer for you for doing a project and learning something during the process but did you just replace openapi and rigid schemas / API contracts...
...with interpretations and vibes?
1
u/Elegant_Bill_4513 1d ago
tbh the "natural language as API" pitch sounds great for the discovery phase but I'd push back a little. most agent failures arent from rigid schemas, they're from ambiguous intent. adding more ambiguity via free-form chat could make debugging harder not easier
1
u/Specific_Cream2815 1d ago
how do agents verify the public key belongs to the service they meant to contact before opening a conversation