以下の内容はhttps://tech-blog.yayoi-kk.co.jp/entry/2026/03/10/110000より取得しました。


Devinのスケジュール機能でリポジトリの活動レポートをSlackに自動配信してみた

エンジニアの関口です。前回の記事ではDevinを使ったコードレビューの自動化について紹介しました。今回は、Devinのスケジュール機能を使って、リポジトリの活動レポートを毎日Slackに配信する仕組みを作ってみたので、セットアップ手順や使用感をまとめます。

Devinのスケジュール機能とは

Devinには、指定したスケジュールでセッションを自動実行する機能があります。cronベースの定期実行と、特定日時に1回だけ実行するワンショットの2種類があります。

たとえば以下のようなタスクを自動化できます。

  • 毎朝のPR・Issue状況のサマリーレポート
  • 週次の依存関係アップデート確認
  • 定期的なlint修正やテストカバレッジチェック

詳しくは公式ドキュメントを参照してください。

https://docs.devin.ai/ja/product-guides/scheduled-sessions

やりたかったこと

チームの開発状況を毎朝把握するために、以下のようなレポートをSlackに自動配信したいと考えました。

  • 直近のコミット数・PR・Issue状況
  • マージ済みPRの一覧(カテゴリ別)
  • オープン中のPR・Issue
  • 全体のトレンドや所感

朝会の前にこのレポートが流れていれば、各メンバーが事前に状況を把握した上で会話に入れます。

スケジュールの設定手順

Settings > Schedules からスケジュールを作成します。設定する項目は以下の4つです。

項目 設定内容
名前 Daily Activity Report
スケジュールタイプ 定期実行
頻度 毎日(平日 午前9時)
エージェント Devin

cron式で 0 0 * * 1-5(UTC 0:00 = JST 9:00、平日のみ)のように指定も可能です。

Slack Webhook URLの登録

Slackへの投稿にはIncoming Webhookを使います。事前準備として2つの設定が必要です。

まず、Slack側でWebhook URLを発行します。https://api.slack.com/apps からアプリを作成し、Incoming Webhooksを有効にして投稿先チャンネルのWebhook URLを取得します。

次に、取得したWebhook URLをDevinのSecrets機能に登録します。DevinのSettings > Secretsを開き、SLACK_WEBHOOK_URL という名前でWebhook URLを保存します。プロンプトにURLを直接書く必要がないので、セキュリティ面でも安心です。

プロンプトの設定

スケジュールにはプロンプトを設定します。通常のDevinセッションと同じように指示を書くだけです。今回は以下のようなプロンプトを設定しました。

対象リポジトリの最新活動レポートを作成してください。

対象期間は直近24時間です。以下の情報を含めてください。
- コミット数(mainブランチ)
- PR状況(マージ済み・オープン)
- Issue状況(クローズ・オープン)
- 主な貢献者
- マージ済みPRの一覧(カテゴリ別に整理)
- オープン中のPR・Issueの一覧
- 全体のトレンドや所感

レポートが完成したら、Slack Incoming Webhook を使って #dev-daily チャンネルに投稿してください。
Webhook URL は secret の SLACK_WEBHOOK_URL を使用してください。

DevinはリポジトリにアクセスしてコミットやPRの情報を収集し、レポートを組み立ててSlackに投稿するところまでを自動で実行してくれます。

実際に配信されたレポート

以下は、実際にDevinが生成してSlackに投稿したレポートのイメージです。

my-app リポジトリ 最新活動レポート
対象期間: 2026/02/19 〜 2026/02/20

📊 概要
• コミット数 (main): 42件
• PR: マージ済 8件 / オープン 2件
• Issue: クローズ 5件 / オープン 4件
• 主な貢献者: Devin AI (20), user-a (9), user-b (7), user-c (6)

🚀 マージ済みPR (直近8件)

【認証・認可】
• #312 feat: OAuth2.0のリフレッシュトークン対応[f:id:y_redamoon:20260224090829j:plain]
• #310 fix: ログインセッションのタイムアウト処理修正

【UI改善】
• #315 feat: ダッシュボードのレスポンシブ対応
• #314 fix: モーダルのz-index修正
• #309 feat: テーブルコンポーネントのソート機能追加

【インフラ・その他】
• #313 fix: CIパイプラインのキャッシュ設定修正
• #311 chore: Node.js 22へのアップグレード
• #308 chore: 依存パッケージの定期アップデート

👀 オープン中のPR (2件)
• #316 feat: ユーザープロフィール編集画面の追加
• #307 Bump the dependencies group with 12 updates (dependabot)

📌 オープン中のIssue (注目)
• #320 検索機能のパフォーマンス改善 [着手可能]
• #318 E2Eテストの定期実行環境の構築 [着手可能]
• #317 APIレスポンスのエラーハンドリング統一
• #305 v2.0 ロードマップ [epic]

