Skip to main content

概要

system.json は、管理者が管理対象デバイス (通常は MDM 経由) に配布する、マシン全体に適用される任意のポリシーファイルです。管理者のみが書き込み可能なシステムディレクトリに配置されるため、~/.config/devin/config.json のユーザー設定とは異なり、ユーザーはその設定を変更または削除できません。 用途:
  • 認証を固定して、Enterprise Devin ホストおよび/またはアカウントに限定します。これにより、devin auth login はログイン方法のメニューをスキップし、組織外のアカウントを拒否します。
  • CLI とそのアップデーターに対して、送信 HTTP プロキシを強制します。Enterprise 設定はユーザー設定より優先されます。ユーザー自身の設定にも proxy セクションがある場合は、CLI を起動する前に削除するよう求められます。展開前に proxy を参照してください。
このファイルは任意であり、追加式です。存在しない場合、Devin CLI は非管理対象デバイスとまったく同じように動作します。

ファイルの場所

これらは、Devin Desktop がシステムレベルのルールおよびフックに使用する、マシン全体で共通の管理者書き込み可能なディレクトリです。ファイルは root/Administrator を所有者とし、一般ユーザーには読み取り専用の権限を設定してデプロイしてください。CLI はこのファイルを見つけた場所から読み込むため、ユーザーが書き込み可能な場所に配置すると、ポリシーの目的が損なわれます。

system.json は厳密な JSON として解析されます。コメント付き JSON であるユーザーの config.json とは異なり、system.json ではコメントや末尾のカンマはサポートされていません。上記のコメントは、ファイルパスを示すためにのみ表示されています。

オプションリファレンス

各フィールドは独立しています。必要なものだけを設定してください。不明なフィールドは無視されるため、新しい CLI 用に記述されたポリシーでも、古い CLI では認識可能な設定が引き続き適用されます。

enterprise_host

設定すると、devin auth login は次のように動作します。
  1. ログイン方法のメニューとサブドメインの入力をスキップし、設定されたホストに対して直接認証を行います。
  2. ログイン後のアカウントが別のホストに属する場合、または Devin Enterprise にまったく属さない場合は、正しいホストを案内するメッセージを表示してログインを拒否します。
  3. レガシーの Windsurf ログイン は一切利用できません。
値の比較では大文字と小文字を区別せず、スキームも無視されます。そのため、acme.devinenterprise.comACME.DevinEnterprise.comhttps://acme.devinenterprise.com/ は同等です。ログイン時に明示的に指定された http:// スキームは保持されます (テスト時にのみ有用です) 。それ以外の場合は https:// が使用されます。

account_id

設定すると、認証されたアカウントがこのアカウント識別子と一致している必要があります。ホストがすでに一致している場合でも同様です。共有ホスト上の特定のテナントを固定するために使用します。別のアカウントに解決されるログイン、またはどのアカウントにも解決されないログインは、アカウントの検証後に拒否されます。 使用するアカウント識別子が不明な場合は、Cognitionのアカウントチームにお問い合わせください。account_idを設定すると、WindsurfアカウントはDevinアカウントのポリシーを満たせないため、レガシー Windsurfのログインパスも拒否されます。

プロキシ

CLI 自身の送信 HTTP/HTTPS トラフィック (APIコール、更新、MCPサーバー) をどのようにルーティングするかを設定します。ユーザー設定ファイルproxy セクションと同じ形式です。 devin-updater バイナリも同じ設定を読み取るため、バックグラウンド更新も CLI と同じプロキシを経由します。
Enterprise プロキシはユーザー設定より優先され、両方のファイルでプロキシを設定するとエラーになります。ユーザーの config.json にも proxy セクションがある場合、CLI は起動時に終了して削除を求めます。設定を黙って無視することはありません。ポリシーを展開する前に、ローカルの proxy セクションを削除するようユーザーに伝えてください。

動作と障害モード

破損している、または一部を解釈できないポリシーファイルがあっても、CLI が無効になることはありません。適用なしの状態にフォールバックします。一方、有効なポリシーは常に適用されます。 ログインの適用は devin auth login の実行時に行われます。ポリシーのデプロイ前にサインインしたデバイスにすでに保存されている認証情報は再検証されません。そのため、CLI を展開する前に system.json をデプロイするか、影響を受けるユーザーに devin auth logout を実行して再度サインインするよう依頼してください。 stable、next、enterprise ビルドでは、環境変数で system.json へのパスを変更できません。そのため、ユーザーが CLI に独自のポリシーを指定することはできません。

ポリシーを確認する

管理対象デバイスで:
enterprise_host を設定すると、ログイン方法メニューは表示されず、出力されるサインイン URL は設定したホストのものになります。続いて、作成されたセッションを確認します。
ポリシーの対象外のアカウントでログインすると、組織で必要とされるホストまたはアカウントを明示するメッセージが表示され、ログインに失敗します。 system.json は、ログイン前またはログイン中に適用される必要があるデバイスレベルのポリシーを対象としています。その他の組織全体の設定 (モデル、MCPサーバーとレジストリ、ターミナル権限、サンドボックス強制、ウェブ検索) は、チーム設定でサーバー側により管理され、ユーザーがサインインすると自動的に適用されます。

関連資料