1日1AI活動 Devin / 1. Introducing Devin
Devinは、Cognition社が開発した自律型AIソフトウェアエンジニアで、SlackやGitHubと連携し、自然言語での指示からコードの生成やプルリクエストの作成を行うことができる
ログインしてみたがわからん
これをざっと読んだ、Ubieさんは非エンジニアでも使ってる
公式ドキュメントを読むのが良さげ
Devinの強みは何ですか?
Devinが得意とする仕事のタイプは以下の通り:
バックログに残る前に、多くの小さなタスクに並行して取り組む
ターゲットを絞ったリファクタリング
小さなユーザー機能リクエスト、フロントエンドのタスク、バグ修正、エッジケース
テストカバレッジの改善
CI失敗の調査と修正
リント/静的解析エラーの対処
コード移行、リファクタリング、モダナイゼーション
言語の移行(例:JavaScriptからTypeScript)
フレームワークのアップグレード(例:Angular 16 -> 18)
モノレポからサブモジュールへの変換
未使用の機能フラグの削除
共通コードのライブラリへの抽出
よくある反復的なエンジニアリングタスク
PR Review
Codebase Q&A
バグの再現と修正
ユニットテストの記述
ドキュメントのメンテナンス
カスタマーエンジニアリングサポート
カスタマイズされたデモの作成
ソリューションのプロトタイピング
内部ツールの構築
最も成功するDevinタスクは、一般的に次のようなものです:
例えば、CI のパスチェックや自動デプロイのテストなど。
ジュニアエンジニアレベルの複雑さ。(1)判断基準 (2)潜在的な失敗のルート を考え、十分な指示があればインターンでも解決できるようなDevinタスクを割り当てる!
ベストプラクティスと事前タスクチェックリストに従う
最も成功したワークフローは以下の通り:
同僚と議論しているバグについてSlackのスレッドにDevinをタグ付けする
ウェブアプリケーション経由でより複雑なタスクを委任し、DevinのIDEで良い初稿ができたら引き継ぐ。
コンテキストスイッチの手間を省くために、IDEでタスクを委任する
一日の始まりにTodoリストからタスクを切り出し、レビュー待ちのPRの下書きに戻る。
Devinは、あなたのチームや既存のワークフローの一部であるときに最も効果的です。
Devinインターフェース
Devinは会話型のユーザーインターフェースとして設計されており、組み込みIDEでDevinの開発プロセスをフォローしたり、引き継いだりすることができます。DevinはDevin APIからも利用できます。
Devinのワークスペースには、以下のものがあります:
VSCode: Devinの組み込みコードエディタには、使い慣れたIDEツールやショートカットがすべて装備されています。Devinの作業をリアルタイムでフォローし、コマンドを実行したり、コードを直接編集したり、Devinのコードをテストしたりすることができます。
ブラウザ: Devinがドキュメントを閲覧したり、ビルドしたウェブアプリケーションをテストしたり、情報をダウンロード/アップロードしたりする様子を見ることができます。インタラクティブブラウザを使って、Devinのブラウジングタスクをナビゲートすることができます。
制限
Devinは若手のエンジニアで、学ぶべきことがたくさんあります。Cognitionチームは、Devinの幅広い能力を向上させるために努力しています。
Devinを使用する際には、Devinが成功裏に実行することが難しくなるタスクを念頭に置いてください:
大規模な課題: 大規模な課題:Devinは一般的に、小規模でスコープが明確なタスクでより良いパフォーマンスを発揮します。より複雑な編集を行う場合は、プロジェクトを分割し、別々のセッションで実行できるような、小さな独立したタスクに分割することをお勧めします。複数のセッションを頻繁に並行して実行する必要がある場合は、Devin APIを使用してセッションを作成し、プログラムによって構造化された結果を取得することができます。
信頼性 Devinは時に軌道から外れることがある。Devinを軌道に乗せることができる場合もありますが、IDEでDevinから引き継いだ方が良い場合もあります。最初のプロンプトでDevinに明確な完了基準を与えることと、Devinと共同で計画を立てることは、Devinの信頼性を向上させる方法です。
UI関連の美学: デビンは機能的なフロントエンドを作ることはできるが、美的センスについてはあなたの助けが必要だ。デビンは視力が良くない。
モバイル開発: デビンはモバイル・アプリケーションを手伝えるが、テスト用の携帯電話を持っていない。
セキュリティ: これはCognitionの最優先事項ですが、Devinとクレデンシャルを共有したり、特定のプラットフォームへのアクセスを許可したりする際には、すべてのユーザーに注意していただくようお願いしています。Devinとクレデンシャルを共有する際は、必ずSecrets Managerを使用するか、Devinがチャットで提供する安全なクレデンシャル共有チャンネルを経由してください。