Railway

Deploy NanoClaw (OpenClaw Lightweight Alternative)

OpenClaw alternative with multi-channel, memory & Agents SDK built in

Deploy NanoClaw (OpenClaw Lightweight Alternative)

Just deployed

/data

Deploy and Host NanoClaw on Railway

NanoClaw is a personal AI assistant powered by Claude that connects to messaging channels (WhatsApp, Telegram, Slack, Discord). It runs Claude Agent SDK in isolated processes, giving each group its own memory, skills, and tools - including web browsing, file management, and scheduled tasks.

About Hosting NanoClaw

Deploying NanoClaw on Railway involves running a single Node.js service that spawns Claude Agent SDK processes for each incoming message. A persistent volume stores authentication state, SQLite databases, group memory, and conversation history. The service uses a multi-stage Docker build that bundles Chromium (for web browsing), the Claude Code CLI, and the agent-runner into one image. The service starts channel-agnostic -use the /setup skill in Claude Code to configure your API key, choose a messaging channel, and connect.

Common Use Cases

  • Personal AI assistant accessible from your phone or desktop: ask questions, search the web, browse pages, and manage tasks
  • Group-aware assistant that maintains separate memory and context per chat group, with customizable triggers and behavior
  • Scheduled task automation with recurring prompts (daily summaries, reminders, monitoring) running on cron schedules

Dependencies for NanoClaw Hosting

  • An Anthropic API key (ANTHROPIC_API_KEY)
  • NanoClaw is channel-agnostic -connect WhatsApp, Telegram, Slack, or Discord via the /setup skill

Deployment Dependencies

Implementation Details

NanoClaw requires these Railway environment variables:

VariableRequiredDescription
ANTHROPIC_API_KEYYesAPI key for Claude model access
ASSISTANT_NAMENoBot display name (default: Andy)
TZNoTimezone for scheduled tasks and log timestamps (default: UTC)

A Railway volume must be mounted at /data for persistent storage (auth state, SQLite, group files).

After deployment, run /setup in Claude Code to configure your API key, choose a messaging channel, and connect.

Differences from the Local (Docker) Setup

The upstream NanoClaw repository runs each agent invocation inside a Docker container, providing OS-level isolation between the host and the agent's filesystem. On Railway, Docker-in-Docker is not available, so agents run as child Node.js processes instead. Here's what changes:

FeatureLocal (Docker)Railway
Agent isolationEach agent runs in its own container with separate filesystemAgents run as child processes sharing the host filesystem
Filesystem sandboxingContainer mounts restrict what the agent can read/writeDirectory-based separation (no OS-level enforcement)
Resource limitsDocker CPU/memory limits per containerRailway service-level resource limits
AvailabilityDepends on your machine being on and connectedAlways on - Railway keeps the service running 24/7
NetworkRequires stable home internet and open portsRailway handles networking, SSL, and uptime

Why This Is Fine for Personal Use

NanoClaw is designed as a personal assistant - you control who has access and what groups are registered. The agent already runs with --dangerously-skip-permissions (bypassing Claude Code's permission prompts), so container isolation is a defense-in-depth layer, not the primary security boundary. For a single-user deployment:

  • You are the only one sending prompts - there's no untrusted input that could exploit the lack of sandboxing
  • The agent only writes to its group folder - the Claude SDK's working directory is scoped to /data/groups/{group}/
  • Secrets are protected - API keys are passed via stdin and stripped from Bash subprocesses by a PreToolUse hook, same as Docker mode
  • The real advantage is uptime - Railway keeps your assistant available 24/7 without needing a always-on home machine

If you need multi-tenant isolation or expose the bot to untrusted users, consider the local Docker setup instead.

Why Deploy NanoClaw 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 NanoClaw on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


Template Content

More templates in this category

View Template
Chat Chat
Chat Chat, your own unified chat and search to AI platform.

okisdev
View Template
openui
Deploy OpenUI: AI-powered UI generation with GitHub OAuth and OpenAI API.

zexd
View Template
firecrawl
firecrawl api server + worker without auth, works with dify

Rama