
はじめに
VisasQ Inc. Advent Calendar 2025 5日目 の記事です。
こんにちは!インフラチームの坂本です。
インフラチームでは、クラウドインフラ(GCP)の管理・各アプリケーションチーム共通で利用しているようなライブラリ群・認証基盤などの管理をしています。
インフラは基本terraform管理をしていますのでPullRequestでのやり取りとなるのですが、 弊社でterraformで管理していない部分(DNSレコード更新やリダイレクト処理)などがたまに発生します。
その依頼を受けた場合にJiraのチケットを手動で作成するのが面倒だったので、 Devinの PlayBook機能を使ってJiraのチケットを起票するようにしています。
※実はこの機能はslackに転送したGCPなどのActionRequiredな英文メールの内容を翻訳してJiraチケットに起票するPlayBookを簡略化したものです。 それはチームの別メンバーが作ってくれたものです。 便利だと思ったものはとことんまで使い倒すっていうのが大事だと思っています。
この取り組みを見て社内の他チームでもPlayBookの有効活用が進んでいるようです。
準備
- JiraとDevinの連携をしておく必要があります。
- 公式
- Jiraのアカウントを作る必要があるのでJiraの管理部門の協力が必要です。
Devinに登録するPlayBookの内容
あなたは Slack に投稿されたメッセージを、指定された Jira プロジェクトに起票するアシスタントです。 以下のルールに従って動作してください。 ## トリガー条件 - Slack のスレッドに @devin とメンションされた場合に動作する。 - メンションされたスレッドの「親メッセージとコメント」を起票対象の情報とする。 - 当該スレッドに @devin とメンションされていない情報も補足情報として掲載してください ## Jira チケット起票ルール - プロジェクト: [[プロジェクト名]] - 起票先: [[エピックのURL]] のストーリーとして - 優先度: Medium - 種別: Story(ただし Jira の仕様上 Story をサブタスクにできない場合は Sub-task を使用) - 担当者: 無所属(Unassigned) ## タイトルの生成ルール - 本文が日本語の場合、要約したものをチケットタイトルにする。 - 本文が英語の場合、英語のまま要約後翻訳したものをチケットタイトルにする。 ## 本文(description)の生成ルール Slack 親メッセージに含まれるメール本文を基に、以下のフォーマットで作成する: 1. **要点まとめ** - 本文の内容を 3〜5 行で要約する。 2. **重要日付・影響範囲** - メール内に含まれる日付を YYYY-MM-DD 形式に正規化して列挙する。 - 対象範囲や影響するサービスを明示する。 3. **推奨アクション** - 運用担当者が取るべき対応を箇条書きにする。 4. **本文** - 元の Slack メッセージ自体を記載する 5. **Slack スレッドリンク** - 元の Slack メッセージへのパーマリンクを記載する。 ## 注意事項 - エラーや権限不足で起票できない場合は、Slack スレッドにエラー内容を返信する。
呼び出し方
PlayBookを作るときにMacro名を入力しますので それとともにslackから呼び出してあげることでチケット起票されます。
@devin !Macro名
実際にやってみた
slack

Jira

こんな感じです (URLはマスキングさせてもらっていますが、slackのスレッドに起票したJiraのチケットがリンクとして添付され、Devinが色々と補足をしてくれます) Devin <-> Slackの行き来ができるようにもなっています。
何が良いか?
- チケット起票を人がやると情報が抜けることがありますが、PlayBookをテンプレート代わりに使ってそれを回避しています。
- Slackのワークフローにすると敷居が高くなってしまい、気軽に相談されなくなってしまうかな。というのも想いとしてはあります。
- ある程度の下書きまでをやってくれるものとして割り切って使っています。
- 足りない情報は人が捕捉すること前提です
- slackに一言追加するだけなのでかなりの時短になっています
ビザスクではエンジニアの仲間を募集しています! 少しでもビザスク開発組織にご興味を持たれた方は、ぜひ一度カジュアルにお話ししましょう! recruit.visasq.co.jp