Raspberry Pi で OpenClaw を動かしてみた

引用元:https://github.com/openclaw/openclaw/blob/main/docs/assets/openclaw-logo-text-dark.png

2026/04/20

はじめに

こんにちは!株式会社 HIBARI の山本です。
今回は、最近 SNS で話題の OpenClaw に挑戦してみました。本記事では、Raspberry Pi のセットアップから OpenClaw の導入、実用例まで一通り紹介いたします。

OpenClaw とは?

OpenClaw は、自分のマシン上で動かすオープンソースの AI エージェントです。Slack、Discord、LINE 等の様々なメッセージングアプリ上から操作でき、ファイル操作や Web 検索、スクリプト実行といったタスクを自律的にこなしてくれます。

今回は、OpenClaw を Google カレンダーと連携し、Discord 上から予定の確認や追加といったタスクをこなせるか試してみます。

【重要】 OpenClaw の使用に伴うセキュリティ上のリスクについて

OpenClaw はエージェント型の AI ツールであり、ファイル操作・コマンド実行・外部サービスへのアクセスなど、強力な権限を持つ操作を自律的に行うことができます。
便利な反面、以下のリスクを十分に理解した上で使用することを強く推奨します。

1. API キーの漏洩

OpenClaw は LLM(Gemini など)と連携するため、API キーを設定ファイルや環境変数に保存します。
Raspberry Pi がネットワークに接続されている場合、不正アクセスによってキーが盗まれると、意図しない課金や悪用につながる恐れがあります。

  • .env ファイルや設定ファイルをパブリックな Git リポジトリにアップロードしない

  • API キーには使用量の上限(Spending Limit)を設定しておく

2. エージェントによる意図しない操作

OpenClaw は指示に応じてファイルの読み書き・削除、シェルコマンドの実行などを行います。
プロンプトの書き方を誤ると、意図しないファイルを消したり、外部に情報を送信したりする可能性があります。

  • 重要なディレクトリには書き込み権限を与えない

  • 実行前に「何をしようとしているか」をドライランで確認する習慣をつける

3. Skills(外部ツール拡張)によるリスク

OpenClaw の Skills 機能を使うと、エージェントの能力を外部スクリプトやツールで拡張できます。
しかし、サードパーティ製の Skill はその内容を完全に把握できない場合があり、以下のリスクが生じます。

  • 悪意ある Skill がシステム情報や API キーを外部に送信する可能性がある

  • Skill が意図せずシステムコマンドを実行したり、ファイルを改ざんしたりする場合がある

  • Skills は基本的に OpenClaw と同等の権限で動作するため、信頼できないソースの Skill は絶対に使用しない

対策:

  • 使用する Skill のソースコードを必ず読んでから導入する

  • 公式またはコミュニティで信頼されているものだけを使う

  • 自作 Skill 以外は Raspberry Pi のような本番に近い環境では使わない

4. MCP サーバー経由の外部サービスへの影響

Google カレンダーや Gmail などの MCP サーバーを接続している場合、エージェントがそれらのサービスを操作する権限を持ちます
誤った指示や悪意あるプロンプトインジェクションにより、メールの送信・予定の削除といった取り返しのつかない操作が起きるリスクがあります。

  • 接続する MCP サーバーは必要最小限にする

  • 読み取り専用スコープで OAuth 認可できるサービスはそうする

5. Raspberry Pi のネットワーク露出

OpenClaw をサーバーモードで起動する場合、Raspberry Pi がローカルネットワーク上で待ち受け状態になります。
ファイアウォールの設定が不十分だと、同一ネットワーク内の他のデバイスからアクセスできてしまう場合があります。

  • 必要がなければ外部からのポートを閉じる(ufw などで制限)

  • 自宅 LAN 内のみでの使用にとどめ、パブリック Wi-Fi では使用しない

6. プロンプトインジェクション

