.gitignore ファイルへのエージェントアクセスを有効にする
プロジェクトの.gitignore 内のパターンに一致するファイルへのアクセスを Devin に与えるには、Devin Settings を開き、Devin Local → Configuration → Gitignore アクセス に移動します。デフォルトではオフになっています。アクセスを与えるには、トグルをクリックしてオンにします。
エージェントの 差分領域
エージェントがファイルを編集すると、Devin Desktop に 差分領域 が表示されます。これは、変更箇所をエディタ内でインラインのハイライト領域として正確に示し、各ハンクごとに承認または却下の操作を行える機能です。すべてのエージェントで、差分領域はデフォルトで利用されます。 Devin Settings → Editor → User interface → Agent diff zones で、差分領域をオフにできます。無効にすると、エージェントによる編集はファイルに直接適用され、ツールバーには承認/却下の操作の代わりに、シンプルな閉じるボタンが表示されます。SSH サポート
VSCode で一般的に使われている SSH サポートは Microsoft にライセンスされているため、Devin Desktop 向けに独自実装しました。OpenSSH がインストールされている必要はありますが、それ以外の依存関係は最小限で、普段どおりほぼそのまま使えます。SSH には Command Palette のRemote-SSH から、または左下の Open a Remote Window ボタンからアクセスできます。
この拡張機能は社内開発では非常にうまく動作していますが、既知の注意点やバグがいくつかあります。
- 現在サポートしているのは、Linux ベースのリモートホストへの SSH 接続のみです。
-
通常の Microsoft の
Remote - SSH拡張機能 (および open-remote-ssh 拡張機能) は動作しません。こちらのサポートと競合するため、インストールしないでください。 - 現時点では、Microsoft の SSH 拡張機能の全機能には対応していません。主にサポートしているのは、最も重要なホストへの接続です。機能要望があればぜひお知らせください。
- SSH で接続したあとにリモートホスト上の devcontainer にアクセスするには、Command Palette (Ctrl/Cmd+Shift+P) を開き、次のいずれかのオプションを選択してください。

- SSH の agent-forwarding はデフォルトで有効になっており、そのホストに対する Devin Desktop の最新の接続を利用します。うまく動作しない場合は、ウィンドウを再読み込みして接続を更新してみてください。
-
Windows では、パスワードを求められた際に
cmd.exeのウィンドウがいくつか表示されます。これは想定どおりの動作です。近日中に表示されないようにする予定です。 -
問題がある場合は、まずターミナルで通常の
sshを使ってリモートホストに SSH 接続できることを確認してください。それでも問題が解消しない場合は、バグ報告にOutput > Remote SSH (Devin)タブの出力を含めてください。
Dev Containers
Devin Desktop は、Mac、Windows、Linux で、ローカルおよびリモート (SSH 経由) 両方のワークフローで Development Containers をサポートしています。 前提条件:- ローカル: お使いのマシンに Docker がインストールされており、Devin Desktop のターミナルから利用できる必要があります。
- SSH 経由のリモート: Devin Desktop Remote-SSH を利用してリモートホストに接続します。Docker がリモートホストにインストールされており、リモートシェルから利用できる必要があります。プロジェクトには
devcontainer.jsonまたは同等の設定が含まれている必要があります。
Dev Containers: Open Folder in Container- 指定した
devcontainer.jsonを使用して、新しいワークスペースを開きます。
- 指定した
Dev Containers: Reopen in Containerdevcontainer.jsonで定義された新しいコンテナーで、現在のワークスペースを開き直します。
Dev Containers: Attach to Running Container- 実行中の既存の Docker コンテナーにアタッチし、現在のワークスペースをそのコンテナーに接続します。コンテナーが Development Container Specification に準拠していない場合、Devin Desktop はリモートユーザーと環境の検出を可能な限り試みます。
Dev Containers: Reopen Folder Locally- 開発コンテナーに接続中の場合は、切断してローカルファイルシステム上でワークスペースを開き直します。
Dev Containers: Show Devin Desktop Dev Containers Log- トラブルシューティングのために、Dev Containers のログ出力を開きます。
Open a Remote Window ボタンをクリックしたときにも表示されます (SSH 経由でリモートホストに接続している場合も含みます) 。
関連:
Remote Explorer: Focus on Dev Containers (Devin Desktop) View— Dev Containers ビューをすばやく開きます。
既知の制限事項
Devin Desktop は現在、Dev Container Specification のライフサイクルコマンドを実行しません。onCreateCommandupdateContentCommandpostCreateCommandpostStartCommandpostAttachCommand
devcontainer.json で定義) と、Feature レベルのライフサイクルコマンド (devcontainer-feature.json で定義) の両方に当てはまります。dotfiles のインストールも行われません。
動作するもの:
- Feature の
install.shスクリプト (イメージのビルド時に実行されます) - Feature の
mounts(ボリュームはコンテナーのランタイム時にアタッチされます) - Feature の
entrypointフィールド (コンテナーの起動時に毎回実行されます) - その他すべてのイメージ ビルド時の操作 (Dockerfile、docker-compose、features)
回避策: ランタイムセットアップに Feature entrypoint を利用する
コンテナー起動時にセットアップを実行する必要がある Dev Container feature を作成している場合は (たとえば、マウントされたボリューム内のファイルを設定する場合) 、ライフサイクルコマンドではなく、その feature のentrypoint フィールドを利用してください。entrypoint は、マウントがアタッチされた後、コンテナーの起動のたびに実行され、完全に自己完結しています。つまり、この feature を利用する側は devcontainer.json を変更する必要がありません。
devcontainer-feature.json で、entrypoint を宣言します:
install.sh (イメージのビルド時に実行されます) に、entrypointスクリプトを記述します:
entrypointスクリプトは必要なセットアップを実行したら、そのまま正常に終了するようにしてください。末尾を
exec "$@" にしないでください。コンテナーコマンドへの制御の受け渡しは、CLI 側のentrypointラッパーが処理します。IDE が接続する前に同期的に実行されるため、スクリプトはできるだけ軽量に保ってください。WSL (ベータ)
バージョン 1.1.0 以降、Devin Desktop は Windows Subsystem for Linux をベータ版としてサポートしています。あらかじめ、Windows マシンで WSL のセットアップと設定を完了しておく必要があります。 左下のOpen a Remote Window ボタンをクリックするか、Command Palette の Remote-WSL から WSL にアクセスできます。
Extension Marketplace
Devin Desktop はデフォルトで Open VSX のミラーから拡張機能をダウンロードします。別の marketplace を利用するには、Devin Settings を開いて 拡張機能 セクションに移動し、2 つの marketplace URL を両方とも更新してください。
拡張機能 ビュー上部に表示される marketplace メッセージ内の here リンクからも、これらの設定を開けます。エディタの
settings.json で setting ID を直接指定することもできます。いずれかの値を変更した場合は、新しい marketplace を利用するために Devin Desktop を再起動してください。
Devin Desktop プラグイン
Devin Pyright
Devin Pyright
拡張機能の検索バーで「Devin Pyright」を検索するか、
@id:codeium.windsurfPyright を貼り付けます。
