Skip to content

Claude Code reference - versions, channels, and upgrades

The Claude Code reference section covers what changes under a working setup: which version and release channel is installed, what each release removed or changed, how to upgrade safely, and which features are still previews. On 2026-09-26 the latest channel is 2.1.283 and stable is 2.1.274, and the two channels give different default models.

This hub is for the developer who owns their own install and the tech lead who owns the team’s .claude/settings.json and CI jobs. A teammate on the same Pro plan says every session now opens on Claude Opus 5.5. Yours opens on Sonnet 5, and neither of you changed a setting. You are on different channels, and nothing told you.

What this Claude Code reference section gives you

Section titled “What this Claude Code reference section gives you”
  • A two-minute check of your version, channel, and default model
  • A map from the question you have to the reference page that answers it
  • Two copy-paste prompts that turn release notes into a list of what affects your repository
  • A short smoke test that proves an update did not break auth, model access, or JSON output

Which Claude Code version and channel are you running?

Section titled “Which Claude Code version and channel are you running?”

Run these checks before you debug a missing command or a changed default.

  1. Print the installed version in a terminal:

    Terminal window
    claude --version
  2. Compare it with what each channel currently offers:

    Terminal window
    npm view @anthropic-ai/claude-code dist-tags

    On 2026-09-26 this prints stable: '2.1.274' and latest: '2.1.283'.

  3. Check the installation without starting a session:

    Terminal window
    claude doctor

    claude doctor also reads the settings files in the current directory. Inside a session, /doctor runs a fuller checkup that can fix issues.

  4. In a session, run /model to see the model you actually get. Run /release-notes to open the version picker for release notes.

latest channelstable channel
Version on 2026-09-262.1.2832.1.274, “typically about a week behind” latest per Anthropic’s setup guide, and it skips releases with major regressions
You are on it whenyou used the native installer or npm with defaults, or Homebrew cask claude-code@latestyou set autoUpdatesChannel: "stable", installed with bash -s stable, or use Homebrew cask claude-code
Default modelClaude Opus 5.5 on every paid plan and the API (needs 2.1.280 or later)the pre-2.1.280 defaults: Sonnet 5 on Pro and Team Standard, Opus 5 elsewhere
Starting permission mode, interactive sessionsauto on every plan and provider (needs 2.1.283), unless the model does not support itauto on Pro, Max and Team; Manual elsewhere

claude -p starts in Manual on both channels. The per-plan and per-provider defaults, prices, and aliases live on the models hub; Microsoft Foundry differs from both columns.

Which reference page answers your question?

Section titled “Which reference page answers your question?”
Your questionPage
What changed in version X, and what did it break?Claude Code version history
How do I upgrade one repository’s CI safely, or pin a team to one version?Claude Code version history, sections on CI upgrades and team pinning
How do I roll an upgrade out to a fleet, and roll it back?Claude Code upgrade procedures
Is this feature a research preview, beta, or experimental, and how do I turn it off?Beta features and research previews
Which command or settings key does what, across tools?Command reference and configuration reference

Both prompts ask for a file and line or a quoted changelog entry behind every finding, so you check each claim against its source instead of trusting the summary.

How do you prove an update did not break your setup?

Section titled “How do you prove an update did not break your setup?”

You do not need to read the agent’s transcript. After any version change, run a bounded smoke test whose pass signal is one word:

Terminal window
claude doctor
claude -p --output-format json --max-budget-usd 0.50 "Reply with the single word OK." | jq -r '.result'

The second command (needs jq; without it, check that the JSON’s result field is OK) proves authentication, model access, and JSON output in one call, and cannot spend more than $0.50. Then trigger one hook on a fixture file and check its side effect, and re-run one automation that uses --output-format json against a known input: same keys, same verdict. In CI, the engineer who owns the pipeline config approves the version bump only after these pass. The full seven-step routine is in the version history’s upgrade section.

What goes wrong with Claude Code versions, and how do you recover?

Section titled “What goes wrong with Claude Code versions, and how do you recover?”
  • A shared command is “unknown”. Your build predates it, or you are on stable. Run claude update, or claude install latest for the newest build, and set autoUpdatesChannel: "latest" so auto-updates follow it. claude install 2.1.283 installs an exact version.
  • Homebrew never updates. Neither cask auto-updates by default. Run brew upgrade --cask claude-code (or claude-code@latest, whichever you installed).
  • Background sessions misbehave after an update. They keep running the old binary. Run claude respawn --all so they pick up the current version.
  • CI results shifted with no commit. The default model moved to Opus 5.5 in 2.1.280 on latest. Pin the exact Claude Code version and pass --model in every CI invocation, then re-run your evals before you move either pin.
  • A pinned machine updated anyway. DISABLE_AUTOUPDATER=1 stops only the background check, so a person can still run claude update. DISABLE_UPDATES also blocks claude update and claude install; use it only when your own channel distributes Claude Code.

Checked against Claude Code 2.1.283 (claude --help, claude doctor --help, claude install --help, claude respawn --help) on 2026-09-26.

Where to go next with Claude Code versions

Section titled “Where to go next with Claude Code versions”

For errors that are not version-related, see Claude Code troubleshooting. The sibling reference sections for the other tools are Codex reference and Cursor reference.