经 AI Skill Hub 精选评估,圣Claude AI工作站 获评「推荐使用」。已获得 2.3k 颗 GitHub Star,这款Agent工作流在功能完整性、社区活跃度和易用性方面表现出色,AI 评分 7.8 分,适合有一定技术背景的用户使用。
基于Claude打造的开源AI编程工作站,集成代码补全、网页UI、7个AI命令行工具、无头浏览器等50+功能。适合开发者、AI工程师快速构建AI驱动的编码环境,提升开发效率。
圣Claude AI工作站 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
基于Claude打造的开源AI编程工作站,集成代码补全、网页UI、7个AI命令行工具、无头浏览器等50+功能。适合开发者、AI工程师快速构建AI驱动的编码环境,提升开发效率。
圣Claude AI工作站 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
# 克隆仓库 git clone https://github.com/CoderLuii/HolyClaude cd HolyClaude # 查看安装说明 cat README.md # 按 README 完成环境依赖安装后即可使用
# 查看帮助 holyclaude --help # 基本运行 holyclaude [options] <input> # 详细使用说明请查阅文档 # https://github.com/CoderLuii/HolyClaude
# holyclaude 配置说明 # 查看配置选项 holyclaude --config-example > config.yml # 常见配置项 # output_dir: ./output # log_level: info # workers: 4 # 环境变量(覆盖配置文件) export HOLYCLAUDE_CONFIG="/path/to/config.yml"
🌍 English | Español | Français | Italiano | Português | Deutsch | Русский | हिन्दी | 中文 | 日本語 | 한국어
This is not a minimal container. This is an entire development workstation.
One command. Full AI development workstation. Claude Code, web UI, headless browser, 7 AI CLIs, 50+ dev tools — containerized and ready.
You were going to spend 2 hours setting this up manually. Or you could just docker compose up.
Works with your existing Claude Code subscription. Max/Pro plan, API key — whatever you have, it just works.
---
The "I just want it running" template. Copy this entire block into a docker-compose.yaml file:
```yaml
Same image, every knob exposed. Copy this entire block into a docker-compose.yaml file:
```yaml
CLAUDE.md), and OAuth session (no re-login)./workspace```bash
Want to build the image yourself instead of pulling from Docker Hub? Go for it:
```bash git clone https://github.com/CoderLuii/HolyClaude.git cd holyclaude
docker build -t holyclaude .
docker build --build-arg VARIANT=slim -t holyclaude:slim .
docker buildx build --platform linux/arm64 -t holyclaude . ```
This source release vendors the patched CloudCLI package under vendor/artifacts/, so docker build installs that bundled tarball instead of downloading @siteboon/claude-code-ui from npm.
Then use image: holyclaude instead of image: coderluii/holyclaude:latest in your compose file.
<p align="right"> <a href="#top">↑ back to top</a> </p>
---
1. Create a folder for HolyClaude:
mkdir holyclaude && cd holyclaude
2. Create a docker-compose.yaml file. Copy one of the templates below: - Quick template — minimal, zero config, just works - Full template — all options, fully documented
3. Pull and start:
docker compose up -d
4. Open the web UI:
http://localhost:3001
5. Create a CloudCLI account (takes 10 seconds), sign in with your Anthropic account, and you're live.
No .env files. No pre-configuration. No reading 40 pages of docs before you can start. It just runs.
Want to reach it from outside your network? Don't port-forward it. See Remote Access & Exposure — use Tailscale or Cloudflare Tunnel instead.
<p align="right"> <a href="#top">↑ back to top</a> </p>
---
The complete reference. Every variable, what it defaults to, what it does.
| Variable | Default | What it does |
|---|---|---|
TZ | UTC | Container timezone |
PUID | 1000 | Container user ID — match your host to avoid permission issues |
PGID | 1000 | Container group ID — match your host to avoid permission issues |
NODE_OPTIONS | --max-old-space-size=4096 | Node.js heap memory limit in MB |
GIT_USER_NAME | HolyClaude User | Git commit author (set once on first boot) |
GIT_USER_EMAIL | noreply@holyclaude.local | Git commit email (set once on first boot) |
CHOKIDAR_USEPOLLING | *(unset)* | Set to 1 for SMB/CIFS — enables polling file watchers |
WATCHFILES_FORCE_POLLING | *(unset)* | Set to true for SMB/CIFS — enables Python polling |
NOTIFY_DISCORD | *(unset)* | Discord webhook URL for notifications |
NOTIFY_TELEGRAM | *(unset)* | Telegram bot URL for notifications |
NOTIFY_PUSHOVER | *(unset)* | Pushover URL for notifications |
NOTIFY_SLACK | *(unset)* | Slack webhook URL for notifications |
NOTIFY_EMAIL | *(unset)* | Email (SMTP) URL for notifications |
NOTIFY_GOTIFY | *(unset)* | Gotify URL for notifications |
NOTIFY_URLS | *(unset)* | Catch-all — comma-separated [Apprise URLs](https://github.com/caronc/apprise/wiki) |
ANTHROPIC_API_KEY | *(unset)* | Anthropic API key (alternative to web UI OAuth) |
ANTHROPIC_AUTH_TOKEN | *(unset)* | Anthropic auth token (alternative to API key, or set to ollama for Ollama) |
ANTHROPIC_BASE_URL | *(unset)* | Custom Anthropic API endpoint (proxies, private deployments, or Ollama's Anthropic-compatible API) |
CLAUDE_CODE_USE_BEDROCK | *(unset)* | Set to 1 to use Amazon Bedrock backend |
CLAUDE_CODE_USE_VERTEX | *(unset)* | Set to 1 to use Google Vertex AI backend |
GEMINI_API_KEY | *(unset)* | Google Gemini API key |
OPENAI_API_KEY | *(unset)* | OpenAI API key (for Codex CLI, or use codex login --device-auth for ChatGPT subscription) |
CURSOR_API_KEY | *(unset)* | Cursor API key |
<p align="right"> <a href="#top">↑ back to top</a> </p>
---
By default, the CloudCLI account database (~/.cloudcli) is container-local and gets wiped on rebuild. Re-creating the account takes 10 seconds, so most people leave it as-is.
If you want it to survive rebuilds, add a named Docker volume to your compose file:
services:
holyclaude:
volumes:
- ./data/claude:/home/claude/.claude
- ./workspace:/workspace
- cloudcli-data:/home/claude/.cloudcli # add this line
volumes:
cloudcli-data: # and this block
Do NOT bind-mount./data/cloudclion a network share (NAS, SMB/CIFS, NFS). CloudCLI stores its account in SQLite, and SQLite's file locking breaks on network mounts. You'll hitdatabase is lockederrors constantly. Named volumes live on the Docker engine's local filesystem, which is why this works — bind mounts pointing at a NAS will not.
A bind mount to a local SSD path is fine too, just keep it off any network share.
<p align="right"> <a href="#top">↑ back to top</a> </p>
---
Seven AI CLIs. One container. No other Docker image gives you this.
| Provider | Command | How to authenticate | Subscription works? |
|---|---|---|---|
| **Claude Code** | claude | CloudCLI web UI (OAuth) | **Yes** — Max/Pro plan or API key |
| **Gemini CLI** | gemini | GEMINI_API_KEY env var | API key (pay-per-use) |
| **OpenAI Codex** | codex | OPENAI_API_KEY or codex login --device-auth | **Yes** — ChatGPT Plus/Pro/Team/Enterprise or API key |
| **Cursor** | cursor | CURSOR_API_KEY env var | API key |
| **TaskMaster AI** | task-master | Uses existing AI provider keys | Works with configured keys |
| **Junie** | junie | JetBrains AI subscription | JetBrains account required |
| **OpenCode** | opencode | Configure via TUI | Supports multiple providers |
Claude Code is the primary CLI. The others are there because sometimes you want a second opinion, or a specific model's strengths, or you're comparing outputs. Having all of them one Tab away is the whole point.
<p align="right"> <a href="#top">↑ back to top</a> </p>
---
Two flavors. Same quality. Pick your weight class.
| Tag | What you get | Best for |
|---|---|---|
**latest** | Everything pre-installed — every tool, every library, every CLI | Most users. Zero wait time. Claude never has to stop and install something. |
**slim** | Core tools only — Claude installs extras on-demand | Smaller VPS, limited disk, metered bandwidth |
X.Y.Z | Full image, pinned version | Production stability — you control when to update |
X.Y.Z-slim | Slim image, pinned version | Production + small footprint |
```bash
The full image includes everything above, plus:
<details> <summary><strong>Additional npm packages — deployment, ORMs, performance</strong></summary>
| Package | What it's for |
|---|---|
wrangler, @cloudflare/next-on-pages | Cloudflare Workers deployment |
vercel | Vercel deployment |
netlify-cli | Netlify deployment |
az | Azure CLI for cloud deployment and management |
prisma, drizzle-kit | The two most popular Node.js ORMs |
pm2 | Production process manager |
eas-cli | Expo / React Native builds |
lighthouse, @lhci/cli | Performance auditing (Chromium is already there) |
sharp-cli | Image processing CLI |
json-server, http-server | Mock REST APIs, static file serving |
@marp-team/marp-cli | Markdown to presentation slides |
</details>
<details> <summary><strong>Additional Python packages — PDFs, data viz, web frameworks</strong></summary>
| Package | What it's for |
|---|---|
reportlab, weasyprint, cairosvg, fpdf2, PyMuPDF, pdfkit, img2pdf | Every major PDF library. Generate them, read them, convert them, merge them. |
xlsxwriter, xlrd | Excel formats beyond what openpyxl covers |
matplotlib, seaborn | Data visualization and charts |
python-pptx | PowerPoint generation |
fastapi, uvicorn | Python web framework |
httpie | Human-friendly HTTP client (like curl but readable) |
</details>
<details> <summary><strong>Additional system packages — media, documents</strong></summary>
| Package | What it's for |
|---|---|
pandoc | Convert between any document format (markdown, HTML, PDF, docx, epub...) |
ffmpeg | Video and audio processing (extract, convert, transcode) |
libvips-dev | High-performance image processing library |
</details>
Slim users: Missing a package? Ask Claude. It installs npm/pip packages in seconds. System packages (pandoc, ffmpeg) take 1-2 minutes. You get the same capabilities — the full image just has zero wait time.
<p align="right"> <a href="#top">↑ back to top</a> </p>
---
How does HolyClaude compare to other approaches?
| Approach | Web UI | Multi-AI | Pre-configured tools | Headless browser | One command setup | Persistence |
|---|---|---|---|---|---|---|
| **HolyClaude** | CloudCLI | 5 CLIs | 50+ tools | Chromium + Xvfb + Playwright | docker compose up | Bind mounts |
| Claude Code (bare metal) | No | No | Install yourself | Install yourself | Multi-step install | Manual |
| Claude Code + oh-my-openagent | No | Yes (multi-model) | Some | No | npm install | Manual |
| DIY Docker + Claude Code | Maybe | Maybe | Whatever you add | If you configure it | If you write the Dockerfile | If you set up volumes |
| Cursor IDE | Built-in | Cursor only | IDE-bundled | No | Download app | App data |
HolyClaude isn't competing with coding agents — it's the infrastructure layer that makes them all work better. It's the container you run them inside.
<p align="right"> <a href="#top">↑ back to top</a> </p>
---
<details> <summary><strong>CloudCLI shows wrong default directory</strong></summary>
CloudCLI opens to /home/claude instead of /workspace.
Cause: WORKSPACES_ROOT not reaching the CloudCLI process. Docker-compose env vars don't pass through s6-overlay's s6-setuidgid — it runs with a clean environment by design (security feature, not a bug).
Fix: Already handled in HolyClaude. The s6 run script sets WORKSPACES_ROOT=/workspace directly in the process environment. </details>
<details> <summary><strong>SQLite "database is locked"</strong></summary>
Cause: SQLite databases on SMB/CIFS network mounts. CIFS doesn't support the file-level locking SQLite requires.
Fix: Don't store SQLite databases on network shares. HolyClaude keeps .cloudcli in container-local storage for exactly this reason. If you have your own SQLite databases in /workspace on a NAS, move them to a local path. </details>
<details> <summary><strong>Chromium crashes / blank pages / tab failures</strong></summary>
Cause: Insufficient shared memory. Docker defaults to 64MB.
Fix: Ensure shm_size: 2g in your compose file. For heavy browser use (many tabs, complex pages), increase to 4g. </details>
<details> <summary><strong>File watchers not detecting changes (hot reload broken)</strong></summary>
Cause: SMB/CIFS network mounts don't support inotify.
Fix: Enable polling in your compose environment:
- CHOKIDAR_USEPOLLING=1
- WATCHFILES_FORCE_POLLING=true Note: Polling uses more CPU than inotify. Only enable on network mounts. </details>
<details> <summary><strong>Permission denied errors</strong></summary>
Cause: Container UID/GID doesn't match host file ownership.
Fix: ```bash
HolyClaude 是一个全面的开发工作站项目,提供一个完整的开发环境。
HolyClaude 不是一个最小的容器,而是一个完整的开发工作站,包含 Claude Code、web UI、无头浏览器、7 个 AI CLI 和 50+ 个开发工具,所有这些都已经容器化并准备好使用。
HolyClaude 不需要任何环境依赖或系统要求。
HolyClaude 的安装过程非常简单,只需要一条命令:docker compose up。HolyClaude 支持您的现有 Claude Code 订阅,包括 Max/Pro 计划和 API 密钥。
HolyClaude 的使用教程如下:1. 创建一个 HolyClaude 文件夹;2. 创建一个 docker-compose.yaml 文件;3. 拉取和启动 HolyClaude:docker compose up -d;4. 打开 web UI。
HolyClaude 的配置说明包括 MCP、环境变量和关键参数等。
HolyClaude 提供 7 个 AI CLI,包括 Claude Code、Gemini 等,所有这些 CLI 都已经容器化并准备好使用。
HolyClaude 提供两种图像变体:latest 和 slim,两者都提供相同的质量,但 slim 图像更轻量级。
HolyClaude 的常见问题包括 CloudCLI 显示错误的默认目录等。
设计完整的AI编程生态系统,集成度高。但主要依赖Claude API,扩展性受限。文档完善度待评估,社区维护需观察。
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。
AI Skill Hub 点评:圣Claude AI工作站 的核心功能完整,质量良好。对于自动化工程师和运维人员来说,这是一个值得纳入个人工具库的选择。建议先在非生产环境试用,再逐步推广。
| 原始名称 | HolyClaude |
| 原始描述 | 开源AI工作流:AI coding workstation: Claude Code + web UI + 7 AI CLIs + headless browser + 50+。⭐2.3k · Dockerfile |
| Topics | Claude集成AI编程工作流自动化Docker容器化开源工具 |
| GitHub | https://github.com/CoderLuii/HolyClaude |
| License | MIT |
| 语言 | Dockerfile |
收录时间:2026-05-16 · 更新时间:2026-05-19 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端