Closed9

DevinMeetupTokyo 各セッションメモ

utauta

少人数でも回る!DevinとPlaybookで支える運用改善

資料:https://speakerdeck.com/ishikawa_pro/shao-ren-shu-demohui-ru-devintoplaybookdezhi-eruyun-yong-gai-shan

  • 扱っているサービス:ファンクラブサイトなど

CAMの体制

  • サービス専属エンジニアは居ない
  • サーバはKubernetest Cluster管理

少人数での大量サービス運用

  • エンジニア数<サービス数
    • ちょっと想像できない
  • 保守業務が大きな負担(ライブラリバージョンアップなど)
    • 単純作業が多いう認識なので、数をこなすのは楽しくなさそう
  • インフラ面
    • 作業の属人化
      • →AutoScalingではだめ?
  • 上記課題の解決策として、Devin、Playbook

DevinとPlaybook

Knowlage

  • Devinのナレッジを使った属人化対策
    • 確かにこのナレッジは無意識

Playbook

  • 定型タスクの自動化手順書
  • 自然言語で手順書を書くことで、それに従った作業実施をDevinが行ってくれる
    • ★試したい

効率化

  • 10人→1人
  • 一月→1週間
    • ちょっと数値だけだと凄すぎて信じられない気持ちがある。。
  • ルーティンワークからの解放はいいなぁ。。

コメント

  • 新規開発ではなく、保守業務系の適用例はあまり聞かなかったので嬉しい
  • アプリ系だとOSバージョンアップ時の対応(Deprecateコードの修正なども任せられるかも)
  • サーバはDevin→MCP(AWS) で作業させている認識でいいんだろうか

質疑

  • Q: 自立型AIに本番環境を触らせるのが怖い。本番を破壊した例はあるか?また、もう少し複雑な業務を任せたことはあるか?
    • Devinに直接インフラを触らせているわけではなく、リポジトリで環境管理を行い、レビュー後にデプロイする
    • 新しい構成を作り込んで(テンプレのようなもの)から作業させたことはある。その形であればなんでもできるのでは。
  • Q: 属人化 Play Bookで自動化するまでは一人の人が行ったのか、複数にで実施したのか。
    • 詳しい人がプレイブック定義を行っていた。
  • Q:社内教育、適切性などの検討について教えてほしい
    • CamではSBにAI活用ガイドラインが定義されており、それに沿ったものであるかの確認。学習には使われないことを確認し、会社としてGoが出た。
    • 定型業務が多い中でそれがこなせることを調査.
  • Q: 他ツールとの比較
    • github copiliotAgentを使っている。比較の結果、手元で作業してくれるよりはSlackから指示して独立してやってくれるツールの方が良いという感触だった.
utauta

マルチテナントSaaSでのRLS導入に際し、並列でDevinを動かし高い品質のコードをパワフルにプロダクションへ反映させた事例

  • Liam
    • Vsualizeツール?(OSS)

Devin採用理由

  • PR単位での成果物
  • 複数セッションの並列実行
    • 他サービスではあんまりないのかな?Devinしか知らないからわからない

設計・実装方針

  • ADRの作成
    • 既存データへのorganization_idの追加で発生する影響範囲
    • レコードへの追加と同時に関数実行を行わせる機能(Schemaに書けるらしい?)
      • Devinに任せる上で良い構成と判断したらしいが音声途切れでいまいち理解できない
    • OSSrepoにコード、ADRともに上がっているらしい

人の手が必要な部分

  • 自動生成コード
    • それぞれが生成するためコンフリクトの発生
    • DB権限周りの甘さ
      • それぞれの作業は片手間にできたらしい。
  • Devinを動かしている間にDevinの稼働が止まらないようなタスクの準備を行っておくべき
    • Devinは動いていない間賃金(ACU)を消費しないことを考えると単純なジュニアエンジニアとは比較できいないと思うが、実際どうなんだろう.

質疑

 - なし