Web 検索や外部ドキュメントを読み込む機能を使う場合、悪意ある Web ページが「エージェントへの命令」を埋め込んでいることがあります(プロンプトインジェクション攻撃)。
エージェントがその命令を実行してしまうリスクがゼロではありません。

  • 信頼できるソースのみを参照させる

  • 重要な操作の前には人間が確認するステップを挟む


Raspberry Pi のセットアップ

前提条件

  • 2 GB 以上の RAM を搭載した Raspberry Pi 4 または 5(4 GB 推奨)

  • MicroSD カード(16 GB 以上)または USB SSD

  • ネットワーク接続(Ethernet または Wi-Fi)

  • 64-bit Raspberry Pi OS(Lite 推奨。32-bit 版は使用しないこと)

セットアップ手順

1. OS の書き込み

以下の手順に従って OS の書き込みを行ってください。

  1. Raspberry Pi Imager を PC にダウンロード

  2. Raspberry Pi Imager の起動後、設定ダイアログに従って順番通りに設定

  • OS: Raspberry Pi OS Lite (64-bit)

  • ホスト名: gateway-host

  • ユーザー名とパスワードを設定

  • タイムゾーンを設定

  • Wi-Fi を設定(Ethernet を使わない場合)

  • SSH を有効化

  • SD カードまたは USB ドライブに書き込み、Raspberry Pi に挿入して本体を起動する

2. SSH で Raspberry Pi に接続する

以下のコマンドを PC のターミナル上で実行し、Raspberry Pi に接続してください。

ssh [ユーザ名]@gateway-host

3. システムを更新する

以下のコマンドで OS・ソフトの更新、主要ツールのインストールを行います。

sudo apt update && sudo apt upgrade -y
sudo apt install -y git curl build-essential

4. Node.js 24 をインストールする

OpenClaw は Node.js 上で動きます。以下のコマンドで Node.js 24 をインストールしてください。

curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash -
sudo apt install -y nodejs
node --version

5. swap を追加する

メモリ不足で落ちるのを防ぐために、以下のコマンドで swap を追加します。

sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

# 低 RAM デバイス向けに swappiness を下げる
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

プロバイダ・モデルの選定とセットアップ

今回は Google の gemini-2.5-flash を使用します。無料枠があり、Google AI Studio で簡単に API キーを発行可能です。
OpenClaw は様々なプロバイダ・モデルに対応しているため、用途に合わせて適切なものを選択してください。

  1. Google AI Studio(API-Keys) にアクセスします。

  2. [API キーを作成] ボタンをクリックし、任意のキー名・プロジェクトを設定します。

Discord 開発者ポータルで Bot を作成する

1. Discord Application と Bot を作成する

Discord 開発者ポータル にアクセスし、[新しいアプリケーション] ボタンをクリックします。
アプリケーションの名前は「OpenClaw」のような分かりやすいものに設定し、[作成] ボタンをクリックします。

2. 特権 Intent を有効にする

サイドバーの Bot タブを開き、特権 Intent を以下のように設定してください。

  • Presence Intent: OFF のままで可

  • Server Members Intent: ON 推奨

  • Message Content Intent: ON 必須

3. Bot Token をコピーする

画面の上部までスクロールし、[トークンをリセット] ボタンをクリックします。
発行されたトークンはメモなどに控えておいてください。

4. 招待 URL を生成して Bot をサーバーに追加する

サイドバーの OAuth2 タブを開き、以下の項目をそれぞれ有効化してください。

OAuth2 URLジェネレーター

  • bot

  • applications.commands

Bot の権限

  • チャンネルを表示

  • メッセージを送る

  • リンクを埋め込み

  • ファイルを添付

  • メッセージ履歴を読む

  • リアクションを付ける(任意)

画面最下部に生成された URL をコピーし、ブラウザで開きます。
Discord アプリに遷移し、アクセスが要求されたら [はい] を選択します。


OpenClaw のセットアップ

1. OpenClaw のインストール

curl -fsSL https://openclaw.ai/install.sh | bash

2. 環境変数 PATH の追記

