Skip to main content

ターミナルで Command を利用する

ターミナルで Command モード (Cmd/Ctrl+I) を利用すると、自然言語のプロンプトから適切な CLI 構文を生成できます。

ターミナルの選択範囲をエージェントに送信する

スタックトレースの一部を選択して Cmd/Ctrl+L を押すと、その内容がエージェントに送信され、次のプロンプトでこの選択範囲を参照できます。

ターミナルを@メンションする

現在アクティブなターミナルについて、エージェントとチャットできます。

エージェントコマンドの自動実行

エージェントには、ユーザーの許可を得たうえでターミナルコマンドを自動的に実行できる機能があります。エージェントによるコマンド実行の扱いは、4 つの自動実行レベルで設定できます。また、特定のターミナルコマンドは、Allow リストと Deny リストによって自動的に許可または拒否できます。

自動実行レベル

自動実行レベルは Cascade に適用されます。Devin Local agent では、これらの代わりに独自の権限モデルが使用され、許可、確認、拒否ルールでコマンド実行を制御します。
Devin Desktop には、コマンドの自動実行レベルが 4 段階あり、エージェントがターミナルコマンドをどのように実行するかを制御できます。 エディタ右下の Devin Settings パネルから、使用する自動実行レベルを選択できます。

管理者が制御する最大レベル (Teams & Enterprise)

Teams および Enterprise のユーザー向けに、管理者は組織で許可する自動実行レベルの上限を設定できます。この設定により、チームメンバーが選択できるレベルが制限され、管理者はセキュリティポリシーを適用しながら、その範囲内でユーザーに一定の柔軟性を持たせることができます。 管理者が最大レベルを設定すると、ユーザーはその上限までの任意のレベルを選択できます。たとえば、管理者が最大値を “Auto” に設定した場合、ユーザーは Disabled、Allowlist Only、または Auto を選択できますが、Turbo モードを有効にすることはできません。 管理者は、Admin Portal のチーム設定でこの設定を構成できます。

チーム全体のコマンドリスト (Teams & Enterprise)

管理者は、すべてのチームメンバーに適用されるチーム全体の許可リストと拒否リストをターミナルコマンド向けに設定できます。これらのリストは、各ユーザー個別の許可/拒否リストに加えて適用されます。 主な動作:
  • チームとユーザーの設定は統合されます: チームレベルのリストは、各ユーザー個別の許可リストおよび拒否リストと組み合わせて適用されます。チームまたはユーザーの許可リストのいずれかにマッチするコマンドは、自動実行されます (拒否リストでブロックされていない場合) 。
  • 拒否リストは許可リストより優先されます。コマンドが両方のリスト (チームレベルまたはユーザーレベル) にマッチする場合は、承認が必要になります
チーム全体のコマンドリストを設定するには、Admin Portal → チーム設定 → Terminal Commands → リストを管理 に移動します。

許可リスト

許可リストでは、常に自動実行するターミナルコマンドを定義します。末尾が * の項目は、同じトークンで始まるすべてのコマンドに一致し、それ以外の項目はそのコマンドと完全に一致する場合のみ適用されます。たとえば、許可リストに git * が登録されていれば、エージェントは git add -A を常に許可します。 許可リストは、エージェントのターミナルコマンドカードから管理します。
  • エージェントが承認待ちの状態では、Run の横にあるドロップダウンを開きます。Allowlist で Prefix を選ぶとベースコマンドで始まるすべてのコマンド (たとえば git *) が自動実行され、Allow を選ぶとそのコマンドと完全に一致する場合のみ自動実行されます。
  • すでに実行済みのコマンドでは、Auto-run settings (コマンドカード上の設定アイコン) を開き、同じオプションを選択します。
ハイライトされている項目をもう一度選択すると、許可リストから削除されます。

拒否リスト

拒否リスト は、自動実行を一切行わないターミナルコマンドの集合を定義します。例えば rm * を 拒否リスト に登録している場合、エージェント は rm index.py を実行する前に必ず権限の確認を求めます。 コマンドを 拒否リスト に追加するには、Run の横 (すでに実行済みのコマンドの場合は Auto-run settings) にある同じドロップダウンを開き、Deny を選択します。これにより、そのベースコマンドで始まるすべてのコマンドが拒否されます。もう一度 Deny を選択すると解除されます。
これらのユーザーごとの 許可リスト と 拒否リスト は Cascade に適用されます。Devin Local agent の場合は、代わりに Devin Local settings の Allow、Deny、Ask でコマンドのパターンを設定してください。ルールの構文については permissions を参照してください。team-wide のリストは Admin Portal で個別に管理します。詳細は上記の チーム全体のコマンドリスト を参照してください。

専用ターミナル

Devin Desktop は、macOS と Linux でコマンドを実行するためにエージェントが利用する専用ターミナルを与えます。 この専用ターミナルはデフォルトのターミナルとは別のもので、プラットフォームごとに固定のシェルを利用します (macOS では zsh、Linux では bash) 。
専用ターミナルは、そのシェルの設定を利用します。そのため、シェルの設定ファイル (例: macOS の .zshrc、Linux の .bashrc) で定義したエイリアスや環境変数をそのまま利用できます。 デフォルトのターミナルが別のシェルを利用していて、Devin Desktop でも環境変数を共有したい場合は、両方のシェルから読み込める共通の設定ファイルを作成することを推奨します。

トラブルシューティング

専用ターミナルで問題が発生した場合は、Devin Desktopの設定で「Legacy Terminal Profile」オプションを有効にすると、レガシーターミナルに戻せます。