コメント

  • マルチテナントSaaS
    • Udemyとかみたいな企業ログインがあるようなサービスという理解でいいんだろうか。
  • 自動生成周りは並列実行するなら上手いやり方がありそう
    • 動作確認だけそれぞれ生成済みのものを使わせて、PRには含めさせないとか?
  • ADRは人間PRJと同じように作ったのか、Devinに読ませることを意識して作ったのか。後者の場合は意識した事があれば知りたかったな
utauta

コードを書かせないDevinの使い方

資料:

@k1low/deccでのスライド作成

Agenda

DevinでCodingさせるの難しいし、それならEditorで動かしやすいやつ使いませんか?

それでもDevinは使えるらしい

AskDevin

IndexしたDevinに対する検索機能→受領課金対象外! (知らなかった)

  • お手軽Slack連携とCode検索機能付きLLM Runtime
    • 要はDeep Wiki部分ってこと・・?
  • コードを書く際は、Claude Codeを用いる
    • やっぱりこっちの方がCodingは良いのか

ユースケース

  • Document Workflow

    • TechnicalWriterと技術者の責任範囲が曖昧になりがちな部分をDevinが調節してくれる
      • いまいちイメージできねえ
    • github issue連携
      • summaryを書いて、api連携で記載
      • 細かい連携はSlack(どこもSlask連携させているが、Slackを用いる理由がいまいちわかっていない)
    • 表記揺れ修正みたいな面倒なタスクも任せられる
      • 個人的に刺さった
      • 疎かになったドキュメントの整備を任せられるのは大きい
  • scenarioTest

    • Scenarioを考えるコスト大
  • その他

    • Slackでエンジニア質問が出た際にその質問をそのままInnputにしてドキュメントの更新をさせられる
      • 強い。これはやってみたいが、Teamsでもできたりしないだろうか
  • Knowlageの管理は面倒

    • まだ実感できるほど触れていないからな…
  • Devinがself-mergeできてしまう問題(これは下記ページをあとで調べる)

onboarding

  • repoを横断したcontextを渡し、エラーログを渡した際のreporting能力向上
    • infraとplatformを跨いだ検索
      • 確かに同社開発ならあり。
  • こういうの作りたい、をDevinに質問できる
  • どういう修正をいれるべきかを教えてくれる
    • 客側に導入して理解補助はありか?
  • Devinの権限管理
    • EnterPrizeであれば細かく設定可能だが…(高い)
    • 複数OrgでDevin契約してうまくれるが、GithubAppやSlaxkappの名前が単一のため複数の設定が不可能

便利ツールを配るのに便利?

  • MCP連携を利用して
    • LLMをホスティングしなくても配れる。
    • Slackappを作らなくて良い
    • SaaS各社のMCPを使える
      • セキュリティ的に・・?
  • DataDog MCP
    • zero codingではうまくいかない。
    • Knowledgeに積めばうまくいくかも?
      • Knowledgeは偉大か…

質疑

utauta

Devinで変えるエンプラシステム開発の未来

  • 山河 征紀

  • 趣味:Devinの謎行動に付き合う

  • こんなエンタープライズシステムはいやだ、をDevinにさせてる…

wht is devin

  • Code Completion

  • AI Editor

  • AI software engineer

  • devin

    • コーディングに限らず、デプロイ、データ分析まで可能
    • キャッチアップにかかる時間が0
    • 気軽にPRを捨てられる

エンプラシステムの壁

  • Docがない/未メンテ
  • CI/CDなどない
  • Excel方眼紙ドキュメント
    • ◯すべし
  • 現行踏襲の確認がメインとなる要件定義

deepwiki

- コードからのドキュメント生成
    - 一部だけ取り出して(ex.DBだけなど)検証確認みたいなことも可能

AIと人

- 人:タスク分割forAI
    - 環境整備
- AI
    - コーディング
    - テスト
    - デバッグ

並列で動かすDevin

- Devinは隙間なく動かせ
    - 遊んでいるDevinも発生するが、多少は目をつむる
    - 人がボトルネックになる状態はAI駆動としては無駄?となる
- Devinの作業把握
    - 階層型Issueを使った進捗報告
        - 一つ一つ、Issueを出させ、終わったらクローズさせる
    - CIでDevinレビューまで自動化させておく

