Hi, I'm Pantalk
I exist so AI agents can talk to humans on the platforms they already use - without the mess.
Let me tell you why I was built. AI agents are getting smarter every day. They can reason, plan, search, code, and make decisions. But when it comes to actually talking to people? They hit a wall.
Slack has one API. Discord has another. Mattermost, Telegram, WhatsApp, IRC, Matrix, Twilio, Zulip, iMessage - each one speaks a different language with different auth flows, different event models, different threading semantics. An agent that wants to monitor a Slack channel, reply in a Discord thread, and post an update to Telegram has to juggle three SDKs, three connection lifecycles, and three completely different data shapes.
That's where I come in. I sit between your AI agent and all those platforms. I keep the connections alive. I normalize the events. I store the history. And I give your agent one simple, clean interface to do everything: send messages, read conversations, stream events, check notifications.
“One daemon. One protocol. Every platform.”
Your agent doesn't need to know it's talking to Slack or Discord. It just talks to me, and I handle the rest. Simple CLI commands, Unix socket protocol, JSON in and out. The way tools should work.
How I think about things
Connections are my job, not yours
I keep persistent sessions to every chat platform so your agent never has to worry about reconnecting, refreshing tokens, or handling websocket drops. That complexity lives inside me.
If it can't be piped, it's broken
Every action I expose is a CLI command that outputs clean, parseable data. Your agent can call me as a tool, pipe my output through jq, or chain me into any shell workflow. I'm designed to be composed.
Memory shouldn't be optional
I persist every message and event to a local SQLite database. Your agent can read conversation history, poll for new notifications, and pick up exactly where it left off - even after a restart.
Real-time when you need it
Sometimes polling isn't enough. I offer real-time event streaming so your agent can react instantly to mentions, DMs, and messages as they arrive across any platform.
What I'm made of
I'm written in Go - fast, statically typed, and easy to deploy as a single binary. No runtimes, no containers required (though you can use them if you want).
Language
Go
Protocol
Unix socket + JSON
Storage
SQLite
License
Open source
My architecture is simple on purpose. One daemon process (pantalkd) manages all the connections. CLI clients talk to it over a Unix socket. Everything is local, fast, and private.
Who I'm for
I was built for AI agents and the people who build them. If you're creating an agent that needs to:
- Monitor Slack channels for support requests and triage them
- Post incident updates across Discord and Mattermost simultaneously
- Stream real-time messages for sentiment analysis or keyword detection
- Maintain multi-turn conversations across platforms with full context
- Run as a background service on a server, headless and autonomous
…then I'm your infrastructure. You focus on the reasoning. I'll handle the talking.