株式会社 Ruby開発において Devin の試用を始めており, 少しずつ性能を評価しております.
ポンコツな所もあり, クセを学ぶ必要もありますが有用と思われます.
初級の課題を与えた所, Devin はジュニアレベル以上のコードを生成しました.
使用する方も増えると思いますので setup の雰囲気をだいぶ簡単に記述します.
概要
初めて Devin Interface を開くと種々設定が必要になる.
初回のチュートリアルの様な設定画面は既に開けなくなりましたが, 恒常的な設定画面を元に説明を行う.
概要
- オプトアウト
- Github, Slack 連携
- 環境変数
- Knowledge
- ワークスペース, 開発環境の設定
Settings 画面を開く
オプトアウト
データを Cognition 社のトレーニングに使用させない
Github 連携
Devin が操作する Github account, repository を設定する
-
[ Organization Integrations ]
を選択 -
[ Connect to Github ]
を選択 -
Github へのログイン画面が開くので, 連携するアカウントの
[ Continue ]
を選択 -
幾つか権限があると複数のプロファイルが表示される,
[ 連携するプロファイル ]
を選択 -
[ 権限を付与するリポジトリ ]
を選択し,[ install ]
を選択 -
以上で Devin へ Github 操作権限が付与される
Slack 連携
Slack 上において devin への指示, 経過報告などに用いる
-
[ Connect Slack Organization ]
を選択 -
確認画面へ遷移し,
[ Allow ]
を押下 -
Devin 画面へ戻り
[ Link User ]
を選択- 操作中のユーザーが登録され
- channel 設定のドロップダウンメニューが表示されるようになる
-
Slack で Devin の通知, 操作に用いる channel を開く
-
/app
と chat へ入力,add app to this channel
を選択 - search form へ
Devin
と入力 - 該当項目の
[ Add ]
を選択
-
-
Devin Setting へ戻り, channel のドロップダウンメニューから channel を選択する
-
以上で Slack channel から
@Devin
とメンションする事で指示が可能になる
環境変数
Devin が使用する shell から環境変数を用いる事ができる
例えば, dockerhub のアカウントを登録しておく事で, docker image を Devin が DL 可能になる
-
[ Secrets ]
を選択 -
[ Add Secret ]
を選択 -
Type
,Name
,Value
を設定- Sensitive を Enabled に設定すると, Value が隠される
-
[ Add ]
を選択 -
以上で Devin が用いる shell から
Name
の値で環境変数が使用可能となる
Knowledge
オンボーディングに当たる.
リポジトリで遵守するルールや補足情報などを記述する.
Devin はこの情報を元に判断, 行動する.
-
[ Knowledge ]
を選択 -
[ Add Knowledge ]
を選択 -
最上段のフォーム
(display name) を記述する- 例えば, PRを作成する際など
-
[ Pin to Repository ]
へ適用する Repository を設定する -
[ Content]
へルールなどを記述する -
[ Create]
を選択 -
自動的に
[ Retrieval Trigger (情報を使用する状況)]
が作成される- Display Name, Content の内容を加味し作成される
-
以上で Devin が適切なタイミングで情報を使用する
ワークスペース, 開発環境の設定
開発環境の setup 手順を記述する.
しっかり設定しなかった場合, 開発中に Devin が混乱して ACU を浪費する.
-
[ Devins Workspace ]
を選択 -
[ Add repository ]
を選択 -
検索フォームから設定する repository を検索
-
検索結果から
[ repository name が記述された block ]
を選択 -
[ Continue with REPOSITORY NAME]
を選択 -
VSCode の画面に自動遷移する
-
[ Begin Setup ]
を選択 -
左手の以下項目にコマンドを記述し, setup 手順を明示する.
- Install Dependencies
- Setup Lint
- Setup Tests
- Setup Local App
-
1項目ごとにコマンドを投入し
-
[ Test ]
を押下する事で, 実際にコマンドが実行される- 成功すると Success と表示される
-
[ Done ]
ボタンを押下し次の項目へ移動 - 同手順を繰り返す
-
- 失敗した場合は fail と表示される
- この場合, 自身でコマンドログを追い修正する
- 成功すると Success と表示される
-
全ての項目が Done となった場合
-
Finish
ボタンを押下, その後表示されるモーダルを全て肯定し設定を保存する -
Devin が setup を完了するまで数分待機し完了となる
Workspace setup 補足
secrets
この setup 中の console では, Secrets で設定した環境変数を用いる事ができる
ここでは TEST_ENV
という環境変数を作成済みとする
-
echo $TEST_ENV
とコマンドを登録し Test を実行 -
ここでは console 上に
[REDACTED SECRET]
と表示される- これは, Sensitive データとして設定しているため
- disabled になっている場合は, 文字列がそのまま表示される
docker
workspace で dcoker を用いる場合, 以下では fail する
docker compose exec web bash
bundle
docker 内部でコマンドを実行したい場合は
docker compose exec web bundle
docker の shell へ入らず, 直接コマンドを実行する必要がある
以上, 最低限必要な設定となります
見難い部分もあり, 不足や不備などがあれば後ほど追記, 修正します