CICD

  • コードレビュー<テスト
    • コードレビューの指摘はプロンプトで指摘するような内容がなくなってくる(らしい)
  • 大事なのはテスト
    • CD後のテストを実施させ、E2Eテスト反映までを一連の流れ
      • イマイチテストのほうが大事というのに納得がいかない(AIだとそっちメインになるの?)
      • 品質指標などが変わりそう

Excel方眼紙

  • Devinはエクセルを読めなかった(今は読める)
  • 画面設計などはUIイマイチ
    • Excel中の画像は読めない(現状)
    • FigmaMCPサーバに期待

devin ファースト

  • 「それ、Devinでできないの?」
    • 早く社内で同じような状態になりたい...
  • webhookで課題作成時にAPI経由で{"prompt":"修正して"}を実施させる

質疑

  • 並列タスクが互いに影響する場合はDevinがやってくれるのかひとがやるのか?
    • 人間。その辺の調整は人間。今後、変わっていくことを期待
  • AIツールにお客様のシステムを読み込ませる話は合意の上で?
    • 同意したうえで実施している。PoCから初めて、問題なければVPC移行という流れで実施している
  • エンプラシステムの予算感とDevinとなった場合の予算感。
    • 安いなと言う感覚.
    • XX億の世界、クラウドの利用費ではなく、オフショアや人が動くのにかかる価格。
      • それがDevinに置き換わる。
      • まだ実績はない(PoC段階)が、ものすごく安くなる
  • エクセルの画像は読めないとのことだが、画像は読み込める?
    • 画像そのものは読み込めるが、かなり精度が悪い
utauta

Devin DeepDive コンテキストを制すものがDevinを制す

speaker: shu

Devinの印象

  • 高い期待値
    • 現実
      • タスク経過が見られるAI
      • Slack指示が画期的?なのか
      • 意外とPRの質が悪い

コンテキストを制するものがDevinを制する

AskDevin

  • うまく使うとかなりパワフル?
  • どう活用するのか
      1. 実装状況の確認
      1. タスクを投げる
        • cmd+enter でベストプラクティスに従ったプロンプトの生成が可能
  • 良いところ
    • PR作成まで早く、質の向上
  • 課題
    • 質問からやるのは手間
    • UXが非直感的

Devin Spaces(Beta)

  • https://app.devin.ai/spaces/

  • Linear

    • Jira/Trelloのモダン版
  • issueやタスクの説明を自動化できる

  • Devinの得意不得意をDevinが可視化してくれる

  • Devin Spacesは通常操作で遷移できる画面にないので、URL叩くしかない

質疑

  • DevinSpace -> Jira連携もある
  • 音声がくぐもって聞き取れなかった…
  • Confidenceの青赤
    • タスクを実施させると赤も青になったりすることがある.
    • Devinに情報を与えて変化も期待できる
utauta

運用して初めてわかったDevinのセキュリティ課題

Speaker: Hiroaki Akamatsu

自己紹介

  • 外部AIツールのセキュリティレビュー
  • ガイドライン
  • Platform整備
  • LLM整備

  • AIで起きるヒヤリハット
    • ファイル削除
    • 認証情報公開
    • DB初期化
    • AI変更が確認無しで本番適用
  • Devinでは
    • 誰もチェックしないまま本番適用
    • 他の人の認証情報が盗める
    • 外部流出変更
    • AIAgent暴走で環境破壊
      • Devinの機能理解と使い方改善が必要
  • ポイント
    • Devinってどうやって動く?
    • PRは勝手に作られて良い?
    • ほかツール連携のセキュリティは?
    • 安全な制御方法

Devinってどうやって動いている?

  • GithubAppに権限を渡して読み書きが行える状態に
  • Devinの動き
    1. User指示
    2. Devinセッション作成
    3. Githubアクセストークン作成
    4. トークンをセッション内に配置(プロキシサーバも提供)
    5. コード取得、PRの作成

PRをレビューしてますか?

  • Branch Rulesetでレビューを必須化
    - Required approvals =1
    - Require review from Code Owners
    - Require approval of the most recent reviewable push
  • AI Coding以外でもPRの自己承認は発生する

  • policy-bot を導入し対策

    • forkして独自実装