💡 トレンド・所感
• 認証周りの改善が進み、セキュリティ面が強化された
• UI/UXの細かな改善が活発に進行中
• インフラ・CI周りの整備が継続的に行われている
• v2.0のepic (#305) が作成され、今後の方向性が見えてきた

PRをカテゴリ別に整理し、トレンドまでまとめてくれるのがありがたいポイントです。コミット数や貢献者の内訳も含まれており、チーム全体の動きが一目でわかります。

使ってみた所感

セットアップは簡単

設定画面からポチポチ設定するだけで、数分でスケジュールが作れました。cron式も使えるので、細かいスケジュール指定にも対応できます。

レポートの品質はプロンプト次第

プロンプトの書き方でレポートの内容が大きく変わります。最初はシンプルに「PRの状況をまとめて」と書いていましたが、カテゴリ分けや貢献者の情報も含めるように指示を追加したところ、使えるレポートになりました。

プロンプトは後からいつでも編集できるので、何度か回してみて調整するのがよさそうです。自分のチームでは、最終的に毎日ではなく週1回くらいの配信にとどめました。月曜にふりかえりがあるので、そのタイミングに合わせてレポートが流れるようスケジュールを変更しています。

Slack連携の仕組み

SlackへのレポートはIncoming Webhook経由で投稿しています。Webhook URLはDevinのSecrets機能(Settings > Secrets)に登録しておき、プロンプトからシークレット名で参照する形です。Webhook URLをプロンプトに直接書く必要がないので、セキュリティ面でも安心です。

朝会の準備が不要になる(チームによる)

毎朝レポートが自動配信されるので、朝会の前にGitHubを見て回る手間がなくなりました。メンバーがSlackを見るだけで前日の動きを把握できるため、チームによっては朝会の準備そのものが不要になると予想しています。オープン中のIssueや担当がレポートに載っていれば、「本日何を着手すればよいか」をIssueベースで把握できるので、そのまま作業に移りやすくなります。朝会の時間短縮にもつながっています。

気になった点

  • レポート生成に数分かかる場合がある。配信時刻より少し早めにスケジュールを設定しておくと安心
  • セッションがまれに失敗する。メール通知を「失敗時のみ」に設定しておくと、見逃さずに済む
  • レポートの粒度や対象期間はプロンプトで調整する必要があるので、最初の数回は試行錯誤が必要

今後やりたいこと

今回はリポジトリの活動レポートに使いましたが、スケジュール機能の活用先はほかにもありそうです。

チーム運用の面では、人ごとに担当のIssueを割り当てたレポートを出したり、役割別にサマリーを分けたりするなど、いくつかのやり方が考えられます。プロンプトで「担当者ごとにオープンIssueをまとめて」と指示するだけで、メンバー別のタスク一覧も自動で作れそうです。

そのほかの活用例としては次のようなものがあります。

  • 週次の依存関係チェック。dependabotと併用して、依存パッケージの更新状況をレポート
  • 定期的なテストカバレッジ確認。カバレッジの推移をSlackに配信
  • 夜間のエラーログ監視。ログを確認して異常があればアラート

プレイブック機能と組み合わせれば、より複雑なタスクも定期実行できそうです。

まとめ

Devinのスケジュール機能を使って、リポジトリの活動レポートをSlackに配信する仕組みを作りました。セットアップは設定画面から数分で完了し、プロンプトを調整するだけで実用的なレポートが得られます。

試したばかりなので、朝会前の状況把握が自動化されたことでチーム全体の情報共有がスムーズになったかはまだわかりません。Findy Team+のようなツールを使えば定期配信は可能ですが、Devinだけでも同様の集計ができるとわかりました。Devinへの依頼状況やCursorの利用状況など、利用率まで把握できるようになると見ています。スケジュール機能は手軽に使える割に効果が大きいので、定型的な作業を抱えているチームにはおすすめです。

おまけ:今週の運勢占い

スケジュール機能の活用例として、週次の運勢占いもSlackに配信してみました。毎週月曜の朝に自動投稿されます。

今週の運勢占い(2026/02/24)
⭐ 運勢:
小吉
🍀 ラッキーアイテム:
デスクの写真立て
💡 運勢アップのための推奨行動:
同僚に積極的に声をかけてみましょう。
良いコミュニケーションが生まれます。
今週も頑張りましょう! 💪

開発レポートのような実務的な用途だけでなく、こういった遊び心のある使い方もできます。週明けのSlackにちょっとした話題が生まれるので、チームの雰囲気づくりにも一役買っています。

弥生では一緒に働く仲間を募集しています。
www.yayoi-kk.co.jp
弥生のエンジニアに関するnote記事もご覧ください。
note.yayoi-kk.co.jp




以上の内容はhttps://tech-blog.yayoi-kk.co.jp/entry/2026/03/10/110000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14