【watsonx Orchestrate】プリビルドエージェントを使ってSlackにメッセージを送信してみた
投稿者:稲見
こんにちは!D&A事業本部の稲見です。
本TechBlogはTeam xG Advent Calendar 2025 22日目の記事になります。
皆様はwatsonx Orchestrateを使っていますでしょうか?
一からエージェントを作るのが大変、思ったように動かないなどお困りではありませんか?
そんなときはプリビルドエージェントの活用です!
今回はwatsonx Orchestrateのそんなプリビルドエージェントを使ってSlackへメッセージを送信するエージェントを作っていきたいと思います。
Slack アプリの作成とチャンネルへのアプリ追加
まずWatsonx orchestrate から接続するSlackアプリを作成します。
以下のURLからSlack api のYour Appsページにアクセスし、「Create New App」ボタンをクリックします。
Create an app画面が表示されたら「From scratch」をクリックします。
Name app & choose workspace画面では、任意の「App Name」と使用するworkspaceを選択し、「Create APP」をクリックします。

Basic Informationページが表示されたら「App Credentials」欄に記載のある「Client ID」と「Client Secret」の値をメモします。

左のメニューから「OAuth & Permissions」をクリックし、下にスクロールしたところにある「Redirect URLs」欄の「Add New Redirect URL」 をクリックします。

URLの欄に以下のURLを入力して「Add」ボタンをクリックします。
<watsonx Orchestrate の環境URL>/mfe_connectors/api/v1/agentic/oauth/_callback
jp-tokリージョンの場合: https://jp-tok.watson-orchestrate.cloud.ibm.com/mfe_connectors/api/v1/agentic/oauth/_callback
URLが追加されたら「Save URLs」をクリックします。

同じ「OAuth & Permissions」画面から「Scopes」欄を探し、「Bot Token Scopes」の「Add an OAuth Scope」をクリックします。

今回はSlackへメッセージを送付したいので「chat:write」スコープを追加します。
watsonx Orchestrateのエージェントから実施する処理によって設定するスコープは変わりますので、実施する処理に合わせてスコープを追加してください。

最後に「OAuth & Permissions」ページの「OAuth Tokens」を探し、「Install to <ワークスペース名>」ボタンをクリックします。

アクセス許可画面が表示されたら「許可する」をクリックします。

これでSlackアプリの作成が完了です。
次にSlackのチャンネルにアプリを追加します。
Slackを開き、任意のチャンネルを右クリックして「チャンネル詳細を表示する」をクリックしてください。

「インテグレーション」タブをクリックし、「アプリを追加する」ボタンをクリックします。

作成したSlackアプリを探し、「追加」ボタンをクリックします。
チャンネルのチャットにアプリが追加した旨のメッセージが表示されればアプリの追加は完了です。

Slackとの接続設定
watsonx Orchestrate にログインし、左上のメニューから「管理」>「接続」をクリックします。

接続の一覧から「Slack」を検索し、Slackのロゴが表示されている接続の鉛筆ボタンをクリックします。

「ドラフト」タブと「ライブ」タブがありますが、今回はプレビューのみで動かすため、「ドラフト」のみ設定します。
実際にエージェントをデプロイする場合には「ライブ」タブの設定も実施してください。
接続設定では以下の値を設定します
- Server URL: https://slack.com/api
- トークンURL:https://slack.com/api/oauth.v2.access
- chat:write:chat:write ※複数のスコープを設定する場合には半角スペースで区切って入力してください
- 許可URL:https://slack.com/oauth/v2/authorize
- クライアント ID:「Slack アプリの作成とチャンネルへのアプリ追加」でメモした「Client ID」
- クライアントシークレット:「Slack アプリの作成とチャンネルへのアプリ追加」でメモした「Client Secret」

「資格情報タイプ」で「チームの資格情報」を選択します。
チームの資格情報を選択すると環境全体で同一の資格情報でSlackにアクセスします。
メンバー資格情報は実行するユーザ毎の資格情報でSlackにアクセスします。(ユーザが最初にSlackを使用するエージェントを実行した際に資格情報を設定するメッセージが表示されます。)

最後に「接続」ボタンをクリックして、Slackの接続許可ページが表示されたら「許可する」をクリックします。
「接続」ボタンのあった場所に「接続済み」と表示されたら「設定の保存」ボタンをクリックし、接続設定は完了です。
もし「接続」ボタンが表示されない場合には一度「設定の保存」ボタンをクリックし、再度ロゴありSlack接続の「鉛筆」ボタンをクリックして設定画面に入りなおしてください。

エージェントの作成
今回は標準で提供されているプリビルドエージェントを使用してSlackへメッセージを送信するエージェントを作成します。
watsonx Orchestrateの左上のメニューから「ビルド」をクリックし、「エージェントの作成」ボタンをクリックします。

エージェントの作成画面が表示されたら「テンプレートから作成」をクリックします。

エージェントのカタログが表示されたら左下にある「アプリ」フィルターから「Slack」を探しクリックします。

表示されたプリビルドエージェントから「Slack messaging」エージェントをクリックします。

「Slack messaging」エージェントの概要画面が表示されたら「テンプレートとして使用」をクリックします。

エージェントビルダーの画面が表示されます。今回はプリビルドエージェントを使用しているため、はじめからある程度の設定がされた状態でエージェントの作成ができます。そのため、簡単なカスタマイズだけでエージェントの作成が可能になります。

まず、「動作」欄の先頭に「日本語で応答してください。」と追加します。
動作(プロンプト)がデフォルトでは英語で記載されているため、エージェントも英語で応答してしまうので、明示的に日本語での応答するように記載します。
プリビルドエージェントではデフォルトで動作の内容が細かに設定されています。エージェントの応答内容や立ち振る舞いを変更したい場合には「動作」に記載されている内容を適宜変更や「ガイドライン」を追加してください。

これで設定は完了です。
動作確認
エージェントビルダー右側の「プレビュー」画面で「Slackにメッセージを送信したい。」と入力してチャットを送信してみてください。

エージェントから送信するSlackチャンネル(「Slack アプリの作成とチャンネルへのアプリ追加」でSlackアプリを追加したチャンネル名を入力)やメッセージ本文、添付ファイルの有無など聞かれた場合にはチャットで指定します。

Slackを確認してみましょう。Slackにメッセージが表示されていれば成功です。
もし日本語がうまく送信できない場合にはエージェントのモデルを変更してみてください。個人的には「GPT-OSS 120B」が日本語との相性がいい気がします。

さいごに
いかがだったでしょうか。結構簡単にSlackにメッセージを送信するエージェントの作成ができたのではないでしょうか?
今回作成したようなエージェントを他のエージェントから呼び出すことで処理結果をSlackへ送信して周知するなど様々な使い方ができると思います。皆様もいろいろと試してみてください!
最後までお読みいただきありがとうございました。