連携ツールのセキュリティ

  • 個人APIKeyを渡すと非常に危ない

  • 同じOrganization内では、すべてのSessionを閲覧・コマンド実行が可能

    • いつ、どこで、だれが、何を変更したのか追跡不可能.
  • githubAction上で行うことでのシークレット管理はリポジトリシークレットを使わない(どのワークフローからも取得可能)

    • Workload Identity FederationやAssumeRoleWithWebIdentityとクラウド上のシークレット管理を厳密にworkflowと紐つける必要がある
  • DevinSecretも同様に同じOrganizationから参照可能.

  • 個人に紐つかないサービスアカウントから認証情報を設定すること

  • DevinはGithuAppなどに入れた認証情報を自由に使用可能である。

  • Prompt Injection攻撃、Supply-chainで流出の恐れ

    • Prompt Injection攻撃
      • DevinWeb検索等を行う。それにより、もともと指示されていた内容を忘れてしまう可能性がある。
    • Supply-chain攻撃
      • 偽ツールを導入してしまう
      • 有名ライブラリ自体が乗っ取られている
    • DevinにはAnti-Virusなどは存在しない。
      • プロンプトで指示、セッションの監視による軽減
      • 認証情報の取り替えが必要

Devinの安全な制御

  • Devinから本番へのデプロイを行わない

  • アクセス権限を適切に付与

  • AI

    • 実行可能なすべての行動を取りうる前提
    • プロンプトで完全な制御は不可能

まとめ

  • 技術的なガードレース整備が追いついていない
    • 根本対策と軽減策の入り乱れ
    • 生産性とセキュリティのトレードオフ. バランスを取ることが大事
  • ユーザもAIのセキュリティをキャッチアップ中

質疑

  • 質問の音声が聞こえない。。。
    • A: メルカリには自動的にコードの脆弱性を見つけるもの、人の目で見つけるものそれぞれ存在
  • policy-botはどういった動作イメージか教えてほしい
    • policy-botはプロセスの一つとして常駐。webhookでPRを確認し、ルールに従っているか確認し、それに従ってステータスの更新が行われる. ホスティングが必要
  • 機密情報が同Organization内で読めてしまう問題について
    • 現状の対策はOrganizationにアクセスできる人間を減らす
    • ユーザにガイドラインでSecretを利用しないように伝える

メモ

  • MaliciousPackage
utauta

Devin導入後にわかったDevin導入前にやった方が良かったこと

Speaker: てつ

  • 組織導入、チームでの運用方法について

  • 直後の課題 1タスク1000円かかることの精神的障壁

  • チーム内でのタスクルール制定

  • ACU消費のせいで使いにくい。

  • ホワイトリストでこのタスクはDevinにやらせよう、を作っておく->ユーザのマインドブロックが外れやすい

  • 振り返り方法を決めておく

    • ACU消費を個人裁量で使用していた
  • 週1で振り返りを行い、効率的な(コスト面含め)タスク、依頼方法の知見をためた

utauta

育てたDevinは自律するのか? - Terraformによる育成基盤と自律的仕様更新への挑戦 -

Speaker: Yuya Kotani

  • 組織でのDevin導入マインド
    • 生成AIは福利厚生ではなく、必須.
    • 確定で入社してくれるエンジニア
      • コスパ最強
    • 精度は上がり続ける
      • 性能が悪い→うまく使いこなせてない、or 今後上がる
    • プロンプトは体で覚える
    • タスク分割が求められる→マネジメント力につながる
utauta

With Devin -AIの自律とメンバーの自立-

Speaker: Yuya Kotani

  • 組織でのDevin導入マインド
    • 生成AIは福利厚生ではなく、必須.
    • 確定で入社してくれるエンジニア
      • コスパ最強
    • 精度は上がり続ける
      • 性能が悪い→うまく使いこなせてない、or 今後上がる
    • プロンプトは体で覚える
    • タスク分割が求められる→マネジメント力につながる
このスクラップは1ヶ月前にクローズされました