{"version":"2.1.248","anchor":"five-more-environment-variables-can-be-set-from-settings-jso","canonical_anchor":"five-more-environment-variables-can-be-set-from-settings-jso","heading":"Five more environment variables can be set from settings.json","tier":"use","area":"Settings","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.248\/e\/five-more-environment-variables-can-be-set-from-settings-jso","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.248","markdown":"### Five more environment variables can be set from settings.json\n\nFive more environment variables, including stream and byte watchdogs, can be set in settings.json.\n\n**What**\n\nThe allowlist that decides which `env` keys in a settings file are applied to the process gains `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS`, `MCP_CONNECTION_NONBLOCKING`, `CLAUDE_ENABLE_BYTE_WATCHDOG`, `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` and `CLAUDE_ENABLE_STREAM_WATCHDOG`. Previously these could only be set in your shell before launching. Set them once in settings instead, for example `{ \"env\": { \"CLAUDE_ENABLE_STREAM_WATCHDOG\": \"1\" } }`.\n\n**Details**\n\n- The same allowlist decides whether a settings file is flagged as carrying unrecognised env keys, so these five no longer trigger that warning.\n- All five are already read elsewhere in the build; the change is only that settings can now supply them.\n- The byte watchdog, which aborts a response whose byte stream stalls, checks its variable first and otherwise falls back to a server-side default that is on, so leaving it unset keeps the current behaviour.\n\n**Evidence**\n\n`CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS`, `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK`\n\n- Area: Settings\n- Names: `CLAUDE_ENABLE_STREAM_WATCHDOG`, `CLAUDE_ENABLE_BYTE_WATCHDOG`, `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK`, `MCP_CONNECTION_NONBLOCKING`, `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS`\n- Tier: Use it now\n- Useful: 4\/5\n- Signal: 3\/5"}