From 4e0aabade7b34eb775eaa3012cba09874b5c5cc8 Mon Sep 17 00:00:00 2001 From: Mitesh Ashar Date: Tue, 3 Feb 2026 06:20:05 +0530 Subject: [PATCH 1/2] feat(claude-code-settings): sync to Claude Code v2.1.29 Add missing settings properties: - spinnerVerbs: customize action verbs in spinner messages (v2.1.23) - sandbox.network.allowAllUnixSockets: allow all Unix sockets in sandbox - sandbox.network.allowedDomains: domain allowlist for sandbox networking Add test coverage for previously untested settings: - allowManagedHooksOnly, alwaysThinkingEnabled, spinnerTipsEnabled - PostToolUseFailure and PermissionRequest hooks - Full sandbox configuration with all network options Co-Authored-By: Claude Opus 4.5 --- src/schemas/json/claude-code-settings.json | 33 ++++++++++++++ .../modern-complete-config.json | 43 +++++++++++++++++++ 2 files changed, 76 insertions(+) diff --git a/src/schemas/json/claude-code-settings.json b/src/schemas/json/claude-code-settings.json index 9957f96e8a8..d7ca7b952b2 100644 --- a/src/schemas/json/claude-code-settings.json +++ b/src/schemas/json/claude-code-settings.json @@ -807,6 +807,18 @@ }, "description": "Allow Unix domain sockets for local IPC (SSH agent, Docker, etc.). Provide an array of specific paths. Defaults to blocking if not specified" }, + "allowAllUnixSockets": { + "type": "boolean", + "description": "Allow all Unix socket connections in sandbox (default: false)", + "default": false + }, + "allowedDomains": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of domains to allow for outbound network traffic in sandbox. Supports wildcards (e.g., '*.example.com')" + }, "allowLocalBinding": { "type": "boolean", "description": "Allow binding to local network addresses (e.g., localhost ports). Defaults to false if not specified" @@ -868,6 +880,27 @@ "description": "Show tips in the spinner while Claude is working. Set to false to disable tips (default: true)", "default": true }, + "spinnerVerbs": { + "type": "object", + "description": "Customize the action verbs shown in the spinner and turn duration messages (e.g., 'Pondering', 'Crafting')", + "additionalProperties": false, + "properties": { + "mode": { + "type": "string", + "enum": ["replace", "append"], + "description": "Whether to replace default verbs or append to them", + "default": "append" + }, + "verbs": { + "type": "array", + "items": { + "type": "string", + "minLength": 1 + }, + "description": "Custom action verbs to use in spinner messages" + } + } + }, "terminalProgressBarEnabled": { "type": "boolean", "description": "Enable the terminal progress bar that shows progress in supported terminals like Windows Terminal and iTerm2 (default: true)", diff --git a/src/test/claude-code-settings/modern-complete-config.json b/src/test/claude-code-settings/modern-complete-config.json index 4caee0a228e..d3f824ab23c 100644 --- a/src/test/claude-code-settings/modern-complete-config.json +++ b/src/test/claude-code-settings/modern-complete-config.json @@ -1,5 +1,7 @@ { "$schema": "https://json.schemastore.org/claude-code-settings.json", + "allowManagedHooksOnly": false, + "alwaysThinkingEnabled": false, "apiKeyHelper": "/usr/local/bin/claude-auth-helper", "attribution": { "commit": "Generated with AI\n\nCo-Authored-By: AI ", @@ -21,6 +23,27 @@ }, "forceLoginMethod": "claudeai", "hooks": { + "PermissionRequest": [ + { + "hooks": [ + { + "command": "echo 'Permission requested' >> ~/.claude-code/permissions.log", + "type": "command" + } + ], + "matcher": "Bash" + } + ], + "PostToolUseFailure": [ + { + "hooks": [ + { + "command": "echo 'Tool failure' >> ~/.claude-code/errors.log", + "type": "command" + } + ] + } + ], "PreToolUse": [ { "hooks": [ @@ -74,6 +97,26 @@ }, "plansDirectory": "./plans", "respectGitignore": true, + "sandbox": { + "allowUnsandboxedCommands": false, + "autoAllowBashIfSandboxed": true, + "enableWeakerNestedSandbox": false, + "enabled": true, + "excludedCommands": ["docker", "git"], + "network": { + "allowAllUnixSockets": false, + "allowLocalBinding": true, + "allowUnixSockets": ["/var/run/docker.sock"], + "allowedDomains": ["github.com", "*.npmjs.org", "registry.yarnpkg.com"], + "httpProxyPort": 8080, + "socksProxyPort": 8081 + } + }, "showTurnDuration": true, + "spinnerTipsEnabled": true, + "spinnerVerbs": { + "mode": "append", + "verbs": ["Pondering", "Crafting", "Brewing"] + }, "terminalProgressBarEnabled": true } From 087152f789b08a9046385dbd9eb88856fda954e9 Mon Sep 17 00:00:00 2001 From: Mitesh Ashar Date: Fri, 6 Feb 2026 09:00:24 +0530 Subject: [PATCH 2/2] fix: remove duplicate keys from merge conflict Removed duplicate allowAllUnixSockets, allowedDomains, and spinnerVerbs keys that were introduced during merge. Kept upstream versions from PR #5332. Co-Authored-By: Claude Opus 4.6 --- src/schemas/json/claude-code-settings.json | 33 ---------------------- 1 file changed, 33 deletions(-) diff --git a/src/schemas/json/claude-code-settings.json b/src/schemas/json/claude-code-settings.json index 0b2296106e1..7bbec15a43e 100644 --- a/src/schemas/json/claude-code-settings.json +++ b/src/schemas/json/claude-code-settings.json @@ -847,18 +847,6 @@ }, "description": "Allow Unix domain sockets for local IPC (SSH agent, Docker, etc.). Provide an array of specific paths. Defaults to blocking if not specified" }, - "allowAllUnixSockets": { - "type": "boolean", - "description": "Allow all Unix socket connections in sandbox (default: false)", - "default": false - }, - "allowedDomains": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Array of domains to allow for outbound network traffic in sandbox. Supports wildcards (e.g., '*.example.com')" - }, "allowLocalBinding": { "type": "boolean", "description": "Allow binding to local network addresses (e.g., localhost ports). Defaults to false if not specified" @@ -962,27 +950,6 @@ "description": "Show tips in the spinner while Claude is working. Set to false to disable tips (default: true)", "default": true }, - "spinnerVerbs": { - "type": "object", - "description": "Customize the action verbs shown in the spinner and turn duration messages (e.g., 'Pondering', 'Crafting')", - "additionalProperties": false, - "properties": { - "mode": { - "type": "string", - "enum": ["replace", "append"], - "description": "Whether to replace default verbs or append to them", - "default": "append" - }, - "verbs": { - "type": "array", - "items": { - "type": "string", - "minLength": 1 - }, - "description": "Custom action verbs to use in spinner messages" - } - } - }, "terminalProgressBarEnabled": { "type": "boolean", "description": "Enable the terminal progress bar that shows progress in supported terminals like Windows Terminal and iTerm2 (default: true)",