Skip to content

キャッシュされたremote-settings.jsonでmanaged settingsが起動時に適用されない問題を修正

原文(日本語に翻訳)

管理設定(enabledPluginspermissions.defaultMode、ポリシーで設定された環境変数)が、前回のセッションから remote-settings.json がキャッシュされていた場合に起動時に適用されない問題を修正

原文(英語)

Fixed managed settings (enabledPlugins, permissions.defaultMode, policy-set env vars) not being applied at startup when remote-settings.json was cached from a prior session

概要

Claude Code v2.1.80で、組織のmanaged settings(enabledPluginspermissions.defaultMode、ポリシーで設定された環境変数)が、remote-settings.json が前回セッションのキャッシュから読み込まれる場合に起動時に適用されない問題が修正されました。特に企業環境やチームでポリシー管理を行っている場合に影響していた問題です。

基本的な使い方

この修正は自動的に適用されます。managed settingsを使用している環境では、Claude Code v2.1.80以降に更新するだけで問題が解消されます。

bash
# バージョン確認
claude --version
# → 2.1.80 以降であることを確認

実践例

影響を受けていたシナリオ

組織のポリシーで以下のような設定が remote-settings.json で管理されている場合:

json
{
  "enabledPlugins": {
    "security-scanner@settings": true,
    "code-policy@settings": true
  },
  "permissions": {
    "defaultMode": "ask"
  },
  "env": {
    "COMPANY_API_ENDPOINT": "https://api.internal.example.com",
    "LOG_LEVEL": "info"
  }
}

修正前の動作:

  • 初回起動時: ✅ 設定が正しく適用される
  • キャッシュ使用時(2回目以降): ❌ 設定が適用されず、デフォルト値で動作する

修正後の動作:

  • 初回起動時: ✅ 設定が正しく適用される
  • キャッシュ使用時: ✅ 設定が正しく適用される

remote-settings.jsonの設定例

組織のITチームが管理する remote-settings.json の例:

json
{
  "enabledPlugins": {
    "security-scanner@settings": true
  },
  "permissions": {
    "defaultMode": "ask",
    "allow": [
      "Bash(git:*)",
      "Bash(npm:*)"
    ],
    "deny": [
      "Bash(rm -rf:*)"
    ]
  },
  "env": {
    "PROXY_URL": "http://proxy.company.com:8080"
  }
}

注意点

  • この修正はmanaged settings(組織ポリシー設定)を使用している環境に特に重要です
  • remote-settings.json はリモートから取得される組織ポリシー設定ファイルです
  • キャッシュの問題は特定の条件下(2回目以降の起動)でのみ発生していました
  • v2.1.80へのアップデート後、問題は自動的に解消されます
  • 個人ユーザー(managed settingsを使用していない場合)への影響はありません

関連情報