feat(claude-code): sync settings and keybindings to Claude Code v2.1.195#5867
Merged
github-actions[bot] merged 1 commit intoJul 3, 2026
Merged
Conversation
Contributor
|
Thanks for the PR! This section of the codebase is owned by @domdomegg, @bogini, and @sarahdeaton - if they write a comment saying "LGTM" then it will be merged. |
Schema:
- effortLevel: remove session-only "max" from enum (settings file accepts only low/medium/high/xhigh); refresh model/default notes (Fable 5, Opus 4.8)
- fastMode: Opus 4.8 default since v2.1.154; available on Opus 4.8 and 4.7
- teammateMode: add "iterm2" (v2.1.186); default auto -> in-process (v2.1.179)
- hooks: command/http/mcp_tool timeout default corrected to 600 (lowered to 30 on UserPromptSubmit, 10 on MessageDisplay); add MessageDisplay event (v2.1.195)
- allowedChannelPlugins: items string -> {marketplace, plugin} objects
- theme: enum incl. auto + custom:<slug> pattern
- add 41 documented top-level properties (advisorModel ... workflowKeywordTriggerEnabled), plus sandbox.credentials, sandbox.allowAppleEvents, worktree.symlinkDirectories, autoMode.classifyAllShell (UNDOCUMENTED), Cd and MultiEdit permission rules (MultiEdit incorporates SchemaStore#5701)
- add 151 documented environment variables (3 UNDOCUMENTED) to $.env.properties (now 305, sorted): provider config (Bedrock/Vertex/Foundry/Claude-Platform-on-AWS, 14 VERTEX_REGION_CLAUDE_*), prompt caching, full OpenTelemetry surface, MCP timeouts, model-display overrides, watchdog/streaming, command/feature toggles; deprecation/description corrections across existing vars
- mark ANTHROPIC_SMALL_FAST_MODEL deprecated; fix many descriptions and doc-link anchors verbatim against settings.md/env-vars.md/monitoring-usage.md
- remove duplicate undocumented env var CLAUDE_CODE_SESSION_END_HOOKS_TIMEOUT_MS (keep documented spelling CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS)
- keybindings builtinAction: add app:toggleBrief, app:openArtifact, chat:workflowKeywordToggle; remove app:toggleTeammatePreview, settings:close
- register claude-code-keybindings.json in schema-validation.jsonc and add a coverage.js fallback so builtinAction/context enum coverage runs
Tests:
- modern-complete-config, env-variables, enum-coverage, edge-cases, notifications, basic-config, complete-config, model-opus, with-schema: exercise new properties, enum values and env vars (pass enum/default coverage gate)
- keybindings all-contexts.json: bind every builtinAction across every context (enable keybinding enum coverage gate)
- keybindings current-actions.json: add the three new action bindings; replace removed settings:close with select:accept
- permissions-advanced.json: add MultiEdit and MultiEdit(~/projects/**) (incorporating SchemaStore#5701)
Negative tests:
- invalid-enum-values.json: invalid values for theme, preferredNotifChannel, editorMode, voice.mode, disableAutoMode, sandbox.credentials mode, OTEL protocol/temporality, CLAUDE_EFFORT, and the new boolean/enum env vars (pass enum coverage gate)
Supersedes SchemaStore#5723.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
7a199f6 to
994d57e
Compare
Contributor
|
LGTM |
Contributor
|
Merging because @domdomegg is a code-owner of all the changes - thanks! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Syncs
claude-code-settings.jsonandclaude-code-keybindings.jsonfrom the last synced v2.1.143 (#5706) up to v2.1.195, including a full documented-coverage audit againstsettings.mdandenv-vars.md.Schema
Accuracy fixes
effortLevel: removemaxfrom the enum —maxandultracodeare session-only and not accepted in the settings file; refresh model/default notes (Fable 5, Opus 4.8).fastMode: corrected to Opus 4.8 default since v2.1.154; available on Opus 4.8 and 4.7 per fast-mode.teammateMode: additerm2(v2.1.186) and change defaultauto→in-process(v2.1.179), per agent-teams.hookscommand/http/mcp_tooltimeout: default corrected to 600 (lowered to 30 onUserPromptSubmit, 10 onMessageDisplay) per hooks.allowedChannelPlugins: items corrected from string to{marketplace, plugin}objects per channels.channelsEnabled,voiceEnabled(legacy alias),allowManagedMcpServersOnly,otelHeadersHelper,awsAuthRefresh/awsCredentialExport,strictKnownMarketplaces,ANTHROPIC_SMALL_FAST_MODEL(deprecated): verbatim description and doc-link corrections.CLAUDE_CODE_SESSION_END_HOOKS_TIMEOUT_MS, keeping the documented spellingCLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS.New settings properties (v2.1.x, per settings.md "Available settings")
advisorModel,agentPushNotifEnabled,allowAllClaudeAiMcps,autoCompactEnabled,autoScrollEnabled,awaySummaryEnabled,axScreenReader,claudeMd,disableAgentView,disableArtifact,disableAutoMode,disableBundledSkills,disableClaudeAiConnectors,disableRemoteControl,disableWorkflows,editorMode,enforceAvailableModels,fallbackModel,fileCheckpointingEnabled,footerLinksRegexes,gcpAuthRefresh,inputNeededNotifEnabled,leftArrowOpensAgents,managedMcpServers,maxSkillDescriptionChars,pluginSuggestionMarketplaces,policyHelper,preferredNotifChannel,remoteControlAtStartup,requiredMaximumVersion,requiredMinimumVersion,respondToBashCommands,skillListingBudgetFraction,sshConfigs,sshHostAllowlist,syntaxHighlightingDisabled,theme,verbose,voice,wheelScrollAccelerationEnabled,workflowKeywordTriggerEnabled; plussandbox.credentials(v2.1.187),sandbox.allowAppleEvents(v2.1.181),worktree.symlinkDirectories(settings#worktree-settings),MessageDisplayhook event,CdandMultiEditpermission rules (permissions;MultiEditincorporates #5701, stuck on rebase since May), andautoMode.classifyAllShell— UNDOCUMENTED, changelog v2.1.193 only.Environment variables
Add 151 documented environment variables to
$.env.properties(now 305, alphabetically sorted), sourced from env-vars.md, monitoring-usage.md, and the provider pages: provider config (Bedrock/Vertex/Foundry/Claude-Platform-on-AWS incl. 14 explicitVERTEX_REGION_CLAUDE_*keys), prompt caching, the full OpenTelemetry metrics/logs/traces(beta)/mTLS surface, MCP timeouts, model-display overrides, watchdog/streaming, and command/feature toggles. 3 UNDOCUMENTED (changelog only):CLAUDE_CODE_DISABLE_MOUSE_CLICKS(v2.1.195),CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP(v2.1.193),OTEL_LOG_ASSISTANT_RESPONSES(v2.1.193).Keybindings
builtinAction: addapp:toggleBrief,app:openArtifact,chat:workflowKeywordToggle; removeapp:toggleTeammatePreview,settings:close(confirmed against generated v2.1.195 defaults and keybindings).claude-code-keybindings.jsoninsrc/schema-validation.jsoncand add asrc/helpers/coverage.jsfallback so reusable$defsenum coverage (builtinAction,context) is checked — closes a gate that was never run.Tests
modern-complete-config.json(comprehensive),env-variables.json,enum-coverage.json,edge-cases.json,notifications.json,basic-config.json,complete-config.json,model-opus.json,with-schema.json: add coverage for every new property, enum value, and environment variable; spread boolean0/1,true/false, OTEL protocol, andCLAUDE_EFFORTvalues to satisfy the enum and default-value coverage gates.claude-code-keybindings/all-contexts.json: regenerated to bind everybuiltinActionacross everycontext— required to pass the newly-enabled keybinding enum coverage gate.claude-code-keybindings/current-actions.json: add the three new action bindings and replace the removedsettings:closewithselect:accept.permissions-advanced.json: addMultiEditandMultiEdit(~/projects/**)(incorporating claude-code-settings: add MultiEdit to permission rule regex #5701).Negative tests
invalid-enum-values.json: invalid values fortheme,preferredNotifChannel,editorMode,voice.mode,disableAutoMode,sandbox.credentialsmode, OTEL protocol/temporality,CLAUDE_EFFORT, and the new boolean/enum environment variables — required to satisfy theno_negative_enum_testcoverage gate.Skipped
attribution.sessionUrl— already covered by open PR add attribution.sessionUrl property #5833.uniqueItemPropertieskeybinding duplicate-context constraint (and its negative test) — AJV extension keyword, not JSON Schema draft-07; no precedent in this repo. Not added pending harness support.$schemahttp://json-schema.org/draft-07/schema#301 redirect — left as-is (SchemaStore convention for the draft-07 meta-schema).Supersedes #5723.