チームから300分を毎週生み出すためにAIエージェントを作った話
はじめに
私たちのチームでは、毎週プロジェクトごとに1時間のタスク棚卸しMTGを実施しています。先週起こったことと今週やることを整理して話す、いわゆる定例会です。
この会議、参加メンバーは10名ほど。単純計算で週に10時間、月に40時間がこの会議に費やされています。
課題:準備が大変、話が冗長になりがち
これまでの週次MTGの流れはこうでした:
- 各自がBacklogからタスクを引っ張ってきてGoogle Docに記載(準備)
- プロジェクトごとに担当者がサマリを発表(会議本番)
しかし、以下のような課題がありました:
- タスクベースの報告になり、背景情報が抜け落ちる:Backlogには「何をやったか」は書いてあるが、「なぜそうなったか」「どんな議論があったか」といったSlackでのやり取りが反映されない
- 背景を一から説明すると冗長になる:背景を補足しようとすると、MTGで一から説明する必要があり時間がかかる
- 準備に時間がかかる:週に1回とはいえ、毎回サマリを書くのは負担
そこで、AIエージェントで週次レポートを自動生成することにしました。
作ったもの
技術スタック
- フレームワーク: VoltAgent
- LLMモデル: Claude 4.5 Haiku(当初はGPT-5-miniでテスト、リリース後にHaikuへ移行)
- データソース: Backlog API、Slack API
- 実装時間: 約3人日(設計・実装2.5日、テスト0.5日、一人で実装)
VoltAgentを採用したのは、ちょうどテストプロジェクトを探していたタイミングだったというのが正直なところです。結果的に、ワークフローベースで実装できたので、データ取得→集計→要約→レポート生成という流れが整理しやすくなりました。
モデルをGPT-4o-miniからClaude 4.5 Haikuに変更したのは、Haikuがリリースされたタイミングで使ってみたところ、サマリの生成が簡潔にまとまっていて良かったからです。
実装内容
1. Backlogからタスク情報を取得
- プロジェクトの課題一覧
- 更新履歴(ステータス変更、担当者変更、期限変更など)
- 先週と今週の差分を自動比較
2. Slackから会話履歴を取得
Slack上ではさまざまな話題が飛び交うため、以下のように整理しました:
- プロジェクト専用チャンネル:全発言を対象に取得
- 全体チャンネル:プロジェクトごとにキーワードを設定し、該当する投稿のみ抽出
- メンバーフィルタ:特定メンバーのみの発言を取得する設定も用意
これらのキーワードやメンバー設定は、各プロジェクトのメンバーに出してもらっています。
3. LLMで要約を生成
取得したデータをLLMに渡して要約を生成します。プロンプトは意外とシンプルで、出してほしいものを箇条書きで指示しているだけです:
以下は今週のSlack投稿です。プロジェクトの進捗把握のために重要点を構造化して要約してください。
出力フォーマット:
- ハイライト(3-5点)
- 決定事項(あれば)
- ブロッカー/リスク(あれば、原因/担当/次アクション)
- 次アクション(担当/期限があれば併記)
フォーマットを明示することで、毎回安定した形式のレポートが生成されるのがポイントです。
4. 生成されるレポート
エージェントが作成するのは以下の内容です:
プロジェクトごとのセクション:
- ハイライト(3-5点の重要な動き)
- 決定事項(合意されたこと)
- ブロッカー/リスク(原因、担当、次アクション付き)
- 次アクション(担当者と期限)
全体セクション:
- 今週のToDo(担当者別、期限順)
- Slack活動サマリ(プロジェクト別・ユーザー別)
- 決定事項一覧
- チーム次アクション
- 更新なしのプロジェクト
実際の出力例(一部抜粋):
#### pompon(合計 23 件)
ハイライト
* 検証環境で速度改善の施策が行われていたが3割程度の速度向上が見込めた。
* Slackアプリの本番環境への適用が完了。
* 山田さんからPoC提案に関するポジティブなフィードバック。
決定事項
* Pompon!の名刺読み取りプロンプト改善を来月に実施予定。
ブロッカー/リスク
* 田中さんがSlackのテクサポを必要としているが、具体的な問題が不明。
* 原因: メールが届かない可能性(迷惑メールの可能性)。
* 担当: 佐藤さん。
* 次アクション: メールの確認とテクサポの依頼。
次アクション
* 鈴木さん: コンテンツの差し込み画像作成を進める(期限: 今週)。
BacklogのタスクとSlackの会話が統合されているため、「何をやったか」だけでなく「なぜそうなったか」も一目でわかります。
生成時間は1回あたり約3分。15プロジェクト分を一気に生成するため、週1回の実行で完了します。
効果:1時間のMTGが30分に
時間削減
導入から1ヶ月ほど運用した結果、1時間のMTGが30分程度で終わるようになりました。
- 削減時間: 30分 × 10人 × 週1回 = 週5時間(300分)
- 月間削減: 20時間
- 開発時間: 約3人日(24時間相当)
つまり、1ヶ月強で投資を回収できた計算です。
議論の質が向上
時間短縮だけでなく、議論の質も向上しました。
導入前:
- 「このタスク終わった?」
- 「あれどうなった?」
- (背景を説明するために)一から経緯を説明
といった事実確認や背景説明に時間を使っていた
導入後:
- メンバーはドキュメントを見ながら必要な部分だけピックアップして話す
- 他のプロジェクトのサマリは「見ればわかる」ので、議論が必要な部分に集中
- 「○○ということがあったみたいだけど、これはXXでも起きるのか?」
- 「このアプローチは他プロジェクトでも使えそう?」
といった深掘りした議論ができるように
前提条件やサマリ(BacklogのタスクとSlackの背景情報が統合されたもの)がドキュメントに記載された状態でMTGに入れるため、議論の時間をしっかり確保できるようになったのが大きいです。「こういうことあったみたいだけど〜」とサマリを見ながら話し始められるのも、スムーズな議論につながっています。
その他の効果
- 形式が安定:プロンプトで雛形を作ってあるので、全プロジェクトで統一された形式に
- メンバーの負担軽減:「前より早く終わるようになった」「話しやすくなった」とフィードバックをもらっています
運用の実際:完璧じゃなくてもいい
精度は7割、でも十分使える
AIが生成したレポートのうち、約7割はそのまま使える内容です。残り3割は補足や修正が必要ですが、ゼロから書くよりは圧倒的に楽です。
AIは完璧ではありません。でも、それでいいんです。
人間のレビューや修正が必要なのは当然で、完璧を求めすぎると導入のハードルが上がってしまいます。「7割できてれば後は人間が調整すればいい」くらいの気持ちで使うのがちょうどいいバランスだと感じています。
コストは許容範囲
- 1回の生成コスト: 約5ドル(10人・15プロジェクト分)
- 月間コスト: 約20ドル(週1回実行)
月20時間の削減効果を考えると、十分にペイする金額です。
現在も継続的に利用中
導入から1ヶ月経過し、毎週使い続けています。今後の改善点としては:
- BacklogとSlackの連携強化:タスク内容とSlack発言の紐付きがまだ弱い
- タスク起票との連携:別途開発中のタスク起票アプリとの統合を検討中
まとめ:まず作ってみることが大事
このプロジェクトを通じて感じたのは、「とりあえず作ってみる」ことの重要性です。
1. 完璧を求めすぎない
70%の精度でも十分価値があります。AIはあくまで人間をサポートするツールであり、完璧である必要はありません。
2. 小さく始めて改善する
最初から完璧なものを目指すのではなく、まず動くものを作って、フィードバックをもらいながら改善していくアプローチが効果的でした。
3. 環境があったからできた
このプロジェクトは、以下のような環境があったからこそ実現できました:
- 失敗しても過程を重視される文化:結果だけでなく、プロセスや学びを評価する
- やってみたいことをやれる環境:新しい技術や手法を試すことが推奨される
- Build in Public:作りながら公開し、フィードバックを得ながら改善する
- タイムリバレーション(時間の生成)を重視:効率化で生まれた時間を、より創造的な活動に使う
このような文化や価値観が、「まず作ってみる」を後押ししてくれました。
完璧を求めず、小さく始めて改善していくアプローチなら、どんな環境でも実現可能だと思います。
4. ROIは意外と早い
3人日(約24時間)の投資で、月20時間の削減を実現。1ヶ月で投資回収できるスピード感は、小規模な改善プロジェクトとして理想的でした。
おわりに
AIエージェントの導入で、週300分=月20時間の削減を実現できました。
もし同じような課題を抱えているチームがあれば、ぜひ試してみてください。完璧を求めず、まず作ってみる。そのスタンスが、チームの生産性向上につながるはずです。
使い倒せ、テクノロジー。(MAX OUT TECHNOLOGY)をミッションに掲げる、株式会社リバネスナレッジのチャレンジを共有するブログです。Buld in Publichの精神でオープンに綴ります。 Qiita:qiita.com/organizations/leaveanest
Discussion