# GAS

Slackメンション自動収集・AI分類TODOツール

複数チャンネル・DMに散在するSlackメンションをGASで15分ごとに自動収集。Gemini AIがタスク/連絡を即時判定し、返信リンク付きでスプレッドシートに集約。メンション漏れと返信先探しの時間を根絶する。

工数削減 99%削減(返信先探し)
タスク漏れ 消去
開発期間 2 weeks

01_BACKGROUND

多拠点展開・在宅勤務が定着した200人規模の企業。作業依頼はすべてSlackで行われ、チームごと・プロジェクトごとに無数のチャンネルとDMグループが存在していた。各所からメンションが飛び交う中、即返せる依頼と時間がかかる依頼が混在。後者は一度保留し、作業完了後に改めて返信する運用が日常になっていた。

「タスク漏れ」と「返信先を探す時間」が、見えないコストとして現場を蝕んでいた。
「タスクが発生したら自分でTODOリストに転記するのが当たり前。なぜやらない?」

Slackの「後で」機能で対応しようとしたが定着しなかった。問題は認識していたが、「どうすれば解決できるか」が見えず、手動転記が「当たり前」という前提が解決策の発想を塞いでいた。

02_APPROACH

GASとSlack Search APIを組み合わせ、全チャンネル・DMのメンションを15分ごとに自動収集。Gemini 2.5 Flash Liteがリアルタイムで「タスク」「連絡」を判定し、タスクのみを返信リンク付きでスプレッドシートへ自動記録する。設定シートへの1行追記で複数ワークスペースに横展開できる設計とした。

03_RESULT

手動転記という「当たり前」を消去した。メンションはすべて自動収集・自動分類され、タスクシートに集約される。返信リンクが紐づいているため、作業完了後は一覧から即座に返信できる。タスク漏れはゼロになり、返信先探しの時間も消去した。

BEFORE
複数チャンネル・DMのメンションを自分でTODOリストに手動転記
AFTER
GAS + Gemini AIが15分ごとに自動収集・分類・スプレッドシートへ記録
BEFORE
作業完了後、返信先のメッセージをSlack内で検索
AFTER
タスクシートの返信リンクから即座にアクセス・返信

SYSTEM_ARCHITECTURE

run() — メイン処理。ワークスペースごとに順次実行 fetchMentions() — Slack Search APIでメンション一括取得(ページネーション対応) classifyMessage() — Gemini 2.5 Flash Liteでタスク/連絡を自動判定 getLastTs/setLastTs — 最終取得タイムスタンプを_stateシートで管理(重複取得防止) 使用API:Slack Search API / Google Gemini API / SpreadsheetApp トリガー:15分間隔の時間トリガー(設定メニューからワンクリックで登録) 複数ワークスペース対応:設定シートに1行追記するだけで拡張可能
> START_CONSULTING _