🦞
チャンネル連携

OpenClawをSlackに接続

OpenClawをSlackワークスペースに追加。チャンネル、スレッド、またはDMでスラッシュコマンド対応のAIアシスタンスを利用。

💼 なぜSlackを使う?
  • WebSocket接続Slack Bot API + Socket Modeによるリアルタイムメッセージング
  • スラッシュコマンドネイティブ/clawdコマンドインターフェース
  • スレッドサポート履歴コンテキストで会話を整理
  • リッチフォーマットリアクションとピン付きのフォーマット済み応答
  • 柔軟なアクセスDM、パブリックチャンネル、プライベートチャンネル
必要条件
  • Slack Botトークンxoxb-...で始まる
  • Slack Appトークンxapp-...で始まる(Socket Mode用)
  • Slack App適切なOAuthスコープが設定済み

セットアップ手順

1

Slack Appを作成

Slack APIポータルで新しいアプリケーションを作成:

  • • api.slack.com/appsにアクセス
  • • 「Create New App」をクリック
  • • 「From scratch」を選択
  • • 名前を付けて(例:「OpenClaw」)ワークスペースを選択
2

Botトークンスコープを追加

ボットのOAuth権限を設定:

  • • サイドバーの「OAuth & Permissions」に移動
  • • 「Bot Token Scopes」で以下を追加:
  • - app_mentions:read — メンションを読み取り
  • - channels:history — チャンネルメッセージを表示
  • - channels:read — チャンネル情報を表示
  • - chat:write — メッセージを送信
  • - im:history — DM履歴を表示
  • - im:read — DM情報を表示
  • - im:write — DM会話を開始
  • - reactions:write — リアクションを追加
  • - users:read — ユーザー情報を表示
3

Socket Modeを有効化

Socket ModeはパブリックURLなしでリアルタイム通信を可能にします:

  • • サイドバーの「Socket Mode」に移動
  • • 「Enable Socket Mode」をオンに切り替え
  • • connections:writeスコープ付きのApp-Level Tokenを生成
  • • トークンをコピー(xapp-...で始まる)
4

ワークスペースにアプリをインストール

アプリをインストールしてBotトークンを取得:

  • • サイドバーの「Install App」に移動
  • • 「Install to Workspace」をクリック
  • • 要求された権限を承認
  • • Bot User OAuth Tokenをコピー(xoxb-...で始まる)
5

OpenClawを設定

openclaw.jsonにSlack設定を追加:

{
  "channels": {
    "slack": {
      "enabled": true,
      "botToken": "xoxb-...",
      "appToken": "xapp-..."
    }
  }
}
6

チャンネルにボットを招待

ボットに応答させたいチャンネルに追加:

  • • Slackでチャンネルを開く
  • • /invite @OpenClawと入力
  • • またはチャンネル名をクリック → 連携 → アプリを追加
  • • openclaw restartでOpenClawを再起動し、ボットにメンションしてテスト
機能

スレッドサポート

設定可能な履歴スコープでスレッド内の会話コンテキストを維持。

絵文字リアクション

ボットはメッセージの確認やステータス表示にリアクションを追加可能。

メッセージのピン留め

重要な応答をピン留めして後で簡単に参照。

スラッシュコマンド

/clawdを使ってどこからでもAIクエリを素早く実行。

メンバー情報

必要に応じてワークスペースメンバー情報を検索。

DMサポート

ボットとのプライベートな1対1の会話。

高度な設定

Slack連携の全設定オプション:

{
  "channels": {
    "slack": {
      "enabled": true,
      "botToken": "xoxb-...",
      "appToken": "xapp-...",
      "dm": {
        "enabled": true,
        "policy": "pairing",
        "allowFrom": ["U123", "U456"]
      },
      "channels": {
        "#general": {
          "allow": true,
          "requireMention": true,
          "users": ["U123"]
        }
      },
      "historyLimit": 50,
      "slashCommand": {
        "enabled": true,
        "name": "clawd"
      },
      "actions": {
        "reactions": true,
        "messages": true,
        "pins": true
      }
    }
  }
}
  • dm.enabledボットへのダイレクトメッセージを許可
  • dm.policyDMアクセスポリシー("pairing"または"open")
  • dm.allowFromDMを許可するユーザーIDの配列
  • channelsチャンネルごとの設定オブジェクト
  • requireMention@メンション時のみ応答
  • historyLimitコンテキストに含めるメッセージ数
  • slashCommandスラッシュコマンドの設定
  • actionsリアクション、メッセージ、ピンの有効/無効
チャンネルポリシー

許可リストモード

明示的に設定されたチャンネルでのみ応答。管理された環境に最適。

オープンモード

ボットが招待されたすべてのチャンネルで応答。requireMentionで応答を制御。

SlackユーザーIDの取得方法

プロフィールから:

ユーザー名をクリック → プロフィールを表示 → 三点リーダー(...)をクリック → メンバーIDをコピー

Slack管理画面から:

ワークスペース設定 → メンバーを管理 → メンバーリストをCSVでエクスポート

⚠️ トラブルシューティング

ボットがチャンネルで応答しない?

ボットがチャンネルに招待されていて、正しいスコープがあるか確認。requireMentionが有効か確認。

Socket Mode接続エラー?

App Token(xapp-...)が正しく、connections:writeスコープがあるか確認。

スラッシュコマンドが表示されない?

Slackアプリ設定の「Slash Commands」で手動でコマンドを作成し、Socket Modeに設定。

権限拒否エラー?

新しいスコープを追加した後、ワークスペースにアプリを再インストール。一部のスコープ変更は再インストールが必要。

Slack接続完了!

さらにチャンネルを設定するか、カスタムスキルでボットを強化しましょう。