← トップに戻る

Moltworker セットアップガイド

概要

Cloudflare Workers/Containers上で動作するセルフホストAIエージェント「Moltworker」(OpenClaw/Moltbot)のセットアップ手順です。

Anthropic Claude APIを搭載したパーソナルAIアシスタントを、月額5ドルのCloudflare Workers有料プランで構築します。

参考: CloudflareでセルフホストAIエージェント「Moltworker」を構築した全記録


全体の流れ

  1. 前提条件の確認: Docker、Cloudflareアカウント、APIキー
  2. 環境構築: Docker Desktopインストール、ディスク容量確保
  3. リポジトリクローン: moltworkerのダウンロードと依存関係インストール
  4. Wrangler設定: Cloudflareへのログインとシークレット設定
  5. R2ストレージ設定: データ永続化のためのオブジェクトストレージ構築
  6. デプロイ実行: DockerイメージビルドとCloudflareレジストリへのプッシュ
  7. Cloudflare Access設定: Admin UIの保護(オプション)
  8. デバイスペアリング: 最初のデバイス承認
  9. 動作確認: チャットテストで動作を確認

前提条件

必要なアカウントとツール

項目必要なもの確認方法
CloudflareアカウントCloudflareの無料アカウントhttps://dash.cloudflare.com で登録
Workers有料プラン月5ドルの有料プランダッシュボードからアップグレード
Anthropic APIキーClaude APIキーhttps://console.anthropic.com で取得
Docker DesktopMac用DockerデスクトップアプリHomebrewまたは公式サイトからインストール
Node.jsバージョン18以上node --version で確認
npmNode.jsに付属npm --version で確認

ディスク容量要件

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

実施結果:


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ダッシュボードを開く

  1. R2ダッシュボードにアクセス
  2. 「Purchase R2」または「Enable R2」をクリック
  3. 無料枠内なので追加コストはありません

バケットを作成

  1. **「Create bucket」**をクリック
  2. バケット名: moltbot-data
  3. ロケーション: デフォルト(最も近いロケーション)
  4. **「Create bucket」**をクリック

STEP 8: Workersサブドメインの確認

Workers & Pagesを開く

  1. Workers & Pagesを開く
  2. **「Compute & AI」**セクションから探す
  3. workers.devサブドメインが自動作成されていることを確認

: サブドメインは一度作成するとアカウント内で共通です


STEP 9: R2 API Tokenの作成と設定

API Tokenの作成

  1. R2ダッシュボードで**「Manage R2 API Tokens」**をクリック
  2. **「Create API Token」**をクリック
  3. 以下の設定でトークンを作成:
    • Permissions: Object Read & Write
    • TTL: 無期限(推奨)
    • Bucket: Include > Specific > moltbot-data
  4. **「Create API Token」**をクリック

トークン情報をコピー

以下の3つの情報をコピー(再表示不可):

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

デプロイプロセス

  1. Viteビルド: フロントエンドとWorkerコードをバンドル
  2. Workerアップロード: Cloudflareにコードをアップロード
  3. Dockerイメージビルド: ローカルでコンテナイメージをビルド(約8分)
  4. レジストリにプッシュ: Cloudflareレジストリにイメージをプッシュ(約1分)

所要時間: 約10分

: イメージサイズは約2GBあります。初回デプロイは時間がかかります。


STEP 11: Cloudflare Accessの設定(Admin UI保護)

チームドメインの確認

  1. Zero Trust Settingsにアクセス
  2. **「Custom Pages」**セクションを確認
  3. Team domainをコピー(例: nifoche.cloudflareaccess.com

AUDの取得

  1. Workers & Pagesでmoltbot-sandboxをクリック
  2. 「Settings」 > 「Domains & Routes」
  3. workers.devの行で**「…」** > 「Configure Access」
  4. **「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でデバイスを承認

  1. Admin UIにアクセス:
    https://moltbot-sandbox.k-tanaka-597.workers.dev/_admin/
  2. Cloudflare Accessでログイン(まだの場合)
  3. **「Pending Pairing Requests」**セクションを確認
  4. デバイス情報を確認
  5. **「Approve」**ボタンをクリック
  6. デバイス名を入力(オプション)
  7. **「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」 解決策:

エラー: 「You need a workers.dev subdomain」 解決策:

エラー: 「Unauthorized」 解決策:

エラー: 「Image too large: needs 2173MB, but your app is limited to images with size 2000MB」 解決策:

アクセス関連

エラー: 「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」 解決策:

エラー: 「Unauthorized: Your Cloudflare Access session is invalid or expired」 解決策:


まとめ

完成後の構成

コンポーネント説明
Worker URLhttps://moltbot-sandbox.k-tanaka-597.workers.dev
Control UIチャット画面(ゲートウェイトークンが必要)
Admin UI管理画面(Cloudflare Accessで保護)
R2ストレージデータ永続化(5分ごとに自動バックアップ)
AIモデルAnthropic Claude

アクセス情報

コスト

サービスコスト
Cloudflare Workers有料プラン月5ドル
R2ストレージ無料枠内(10GB/月)
Anthropic API従量課金(使用量による)

月額見積もり: 約5ドル + API使用料

次のステップ(オプション)

  1. 日本語設定: 「これからは日本語で返して」と指示
  2. スキルの追加: Admin UIから独自のスキルを追加可能
  3. チャンネル連携: Slack、Discord、Telegram等との連携
  4. R2データ管理: Admin UIから会話履歴を確認

参考リンク


作成日: 2026-02-08 目的: Cloudflare Workers上でMoltworkerを構築し、月5ドルでパーソナルAIアシスタントを運用 ステータス: ✅ 完了・稼働中