claude-code

2.1.248

49 changes. The official documentation describes this.

fixed
31
added
7
improved
5
changed
5
unparsed
1

1 entry not classified

The extractor could not classify this entry from the vendor’s own leading verb, so it is retained verbatim rather than guessed into a category. An unknown shape fails closed here; assuming it would put a wrong fact into a reference nobody could then correct.

[VSCode] Fixed a chat tab getting stuck on "No conversation found" when its session was never saved; it now starts a new conversation instead

All 49 changes

Every entry in the release, in source order. A release page that showed only the interesting ones would be a summary, and a summary is what this site exists to replace.

  1. addedmentions: bypassPermissions, settings, restricted

    Added `--restricted` (or `CLAUDE_CODE_RESTRICTED=1`): removes the built-in tools that run commands or code and `WebFetch` (unless named in `--tools`), keeps file tools inside the working directory, refuses `bypassPermissions`, and ignores user, project and local settings files

  2. added

    Added `experimental.cacheTtl` (`"5m"` or `"1h"`) to agent frontmatter: a per-agent prompt cache TTL used when no subagent TTL setting is configured

  3. added

    Added `claude self-hosted-runner --client-label <label>` (or `SELF_HOSTED_RUNNER_CLIENT_LABEL`) to override the label the runner registers with (default: hostname)

  4. addedmentions: settings, managed settings

    Added server-managed settings diagnostics: a startup warning when the settings fail to load, and a `/doctor` and `/status` line explaining a load failure or why they weren't fetched (Bedrock/Vertex/third-party provider, custom `ANTHROPIC_BASE_URL`)

  5. addedmentions: token

    Added a warning in `/web-setup` when the GitHub CLI token lacks the `workflow` scope, since pushes to very large repositories can be rejected without it

  6. added

    Added `/usage-credits` for Enterprise organizations billed through AWS Marketplace, self-serve Enterprise, and Enterprise trials, so members can request a higher usage limit from their admin

  7. added

    Added cross-session messaging (`SendMessage` / `ListAgents`) between sessions on the same machine on Bedrock, Vertex, and Foundry, and when telemetry is disabled

  8. fixedmentions: token, OAuth

    Fixed a prompt-cache miss (and lost extended-thinking context) roughly once an hour in long sessions, caused by tool definitions being re-rendered after an OAuth token refresh

  9. fixed

    Fixed the `ScheduleWakeup` tool definition changing between a session and its `--resume` when the account had entered usage overage, causing a full prompt-cache miss on the resumed session's first turn

  10. fixed

    Fixed Claude Desktop and Cowork sessions disappearing after 30 days: the transcript cleanup now keeps desktop-written sessions while they are in the app (unless org policy manages retention); the new `desktopSessionCleanupPeriodDays` setting caps the exemption

  11. fixedmentions: token

    Fixed being sent to the login screen when another Claude Code process held the token refresh lock while the session token had expired; the request now fails with a retryable error instead

  12. fixedWindows

    Windows: Fixed the `claude agents` list not responding to the keyboard after detaching from a session, or when launched in a terminal tab left in win32-input-mode

  13. fixedmentions: OAuth

    Fixed the recommended Console sign-in in `/login` failing with an OAuth error before showing a sign-in URL on machines where it can't be used (for example when `ANTHROPIC_API_KEY` or an API key helper is set); it now falls back to the API-key sign-in

  14. fixed

    Fixed model names in `/model` and fast-mode switch notices to render as code, so suffixes like `[1m]` display literally instead of as a link

  15. fixedmentions: trust

    Fixed `claude agents` skipping the workspace trust prompt when the `CI` environment variable is set

  16. fixed

    Fixed `claude agents` crashing on launch when the PR-status cache held a malformed entry

  17. fixed

    Fixed agent view resurrecting a weeks-old background session after the machine was off: such a session now shows as stopped at its real end, and opening it asks before resuming its saved conversation

  18. fixed

    Fixed agent view sometimes opening an older conversation, and dropping the typed prompt, when starting a new session

  19. fixed

    Fixed `claude agents`: opening a stopped session that you already resumed in another terminal no longer starts a second process on that conversation; the row now says it is open in a terminal

  20. fixed

    Fixed `claude agents` and `claude rm` refusing to delete a session ("has commits that are not pushed anywhere") when its worktree branch was already merged into your checked-out default branch (e.g. local `main`) but not yet pushed

  21. fixedmentions: hook

    Fixed background sessions waiting silently when a `PermissionRequest` or `PreToolUse` hook prints an invalid answer: the `claude agents` row now names the hook and the schema error

  22. fixedmentions: hook

    Fixed hooks silently treating a stdout `{…}` object that isn't valid JSON as plain text; it's now reported as a hook error with the parse message

  23. fixed

    Fixed `/mcp` listing a project `.mcp.json` entry that declares the claude.ai connector type under the trusted "claude.ai" heading; it now appears under its real scope

  24. fixedmentions: OAuth

    Fixed MCP servers whose `headersHelper` supplies the `Authorization` header falling into OAuth discovery on a 401 instead of re-running the helper and retrying the call as documented

  25. fixedmentions: settings

    Fixed `/login` to a Claude apps gateway hanging when the managed-settings security approval dialog was required

  26. fixedmentions: credential

    Fixed gateway model discovery (`CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY`) never running when `apiKeyHelper` is the only credential

  27. fixed

    Fixed `claude logs` leaving mouse tracking, bracketed paste and the alternate screen switched on in the terminal it was run from

  28. fixedmentions: permission, trust

    Fixed the trust dialog's list of repo permission rules showing a garbled character when a long rule was cut off in the middle of an emoji

  29. fixedmentions: permission

    Fixed the permission mode indicator staying hidden behind the "Press Ctrl-C again to exit" hint when you press shift+tab right after ctrl+c

  30. fixedmentions: credential, env

    Fixed `/ultrareview` and locally seeded cloud sessions uploading uncommitted edits to `prod.env`-style and `*.tfvars` files, or to editor swap, temp, and backup copies of credential files (e.g. `key.pem.tmp`, `id_rsa.swo`); they now stay on your machine

  31. fixedmentions: permission

    Fixed Remote Control sessions occasionally never showing a permission prompt or the latest messages on the connected device after the CLI silently reconnected

  32. fixed

    Fixed cloud sessions occasionally failing at startup when the container's session credentials were not yet readable

  33. fixed

    Fixed `claude remote-control` rejecting its own flags (e.g. `--spawn`, `--name`) when a global flag or a wrapper-injected option precedes the subcommand

  34. fixed

    Fixed startup warnings (e.g. "N MCP servers need authentication") rendering one column right of the rest of the transcript

  35. fixed

    Fixed a backgrounded worktree session losing its checkout: the background session now holds the worktree's lock while it runs, so cleanup and `git worktree remove` leave it alone

  36. fixed

    Fixed @-mentions of other sessions not matching names typed with non-Latin characters (for example Korean entered through an IME)

  37. fixedmentions: settings, managed settings

    Fixed an invalid `crossSessionInbound` value being silently ignored: it now warns and holds cross-session messages (user settings) or refuses them (managed settings) until fixed

  38. fixed

    Fixed rate-limit, usage, and fast-mode messages telling you to run `/usage-credits` when that command isn't available for your organization (e.g. hidden with `DISABLE_EXTRA_USAGE_COMMAND`)

  39. unparsed

    [VSCode] Fixed a chat tab getting stuck on "No conversation found" when its session was never saved; it now starts a new conversation instead

  40. improved

    Improved the Workflow tool's prompt footprint: its description is now about 1k tokens instead of 5.7k, with the script-writing reference moved into a bundled `workflow-authoring` skill

  41. improved

    Improved the prompt-footer PR badge to check GitHub less often while the pull request is unchanged; a push or a `gh pr` command still refreshes it right away

  42. improvedmentions: settings, env, managed settings

    Improved managed settings: client-side timeout, MCP startup-mode, and stream-watchdog env vars no longer trigger the settings-approval prompt

  43. improved

    Improved `/ultrareview <PR#>` to check before launch that the GitHub account connected to your Claude account can access the repository, and to explain how to fix it, instead of failing after the cloud session starts

  44. improved

    Improved cross-session messaging: falls back to a private per-user `/tmp` directory when the default one can't be used, and the notice and `/status` name the directory to fix

  45. changed

    Changed shift+enter in the agent view dispatch input to insert a newline (matching the prompt); ctrl+enter now dispatches and attaches

  46. changed

    Changed `/loop`: self-paced dynamic mode and the no-prompt autonomous default are now always available, including on Bedrock/Vertex/Foundry

  47. changed

    Changed Anthropic telemetry export failures to log at debug level as `[Anthropic telemetry]` instead of `[3P telemetry] OTEL diag error`, so they are not mistaken for your OTel collector failing

  48. changedmentions: trust

    Changed cross-session messaging in Linux user namespaces: root-equivalent trust for unmapped owners is limited to canonical system directories

  49. changed

    Changed `SendMessage` from a subagent to another session: the result now notes that any reply is delivered to the parent session's conversation, not to the subagent

Evidence

Level:
documented
Retrieved:
2026-08-28T00:00:00Z
Section sha256:
f5d6cbf1a42a6a7b13c25171bdf5c81ba7aacb87cfcee600c18ca11241824928