この記事でできること
- OpenClawの導入から初期設定までを完了できる
- Codex連携とDiscord連携を段階的に構築できる
- 最後にDiscordで会話疎通テストを通せる
前提環境
- OS: macOS(本記事はmacOSを基準に記載)
- ツール: Homebrew / Node.js / OpenClaw / Discord
- 想定読者: OpenClawをこれから運用し、家事・仕事連絡の自動化を始めたい人
全体ロードマップ(章ごとのゴール)
第1章 準備編
– ゴール: 前提ツールとアカウント準備が完了している
第2章 OpenClaw導入編
– ゴール: OpenClawが起動し、ローカルで基本動作が確認できる
第3章 Codex連携編
– ゴール: OpenClawからCodexを呼べる状態になる
第4章 Discord連携編
– ゴール: DiscordチャンネルでOpenClawが受信・返信できる
第5章 会話テスト編
– ゴール: 実運用を想定した会話テスト(家事連絡・仕事連絡)が通る
第1章 準備編
この章のゴール
OpenClaw導入前に必要な環境が揃い、次章でインストール作業に進める状態になります。
手順1: 必須ツールを確認する
まず、ローカル環境で次を確認します。
- Homebrew
- Node.js
- npm
- Discordアカウント(検証用サーバーに入れること)
確認コマンド(macOS):
brew --version
node -v
npm -v
期待結果:
- – すべてのコマンドでバージョンが表示される
- – `command not found` が出ない
手順2: Discordに検証用チャンネルを作る
本番運用とは分けて、検証専用チャンネルを1つ作成します。
例:
- `
#bot-test-housework-work`
期待結果:
- 自分が投稿できる
- BOT追加後のテスト投稿先として使える
手順3: 動作確認基準を先に決める
この時点で、最終ゴールを明確にします。
- Discord上で「OpenClawにメンション→返信」が1往復成功
- 家事連絡・仕事連絡のサンプル文で返答確認
期待結果:
- 「何をもって成功とするか」が明確になる
つまずきポイントと対処(第1章)
- 問題: 後続手順でコマンドが通らない
- 原因: Node.jsまたはnpm未導入、またはPATH未反映
- 対処: シェル再起動後に `node -v` `npm -v` を再確認し、未導入なら先に導入
まとめ(第1章)
第1章では、導入前の前提環境を揃えました。
次はOpenClawをインストールし、ローカルで起動確認まで進めます。
完了チェック:
- `
brew --version` / `node -v` / `npm -v` が通り、Discord検証チャンネルを1つ用意できている
第2章 OpenClaw導入編
この章のゴール
OpenClawをインストールして起動し、ローカルで基本応答が返る状態にします。
手順1: OpenClawをインストールする
公式手順に沿ってOpenClaw CLIを導入します。
npm install -g openclaw
確認:
openclaw --version
期待結果:
- バージョン番号が表示される
手順2: Gatewayを起動する
OpenClawのGatewayを起動します。
openclaw gateway start
openclaw gateway status
期待結果:
- `
status` が起動状態を返す - エラーで即終了しない
手順3: 基本動作を確認する
状態確認を実行し、異常がないかを見ます。
openclaw status
期待結果:
- ランタイム情報が表示される
- 致命的エラーが出ていない
手順4: Web UIに接続して対話確認する
まずブラウザでOpenClaw Control UIへ接続し、ローカル疎通を確認します。
1. ブラウザで `http://localhost:18789`(または `http://127.0.0.1:18789`)を開く
2. 画面が表示されたらテスト入力を送る
- 例: 「こんにちは。応答テストです」
3. 1ターン応答を確認する
期待結果:
- Control UIがブラウザで開く
- 1ターン以内に応答が返る
- タイムアウトやプロセス停止が発生しない
補足:
- ここで疎通確認しておくと、後続のDiscord連携で問題を切り分けやすくなります。
つまずきポイントと対処(第2章)
- 問題: `
openclaw` コマンドが見つからない - 原因: グローバルnpmのPATHが未設定
- 対処: npm global binをPATHへ追加し、シェルを再読み込み
- 問題: Gateway起動後すぐ停止する
- 原因: 設定不整合またはポート競合
- 対処: `
openclaw gateway status` とログ確認後、競合プロセスを解消して再起動
まとめ(第2章)
第2章では、OpenClawの導入と基本応答確認まで完了しました。
次章はCodex連携を行い、OpenClawからCodex実行ができる状態を作ります。
完了チェック:
- `
openclaw gateway status` が起動状態を返し、Control UI(`localhost:18789`)で1ターン応答を確認できる
第3章 Codex連携編
この章のゴール
OpenClawからCodex実行を呼び出せる状態にし、簡単な依頼が通ることを確認します。
手順1: Codex利用の準備を確認する
Codex側の認証またはAPIキー設定が完了していることを確認します。
確認ポイント:
- Codexが利用可能なアカウントでログイン済み、またはAPIキーを発行済み
- OpenClaw実行環境からCodex利用時に認証エラーが出ない
設定方針:
- APIキーの生値は `.env` に記載し、本文には環境変数名だけを記載します。
補足(`.env` とは):
- `
.env` は環境変数をまとめて保存する設定ファイルです。 - 例: `
OPENAI_API_KEY=xxxx` のように `キー名=値` で記載します。 - プロジェクトのルートに置き、公開リポジトリには含めない運用が基本です。
設定例:
export OPENAI_API_KEY="YOUR_KEY_HERE"
期待結果:
– 認証関連のエラーなく、Codex実行の前提が揃う
手順2: OpenClawからCodex実行を試す
Control UIで次の文をそのまま送って、Codex連携を確認します。
サンプル依頼(固定):
- 「このフォルダ構成を、目的別に3つに要約して」
確認ポイント:
- 返信本文に「要約結果」が含まれている
- 応答が途中で止まらず完了する
期待結果:
- Codex経由の応答が返る
- タイムアウトせず完了する
手順3: 実行結果の確認観点を固定する
再現性を上げるため、次の観点で結果を確認します。
- 応答が返るまでの時間
- エラーの有無(OAuth / network / timeout)
- 出力品質(依頼に対して回答が成立しているか)
つまずきポイントと対処(第3章)
- 問題: OAuth系エラーでCodex実行が失敗する
- 原因: 認証期限切れ、またはネットワーク/DNSの一時不調
- 対処: 再ログイン後に再試行し、到達性確認(DNS/接続)を先に行う
- 問題: 実行が不安定で時々タイムアウトする
- 原因: 一時的なAPI負荷や接続揺れ
- 対処: 依頼を短く分割し、再試行時に同時実行数を減らす
まとめ(第3章)
第3章では、OpenClawからCodex連携を呼び出し、応答が返ることを確認しました。
次章はDiscord連携を行い、チャンネル上で実際に受信・返信できる状態へ進みます。
完了チェック:
- 固定サンプル依頼に対して、Codex経由の要約応答が1回以上成功している
第4章 Discord連携編
この章のゴール
DiscordチャンネルでOpenClawが受信・返信できる状態を作ります。
手順1: Discord BOTを作成して権限を付与する
Discord Developer PortalでBOTを作成し、必要権限を付けてテストサーバーへ招待します。
最低限必要な権限例:
- メッセージ送信
- メッセージ履歴の参照
- (必要に応じて)スレッド関連権限
期待結果:
- テストサーバーにBOTが参加している
手順2: OpenClaw側にDiscord設定を反映する
OpenClawの設定でDiscordプラグインを有効化し、BOTトークンと対象チャンネルを設定します。
設定時の要点:
- Discord Developer PortalでBot Tokenを発行
- Tokenは設定画面または環境変数で渡す
- 対象チャンネルIDを設定し、受信先を固定する
最小設定イメージ(ダミー値):
- channel: `
discord` - target channel id: `
123456789012345678` - token env: `
DISCORD_BOT_TOKEN`
設定方針:
- Tokenの生値は `
.env` に記載し、本文には環境変数名だけを記載します。
環境変数例:
export DISCORD_BOT_TOKEN="YOUR_TOKEN_HERE"
期待結果:
- Gateway再起動後、Discordチャネルからの入力を受信できる
手順3: テストチャンネルで疎通を確認する
検証用チャンネルでメッセージを送り、返信を確認します。
サンプル入力:
- 「接続テストです。返信できますか?」
期待結果:
- OpenClawがメッセージを受信して返信する
- 返信遅延が許容範囲内である
つまずきポイントと対処(第4章)
- 問題: Discordで反応しない
- 原因: トークン誤設定、権限不足、対象チャンネル不一致
- 対処: BOT権限とチャンネルIDを再確認し、Gateway再起動後に再テスト
- 問題: 受信はするが返信できない
- 原因: 送信権限不足またはスレッド権限不足
- 対処: BOTロールに送信/スレッド権限を追加
まとめ(第4章)
第4章では、Discord上での受信・返信ができる状態まで構築しました。
次章で最終の会話テストを行い、家事・仕事連絡の実運用可否を確認します。
完了チェック:
- 検証用チャンネルでテスト文を送ると、OpenClawから返信が返る
第5章 会話テスト編
この章のゴール
家事連絡と仕事連絡のサンプル会話を通し、運用開始できる状態を確認します。
手順1: 家事連絡のテストを行う
サンプル文を送り、意図どおりの応答になるかを確認します。
サンプル入力:
- 「今日の買い物リストを3つだけまとめて」
期待結果:
- 実行可能な短いリストで返答される
- 過剰な説明がなく、行動に移せる内容になっている
手順2: 仕事連絡のテストを行う
仕事向けの依頼文で、要点整理ができるかを確認します。
サンプル入力:
- 「今日やる仕事を優先度順に3つに絞って」
期待結果:
- 優先順が明確で、すぐ着手できる粒度で返る
手順3: 異常時の動きを確認する
意図的に曖昧な入力や長文を投げ、失敗時の挙動を確認します。
確認観点:
- タイムアウト時に再試行できるか
- 返答不能時にエラーが分かる形で出るか
期待結果:
- 詰まり時の復旧手順が見える
つまずきポイントと対処(第5章)
- 問題: 家事・仕事の文脈が混ざって返答が散らかる
- 原因: 入力が曖昧で意図が一文に詰め込まれている
- 対処: 依頼を「目的1つ + 条件1つ」に分割して送る
- 問題: 返信が長すぎて実務に使いにくい
- 原因: 出力スタイル指定がない
- 対処: 「3点で」「箇条書きで」など形式を明示する
最終まとめ
ここまでで、OpenClaw+Codex+Discordの連携を構築し、Discordで会話できる状態まで到達できました。
この構成は、章ごとにゴールを確認しながら進めると再現しやすく、トラブル時も切り戻しが簡単です。
次の一手としては、よく使う依頼文をテンプレ化して、家事連絡・仕事連絡の入力を定型化すると運用がさらに安定します。
完了チェック:
- Discord上で「メンション→返信」が1往復成功し、家事連絡・仕事連絡のサンプル文に対して実用的な返答を確認できる
参考
- OpenClaw Docs: https://docs.openclaw.ai
- OpenClaw Source: https://github.com/openclaw/openclaw

