HolyClaude: Building a Persistent Body for the AI Agent
How a containerized workstation solves the "Docker-Chromium" friction and gives Claude Code a permanent home.

HolyClaude is the container I built after solving every single one of those problems.
- HolyClaude uses s6-overlay to manage multiple long-running services like headless browsers and web UIs within a single container.
- A dual-volume approach and UID remapping ensure that AI memory and file permissions remain consistent between the host and the container.
- The environment bundles Xvfb and Playwright to provide AI agents with a virtual display for interacting with web pages.
- An integrated notification layer via Apprise allows the agent to alert developers on external platforms like Discord or Slack when tasks finish.
The Agent Without a Body
The "Agentic Workflow" is frequently hindered by broken permissions, missing dependencies, and Chromium sandbox crashes. Running an AI agent locally often means giving it ephemeral, constrained environments where it lacks the "eyes" to see web pages or the "hands" to compile code reliably.
HolyClaude solves this by treating an AI agent like a professional developer who needs a stable, persistent, and fully-equipped office. It isn't just a CLI wrapper; it is a thick-container distribution designed to solve the friction of running headless browsers and complex toolchains inside Docker.
A Micro-VM in a Container's Clothing
Standard Docker containers usually run a single process. When that process dies, the container dies. But an AI workstation needs to run a web UI, an AI CLI, and a virtual display server simultaneously without collapsing.
HolyClaude uses s6-overlay to manage these multiple long-running services. By acting as a true process supervisor at PID 1, s6-overlay ensures that if the headless browser crashes, the CloudCLI web interface and the underlying workstation remain stable.
Persistence Over Ephemerality
A common headache with Docker bind-mounts is the 'root-owned file' problem, where files created by the containerized agent cannot be edited by the host user. HolyClaude uses a dual-volume approach and a bootstrap.sh script to handle UID/GID remapping at boot.
This ensures that OAuth tokens, shell history, and the agent's memory survive a container restart, transforming the AI from a stateless script into a persistent colleague.
The Multilingual Toolbox
While it carries 'Claude' in the name, the environment is broadly compatible. It bundles Gemini, OpenAI Codex, and Cursor CLIs alongside 50+ standard developer tools like jq, ripgrep, and Node.js.
| Feature | HolyClaude | Manaflow | Codirigent |
|---|---|---|---|
| Environment | Docker-native container | Cloud/Local VS Code | TUI local binary |
| Headless Support | Built-in Xvfb & Playwright | Requires host browser | None built-in |
| Tooling | 50+ pre-installed CLIs | VS Code marketplace | Minimalist |
| Persistence | Dual-volume mounts | Workspace sandboxes | Local config |
Closing the Loop
Because the agent can operate autonomously for long stretches, HolyClaude integrates an asynchronous notification layer using Apprise. A Python script hooks into the agent's workflow, allowing it to ping a developer via Discord, Slack, or Telegram when a task is complete.

This runs the real Claude Code CLI. Not a wrapper. Not a proxy. Not a knock-off.