以下のコマンドを実行して、openclaw コマンドを有効化します。

echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

3. オンボーディング

openclaw onboard --install-daemon

対話形式で OpenClaw のセットアップを行います。以下を参考に設定を行ってください。

項目

設定値

個人用途かどうか

Yes

セットアップモード

QuickStart

モデルプロバイダ

Google

API キー

発行した API キーを入力

デフォルトモデル

gemini-2.5-flash

チャンネル

Discord

Discord Bot のトークン

先ほど取得したトークンを入力

Discord チャンネルアクセス

Open

Web 検索

Skip

スキル設定

No

Hooks

Skip

4. Gateway 起動確認

以下のコマンドを実行して、OpenClaw Gateway が正常に起動しているか確認します。

openclaw status
systemctl --user status openclaw-gateway.service
journalctl --user -u openclaw-gateway.service -f

パフォーマンス向上のためのヒント

以下のコマンドを実行することで、Raspberry Pi を OpenClaw 用に最適化できます。
パフォーマンスが気になる場合は試してみてください。

OpenClaw キャッシュ設定

grep -q 'NODE_COMPILE_CACHE=/var/tmp/openclaw-compile-cache' ~/.bashrc || cat >> ~/.bashrc <<'EOF' # pragma: allowlist secret
export NODE_COMPILE_CACHE=/var/tmp/openclaw-compile-cache
mkdir -p /var/tmp/openclaw-compile-cache
EOF
source ~/.bashrc

GPU 専用メモリ最小化・Bluetooth オフ

echo 'gpu_mem=16' | sudo tee -a /boot/config.txt
sudo systemctl disable bluetooth

Discord アプリから OpenClaw に接続する

1. サーバーメンバーからの DM を許可する

Discord アプリを開き、サイドバーの [サーバーを追加] ボタンから OpenClaw 用のサーバーを作成してください。

2. サーバーメンバーからの DM を許可する

ペアリングするために、Discord で Bot からの DM を許可する必要があります。
サーバーアイコンを右クリックし、プライバシー設定から ダイレクトメッセージ を ON にしてください。

3. OpenClaw を設定してペアリングする

OpenClaw と Discord のペアリングを行います。

1. ダイレクトメッセージにて、Bot に「こんにちは」などの適当なメッセージを送信してください。

  1. Bot から ペアリングコード が返ってきます。Raspberry Pi 側で 以下のコマンドを実行し、ペアリングを承認します。

openclaw pairing approve discord [ペアリングコード]
  1. 承認後、サーバーに移動します。適当なチャンネルで @ボット名 をつけてメッセージを送信し、返答がきたらペアリング完了です。OpenClaw からの質問に答えながら、人格の決定などの初回セットアップを行ってください。

Google カレンダーを連携させる

Google Workspace CLI を使い、Google カレンダーを連携させます。

1. Google Cloud で Google Calendar API と OAuth クライアントを準備する

まずは PC 側で Google Cloud の設定を行います。

1. Google Cloud Console を開き、任意のプロジェクトを選択します。

2. 画面左上の をクリックし、 [API とサービス] → [ライブラリ] を選択します。

3. 「Google Calendar API」を検索し、[有効にする] を選択します。

4. 画面上部の検索バーで「Google Auth Platform」と検索し、[ブランディング] を開いて OAuth 同意画面の設定を行います。

5. 概要ページの [OAuth クライアントを作成] をクリックし、以下の内容で作成します。

  • アプリケーションの種類: デスクトップアプリ

  • 名前: OpenClaw など分かりやすい名前. データアクセス を開き、 スコープを追加または削除 からhttps://www.googleapis.com/auth/calendar スコープを追加します。

6. [データアクセス] を開き、 スコープを追加または削除 から https://www.googleapis.com/auth/calendar スコープを追加します。

7. 必要に応じて 対象 → + Add users から自分のメールアドレスをテストユーザーとして追加します。

8. 作成した OAuth クライアントの JSON をダウンロードし、PC で以下を実行して gws の設定ディレクトリに配置します。

