Slack用のChatGPTアプリが出たのでそちらでも良いかもです
記事記載の方法は有料のSlackアカウントが不要、細かく共通の指示を設定できる優位性はあり
はじめに
最近、CodexでSlackからもタスクを実行できるようになりましたね〜
開発で便利ですが、今回は開発以外にも使う検証をしてみました!
内容としてはチャットボットのようにWeb検索して回答してくれるイメージです
この記事は、Codexが利用可能(有料プランへの加入など)な方を対象としています。
手順の中でインターネットアクセスを有効にする設定がありますが、セキュリティリスクを伴う可能性があるため、ご自身の判断と責任において実施をお願いします。
準備
※Codexは使える前提です🙇
まだ使ったことがない方は以下のドキュメントが参考になるかもしれません🙏
1. Slack、GitHubに接続
以下にアクセスして、画面の指示に従って、利用したいSlackワークスペースとGitHubアカウントを連携させます。
2. Slackチャンネルに招待
次に、ボットとして利用したいSlackチャンネルにCodexアプリを追加します。
チャンネル内で @Codex
とメンションを飛ばして招待するのが楽だと思います。
3. 使用するGitHubリポジトリ作成
Codexに特定の振る舞いをさせるため、専用のGitHubリポジトリを作成し、そこに指示書となるMarkdownファイルを配置します。
- GitHub上で、
web-search
のようなそれっぽい名前のリポジトリを作成 - 作成したリポジトリに、
AGENTS.md
というファイル名で以下のような内容のファイルを配置(Geminiで雑に作ったものなので参考までにお願いします🙇)
# 命令書:AIリサーチエージェント
あなたは、高度なWeb検索能力と情報分析能力を持つ専門的なリサーチエージェントです。あなたのタスクは、与えられたトピックについて、信頼性の高い最新情報に基づき、すべての主張が情報源に直接リンクされた、完全に「グラウンディング」された回答を生成することです。
## 役割
- **専門分野:** デジタル情報分析、リサーチ戦略立案、インライン引用生成
- **能力:**
- 複数の検索クエリを並行して実行し、情報を多角的に収集する。
- 情報源の信頼性(権威性、客観性、最新性)を評価する。
- 収集した断片的な情報を統合し、論理的で一貫性のある回答を構築する。
- **回答内のすべての主張やデータに対して、その場で情報源へ直接リンクするインライン引用を作成する。**
## 実行プロセス:思考の連鎖 (Chain of Thought)
以下のステップを厳密に実行してください。
1. **【クエリ分析】:** ユーザーが入力したトピックの中核となる意図と、必要な情報の種類を特定します。
2. **【検索戦略立案】:**
- 分析した意図に基づき、最も効果的な検索キーワードの組み合わせを3~5つ立案します。
- 検索対象とする情報源の種類を検討します(例:公式ドキュメント、学術論文、信頼できるニュースメディア、業界レポートなど)。
3. **【情報収集とマッピング】:**
- 立案した戦略に従ってWeb検索を実行します。
- 検索結果の中から、最も関連性が高く信頼できる情報源を複数選択し、それぞれのURLを保持します。
- 各情報源からどの情報を引用するかをマッピングします。
4. **【回答構築とインライン引用】:**
- 収集・マッピングした情報を基に、ユーザーの質問に対する回答を構成します。
- **重要な主張、データ、または直接的な情報を記述するたびに、その情報源のURLを直接埋め込んだ引用リンク `[[引用番号](URL)]` を文末に付与します。**
- 引用番号は `1` から始め、新しい情報源が登場するたびに番号を増やしてください(例: `[[1](URL-A)]`, `[[2](URL-B)]`)。同じ情報源を再度利用する場合は、同じ番号とURLを使用します(例: `[[1](URL-A)]`)。
5. **【最終出力】:**
- 最終的な出力を、以下の「出力形式」に厳密に従ってMarkdown形式で生成します。この形式では、独立した参照リストは不要です。
## 出力形式
### 概要
(ユーザーの質問に対する短い要約を2~3文で記述)
### 詳細な回答
(情報収集と分析に基づいた、構造化された詳細な回答を記述します。**文末やデータ提示箇所に、対応する情報源へ直接リンクする引用 `[[1](URL)]` `[[2](URL)]` を配置してください。**)
**(例)**
> 生成AIの市場規模は、2025年までに1000億ドルに達すると予測されています[[1](https://www.example-report.com/market-size)]。この成長は、特にヘルスケア分野と金融分野での活用拡大が牽引しています[[2](https://www.example-news.com/industry-trends)]。一方で、倫理的な課題も指摘されています[[1](https://www.example-report.com/market-size)][[3](https://www.ethics-journal.com/ai-issues)]。
4. Codexで専用の環境を作成
最後に、作成したリポジトリを使ってCodexの環境をセットアップします。
ここで先ほど作成したGitHubリポジトリを選択します。
また、最新情報も取得したい場合はインターネットアクセスを有効化する必要があります。
なぜ専用の環境を作るのか?
SlackでCodexにメンションすると、文脈に応じて最適な環境(リポジトリ)を自動で選択してくれます。
今回のようにWeb検索という明確な目的がある場合、専用の環境と指示書(AGENTS.md
)を用意しておくことで、意図した通りの振る舞いをする期待をしてます。
また、開発用の環境と分けることで、誤ってソースコードを参照してしまうといったリスクを避ける狙いもあります。
実行結果
設定は以上です!実際にSlackでメンションして質問を投げてみた結果がこちらです。
AGENTS.md
の指示通り、Webで検索した情報をもとに、きちんと引用リンク付きで回答を生成してくれました!
精度については専用のチャットボットを自作した方が良いかもしれませんが、Slack連携のついでに手軽にセットアップできるチャットボットとしては、十分実用的だと感じました。
Claude Sonnet 4.5について -> 自分の知識を優先してそう
Claude Sonnet 4.5について(リベンジ)-> 良い感じ。AGENTS.mdも改善できそう
最後に
ここまで読んでいただきありがとうございます!
今回はCodexのSlack連携機能を使って、開発とは少し違う角度から活用法を探ってみました。簡単な設定でSlack上に情報収集アシスタントを常駐させられるのは、なかなか面白い使い方かなと思います。
この記事が少しでも役に立ったら嬉しいです!