Deploy ZeroClaw — Lightweight Self-Hosted AI Agent
Self-host ZeroClaw — a tiny Rust AI agent for Discord & more
zeroclaw
Just deployed
/zeroclaw-data
Deploy and Host ZeroClaw on Railway
ZeroClaw is an ultra-lightweight, open-source AI agent runtime built entirely in Rust — a single tiny binary that gives you a self-hosted, always-on personal AI assistant across Discord, Telegram, and 30+ messaging channels. It connects to ~20 LLM providers (Anthropic, OpenAI, Ollama, OpenRouter, and any OpenAI-compatible endpoint), with persistent memory, tool execution, and scheduled autonomous tasks. Its headline feature is efficiency: where other agent frameworks need a gigabyte of RAM, ZeroClaw sips a few megabytes — so it runs 24/7 on Railway for almost nothing. This template deploys it with a persistent volume so your agent's memory survives redeploys.
What This Template Deploys
| Service | Purpose |
|---|---|
| ZeroClaw | The Rust AI agent runtime — messaging channels, memory, and tool execution |
A single, tiny service. A persistent volume holds the agent's configuration and long-term memory, so its history and settings survive redeploys. Because ZeroClaw is a compact Rust binary, it runs on the smallest Railway instance.
About Hosting
ZeroClaw is a lean, powerful agent runtime, and a few things are worth understanding to run it well on Railway.
It's astonishingly lightweight — that's the whole point. ZeroClaw compiles to a single Rust binary of a few megabytes and uses only a few megabytes of RAM at runtime — on the order of 200× less than heavier agent frameworks. That means running an always-on AI agent on Railway costs almost nothing, since it fits on the smallest instance — the difference between an agent that's expensive to keep running and one you barely notice on your bill.
Bring your own LLM provider key. ZeroClaw is a runtime, not a model — it orchestrates calls to the provider you choose. Add your API key for Anthropic, OpenAI, OpenRouter, Ollama, or any OpenAI-compatible endpoint, and ZeroClaw handles the agent loop, memory, and channel connections. You control which model powers your agent and pay that provider directly.
Configuration is file-driven — plan for config.toml. ZeroClaw is configured through a config.toml defining providers, channels, memory, and policies, rather than a long list of environment variables. On Railway you provide this on the volume or through the template's configuration mechanism. Because ZeroClaw moves quickly, confirm the exact approach and current variables against the repository before publishing.
Persist the volume — it's your agent's memory. ZeroClaw's long-term memory and configuration live on the mounted volume. Without it, your agent forgets everything and loses its setup on redeploy. This template mounts a volume so both persist.
Connect your channels with safe defaults. ZeroClaw reaches you through Discord, Telegram, and many other channels, using allowlists and pairing so only you and people you approve can talk to it. Configure your channel tokens and keep the default access controls in place.
Set clear policies for autonomous behavior. ZeroClaw can run scheduled, autonomous tasks — daily summaries, web research, reminders. Define what it's allowed to do through its policy configuration, so its autonomy stays within bounds you've set, and enable only the tools and channels you actually need.
Typical cost: ~$5/month on Railway for the tiny runtime, plus whatever you pay your LLM provider for usage. ZeroClaw is free and open source (MIT/Apache-2.0).
How It Compares
| ZeroClaw (self-hosted) | OpenClaw | Managed agent SaaS | Cloud assistant | |
|---|---|---|---|---|
| Footprint | Few MB RAM | ~1 GB+ | N/A (hosted) | N/A |
| Hosting cost | ~$5/mo | $20–50/mo | Subscription | Subscription |
| Provider choice | ~20 providers | Many | Vendor's | Vendor's |
| Channels | 30+ | Many | Varies | Limited |
| Data ownership | Full — your infra | Full | Vendor | Vendor |
| Self-hostable | Yes | Yes | No | No |
OpenClaw is feature-rich but heavy, needing a gigabyte or more of RAM and a bigger bill. Managed agent services and cloud assistants remove the ops work but bill monthly and keep your data on their servers. ZeroClaw's edge is doing the same job — multi-channel, multi-provider, memory, autonomy — in a footprint so small it runs almost free, self-hosted, with your agent and data on infrastructure you own.
Deploy in Under 5 Minutes
- Click Deploy on Railway — the ZeroClaw runtime builds (~2 minutes)
- Confirm the volume is mounted for memory and configuration
- Add your LLM provider API key (Anthropic, OpenAI, OpenRouter, or another)
- Configure your channel (e.g. a Discord or Telegram bot token) with its access allowlist
- Start the agent and message it from your channel to confirm it responds
Define your agent's tools and any scheduled tasks in its configuration once it's running.
Common Use Cases
- Personal AI assistant — an always-on agent you message from Discord or Telegram, on your own infra
- Daily briefings — schedule a recurring summary of what's new and relevant, delivered to your chat
- Low-cost always-on agent — run an AI agent 24/7 for a few dollars a month thanks to the tiny footprint
- Multi-channel bot — one agent answering across every messaging channel you configure
Configuration
| Variable | Required | Description |
|---|---|---|
| LLM provider API key | Required | Your key for Anthropic, OpenAI, OpenRouter, Ollama, etc. |
| Channel token(s) | Required | Bot token for Discord, Telegram, or your chosen channel |
Config (config.toml) | Required | Providers, channels, memory, and policies — file-driven |
| Storage volume | Pre-set | Persistent volume for memory and configuration |
| Access allowlist | Recommended | Restrict who can talk to your agent (kept on by default) |
Persist the volume and confirm the config approach. Your agent's memory and settings live on the volume — without it, a redeploy wipes them. ZeroClaw is configured via
config.toml, so verify the exact Railway configuration mechanism and current variables against the repository before publishing.
Bring your own provider key, and keep access controls on. ZeroClaw orchestrates the LLM provider you supply a key for. Keep channel allowlists and pairing enabled so only authorized users can reach your agent.
Dependencies for ZeroClaw Hosting
- Railway account — ~$5/month for the tiny runtime, plus your LLM provider usage
- An LLM provider API key (Anthropic, OpenAI, OpenRouter, Ollama, or compatible)
- A channel bot token (Discord, Telegram, or another supported channel)
- A persistent Railway volume for memory and configuration (included)
Deployment Dependencies
- ZeroClaw GitHub Repository
- ZeroClaw Documentation
- ZeroClaw Quick Start
- Railway Volumes Documentation
Implementation Details
The template runs ZeroClaw, a single Rust binary agent runtime, as one lightweight service with a persistent volume for long-term memory and configuration. Because it compiles to a few-megabyte binary and uses only a few megabytes of RAM — far less than heavier frameworks — it runs on the smallest Railway instance, keeping always-on hosting costs minimal.
ZeroClaw is a provider-agnostic runtime rather than a model: it connects to roughly twenty LLM providers (Anthropic, OpenAI, Ollama, OpenRouter, and any OpenAI-compatible endpoint) using a key you supply, and reaches users through 30+ messaging channels such as Discord and Telegram. It's configured through a config.toml defining providers, channels, memory, and policies; because the project moves quickly, the exact Railway configuration mechanism and current settings should be verified against the repository before publishing. Access controls (allowlists and pairing) restrict who can interact with the agent and should stay enabled, and autonomous behavior is bounded by the policies you define. Memory and configuration persist on the volume, the component to back up.
Frequently Asked Questions
Why is ZeroClaw so much lighter than other agents? It's written in Rust and compiles to a tiny binary using only a few megabytes of RAM — on the order of 200× less than frameworks like OpenClaw. That's why it runs almost free on a small Railway instance.
Do I need my own LLM API key? Yes. ZeroClaw is a runtime, not a model — supply a key for Anthropic, OpenAI, OpenRouter, Ollama, or any OpenAI-compatible provider, and you pay that provider for usage.
How do I configure it? Through a config.toml file that defines your providers, channels, memory, and policies, provided on the volume or the template's config mechanism. Confirm the exact approach against the repository, as the project evolves quickly.
Does my agent's memory persist? Yes, on the mounted volume — long-term memory and configuration survive redeploys. Without the volume, your agent would reset on every deploy.
Is it safe to run an autonomous agent? ZeroClaw uses allowlists and pairing so only approved users can reach it, and its autonomy is bounded by policies you define. Keep those controls enabled and grant only the tools and channels you need.
Why Deploy ZeroClaw on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying ZeroClaw on Railway you get an always-on personal AI agent that costs almost nothing to run — a tiny Rust runtime, a persistent volume for memory, and automatic HTTPS. Multi-channel, multi-provider, and self-hosted, with your agent and data entirely on infrastructure you own.
Template Content
zeroclaw
ghcr.io/zeroclaw-labs/zeroclaw