mkdir -p ~/.config/gws
mv ~/Downloads/client_secret_*.json ~/.config/gws/client_secret.json

2. PC で gws を認証する

続いて、PC 上で Google Workspace CLI を使って OAuth 認証を完了させます。

  1. Google Workspace CLI をインストールします。

npm install -g @googleworkspace/cli
  1. 以下を実行して Google アカウントでログインします。

gws auth login --scopes https://www.googleapis.com/auth/calendar
  1. 以下を実行し、予定が表示されれば認証成功です。

gws calendar +agenda
  1. Raspberry Pi に渡すため、認証情報をエクスポートします。

gws auth export --unmasked > gws-credentials.json
chmod 600 gws-credentials.json

3. Raspberry Pi に gws をインストールする

次に、Raspberry Pi 側でも gws コマンドを使えるようにします。Raspberry Pi で以下を実行してください。

npm install -g @googleworkspace/cli

4. 認証情報を Raspberry Pi にコピーして動作確認する

以下のコマンドは PC 側で実行します。認証情報を Raspberry Pi にコピーし、権限を整えます。

ssh [ユーザ名]@gateway-host 'mkdir -p ~/.config/gws && chmod 700 ~/.config/gws'
scp gws-credentials.json [ユーザ名]@gateway-host:~/.config/gws/credentials.json
ssh [ユーザ名]@gateway-host 'chmod 600 ~/.config/gws/credentials.json'

その後、Raspberry Pi にログインして以下を実行し、予定が表示されれば連携成功です。

gws calendar +agenda

5. OpenClaw に Calendar Skills を追加する

最後に、Raspberry Pi で Google Calendar 用のスキルを OpenClaw に追加します。

mkdir -p ~/.local/src
git clone https://github.com/googleworkspace/cli ~/.local/src/googleworkspace-cli
mkdir -p ~/.openclaw/skills
ln -s ~/.local/src/googleworkspace-cli/skills/gws-* ~/.openclaw/skills/
systemctl --user restart openclaw-gateway.service

以上でセットアップは終了です。お疲れ様でした。


Discord から予定の確認・追加をしてみる

Discord から OpenClaw を動かして遊んでみます。
私の方で、Google カレンダーに適当に予定を入れてみました。

Discord で @Claw 今週の予定を教えて。 と尋ねてみたところ、当日以降の予定を教えてくれました。

続いて、@Claw Qiitaの記事執筆も1時間程度どこかに入れといて。 と尋ねてみると、スケジュールを確認して候補を複数挙げてくれました。
ですが、「4月15日(水)の定例ミーティング後」と「4月17日(金)の新機能テスト後」は 30 分しか空いていないため予定を追加できません (一一")

@Claw 木曜日に入れといて。 と依頼した結果、木曜日の17時から18時の枠で予定を追加してくれました。

おわりに

今回は Raspberry Pi 上で OpenClaw を動かし、Discord から Google カレンダーの予定確認や追加まで試してみました。Raspberry Pi でもここまで実用的に動かせることが分かり、「自宅で動かす AI エージェント」としてかなり面白い手応えがありました。

今後は Google カレンダー以外の連携や、定型作業の自動化なども試してみたいところです。この記事が、OpenClaw や Raspberry Pi を使った AI エージェント運用を始めるきっかけになれば幸いです。

株式会社HIBARI

株式会社HIBARIは、「”現場の抱える課題”をデジタルツイン×AIで解決する」をミッションに掲げる、沼津高専発のAIスタートアップです。静岡県を拠点に、テクノロジーを駆使しながらも現場に寄り添った「ものづくり」を発信しています。
AI開発やシステム導入に関するご相談など、お気軽にお問い合わせください。

Contact

お問い合わせ


貴社と伴走しながら
あらゆる課題を解決します。

業務内容や課題をヒアリングの上
最適なご提案をさせていただきます。
まずは、お気軽にお問い合わせください。

お問い合わせフォーム