Follow Discord
Sweep 22 Oct 2026 · 21:04Z Build v2.1.309 528 read Stable v2.1.308 Latest v2.1.309 Next v2.1.309 Feeds RSS JSON llms.txt llms-full.txt Unofficial
One change · claude-code

All settings changedsettings-reference

Nearest release: v2.1.251, published under an hour before this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

Recorded here
Lines+50added
Lines−0removed
From line 682 where the diff opens
First seen 21 Aug 2026 this site's first read of the page
Recorded edits149to this page, all time

### `modelPricing` #### Fields for `modelPricing` #### Which models a `modelPricing` row applies to

The whole hunk

from line 682, old and new numbered
/
lines

This page is larger than the 256 KiB this site keeps, so one side of the diff below stops where the stored text does.

from line 682
682682| [`model`](#model) | Change the [model](/docs/en/model-config#set-a-default-model-for-new-sessions) Claude Code starts with | Model and responses | Any file |
683683| [`modelOverrides`](#modeloverrides) | [Map model IDs](/docs/en/model-config#override-model-ids-per-version) to your provider's IDs, such as Bedrock ARNs | Model and responses | Any file |
684684| [`modelPicker`](#modelpicker) | Choose which models the [`/model` picker](/docs/en/model-config#available-models) lists, in your own order and with your own labels | Model and responses | User or managed |
685| [`modelPricing`](#modelpricing) | Report spend at your organization's contracted rates instead of list price | Model and responses | Managed |
685686| [`otelHeadersHelper`](#otelheadershelper) | Generate rotating [OpenTelemetry](/docs/en/monitoring-usage#dynamic-headers) headers with your own command | Authentication and providers | Any file |
686687| [`outputStyle`](#outputstyle) | Change Claude's role, tone, and output format with an [output style](/docs/en/output-styles) | Model and responses | Any file |
687688| [`parentSettingsBehavior`](#parentsettingsbehavior) | Apply or drop restrictions an [SDK or IDE host](/docs/en/managed-settings#let-an-embedding-host-add-policy) passes when you deploy [managed settings](/docs/en/managed-settings) | Enterprise and managed settings | Managed |
from line 1063
10621063 
10631064Claude Code drops a row it can't parse and keeps the rest. See [Fix a broken settings file](/docs/en/settings#fix-a-broken-settings-file).
10641065 
1066### `modelPricing`
1067 
1068Report spend at the rates your organization pays instead of list price. Set it when your organization has contracted rates, so the dollar figures developers see match your bill. Claude Code applies the rates in `/usage`, the [status line](/docs/en/statusline), the Agent SDK's `total_cost_usd`, the [`--max-budget-usd`](/docs/en/cli-reference) limit, and the [OpenTelemetry](/docs/en/monitoring-usage) cost metric and events. You supply the rates: Claude Code doesn't read them from your contract or the Claude Console. Requires Claude Code v2.1.242 or later.
1069 
1070* **Scope**: [`Managed`](#scopes). Deploy the key through server-managed settings, an MDM policy, a `managed-settings.json` file, or a [policy helper](/docs/en/managed-settings#compute-the-policy-with-a-helper-program). Claude Code ignores it in user, project, and local settings, in `--settings`, and on Windows in the user-writable [HKCU registry](/docs/en/managed-settings#where-each-mechanism-stores-the-policy). With server-managed settings, each session reports costs at list price until that session's [settings fetch](/docs/en/server-managed-settings#fetch-and-caching-behavior) has confirmed the setting. A host application that embeds Claude Code and sets [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/en/env-vars) can supply a table of its own through the SDK [`managedSettings`](/docs/en/agent-sdk/typescript#options) option, which Claude Code uses only when no managed source sets the key and only in Claude Code v2.1.246 or later.
1071* **Type**: object with an optional `multiplier` and an optional `overrides` map
1072* **Default**: unset, so Claude Code reports list price unless a host application supplies a table
1073 
1074This example sets contracted rates for Sonnet 4.6 and then reduces every figure, the Sonnet row included, by 15%. Set `multiplier` alone for a flat discount, `overrides` alone for per-model rates, or both:
1075 
1076```json managed-settings.json theme={null}
1077{
1078 "modelPricing": {
1079 "multiplier": 0.85,
1080 "overrides": {
1081 "claude-sonnet-4-6": {
1082 "input": 2.4,
1083 "output": 12,
1084 "cacheRead": 0.24,
1085 "cacheWrite": 3
1086 }
1087 }
1088 }
1089}
1090```
1091 
1092For the steps, including how to confirm the rates are in effect, see [Report spend at your contracted rates](/docs/en/costs#report-spend-at-your-contracted-rates).
1093 
1094<span id="modelpricing-multiplier" />
1095 
1096<span id="modelpricing-overrides" />
1097 
1098#### Fields for `modelPricing`
1099 
1100| Field | Type | What it does |
1101| :----------- | :------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
1102| `multiplier` | number greater than 0 and at most 1 | Scales every cost Claude Code computes, whether or not an `overrides` row covers it |
1103| `overrides` | map of model ID to a rate object with `input`, `output`, `cacheRead`, and `cacheWrite`, each 0 to 10000 | The USD-per-million-token rates for that model, all four required. `cacheWrite` covers both five-minute and one-hour cache writes. See [Which models a row applies to](#which-models-a-modelpricing-row-applies-to) |
1104 
1105Claude Code uses a row's rates exactly as you wrote them, without adding the fast-mode surcharge or the [US-only-inference rate](https://platform.claude.com/docs/en/about-claude/pricing). If you also set `multiplier`, Claude Code applies it on top of the row's rates. Claude Code drops a row with a rate it can't parse, or a `multiplier` it can't parse, and keeps the rest; see [Fix a broken settings file](/docs/en/settings#fix-a-broken-settings-file).
1106 
1107#### Which models a `modelPricing` row applies to
1108 
1109Claude Code decides which models a row applies to from the row's key:
1110 
1111* **A built-in model's ID**: a key Claude Code itself uses for a built-in model, whether that key is the model's own ID, such as `claude-sonnet-4-6`, or its Bedrock, Agent Platform, or Foundry ID. Claude Code applies the row to every dated snapshot ID and provider-specific ID of that model.
1112* **Any other key**: a key that isn't a built-in model's ID, such as a gateway model alias. Claude Code applies the row to that one ID only. When a model ID matches one of your keys exactly and also falls under a row keyed by a built-in model's ID, Claude Code uses the exact match.
1113* **A Bedrock application inference profile**: once Claude Code has resolved the profile to the model it routes to, through your [`modelOverrides`](#modeloverrides) map or the [`bedrock:GetInferenceProfile` lookup](/docs/en/amazon-bedrock#iam-configuration), Claude Code applies that model's row to the profile.
1114 
10651115### `outputStyle`
10661116 
10671117Select an [output style](/docs/en/output-styles) by name. An output style is a saved set of instructions that Claude Code adds to the system prompt to change Claude's role, tone, and output format, such as the built-in Explanatory and Learning styles or one you wrote yourself.
from line 3458
34083458 
34093459### `attribution`
34103460 
3411Customize the attribution Claude Code adds to git commits and pull requests. Commits get a [git trailer](https://git-scm.com/docs/git-interpret-trailers) such as `Co-Authored-By` by default; pull request descriptions get plain text. Set each part separately with the sub-keys below.
3412 
3413* **Scope**: [`Any file`](#scopes)
3414* **Type**: object with `commit` and `pr` strings and a `sessionUrl` Boolean
3415* **Default**: unset, so Claude Code uses the standard attribution shown under each sub-key
3416 
3417This example replaces the commit attribution, removes pull request attribution, and drops the session link:
3418 
3419```json settings.json theme={null}
3420{
3421 "attribution": {
3422 "commit": "Generated with AI\n\nCo-Authored-By: AI <[email protected]>",
3423 "pr": "",
3424 "sessionUrl": false
3425 }
3426}
3427```
3428 
3429To hide all attribution, set [`commit`](#attribution-commit) and [`pr`](#attribution-pr) to empty strings and [`sessionUrl`](#attribution-sessionurl) to `false`. Once you set `commit` or `pr`, Claude Code ignores the deprecated `includeCoAuthoredBy` setting and uses its default text for whichever of the two you left unset.
3430 
3431### `includeCoAuthoredBy`
3432 
3433<Warning>
3434 Deprecated since v2.0.62, when [`attribution`](#attribution) replaced it. Claude Code still reads it, but new configurations should set `attribution`.
3435</Warning>
3436 
3437Use [`attribution`](#attribution) instead, which replaces this key and lets you change or hide the commit trailer, the pull request text, and the session link separately. Claude Code still honors `includeCoAuthoredBy: false` from settings files that predate `attribution`, but ignores it once you set `attribution.commit` or `attribution.pr`.
3438 
3439* **Scope**: [`Any file`](#scopes)
3440* **Type**: Boolean
3441 * `true`: the same as unset; Claude Code adds the commit trailer and the pull request attribution text
3442 * `false`: Claude Code omits both the commit trailer and the pull request attribution text, unless `attribution` sets `commit` or `pr`, in which case the [`attribution`](#attribution) rules apply
3443* **Default**: `true`
3444 
3445```json settings.json theme={null}
3446{
3447 "includeCoAuthoredBy": false
3448}
3449```
3450 
3451To hide all attribution today, set [`attribution.commit`](#attribution-commit) and [`attribution.pr`](#attribution-pr) to empty strings and [`attribution.sessionUrl`](#attribution-sessionurl) to `false`.
3452 
3453### `includeGitInstructions`
3454 
3455At session start, Claude Code adds two git-related pieces to Claude's prompt: its built-in instructions for how to write commits and pull requests, in the Bash tool's description, and a git status snapshot of your repository in the system prompt, meaning the current branch, the main branch, `git status` output, and recent commits. Set this key to `false` to leave both out, for example when you use your own git workflow skills.
3456 
3457* **Scope**: [`Any file`](#scopes)
3458* **Type**: Boolean
3459 * `true`: Claude Code includes its built-in commit and pull request workflow instructions and the git status snapshot. Cloud sessions never include the snapshot
3460 * `false`: Claude Code leaves both out
3461* **Default**: `true`
3462* **Per-session overrides**: [`CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS`](/docs/en/env-vars) takes precedence over this key for one session
3463 
3464```json settings.json theme={null}
3465{
3466 "includeGitInstructions": false
3467}
3468```
3469 
3470### `prUrlTemplate`
3471 
3472Point the PR links Claude Code renders, in the footer badge and in tool-result summaries, at an internal code-review tool instead of `github.com`. Claude Code substitutes `{host}`, `{owner}`, `{repo}`, `{number}`, and `{url}` from the `gh`-reported PR URL. The [GitLab merge request badge](/docs/en/interactive-mode#gitlab-merge-requests) keeps its GitLab URL.
3473 
3474* **Scope**: [`Any file`](#scopes)
3475* **Type**: string, a URL template using any of the five placeholders
3476* **Default**: unset, so links use the `gh`-reported URL
3477 
3478```json settings.json theme={null}
3479{
3480 "prUrlTemplate": "https://reviews.example.com/{owner}/{repo}/pull/{number}"
3481}
3482```
3483 
3484Claude Code applies the template only to the links it renders itself; a PR number Claude writes in a message, such as `#123`, stays as Claude wrote it. A URL that doesn't have the `/pull/<number>` shape is left unchanged.
3485 
3486### `attribution.commit`
3487 
3488Set the attribution text Claude Code adds to git commits, including any trailers. Set it to an empty string to hide commit attribution.
3489 
3490* **Scope**: [`Any file`](#scopes)
3491* **Type**: string
3492* **Default**: unset, so Claude Code adds `Co-Authored-By: <model name> <[email protected]>`, where the model name reflects the active model for the session, such as `Claude Sonnet 5`, or `Claude` alone when the session's model isn't a public model
3493 
3494This example replaces the default trailer with a custom line and a custom `Co-Authored-By` trailer:
3495 
3496```json settings.json theme={null}
3497{
3498 "attribution": {
3499 "commit": "Generated with AI\n\nCo-Authored-By: AI <[email protected]>"
3500 }
3501}
3502```
3503 
3504### `attribution.pr`
3505 
3506Set the attribution text Claude Code adds to pull request descriptions. Set it to an empty string to hide pull request attribution.
3507 
3508* **Scope**: [`Any file`](#scopes)
3509* **Type**: string
3510* **Default**: unset, so Claude Code adds `🤖 Generated with [Claude Code](https://claude.com/claude-code)`
3511 
3512```json settings.json theme={null}
3513{
3514 "attribution": {
3515 "pr": ""
3516 }
3517}
3518```
3519 
3520### `attribution.sessionUrl`
3521 
3522Choose whether Claude Code appends the claude.ai session link when it commits or opens a pull request from a [cloud](/docs/en/claude-code-on-the-web) or [Remote Control](/docs/en/remote-control) session. Claude Code adds the link as a `Claude-Session` trailer on commits and as a link in pull request descriptions. Set it to `false` to omit the link.
3523 
3524* **Scope**
3461Customize the attri
Feedback