セルフホスト型サービス
CoderLuii/HolyClaude avatar
CoderLuii/HolyClaude

HolyClaudeでDocker上のAI開発ワークステーションを組み立てる

AI コーディング ワークステーション: Claude Code + Web UI + 8 AI CLI + ヘッドレス ブラウザ + 50 以上のツール。

スター 2,566フォーク 270JavaScriptMIT

ひと目でわかる

これは何?
Claude Code、CloudCLI Web UI、Playwright、複数のAI CLIと開発ツールをコンテナへまとめるMITライセンスの環境。
誰に向いている?
更新は`docker compose pull`の後に`docker compose up -d`を実行します。entrypoint.sh、bootstrap.sh、s6-overlayがGit設定、初回設定、CloudCLI、Xvfb、sshdを管理するため、更新後はサービスの起動とmountを確認します。
商用利用できる?
できます。MIT は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
今もメンテナンスされている?
されています。最後のコミットは 1 日前です。
何の言語で書かれている?
主に JavaScript です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月15日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

compose一つで揃う開発環境

HolyClaudeはClaude Code CLI、CloudCLIのWeb UI、ヘッドレスChromium、Playwright、8つのAI CLI、50以上の開発ツールを一つのDocker環境へまとめます。READMEはDockerの共有メモリ、Xvfb、UID、SQLiteロックなど、個別導入で起きる問題を解決する目的を説明します。

フルイメージとslimイメージがあり、Node.js、Python、Git、gh、ripgrep、tmux、Chromiumなどの内容が異なります。イメージのサイズや同梱バージョンはリリースで変わるため、`latest`を固定版の代わりに扱いません。必要なツールだけを決めてvariantを選びます。

Quick Startとポート3001

READMEの手順は作業ディレクトリを作り、composeテンプレートを用意し、`docker compose up -d`を実行し、`http://localhost:3001`を開く流れです。CloudCLIアカウントを作り、Anthropicアカウントでサインインします。クイック設定はUIを`127.0.0.1:3001`へ束縛し、共有メモリを2gにします。

`./data/claude`は`/home/claude/.claude`へ、`./workspace`は作業領域へマウントされます。SYS_ADMIN、SYS_PTRACE、seccomp無効化などの設定もテンプレートにあります。ブラウザが開くことだけで満足せず、コンテナのポート、mount、capabilityを確認し、外部公開しない状態を保ちます。

認証はプロバイダーへ直接つなぐ

HolyClaudeは実際のClaude Code CLIを実行し、CloudCLIが資格情報を中継しないとREADMEは説明します。Max/ProはWeb UIのOAuth、APIキーは同じ画面から設定します。Geminiは`GEMINI_API_KEY`、Cursorは`CURSOR_API_KEY`、Codexは`OPENAI_API_KEY`または`codex login --device-auth`など、各CLIの認証が別に必要です。

資格情報はコンテナファイル、bind mount、環境変数から読み込まれます。`./data/claude`にはセッションが、`.config/gh/hosts.yml`にはGitHub資格情報が含まれる可能性があるため、READMEは共有やcommitを避けるよう警告します。ログ、バックアップ、ホスト権限も同じ境界で管理します。

永続化と権限モード

Claude Codeの設定やセッションは`./data/claude`に残りますが、CloudCLIのDBは標準ではコンテナ内にあり、再構築で作り直されます。永続化する場合は`/home/claude/.cloudcli`の名前付きvolumeを使いますが、SQLiteのロックを避けるためネットワーク共有へ置きません。

Claude CodeはacceptEditsで出荷され、編集はできてもshell実行やパッケージ導入で確認を求める設定です。`bypassPermissions`へ変更する場合はsettings.jsonと対象ワークスペースをレビューします。SSHとMoshは標準で無効で、使うならclaudeユーザーの鍵、authorized_keysの読み取り専用mount、rootログインなしを守ります。

リモート公開をしない設計

