---
title: "Deploy HolyClaude Workstation"
description: "AI coding workstation: Claude Code, web UI, headless browser, 8 AI CLIs"
category: "AI/ML"
url: https://railway.com/deploy/holyclaude-workstation
---

# Deploy HolyClaude Workstation

AI coding workstation: Claude Code, web UI, headless browser, 8 AI CLIs

**[Deploy HolyClaude Workstation on Railway](https://railway.com/template/holyclaude-workstation)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/holyclaude-workstation/manifest.json

- **Creator:** Paul Zarudnev's Projects
- **Category:** AI/ML

## Template content

### holyclaude

- **Source:** https://github.com/RockinPaul/holyclaude_railway_template
- **Health check:** /
- **Public domain:** Yes

## Documentation

# Deploy and Host HolyClaude on Railway

[HolyClaude](https://github.com/CoderLuii/HolyClaude) is an AI coding workstation in a single
container: Claude Code with a browser UI, a headless Chromium, eight AI CLIs — Codex, Gemini,
Cursor, Junie, OpenCode, Pi, TaskMaster — and around fifty development tools, supervised by
s6-overlay.

This template runs it on Railway with its state on a volume and its web UI behind a password
generated for your deployment. One service, one volume, a public domain. The deploy form asks for
nothing.

## About Hosting HolyClaude

The container runs CloudCLI, the web UI, on port 3001 behind Railway's edge, with Claude Code and
the other CLIs installed alongside it and Chromium available for screenshots and browser testing.
Upstream is built for Docker Compose — bind mounts, a port published only on `127.0.0.1`, and a
person who creates the account in the browser — so this template adapts three things and changes
nothing else.

The volume mounts at `/home/claude/.claude`, the application's own state directory, because
upstream refuses to start when that path is a symlink and a mount over `/home/claude` would hide
the Claude Code binary the image installs. Your projects live at `/workspace`, which is symlinked
into that volume. The account database, and with it the signing secret for your session, sits on
the volume too — so a redeploy does not sign you out.

Registration is the part that needed the most care. CloudCLI is single-user: the first request to
create an account wins, and every later one is refused. That is safe on a laptop and unsafe on a
public URL, so the entrypoint creates the account itself — against a loopback-only instance of the
server, before the public one starts — and refuses to boot if that fails.

## Why Deploy HolyClaude on Railway?

- **It stays awake.** Long agent runs, builds and tests keep going when you close the laptop.
- **Nothing to install.** The image already has the CLIs, the browser, the language runtimes and
  the tools, pinned by checksum upstream.
- **Your own account.** Claude Code runs on your existing Claude subscription or API key; nothing
  is proxied through a third party.
- **It survives redeploys.** Projects, settings, memory, CLI credentials and your signed-in session
  are on the volume.
- **Reachable from anything.** It is a browser UI, so a phone or a borrowed machine works.

## Common Use Cases

- A always-on development box for agent work that outlasts a laptop session.
- Coding from a tablet or phone through the browser terminal and editor.
- Browser automation and screenshot testing with a Chromium that is already configured.
- Trying several AI CLIs against the same repository without installing any of them locally.

## Dependencies for HolyClaude Hosting

- An Anthropic account — a Claude Pro/Max subscription (sign in from the web UI) or an API key.
- Optional keys for the other CLIs: `GEMINI_API_KEY`, `OPENAI_API_KEY`, `CURSOR_API_KEY`. These can
  be added as service variables or entered in the web UI, which stores them on the volume.

### Deployment Dependencies

- Upstream project:  (MIT), image
  `coderluii/holyclaude:1.6.1`.
- Web UI: `@cloudcli-ai/cloudcli` (upstream `siteboon/claudecodeui`), **AGPL-3.0-or-later**,
  shipped unmodified.
- Claude Code is Anthropic's proprietary CLI, used with your own account:
  .
- Template source:  (MIT).

### Implementation Details

**After deploying:** copy `CLOUDCLI_PASSWORD` from the service's Variables tab, open the public
domain, and sign in as **`admin`**. Then sign in to Anthropic from the web UI, or set
`ANTHROPIC_API_KEY`.

**Read this before deploying.** Upstream advises against putting HolyClaude on the public internet
at all: the web UI gives a full shell, runs arbitrary code, and holds your Anthropic credentials,
and the project recommends a Tailscale or Cloudflare tunnel instead of an open port. A Railway
domain is public.

This template does what can be done about that: a single-user account claimed before the server is
ever exposed, registration closed afterwards (403 from the first request the public port answers),
bcrypt at cost 12, a per-installation JWT secret, and a 24-character generated password that the
container refuses to start without. **CloudCLI has no login rate limiting**, so that password is the
whole door — keep the generated one, and treat the URL like an SSH session into your dev box.

There is no password-change endpoint: `CLOUDCLI_PASSWORD` is the initial password, and resetting it
means deleting the account database from the volume. Do not set `API_KEY` — CloudCLI applies it to
every `/api` request, including the browser's, which locks you out of the UI.

**Notes.** The image is large (~13 GB unpacked), so the first deploy takes a while and it will not
fit the Free or Trial plan's 4 GB image limit. Codex's bubblewrap sandbox needs user namespaces that
Railway does not grant; use Codex in its non-sandboxed modes, or Claude Code. Running terminals and
agent sessions end on redeploy; files on the volume do not.


## Similar templates

- [Chat Chat](https://railway.com/deploy/-WWW5r) — Chat Chat, your own unified chat and search to AI platform.
- [stella](https://railway.com/deploy/stella) — Self-host stella with web, API, Postgres, Redis, and object storage.
- [Hermes Agent | OpenClaw Alternative with Dashboard](https://railway.com/deploy/hermes-agent-or-openclaw-alternative-wit) — Self-Hosted Hermes AI Agent for Telegram, Discord & Slack

Open this page in a browser: https://railway.com/deploy/holyclaude-workstation
