# Claude で WeCom（社内アプリ） の AI ボットを作る

Source: https://langbot.app/docs/ja/recipes/claude/wecom

LangBot で Claude を使った WeCom（社内アプリ） の AI ボットを動かす手順：モデル設定、ボットの認証情報、ネットワーク、テスト、トラブルシューティング。

このレシピでは Claude のモデルを WeCom（社内アプリ） のボットにつなぎます。LangBot が WeCom（社内アプリ） のメッセージを受け取り、パイプラインで処理して返信するので、プラットフォーム連携のコードは不要です。

LangBot の内蔵エージェントで Anthropic の Claude モデルを使います。MCP サーバー、Skills、コードサンドボックスとのツール連携も可能です。

## 必要なもの

- 稼働中の LangBot：[LangBot Cloud](https://space.langbot.app/cloud)（サーバー不要）、または Docker や `uvx langbot` による[セルフホスト](https://langbot.app/docs/ja/deploy/langbot/docker.md)。
- LangBot から呼び出せる Claude のアカウントまたはサーバー。
- WeCom の自社開発アプリ：**企業 ID**、アプリの **Secret**、**連絡先同期 Secret**、コールバック用の **Token** と **EncodingAESKey**。

## ネットワーク

WeCom はコールバック URL にメッセージを送るため、LangBot には公開ドメインと HTTPS が必要です（[リバースプロキシと SSL](https://langbot.app/docs/ja/workshop/production/proxy-and-ssl.md) を参照）。LangBot Cloud にはすぐ使える公開 URL があります。

## 1. Claude のモデルを追加する

1. Anthropic のコンソールで API キーを作成します。
2. LangBot の **モデル** で LLM モデルを追加し、プロバイダーに Anthropic を指定して、API キーとモデル ID を入力します。
3. モデルが関数呼び出しに対応していれば **ツール使用** を有効にします。MCP ツール、Skills、サンドボックスに必要です。
4. ゲートウェイを使わない限り、リクエスト URL はプロバイダー既定のままにします。モデル ID は Anthropic のドキュメントにある現行の Claude モデルを使います。

## 2. パイプラインを作成する

LangBot WebUI の **パイプライン** でパイプラインを作成（または既定のものを編集）し、**AI** を次のように設定します。

| 項目      | 設定値                          |
| ------- | ---------------------------- |
| ランナー    | **Local Agent**（内蔵エージェント）    |
| モデル     | 追加したモデル。予備モデルも指定できます。        |
| プロンプト   | ボットの役割、口調、してはいけないこと。         |
| ナレッジベース | 任意。ナレッジベースを付けると資料に基づいて回答します。 |

## 3. WeCom（社内アプリ） のボットを作成する

1. **WeCom** アダプターでボットを作成し、企業 ID、アプリ Secret、連絡先同期 Secret を入力して有効化し、Webhook コールバック URL をコピーします。
2. WeCom 管理画面の **メッセージ受信 → API 受信の設定** に URL を貼り、Token と EncodingAESKey を生成して、先に LangBot、次に WeCom で保存します。LangBot の送信元 IP を **企業の信頼 IP** に追加します。

## 4. 紐付けてテストする

ボットを開いて作成したパイプラインを選び、保存してボットが有効になっていることを確認します。

WeCom クライアントでアプリを開き、メッセージを送ります。

## トラブルシューティング

- エージェントがツールを呼ばない場合は、モデルの **ツール使用** を有効にします。
- コールバック保存時に **request URL failed** となる場合は、URL が公開 HTTPS で到達できないか、LangBot の Token/EncodingAESKey が一致していません。
- 返信が送れない場合は、LangBot の送信元 IP を企業の信頼 IP に追加します。
- WebUI の **モニタリング** に、すべてのメッセージ、パイプラインの実行、エラーが記録されます。

## よくある質問

### WeCom（社内アプリ） には公開 IP のあるサーバーが必要ですか？

必要です。または LangBot Cloud を使えます。WeCom はコールバック URL にメッセージを送るため、LangBot には公開ドメインと HTTPS が必要です（[リバースプロキシと SSL](https://langbot.app/docs/ja/workshop/production/proxy-and-ssl.md) を参照）。LangBot Cloud にはすぐ使える公開 URL があります。

### WeCom（社内アプリ） のボットはストリーミング返信に対応していますか？

対応状況は[プラットフォーム機能一覧](https://langbot.app/docs/ja/insight/platform-features.md)で確認してください。AI 側の生成が終わってから返信が送られます。

### 同じ Claude の設定を他のプラットフォームでも使えますか？

はい。1 つのパイプラインを複数のボットに紐付けられるので、同じ設定で複数のプラットフォームに同時に応答できます。

## 関連ガイド

- [WeCom（社内アプリ） の詳しい設定ガイド](https://langbot.app/docs/ja/usage/platforms/wecom/wecom.md)
- [モデルの設定](https://langbot.app/docs/ja/usage/models/readme.md)
- WeCom（社内アプリ） で使える他の AI：[Dify](https://langbot.app/docs/ja/recipes/dify/wecom.md) · [n8n](https://langbot.app/docs/ja/recipes/n8n/wecom.md) · [Coze](https://langbot.app/docs/ja/recipes/coze/wecom.md) · [Langflow](https://langbot.app/docs/ja/recipes/langflow/wecom.md) · [DeepSeek](https://langbot.app/docs/ja/recipes/deepseek/wecom.md)
- Claude を他のプラットフォームで使う：[Telegram](https://langbot.app/docs/ja/recipes/claude/telegram.md) · [Discord](https://langbot.app/docs/ja/recipes/claude/discord.md) · [Slack](https://langbot.app/docs/ja/recipes/claude/slack.md) · [Lark（Feishu）](https://langbot.app/docs/ja/recipes/claude/lark.md) · [DingTalk](https://langbot.app/docs/ja/recipes/claude/dingtalk.md) · [WeCom インテリジェントボット](https://langbot.app/docs/ja/recipes/claude/wecombot.md)
