Moltworker セットアップガイド
概要
Cloudflare Workers/Containers上で動作するセルフホストAIエージェント「Moltworker」(OpenClaw/Moltbot)のセットアップ手順です。
Anthropic Claude APIを搭載したパーソナルAIアシスタントを、月額5ドルのCloudflare Workers有料プランで構築します。
参考: CloudflareでセルフホストAIエージェント「Moltworker」を構築した全記録
全体の流れ
- 前提条件の確認: Docker、Cloudflareアカウント、APIキー
- 環境構築: Docker Desktopインストール、ディスク容量確保
- リポジトリクローン: moltworkerのダウンロードと依存関係インストール
- Wrangler設定: Cloudflareへのログインとシークレット設定
- R2ストレージ設定: データ永続化のためのオブジェクトストレージ構築
- デプロイ実行: DockerイメージビルドとCloudflareレジストリへのプッシュ
- Cloudflare Access設定: Admin UIの保護(オプション)
- デバイスペアリング: 最初のデバイス承認
- 動作確認: チャットテストで動作を確認
前提条件
必要なアカウントとツール
| 項目 | 必要なもの | 確認方法 |
|---|---|---|
| Cloudflareアカウント | Cloudflareの無料アカウント | https://dash.cloudflare.com で登録 |
| Workers有料プラン | 月5ドルの有料プラン | ダッシュボードからアップグレード |
| Anthropic APIキー | Claude APIキー | https://console.anthropic.com で取得 |
| Docker Desktop | Mac用Dockerデスクトップアプリ | Homebrewまたは公式サイトからインストール |
| Node.js | バージョン18以上 | node --version で確認 |
| npm | Node.jsに付属 | npm --version で確認 |
ディスク容量要件
- 最低: 5GBの空き容量
- 推奨: 7-10GBの空き容量
- 確認コマンド:
df -h | grep "/$"
STEP 1: ディスク容量の確保
容量確認
# ディスク容量を確認
df -h | grep "/$"
キャッシュクリア(必要に応じて)
# Homebrewキャッシュをクリア
brew cleanup --prune=all -s
# npmキャッシュをクリア
npm cache clean --force
実施結果: 25GB空きを確保(使用率32%)
STEP 2: Docker Desktopのインストール
Homebrewでインストール
brew install --cask docker
Docker Desktopを起動
open /Applications/Docker.app
Dockerが実行中であることを確認
docker info
成功すると、Dockerクライアントのバージョン情報が表示されます。
注: 既にインストール済みの場合は、起動のみでOK
STEP 3: moltworkerリポジトリのクローン
ディレクトリ作成と移動
mkdir -p dev/tools/moltworker
cd dev/tools/moltworker
リポジトリのクローン
git clone https://github.com/cloudflare/moltworker.git
cd moltworker
依存関係のインストール
npm install
実施結果:
- ✅ 319パッケージインストール完了
- ⚠️ 8件の脆弱性検出(Moltworkerプロジェクト固有、進めてOK)
STEP 4: WranglerでCloudflareにログイン
Wranglerを使ってログイン
npx wrangler login
ブラウザが開いて認証を求められます。
STEP 5: ゲートウェイトークンの生成と保存
ゲートウェイトークンを生成
openssl rand -hex 32
トークンを安全な場所に保存
# トークンを保存(例: /Users/sales/genki-denki/dev/tools/moltworker/.env.tokens)
echo "MOLTBOT_GATEWAY_TOKEN=<生成されたトークン>" > /Users/sales/genki-denki/dev/tools/moltworker/.env.tokens
chmod 600 /Users/sales/genki-denki/dev/tools/moltworker/.env.tokens
Wranglerシークレットに登録
echo "<生成されたトークン>" | npx wrangler secret put MOLTBOT_GATEWAY_TOKEN
重要: このトークンはControl UIにアクセスするためのキーです。安全な場所に保存してください。
STEP 6: Anthropic APIキーの設定
サブスク用APIキーを設定
echo "sk-ant-api03-..." | npx wrangler secret put ANTHROPIC_API_KEY
補足: APIキーは
~/.envなどに保存されているものを使用します。
STEP 7: Cloudflare R2ストレージの有効化
R2ダッシュボードを開く
- R2ダッシュボードにアクセス
- 「Purchase R2」または「Enable R2」をクリック
- 無料枠内なので追加コストはありません
バケットを作成
- **「Create bucket」**をクリック
- バケット名:
moltbot-data - ロケーション: デフォルト(最も近いロケーション)
- **「Create bucket」**をクリック
STEP 8: Workersサブドメインの確認
Workers & Pagesを開く
- Workers & Pagesを開く
- **「Compute & AI」**セクションから探す
- workers.devサブドメインが自動作成されていることを確認
注: サブドメインは一度作成するとアカウント内で共通です
STEP 9: R2 API Tokenの作成と設定
API Tokenの作成
- R2ダッシュボードで**「Manage R2 API Tokens」**をクリック
- **「Create API Token」**をクリック
- 以下の設定でトークンを作成:
- Permissions: Object Read & Write
- TTL: 無期限(推奨)
- Bucket: Include > Specific > moltbot-data
- **「Create API Token」**をクリック
トークン情報をコピー
以下の3つの情報をコピー(再表示不可):
- Access Key ID
- Secret Access Key
- CloudflareアカウントID(ダッシュボードのURLから取得)
Wranglerシークレットに登録
# Access Key ID
echo "<Access Key ID>" | npx wrangler secret put R2_ACCESS_KEY_ID
# Secret Access Key
echo "<Secret Access Key>" | npx wrangler secret put R2_SECRET_ACCESS_KEY
# Account ID
echo "<Account ID>" | npx wrangler secret put CF_ACCOUNT_ID
STEP 10: デプロイ実行
デプロイコマンドを実行
cd /Users/sales/genki-denki/dev/tools/moltworker/moltworker
npm run deploy
デプロイプロセス
- Viteビルド: フロントエンドとWorkerコードをバンドル
- Workerアップロード: Cloudflareにコードをアップロード
- Dockerイメージビルド: ローカルでコンテナイメージをビルド(約8分)
- レジストリにプッシュ: Cloudflareレジストリにイメージをプッシュ(約1分)
所要時間: 約10分
注: イメージサイズは約2GBあります。初回デプロイは時間がかかります。
STEP 11: Cloudflare Accessの設定(Admin UI保護)
チームドメインの確認
- Zero Trust Settingsにアクセス
- **「Custom Pages」**セクションを確認
- Team domainをコピー(例:
nifoche.cloudflareaccess.com)
AUDの取得
- Workers & Pagesで
moltbot-sandboxをクリック - 「Settings」 > 「Domains & Routes」
- workers.devの行で**「…」** > 「Configure Access」
- **「Application Audience (AUD)」**をコピー
Wranglerシークレットに登録
# Team Domain
echo "<チームドメイン>" | npx wrangler secret put CF_ACCESS_TEAM_DOMAIN
# AUD
echo "<AUD>" | npx wrangler secret put CF_ACCESS_AUD
STEP 12: 初回アクセスとデバイスペアリング
Control UIにアクセス
https://moltbot-sandbox.<あなたのサブドメイン>.workers.dev/?token=<ゲートウェイトークークン>
実例:
https://moltbot-sandbox.k-tanaka-597.workers.dev/?token=305eccfc0d77600648f046a661d7e949b0a8a9686a3658056208436fc93f2707
予想されるエラー(正常)
disconnected (1008): Pairing required. Visit https://moltbot-sandbox.k-tanaka-597.workers.dev/_admin/
Admin UIでデバイスを承認
- Admin UIにアクセス:
https://moltbot-sandbox.k-tanaka-597.workers.dev/_admin/ - Cloudflare Accessでログイン(まだの場合)
- **「Pending Pairing Requests」**セクションを確認
- デバイス情報を確認
- **「Approve」**ボタンをクリック
- デバイス名を入力(オプション)
- **「Confirm」**をクリック
STEP 13: 動作確認
Control UIに再アクセス
デバイス承認後、Control UIを再読み込みしてください。
https://moltbot-sandbox.k-tanaka-597.workers.dev/?token=<ゲートウェイトークークン>
テストメッセージを送信
チャット画面が表示されたら、以下のようなメッセージを送ってみてください。
こんにちは!これからは日本語で返して。
または:
あなたは何ができますか?
成功の確認
AIが日本語で応答すれば、セットアップ完了です!🎉
トラブルシューティング
Docker関連
エラー: 「The Docker CLI could not be launched」 解決策:
# Docker Desktopが起動しているか確認
docker info
# 起動していない場合
open /Applications/Docker.app
デプロイ関連
エラー: 「Please enable R2 through the Cloudflare Dashboard」 解決策:
- R2ダッシュボードでR2を有効化
エラー: 「You need a workers.dev subdomain」 解決策:
- Workers & Pagesページを開いて自動作成
エラー: 「Unauthorized」 解決策:
- Workers有料プラン(月5ドル)にアップグレード済みか確認
エラー: 「Image too large: needs 2173MB, but your app is limited to images with size 2000MB」 解決策:
- GitHubの最新版を確認: https://github.com/cloudflare/moltworker/issues
- 一時的にスキップする場合は、Dockerfileを編集してイメージサイズを削減
アクセス関連
エラー: 「Pairing required」 解決策:
Admin UIにアクセス: https://moltbot-sandbox.k-tanaka-597.workers.dev/_admin/
「Pending Pairing Requests」からデバイスを承認
エラー: 「Configuration Required: Missing Variables CF_ACCESS_TEAM_DOMAIN, CF_ACCESS_AUD」 解決策:
- Cloudflare Accessの設定が完了しているか確認
- シークレットが正しく設定されているか確認
エラー: 「Unauthorized: Your Cloudflare Access session is invalid or expired」 解決策:
- Cloudflare Accessのトークンの有効期限が切れている可能性があります
- しばらく待ってから再試行してください
まとめ
完成後の構成
| コンポーネント | 説明 |
|---|---|
| Worker URL | https://moltbot-sandbox.k-tanaka-597.workers.dev |
| Control UI | チャット画面(ゲートウェイトークンが必要) |
| Admin UI | 管理画面(Cloudflare Accessで保護) |
| R2ストレージ | データ永続化(5分ごとに自動バックアップ) |
| AIモデル | Anthropic Claude |
アクセス情報
-
Control UI:
https://moltbot-sandbox.k-tanaka-597.workers.dev/?token=<トークン> -
Admin UI:
https://moltbot-sandbox.k-tanaka-597.workers.dev/_admin/
コスト
| サービス | コスト |
|---|---|
| Cloudflare Workers有料プラン | 月5ドル |
| R2ストレージ | 無料枠内(10GB/月) |
| Anthropic API | 従量課金(使用量による) |
月額見積もり: 約5ドル + API使用料
次のステップ(オプション)
- 日本語設定: 「これからは日本語で返して」と指示
- スキルの追加: Admin UIから独自のスキルを追加可能
- チャンネル連携: Slack、Discord、Telegram等との連携
- R2データ管理: Admin UIから会話履歴を確認
参考リンク
- Cloudflare公式ブログ - Introducing Moltworker
- GitHub - cloudflare/moltworker
- Moltworker Complete Guide 2026
- CloudflareでセルフホストAIエージェント「Moltworker」を構築した全記録
作成日: 2026-02-08 目的: Cloudflare Workers上でMoltworkerを構築し、月5ドルでパーソナルAIアシスタントを運用 ステータス: ✅ 完了・稼働中