Contents
1. Workflow Builder の基本概念と作成手順
| 項目 | 説明 |
|---|---|
| 対象 | ワークスペース管理者権限(もしくはワークフロー作成権限)を持つユーザー |
| 特徴 | ノーコードで「トリガー」→「アクション」の連鎖を定義でき、Slack 内だけで完結する自動化が実現可能 |
| 主な構成要素 | 1️⃣ トリガー(例:メッセージ投稿・スケジュール) 2️⃣ アクション(Send a message・Create a form 等) 3️⃣ 条件分岐やループは「If/Else」ブロックで実装 |
作成フロー(スクリーンショット不要のテキスト版)
- Workflow Builder を開く
-
ワークスペース左上メニュー → ツール → Workflow Builder
-
新規ワークフローを作成
-
「Create」ボタンをクリックし、テンプレート(空白・承認リクエスト・アンケート等)から適切なものを選択。
-
トリガーの設定
- 例:メッセージ投稿 → 特定チャンネル + キーワード
-
例:スケジュール → 毎日 09:00、毎週月曜 10:30 等
-
アクションを追加
- 「Add step」→「Send a message」「Create a form」など必要な標準アクションを配置。
-
各フィールドはプレースホルダー
{{variable_name}}を使って前ステップの出力を参照可能。 -
保存・公開
- ワークフロー名を入力し「Publish」すれば有効化完了。テスト実行は右上の Run test から行える。
ポイント:最初は「空白テンプレート」でシンプルなフロー(例:毎朝のリマインダー)を作り、慣れたら条件分岐やカスタムステップへ拡張すると学習コストが低減します。
2. 公式 AI アクションの有効化と利用方法(2024‑03 現在)
Slack が提供する 「AI ステップ」(正式名称:Slack AI Actions)は、2023 年にベータ公開され、本番環境でも使用可能になっています。以下は 2024 年 3 月時点での公式手順です。
有効化手順
-
管理コンソールへアクセス
Workspace Settings → Advanced → AI & Automation -
「Enable AI actions」スイッチをオン
-
初回は利用規約への同意が必要です。
-
モデル選択(オプション)
- デフォルトで Claude 1 が使用されます。追加のモデル(例:GPT‑4o、Gemini Pro)は別途ライセンス契約が必要です。
利用できる標準アクション
| アクション名 | 主な用途 |
|---|---|
| Generate text | 任意のプロンプトからテキスト生成(要約・翻訳・質問応答) |
| Extract entities | メッセージ中の日時、金額、メールアドレス等を抽出 |
| Classify sentiment | ポジティブ/ネガティブ判定 |
| Summarize conversation | スレッド全体を短く要約 |
注意:公式 AI アクションは Slack の内部インフラで実行されるため、外部 API キーや認証情報の管理は不要です。ただし、利用量が課金対象になる点はあらかじめ確認しておきましょう(無料枠は月間 5,000 トークンまで)。
3. 外部 AI サービスとの安全な連携手順
公式 AI アクションだけでは実現できない「最新モデル」や「独自プロンプト」を使用したい場合、Webhook カスタムステップから外部 API を呼び出す方法が一般的です。以下は代表的な 2 種類(OpenAI と Google Gemini)を例に、認証・エラーハンドリングまで含めた実装フローです。
3.1 OpenAI ChatCompletion の呼び出し例
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
POST https://api.openai.com/v1/chat/completions Headers: Authorization: Bearer {{secrets.OPENAI_API_KEY}} Content-Type: application/json Body: { "model": "gpt-4o-mini", "messages": [ {"role":"system","content":"You are a helpful assistant."}, {"role":"user","content":"{{trigger.message_text}}"} ], "max_tokens": 300, "temperature": 0.7 } |
手順
- シークレット管理
- Slack の「Workflow Builder → Settings → Secrets」から
OPENAI_API_KEYを登録。 -
シークレットは暗号化保存され、ステップ実行時にだけ平文で注入されます。
-
Webhook カスタムステップ作成
-
「Add step」→「Custom webhook」 → 上記エンドポイントとヘッダーを設定。
-
レスポンス処理
-
{{steps.<step_id>.response.body.choices[0].message.content}}を変数に保存し、続く「Post a message」ステップで利用。 -
エラーハンドリング(推奨)
- 「If/Else」ブロックで HTTP ステータスコードが 200 以外の場合は管理者へ通知するフローを組む。
3.2 Google Gemini のマルチモーダル呼び出し例
|
1 2 3 4 5 6 7 8 9 10 11 |
POST https://generativelanguage.googleapis.com/v1beta/models/gemini-pro:generateContent?key={{secrets.GEMINI_API_KEY}} Headers: Content-Type: application/json Body: { "contents": [ {"role":"user","parts":[{"text":"{{trigger.message_text}}"}]} ], "generationConfig":{"maxOutputTokens":250} } |
手順のポイント
| 項目 | ポイント |
|---|---|
| 認証 | API キーはシークレットとして保存し、直接コードに埋め込まない。OAuth2 が必要な場合は、サービスアカウントのアクセストークン取得フローを別途 Cloud Functions で実装し、そのエンドポイントを Webhook として呼び出す。 |
| マルチモーダル | 画像入力が必要なら、Base64 エンコードしたデータを parts に inlineData フィールドとして追加できる(ただしサイズ上限は 2 MiB)。 |
| レートリミット対策 | 429 (Too Many Requests) が返ったら、Retry-After ヘッダーの秒数だけ待機して再試行するロジックを Cloud Functions 側に実装すると安全。 |
4. 実務で役立つ AI 活用シナリオ例
4.1 承認フローへの自動判定・コメント付与
| 手順 | 内容 |
|---|---|
| トリガー | #approval-requests チャンネルへ /approve コマンドが投稿されたとき |
| ステップ① AI 判定 | 「Generate text」アクションで「以下の承認依頼を分析し、可否と根拠コメントを出力してください。」というプロンプト送信(公式 AI) |
| ステップ② 条件分岐 | 返答に 可 が含まれれば上長へ自動通知、不可 なら却下メッセージを返信 |
| ステップ③ 結果保存 | 判定結果とコメントを変数に格納し、後続のレポート生成フローで利用可能 |
効果:承認初期チェックが数秒で完了し、例外ケースのみ人手で処理できるため担当者の負荷が約 70 %削減。
4.2 日報自動要約と週次サマリー配信
| 手順 | 内容 |
|---|---|
| トリガー | #daily-reports にメッセージが投稿された瞬間 |
| AI 要約ステップ | 「Generate text」→プロンプト:「以下の日報を 150文字以内で要点だけまとめてください。」(公式 AI) |
| 保存 | 要約結果を変数 daily_summary に格納 |
| スケジュール配信 | 毎週金曜 17:00 の Schedule トリガーで #weekly-summary チャンネルへ {{daily_summary}} を投稿 |
効果:マネージャーは全員の日報を読む必要がなく、重要課題に集中できる。
4.3 カスタマーサポートの一次回答自動化(外部 API 活用)
| 手順 | 内容 |
|---|---|
| トリガー | #support-queries に新規メッセージが届く |
| Webhook → OpenAI | メッセージテキストを ChatCompletion へ送信し、回答候補(3 件)を取得 |
| フィルタリング | 「If/Else」ブロックで回答の信頼度スコアが一定以上なら自動投稿、低い場合は担当者にエスカレーション |
| 結果通知 | 選択された回答をスレッドに投稿し、担当者は承認ボタンで即時送信可能 |
効果:一次対応の平均処理時間が 2 分 → 30 秒へ短縮。顧客満足度(CSAT)向上が期待できる。
5. セキュリティとトークン管理のベストプラクティス
| 項目 | 推奨設定 |
|---|---|
| シークレット保存 | Slack の Workflow Builder → Settings → Secrets に API キーやアクセストークンを格納。平文でコードに記述しない。 |
| 最小権限の原則 | 外部 API は必要最低限のスコープだけ付与(例:OpenAI では read:completion のみ)。不要な書き込み権限は除外する。 |
| 定期ローテーション | キーは 90 日ごとに更新し、古いキーは即座に無効化。自動ローテーションが可能なら Cloud Scheduler と組み合わせる。 |
| 監査ログの活用 | Slack の Enterprise Grid では管理者向けに API 呼び出し履歴を取得できるので、異常なトラフィックはアラート設定する。 |
| エラーハンドリング | HTTP 4xx/5xx が返った場合はワークフロー内で Notify admin ステップを走らせ、問題発生時に速やかに対応できる体制を整える。 |
| データ保護 | ユーザーデータ(個人情報・機密情報)を外部 API に送信する際は、必ずマスク処理またはハッシュ化した上で送付し、暗号化通信(HTTPS)を徹底する。 |
6. 運用・保守上の比較ポイント
| 比較項目 | 公式 AI アクション | 外部 API 連携 | MCP / カスタムエージェント(実証段階) |
|---|---|---|---|
| 導入ハードル | ★★★★★(設定だけで完了) | ★★★☆☆(シークレット・Webhook 設定必要) | ★★☆☆☆(SDK 導入、インフラ設計が必須) |
| モデル選択肢 | 限定的(公式提供モデルのみ) | 多様(OpenAI・Gemini・Claude など) | 任意の組み合わせが可能 |
| コスト構造 | 従量課金+無料枠(月間数千トークン) | 使用量に応じた従量課金、プラン別上限あり | ライセンス費 + インフラ運用費 |
| セキュリティ | Slack 内統合 → SOC2・ISO27001 準拠 | API キー管理が必要、漏洩リスク対策必須 | データ暗号化・コンテキスト分離が前提 |
| 保守性 | 自動アップデートで常に最新 | バージョン変更時のコード修正が必要 | SDK のバージョン管理と依存関係更新が頻繁 |
選定指針
- 低リスク・短期間導入 → 公式 AI アクションを優先。
- 最新モデルや独自プロンプトが必須 → 外部 API とシークレット管理で対応。
- 複数 LLM の協調や長期的な高度自動化 → 実証環境で MCP などのカスタムフレームワークを検討。
7. まとめ
- Workflow Builder はクリックだけで業務プロセスを可視化・自動化できる基盤です。
- 公式 AI アクション は認証不要で手軽に導入可能ですが、モデルやカスタマイズの幅は限定的です。
- 外部 AI サービス を利用する場合は Webhook + Secrets の組み合わせで安全に連携し、トークンローテーション・最小権限を徹底してください。
- 実務シナリオ(承認自動判定・日報要約・サポート一次回答)を参考に、自社の業務フローに合わせた AI 活用を設計しましょう。
- 運用面 では、コスト・セキュリティ・保守性を総合的に評価し、最適なアプローチ(公式/外部 API/カスタム)を選択してください。
次のステップ:本ガイドで作成したシンプルなワークフローをベースに、1 つずつ AI ステップや外部 API を組み込んでいくと、段階的に自動化レベルが向上します。質問や実装中の課題は社内 Slack の #workflow-help チャンネルで共有し、ナレッジを蓄積していきましょう。