From 518ae09325973dcae570b45c8af14e9252c5c2a6 Mon Sep 17 00:00:00 2001 From: Shayan Rais Date: Thu, 12 Mar 2026 13:09:15 +0500 Subject: [PATCH] =?UTF-8?q?Update=20settings=20report=20to=20v2.1.74=20?= =?UTF-8?q?=E2=80=94=20fix=20critical=20dontAsk=20description,=20add=20new?= =?UTF-8?q?=20settings=20and=20env=20vars?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Key changes: - Fix dontAsk permission mode description (was incorrectly described as auto-accept, actually auto-denies unless pre-approved) - Add modelOverrides, allow_remote_sessions, autoMemoryDirectory settings - Fix $schema URL (www.schemastore.org → json.schemastore.org) - Fix ANTHROPIC_CUSTOM_HEADERS format description - Add 6 missing environment variables - Mark askEdits/viewOnly as unverified permission modes - Update badges and changelog entries for settings, subagents, and concepts workflows Co-Authored-By: Claude --- README.md | 2 +- best-practice/claude-settings.md | 52 +++++++++++++++---- best-practice/claude-subagents.md | 2 +- .../claude-settings/changelog.md | 18 +++++++ .../claude-subagents/changelog.md | 6 +++ changelog/best-practice/concepts/changelog.md | 12 +++++ 6 files changed, 79 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 107627a..d56149c 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # claude-code-best-practice practice makes claude perfect -![Last Updated](https://img.shields.io/badge/Last_Updated-Mar%2011%2C%202026-white?style=flat&labelColor=555) GitHub Stars +![Last Updated](https://img.shields.io/badge/Last_Updated-Mar%2012%2C%202026%2012%3A22%20PM%20PKT-white?style=flat&labelColor=555) GitHub Stars [![Best Practice](!/tags/best-practice.svg)](best-practice/) *Click on this badge to show the latest best practice*
[![Implemented](!/tags/implemented.svg)](implementation/) *Click on this badge to show implementation in this repo*
diff --git a/best-practice/claude-settings.md b/best-practice/claude-settings.md index 6743d24..c0d716c 100644 --- a/best-practice/claude-settings.md +++ b/best-practice/claude-settings.md @@ -1,8 +1,8 @@ # Claude Code Settings Reference -![Last Updated](https://img.shields.io/badge/Last_Updated-Mar%2007%2C%202026%202%3A31%20PM%20PKT-white?style=flat&labelColor=555) ![Version](https://img.shields.io/badge/Claude_Code-v2.1.71-blue?style=flat&labelColor=555) +![Last Updated](https://img.shields.io/badge/Last_Updated-Mar%2012%2C%202026%2012%3A23%20PM%20PKT-white?style=flat&labelColor=555) ![Version](https://img.shields.io/badge/Claude_Code-v2.1.74-blue?style=flat&labelColor=555) -A comprehensive guide to all available configuration options in Claude Code's `settings.json` files. As of v2.1.71, Claude Code exposes **55+ settings** and **140+ environment variables** (use the `"env"` field in `settings.json` to avoid wrapper scripts). +A comprehensive guide to all available configuration options in Claude Code's `settings.json` files. As of v2.1.74, Claude Code exposes **55+ settings** and **140+ environment variables** (use the `"env"` field in `settings.json` to avoid wrapper scripts). @@ -55,7 +55,7 @@ Claude Code settings use a 5-level user-writable override chain plus an enforced | Key | Type | Default | Description | |-----|------|---------|-------------| -| `$schema` | string | - | JSON Schema URL for IDE validation and autocompletion (e.g., `"https://www.schemastore.org/claude-code-settings.json"`) | +| `$schema` | string | - | JSON Schema URL for IDE validation and autocompletion (e.g., `"https://json.schemastore.org/claude-code-settings.json"`) | | `model` | string | `"default"` | Override default model. Accepts aliases (`sonnet`, `opus`, `haiku`) or full model IDs | | `agent` | string | - | Set the default agent for the main conversation. Value is the agent name from `.claude/agents/`. Also available via `--agent` CLI flag | | `language` | string | `"english"` | Claude's preferred response language | @@ -80,13 +80,14 @@ Claude Code settings use a 5-level user-writable override chain plus an enforced } ``` -### Plans Directory +### Plans & Memory Directories -Store plan files in a custom location relative to project root. +Store plan and auto-memory files in custom locations. | Key | Type | Default | Description | |-----|------|---------|-------------| | `plansDirectory` | string | `~/.claude/plans` | Directory where `/plan` outputs are stored | +| `autoMemoryDirectory` | string | - | Custom directory for auto-memory storage. Overrides the default memory location | **Example:** ```json @@ -189,6 +190,7 @@ Control what tools and operations Claude can perform. | `permissions.defaultMode` | string | Default permission mode | | `permissions.disableBypassPermissionsMode` | string | Prevent bypass mode activation | | `allowManagedPermissionRulesOnly` | boolean | **(Managed only)** Only managed permission rules apply; user/project `allow`, `ask`, `deny` rules are ignored | +| `allow_remote_sessions` | boolean | **(Managed only)** Allow users to start Remote Control and web sessions. Defaults to `true`. Set to `false` to prevent remote session access | ### Permission Modes @@ -196,9 +198,9 @@ Control what tools and operations Claude can perform. |------|----------| | `"default"` | Standard permission checking with prompts | | `"acceptEdits"` | Auto-accept file edits without asking | -| `"askEdits"` | Ask before every operation | -| `"dontAsk"` | Auto-accept all tools without prompting (equivalent to `bypassPermissions` but via settings) | -| `"viewOnly"` | Read-only mode, no modifications | +| `"askEdits"` | Ask before every operation *(not in official docs — unverified)* | +| `"dontAsk"` | Auto-denies tools unless pre-approved via `/permissions` or `permissions.allow` rules | +| `"viewOnly"` | Read-only mode, no modifications *(not in official docs — unverified)* | | `"bypassPermissions"` | Skip all permission checks (dangerous) | | `"plan"` | Read-only exploration mode | @@ -407,6 +409,24 @@ Configure Claude Code plugins and marketplaces. } ``` +### Model Overrides + +Map Anthropic model IDs to provider-specific model IDs for Bedrock, Vertex, or Foundry deployments. + +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| `modelOverrides` | object | - | Map model picker entries to provider-specific IDs (e.g., Bedrock inference profile ARNs). Each key is a model picker entry name, each value is the provider model ID | + +**Example:** +```json +{ + "modelOverrides": { + "claude-opus-4-6": "arn:aws:bedrock:us-east-1:123456789:inference-profile/anthropic.claude-opus-4-6-v1:0", + "claude-sonnet-4-6": "arn:aws:bedrock:us-east-1:123456789:inference-profile/anthropic.claude-sonnet-4-6-v1:0" + } +} +``` + ### Effort Level The `/model` command exposes an **effort level** control that adjusts how much reasoning the model applies per response. Use the ← → arrow keys in the `/model` UI to cycle through effort levels. @@ -614,7 +634,7 @@ Set environment variables for all Claude Code sessions. | `CLAUDE_CODE_USER_EMAIL` | Provide user email synchronously for authentication | | `CLAUDE_CODE_ORGANIZATION_UUID` | Provide organization UUID synchronously for authentication | | `CLAUDE_CONFIG_DIR` | Custom config directory (overrides default `~/.claude`) | -| `ANTHROPIC_CUSTOM_HEADERS` | Custom headers for API requests (JSON string) | +| `ANTHROPIC_CUSTOM_HEADERS` | Custom headers for API requests (`Name: Value` format, newline-separated for multiple headers) | | `ANTHROPIC_FOUNDRY_API_KEY` | API key for Microsoft Foundry authentication | | `ANTHROPIC_FOUNDRY_BASE_URL` | Base URL for Foundry resource | | `ANTHROPIC_FOUNDRY_RESOURCE` | Foundry resource name | @@ -638,6 +658,12 @@ Set environment variables for all Claude Code sessions. | `DISABLE_BUG_COMMAND` | Disable the `/bug` command | | `DISABLE_NON_ESSENTIAL_MODEL_CALLS` | Disable flavor text and non-essential model calls | | `DISABLE_COST_WARNINGS` | Disable cost warning messages | +| `CLAUDE_CODE_SUBAGENT_MODEL` | Override model for subagents (e.g., `haiku`, `sonnet`) | +| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | SessionEnd hook timeout in ms (replaces hard 1.5s limit) | +| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | Disable feedback survey prompts (`1` to disable) | +| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Disable terminal title updates (`1` to disable) | +| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Skip automatic IDE extension installation (`1` to skip) | +| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | Debounce interval in ms for OTel headers helper script | --- @@ -664,7 +690,7 @@ Set environment variables for all Claude Code sessions. ```json { - "$schema": "https://www.schemastore.org/claude-code-settings.json", + "$schema": "https://json.schemastore.org/claude-code-settings.json", "model": "sonnet", "agent": "code-reviewer", "language": "english", @@ -674,6 +700,10 @@ Set environment variables for all Claude Code sessions. "includeGitInstructions": true, "plansDirectory": "./plans", + "modelOverrides": { + "claude-opus-4-6": "arn:aws:bedrock:us-east-1:123456789:inference-profile/anthropic.claude-opus-4-6-v1:0" + }, + "permissions": { "allow": [ "Edit(*)", @@ -733,7 +763,7 @@ Set environment variables for all Claude Code sessions. ## Sources - [Claude Code Settings Documentation](https://code.claude.com/docs/en/settings) -- [Claude Code Settings JSON Schema](https://www.schemastore.org/claude-code-settings.json) +- [Claude Code Settings JSON Schema](https://json.schemastore.org/claude-code-settings.json) - [Claude Code Configuration Guide](https://claudelog.com/configuration/) - [Claude Code GitHub Settings Examples](https://github.com/feiskyer/claude-code-settings) - [Eesel AI - Developer's Guide to settings.json](https://www.eesel.ai/blog/settings-json-claude-code) diff --git a/best-practice/claude-subagents.md b/best-practice/claude-subagents.md index 4eb2e3f..89c6ae3 100644 --- a/best-practice/claude-subagents.md +++ b/best-practice/claude-subagents.md @@ -1,6 +1,6 @@ # Sub-agents Best Practice -![Last Updated](https://img.shields.io/badge/Last_Updated-Mar%2007%2C%202026%203%3A14%20PM%20PKT-white?style=flat&labelColor=555)
+![Last Updated](https://img.shields.io/badge/Last_Updated-Mar%2012%2C%202026%2012%3A17%20PM%20PKT-white?style=flat&labelColor=555)
[![Implemented](https://img.shields.io/badge/Implemented-2ea44f?style=flat)](../implementation/claude-subagents-implementation.md) Claude Code subagents — frontmatter fields and official built-in agent types. diff --git a/changelog/best-practice/claude-settings/changelog.md b/changelog/best-practice/claude-settings/changelog.md index 32371a2..680f318 100644 --- a/changelog/best-practice/claude-settings/changelog.md +++ b/changelog/best-practice/claude-settings/changelog.md @@ -44,3 +44,21 @@ | 8 | MED | Version Badge | Update report version from v2.1.69 to v2.1.71 | COMPLETE (badge and header updated) | | 9 | LOW | Suspect Keys | Verify `skipWebFetchPreflight`, `sandbox.ignoreViolations`, `sandbox.network.deniedDomains`, `skippedMarketplaces`, `skippedPlugins`, `pluginConfigs` | ON HOLD (kept in report pending verification — recurring from 2026-03-05) | | 10 | LOW | CLAUDE.md Sync | Update CLAUDE.md configuration hierarchy (3 levels → 5+) | COMPLETE (updated to 5-level hierarchy with managed layer) | + +--- + +## [2026-03-12 12:23 PM PKT] Claude Code v2.1.74 + +| # | Priority | Type | Action | Status | +|---|----------|------|--------|--------| +| 1 | HIGH | Changed Behavior | Fix `dontAsk` permission mode description: "Auto-accept all tools" → "Auto-denies tools unless pre-approved via `/permissions` or `permissions.allow` rules" | COMPLETE (description corrected per official permissions docs) | +| 2 | HIGH | New Setting | Add `modelOverrides` to Model Configuration section (object, maps Anthropic model IDs to provider-specific IDs like Bedrock ARNs) | COMPLETE (added with example and description) | +| 3 | HIGH | New Setting | Add `allow_remote_sessions` to managed-only settings list (boolean, defaults `true`, controls Remote Control/web session access) | COMPLETE (added to Permission Keys table) | +| 4 | HIGH | Changed Default | Fix `$schema` URL from `https://www.schemastore.org/...` to `https://json.schemastore.org/...` per official docs | COMPLETE (updated in description, example, and Sources) | +| 5 | MED | Changed Description | Fix `ANTHROPIC_CUSTOM_HEADERS` format description from "JSON string" to "Name: Value format, newline-separated" | COMPLETE (description updated per official docs) | +| 6 | MED | Unverified Modes | `askEdits` and `viewOnly` permission modes not in official docs — only 5 modes documented (default, acceptEdits, plan, dontAsk, bypassPermissions) | COMPLETE (marked as "not in official docs — unverified" in table) | +| 7 | MED | Missing Env Vars | Add `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS`, `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY`, `CLAUDE_CODE_DISABLE_TERMINAL_TITLE`, `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`, `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | COMPLETE (added 5 env vars plus `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS`) | +| 8 | MED | New Setting | Add `autoMemoryDirectory` to Core Configuration (string, custom auto-memory directory) — version uncertain (agents disagree: v2.1.68 vs v2.1.74), not on settings page | COMPLETE (added near plansDirectory — version unresolved) | +| 9 | LOW | Suspect Keys | Verify `skipWebFetchPreflight`, `sandbox.ignoreViolations`, `sandbox.network.deniedDomains`, `skippedMarketplaces`, `skippedPlugins`, `pluginConfigs` — still not in official docs | ON HOLD (kept in report pending verification — recurring from 2026-03-05) | +| 10 | LOW | Missing Env Var | Add `CLAUDE_CODE_SUBAGENT_MODEL` to env vars table (already in Model env example block but missing from table) | COMPLETE (added to env vars table) | +| 11 | LOW | Example Update | Update Quick Reference example to include `modelOverrides` and corrected `$schema` URL | COMPLETE (example updated with both) | diff --git a/changelog/best-practice/claude-subagents/changelog.md b/changelog/best-practice/claude-subagents/changelog.md index 1d2190e..eccfc98 100644 --- a/changelog/best-practice/claude-subagents/changelog.md +++ b/changelog/best-practice/claude-subagents/changelog.md @@ -38,3 +38,9 @@ | 11 | MED | Invocation | Add `--agent ` CLI flag to invocation methods table | COMPLETE (added as first row in invocation methods table) | | 12 | MED | Changed Behavior | Update line 147 text: "Task tool" → "Agent tool" in Official Claude Agents table header | COMPLETE (user rewrote header text) | | 13 | MED | Cross-File | Update CLAUDE.md: `Task(...)` → `Agent(...)` references (lines 50-53, 61) | COMPLETE (updated orchestration section and tools field description) | + +--- + +## [2026-03-12 12:17 PM PKT] Claude Code v2.1.74 + +No drift detected — report is fully in sync with official docs. All 13 frontmatter fields and 6 built-in agents match. diff --git a/changelog/best-practice/concepts/changelog.md b/changelog/best-practice/concepts/changelog.md index 189715b..4f75227 100644 --- a/changelog/best-practice/concepts/changelog.md +++ b/changelog/best-practice/concepts/changelog.md @@ -72,3 +72,15 @@ Tracks drift between the README CONCEPTS table and official Claude Code document | 6 | HIGH | Missing Concept | Add Code Review row to Hot table — multi-agent PR analysis (research preview, Teams & Enterprise) | COMPLETE (row added as first Hot entry with blog link and best practice tweet) | | 7 | MED | New Badge | Create `!/tags/beta.svg` tag (yellow, 38x20px) and add to Code Review and Agent Teams in Hot table | COMPLETE (beta.svg created; added to Code Review and Agent Teams rows) | | 8 | MED | Reorder | Sort Hot table by release date (most recent first): Code Review → Scheduled Tasks → Voice Mode → Agent Teams → Remote Control → Git Worktrees → Ralph Wiggum | COMPLETE (Voice Mode and Agent Teams swapped to match chronological order) | + +--- + +## [2026-03-12 12:22 PM PKT] Claude Code v2.1.74 + +| # | Priority | Type | Action | Status | +|---|----------|------|--------|--------| +| 1 | HIGH | Broken URL | Fix Commands URL from `/slash-commands` to `/skills` in CONCEPTS table (line 24) — `/slash-commands` redirects to `/skills` page | INVALID (RECURRING from 2026-03-10; URL still resolves; user chose to keep as-is) | +| 2 | LOW | Verification | All external docs URLs validated — no broken links found | COMPLETE (all 20+ URLs return valid pages) | +| 3 | LOW | Verification | All local badge file paths validated — no missing files | COMPLETE (all badge targets exist on filesystem) | +| 4 | LOW | Verification | Memory anchor `#organize-rules-with-clauderules` validated on target page | COMPLETE (heading exists on /memory page) | +| 5 | LOW | Verification | All CONCEPTS descriptions checked against official docs | COMPLETE (no description drift detected) |