READMEは、Webターミナルがshellを公開し、Anthropic tokenやAPIキーをコンテナが保持するため、パスワードがあってもport 3001をインターネットへ転送しないよう明記します。個人利用にはTailscale、共有にはCloudflare Tunnelを推奨し、必要なら`HOLYCLAUDE_BASE_PATH`でサブパスを指定します。

まずlocalhostだけでUI、Claude Code、Playwrightのスクリーンショットを確認します。外から接続する場合は、認証、TLS、トンネルのアクセス制御、失効方法を別々に確認し、ホストのポート一覧で3001が直接公開されていないことを見ます。利便性を理由にcomposeのbindを0.0.0.0へ変えないことが重要です。

更新と採用判断

更新は`docker compose pull`の後に`docker compose up -d`を実行します。entrypoint.sh、bootstrap.sh、s6-overlayがGit設定、初回設定、CloudCLI、Xvfb、sshdを管理するため、更新後はサービスの起動とmountを確認します。v1.5.7のような具体版でNode、Playwright、pnpmなどの変更を読み、回帰試験を行います。

向いているのは、Claude Codeとブラウザ開発環境をLinuxコンテナでまとめ、ローカルまたは制御されたトンネルから使う開発者です。認証情報を保持するWeb UIを公開したい人、SQLiteをNASへ置きたい人には向きません。最初に`docker compose up -d`、localhost:3001、`./workspace`の編集、Playwright、再起動後のデータを確認し、最後にMITライセンスと第三者ツールの条件を確認します。

CoderLuii/HolyClaudeを導入候補にする場合は、READMEの最小例をそのまま本番へ持ち込まず、専用の作業場所で入力と出力を保存します。対象バージョン、実行したコマンド、設定ファイル、標準出力、エラー、生成された差分を一組にします。これにより、動いたという印象ではなく、どの条件で再現したかをレビューできます。

確認の途中でREADMEにない機能や保証を見つけたとしても、本文の事実として追加しません。未確認の項目は未確認のまま分け、リリース、issue、LICENSE、公式ドキュメントのどこで確認できるかを記録します。CoderLuii/HolyClaudeの更新で結果が変わったときは、入力を固定して差分を比べ、採用範囲を広げる前に変更理由を確認します。

実務での判定は、機能があるかだけでなく、失敗したときに状態を戻せるかで行います。初回実行前に作業ディレクトリを複製し、設定と生成物の保存先を確認します。正常系ではREADMEの例を再現し、異常系では接続切断、空の入力、権限不足、依存関係の不一致を一つずつ試します。

CoderLuii/HolyClaudeが扱うデータやコードを共有するときは、公開範囲と保存期間を明示します。レビュー担当者が出力だけを見て判断できるよう、入力、版、ログ、差分を残します。数値や利用者の声を引用する場合も、READMEの自称値と自分で測った結果を分けて記載します。

HolyClaudeではlocalhost:3001の公開範囲と`./data/claude`の権限を、起動直後と再起動後の両方で確認します。

編集部の結論

更新は`docker compose pull`の後に`docker compose up -d`を実行します。entrypoint.sh、bootstrap.sh、s6-overlayがGit設定、初回設定、CloudCLI、Xvfb、sshdを管理するため、更新後はサービスの起動とmountを確認します。v1.5.7のような具体版でNode、Playwright、pnpmなどの変更を読み、回帰試験を行います。

向いているのは、Claude Codeとブラウザ開発環境をLinuxコンテナでまとめ、ローカルまたは制御されたトンネルから使う開発者です。認証情報を保持するWeb UIを公開したい人、SQLiteをNASへ置きたい人には向きません。最初に`docker compose up -d`、localhost:3001、`./workspace`の編集、Playwright、再起動後のデータを確認し、最後にMITライセンスと第三者ツールの条件を確認します。 READMEの説明を超える保証は置かず、上記の具体的な入力、設定、ログ、差分を確認できた範囲だけで採用を判断してください。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
コミュニティノート

コミュニティノート