Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial

/code

slash never mined JSON

A Claude Code slash command, read out of the shipped bundle. No mined inventory carries it: everything below comes from what this site has written about it.

Registering a repo root now accepts launch-time --add-dir roots and clearly rejects duplicates or bad paths.

Not Anthropic's. This is the line from the earliest changelog entry here that named it, v2.1.219.

First seen — never in a mined build
Last seen — never in a mined build
Builds0 / 149on this box, as of v2.1.308
Written about v0.2.29 first named in a changelog, 28 Feb 2025

In the changelogs

1255

Releases whose published page names /code.

  1. v2.1.307
    New CLAUDE_CODE_IGNORE_PERSISTED_TRUST makes earlier workspace trust not count

    With CLAUDE_CODE_IGNORE_PERSISTED_TRUST set, Claude Code ignores every saved record that you trusted a workspace

    found in this entry's text

  2. v2.1.307
    New claude sandbox uninstall command removes the Windows sandbox

    On native Windows, claude sandbox uninstall removes the sandbox account, group, stored password and network filters, then lists what remains

    found in this entry's text

  3. v2.1.307
    /update is now listed as an action command

    Claude Code's grouping of slash commands now files /update under the "action" category

    found in this entry's text

  4. v2.1.307
    A new hidden --runner-declares command-line flag

    Claude Code now recognises a hidden --runner-declares flag, listed beside flags used for launching sessions elsewhere

    found in this entry's text

  5. v2.1.307
    Plugin refresh, /subtask and a new writer setting

    Plugin refresh now marks fresh loads, /subtask was reorganised, and settings gain a writer entry with fable and opus values

    found in this entry's text

  6. v2.1.307
    CLAUDE_CODE_DISABLE_ARTIFACT dropped from the Artifact tool's setting entry

    The Artifact tool's setting entry no longer names CLAUDE_CODE_DISABLE_ARTIFACT, though the variable name still appears elsewhere in Claude Code

    found in this entry's text

  7. v2.1.307
    New sshHostCommands setting is for Claude Desktop only

    The new sshHostCommands setting defines SSH connections whose host comes from a command, for Claude Desktop; Claude Code itself ignores it

    found in this entry's text

  8. v2.1.307
    A managed policy can override CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION

    When a managed policy sets policyOnlyLeads, Claude Code merges admin env blocks even if CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION is set

    found in this entry's text

  9. v2.1.307
    Context window size is worked out differently, and [1m] handling was removed

    A model's context window is now the smaller of its stated window and a per-model value, and model names ending in [1m] are no longer handled

    found in this entry's text

  10. v2.1.307
    Claude Test tells you to type /claude-test when its browser helper is not ready

    When the browser helper is not ready, Claude Code now says Claude Test did not run and asks you to type /claude-test

    found in this entry's text

  11. v2.1.307
    Your BUN_OPTIONS value is now passed on to child processes from more places

    Processes Claude Code starts now keep your BUN_OPTIONS value from the process, settings or system environment, still after --install=disable

    found in this entry's text

  12. v2.1.307
    Environment management needs claude login, not an API key

    A reworded error says environment-management features need you signed in with claude login and do not work with ANTHROPIC_API_KEY

    found in this entry's text

  13. v2.1.307
    NO_PROXY joins a list of handled environment variables

    NO_PROXY is now in the same list of environment variables as SHELL, TRACEPARENT and GIT_CONFIG_NOSYSTEM

    found in this entry's text

  14. v2.1.307
    Shell command checks treat assignment-style arguments to dd separately

    When checking a shell command before running it, Claude Code now handles assignment-style arguments to dd under a separate rule

    found in this entry's text

  15. v2.1.307
    /clear withdraws the resume point in the conversation it leaves

    After /clear, Claude Code removes any resume checkpoint from the old conversation so it no longer resumes to that point

    found in this entry's text

  16. v2.1.307
    --await-claim still refuses to run with CLAUDE_CODE_SUBPROCESS_ENV_SCRUB

    The refusal of --await-claim alongside CLAUDE_CODE_SUBPROCESS_ENV_SCRUB is unchanged, with the same error text as before

    found in this entry's text

  17. v2.1.307
    Sandboxed shell commands now see NODE_USE_ENV_PROXY

    In the sandbox, NODE_USE_ENV_PROXY is no longer hidden, and proxy variables are added unless it is set to something other than 1

    found in this entry's text

  18. v2.1.307
    -p in an untrusted folder now names settings that belong elsewhere

    Under -p in an untrusted folder, Claude Code now first says which settings must move to user or managed settings

    found in this entry's text

  19. v2.1.307
    Fewer conditions before ANTHROPIC_AUTH_TOKEN is sent to a custom address

    Claude Code dropped one check that could stop ANTHROPIC_AUTH_TOKEN from being sent to a matching ANTHROPIC_BASE_URL

    found in this entry's text

  20. v2.1.307
    /output-style gets an extra condition for being shown and available

    /output-style now has an extra condition that decides whether it is available and shown, and a setting for thin clients

    found in this entry's text

  21. v2.1.305
    Timeout hint now notices API_TIMEOUT_MS set in settings

    The hint to raise API_TIMEOUT_MS after a timeout now uses the value from settings too, and only appears when it is above zero

    found in this entry's text

  22. v2.1.305
    New CLAUDE_CODE_CCR_EVENT_FLUSH_POLICY setting for remote sessions

    A new environment variable, CLAUDE_CODE_CCR_EVENT_FLUSH_POLICY, sets how a remote session sends out its events

    found in this entry's text

  23. v2.1.305
    Plugin checking gains a folder-layout check and a --profile directory option

    claude plugin validate now also runs a folder-layout check, and plugin loading now checks key plugin files stay within allowed folders

    found in this entry's text

  24. v2.1.305
    allowManagedPermissionRulesOnly now affects a plugin trust check

    When managed settings set allowManagedPermissionRulesOnly, one check on whether a plugin source is trusted now fails

    found in this entry's text

  25. v2.1.305
    Allow rules with :* in the middle now get a security warning

    An allow rule with : anywhere but the end now gets a security warning saying : is read as a wildcard

    found in this entry's text

  26. v2.1.305
    Workflow parallel() and pipeline() keep separate state for each item

    Each item run by the workflow parallel() and pipeline() helpers now keeps its own state, which is merged back afterwards

    found in this entry's text

  27. v2.1.305
    Groundwork for resuming a cloud session with --resume

    Code that would let --resume pick up a cloud session alongside --cloud is present but cannot be reached in this build

    found in this entry's text

  28. v2.1.305
    allowedMcpServers description narrows which managed entries are exempt

    The allowedMcpServers setting now says managed-mcp.json entries are exempt unless ${VAR} appears in their command, args, url or header values

    found in this entry's text

  29. v2.1.305
    claude auth login works when a browser cannot send the sign-in back

    If claude auth login cannot receive the browser's reply, it prints a sign-in link and waits for you to paste a code

    found in this entry's text

  30. v2.1.305
    Token file is only read when CLAUDE_CODE_REMOTE is set

    Claude Code now reads a token from its well-known file only when the CLAUDE_CODE_REMOTE environment variable is set

    found in this entry's text

  31. v2.1.305
    Starting a cloud session without signing in now walks you through /login

    If you start a cloud session without a claude.ai login, Claude Code asks you to run /login, then restarts and starts the session

    found in this entry's text

  32. v2.1.305
    The /claude-api command check now accepts some local IDs

    The /claude-api check still blocks ant commands with staging, Vertex or Bedrock IDs, and now accepts strict local-server IDs

    found in this entry's text

  33. v2.1.305
    ! shell commands can no longer be sent to a cloud session from its viewer

    Typing a ! command while viewing a cloud session now shows a message telling you to open the session instead of trying to send it

    found in this entry's text

  34. v2.1.305
    A setting named attributionProjectPolicy appears next to other managed settings

    The name attributionProjectPolicy now appears in a list of settings alongside managedMcpServers

    found in this entry's text

  35. v2.1.305
    Built-in test skill now lists all as an argument

    The argument hint for the built-in test skill now offers all, alongside spec name words, fix and onboard

    found in this entry's text

  36. v2.1.305
    Mistyped --tools exclusions now also produce short security warnings

    A --tools exclusion that matches no built-in tool, or a bare prefix with no tool name, now also produces a short security warning

    found in this entry's text

  37. v2.1.305
    GIT_CONFIG is now cleared only in some cases in one git runner

    One git runner now clears GIT_CONFIG only under certain conditions instead of always, and session setup gains new options

    found in this entry's text

  38. v2.1.305
    The ignored --rc warning is now one line

    The warning that --rc or --project was ignored is now a single line starting with the reason

    found in this entry's text

  39. v2.1.305
    The axScreenReader setting is described as ignored in project and local settings

    The axScreenReader setting's description now says it is ignored when set in project or local settings files

    found in this entry's text

  40. v2.1.305
    Deny and ask rules that treat * literally now get a security notice

    Deny or ask permission rules that mix with : now carry a security notice saying the * is read literally, with a fix

    found in this entry's text

  41. v2.1.305
    Headless runs send out pending messages early for ! shell commands

    In headless runs, Claude Code now sends out waiting messages before a turn starts when the input is a ! shell command

    found in this entry's text

  42. v2.1.305
    Some failed logins now suggest running with --debug

    One kind of login failure now tells you to run with --debug to see the underlying error, and sign-in links can ask for one extra scope

    found in this entry's text

  43. v2.1.305
    Claude Code refuses more ant commands that carry a locally made ID

    Claude Code now also refuses ant commands run through the shell when an argument holds an ID made locally, even one split across lines

    found in this entry's text

  44. v2.1.305
    claude plugin eval passes your session's API key to its test runs

    With an API key session, claude plugin eval now hands the key to its test runs itself, except on Windows, where you must set ANTHROPIC_API_KEY

    found in this entry's text

  45. v2.1.305
    allowManagedPermissionRulesOnly help narrows when --plugin-dir plugins keep their tools

    The setting's description now says plugins loaded with --plugin-dir keep their allowed tools only in Claude Desktop, and only if your organization didn't set it

    found in this entry's text

  46. v2.1.305
    Cancelling claude auth login now exits with code 130

    Cancelling the login flow now exits with code 130 instead of 1, and other errors still exit with 1

    found in this entry's text

  47. v2.1.305
    claude -p keeps waiting for background shells a built-in plugin holds

    A built-in plugin can now make claude -p wait for a background shell before it exits

    found in this entry's text

  48. v2.1.305
    Approval prompt for rm on a command's output now checks more of the command

    The approval check for a recursive rm aimed at a command's output now also looks at extra parts of the command

    found in this entry's text

  49. v2.1.304
    New CLAUDE_CODE_ATTRIBUTION_PROJECT setting checked against claude.ai Project IDs

    Claude Code now recognises CLAUDE_CODE_ATTRIBUTION_PROJECT and drops a value that is not a valid claude.ai Project ID from saved jobs

    found in this entry's text

  50. v2.1.304
    New CLAUDE_CODE_PERSONAL_CONFIG_FIX environment variable

    A new environment variable, CLAUDE_CODE_PERSONAL_CONFIG_FIX, is read by Claude Code and passed on to tmux sessions and child processes

    found in this entry's text

  51. v2.1.304
    Post-turn memory config gains a carry_across_restarts setting, off by default

    CLAUDE_CODE_POST_TURN_MEMORY_CONFIG now reads a carry_across_restarts setting that is off unless set

    found in this entry's text

  52. v2.1.304
    /login accepts an argument and drops its cloud-session workaround

    The cloud-session tip for /login is gone, and /login now reads an argument and reports when it does not recognise it

    found in this entry's text

  53. v2.1.304
    /claude-api now blocks some ant commands before they run

    The /claude-api skill now blocks ant commands with certain IDs and managed-agents-secure commands changed from the guide

    found in this entry's text

  54. v2.1.304
    rm on a mounted drive or a drive's top level now needs your approval

    Claude Code now asks before rm removes a mounted drive, its parent folder or a top-level item on a drive; an environment variable turns this off

    found in this entry's text

  55. v2.1.304
    --tools help now says "default" picks the default set of tools

    The help text for --tools now describes "default" as using the default set of tools rather than all tools

    found in this entry's text

  56. v2.1.304
    Auto-compact window setting now mentions CLAUDE_CODE_AUTO_COMPACT_WINDOW

    The auto-compact window setting's description now adds a note when CLAUDE_CODE_AUTO_COMPACT_WINDOW is involved, and startup checks that variable's value

    found in this entry's text

  57. v2.1.304
    Clearer message when a folder can't be used for cloud sessions

    The message for a folder that can't be bound to cloud sessions now covers home folders, hidden folders and repositories rooted there

    found in this entry's text

  58. v2.1.304
    --json-schema help now says it only works with --print

    The help text for --json-schema now notes that it only works together with --print

    found in this entry's text

  59. v2.1.304
    Background hint can point to /workflows instead of /tasks

    The "Running in background" hint can now suggest /workflows to monitor the work, instead of /tasks to view it

    found in this entry's text

  60. v2.1.304
    Clearer message when Claude Code refuses to start from your home folder

    The message shown when Claude Code won't start from your home folder now says why and suggests a folder such as ~/code/my-app

    found in this entry's text

  61. v2.1.304
    Cloud session client drops dangerous __proto__ fields from incoming messages

    Claude Code now strips __proto__ fields from messages it receives from a cloud session; a planned filter for reserved tags does nothing yet

    found in this entry's text

  62. v2.1.304
    /model in a remote session can open a new picker

    In a remote session, /model now opens a new model picker when the session has kept model rows, and falls back to the old picker otherwise

    found in this entry's text

  63. v2.1.304
    Help text for --disable-slash-commands now mentions commands too

    --disable-slash-commands is now described as disabling all skills and commands, and plugin publishing no longer promises a scan

    found in this entry's text

  64. v2.1.304
    claude update help now says package-manager installs update elsewhere

    The help for claude update now notes that installs from a package manager are updated through that package manager

    found in this entry's text

  65. v2.1.304
    allowAllUnixSockets description warns it also opens VM sockets on Linux

    The allowAllUnixSockets sandbox setting is now described as also unblocking VM sockets (AF_VSOCK) on Linux

    found in this entry's text

  66. v2.1.304
    --await-claim can no longer be combined with --sdk-url

    Claude Code now refuses to start when --await-claim and --sdk-url are used together

    found in this entry's text

  67. v2.1.304
    New extra condition in the trust check for awsCredentialExport

    Claude Code's check on where the awsCredentialExport setting comes from now has a second condition that can also make it count as project or local

    found in this entry's text

  68. v2.1.304
    /model in cloud sessions keeps its model list and refreshes it

    In a cloud session, the /model picker now keeps the session's list of models and refreshes it, instead of fetching it once each time it opens

    found in this entry's text

  69. v2.1.304
    --resume help text now mentions resuming by session name

    The help text for --resume now says you can pass a session ID or a session name, or open the picker with a search term

    found in this entry's text

  70. v2.1.302
    claude mcp serve can be limited to a subfolder with a one-time variable

    Programs that launch claude mcp serve can set CLAUDE_CODE_MCP_SERVE_WORKSPACE_ROOT so that only folders below a given folder can be registered

    found in this entry's text

  71. v2.1.302
    New CLAUDE_CODE_MCP_SERVE_WORKSPACE_ROOT environment variable

    Claude Code now recognises CLAUDE_CODE_MCP_SERVE_WORKSPACE_ROOT alongside its other variables for running as an MCP server

    found in this entry's text

  72. v2.1.302
    New forkSubagentDisabled setting turns off fork mode

    Fork mode can now be turned off with the forkSubagentDisabled setting, and a server-controlled switch can also turn it off

    found in this entry's text

  73. v2.1.302
    New includeUnsupportedModels setting lists models Claude Code would hide

    Setting includeUnsupportedModels to true makes the model list include models Claude Code would otherwise filter out as unsupported

    found in this entry's text

  74. v2.1.302
    The remote-control command now answers --help instead of starting

    Passing --help or -h to the remote-control command now prints its help text and stops, before any session starts

    found in this entry's text

  75. v2.1.302
    claude mcp serve can report on tool calls and accept rules from the client

    claude mcp serve gains a ReadCalls tool that reports on running and finished tool calls, and clients can pass in deny and ask rules

    found in this entry's text

  76. v2.1.302
    The config panel now reads the idleCompaction setting

    Claude Code's config panel now looks up the idleCompaction setting and where it came from, to tell whether you set it yourself

    found in this entry's text

  77. v2.1.302
    --resume shows the real reason when a session will not load

    When --resume with a file or session ID fails in a particular way, Claude Code now shows that error instead of a generic message

    found in this entry's text

  78. v2.1.302
    idleCompaction now sits with the on/off compaction settings

    The idleCompaction setting now appears beside precomputeCompactionEnabled in Claude Code's lists of settings and on/off toggles

    found in this entry's text

  79. v2.1.302
    New hint pointing to /tasks for background work and dynamic workflows

    Claude Code can show "Running in background · /tasks to view", or a version mentioning running dynamic workflows

    found in this entry's text

  80. v2.1.302
    /resume added to a list of commands offered in another window

    A command list that already offered fast mode now also offers /resume, described as "Resume a past session"

    found in this entry's text

  81. v2.1.302
    WSL detection no longer relies on WSL_DISTRO_NAME alone

    Claude Code no longer always treats WSL_DISTRO_NAME being set as proof it runs under WSL, and can fall back to checking the system

    found in this entry's text

  82. v2.1.302
    CLAUDE_CODE_AUTO_MODE_MODEL now sits on a list of environment variables

    Claude Code now lists CLAUDE_CODE_AUTO_MODE_MODEL with PATH, CLAUDE_CODE_EXTRA_BODY and CLAUDE_CODE_HOST_CREDS_FILE, and refers to it in more places

    found in this entry's text

  83. v2.1.301
    New CLAUDE_CODE_ATTACHMENTS_IN_USER_DATA setting for remote session attachments

    Remote sessions can keep attachments in a user-data folder when CLAUDE_CODE_ATTACHMENTS_IN_USER_DATA is set, unless data retention rules apply

    found in this entry's text

  84. v2.1.301
    mcp serve can track and stop background shell commands

    When Claude Code runs as an MCP server, the connected app can now see and stop shell commands left running in the background

    found in this entry's text

  85. v2.1.301
    Vim mode now supports % to jump to the matching bracket

    In vim mode, pressing % now moves the cursor to the bracket that matches the one under it

    found in this entry's text

  86. v2.1.301
    Vim mode accepts % after an operator

    In vim mode, % can now be used as the motion after an operator, the way j and k already could

    found in this entry's text

  87. v2.1.301
    project_write gives a clearer error when a file cannot be uploaded by path

    When project_write refuses a file given by local_path, it now says the file may be missing, unreadable or not allowed, and suggests passing content

    found in this entry's text

  88. v2.1.301
    CLAUDE_CODE_REMOTE_ENVIRONMENT_TYPE joins a list of remote environment variables

    CLAUDE_CODE_REMOTE_ENVIRONMENT_TYPE now sits on the same list as other remote environment variables

    found in this entry's text

  89. v2.1.301
    Project upload reading tool renamed to ReadProjectUploadText

    The tool for reading a project upload is now called ReadProjectUploadText instead of ReadProjectUpload, and three more tools join it

    found in this entry's text

  90. v2.1.301
    .zst, .lz4 and .whl files are now treated as binary

    Claude Code now treats .zst, .lz4 and .whl files as binary files rather than text

    found in this entry's text

  91. v2.1.301
    Artifact tool text drops root, and MCP results note an opt-out from processing

    In multi-file mode the Artifact tool description names only files, and MCP results now say they are processed unless result_not_for_model was set

    found in this entry's text

  92. v2.1.301
    Hook handlers for $.env.set now return a deny result

    The handler that warns about a $.env.set call now also returns a deny result instead of returning nothing

    found in this entry's text

  93. v2.1.301
    Claude Code now recognises self-hosted remote environments of kind byoc

    Claude Code can now tell when it runs in a self-hosted byoc remote environment, using three environment variables

    found in this entry's text

  94. v2.1.301
    Artifact publishing no longer rejects edits together with root

    Publishing an artifact with both edits and root no longer returns an error; combining edits with files still does

    found in this entry's text

  95. v2.1.301
    Wording of the project_write file path option trimmed

    The local_path description for project_write no longer says the file is uploaded as it is

    found in this entry's text

  96. v2.1.301
    The --project refusal message no longer varies

    Moving a session to the cloud now reports more about branch handling, and the --project error is always the same message

    found in this entry's text

  97. v2.1.301
    project_write no longer uploads notebooks from a file path

    project_write now refuses notebook files given by local_path and tells Claude to pass the text as content, with clearer refusal messages

    found in this entry's text

  98. v2.1.300
    CLAUDE_CODE_ATTACHMENTS_BY_PATH turns off file uploads for files Claude sends

    Setting CLAUDE_CODE_ATTACHMENTS_BY_PATH stops Claude Code uploading files it sends you, enables the send-file tool and keeps its results in subagents

    found in this entry's text

  99. v2.1.300
    A prompt.change hook fires when something other than you edits the prompt box

    The prompt.change hook runs when a plugin or the landing screen changes the prompt box, and stops itself if plugins keep refilling it

    found in this entry's text

  100. v2.1.300
    CLAUDE_CODE_FORCE_SANDBOX no longer exists

    The CLAUDE_CODE_FORCE_SANDBOX environment variable has been removed, and remote bridge setup no longer passes a sandbox option

    found in this entry's text

  101. v2.1.300
    Claude Code now recognises an --unsandboxed flag name

    --unsandboxed now appears in Claude Code's list of known command-line flags, next to --remote-control, --rc and --local

    found in this entry's text

  102. v2.1.300
    Extensions gain two new actions: composer.attribute and view.show

    The functions Claude Code offers to extensions now include composer.attribute and view.show

    found in this entry's text

  103. v2.1.300
    New CLAUDE_CODE_HIDE_REPLY_SERVER_NAME environment variable

    Claude Code now recognises an environment variable, CLAUDE_CODE_HIDE_REPLY_SERVER_NAME

    found in this entry's text

  104. v2.1.300
    New CLAUDE_CODE_MESSAGES_PROMPT_CACHE_TTL environment variable

    A new environment variable, CLAUDE_CODE_MESSAGES_PROMPT_CACHE_TTL, sits alongside the existing prompt cache lifetime settings

    found in this entry's text

  105. v2.1.300
    New codeAllowedRepositories setting is accepted but not yet applied on your device

    Admins can set codeAllowedRepositories, a Beta list of allowed repositories, but Claude Desktop does not apply it to on-device sessions yet

    found in this entry's text

  106. v2.1.300
    Help for --restricted no longer lists REPL among the removed tools

    The help text for --restricted drops REPL from its list of code-running tools that restricted mode removes

    found in this entry's text

  107. v2.1.300
    Plugins can ask for a ui.view capability

    Plugins have a new ui.view capability in the list of things they can ask Claude Code to do

    found in this entry's text

  108. v2.1.300
    Plugin WorktreeCreate hooks now run when starting with --worktree

    Starting with --worktree now sets up plugin worktree hooks first, so a plugin's WorktreeCreate hook can run

    found in this entry's text

  109. v2.1.300
    /autocompact warns about high token usage only for larger windows

    The high-token-usage warning in /autocompact now shows only when the chosen window is bigger than the auto window for your model

    found in this entry's text

  110. v2.1.300
    claude daemon stop now force-kills a daemon that will not stop

    claude daemon stop now asks a stuck daemon to stop, waits, then force-kills it, and explains clearly when it cannot

    found in this entry's text

  111. v2.1.300
    /autofix-pr can now be offered to console-profile sign-ins

    /autofix-pr was limited to claude.ai sign-ins and can now also be offered to people signed in through a console profile

    found in this entry's text

  112. v2.1.300
    /teleport and /remote-env now work for Console profile logins

    /teleport and /remote-env are now available to Console profile logins as well as claude.ai logins

    found in this entry's text

  113. v2.1.300
    claude remote-control now asks about unattended use before it starts

    claude remote-control now asks up front in the terminal whether to serve this folder unattended, except in a few modes

    found in this entry's text

  114. v2.1.300
    --worktree from a pull request now tracks its host and names the head commit

    With --worktree and a pull request, Claude Code now passes on which host the request came from and shows the head commit in its message

    found in this entry's text

  115. v2.1.300
    Reading AGENTS.md files takes a simpler path

    When Claude Code reads an AGENTS.md file, it no longer runs a per-session setup step or logs a shared event on that path

    found in this entry's text

  116. v2.1.300
    Artifact publish_edits option now has its own fixed setting

    Whether the Artifact tool offers publish_edits is now fixed by its own setting and written to the log with the others

    found in this entry's text

  117. v2.1.300
    /teleport shows clearer access errors and syncs git state first

    The /teleport session picker now shows the actual reason when cloud access is refused, and /teleport publishes git state before taking over a session

    found in this entry's text

  118. v2.1.300
    Worktrees for pull requests still use the pr- number name after a parsing change

    Claude Code now reads more from a pull request reference, but still names its worktree pr- followed by the PR number

    found in this entry's text

  119. v2.1.300
    Handling of --permission-prompt-tool was restructured

    The handler behind --permission-prompt-tool is now wrapped in a separate helper, and a related input and output shortcut changed

    found in this entry's text

  120. v2.1.300
    Setting CLAUDE_CODE_ATTACHMENTS_BY_PATH makes Claude Code act as a remote session

    Claude Code now treats a session as remote whenever CLAUDE_CODE_ATTACHMENTS_BY_PATH is set

    found in this entry's text

  121. v2.1.299
    /share can send your whole session transcript when an environment variable is set

    With CLAUDE_CODE_ENABLE_SHARE_BUNDLE set, /share now sends the whole session transcript with your feedback

    found in this entry's text

  122. v2.1.299
    New CLAUDE_CODE_JIT_POLICY_AFTER_STARTUP setting tunes speed-up behaviour

    Setting CLAUDE_CODE_JIT_POLICY_AFTER_STARTUP changes the code-compilation policy Claude Code switches to 10 seconds after starting

    found in this entry's text

  123. v2.1.299
    New environment variable CLAUDE_CODE_DISABLE_FILE_MENTIONS

    Claude Code now recognises a CLAUDE_CODE_DISABLE_FILE_MENTIONS environment variable, listed with other variables that turn features off

    found in this entry's text

  124. v2.1.299
    New hidden --fast-mode option turns fast mode on or off at launch

    A new hidden --fast-mode on or --fast-mode off command-line option sets fast mode for a launch, unless fastMode is already set elsewhere

    found in this entry's text

  125. v2.1.299
    Optional lazy reading of environment variables with CLAUDE_CODE_LAZY_ENV_GETTERS

    Setting CLAUDE_CODE_LAZY_ENV_GETTERS makes Claude Code read each environment variable only when it is first needed

    found in this entry's text

  126. v2.1.299
    /btw side questions should no longer move your scroll position

    /btw is now marked to keep the main conversation's scroll position when you ask a quick side question

    found in this entry's text

  127. v2.1.299
    /effort and /fast now work in agent view

    In agent view, /effort and /fast now take effect instead of telling you to attach to a session

    found in this entry's text

  128. v2.1.299
    Empty .config.json files no longer take over your configuration

    Claude Code now uses .config.json only if it has content, or if it is empty and writable and the other config file does not exist

    found in this entry's text

  129. v2.1.299
    Queued ! commands are skipped in terminals attached to a remote session

    When your terminal is attached to a remote session, queued ! shell commands are skipped with a warning while other queued prompts still run

    found in this entry's text

  130. v2.1.299
    New --disallow-tools option for running case files

    A command that runs case files gains --disallow-tools, which keeps chosen built-in tools from Claude in every case

    found in this entry's text

  131. v2.1.299
    New CLAUDE_CODE_REMOTE_MCP_CONFIG variable is passed to child processes

    Claude Code now recognises the CLAUDE_CODE_REMOTE_MCP_CONFIG environment variable and passes it on to processes it starts

    found in this entry's text

  132. v2.1.299
    New minimum-version setting and managed-hook tools for mcp serve

    mcp serve reads CLAUDE_CODE_MCP_SERVE_INTERFACE_MIN_VERSION, clears its auth token after reading it, and gains tools to run managed hooks and toggle project servers

    found in this entry's text

  133. v2.1.299
    CLAUDE_CODE_EXIT_AFTER_FIRST_RENDER is now checked alongside another condition

    Claude Code now checks CLAUDE_CODE_EXIT_AFTER_FIRST_RENDER together with a second condition when deciding whether to stop after the first draw

    found in this entry's text

  134. v2.1.299
    --safe-mode is now kept when a background job restarts

    --safe-mode is now one of the flags carried over when a job or session restarts, and the warning about dropped flags is reworded

    found in this entry's text

  135. v2.1.299
    claude mcp serve reads a session id sent with each tool call

    When Claude Code runs as an MCP server, it reads a session id from each call's anthropic/session metadata and warns when it is invalid

    found in this entry's text

  136. v2.1.299
    Claude Code adds /mnt/wslg/distro to its mount list

    Claude Code now includes the /mnt/wslg/distro mount point in a list of mount points, apparently when running under WSL

    found in this entry's text

  137. v2.1.299
    Gateway blocks models listed in a role's deniedModels

    The gateway now rejects models in a role's deniedModels list and hides them from the model list, alongside the availableModels allowlist

    found in this entry's text

  138. v2.1.299
    --session-tunnel now watches the program that started it

    --session-tunnel now tracks the process that launched it, refuses to start if it cannot see it, and exits once it is gone

    found in this entry's text

  139. v2.1.299
    --exec joins a group of internal launch flags

    The --exec flag now sits in the same internal list as --resume-session-at and --project-config-root

    found in this entry's text

  140. v2.1.299
    No visible change to the --await-claim error message

    The error shown when --await-claim is combined with --continue, --resume or --fork-session is worded the same as before

    found in this entry's text

  141. v2.1.299
    Git command parsing no longer treats -m as taking a value

    When reading git commands, Claude Code no longer counts -m among the options that take a value

    found in this entry's text

  142. v2.1.299
    Session tunnels for claude mcp serve start up a different way

    With --session-tunnel, mcp serve now sets up its connection from a transport and a port, and a refused start shows the refusal text

    found in this entry's text

  143. v2.1.299
    Internal rework of how --cloud sessions are started

    The code that starts cloud sessions with --cloud was reorganised, with no change you can see

    found in this entry's text

  144. v2.1.299
    claude --bg refuses to start when the flag is mixed into the prompt

    If Claude Code cannot tell --bg apart from the prompt text, it now starts nothing and tells you to put the flag first

    found in this entry's text

  145. v2.1.299
    Artifact tool accepts a new publish_edits option

    The Artifact tool's input now accepts a publish_edits option alongside assets and copy_from

    found in this entry's text

  146. v2.1.299
    --tools explains that it cannot remove MCP tools

    Passing an MCP tool to --tools now fails with a message saying to use --disallowed-tools instead

    found in this entry's text

  147. v2.1.299
    Some MCP servers from --mcp-config can now be refused, with a warning

    Servers from several --mcp-config sources now pass a check that can refuse some, and a failed Remote Control tool call says not to retry

    found in this entry's text

  148. v2.1.299
    Self-hosted runner setup now explains git sign-in limits and how to recover

    The self-hosted runner setup guide now warns that repositories must clone over HTTPS without a sign-in prompt and explains how to recover

    named in this entry, found in this entry's text

  149. v2.1.299
    /reload-skills now says when Claude will see the updated skills

    /reload-skills now reports "none added or removed" and says Claude gets the full skill list with your next message

    found in this entry's text

  150. v2.1.296
    CLAUDE_CODE_ADOPT_UNDERIVABLE_PARKED_PERMISSION is read as an on/off setting

    CLAUDE_CODE_ADOPT_UNDERIVABLE_PARKED_PERMISSION is an on/off variable for handling permission requests left waiting in resumed sessions

    found in this entry's text

  151. v2.1.296
    New CLAUDE_CODE_WEBSEARCH_CITATIONS_DECLARED setting for web search citations

    A new environment variable, CLAUDE_CODE_WEBSEARCH_CITATIONS_DECLARED, joins the existing web search citations switch

    found in this entry's text

  152. v2.1.296
    New CLAUDE_CODE_WORKFLOW_SUBAGENT_MODEL picks the model for workflow subagents

    Setting CLAUDE_CODE_WORKFLOW_SUBAGENT_MODEL chooses which model subagents use during a workflow run, separately from other subagents

    found in this entry's text

  153. v2.1.296
    Blocking PreToolUse hooks now show their full reason

    When a PreToolUse hook blocks a tool, the hook's extra text is now added to the error message instead of being lost

    found in this entry's text

  154. v2.1.296
    Gateway policy files gain a code block for Claude Desktop's Code tab

    Gateway policy entries can now use a code block for Claude Desktop's Code tab, but it cannot be mixed with cli or settings blocks

    found in this entry's text

  155. v2.1.296
    Managed settings with allowedProviders can now set ANTHROPIC_BASE_URL automatically

    When managed settings use allowedProviders, Claude Code may set ANTHROPIC_BASE_URL itself unless the managed settings already set it

    found in this entry's text

  156. v2.1.296
    --tools handling for cloud sessions reworked

    For cloud sessions, --tools is now sorted into the default set, a refused list or another list, and errors now name the refused tools

    found in this entry's text

  157. v2.1.296
    Handling of permission rules starting with ! has been reorganised

    Claude Code reorganised how it reads permission rules whose content starts with !, with no behaviour change shown

    found in this entry's text

  158. v2.1.296
    skillOverrides now applies to skills that come from MCP servers

    Settings in skillOverrides now apply to skills supplied by MCP servers, matched by the skill's name or its alias names

    found in this entry's text

  159. v2.1.296
    Managed policy entries can carry a code section as well as cli

    Entries in managed.policies now accept a code key in addition to cli, and validation messages point to whichever one the entry uses

    found in this entry's text

  160. v2.1.296
    Plugin hooks get an isDispatching check and change how render and focus events pass

    The context passed to plugin hooks now includes isDispatching, and ui.render or ui.focus starting events are cleared for calls served by a pending call

    found in this entry's text

  161. v2.1.296
    Plugin install hints now use --replace and disabled MCP servers stay unconnected

    The suggested plugin install command now includes --replace and --scope, and disabled MCP servers are no longer connected

    found in this entry's text

  162. v2.1.296
    CLAUDE_AUTO_BACKGROUND_TASKS is now read from Claude Code's own configuration

    Claude Code now reads CLAUDE_AUTO_BACKGROUND_TASKS from its own configuration values instead of straight from the shell environment

    found in this entry's text

  163. v2.1.296
    Cloud sessions started with --tools now stop with an error on some environments

    Starting a cloud session with --tools on a Remote Control, self-hosted or unknown environment now fails with a clear error

    found in this entry's text

  164. v2.1.296
    The builtinTools option now carries through to the session

    A builtinTools option is now passed on to the session along with the allowed and disallowed tool lists

    found in this entry's text

  165. v2.1.296
    set_model can now fail with a model_not_current reason

    set_model gains a model_not_current error reason, and cloud session creation no longer sends the builtinTools field

    found in this entry's text

  166. v2.1.296
    Project .mcp.json files can now be skipped when loading MCP servers

    Claude Code has a new condition under which it skips reading project .mcp.json files and uses a server list from elsewhere

    found in this entry's text

  167. v2.1.296
    Managed policy errors can point to a .code path, and logout waits for one more step

    Managed policy error messages now name a .code path for code-scoped policies, and logout finishes an extra step before clearing your sign-in

    found in this entry's text

  168. v2.1.296
    The preview for sed edits now handles files that are not UTF-8

    When Claude asks to edit a non-UTF-8 file with sed, the permission prompt now says it cannot be previewed instead of showing a garbled diff

    found in this entry's text

  169. v2.1.295
    claude mcp serve gains an HTTP mode, limited to remote cloud sessions

    In remote cloud sessions only, claude mcp serve can now listen over HTTP with --transport, --port and --session-tunnel

    found in this entry's text

  170. v2.1.295
    mcp serve gains a session tunnel mode and can return tool output

    claude mcp serve has a new --session-tunnel mode that connects through a relay, and can return tool output and relay permission asks

    found in this entry's text

  171. v2.1.295
    The --cloud form is now suggested in one more case

    Claude Code now uses the --cloud form in its hint text when an environment query is present, not only when a pool is

    found in this entry's text

  172. v2.1.295
    New CLAUDE_CODE_RESTRICT_PERSONAL_CONFIG mode restricts your own Claude Code files

    Setting CLAUDE_CODE_RESTRICT_PERSONAL_CONFIG starts a session that restricts your own Claude Code files, alongside the other restricted modes

    found in this entry's text

  173. v2.1.295
    New CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS setting stops a retry check from being skipped

    Setting CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS now stops Claude Code from skipping a check it otherwise skips because of the retry watchdog

    found in this entry's text

  174. v2.1.295
    Shorter prompt caching with transcriptCacheTtl

    Setting transcriptCacheTtl to 5m makes Claude Code ask for 5-minute caching when the default would be 1 hour

    found in this entry's text

  175. v2.1.295
    CLAUDE_CODE_POLISHED_DEWDROP now accepts drop, block or off

    The CLAUDE_CODE_POLISHED_DEWDROP environment variable now overrides a setting with one of three values: drop, block or off

    found in this entry's text

  176. v2.1.295
    --cloud without a description can take the task from your prompt

    Claude Code now accepts --cloud with no description in more cases, using the starting prompt as the task

    found in this entry's text

  177. v2.1.295
    --environment now reads environment IDs and names, but still only runs pool IDs

    --environment now recognises IDs starting with env_ and plain names, but only IDs starting with ccpool_ actually work so far

    found in this entry's text

  178. v2.1.295
    /copy can now copy quoted passages as well as code blocks

    The /copy picker now lists quoted passages from a reply alongside code blocks, so you can copy a quote on its own

    found in this entry's text

  179. v2.1.295
    A recheck permission decision is treated as allowed by configuration

    A permission decision of recheck is now treated as allowing the action, recorded as coming from your configuration

    found in this entry's text

  180. v2.1.295
    API_FORCE_IDLE_TIMEOUT now overrides a new option for the stalled-response timeout

    If set, API_FORCE_IDLE_TIMEOUT decides whether stalled model responses time out; otherwise a new option called bodyIdleTimeout decides

    found in this entry's text

  181. v2.1.295
    Gateway guide: send x-should-retry: false with a 501 not supported response

    The bundled gateway guide now says a 501 not supported response should send x-should-retry: false, or Claude Code retries once first

    found in this entry's text

  182. v2.1.295
    Your own hooks can keep running when disableAllHooks is set

    With disableAllHooks set, Claude Code can now still run hooks from your own settings under certain conditions

    found in this entry's text

  183. v2.1.295
    DISABLE_COMPACT now feeds a new compaction check

    A new check that decides something about compaction now returns false whenever DISABLE_COMPACT is set

    found in this entry's text

  184. v2.1.295
    git stash list permission check no longer trusts arguments after --

    The read-only rule for git stash list no longer assumes everything after -- on the command line is safe

    found in this entry's text

  185. v2.1.295
    Tools left out of --tools are now withheld unless a deny rule names them

    A tool missing from the session's --tools list and named by no deny rule is now withheld, with a warning

    found in this entry's text

  186. v2.1.295
    claude plugin validate runs an extra round of checks

    claude plugin validate now runs a further round of checks and shows the results in both its text and JSON output

    found in this entry's text

  187. v2.1.295
    claude mcp serve declares extra capabilities in its remote mode

    Run in its remote mode, the MCP server started by claude mcp serve now declares more capabilities and accepts session details with each tool call

    found in this entry's text

  188. v2.1.293
    The haiku model name now means Haiku 5.5 on the Anthropic API

    The haiku alias now picks claude-haiku-5-5 on Anthropic's own API, while Bedrock, Vertex and other providers stay on claude-haiku-4-5

    found in this entry's text

  189. v2.1.293
    CLAUDE_CODE_THINKING_DISPLAY_UPDATES can switch off thinking display updates

    Thinking display updates are on by default, and CLAUDE_CODE_THINKING_DISPLAY_UPDATES can override that

    found in this entry's text

  190. v2.1.293
    Account-managed plugins can switch off single skills in manifest.json

    Some plugins can now list their skills in a manifest.json that switches individual skills off; a broken file loads none of them

    found in this entry's text

  191. v2.1.293
    New messages for the built-in Claude Test feature and /claude-test

    Claude Test gains sign-in-dependent access and messages for when it is still loading or its browser helper failed to load

    found in this entry's text

  192. v2.1.293
    New CLAUDE_CODE_DESKTOP_SKILL_SWITCHES variable and fewer environment details in some runs

    Claude Code reads a new desktop skill switches variable at startup and, in some runs, no longer collects details about your machine's tools

    found in this entry's text

  193. v2.1.293
    MCP tools named start_task can now upload attached files

    Calls to an MCP tool named start_task now check their input and upload attached files first, on remote HTTP servers

    found in this entry's text

  194. v2.1.293
    /compact now notes when its message already shows the summary

    The result of /compact now records whether its on-screen message repeats the conversation summary

    found in this entry's text

  195. v2.1.293
    Essential telemetry now also goes to an /api/v2/rum path on Anthropic's host

    The essential telemetry endpoints now include an /api/v2/rum path on Anthropic's host alongside the Datadog hosts

    found in this entry's text

  196. v2.1.292
    MCP servers can stay out of automatic backgrounding with disableAutoBackground

    A new per-server disableAutoBackground field stops Claude Code from moving that MCP server's tool calls to the background

    found in this entry's text

  197. v2.1.292
    New CLAUDE_CODE_HOST_SKILL_CATALOG variable limits which skills load

    In remote sessions, CLAUDE_CODE_HOST_SKILL_CATALOG can list the skills allowed to load, and invalid values are ignored with a warning

    found in this entry's text

  198. v2.1.292
    Repository checkout list is empty unless CLAUDE_CODE_REPO_CHECKOUTS is set

    A lookup of repository checkouts returns entries only when CLAUDE_CODE_REPO_CHECKOUTS is set, and an empty list otherwise

    found in this entry's text

  199. v2.1.292
    CLAUDE_CODE_ARTIFACT_PREVIEW can now turn artifact preview off

    Setting CLAUDE_CODE_ARTIFACT_PREVIEW to false now switches artifact preview off, and emulator mode always gets preview

    found in this entry's text

  200. v2.1.292
    Long text for $.audio.speak is cut short instead of rejected

    $.audio.speak no longer fails on long text; it warns and speaks only the first part, up to a set number of characters

    found in this entry's text

  201. v2.1.292
    /fork can send a repository address when no git address is found

    When forking a session finds no git repository address, Claude Code now falls back to another repository address

    found in this entry's text

  202. v2.1.292
    /loop wake-ups record when the chain started and what triggered them

    Scheduling the next /loop wake-up now records when the loop chain started, whether a keepalive triggered it, and which tool call scheduled it

    found in this entry's text

  203. v2.1.292
    New CLAUDE_CODE_ARTIFACT_VERSIONS environment variable appears

    A new environment variable, CLAUDE_CODE_ARTIFACT_VERSIONS, is added to Claude Code's lists of variables handed between processes

    found in this entry's text

  204. v2.1.292
    Clearer errors when installing a plugin with --marketplace

    plugin install <plugin> --marketplace <source> now checks its arguments and explains what is wrong when they don't fit

    found in this entry's text

  205. v2.1.292
    claude -p can keep waiting for background commands past its time limit

    In print mode Claude Code can hold on for background commands instead of stopping at the wait limit, and its give-up warning now lists running tasks

    found in this entry's text

  206. v2.1.292
    mcp_read_resource can now be refused on hosted desktop

    The mcp_read_resource request now runs a check first and can be refused with the code hosted_desktop

    found in this entry's text

  207. v2.1.292
    Changes view looks up repository checkouts even without CLAUDE_CODE_REPO_CHECKOUTS

    The scan behind the uncommitted-changes view now always builds its list of checkouts and notes whether each repository follows the shell's folder

    found in this entry's text

  208. v2.1.292
    Vim mode: moving up or down after $ stays at the end of the line

    In vim mode, after $ the cursor now stays at the end of each line as you move up and down, as it does in vim

    found in this entry's text

  209. v2.1.292
    Large-workflow label pointing to /workflows

    Claude Code includes a 'Large workflow · /workflows to stop' label, and its task-numbering step now reports whether it changed anything

    found in this entry's text

  210. v2.1.292
    Plugin tool.check and ui.scroll hooks now wait for pending work

    The tool.check and ui.scroll plugin hooks now wait for pending work to finish before running

    found in this entry's text

  211. v2.1.292
    A tool input given as file_path is now read as path

    When the model passes file_path where a tool expects path, Claude Code now reads it as path and tells the model it did so

    found in this entry's text

  212. v2.1.292
    JSON repair now counts keys named __proto__

    When Claude Code repairs JSON with doubly escaped characters, its usage report now counts how many keys are named __proto__

    found in this entry's text

  213. v2.1.290
    claude remote-control can let cloud sessions run commands in a folder unattended

    A new --allow-unattended-tool-calls option lets cloud sessions use the current folder for one run, with auto-mode commands running without asking

    found in this entry's text

  214. v2.1.290
    Fixed how shell permission checks read flags after command

    Claude Code now checks each flag after the shell command command correctly when deciding whether a command such as command -v is safe

    found in this entry's text

  215. v2.1.290
    /run can pick up extra files and a note beyond its bundled ones

    The /run skill and one other skill now add extra files from another source to their own, and can add a note to the prompt

    found in this entry's text

  216. v2.1.290
    PreCompact hooks are now told when compaction was automatic

    The PreCompact hook now receives a trigger of auto for automatic compaction instead of always manual

    found in this entry's text

  217. v2.1.290
    claude logs now finds background sessions by name

    claude logs now accepts a session's name, or part of it, as well as its ID, and lists the matches when the name is ambiguous

    found in this entry's text

  218. v2.1.290
    claude plugin test now waits for its rollout setting to be saved

    claude plugin test now waits until a rollout setting is saved for test files to read, and reports when that fails

    found in this entry's text

  219. v2.1.290
    Bash redirects like {fd}>file now ask for your approval

    Shell redirects that store a file number in a variable, such as {fd}>file, are now treated as too complex to run without asking

    found in this entry's text

  220. v2.1.290
    Variable named by CLAUDE_CODE_HOST_AUTH_ENV_VAR is kept when the environment is cleaned

    When Claude Code removes certain environment variables, it now keeps the one named by CLAUDE_CODE_HOST_AUTH_ENV_VAR

    found in this entry's text

  221. v2.1.290
    Clear error for unsupported store.postgres_url values in the gateway

    The gateway now explains why a store.postgres_url with several hosts or a special-character password is rejected

    found in this entry's text

  222. v2.1.290
    Background sessions ignore --allow-dangerously-skip-permissions without recorded consent

    Background sessions now ignore --allow-dangerously-skip-permissions unless bypass consent is in your user or policy settings

    found in this entry's text

  223. v2.1.290
    No visible change to the plugin install --replace hint

    The hint that suggests --replace when a plugin comes from another marketplace reads exactly as before

    found in this entry's text

  224. v2.1.290
    No visible change to the --bare message for cloud sessions

    Cloud sessions still refuse --bare with the same explanation; only the moment the message is worked out changed

    found in this entry's text

  225. v2.1.290
    Some rm commands with variables set in front now ask first

    Claude Code now rechecks rm commands with variables set before a declaration, and asks you when it cannot check them all

    found in this entry's text

  226. v2.1.290
    SDK description of user_message_uuid explains resumed turns

    The SDK's description of user_message_uuid now covers turns that resume after an interruption and turns that continue after a permission answer

    found in this entry's text

  227. v2.1.290
    Git repository check now treats GIT_REFERENCE_BACKEND as tampering

    A repository safety check now flags the repository as tampered when GIT_REFERENCE_BACKEND is set, and adds other git folder checks

    found in this entry's text

  228. v2.1.290
    More awk and find commands now ask for permission first

    Claude Code now asks before running awk or find commands that trip an extra wildcard check, not only ones with unquoted wildcards

    found in this entry's text

  229. v2.1.290
    File changes from a git step are no longer presented as Claude's edits

    Claude Code now notes that a git step in a shell command may have changed files, so those changes may not be edits

    found in this entry's text

  230. v2.1.290
    GH_REPO no longer accepts a host, and hosts from git remotes are checked

    GH_REPO must now be plain OWNER/REPO; a host in it causes an error, and hosts taken from git remotes face a refusal check

    found in this entry's text

  231. v2.1.290
    /plugin in the desktop app explains where to go instead

    Running /plugin in the desktop app now explains it cannot run there and points to the Plugins menu or the command line

    found in this entry's text

  232. v2.1.290
    GitHub CLI setup no longer stalls when looking for gh fails

    If finding the gh command times out or fails during setup, Claude Code skips its gh stand-in and carries on, except in hosted runs

    found in this entry's text

  233. v2.1.290
    /doctor shows an extra block of checks before environment variables

    The /doctor report now prints a new block of paired lines, each with an indented detail, ahead of its environment variables section

    found in this entry's text

  234. v2.1.290
    disableClaudeAiMcp now also blocks claude.ai servers you add yourself

    With disableClaudeAiMcp set, a claude.ai proxy server passed by --mcp-config or the SDK mcpServers option no longer connects either

    found in this entry's text

  235. v2.1.290
    More shell commands using $$ now ask for permission

    Shell commands using patterns like $$[ are now treated as too complex to judge and prompt for permission

    found in this entry's text

  236. v2.1.290
    Refusals from --from-link can include another spelling of the name

    When the hidden --from-link option refuses, its JSON output can now include a requested field holding another spelling of the name

    found in this entry's text

  237. v2.1.290
    /code-review medium now runs the high-effort recipe on most models

    On every model without its own /code-review row, Opus 5.5 included, medium now runs the eight-angle high recipe instead of a single pass. high, xhigh and Opus 5 are unchanged.

    found in this entry's text

  238. v2.1.290
    gh help text now says which host a request goes to

    Help text about gh now says the chosen remote decides the host, and that GH_HOST or GH_REPO cannot pick another

    found in this entry's text

  239. v2.1.290
    Cloud session sign-in error now tells you to run claude auth login

    The error for cloud sessions without a claude.ai sign-in is shorter and names the claude auth login command

    found in this entry's text

  240. v2.1.290
    --safe-mode is now checked the same way as --restricted

    The --safe-mode flag now goes through the same check as --restricted and --strict-mcp-config, run when it is needed

    found in this entry's text

  241. v2.1.290
    Remote Control label shows rc instead of /rc

    The Remote Control label now begins with rc rather than /rc, and its short form is rc

    found in this entry's text

  242. v2.1.289
    find commands with -rm now need your permission

    A find command containing -rm no longer counts as read-only, so Claude Code asks before running it

    found in this entry's text

  243. v2.1.289
    claude plugin list shows which folder a plugin was read from

    claude plugin list now shows a "Read from:" line and folder version for plugins loaded from a folder, with matching fields in JSON output

    found in this entry's text

  244. v2.1.289
    claude plugin eval tests folder marketplace plugins from where sessions load them

    Evaluating an installed plugin from a folder marketplace now runs it from that folder, or stops with an error if the folder no longer lists it

    found in this entry's text

  245. v2.1.289
    claude auth status now exits straight away after printing its result

    After showing your login status, claude auth status now ends at once with exit code 0 or 1 instead of first waiting on an internal step

    found in this entry's text

  246. v2.1.289
    find commands using -rm are no longer treated as safe to run without asking

    Claude Code now counts -rm among the find actions that can change files, so such commands are no longer auto-allowed as read-only

    found in this entry's text

  247. v2.1.289
    Fewer find commands are allowed without asking

    Claude Code now asks before running some find, test, jobs and set commands that it used to treat as safe to run automatically

    found in this entry's text

  248. v2.1.289
    Plugin tool.check hooks get an extra input when a PreToolUse hook asks for permission

    When a PreToolUse hook has asked for permission, plugin tool checks are now built with that hook's ask passed in as an extra input

    found in this entry's text

  249. v2.1.289
    /reload-plugins reports which plugin folders it read, and folder watching follows real paths

    /reload-plugins adds lines about plugin folders it read, and watched plugin folders are now tracked by their real location on disk

    found in this entry's text

  250. v2.1.289
    find commands with -rm now count as destructive, like -delete

    Claude Code's list of destructive shell commands now matches find ... -rm as well as find ... -delete

    found in this entry's text

  251. v2.1.289
    find commands using -rm are no longer approved automatically as read-only

    Claude Code no longer treats find ... -rm as read-only, so it asks before running it unless a remote switch turns this back off

    found in this entry's text

  252. v2.1.288
    CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS turns off structured outputs

    Setting CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS stops Claude Code from asking the model for replies in a fixed format

    found in this entry's text

  253. v2.1.288
    claude auto-mode defaults and claude auto-mode config finish sending usage data before exiting

    The claude auto-mode defaults and config commands now send pending usage data before exiting, and defaults now receives its label filter

    found in this entry's text

  254. v2.1.288
    Built-in gh replacement explains what it covers and when a real GitHub CLI takes over

    The help text of Claude Code's built-in gh stand-in now describes its scope and says an installed GitHub CLI replaces it once on PATH

    found in this entry's text

  255. v2.1.288
    claude project purge is now claude purge

    The purge command moved from claude project purge to claude purge; the old name still works but prints a deprecation notice

    found in this entry's text

  256. v2.1.288
    Claude Code recognises CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT

    A CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT environment variable now sits beside the existing variables that relax rm prompts

    found in this entry's text

  257. v2.1.288
    Claude Code's stand-in for gh can reach any GitHub Enterprise host

    When ghesHosts is "any", Claude Code's stand-in gh script reaches github.com or whichever GitHub Enterprise host a command names

    found in this entry's text

  258. v2.1.288
    The footer's frame item opens /artifacts, and usage-limit notices can mention a paused workflow

    Choosing the frame item in the footer now runs /artifacts, and usage-limit notices have room for a paused-workflow message

    found in this entry's text

  259. v2.1.288
    New CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT switch for inline shell deletions

    Setting CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT skips a new permission check for rm in inline shell scripts

    found in this entry's text

  260. v2.1.288
    Plugins get a ui.selection operation and stricter checks on signed-in web requests

    Plugins gain a ui.selection operation, web requests now carry a plugin storage id, and signed-in requests get an extra check before sending

    found in this entry's text

  261. v2.1.288
    claude mcp serve now offers your custom subagents

    Programs connected through claude mcp serve can now see and use your subagent types through the Agent tool

    found in this entry's text

  262. v2.1.288
    Resuming into a new conversation waits for a queued /clear to apply

    When resuming starts a fresh conversation, Claude Code waits for a queued /clear before linking back to the old one, or reports that it never applied

    found in this entry's text

  263. v2.1.288
    claude mcp serve now takes --strict-mcp-config into account

    Running claude mcp serve now passes the --strict-mcp-config option along before the server starts

    found in this entry's text

  264. v2.1.288
    Clearer reason when a timeout or env option can't be checked

    Permission explanations for commands wrapped in timeout or env now name the exact option that can't be checked before it runs

    found in this entry's text

  265. v2.1.288
    PreToolUse hook ask decisions can now be marked as held

    When a PreToolUse hook's ask decision is held for a call the server handles, the result now says so

    found in this entry's text

  266. v2.1.288
    Built-in gh in proxied sessions works with GitHub Enterprise and explains its errors

    The built-in gh now accepts any GitHub Enterprise host and suggests a gh api command when a subcommand is unsupported

    found in this entry's text

  267. v2.1.288
    /teleport in a cloud session now tells you how to continue locally

    Typing /teleport or /tp in a cloud session now shows the claude --teleport command to run on your own machine

    found in this entry's text

  268. v2.1.288
    Documents that need a newer Claude Code now tell you to run claude update

    A document that needs a newer Claude Code now fails with a message naming the versions and telling you to run claude update

    found in this entry's text

  269. v2.1.288
    Auto mode ignores an excluded model set in ANTHROPIC_DEFAULT_SONNET_MODEL

    If ANTHROPIC_DEFAULT_SONNET_MODEL names an excluded model, auto mode's classifier uses the Sonnet 5 default and logs the reason once

    found in this entry's text

  270. v2.1.288
    The /restart command refuses remote and untyped requests

    The restart command now refuses when a non-owner calls it over Remote Control or when it was not typed at the prompt

    found in this entry's text

  271. v2.1.288
    A new githubCli field appears in Claude Code's internal field list

    A field named githubCli now sits next to the scratchpad directory field in an internal list, with no visible effect described yet

    found in this entry's text

  272. v2.1.288
    How remote sessions set up their stand-in gh command

    In remote sessions, the stand-in gh command now gets its own folder per session, is skipped in some cases and cleans itself up

    found in this entry's text

  273. v2.1.288
    Permission answers can no longer add exception rules starting with !

    Deny or ask rules arriving in an answer to a permission request are now dropped with a warning if they start with !

    found in this entry's text

  274. v2.1.288
    Cloud sessions now say --permission-mode sets their permission mode

    The cloud session message now says the permission mode is not inherited and is set by --permission-mode, not taken from the repository's settings

    found in this entry's text

  275. v2.1.288
    The /loop wake-up tool is now always available to Claude

    The tool that schedules when a session resumes is now loaded at the start instead of found through tool search

    found in this entry's text

  276. v2.1.288
    Claude Code asks before running rm hidden inside a sh -c script

    Commands that run rm inside a bash -c, sh -c or zsh -c script now ask for approval when the target can't be checked

    found in this entry's text

  277. v2.1.287
    New CLAUDE_CODE_CCR_SKIP_FRESH_MIGRATIONS skips setup steps for fresh cloud configs

    Setting CLAUDE_CODE_CCR_SKIP_FRESH_MIGRATIONS lets a remote session with an untouched config skip Claude Code's startup migrations

    found in this entry's text

  278. v2.1.287
    Sessions without the GitHub CLI get a built-in gh api replacement

    When the GitHub CLI is missing, Claude Code can supply its own limited gh that runs gh api REST calls through the session's GitHub proxy

    found in this entry's text

  279. v2.1.287
    /context in hosted sessions leaves out the message breakdown

    In hosted sessions, /context no longer includes the breakdown of context use by message

    found in this entry's text

  280. v2.1.287
    plugin install --replace explains that it needs a full plugin id

    Running plugin install --replace without a name@marketplace id now says that id is needed and that nothing was installed

    found in this entry's text

  281. v2.1.287
    Plugin commands include a directory option for the Anthropic Directory

    The plugin command menu has a new directory option that searches the Anthropic Directory in Discover

    found in this entry's text

  282. v2.1.287
    Setting alwaysLoad to false on an MCP server now holds back all of its tools

    An MCP server configured with alwaysLoad set to false is now marked as holding back every one of its tools

    found in this entry's text

  283. v2.1.287
    Relaunching after /update keeps the conversation when the last reply wasn't saved

    If Claude's last reply could not be saved, relaunching after /update now resumes the conversation instead of starting a fresh one

    found in this entry's text

  284. v2.1.287
    Admins can set CLAUDE_CODE_TRANSCRIPT_LOCAL_GC through managed policy

    CLAUDE_CODE_TRANSCRIPT_LOCAL_GC, which turns on local transcript clean-up, is now accepted from managed policy settings

    found in this entry's text

  285. v2.1.287
    Claude Code recognises --cloud used with --attach-serve when loading settings

    Starting with --cloud or --remote plus --attach-serve, and without -p, now changes how some settings sources are treated

    found in this entry's text

  286. v2.1.287
    Shorter warnings about hooks in claude --cloud sessions

    Warnings about outdated, local-only or edited hooks in claude --cloud sessions are now shorter

    found in this entry's text

  287. v2.1.287
    Clearer message when a timeout command can't be checked

    The message for a timeout command that can't be checked ahead of time now reads as a plain sentence

    found in this entry's text

  288. v2.1.287
    Choosing Fable in the model picker now always saves fable

    Picking Fable in the model picker now always stores the short name fable instead of whatever full model name was passed in

    found in this entry's text

  289. v2.1.287
    CLAUDE.md nested loading and an --environment error message reworked

    The code that loads nested CLAUDE.md files was simplified, and the error for combining --environment with --cloud is now built in parts

    found in this entry's text

  290. v2.1.287
    Claude Code stops setting CLAUDE_CODE_ENABLE_FUNCTION_HOOKS for processes it starts

    CLAUDE_CODE_ENABLE_FUNCTION_HOOKS is no longer added to child processes, and the function hooks check no longer reads it directly

    found in this entry's text

  291. v2.1.287
    Claude is told when gh is a limited built-in stand-in

    If no GitHub CLI is installed, Claude is now told that gh is a built-in stand-in that only supports gh api

    found in this entry's text

  292. v2.1.287
    Self-hosted runners now pass the full /remote setup to session git rules

    On self-hosted runners, session token updates now use the whole /remote setup and can add fetch rules for direct upstream repositories

    found in this entry's text

  293. v2.1.287
    Cloud hook error now tells you how to fix it with CLAUDE_CODE_TMPDIR

    When a cloud session cannot store a verified hook copy safely, the error now explains what is blocked and suggests setting CLAUDE_CODE_TMPDIR

    found in this entry's text

  294. v2.1.287
    The alwaysLoad description now explains what setting it to false does

    The alwaysLoad MCP server option now says that false keeps all its tools behind tool search and only true delays startup

    found in this entry's text

  295. v2.1.287
    The --add-dir rejection message now names the session's working directory

    A directory outside the allowed area is now rejected with wording about the session's working directory instead of "cwd"

    found in this entry's text

  296. v2.1.287
    /plugin now shows whether this machine's hooks run in cloud sessions

    /plugin now shows whether hooks from this machine run in cloud sessions, and project environment variables are flagged as not applied there

    found in this entry's text

  297. v2.1.287
    /hooks explains hooks that are not registered right now

    /hooks can now mark a hook as not registered right now and tell you to reopen /hooks to check again

    found in this entry's text

  298. v2.1.287
    Marketplace source mismatch errors now name extraKnownMarketplaces

    A marketplace whose source does not match its settings entry now gets an error naming extraKnownMarketplaces, and the env check is reworded

    found in this entry's text

  299. v2.1.287
    gh works in governed remote sessions even when it is not installed

    Remote sessions with governed git now get a stand-in for the GitHub gh command when gh is not installed

    found in this entry's text

  300. v2.1.287
    cleanupPeriodDays now also clears old files in .claude/state/served-calls

    Claude Code now deletes old files under .claude/state/served-calls after the number of days set by cleanupPeriodDays

    found in this entry's text

  301. v2.1.287
    --cloud stops early when it would need a keyboard it can't read

    If --cloud would open a session in your terminal but there is no keyboard to read from, Claude Code now exits with an error before creating it

    found in this entry's text

  302. v2.1.287
    Plugin error message no longer points to /plugin-types

    When a skill folder can't be written, the error now points to type files inside the plugin rather than to /plugin-types

    found in this entry's text

  303. v2.1.286
    CLAUDE_CODE_AUTO_MODE_TIER forces the strict auto mode tier

    Setting CLAUDE_CODE_AUTO_MODE_TIER to any value, even "full", makes Claude Code use the "strict" auto mode tier

    found in this entry's text

  304. v2.1.286
    New CLAUDE_CODE_AUTO_MODE_TIER variable is passed along with other settings

    When CLAUDE_CODE_AUTO_MODE_TIER is set, Claude Code includes it in the list of environment settings it builds for commands it prepares

    found in this entry's text

  305. v2.1.286
    New CLAUDE_CODE_CONFIG_PROBE variable skips two startup steps

    When the CLAUDE_CODE_CONFIG_PROBE environment variable is set, Claude Code skips two of the routines it normally runs at startup

    found in this entry's text

  306. v2.1.286
    /compact, /clear and /rewind ask to confirm inside an agent view

    Typing /compact, /clear or /rewind while viewing an agent now asks you to confirm running it on the main conversation

    found in this entry's text

  307. v2.1.286
    Plugin hook if conditions now match differently for some plugins

    A hook's if condition now checks whether a command hook comes from a plugin that is specially marked, which can change what the condition matches

    found in this entry's text

  308. v2.1.286
    /plugin-types no longer shows in the command list

    The /plugin-types command is now hidden from command listings but still exists

    found in this entry's text

  309. v2.1.286
    Hidden --resolve-only option checks for a duplicate plugin marketplace

    A hidden --resolve-only option for marketplace add --from-link reports an existing matching marketplace without adding anything

    found in this entry's text

  310. v2.1.286
    SDK control request list gains send_task_message

    A request named send_task_message joins interrupt and stop_task in Claude Code's list of control requests

    found in this entry's text

  311. v2.1.286
    CLAUDE_CHROME_TAB_GROUP_KEY is used only in remote sessions and then cleared

    Claude Code now keeps CLAUDE_CHROME_TAB_GROUP_KEY only in remote sessions and removes it so programs it starts do not inherit it

    found in this entry's text

  312. v2.1.286
    Change to how servers from --mcp-config are connected

    Connecting MCP servers loaded with --mcp-config now accepts two new internal options that can skip the step for servers not marked required

    found in this entry's text

  313. v2.1.286
    Enabling, disabling and uninstalling plugins in /plugin is now recorded

    Actions in the /plugin menu now record which plugin was enabled, disabled or uninstalled and in which scope

    found in this entry's text

  314. v2.1.286
    CLAUDE_DISABLE_ADOPT now covers more handoff checks

    Setting CLAUDE_DISABLE_ADOPT now turns off handoff behaviour in several more places, including background exit and agent checks

    found in this entry's text

  315. v2.1.286
    New --resolve-only option only works together with --from-link

    A command that opens or connects to sessions has a new --resolve-only option that is refused unless --from-link is also given

    found in this entry's text

  316. v2.1.286
    Marketplace trust errors now point to extraKnownMarketplaces

    When a plugin marketplace fails a trust check, the suggested fix now names the extraKnownMarketplaces setting

    found in this entry's text

  317. v2.1.286
    Plugins cannot add tools while they run in --bare sessions

    In --bare sessions, a plugin that tries to register a tool while running is now refused with an error

    found in this entry's text

  318. v2.1.286
    Reworded description of when set_max_thinking_tokens fails on other providers

    The set_max_thinking_tokens description now names the other providers where it fails in different words; only the wording changed

    found in this entry's text

  319. v2.1.286
    /model can now refuse a switch or ask you to confirm it

    /model now runs a check first that can block a model switch with a message or ask for extra confirmation, sometimes with a reason

    found in this entry's text

  320. v2.1.286
    CLAUDE_CODE_ENABLE_CFC no longer forces Claude in Chrome on in every case

    Claude in Chrome is now off in one more situation, and setting CLAUDE_CODE_ENABLE_CFC does not turn it back on there

    found in this entry's text

  321. v2.1.286
    Git marketplace sources now drop skipLfs alongside sparsePaths

    Claude Code now strips skipLfs as well as sparsePaths from github and git marketplace sources, and plugin MCP loading takes a new filter

    found in this entry's text

  322. v2.1.286
    Clearer wording on which permission rules claude --cloud sends

    The claude --cloud settings-sync text now says it sends your portable permission rules and shows on each launch whether they were sent

    found in this entry's text

  323. v2.1.285
    claude plugin list --json can report plugin data folder sizes

    With --json, claude plugin list accepts --data-size to report how big a plugin's data folder is, and lists more details per plugin

    found in this entry's text

  324. v2.1.285
    Cloud sessions no longer sync or seed your folder, and CLAUDE_CODE_DIR_SYNC_ENGINE is ignored

    Starting a cloud session no longer uses folder sync or seeding, CLAUDE_CODE_DIR_SYNC_ENGINE is not read, and bundle upload remains

    found in this entry's text

  325. v2.1.285
    New --desktop option opens a session in the Claude Desktop app

    claude --desktop opens the session in the Claude Desktop app instead of the terminal, and works with --continue or --resume

    found in this entry's text

  326. v2.1.285
    Open the Claude Desktop app from the terminal with claude --desktop

    The new claude --desktop flag opens the Claude Desktop app, and can resume a session there with --continue or --resume

    found in this entry's text

  327. v2.1.285
    Set a plugin's options from a script with claude plugin configure

    New claude plugin configure <plugin> shows a plugin's options, or saves values piped in as JSON with --values-stdin

    found in this entry's text

  328. v2.1.285
    Workflow scripts can append to a session with $.session.append

    Workflow scripts gain $.session.append, which appends to a session without sending a turn, next to the existing send

    found in this entry's text

  329. v2.1.285
    Effort picker shows high as Recommended, and claude-sonnet-5 is listed with high effort

    The high effort option is now labelled Recommended instead of Default, and the model list includes claude-sonnet-5 set to high effort

    found in this entry's text

  330. v2.1.285
    New plugin test command runs a mod's tests

    A new plugin test [dir] command runs a mod's tests, marked as early access

    found in this entry's text

  331. v2.1.285
    Organization policy limits recheck when the claude ssh credential changes

    Policy limits now refetch or hold back some settings when the credential supplied by the claude ssh launcher changes

    found in this entry's text

  332. v2.1.285
    /memory can turn auto memory on or off for just this session

    /memory gains a session-only auto memory toggle and new refusals, and its Account memory line is removed

    found in this entry's text

  333. v2.1.285
    plugin install --config can now set options for a plugin's bundled MCP servers

    plugin install --config now accepts server.key values for a plugin's bundled MCP servers, and lists unset options after installing

    found in this entry's text

  334. v2.1.285
    CLAUDE_CODE_LEGACY_BUNDLE dropped from a list of cloud bundling variables

    One list of bundling environment variables now holds only CCR_ENABLE_BUNDLE and CCR_FORCE_BUNDLE

    found in this entry's text

  335. v2.1.285
    Folder-only ignore rules like dir/ now match the folder itself

    Ignore rules written for folders, such as dir/, now match that folder, because Claude Code checks folders with a trailing slash

    found in this entry's text

  336. v2.1.285
    /model in a cloud session waits for the session to be ready

    In a cloud session, /model now waits for the cloud session to start before loading models, instead of timing out or falling back

    found in this entry's text

  337. v2.1.285
    CLAUDE_CODE_SKIP_AWS_CRED_CACHE no longer turns off one AWS credential step

    Claude Code's AWS client now always uses its credential provider chain step, even when CLAUDE_CODE_SKIP_AWS_CRED_CACHE is set

    found in this entry's text

  338. v2.1.285
    Shell commands with a heredoc <<- split across lines are now rejected

    Claude Code's shell parser now refuses a heredoc - that only sits next to << because two lines were joined

    found in this entry's text

  339. v2.1.285
    Small changes to sandbox status, the gateway and claude daemon

    Sandbox status accounts for another fallback case, the gateway rejects some keys, and claude daemon gains a --[no-]chrome option

    found in this entry's text

  340. v2.1.285
    Environment workers reject unrestrictedPaths and sync session memory

    The bundled environment worker now errors on unrestrictedPaths, syncs session memory stores and takes a per-item ANTHROPIC_WORK_SECRET

    found in this entry's text

  341. v2.1.285
    claude mcp get processes each output line before printing

    claude mcp get now passes each line of its output through an extra step and detects local servers differently

    found in this entry's text

  342. v2.1.285
    --config pairs without a key are rejected with an error

    The --config KEY=VALUE handling accepts the option more than once and stops with an error when a pair has no key

    found in this entry's text

  343. v2.1.285
    Auto-compact line in /context rewritten

    The auto-compact window line in /context is built a different way, so its wording may differ slightly

    found in this entry's text

  344. v2.1.285
    --desktop rejects subcommands, and SDK sign-in checks allowed providers

    Claude Code refuses --desktop alongside a subcommand, and blocks SDK sign-in when managed settings do not allow the Anthropic API

    found in this entry's text

  345. v2.1.285
    The sandbox check for disableNoSandbox gains an extra condition

    A sandbox check can now pass on a new condition before it looks at the disableNoSandbox setting

    found in this entry's text

  346. v2.1.285
    Tools offered through mcp serve can apply permissions and refuse calls

    When Claude Code runs as an MCP server, tool calls can now carry permission settings and be refused with a message

    found in this entry's text

  347. v2.1.285
    MCP servers can keep individual tools deferred even when alwaysLoad is set

    With alwaysLoad on, a tool an MCP server marks with anthropic/alwaysLoad set to false now still waits behind tool search

    found in this entry's text

  348. v2.1.285
    Gateway's Bedrock connection ignores CLAUDE_CODE_SKIP_AWS_CRED_CACHE

    The gateway's Bedrock connection now always uses the AWS credential lookup, even when CLAUDE_CODE_SKIP_AWS_CRED_CACHE is set

    found in this entry's text

  349. v2.1.285
    /pause-memory may now be hidden in some sessions

    /pause-memory now shows only in some sessions, and its message says whether memory can be turned back on

    found in this entry's text

  350. v2.1.285
    compactBeforeNextTurn can't be used alongside a compaction edit

    An error now stops compactBeforeNextTurn from being used while context_management has a compaction edit

    found in this entry's text

  351. v2.1.284
    Proxy sign-in from proxyAuthHelper is now sent on more connections

    The proxy sign-in header produced by proxyAuthHelper is now also attached to connections made through Claude Code's other proxy route

    found in this entry's text

  352. v2.1.284
    /design drops its design canvas mode, and Claude can no longer run it on its own

    /design no longer has a canvas mode, and Claude can no longer start the command by itself

    found in this entry's text

  353. v2.1.284
    /mcp reconnect all reconnects every MCP server from the interactive view

    /mcp reconnect all now reconnects every MCP server in the interactive terminal and reports how many came back

    found in this entry's text

  354. v2.1.284
    /effort no longer starts on ultracode when you open it

    The /effort picker no longer jumps to ultracode as its first selection when ultracode is on

    found in this entry's text

  355. v2.1.284
    Sonnet 5.5 added and made the default for the sonnet model name

    Sonnet 5.5 (claude-sonnet-5-5) is now in the model list and is what sonnet picks when using Anthropic directly

    found in this entry's text

  356. v2.1.284
    Dashboard artifact template and the /design canvas option are gone

    The dashboard artifact template and the canvas option of /design have been removed; report, data-table and explainer templates remain

    found in this entry's text

  357. v2.1.284
    New CLAUDE_CODE_WHIMSICAL_ELEPHANT variable overrides a multi-agent reminder feature

    A new environment variable, CLAUDE_CODE_WHIMSICAL_ELEPHANT, overrides the remote switch for a reminder tag on turns passed between agents

    found in this entry's text

  358. v2.1.284
    /model lists Sonnet 5 as the previous Sonnet version

    The /model picker now includes a Sonnet 5 row, labelled Previous Sonnet version, when that model is available to you

    found in this entry's text

  359. v2.1.284
    /rate-limit-options now shows up in the command list

    /rate-limit-options is no longer hidden from the command list and is now described as "Manage usage limits and upgrade options"

    found in this entry's text

  360. v2.1.284
    subagentStatusLine command is skipped when the status line is switched off

    Claude Code no longer runs your subagentStatusLine command when its restricted-mode check has turned off the statusLine feature

    found in this entry's text

  361. v2.1.284
    /auto-mode-setup checks you are signed in before it scans your environment

    /auto-mode-setup now checks your login first and tells you to run /login if it has expired or you are not signed in

    found in this entry's text

  362. v2.1.284
    Hidden --from-link option for adding a marketplace from an install link

    claude plugin marketplace add has a hidden --from-link option that adds a marketplace as an install link does and prints one JSON line

    found in this entry's text

  363. v2.1.284
    Finding the sandbox runtime no longer runs npm root -g on the spot

    The step that looks for the sandbox runtime package no longer runs npm root -g itself and waits up to 5 seconds for it

    found in this entry's text

  364. v2.1.284
    /autofix-pr can step aside when PR Steward already looks after a pull request

    /autofix-pr can now refuse a pull request that PR Steward is watching or working on, so two agents don't push to it at once

    found in this entry's text

  365. v2.1.284
    Declining a mod reload tells Claude what /reload-plugins really does

    When you decline reloading a mod, Claude is told it loads at the next session start and that /reload-plugins only reloads mods loaded at start

    found in this entry's text

  366. v2.1.284
    claude plugin eval ignores keys pressed too early at its trust question

    The "Trust this plugin directory?" question from claude plugin eval now ignores answers typed too quickly and asks again

    found in this entry's text

  367. v2.1.284
    --channels still matches built-in plugins after they are renamed

    --channels now also accepts a built-in plugin's new name after a rename, and plugin telemetry records the previous name

    found in this entry's text

  368. v2.1.284
    Built-in plugins in enabledPlugins are matched regardless of letter case

    An enabledPlugins entry for a built-in plugin now takes effect even if its name differs from the plugin's only in upper or lower case

    found in this entry's text

  369. v2.1.284
    /mcp reconnect all now reconnects every server that needs it

    Running /mcp reconnect all now reconnects every disconnected MCP server and reports how many came back

    found in this entry's text

  370. v2.1.284
    Scripts using claude -p get a local command's exit code

    In -p mode with text or json output, Claude Code now exits with the exit code a local slash command reported, instead of always 0

    found in this entry's text

  371. v2.1.284
    Plugin bin folders are added to PATH only if they exist

    Claude Code now checks each plugin bin folder exists before adding it to PATH, and leaves out ones that are missing

    found in this entry's text

  372. v2.1.284
    Staying connected to a cloud session from --cloud can be switched on by a new remote setting

    Staying attached to a cloud session started with --cloud can now also be turned on remotely, and the offer to sync files hangs on its own switch

    found in this entry's text

  373. v2.1.284
    --model help text no longer gives an example full model name

    The help text for --model now ends with "or a model's full name." and no longer shows an example full model name

    found in this entry's text

  374. v2.1.284
    Self-paced /loop runs confirm and re-arm in a different order

    The instructions Claude follows when /loop paces itself were rebuilt, changing when it confirms, how it re-arms and what it says on stopping

    found in this entry's text

  375. v2.1.284
    /loop has most models schedule the next run before confirming

    When /loop paces itself, most models are now told to decide and schedule the next run first and write their confirmation afterwards

    found in this entry's text

  376. v2.1.284
    Artifact database writes to existing documents now require if_version

    Claude is now told that writing to an existing artifact database document is refused without if_version, and a read-only view level is added

    found in this entry's text

  377. v2.1.284
    The opusplan model setting now gets a much shorter system prompt

    With opusplan, Claude Code now sends Claude a compact system prompt with a short Harness section and a condensed memory guide

    found in this entry's text

  378. v2.1.284
    claude remote-control --help now describes the trust prompt and worktree needs

    The claude remote-control help no longer says to run claude first to trust a folder, and notes what worktree mode needs

    found in this entry's text

  379. v2.1.284
    claude --cloud explains what uploads when some files were withheld from sync

    When a cloud session cannot start and files were withheld from sync, claude --cloud now explains what the no-sync fallback would upload

    found in this entry's text

  380. v2.1.284
    claude mcp add is refused when managed settings allow only plugin MCP servers

    If managed settings restrict MCP servers to plugins, claude mcp add now stops with an error instead of adding a server that never loads

    found in this entry's text

  381. v2.1.284
    ANTHROPIC_FOUNDRY_RESOURCE must now be a resource name, not a URL

    Without ANTHROPIC_FOUNDRY_BASE_URL, Claude Code rejects a URL or host name in ANTHROPIC_FOUNDRY_RESOURCE with a clear error

    found in this entry's text

  382. v2.1.284
    /memory shows an Account memory status line

    The /memory screen shows an "Account memory" status line, with a note, below the synced project memory line

    found in this entry's text

  383. v2.1.284
    --settings follows links before loading and explains why a file is refused

    A file passed to --settings is resolved through links and case first, and a refused file gets an error naming the path and the reason

    found in this entry's text

  384. v2.1.283
    /doctor prompt-audit reviews your project's instruction files

    /doctor prompt-audit hands off to the bundled claude-api skill to audit CLAUDE.md, rules, skills and other instruction files

    found in this entry's text

  385. v2.1.283
    claude mcp add and claude mcp remove now check that the change was saved

    After adding or removing a user or local MCP server, Claude Code rereads its config file and fails with an error if the change did not stick

    found in this entry's text

  386. v2.1.283
    Tools your organization blocks in /mcp now say why when you select them

    In the /mcp tool list, organization-blocked tools can be highlighted and selected, and then show that your organization disabled them

    found in this entry's text

  387. v2.1.283
    New --client-data-url flag loads a signed configuration for your model

    --client-data-url or CLAUDE_CODE_CLIENT_DATA_URL loads a signed per-model configuration from Anthropic, and Claude Code will not start if it fails

    found in this entry's text

  388. v2.1.283
    Keybinding help now treats cmd as its own key, separate from meta

    The keybinding reference now says meta is the alt key and cmd is a separate modifier most terminals never send, with a 3-second chord timeout

    found in this entry's text

  389. v2.1.283
    Skill text can use a ${CLAUDE_DEV_MODS_DIR} placeholder for a live session folder

    Claude Code replaces ${CLAUDE_DEV_MODS_DIR} in skill text with a per-session folder and starts watching it for plugin changes

    found in this entry's text

  390. v2.1.283
    Results from background commands can arrive through a GetTask tool

    A GetTask tool that reports the state of a background shell command is built in but off unless switched on remotely

    found in this entry's text

  391. v2.1.283
    --system-prompt and --system-prompt-file can now be used together

    Passing both --system-prompt and --system-prompt-file no longer stops Claude Code from starting; the two are combined

    found in this entry's text

  392. v2.1.283
    /memory settings are now a list of toggles

    In /memory, Auto-memory, Auto-dream and synced project memory are now toggles in a list above the memory file picker

    found in this entry's text

  393. v2.1.283
    claude --remote can now offer this machine's tools to the cloud session

    When claude --remote starts a cloud session and stays attached, it can now make tools on your own machine available to that session

    found in this entry's text

  394. v2.1.283
    The name result_from is escaped in transcripts when remote tools are forwarded

    With CLAUDE_CODE_REMOTE_TOOLS_FORWARD on, a key named result_from in transcript content is now wrapped in brackets like other reserved names

    found in this entry's text

  395. v2.1.283
    Subagents now get a memory note, which CLAUDE_CODE_MEMORY_SUBAGENT_APPEND turns off

    Subagents that share context now get a memory note added to their instructions; setting CLAUDE_CODE_MEMORY_SUBAGENT_APPEND stops it

    found in this entry's text

  396. v2.1.283
    --remote can ask before sharing local MCP servers or serving tools unattended

    An attached --remote session can now ask whether to share your local MCP servers, and ask again before serving tools in auto or bypass mode

    found in this entry's text

  397. v2.1.283
    /loop treats a folder named loop.md as no file

    /loop now ignores a folder called loop.md and handles project and user loop.md files in the same way

    found in this entry's text

  398. v2.1.283
    Help for claude daemon lists commands to manage Remote Control servers

    claude daemon help can now list remote-control list, add and remove, and worker status reports the folder being served

    found in this entry's text

  399. v2.1.283
    /context lists MCP server instructions as their own category

    The /context breakdown now shows how much of the context MCP server instructions take up, next to MCP tools

    found in this entry's text

  400. v2.1.283
    /status shows a Client data entry when client data is loaded

    The part of /status that lists where your settings come from now includes a Client data entry whenever a client-data document is loaded

    found in this entry's text

  401. v2.1.283
    claude plugin eval now needs git 2.31 or newer

    claude plugin eval now checks your git version and refuses to run with git older than 2.31

    found in this entry's text

  402. v2.1.283
    Post-turn memory config accepts a role_line_scan setting

    CLAUDE_CODE_POST_TURN_MEMORY_CONFIG now reads a role_line_scan setting with three options, and hosted use checks it against its own rules

    found in this entry's text

  403. v2.1.283
    CLAUDE_CODE_GB_BASE_URL gets the same settings checks as the proxy variables

    CLAUDE_CODE_GB_BASE_URL joins the proxy, certificate and bridge variables that Claude Code checks when it cleans a settings file

    found in this entry's text

  404. v2.1.283
    DISABLE_PROMPT_CACHING_HAIKU now matches your configured Haiku model

    DISABLE_PROMPT_CACHING_HAIKU now also turns off caching for any request whose model resolves to the configured Haiku model

    found in this entry's text

  405. v2.1.283
    claude plugin list tells you when your plugin records were rebuilt or cleaned up

    claude plugin list now prints a note when installed_plugins.json was rebuilt or had unusable entries removed, and says where the old data is

    found in this entry's text

  406. v2.1.283
    claude plugin init warns about names it cannot record instead of failing

    The check at the end of claude plugin init now warns, rather than failing, when a name cannot be recorded

    found in this entry's text

  407. v2.1.283
    The /hooks matcher list shows sources, matcher and hook count in columns

    Each matcher in the /hooks menu now shows a dimmed source badge, the matcher or "(all)", and its hook count as separate parts of a list row

    found in this entry's text

  408. v2.1.283
    /mcp no longer claims no servers are configured when some were refused for a reserved name

    MCP servers refused because their name is reserved no longer leave /mcp showing "No MCP servers configured"

    found in this entry's text

  409. v2.1.283
    claude daemon remote-control now checked separately from other daemon commands

    The remote-control daemon subcommand now has its own availability check, while list, scheduled and hub remain unavailable

    found in this entry's text

  410. v2.1.283
    One proxy lookup no longer reads HTTP_PROXY

    A proxy lookup now checks HTTPS_PROXY, then ALL_PROXY, then git's system proxy, and ignores HTTP_PROXY for every address

    found in this entry's text

  411. v2.1.283
    On Windows, cloud-session uploads need a real git.exe and say so when missing

    On Windows, cloud-session uploads now skip git.cmd and git.bat wrappers and explain why git was not found

    found in this entry's text

  412. v2.1.283
    remote-control server can now stop earlier with a reason

    The remote control server command now runs an extra check before its folder trust check and can exit with that check's reason

    found in this entry's text

  413. v2.1.283
    --remote now tells you when the directory sync offer was put off

    If a --remote session's directory sync offer is deferred because its anchor is unavailable, you now see a warning instead of nothing

    found in this entry's text

  414. v2.1.283
    HTML preview check notes when a page calls window.claude.use()

    The HTML preview's health check now records which names a page asks for through window.claude.use()

    found in this entry's text

  415. v2.1.282
    New maxProseWidth setting caps how wide Claude's text replies run

    Set maxProseWidth to wrap paragraphs, headings, lists and quotes at a fixed column width while code and tables keep the full terminal width

    found in this entry's text

  416. v2.1.282
    Startup tip about dynamic workflows and ultracode removed

    The startup tip pointing users to dynamic workflows and the ultracode keyword no longer appears

    found in this entry's text

  417. v2.1.282
    /artifacts panel works out actions per artifact and adds an actions menu

    In /artifacts, each row's actions now follow that artifact's own permissions, and accessibility mode opens an "Actions for …" menu

    found in this entry's text

  418. v2.1.282
    claude remote-control help now lists the --[no-]chrome option

    The help text for claude remote-control now documents --[no-]chrome, which the command already accepted

    found in this entry's text

  419. v2.1.282
    claude doctor no longer checks strictPluginOnlyCustomization in managed settings

    claude doctor has stopped warning about invalid or unrecognized strictPluginOnlyCustomization values in managed-settings.json

    found in this entry's text

  420. v2.1.282
    Bash permission rules with :* in the middle no longer fail to load

    Bash permission rules like Bash(foo:bar), with : not at the end, are no longer rejected as invalid

    found in this entry's text

  421. v2.1.282
    claude.ai connector error no longer suggests /mcp in some sessions

    The error for a claude.ai connector that needs connecting now leaves out the /mcp hint in some kinds of session

    found in this entry's text

  422. v2.1.282
    Vim mode: counted line commands like 3dd do nothing on the last line

    In vim mode, a line command with a count above one, such as 3dd, now does nothing when the cursor is on the last line, as in Vim

    found in this entry's text

  423. v2.1.282
    An empty strictKnownMarketplaces list now counts as a restriction

    Setting strictKnownMarketplaces to an empty list is now treated as a restriction in force, like other managed allowlists

    found in this entry's text

  424. v2.1.282
    Managed-only permission rules now also cover skills' allowed-tools lists

    With allowManagedPermissionRulesOnly on, user and project skills and commands can no longer grant themselves tools through allowed-tools

    found in this entry's text

  425. v2.1.282
    /install-github-app can be stopped part-way and lists what it already did

    Pressing Esc during /install-github-app now stops after the current step and reports which steps were already completed in the repository

    found in this entry's text

  426. v2.1.282
    Vim r with a count no longer overwrites past the end of the line

    In Vim mode, a counted r such as 5rx near the end of a line now does nothing instead of overwriting the line break

    found in this entry's text

  427. v2.1.282
    /status explains when only managed permission rules apply

    When an organisation limits permission rules to managed settings, /status now shows a row listing any allowed tools that were ignored

    found in this entry's text

  428. v2.1.282
    The Agents view section of /config now uses toggles

    In /config, the Agents view submenu now shows toggles that change each setting directly instead of a list you pick from

    found in this entry's text

  429. v2.1.282
    claude --cloud refuses repositories that could steer file sync's git

    Cloud file sync now refuses repos with a symbolic link inside .git, or git settings forced by a settings file in the repo

    found in this entry's text

  430. v2.1.282
    Synced skills are now tagged with a class, and skillOverrides handles them more carefully

    Skills synced to your account now carry a class, defaulting to account, and skillOverrides checks several keys per synced skill

    found in this entry's text

  431. v2.1.282
    claude remote-control accepts --debug and -d instead of failing

    claude remote-control no longer stops with an unknown-argument error when given --debug, -d or --debug=…

    found in this entry's text

  432. v2.1.282
    Vim mode's . repeat now accepts a count

    In vim mode, typing a number before ., such as 3., now passes that count to the repeat instead of ignoring it

    found in this entry's text

  433. v2.1.282
    prompt.fill now says why it did not fill the prompt

    Plugin hooks calling prompt.fill now get a refusal reason such as "dialog" or "no_composer" when the prompt was not filled

    found in this entry's text

  434. v2.1.282
    /focus is now listed on hosted sessions

    The /focus command is now marked to be advertised on hosted sessions, where before it was not

    found in this entry's text

  435. v2.1.282
    Settings skill stops sending you to /hooks where that menu is missing

    When the /hooks menu is not available, the settings skill now tells you to start a new session or check the settings file instead

    found in this entry's text

  436. v2.1.282
    Warnings for permission rules that mix with :

    Permission rules that combine with the : prefix form, or put :* mid-rule, now come with a warning explaining how they match

    found in this entry's text

  437. v2.1.281
    Artifact tool: new read_db profiles lookup that turns user ids into display names

    The Artifact tool's read_db action gains a profiles lookup that turns user ids into display names, treated strictly as data

    found in this entry's text

  438. v2.1.281
    New /focus [on|off] command for non-interactive sessions

    /focus now works in non-interactive sessions and accepts on or off, and interactive /focus explains when fullscreen is needed

    found in this entry's text

  439. v2.1.281
    New bareElicitationCapability MCP server option

    MCP server configs accept a new bareElicitationCapability option that gives the server the plain elicitation capability instead of the legacy URL one

    found in this entry's text

  440. v2.1.281
    Auto-mode classifier option onlyBuiltInContext is read but nothing sets it

    Auto mode's permission classifier has an unused onlyBuiltInContext option; nothing sets it, so behaviour is unchanged

    found in this entry's text

  441. v2.1.281
    New MCP server config key bareElicitationCapability only matters behind legacy elicitation gate (fallback off)

    MCP server configs accept bareElicitationCapability, which only has an effect behind the tengu_mcp_legacy_url_elicitation gate

    found in this entry's text

  442. v2.1.281
    Safety-check permission dialogs can now auto-deny after a timeout (new tengu_splendid_horizon config)

    Safety-check permission dialogs can now deny the request on their own if nobody answers before a timeout runs out

    found in this entry's text

  443. v2.1.281
    Hidden claude -p --cloud headless cloud-print path added, but compiled off

    Code for a headless claude -p --cloud run is added, but the switch that enables it returns false, so no one can use it in 2.1.281

    found in this entry's text

  444. v2.1.281
    Hidden --managed-settings flag added to claude agents and forwarded to dispatched sessions

    claude agents gains a hidden --managed-settings <json> option that is passed on to sessions it starts

    found in this entry's text

  445. v2.1.281
    Model-level tool_use name cap and MCP stdio restart on -32022 protocol-version rejection

    A local MCP server that rejects the protocol version after a timed-out version check is now restarted once without that check

    found in this entry's text

  446. v2.1.281
    New deferred no-op tool request_computer ("Your computer") in CCR remote sessions

    A new do-nothing request_computer tool, labelled "Your computer", tells Claude to use any mcp__remote-devices__ tools to act on your machine

    found in this entry's text

  447. v2.1.281
    CLAUDE_CODE_HOST_GATEWAY_LINEAGE: new env var that marks sessions spawned by a Claude Desktop gateway

    New CLAUDE_CODE_HOST_GATEWAY_LINEAGE variable keeps child processes of a Desktop-hosted gateway session treated as host-managed

    found in this entry's text

  448. v2.1.281
    SDK client now holds control requests and MCP messages until initialize has been written

    The SDK client now waits for initialize to be sent before sending any other request or MCP message

    found in this entry's text

  449. v2.1.281
    /plugin directory now opens the Discover view scoped to the Anthropic plugin directory

    /plugin directory now opens the Discover view limited to the Anthropic plugin directory, with your search already filled in

    found in this entry's text

  450. v2.1.281
    attribution setting accepts true/false

    The attribution setting now accepts true or false, and false hides all attribution

    found in this entry's text

  451. v2.1.281
    claude agents view now honours --settings, --managed-settings and setting sources

    claude agents now applies --settings, --managed-settings and --setting-sources

    found in this entry's text

  452. v2.1.281
    claude -p --cloud stays compiled off; a new check excludes stream-json and SDK-URL runs

    claude -p --cloud stays switched off in this build, and a new check would keep it away from stream-json output and SDK-URL runs

    found in this entry's text

  453. v2.1.281
    tengu_bridge_child_auto_over_settings is now used after being computed and thrown away

    A Remote Control child session's auto mode can now win over the permission mode in settings, when the flag for it is on

    found in this entry's text

  454. v2.1.281
    Error messages for the dark-launched --cloud print mode

    The not-yet-launched --cloud print mode has fixed messages for timeouts, failed starts, archived sessions, pending questions and Ctrl-C

    found in this entry's text

  455. v2.1.281
    --managed-settings is carried through to spawned sessions; --setting-sources is accepted and discarded by one argument parser

    --managed-settings is now passed on to sessions Claude Code starts itself, while one parser reads --setting-sources and throws the value away

    found in this entry's text

  456. v2.1.281
    claude --tmux --worktree passes a sanitized env to tmux, stops parsing at --, and forwards args differently

    claude --tmux --worktree now gives tmux an explicit environment, stops reading its flags at --, and forwards arguments differently

    found in this entry's text

  457. v2.1.281
    Remote Control and remote-tool settings receive remoteToolServingOn

    The Remote Control settings panel now receives a remote tool serving flag, which is always false in this build

    found in this entry's text

  458. v2.1.281
    Session init now reports viewMode and perTurnEffortActive

    The session start message now reports the view mode and a per_turn_effort_active field

    found in this entry's text

  459. v2.1.281
    Cloud file sync: new install_ack pass publishes an install report without uploading

    Cloud file sync gains an install_ack pass that only republishes the install report, without pulling or uploading

    found in this entry's text

  460. v2.1.281
    hasStandingPrompt now only counts published pending actions

    The check for whether a prompt is waiting on you now only counts published pending actions, with one fallback case

    found in this entry's text

  461. v2.1.281
    Hooks modules: $.state.get/set must match a reference found by the static scan

    In hooks modules, $.state.get and $.state.set calls are refused unless their plugin and key match a reference found when the module was scanned

    found in this entry's text

  462. v2.1.281
    Command-sourced plugin version probe reads .version off a record

    Command-sourced plugins now read their recorded version from a record's version field

    found in this entry's text

  463. v2.1.281
    Rejected model validation now marks notAllowed

    A model rejected for not being in the available list is now flagged as not allowed

    found in this entry's text

  464. v2.1.281
    New advisor_stripped attachment when relayed thinking is stripped

    A hidden advisor_stripped marker is added to the conversation when relayed thinking is stripped from a request

    found in this entry's text

  465. v2.1.281
    env and permissions settings schemas are now built lazily

    The env and permissions parts of the settings format are now only prepared the first time they are needed

    found in this entry's text

  466. v2.1.281
    Any ~ in arguments now marks read-only commands as needing approval

    A read-only command with ~ anywhere in its arguments now always needs your approval

    found in this entry's text

  467. v2.1.281
    New declaredToolNames option keeps tool references alive

    A new declaredToolNames option lets more tool references survive when a conversation is assembled

    found in this entry's text

  468. v2.1.281
    Bash rm check now catches $VAR/usr-style targets that become a system directory when the variable is empty

    Claude Code refuses rm commands like rm -rf $VAR/usr that would delete a system folder if the variable were empty

    found in this entry's text

  469. v2.1.281
    Vim G motion removed from this motion table

    The G motion is no longer in one of the vim normal-mode motion tables; ; and , remain

    found in this entry's text

  470. v2.1.281
    Server classifier adds server_thread_unsupported and stops sending requests on a message thread after one refusal

    If the server classifier refuses a request sent on a message thread, the rest of the session sends its requests without a thread

    found in this entry's text

  471. v2.1.281
    lsof -i with a ~ argument now needs permission

    An lsof command using -i followed by an argument containing ~ now asks for permission instead of being auto-approved

    found in this entry's text

  472. v2.1.281
    New otlp_export health telemetry for customer OpenTelemetry exporters

    Claude Code now records whether its OpenTelemetry exports to your own collector succeed or fail, with an error code on failure

    found in this entry's text

  473. v2.1.281
    Headless/SDK: model list reported with an unavailable set; breadcrumbs skipped on launch model pick

    In print mode the model list now includes an unavailable set, and model-switch notes are skipped when the model is picked at launch

    found in this entry's text

  474. v2.1.281
    Helper path validation rejects Windows \??\ prefix

    The helper path check now rejects Windows paths that start with the \??\ prefix

    found in this entry's text

  475. v2.1.281
    git allowlist: --no-lazy-fetch and --no-advice accepted as global options

    Claude Code's git permission checks now recognise --no-lazy-fetch and --no-advice as git global options

    found in this entry's text

  476. v2.1.281
    Empty no-op Se() added in the remote headless client host module

    An empty function was added beside the remote headless client host-request logging code, with no effect

    found in this entry's text

  477. v2.1.281
    Remote session summaries expose pending_action when a session needs input

    Summaries of remote sessions that are waiting on you now name the tool that is waiting

    found in this entry's text

  478. v2.1.280
    MCP servers can now hide tools from the model via _meta.ui.visibility, live and wired

    MCP servers can now hide specific tools from Claude while still showing them to the human in mcp_status

    found in this entry's text

  479. v2.1.280
    New $.ui.copy plugin API for writing to the terminal clipboard

    A new $.ui.copy API lets plugins copy text to the terminal clipboard

    found in this entry's text

  480. v2.1.280
    Plugin/SDK host API: new $.session.send operation

    Plugins and SDK integrations gain a session.send call to message a target by name, agent id, or session/agent address

    found in this entry's text

  481. v2.1.280
    tengu_kairos_ready_nudge no longer treats bare true as full-probability enable

    The kairos ready nudge config no longer treats a bare true value as an automatic full-probability enable

    found in this entry's text

  482. v2.1.280
    sideQuery / API dispatch gains an effort (output_config.effort) parameter with automatic fallback

    Side-query API calls now send an effort setting and automatically retry without it if the model rejects it

    found in this entry's text

  483. v2.1.280
    New ui.copy capability added to the plugin/hooks permission surface

    New ui.copy capability added to the permission list plugins and hooks can request

    found in this entry's text

  484. v2.1.280
    New MCP tool uiMeta passthrough from _meta

    MCP tools can now pass a small ui-related metadata block through to the tool definition

    found in this entry's text

  485. v2.1.280
    Fix: environment-tool detection (ho) now checks its own argument instead of an outer variable

    Fixed a bug where checking for ripgrep/bwrap/socat ignored the actual tool list passed in

    found in this entry's text

  486. v2.1.280
    Plugin $.session.messages and $.session.usage now accept an agentId/as parameter

    Plugin session.messages and session.send can now target a specific agent via an agentId/as parameter

    found in this entry's text

  487. v2.1.280
    New gated check tengu_validated_clover

    A new internal check called tengu_validated_clover appeared in Claude Code's code, but what it does isn't known yet

    found in this entry's text

  488. v2.1.280
    New safety cap blocks bulk rm of synced memory files from Bash

    Claude Code now blocks Bash rm commands that would delete too many synced memory files at once

    found in this entry's text

  489. v2.1.280
    New spawn_arg_limit diagnostic for E2BIG pre-spawn failures

    Pre-spawn failures from argument-list-too-long are now tagged with a specific diagnostic

    found in this entry's text

  490. v2.1.280
    Dead branches in the tool-transcript renderer: hardcoded !1 disables new denial-rewrite logic

    New logic for tracking tool-denial-and-rewrite pairs in the transcript view was added but left disabled by hardcoded constants

    found in this entry's text

  491. v2.1.280
    New tool-result field toolDenialEndsTurn for permission-stop aborts

    Tool results aborted by a permission denial now carry a flag marking them as ending the turn

    found in this entry's text

  492. v2.1.280
    New accountMemory flag on MCP tool descriptors, feeding tool-result telemetry

    MCP tools can now carry an internal 'accountMemory' flag that feeds into tool-result telemetry

    found in this entry's text

  493. v2.1.280
    New handling for a rate_limit_event message type in the SDK/thin-client stream

    SDK/thin-client streams now handle a new 'rate_limit_event' message type with sensitive fields stripped

    found in this entry's text

  494. v2.1.277
    New notices field added to cloud-session SDK stream schema for served-tool consent/status messages

    Cloud session streams gain a 'notices' field for MCP consent, hook status, and tool mute/unmute messages

    found in this entry's text

  495. v2.1.277
    Plugin API doc points to new claude plugin validate command

    Plugin type-generation help now points authors to a new claude plugin validate command

    found in this entry's text

  496. v2.1.277
    New onCancelAsyncMessage callback threaded through Remote Control bridge session setup

    Remote Control session setup now threads through a new callback for cancelling a queued message

    found in this entry's text

  497. v2.1.277
    New sandbox-escape detection heuristics for sandbox.excludedCommands

    New heuristics detect commands trying to escape the sandbox via the excludedCommands allowlist

    found in this entry's text

  498. v2.1.277
    Duplicate-submit guard added to fleet dispatch and fleet reply (sameChunk)

    Fleet dispatch and fleet reply now guard against accidentally sending the same command or reply twice

    found in this entry's text

  499. v2.1.277
    Marketplace settings-source schema defers reserved-name rejection to load time in one code path

    Marketplace 'settings' source schema can defer reserved-name checks to load time instead of at compile time

    found in this entry's text

  500. v2.1.277
    New helper ir() detects wildcard characters in git/URL marketplace source strings

    New helper detects wildcard characters in git or URL marketplace source addresses

    found in this entry's text

  501. v2.1.277
    New logger extension with an explicit level

    A new internal logger extension creates a child logger with an explicit logging level

    found in this entry's text

  502. v2.1.277
    Ultrareview (/review-style remote precondition) now accepts a base commit, not just a branch name

    Remote ultra-review (/code-review ultra) now accepts a base commit, not just a branch name

    found in this entry's text

  503. v2.1.277
    Plugin UI test API $.ui.press now supports non-terminal surfaces

    Plugin test helper $.ui.press can now press buttons on non-terminal surfaces

    found in this entry's text

  504. v2.1.277
    New tool backgrounding field controls detach/self/never execution mode

    Tools gain a backgrounding setting controlling whether they can keep running in the background

    found in this entry's text

  505. v2.1.275
    Cloud sessions by default: plain claude invocations can be silently routed to the cloud

    Plain claude commands can now be silently routed to a cloud session by default under a new flag

    found in this entry's text

  506. v2.1.275
    poll_event now validates the kind format, not just reserved names

    MCP poll_event now rejects malformed kind values, not just reserved names

    found in this entry's text

  507. v2.1.275
    Plugin source loading gains a preview option

    Plugin source loading gains a preview option, off by default

    found in this entry's text

  508. v2.1.275
    Deep-link plugin install commands can be turned off by a new gate, tengu_amber_tollgate

    A new gate can block plugin install links, requiring /plugin install to be typed manually instead

    found in this entry's text

  509. v2.1.275
    file_paths disabled for scripted/SDK callers

    Batch file uploads via file_paths are now blocked when called from a non-interactive script

    found in this entry's text

  510. v2.1.275
    New defaultedToCloud field threaded through session startup config

    Session startup config gains a new defaultedToCloud field

    found in this entry's text

  511. v2.1.275
    Plugin API: ui.log gains a to destination field

    Plugin ui.log gains a to field to route output to the transcript or a debug-only log

    found in this entry's text

  512. v2.1.275
    Plugin test engine now exposes a UI-render client harness (ui.mount/act)

    Plugin test engine used by claude plugin test gains a UI-render test harness with mount/act/release methods

    found in this entry's text

  513. v2.1.275
    Text renderer gains a monochrome prop that strips color

    Text rendering now supports a monochrome mode that strips out color

    found in this entry's text

  514. v2.1.275
    Turn-end event now carries a force flag

    The turn_end lifecycle event now carries a force flag

    found in this entry's text

  515. v2.1.275
    Artifact asset upload retries are now flagged as resent

    Retried artifact file uploads are now explicitly marked as resent in the results

    found in this entry's text

  516. v2.1.275
    New bash risk explanation for env -P

    Claude Code now explains the risk of running env -P with a relative directory

    found in this entry's text

  517. v2.1.275
    New closed-set decision_reason_code field on permission decisions

    New decision_reason_code field distinguishes specific reasons behind a permission decision

    found in this entry's text

  518. v2.1.275
    New docs_unfillable flag surfaces in list_types output

    list_types now flags when a Docs-backed artifact type can't be filled in the current session

    found in this entry's text

  519. v2.1.275
    tool.call hook-event schema gains a measure combinator

    The tool.call hook event gained a 'measure' step that combines context across related events

    found in this entry's text

  520. v2.1.275
    Artifact type descriptions can now resolve from a type_file reference

    Artifact type descriptions can now be resolved from a separate type_file reference instead of inline content

    found in this entry's text

  521. v2.1.275
    UI-message coalescer (DDn) rebuilt with injectable run/schedule/warn hooks

    The UI message batching function was rebuilt to accept swappable run, schedule, and warn functions

    found in this entry's text

  522. v2.1.274
    Git subprocess calls widely switched to a new env-builder ss()/Ji() in place of ko()

    Git subprocess calls widely switched to a new environment-builder in place of the old one

    found in this entry's text

  523. v2.1.274
    Git config include-filtering (-c overrides) reworked into direct call with envPins/pin args

    Git config override-filtering logic reworked to take explicit args and pins instead of returning a result object

    found in this entry's text

  524. v2.1.274
    New Markdown JSX element type added to the terminal UI element SDK

    Plugin and skill terminal UIs can now render a Markdown element with optional clickable links

    found in this entry's text

  525. v2.1.274
    Pasted-content text can be re-tagged with <pasted_content> markers before submission

    Pasted text in a prompt can now be re-tagged with pasted_content markers before sending

    found in this entry's text

  526. v2.1.274
    Escaping team-memory mount-dir check refactored into scope-aware jfn

    Team memory's mount-directory escape check was refactored to dispatch by scope, now including the new account scope

    found in this entry's text

  527. v2.1.274
    Roster-cache freshness check (q7r) similarly appears unused

    A new roster-cache freshness check exists in the code but appears to have no caller

    found in this entry's text

  528. v2.1.274
    New no-op state initializer j4o feeding a context provider

    A new always-null state value was added feeding an internal context provider

    found in this entry's text

  529. v2.1.274
    Branch checkout commands now use -- end-of-options guard

    Branch checkout git commands now add a trailing -- to prevent branch names being misread as options

    found in this entry's text

  530. v2.1.274
    API error responses now carry a machine-readable apiError code

    API error responses now include a machine-readable error code alongside the message

    found in this entry's text

  531. v2.1.274
    New telemetry field arm_source on refusal and API events

    Telemetry for refusals and API success events now records which experiment arm produced the response

    found in this entry's text

  532. v2.1.274
    Internal: session options gain a shared toolCatalog object

    Internal: sessions now pass around a shared toolCatalog object instead of calling tool-lookup functions directly

    found in this entry's text

  533. v2.1.274
    Plugin install/materialize helper gains a preview option

    Plugin install helper gains a preview option, and marketplace installs reuse an already-resolved registry lookup

    found in this entry's text

  534. v2.1.274
    Transcript message components gain isExpanded/origin/messageId props (collapsible messages)

    Transcript messages internally gain expanded/collapsed and origin tracking, hinting at collapsible messages

    found in this entry's text

  535. v2.1.274
    New structured apiError codes attached to rate-limit/format error responses

    API error responses now carry structured error codes like pdf_too_large alongside plain-text messages

    found in this entry's text

  536. v2.1.273
    Tool-preset exclusion syntax (!ToolName) gated by a new killswitch

    Tool presets can now exclude specific tools with a '!ToolName' syntax

    found in this entry's text

  537. v2.1.273
    Artifact document tool: __delete__ sentinel added for field removal in updates

    Artifact document tool can now delete a field by setting it to {"__delete__": true}

    found in this entry's text

  538. v2.1.273
    New OAuth scope user:plugins gated by PLUGINS_SCOPE_REGISTERED

    A new OAuth scope, user:plugins, is requested for accounts with plugin access registered

    found in this entry's text

  539. v2.1.273
    Frame-file listing response drops raw paths field

    Frame-file listing response for artifact consent checks no longer includes a raw paths field

    found in this entry's text

  540. v2.1.273
    New per-tool hardBlockUnder config drives a hard-block lookup table

    Tools can now declare a hardBlockUnder threshold list used to build a hard-block lookup table

    found in this entry's text

  541. v2.1.273
    Internal refactor of rewind_conversation target validation in the remote/headless bridge

    rewind_conversation's target-validation logic pulled into a single shared helper

    found in this entry's text

  542. v2.1.273
    Named constant for the ! negation prefix in --tools flag parsing

    The ! negation prefix used in --tools rules is now a named constant

    found in this entry's text

  543. v2.1.273
    New unknown_command_fallback system-reminder template

    New unknown_command_fallback system reminder added for handling unrecognized commands

    found in this entry's text

  544. v2.1.271
    Artifact page schema drops the lang field entirely

    Artifact publishing no longer has a 'lang' field for setting the page's language tag

    found in this entry's text

  545. v2.1.271
    REPL bridge now answers fork_conversation with an explicit unsupported stub

    fork_conversation requests now get a clear 'unsupported' response instead of a generic bridge error

    found in this entry's text

  546. v2.1.271
    Typed artifacts no longer reject a lang field on publish

    Publishing a typed artifact no longer errors just because it includes a lang field

    found in this entry's text

  547. v2.1.271
    Config schema: string settings can now declare a fixed picker of options

    Config settings can now define a fixed list of choices for string-type fields

    found in this entry's text

  548. v2.1.271
    New --accept-command <sha256> CLI flag for plugin command acceptance

    New --accept-command <sha256> flag lets you pre-approve a specific plugin install command

    found in this entry's text

  549. v2.1.271
    New --accept-command flag for non-interactively trusting a plugin's install command

    New --accept-command flag lets a plugin's install command be trusted non-interactively, but only if it matches exactly

    found in this entry's text

  550. v2.1.271
    New /limit-reset hidden command to consume a plan reset early

    Hidden /limit-reset command lets Max/Pro users consume an available usage-limit reset immediately

    found in this entry's text

  551. v2.1.271
    New claude plugin test CLI command for function-hooks plugins

    New claude plugin test command runs a plugin's hook tests in a sandboxed environment that mimics the real runtime

    found in this entry's text

  552. v2.1.271
    Artifacts publish gets overwrite_unread escape hatch

    Artifacts publish adds an overwrite_unread option for replacing files Claude hasn't read this session

    found in this entry's text

  553. v2.1.271
    MCP connector prewait now overridable via CLAUDE_CODE_MCP_CONNECTOR_PREWAIT_MS

    New CLAUDE_CODE_MCP_CONNECTOR_PREWAIT_MS environment variable overrides how long Claude Code waits for remote MCP servers to start

    found in this entry's text

  554. v2.1.271
    New side_question control_request type in the REPL bridge

    SDK/embedder bridge gains a side_question request type for asking the user a question mid-session

    found in this entry's text

  555. v2.1.271
    New agent option omitClaudeMd to skip CLAUDE.md instructions for delegated subagents

    A new omitClaudeMd option lets a delegated subagent run without CLAUDE.md instructions

    found in this entry's text

  556. v2.1.271
    New plugin type-contract field (types) feeds /plugin-types

    Plugin manifests can now declare a types field pointing to a TypeScript declaration file

    found in this entry's text

  557. v2.1.271
    New system reminder against using cat on files near the Bash output limit

    New guidance tells Claude to use the Read tool instead of cat for large files

    found in this entry's text

  558. v2.1.271
    Fleet/job re-attach login screen no longer passed a session prop

    Fleet job re-attach login screen no longer receives a session prop

    found in this entry's text

  559. v2.1.271
    Enterprise MCP config: new fatalErrors() surfacing unparsable managed config

    Claude Code now flags when an enterprise MCP config file exists but can't be parsed, instead of treating it as missing

    found in this entry's text

  560. v2.1.271
    claude edit-hook now emits telemetry for its outcomes

    The hidden claude edit-hook command now sends telemetry for each outcome

    found in this entry's text

  561. v2.1.271
    New --sdk-url resolution path via RXn() bypassing argv parsing

    The --sdk-url value can now be supplied through a new internal path that bypasses normal argument parsing

    found in this entry's text

  562. v2.1.271
    New remote gate tengu_twinkling_globe controls whether policy-limits are treated as absent or fetched

    New remote gate tengu_twinkling_globe controls whether Claude Code treats account policy limits as absent instead of fetching them

    found in this entry's text

  563. v2.1.271
    gh repo list subprocess call no longer inherits the parent environment

    The 'gh repo list' call auto mode uses to find sibling repos no longer inherits the parent process environment

    found in this entry's text

  564. v2.1.271
    Plugin command.run replay now pins the answer's presentation location

    Plugin command.run replay now refuses to replay if the answer's display location changed

    found in this entry's text

  565. v2.1.271
    Plugin manifests can declare a types field for hooks-module engine interfaces

    Plugin manifests can now declare a types field describing what they expose on the shared $ interface

    found in this entry's text

  566. v2.1.271
    Memory-context guidance field parsed but never used

    A new 'guidance' field in memory-context responses is parsed but not actually used yet

    found in this entry's text

  567. v2.1.271
    New _rr reminder-reconciliation helper has no in-bundle caller

    New reminder-reconciliation helper function added but nothing in the app calls it

    found in this entry's text

  568. v2.1.271
    New artifact_opening_prefetch attachment type: renderer exists, no in-bundle producer found

    A new 'artifact_opening_prefetch' message type exists but nothing yet creates one

    found in this entry's text

  569. v2.1.271
    New API beta header mid_conversation_system_clear_at added to the known-betas registry

    A new API beta header, mid_conversation_system_clear_at, is now recognized by Claude Code

    found in this entry's text

  570. v2.1.271
    New settings schema field policyUnreadable / remote_control_policy_lock_reason for fail-closed managed policy

    Claude Code now fails closed and blocks changes when managed policy settings exist but can't be read

    found in this entry's text

  571. v2.1.271
    Plugin manifest gains a types field declaring EngineInterface members on $

    Plugin manifests can now declare a types field describing what they add to the $ interface

    found in this entry's text

  572. v2.1.271
    Dev-intent detector now reports a trigger value with each detection

    Dev-intent detection now reports what specifically triggered it, not just that it fired

    found in this entry's text

  573. v2.1.271
    New appliesModeDrop: !1 escape hatch for mode-based tool restriction, unused

    A new but currently unused appliesModeDrop: false option can bypass mode-based tool restrictions

    found in this entry's text

  574. v2.1.269
    New (currently inert) validation rejecting auto_open: "after_first_write" combined with certain tool configuration

    A new but currently inactive check would reject certain artifact publish configurations combining auto_open with specific tool settings

    found in this entry's text

  575. v2.1.269
    claude plugin eval gains a --concurrency flag

    claude plugin eval gains a --concurrency flag to run up to 8 test cases at once

    found in this entry's text

  576. v2.1.269
    Claude Code can now post code-review findings as a PR comment (/code-review ultra)

    /code-review ultra --post now posts the review's findings directly as a GitHub PR comment

    found in this entry's text

  577. v2.1.269
    claude plugin eval GA text and its server-side kill switch

    claude plugin eval is now generally available, with a server-side switch that can turn it off per session

    found in this entry's text

  578. v2.1.269
    New prompt-admission tracking guards $.prompt.submit-style submissions

    Prompt submissions are now tracked with a disposable admission guard so a failed handoff rejects waiters instead of hanging.

    found in this entry's text

  579. v2.1.269
    Artifact tool responses gain a foreign ownership flag

    Artifact verify, list_files, and read_file now flag results as 'foreign' when they belong to another workshop or session

    found in this entry's text

  580. v2.1.269
    claude plugin eval now requires explicit trust confirmation before running

    claude plugin eval now checks that a plugin is trusted before it will run its eval suite

    found in this entry's text

  581. v2.1.269
    New tool.check hook event wired into the tool-approval pipeline

    New tool.check hook can override a hook's earlier 'deny' decision on a tool call

    found in this entry's text

  582. v2.1.269
    hooks.json surface field removed in favor of inline Client module references

    hooks.json drops its surface field; plugins now name their display module directly on each Client element

    found in this entry's text

  583. v2.1.269
    New read-block bypass guard for glob-obscured .. path segments

    A new check blocks reads that hide a '..' path segment behind a glob character to slip past directory restrictions

    found in this entry's text

  584. v2.1.269
    New get_memory_dialog remote request subtype

    A new remote-control request type fetches memory-dialog data, but is blocked over headless connections

    found in this entry's text

  585. v2.1.269
    SendMessage cross-machine permission check now passes a detached ask callback

    SendMessage's cross-machine permission check now uses a detached approval callback instead of passing context and canUseTool directly

    found in this entry's text

  586. v2.1.269
    New structure: "after_turn" outcome for spliced bash task delivery telemetry

    Background bash task results can now be inserted after the current turn, a third delivery structure beyond append and new-turn

    found in this entry's text

  587. v2.1.269
    tee shell commands with no path arguments now bypass working-directory path checks

    Running tee with no file arguments now skips the working-directory path check entirely

    found in this entry's text

  588. v2.1.269
    Skills sync telemetry gains a suspended outcome and unified payload builder

    Skills-sync telemetry gains a 'suspended' outcome for rounds delayed by the process being asleep

    found in this entry's text

  589. v2.1.269
    claude plugin eval init can delegate the authoring interview to a parent Claude Code session

    claude plugin eval init can now hand its interview off to the parent Claude Code session instead of failing without a terminal

    found in this entry's text

  590. v2.1.269
    New trust gate before piloting an untrusted plugin directory in claude plugin eval init

    claude plugin eval init now asks whether you trust a plugin directory before piloting its eval cases

    found in this entry's text

  591. v2.1.269
    New focusView flag threaded into app initialization

    App startup now computes and passes a new internal focusView flag

    found in this entry's text

  592. v2.1.269
    Plugin slash-commands can be invoked via short :name suffix suggestions

    Typing a plugin command's short :name suffix now suggests the matching full command

    found in this entry's text

  593. v2.1.269
    ExitPlanMode tool rewritten to lazy create() factory

    ExitPlanMode tool internally restructured into a factory pattern, no behavior change

    found in this entry's text

  594. v2.1.269
    New extendedQuestions telemetry field on session init, tied to a host launch option

    Session-start telemetry now records whether extended questions are enabled, via a new host launch option

    found in this entry's text

  595. v2.1.269
    New mayBeAuthoredByNonOwner setting flows into config-write helpers

    A new mayBeAuthoredByNonOwner setting is now passed through the settings-management code, though not yet visibly used

    found in this entry's text

  596. v2.1.269
    WebFetch/artifact-read tool also moves to create() instance pattern with new renderToolUseMessage and prompt hook

    The WebFetch tool moves to the newer create() internal structure and gains a verbose-mode message and prompt hook

    found in this entry's text

  597. v2.1.269
    Plugin surface renderer: exportName renamed to module throughout host/client wiring

    Plugin rendering internals rename 'exportName' to 'module' and simplify cleanup logic

    found in this entry's text

  598. v2.1.269
    upload_asset now also returns a written url alongside asset_upload

    upload_asset responses now also include a written url field alongside the existing asset_upload data

    found in this entry's text

  599. v2.1.269
    session.receive hook path now returns a disposable queueing handle

    session.receive hook dispatch now always returns a disposable 'queueing' handle

    found in this entry's text

  600. v2.1.268
    Bash command-substitution parsing hardened against untrusted backtick/$() bytes

    Bash command parsing now rejects unclear backtick or $() substitutions instead of guessing

    found in this entry's text

  601. v2.1.268
    Bash/PowerShell/Monitor tools can declare per-command network allowlists (allowed_domains)

    Bash, PowerShell, and Monitor tools can now declare extra allowed network domains for sandboxed commands

    found in this entry's text

  602. v2.1.268
    New allowed_domains parameter for sandboxed Bash commands, gated dark by tengu_flickering_rain

    A new allowed_domains parameter lets the model tell a sandboxed Bash command which network hosts it needs, feature-flagged and not yet confirmed live

    found in this entry's text

  603. v2.1.268
    Advisor tool model-resolution path now also receives credentials

    Model-resolution during the main loop now also receives credentials, and the advisor-tool consent call was renamed

    found in this entry's text

  604. v2.1.268
    claude rm gains a --force-remove-worktree flag and rich refusal messages

    claude rm gets a --force-remove-worktree flag and much more detailed refusal messages

    found in this entry's text

  605. v2.1.268
    Managed plugin hook "seating" can now be driven by a managed prependPlugins list, not just org tier

    Managed prependPlugins settings can now force the hooks-modules plugin to load first, not just org tier

    found in this entry's text

  606. v2.1.268
    Artifact tool: list_files/read_file now resolve and return a type object for type-locked files

    Artifact file listing and reading now include the artifact's declared type when the file is type-locked

    found in this entry's text

  607. v2.1.268
    New optional icon parameter for artifacts, distinct from the emoji favicon

    Artifacts can now be given a plain icon label, separate from the emoji favicon

    found in this entry's text

  608. v2.1.268
    Permission-mode control-request construction extracted into helper YHe

    The code that builds permission-mode change events was pulled out into its own helper function

    found in this entry's text

  609. v2.1.268
    Chat input component gains a new ideSelection prop

    The chat input component now accepts an ideSelection prop again

    found in this entry's text

  610. v2.1.268
    New git-safety instruction in the commit/PR prompt template: avoid bulk git add

    Commit/PR guidance now warns against bulk git add -A or git add .

    found in this entry's text

  611. v2.1.268
    Plugin API session.turnCount renamed to session.turns

    Plugin API hook session.turnCount renamed to session.turns

    found in this entry's text

  612. v2.1.268
    Bash permission deny-rules extended to redirects, env --chdir, and argument caps

    Bash permission checks now also cover shell redirects and env-based argument rewriting, asking instead of silently allowing when unsure

    found in this entry's text

  613. v2.1.268
    Permission decisions now record how they were decided (decidedBy)

    Permission approvals now record whether a hook, the host tool, or a normal prompt approved them

    found in this entry's text

  614. v2.1.268
    MCP client bridge gains a global isDisabled kill-switch checked before every tool call

    The Chrome/browser tool bridge now checks a global disabled switch before running any tool call

    found in this entry's text

  615. v2.1.268
    Artifact publish files copy-by-artifact now infers contentType from destination path

    Publishing an artifact file copy now figures out its content type from the destination path automatically

    found in this entry's text

  616. v2.1.268
    New lightweight JS-object-literal parser for meta exports

    A new lightweight parser safely reads meta object literals out of file source without using eval

    found in this entry's text

  617. v2.1.268
    NAe (proactivity-related gate used by shortcut/auto-mode logic) now hardcoded to return false

    A proactivity-related check used by shortcut keys and auto-mode is now hardcoded to always say no

    found in this entry's text

  618. v2.1.268
    Local-slash-command dispatch can now surface localCommand in its result

    Local slash-command results now include a localCommand field when the command wasn't handed off to the model

    found in this entry's text

  619. v2.1.268
    New tool_kind field on permission requests, wired for browser tools

    Permission requests can now carry a tool_kind field so SDK apps can route browser tool prompts to a custom UI

    found in this entry's text

  620. v2.1.267
    Artifact create-from-type now also rejects a deadline field

    Creating an Artifact from a type_url now also rejects a stray deadline field

    found in this entry's text

  621. v2.1.267
    Artifact publish gains a deadline field, gated by schema capability

    Artifact publishing can now include a deadline, gated behind a capability check

    found in this entry's text

  622. v2.1.267
    Box key props are validated for uniqueness and stripped before final render

    Terminal UI Box components now validate key props for uniqueness and strip them before rendering

    found in this entry's text

  623. v2.1.267
    New event-filter no-op hook oe(i) added on every bridge session frame

    A new but currently empty hook now runs on every frame of a bridge session's event stream

    found in this entry's text

  624. v2.1.267
    Managed-settings-only secDefault flag controls seating of the bundled sec-default plugin

    A new managed-settings-only flag lets organizations put their bundled sec-default plugin ahead of user-installed plugin hooks

    found in this entry's text

  625. v2.1.267
    Plugin event schema gains a usage field on turn.step and turn.complete

    Plugin turn.step and turn.complete events now include token usage details

    found in this entry's text

  626. v2.1.267
    hooks.json can now declare a surface module

    hooks.json can now declare a separate 'surface' module for drawing a hook module's UI elements

    found in this entry's text

  627. v2.1.267
    write_db batch writes now support if_version optimistic-concurrency checks

    Document-store batch writes now support if_version checks per entry, with a permission check when used

    found in this entry's text

  628. v2.1.267
    Worker event uploads now carry hold/batch metadata (upload_hold)

    Worker event uploads now include metadata about how long and why events were held before sending

    found in this entry's text

  629. v2.1.267
    New consolidated 'plugins effectively enabled' check svr

    A new internal check consolidates several conditions that decide whether plugins count as effectively enabled

    found in this entry's text

  630. v2.1.267
    New helper bce() gates an unspecified capability on interactive, non-VSCode, non-childSession context

    New internal helper combines interactive/non-child-session/non-VSCode checks into one condition

    found in this entry's text

  631. v2.1.267
    Comment-thread handoff responses now carry a handOff field through

    Comment-thread handoff responses now pass through a handOff field

    found in this entry's text

  632. v2.1.265
    Cursor IDE config import (/import)

    /import can now bring in configuration from Cursor IDE, not just Codex and Gemini CLI

    found in this entry's text

  633. v2.1.265
    Plugin SDK gains a command namespace: register/run/list slash commands

    Plugins can now register, run, and list slash commands through a new $.command API

    found in this entry's text

  634. v2.1.265
    claude import gains Cursor support

    claude import and /import can now pull configuration from Cursor, not just Codex and Gemini

    found in this entry's text

  635. v2.1.265
    DesignSync tool telemetry now validates dsMethod against a known method list

    DesignSync tool telemetry now checks the method name against a fixed list instead of logging it raw

    found in this entry's text

  636. v2.1.265
    New attach session-opener path with a serveOnly mode

    A new 'attach' session-opening path supports a reduced serveOnly feature set

    found in this entry's text

  637. v2.1.265
    SDK/host initialize gains a workspaceTrust option to programmatically grant directory trust

    SDK/host initialize can now grant directory trust programmatically via a validated workspaceTrust option

    found in this entry's text

  638. v2.1.265
    policyHelpers per-source shadowing warning gated behind managedSourcesBehavior: "merge"

    Claude Code now warns when multiple managed settings sources define conflicting policy helper config under merge mode

    found in this entry's text

  639. v2.1.265
    policyHelpers onFailure/retries per-OS validation messages added

    Claude Code now warns when onFailure or retries are set on the wrong policyHelper key, and can refuse to start if an OS-admin helper fails

    found in this entry's text

  640. v2.1.265
    Edit/Write/NotebookEdit-style tools refactored to a per-session create() factory

    Edit, Write, and Read/PDF tools were refactored internally to build themselves from a per-session factory function

    found in this entry's text

  641. v2.1.265
    New workspace_trust_recorded field in initialize response, marked @internal

    Session startup response now internally reports whether workspace trust was actually saved

    found in this entry's text

  642. v2.1.265
    Plugin SDK gains a windowed ui.open/ui.close surface, capped at 8 panes per plugin — no renderer found for the 'currently shown' selector

    Plugins can now open persistent UI panes via ui.open/ui.close, capped at 8 panes per plugin

    found in this entry's text

  643. v2.1.265
    New classic.* hook turn-block guidance distinguishes SessionStart/Setup/SessionEnd from other classic hooks

    Clearer error guidance when a classic hook other than SessionStart/Setup/SessionEnd tries to block the turn

    found in this entry's text

  644. v2.1.265
    New historical field on session messages for Remote Control replay

    Session messages gained a historical flag used by Remote Control when replaying past messages

    found in this entry's text

  645. v2.1.265
    Composer sidebar gains a sidebarFill prop, defaulting to filled (same visual as before)

    The composer's side panel now has a toggle for whether its background fill shows

    found in this entry's text

  646. v2.1.265
    Cancel/escape handling gains an isCloudMessageHeld mode

    Cancelling with Escape now behaves differently while a cloud message is being held

    found in this entry's text

  647. v2.1.265
    SDK stream-json schema: new historical and runner_exit fields, and expanded meta-turn uuid-folding semantics

    SDK message format adds historical and runner_exit fields, and clarifies how mid-turn user messages get folded in

    found in this entry's text

  648. v2.1.265
    Artifact publish root validation reworked to use a new helper pair (Sl/Rl) instead of a manual prefix check

    Artifact publish's root parameter now uses a dedicated trust-check helper instead of a raw string comparison

    found in this entry's text

  649. v2.1.265
    Artifact tool capability-cache lookup (Io) with no obvious external caller beyond internal artifact plumbing

    Artifacts gain internal caching of server-declared capabilities, tracking whether they're known-empty or unknown

    found in this entry's text

  650. v2.1.265
    Session controlOnly flag added to session-open options

    Sessions can now be opened with a controlOnly flag, off by default

    found in this entry's text

  651. v2.1.265
    New create() factory form for the memory-read tool with a signal-only call context

    The memory-read tool's internal setup was rewritten to a newer factory pattern, likely with no visible change

    found in this entry's text

  652. v2.1.265
    New remote-config flag tagConnectorWrites adds a Slack/'Claude Tag' write exception to the security monitor prompt

    A new flag adds a Slack ('Claude Tag') exception to the security monitor's write-blocking rules

    found in this entry's text

  653. v2.1.265
    Artifact fetches now read an x-ccr-sandbox-egress relay header and cache a per-artifact network-egress setting

    Artifacts now read a sandbox network-egress setting from a relay header and cache it for 10 minutes

    found in this entry's text

  654. v2.1.265
    shellToolCommand: bash executions now default to inserting a 'cc-shell' background-task join marker

    Bash commands now default to a 'shell' execution class that inserts a background-task join marker

    found in this entry's text

  655. v2.1.261
    --claudeai flag lets you add a claude.ai-hosted plugin marketplace

    You can now add a claude.ai-hosted plugin marketplace with a new --claudeai flag.

    found in this entry's text

  656. v2.1.261
    New <claude-code-hint> tag lets tool/command output suggest a plugin to install

    Tool and command output can now embed a hidden tag that suggests installing a specific plugin.

    found in this entry's text

  657. v2.1.261
    Artifact copy_from action now honors deny/ask permission rules

    Copying assets between artifacts now respects deny/ask permission rules, not just prior consent.

    found in this entry's text

  658. v2.1.261
    New numeric remote-config gate tengu_cozy_dusk

    A new numeric remote-config gate was added with clamped bounds.

    found in this entry's text

  659. v2.1.261
    SDK plugin delivery via initialize request

    SDK plugins can now be sent via an initialize request instead of the command line, with a fallback warning if not applied.

    found in this entry's text

  660. v2.1.261
    claude ultrareview gains a distinct "policy route missing" telemetry reason

    ultrareview now reports a clearer reason when blocked by a missing policy route.

    found in this entry's text

  661. v2.1.261
    --resume can now adopt/accept custom (non-UUID) session IDs when used with SDK URL sessions

    --resume can now accept custom, non-UUID session IDs for SDK URL sessions.

    found in this entry's text

  662. v2.1.261
    MCP server config validated via schema before use in mcp add-json

    mcp add-json now validates server config against a schema before saving.

    found in this entry's text

  663. v2.1.261
    New SDK reloadOutputStyles() method

    The SDK can now reload output styles mid-session with a new method.

    found in this entry's text

  664. v2.1.261
    SDK session init accepts a plugins field over stdin

    The SDK's initialize request can now carry plugin paths over stdin instead of one flag per plugin.

    found in this entry's text

  665. v2.1.261
    SDK's experimental usage() call gains a skip_behaviors opt-out

    The experimental usage() SDK call can now skip the 7-day behaviors scan for a faster response.

    found in this entry's text

  666. v2.1.261
    MCP CLI commands (get/add/remove) telemetry now hashes/obscures server names via Up

    MCP CLI commands now hash server names in telemetry instead of sending them raw.

    found in this entry's text

  667. v2.1.261
    /doctor output now waits for organization policy limits to load before reporting them

    /doctor now waits for org policy limits to load and shows an updating status line for them.

    found in this entry's text

  668. v2.1.261
    Auto-mode classifier fallback now records a fallbackCause

    Auto-mode fallback telemetry now records why a fallback model was used.

    found in this entry's text

  669. v2.1.260
    copy_from artifact action deprecated in favor of publish+from_url

    The copy_from artifact action is deprecated in favor of publish with from_url.

    found in this entry's text

  670. v2.1.260
    New $.process.run capability for plugin hook scripts

    Plugin hook scripts can now spawn and run external commands via $.process.run.

    found in this entry's text

  671. v2.1.260
    claude rm can now force-discard unpushed commits

    claude rm can now force-delete a worktree with unpushed commits using a new flag.

    found in this entry's text

  672. v2.1.260
    Artifact get_endpoints/call_endpoint actions renamed and scoped to remote-cowork entrypoints only

    Renamed endpoint actions remain invisible outside remote-cowork sessions.

    found in this entry's text

  673. v2.1.260
    MCP web-search built-in server pushes API keys out of headers

    Web-search MCP server config now steers you away from putting API keys directly in headers.

    found in this entry's text

  674. v2.1.260
    Plugin $.tool.register now bounds MCP server connect time

    Plugin tool registration now times out instead of hanging on a slow MCP server connect.

    found in this entry's text

  675. v2.1.260
    New disableAutoMode permission/settings key

    A new setting can turn off Claude Code's auto mode entirely.

    found in this entry's text

  676. v2.1.260
    New artifact-hosting validation: refuses <base href> pointing outside the artifact

    Artifact publishing now refuses pages whose base href points outside the artifact.

    found in this entry's text

  677. v2.1.260
    New shorter artifact URL format with base58-encoded IDs

    Artifacts now get shorter URLs using a 22-character encoded id.

    found in this entry's text

  678. v2.1.260
    Checkpoint rewind gains a documented skippedLinks telemetry/response field for symlink-safety refusals

    Checkpoint rewind now documents a field counting files skipped for symlink safety.

    found in this entry's text

  679. v2.1.260
    New marketplace-not-found error surfacing rule

    A marketplace-not-found error is now suppressed from the UI in certain hidden-registration cases.

    found in this entry's text

  680. v2.1.260
    New top-level disableAutoMode setting

    Admins get a simpler top-level way to disable Auto mode without nesting the setting.

    found in this entry's text

  681. v2.1.259
    Bash path-restriction checks now track cd/pushd/popd across compound commands

    Path deny rules now follow cd, pushd and popd across a compound command, denying reads when a directory target can't be resolved.

    found in this entry's text

  682. v2.1.259
    Headless SDK sessions expose a bindable $.tool.register API for MCP servers

    Headless SDK sessions expose a session object for MCP servers with addMcpServer, removeMcpServer, toast, status and refreshContext.

    found in this entry's text

  683. v2.1.259
    New --permission-prompts host|none CLI/SDK option to silently auto-deny prompts

    A new --permission-prompts option lets print sessions auto-deny anything that would prompt instead of asking the host.

    found in this entry's text

  684. v2.1.259
    New SDK option permissionPrompts alongside permissionPromptToolName

    The Agent SDK query builder accepts a permissionPrompts option of host or none, passed through to the CLI.

    found in this entry's text

  685. v2.1.259
    git tool's allowed-subcommand shim gains git grep and worktree flag parsing

    The restricted git wrapper now parses -C and --work-tree flags and fully handles git grep.

    found in this entry's text

  686. v2.1.259
    New Svg render element type for engine/dialog UI trees

    Dialog and engine UI trees can include an Svg element, and the validator now reports when an element isn't allowed on a surface.

    found in this entry's text

  687. v2.1.259
    claude plugin validate gains --json output

    claude plugin validate gains a --json flag for machine-readable validation results.

    found in this entry's text

  688. v2.1.259
    Artifact publish gains a pin action to pin to the claude.ai sidebar

    Publishing an artifact can now also pin it to your claude.ai sidebar, and the reply says whether the pin worked.

    found in this entry's text

  689. v2.1.259
    New --permission-prompts none CLI flag for headless print sessions

    In print mode you can pick who answers permission prompts: the host, or none, which auto-denies without asking.

    found in this entry's text

  690. v2.1.259
    mcp remove now blocks removing organization-managed servers

    claude mcp remove now refuses org-managed servers with an explicit message instead of reporting them as not found.

    found in this entry's text

  691. v2.1.259
    New proactivity cloud-session config field

    Cloud sessions now treat a proactivity key as a supported passthrough option alongside systemPrompt and thinking.

    found in this entry's text

  692. v2.1.259
    claude mcp marketplace list now shows claude.ai-hosted marketplaces not yet added locally

    Marketplace listing now also shows claude.ai-hosted marketplaces you haven't added locally, plus browse-only ones.

    found in this entry's text

  693. v2.1.258
    New hasPrompt signal added to headless/SDK turn processing

    Resuming a turn with no new prompt now skips an unnecessary model call in headless and SDK use.

    found in this entry's text

  694. v2.1.257
    --background/--bg can now resume a session in place

    Combining --bg with --resume now continues that session in the background under the same ID.

    found in this entry's text

  695. v2.1.257
    claude attach-style background wake now preserves/queues prompts

    Waking a background session can queue your prompt for delivery, and warns if the wake flags differ from the original ones.

    found in this entry's text

  696. v2.1.257
    Artifact SYNC/live-files system prompt gated by liveEditGateOpen

    Artifact live-file sync prompt text is only included when the live-edit gate is open and the schema has a page field.

    found in this entry's text

  697. v2.1.257
    Hidden --inherit-permission-mode CLI flag

    A hidden --inherit-permission-mode flag lets a spawned session take its permission mode from whatever launched it.

    found in this entry's text

  698. v2.1.257
    New $.model.fork plugin hook API forks the warm main-thread transcript

    Plugins can call model.fork to ask a question against the live transcript, with no tools and a two-turn cap.

    found in this entry's text

  699. v2.1.257
    New $.session.authorize plugin hook API surface

    Plugins gain $.session.authorize(), which mints an auth handle for the session.

    found in this entry's text

  700. v2.1.257
    New --system-prompt-snapshot CLI/agent option

    A new --system-prompt-snapshot option makes a session record its system prompt once and reuse it on resume.

    found in this entry's text

  701. v2.1.257
    New CLAUDE_CODE_SUBAGENT_MODEL_FORCE env var

    A new env var stops per-call model overrides for subagents and workflow agents, forcing them to inherit.

    found in this entry's text

  702. v2.1.257
    Plugin loader passes through a linkFarmProducer option

    Plugin install and load helpers now thread a linkFarmProducer option through source resolution.

    found in this entry's text

  703. v2.1.257
    New hideLoginNotice session option

    A new hideLoginNotice option lets a host session hide the login notice without hiding all welcome chrome.

    found in this entry's text

  704. v2.1.257
    onAssistantRound session hook wired but scope unclear

    A new per-session onAssistantRound hook fires after assistant and tool rounds for the main agent, with unclear scope.

    found in this entry's text

  705. v2.1.257
    Artifact API rejects type parameter outside list action

    A type argument outside the list action is now rejected, with a note to pass type_url when creating from a type.

    found in this entry's text

  706. v2.1.257
    claude install refuses to auto-switch to pre-signing-enforcement releases

    claude install refuses to switch to a channel version that predates signature enforcement unless you name it exactly.

    found in this entry's text

  707. v2.1.257
    Prompt draft now persisted to disk for background sessions (.prompt-stash)

    An unsent prompt draft in a background session is saved to disk and restored on reconnect, cursor position and all.

    found in this entry's text

  708. v2.1.257
    New session summary field whileClosed

    Session summaries can carry a whileClosed block describing whether a device is armed and serving while closed.

    found in this entry's text

  709. v2.1.257
    Automatic migration of claude-fable-5 model alias to fable

    If your model setting says claude-fable-5, startup rewrites it to the fable alias automatically.

    found in this entry's text

  710. v2.1.257
    New tengu_tool_schema_sizes telemetry event with dedup cache

    A new event breaks down tool schema sizes by category, deduplicated and capped at 512 hashes.

    found in this entry's text

  711. v2.1.257
    New wire_tool_inputs field recorded on API request diffing

    The request-diffing diagnostic payload now includes the raw wire tool inputs when non-empty.

    found in this entry's text

  712. v2.1.251
    --bg help now names the commands that take the printed id

    --bg help now names attach, logs, stop and rm as the commands taking the printed id.

    found in this entry's text

  713. v2.1.251
    --messaging-socket-path is now validated and fails startup instead of degrading

    A bad --messaging-socket-path now fails startup instead of leaving your inbox quietly broken.

    found in this entry's text

  714. v2.1.251
    claude plugin update distinguishes a deferred plugin from a skipped one

    Plugin update failures now tell you the exact command to rerun.

    found in this entry's text

  715. v2.1.251
    Subagent model field documents its fallback order

    Subagent model field docs now spell out alias, raw id, inherit, and the default fallback.

    found in this entry's text

  716. v2.1.251
    claude mcp add-json covers HTTP and WebSocket servers

    claude mcp add-json help now lists HTTP and WebSocket alongside stdio and SSE.

    found in this entry's text

  717. v2.1.248
    /goal sets a condition Claude checks before it stops

    New /goal command records a condition Claude checks before it finishes a turn.

    found in this entry's text

  718. v2.1.248
    New --restricted session mode

    New --restricted flag starts a locked-down session with no shell tools and no settings files.

    found in this entry's text

  719. v2.1.248
    DISABLE_AUTOUPDATER now needs a real truthy value

    DISABLE_AUTOUPDATER=0 or false no longer disables updates; only truthy values count now.

    found in this entry's text

  720. v2.1.248
    claude logs no longer lets replayed output corrupt your terminal

    Replaying job output with claude logs can no longer garble your terminal.

    found in this entry's text

  721. v2.1.248
    claude attach explains cleaned-up background sessions instead of failing generically

    Reopening a cleaned-up background session now points you at claude rm and claude respawn.

    found in this entry's text

  722. v2.1.248
    The debug log's latest pointer is now requested from the storage backend

    The debug log's latest pointer is now requested from storage, with a fallback if refused.

    found in this entry's text

  723. v2.1.248
    claude remote-control rejects root options instead of forwarding them

    claude remote-control now errors clearly on root-level options instead of forwarding them.

    found in this entry's text

  724. v2.1.248
    Permission modes auto and dontAsk are now documented in the schema

    The schema now documents all six permission modes, including auto and dontAsk.

    found in this entry's text

  725. v2.1.248
    New tengu_violin_pegbox gate layered on top of tengu_violin_wood

    Remote sessions started from the desktop app now need a second flag as well.

    found in this entry's text

  726. v2.1.248
    Tools that run code now carry an enablesCodeExecution marker

    Bash, REPL and cloud trigger tools now carry a marker saying they execute code.

    found in this entry's text

  727. v2.1.248
    New sessions started from fleet view inherit --restricted

    New background sessions started from a restricted session inherit --restricted.

    found in this entry's text

  728. v2.1.248
    --restricted confines file tools to the working directory

    Restricted sessions block file paths outside the working directory with no approval offered.

    found in this entry's text

  729. v2.1.248
    New gate tengu_foamy_spring, on by default and fail-open

    A new gate is on by default and stays on even if its reader fails.

    found in this entry's text

  730. v2.1.248
    Remote tool calls can be aborted with a new sync_failed outcome

    Remote tool calls now run a sync preflight and abort with sync_failed if files aren't caught up.

    found in this entry's text

  731. v2.1.248
    /web-setup warns when your GitHub CLI token lacks the workflow scope

    /web-setup warns if your gh token lacks the workflow scope before you connect.

    found in this entry's text

  732. v2.1.248
    --client-label flag on the runner command

    The runner command accepts --client-label <name>, listed in its help output.

    found in this entry's text

  733. v2.1.248
    .mcp.json can mark the coordinator's user-facing server

    You can mark one MCP server in .mcp.json as the coordinator's user-facing server.

    found in this entry's text

  734. v2.1.248
    Bad crossSessionInbound values are now named where they surface

    A bad crossSessionInbound value is now named directly instead of a generic settings complaint.

    found in this entry's text

  735. v2.1.248
    /resume resolves worktree paths through the storage layer

    /resume now resolves worktree locations through storage, falling back to the recorded path.

    found in this entry's text

  736. v2.1.248
    Plugins can point themes at custom paths

    Plugins can point themes at custom paths, which disables the default themes directory.

    found in this entry's text

  737. v2.1.248
    Oversized git check-attr output is now detected instead of parsed truncated

    Truncated git attribute output is now detected instead of being read as "no attributes".

    found in this entry's text

  738. v2.1.248
    remote-control and rc recognised during startup routing

    Claude Code spots remote-control or rc on the command line early, before the main app loads.

    found in this entry's text

  739. v2.1.248
    Logger tracks latest marking and refusal separately

    The logger remembers a refused latest-pointer update separately so it stops retrying blindly.

    found in this entry's text

  740. v2.1.248
    New artifact sync action for local working copies

    Artifacts gain a sync action that pushes local edits live and pulls others' changes back.

    found in this entry's text

  741. v2.1.248
    claude remote-control refuses flags typed before the verb

    Flags typed before remote-control now error out instead of being silently dropped.

    found in this entry's text

  742. v2.1.248
    --restricted refuses attachments from outside the working directory

    In restricted mode, attachments from outside your working directory are rejected up front.

    found in this entry's text

  743. v2.1.248
    restricted counts as a non-default SDK setting

    Starting a session with restricted now counts as a non-default configuration.

    found in this entry's text

  744. v2.1.248
    The sync action is wired up but compiled out of this build

    The artifact sync action is routed everywhere but compiled out of this build.

    found in this entry's text

  745. v2.1.248
    Version and build stamp, and the disabled /version command

    This is build 2.1.248, and the /version command exists but is hardwired off.

    found in this entry's text

  746. v2.1.248
    Wider set of accepted git log and git show flags

    More read-only git log and show flags are recognised, so fewer permission prompts.

    found in this entry's text

  747. v2.1.248
    claude agents respects restricted mode

    The agents view now inherits restricted mode from the session, not just an explicit flag.

    found in this entry's text

  748. v2.1.248
    The claude logs escape-sequence filter is an allow-list

    Log replay keeps only escape sequences it recognises and drops everything else.

    found in this entry's text

  749. v2.1.247
    The interruptible_tool_in_progress stream event is gone

    Clients no longer get the stream event announcing that a long tool is still running and interruptible.

    found in this entry's text

  750. v2.1.247
    claude attach tells you whether the terminal host died or just never answered

    Attach failures now distinguish a dead terminal host from a silent session, and offer the right recovery.

    found in this entry's text

  751. v2.1.247
    sandbox status prints the posture in effect, not just whether sandboxing is available

    Sandbox status now prints whether sandboxing is on, where that came from, and the filesystem policy.

    found in this entry's text

  752. v2.1.247
    /mcp server dialog no longer acts on the wrong row

    Pressing Enter in the /mcp server list no longer opens the wrong server.

    found in this entry's text

  753. v2.1.247
    claude mcp serve has a result-format parameter wired but no way to set it

    The MCP server can take a result format, but the only caller hardcodes raw.

    found in this entry's text

  754. v2.1.247
    Recalling a prompt starting with ! or # no longer flips input modes

    Recalling an old prompt starting with ! or # no longer drops you into bash or memory mode.

    found in this entry's text

  755. v2.1.247
    --messaging-socket-path now errors instead of silently doing nothing

    A bad messaging socket path now fails with a clear error instead of being silently ignored.

    found in this entry's text

  756. v2.1.247
    claude plugin enable/disable refuses an ambiguous bare name

    Enabling or disabling an ambiguous plugin name now stops and asks you to write plugin@marketplace.

    found in this entry's text

  757. v2.1.247
    Cloud teleport refuses to seed from a folder with an unreadable .git

    Cloud teleport aborts rather than uploading if your folder's git data cannot be read.

    found in this entry's text

  758. v2.1.247
    Prompt dumps moved to dump-prompts/*.jsonl

    Prompt dumps now land in a dump-prompts folder as plain .jsonl files.

    found in this entry's text

  759. v2.1.247
    Repo git hooks are opt-in, tag pushes opt in, and GIT_CONFIG is blocked

    Repo git hooks stay suppressed by default, tag pushes excepted, and GIT_CONFIG is now cleared.

    found in this entry's text

  760. v2.1.247
    New EHOSTDEAD job error code and zombie process detection

    Background jobs report a dead-host error code, and zombie processes no longer count as alive.

    found in this entry's text

  761. v2.1.247
    File sync is declined for a folder with an unreadable .git entry

    A folder with an unreadable .git entry now gets a clear refusal for file sync up front.

    found in this entry's text

  762. v2.1.247
    Plugins can draw pressable buttons, with a new ui.press hook

    Plugins can draw pressable buttons that fire a new press event back to the plugin.

    found in this entry's text

  763. v2.1.247
    A new protected ~/.claude/seed-admin directory, with nothing yet writing to it

    Writes under a new seed-admin folder are hard-denied for everyone, though what fills it is off.

    found in this entry's text

  764. v2.1.247
    auto_open parameter on the Artifact tool

    The Artifact tool's auto_open option only appears if server-side config enables Artifact type creation for you.

    found in this entry's text

  765. v2.1.247
    Artifact preview: a local headless-Chrome render check that is not compiled into this build

    An artifact preview action would screenshot a page locally at several widths, but it cannot run here.

    found in this entry's text

  766. v2.1.247
    Warning when ~/.claude.json cannot be watched for outside edits

    You're now warned when your settings file isn't being watched, so other sessions' edits won't appear.

    found in this entry's text

  767. v2.1.246
    Custom keybinding actions now use a command: prefix instead of x-

    Custom keybindings must now be named command:<name>; old x- names no longer validate.

    found in this entry's text

  768. v2.1.246
    --no-home-settings replaced by --forward-home-settings <true|false>

    The hidden --no-home-settings flag becomes --forward-home-settings true or false, so you can force it on.

    found in this entry's text

  769. v2.1.246
    /cd rebuilt: one routine re-homes everything, and it tells you what was left behind

    /cd now re-points transcript, settings, hooks and skills in one pass and reports anything left behind.

    found in this entry's text

  770. v2.1.246
    claude plugin update accepts a bare plugin name

    You can run claude plugin update with just the plugin name, no marketplace needed.

    found in this entry's text

  771. v2.1.246
    New initialize option perTaskStopAffordance changes what interrupt kills

    SDK clients can opt in so an interrupt kills only the current turn, not background agents.

    found in this entry's text

  772. v2.1.246
    /reload-plugins skill count includes skills

    The /reload-plugins summary now counts skills as well as commands.

    found in this entry's text

  773. v2.1.246
    Prompt and context experiment renamed to tengu_expressive_whistle, four other switches retired

    A prompt-and-context experiment switch was renamed and four other switches disappeared entirely.

    found in this entry's text

  774. v2.1.246
    --min-idle accepts up to 200

    The self-hosted pool's --min-idle now accepts up to 200 warm workers, and a validation bug is fixed.

    found in this entry's text

  775. v2.1.246
    claude plugin list now shows bundled plugins too

    claude plugin list now shows bundled first-party plugins alongside the ones you installed.

    found in this entry's text

  776. v2.1.246
    Permission prompts deny cleanly when the MCP server behind --permission-prompt-tool is gone

    If the server behind --permission-prompt-tool disconnects, checks now deny cleanly instead of using a stale tool.

    found in this entry's text

  777. v2.1.246
    Plugins can abort the current turn with $.turn.abort

    Plugins get a new turn object whose abort verb ends the running turn with its own interrupt wording.

    found in this entry's text

  778. v2.1.246
    A Bash call using dangerouslyDisableSandbox no longer blocks remote execution

    A Bash call using dangerouslyDisableSandbox can still run on a remote device instead of being forced local.

    found in this entry's text

  779. v2.1.242
    --print with --cloud can message an existing cloud session

    You can now use --print with --cloud to message an existing cloud session.

    found in this entry's text

  780. v2.1.242
    New remote flag tengu_cobalt_plinth_thrift, off without a server value

    A new artifact-related server switch exists and stays off without a server value.

    found in this entry's text

  781. v2.1.242
    disableArtifact deprecated in favour of enableArtifact

    Use enableArtifact instead of disableArtifact, which now only counts when set to true.

    found in this entry's text

  782. v2.1.242
    plugin eval can mock a plugin's MCP servers, with docs to match

    Plugin evals can swap a plugin's MCP servers for fakes defined in a mocks folder.

    found in this entry's text

  783. v2.1.242
    New list_apps tool for picking a Mac app to request access to

    Claude can list your installed and running Mac apps before asking to control one.

    found in this entry's text

  784. v2.1.242
    New modelPicker setting curates the /model list

    A new modelPicker setting curates or replaces the model list you see in /model.

    found in this entry's text

  785. v2.1.242
    GitHub CLI login is detected with gh auth token

    GitHub CLI sign-in is checked with a quick local command instead of a silent network call.

    found in this entry's text

  786. v2.1.242
    /plugin validate inspects hooks modules instead of a declared capabilities list

    Plugin validation now loads your hooks modules and reports what they hook; the capabilities field is ignored.

    found in this entry's text

  787. v2.1.242
    /web-setup tip and status row for Claude Code on the web

    A tip points you at /web-setup to connect GitHub for running sessions on the web.

    found in this entry's text

  788. v2.1.242
    claude plugin eval init refuses to scaffold in the wrong directory

    Eval scaffolding refuses to create files outside a plugin or skill folder unless you pass --eval-dir.

    found in this entry's text

  789. v2.1.242
    New server flag tengu_glimmering_glade

    A new server switch was added next to the bridge flags, and nothing reads it yet.

    found in this entry's text

  790. v2.1.242
    Artifact write_db accepts a batch of writes under one approval

    Artifact database writes can be batched so several documents commit under one approval.

    found in this entry's text

  791. v2.1.242
    Malformed modelPicker and modelPricing settings now warn instead of being silently ignored

    Bad modelPicker or modelPricing settings are now dropped with a warning naming the file and path.

    found in this entry's text

  792. v2.1.242
    New modelPricing managed setting bills usage at contracted rates

    Organizations can bill your reported spend at contracted rates everywhere costs appear.

    found in this entry's text

  793. v2.1.242
    New tool_host_result system message in stream-json output

    Tool host output arrives as its own system message in stream-json, easier to script against.

    found in this entry's text

  794. v2.1.242
    SDK interrupt() can cancel queued messages and reports which ones

    SDK interrupt can now cancel queued messages and tells you which ones it cancelled.

    found in this entry's text

  795. v2.1.242
    GitHub CLI checks tell an old gh apart from a broken one

    An outdated GitHub CLI no longer looks like a missing or signed-out one.

    found in this entry's text

  796. v2.1.242
    A cloud field on hooks, and rules for which hooks a cloud session may use

    Hook entries accept a cloud setting deciding whether a cloud session may run them.

    found in this entry's text

  797. v2.1.242
    Plugin modules with a $ API that can hook events and redraw the terminal UI

    Plugins can install code that intercepts tool calls and repaints parts of the terminal interface.

    found in this entry's text

  798. v2.1.242
    Hook settings accept cloud, and unknown values fail safe

    Hook entries accept a cloud field, and unrecognised values are treated as skip rather than erroring.

    found in this entry's text

  799. v2.1.239
    Remote file staging can now write under /outputs/

    Remote sessions can now stage writable files under /outputs/, not just /uploads/.

    found in this entry's text

  800. v2.1.239
    read_decisions artifact action folded into page-data reads

    The separate read-decisions artifact action is gone, and change notices now mention someone saving from the page.

    found in this entry's text

  801. v2.1.239
    New modelSettings config key holds per-model effort

    A new modelSettings config key stores an effort level per model, from low to xhigh.

    found in this entry's text

  802. v2.1.239
    New whiteboard skill: a shared canvas you sketch on and Claude draws back onto

    A bundled whiteboard skill gives you a shared canvas you sketch on and Claude draws back onto in orange.

    found in this entry's text

  803. v2.1.239
    The same shell-preamble machinery would install a bq shim, and cannot currently be enabled

    The same shell preamble would install a bq shim on PATH, and cannot be turned on here.

    found in this entry's text

  804. v2.1.239
    A -p in an argument value no longer forces print mode

    A -p inside an argument value no longer silently switches you into print mode.

    found in this entry's text

  805. v2.1.239
    CLAUDE_CODE_DIR_SYNC_GIT selects a git-based engine for cloud file sync

    You can set CLAUDE_CODE_DIR_SYNC_GIT to pick a git-based engine for syncing your directory to a cloud session.

    found in this entry's text

  806. v2.1.239
    claude plugin list gets a "Synced from claude.ai" section

    claude plugin list now groups plugins by scope, including a "Synced from claude.ai" section.

    found in this entry's text

  807. v2.1.239
    worktree.location setting for Desktop SSH sessions

    A worktree.location setting tells the desktop app where to create worktrees for SSH sessions; the CLI ignores it.

    found in this entry's text

  808. v2.1.239
    Administrators can forbid server-delivered MCP servers with disableSideloadFlags

    Admins can set disableSideloadFlags to block --mcp-config and refuse MCP servers pushed in from outside your config.

    found in this entry's text

  809. v2.1.239
    Admins can exclude folders from directory sync with dir_sync_folder_ignore

    Admins can list folders in dir_sync_folder_ignore to keep them out of directory sync.

    found in this entry's text

  810. v2.1.239
    Artifact tool gains a read action, with multi-file browsing and delete built but gated off

    Claude can now read back a published artifact's contents; browsing, multi-file publishing and deletion are built but off.

    found in this entry's text

  811. v2.1.239
    synced reserved as a marketplace name, plus messages for claude.ai plugins

    The name synced is now reserved for marketplaces, with new messages for claude.ai plugin conflicts.

    found in this entry's text

  812. v2.1.239
    Marketplaces can list plugins by bare name under metadata.pluginRoot

    Marketplaces can set metadata.pluginRoot so plugin entries resolve by bare name inside one folder.

    found in this entry's text

  813. v2.1.239
    Insights report no longer risks leaking <message> tags

    The share-insights reply no longer risks leaking stray message tags into your report.

    found in this entry's text

  814. v2.1.239
    The device parameter is hidden from every tool that could run remotely

    No tool currently offers Claude a device option; the check that would add it always fails.

    found in this entry's text

  815. v2.1.238
    New keybindingFlavor setting for readline-style prompt editing

    Set keybindingFlavor to readline and Ctrl+W deletes back to whitespace like Bash does.

    found in this entry's text

  816. v2.1.238
    stop_task control request stops a single task

    SDK and remote drivers can stop a single task by id with a new control request.

    found in this entry's text

  817. v2.1.238
    A /design command that drafts a design on a canvas artifact

    A /design command that drafts a design on a canvas artifact now registers by default, if your account allows it.

    found in this entry's text

  818. v2.1.238
    register_repo_root screens paths before it touches the disk

    Registering a repo root now screens odd Windows and network paths before touching disk.

    found in this entry's text

  819. v2.1.238
    The /design skill prompt was rewritten and its page seeder gained warnings

    The /design skill got stricter rules and now demands a path, a description and a favicon emoji.

    found in this entry's text

  820. v2.1.238
    zsh =(CMD) process substitution no longer takes the fast permission path

    Zsh =(cmd) process substitution is now treated as too tricky to auto-approve, so permissions ask.

    found in this entry's text

  821. v2.1.238
    CLAUDE_CODE_HOVER_REST gives a local override for the new credential and settings storage

    You can pin the new credential and settings storage backend yourself with one environment variable.

    found in this entry's text

  822. v2.1.238
    claude --cloud explains when your local changes cannot be uploaded

    claude --cloud now says why your local changes could not be uploaded and points you at --ref.

    found in this entry's text

  823. v2.1.238
    claude plugin marketplace update summarises what it skipped and why

    claude plugin marketplace update now summarises skips and exits non-zero if any failed.

    found in this entry's text

  824. v2.1.238
    initialize now tells a connecting client what the session is doing

    Programs connecting over stream-json now learn whether the session is idle, running or waiting on you.

    found in this entry's text

  825. v2.1.238
    tengu_plugin_command_source_refresh became a kill switch

    The new plugin command path now always runs; its old flag became a kill switch that can disable plugin helper commands.

    found in this entry's text

  826. v2.1.238
    Hooks can be replaced by sending initialize again

    A stream-json host can send initialize again to swap out its hooks mid-session.

    found in this entry's text

  827. v2.1.238
    Artifact tool gains a verify action for viewer-side runtime diagnostics, off by default

    Claude could read console errors and failed loads from real viewers of an artifact, but it's switched off.

    found in this entry's text

  828. v2.1.238
    CLAUDE_CODE_ARTIFACT_SYNC_BASE_URL env var for artifact sync

    You can point artifact syncing at a different host with a new environment variable.

    found in this entry's text

  829. v2.1.238
    The tengu_ethereal_nova gate's built-in default is now on

    A feature switch that used to default off now defaults on when the server says nothing.

    found in this entry's text

  830. v2.1.238
    claude mcp list and get help mention per-project disabling

    claude mcp list and get help text now mentions per-project server disabling.

    found in this entry's text

  831. v2.1.238
    /artifact-pr-review detects pages edited outside the CLI

    /artifact-pr-review now flags a review page whose approval marker looks edited outside the CLI.

    found in this entry's text

  832. v2.1.236
    ANTHROPIC_DEFAULT_MODEL sets the model when nothing else does

    Set ANTHROPIC_DEFAULT_MODEL and it becomes your model whenever no flag or ANTHROPIC_MODEL applies.

    found in this entry's text

  833. v2.1.236
    --continue and --resume failures now say what went wrong

    A failed --continue or --resume now tells you the error and exits instead of quietly carrying on.

    found in this entry's text

  834. v2.1.236
    read_db can save fetched documents to a local folder

    Artifact database reads can dump fetched documents into a folder on disk instead of into the chat.

    found in this entry's text

  835. v2.1.236
    write_db can send a document from a local JSON file

    Artifact database writes can take a local JSON file, so big documents skip the conversation.

    found in this entry's text

  836. v2.1.236
    Startup records whether ANTHROPIC_DEFAULT_MODEL actually took effect

    Startup now records whether your default-model environment variable actually won or was overridden.

    found in this entry's text

  837. v2.1.236
    Cancellable waits when /model talks to a cloud session

    You can now escape the wait when /model loads or switches models on a cloud session.

    found in this entry's text

  838. v2.1.236
    Self-hosted worker API: run_one replaced, unrestricted_paths removed

    The worker API swaps run_one for handle_item and drops the unrestricted_paths file option.

    found in this entry's text

  839. v2.1.236
    The live_doc publish field is gone from the artifact tool

    You can no longer ask the artifact tool to publish a live doc; the document skill is marked live-doc backed instead.

    found in this entry's text

  840. v2.1.236
    The message tool's notify_when_idle parameter and its supporting layer

    Claude can ask another session to ping it when idle, but the parameter is hidden unless the gate is on.

    found in this entry's text

  841. v2.1.235
    Hardlink detection in read-permission decisions ships as shadow telemetry only, gated by tengu_playful_lobster (fallback: on)

    Read-permission checks now detect hardlinked files and log it as shadow telemetry, without changing the decision

    found in this entry's text

  842. v2.1.235
    claude plugin eval rewritten around which plugin is actually loaded

    claude plugin eval now checks which plugin is actually loaded before running

    found in this entry's text

  843. v2.1.235
    Account-on-hold handling is built end-to-end but dark behind tengu_lively_beaver (fallback: off)

    A full account-on-hold sign-in flow was added but stays unreachable pending a server-side gate

    found in this entry's text

  844. v2.1.235
    claude plugin eval --eval-dir shipped, with ownership checks on where cases and results are written

    plugin eval's --eval-dir flag ships with checks that it isn't writing results to a symlinked or foreign-owned directory

    found in this entry's text

  845. v2.1.235
    Artifact MCP is now on by default (no longer behind tengu_cloth_snorkel)

    Artifact MCP enablement no longer falls back to a remote flag, defaulting on unless an env var overrides it

    found in this entry's text

  846. v2.1.235
    Artifact comment follow-up threading (continues_reply_id) is wired but gated off by tengu_medlar_quoin

    Artifact comment replies can now thread onto a prior Claude reply via continues_reply_id, but the feature is off by default

    found in this entry's text

  847. v2.1.235
    plugin eval gains --eval-dir and a manifest eval directory, still early access

    plugin eval gets a configurable case directory via --eval-dir or a manifest key, still gated as early access

    found in this entry's text

  848. v2.1.235
    plugin eval can target a non-default eval directory

    claude plugin eval gets an --eval-dir <dir> flag to target a non-default eval directory

    found in this entry's text

  849. v2.1.234
    SessionEnd hooks lose the bypass_permissions_disabled reason

    SessionEnd hooks no longer see a bypass_permissions_disabled reason, since nothing can end your session that way.

    found in this entry's text

  850. v2.1.234
    New syncClaudeAiSkills setting turns off skills synced from your claude.ai account

    You can stop Claude Code downloading skills from your claude.ai account with one setting.

    found in this entry's text

  851. v2.1.234
    New setting useAutoModeDuringPlan, on by default

    Plan mode now uses auto-mode permission rules by default; turn it off in /config under Permissions.

    found in this entry's text

  852. v2.1.234
    claude mcp serve gains transport plumbing, still stdio only

    The MCP serve command reads transport and port options internally, but stdio is the only choice offered.

    found in this entry's text

  853. v2.1.234
    Spawned processes get --flag=value when the value looks like a flag

    Prompts and model names starting with a dash are no longer swallowed as options by subagents and background tasks.

    found in this entry's text

  854. v2.1.234
    claude plugin separates expected failures from crashes

    Ordinary plugin command failures no longer get reported as crashes.

    found in this entry's text

  855. v2.1.234
    CLAUDE_CODE_PROJECT_DIR_NAME overrides the per-project state folder

    You can name the per-project history folder yourself, as long as you also set a custom config directory.

    found in this entry's text

  856. v2.1.234
    plugin eval no longer swallows piped input

    Piping input into plugin eval now works because startup no longer captures that stdin first.

    found in this entry's text

  857. v2.1.234
    New cli_api_error event when API retries are exhausted

    An API call that fails every retry now records attempts, timing, model and route.

    found in this entry's text

  858. v2.1.234
    --watch-artifact now fails fast in remote sessions

    Starting with --watch-artifact in a remote session now errors immediately and tells you to run it locally.

    found in this entry's text

  859. v2.1.234
    claude plugin eval handles termination signals and cleans up its output

    Plugin eval runs now handle kill signals with proper exit codes and title reports with plugin names.

    found in this entry's text

  860. v2.1.234
    Artifact stub mode hides the /artifacts browser

    In artifact stub mode the /artifacts browser hides itself, since there is no gallery to browse.

    found in this entry's text

  861. v2.1.234
    Terminal recordings addressed as stored .cast streams

    Storage addressing learned about terminal recordings saved as timestamped .cast files in a session folder.

    found in this entry's text

  862. v2.1.234
    A recording storage namespace with no writer in this build

    Internal storage keys learned a "recording" kind, but nothing in the build creates one.

    found in this entry's text

  863. v2.1.234
    Every session now gets the cd permission warning in the Bash tool

    Every session now gets the Bash guidance preferring absolute paths and warning cd can trigger a prompt.

    found in this entry's text

  864. v2.1.234
    claude setup-token rejects extra arguments

    claude setup-token now errors on extra arguments instead of ignoring them.

    found in this entry's text

  865. v2.1.233
    /plugin validate works on directories without a plugin manifest

    You can point /plugin validate at any folder and it checks the skills, agents and commands inside.

    found in this entry's text

  866. v2.1.233
    Merge requests render as MR and ! instead of PR and #

    GitLab merge request links now show as MR with an exclamation mark instead of PR with a hash.

    found in this entry's text

  867. v2.1.233
    macOS /net/<host> autofs paths treated as network paths

    macOS /net autofs paths are now treated as network paths, so previews are skipped and attaching one is refused.

    found in this entry's text

  868. v2.1.233
    Agent files no longer get spurious shell: frontmatter errors

    Your agent files stop being wrongly flagged with a shell frontmatter error.

    found in this entry's text

  869. v2.1.233
    Windows \??\ device paths recognised

    Windows object-manager paths are now recognised as device paths and handled like the other odd forms.

    found in this entry's text

  870. v2.1.233
    sort and uniq no longer get a special write pre-check

    Bash permission checks no longer special-case sort and uniq; they default to read access like other commands.

    found in this entry's text

  871. v2.1.233
    CLAUDE_CODE_SKILL_PROPOSALS turns on the skill-proposal tool

    An env var turns on the tool that proposes new skills; otherwise it stays off in this build.

    found in this entry's text

  872. v2.1.233
    claude plugin validate works on directories without a plugin manifest

    claude plugin validate now falls back to checking skills, agents and commands when there is no manifest.

    found in this entry's text

  873. v2.1.233
    Hidden claude plugin sandbox install and status commands

    Hidden sandbox install and status commands set up the Windows sandbox user with one UAC prompt.

    found in this entry's text

  874. v2.1.233
    --watch-artifact flag to follow a claude.ai artifact from a session

    A new --watch-artifact flag follows a claude.ai artifact for new versions and comments, but needs account access.

    found in this entry's text

  875. v2.1.233
    Relay messages from hearth_human count as coming from a person

    Messages arriving over a new relay origin now count as coming from a person rather than another Claude.

    found in this entry's text

  876. v2.1.233
    Windows Bash argument scanning sees through --flag=value and NT device paths

    Windows command scanning now unwraps flag=value arguments and spots NT object-manager paths.

    found in this entry's text

  877. v2.1.233
    A model-side stop no longer discards your --watch-artifact flag

    When Claude stops a monitor itself, your watch-artifact flags stay on the saved command line.

    found in this entry's text

  878. v2.1.233
    HTTP helper forwards maxRedirects

    The internal request helper now passes a redirect limit through to the HTTP client.

    found in this entry's text

  879. v2.1.233
    Typing / clears the auto-filled "continue" after a rate-limit checkpoint

    Typing a slash after a rate-limit checkpoint clears the prefilled "continue" so your command runs cleanly.

    found in this entry's text

  880. v2.1.232
    sort -o is checked as a write

    A sort command that writes to a file now counts as a write for permissions, not a harmless read.

    found in this entry's text

  881. v2.1.232
    disableAutoMode setting can switch off the auto permission mode fallback

    Set disableAutoMode to "disable" to stop Claude Code ever falling back to auto permission mode.

    found in this entry's text

  882. v2.1.232
    claude plugin failures no longer lose their telemetry on exit

    Failed plugin commands now flush their analytics before exiting instead of dropping the event.

    found in this entry's text

  883. v2.1.232
    Environment variables read through one typed table instead of scattered process.env lookups

    Environment variables are now read through one typed table, with the same names and behaviour.

    found in this entry's text

  884. v2.1.232
    Gateway desktop: policy overlays are validated before serving

    Gateway operators get startup errors for bad desktop policy keys instead of silently passing them through.

    found in this entry's text

  885. v2.1.232
    /context returns structured usage, exposed to the SDK as context_usage

    SDK consumers get /context numbers as context_usage on the assistant message, including an over-limit block.

    found in this entry's text

  886. v2.1.232
    Per-turn attribution key sent as tk, and tk is now a reserved metadata name

    tk is now a reserved metadata name and stripped from your extra metadata or body.

    found in this entry's text

  887. v2.1.232
    Structured context_usage alongside the /context table

    The streaming schema carries an optional context_usage field so tools skip parsing the markdown table.

    found in this entry's text

  888. v2.1.232
    The artifact self-update permission is now called artifact

    Self-updating artifact pages now declare an artifact capability, though the old self spelling still works.

    found in this entry's text

  889. v2.1.232
    tengu_turn_end telemetry event

    Every turn now reports why it ended, how long it took and whether a goal was active.

    found in this entry's text

  890. v2.1.232
    additionalMarketplaces settings alias

    additionalMarketplaces now works as an alias for extraKnownMarketplaces in settings files.

    found in this entry's text

  891. v2.1.232
    allowedMarketplaces works as an alias for strictKnownMarketplaces

    Managed settings accept allowedMarketplaces for the marketplace allowlist; older clients still need the canonical key.

    found in this entry's text

  892. v2.1.232
    Gateway sign-in config uses inferenceCredentialKind

    Gateway sign-in config now uses inferenceCredentialKind; the old key still works but warns.

    found in this entry's text

  893. v2.1.232
    Session state objects gain a continueFrom hook with no callers

    Session stores can copy one field to a new instance, the shape of surviving an identity change.

    found in this entry's text

  894. v2.1.232
    sandbox.ripgrep is ignored when set by project settings

    A repo's settings can no longer point sandboxed search at an arbitrary ripgrep binary.

    found in this entry's text

  895. v2.1.229
    git checkout -b is no longer pre-allowed under PowerShell

    On Windows PowerShell, creating a branch during commit or PR flows now asks you for permission.

    found in this entry's text

  896. v2.1.229
    claude plugin install and update gained -y

    Plugin install and update take -y to skip the command confirmation, but not inside a session.

    found in this entry's text

  897. v2.1.229
    Enterprise MCP config now overrides --mcp-config with a named warning

    When enterprise MCP config wins over your --mcp-config, the log names the file and dropped servers.

    found in this entry's text

  898. v2.1.229
    Pull request links are recognised in /cr/ review URLs

    Pull request URLs using a /cr/ path segment are now recognised.

    found in this entry's text

  899. v2.1.229
    Killed background shells show a [killed] marker

    Stopping a background shell appends a [killed] marker so truncated logs are obvious.

    found in this entry's text

  900. v2.1.229
    Artifact links can resolve against a configured host

    Artifact links can point at a custom host you configure instead of the default origin.

    found in this entry's text

  901. v2.1.229
    Self-hosted runner requires --base-dir on Windows

    Self-hosted runners on Windows now require you to set a base directory instead of failing oddly.

    found in this entry's text

  902. v2.1.229
    /teleport hint mentions both directions

    The /teleport tip now mentions you can move sessions both to and from the cloud.

    found in this entry's text

  903. v2.1.229
    /commit-push-pr restricts its own tools

    /commit-push-pr now carries an explicit list of tools it may not call.

    found in this entry's text

  904. v2.1.229
    attribution and includeCoAuthoredBy no longer raise settings-conflict warnings

    Setting commit attribution in more than one place no longer triggers a conflict warning.

    found in this entry's text

  905. v2.1.229
    Whitespace-only prompts are rejected for --cloud and --environment

    Whitespace-only prompts on --cloud and --environment are rejected instead of sent empty.

    found in this entry's text

  906. v2.1.229
    Self-hosted runner requires --base-dir on Windows and validates launcher hooks

    On Windows the self-hosted runner now requires --base-dir, and launcher hook config is validated.

    found in this entry's text

  907. v2.1.229
    queued_notification added to the stdout message protocol

    Claude Code can now buffer notifications and redeliver undrained ones when you resume a session.

    found in this entry's text

  908. v2.1.228
    EISDIR added to the filesystem error code list

    Reading a directory as a file is now recognised as a filesystem error.

    found in this entry's text

  909. v2.1.228
    Managed settings accept per-OS policyHelpers

    Admins can set a different policy helper program per operating system with a new policyHelpers setting.

    found in this entry's text

  910. v2.1.228
    New policyHelpers managed-settings key for per-OS policy helper executables

    Set policyHelpers per platform; WSL falls back to the linux entry, then to the single policyHelper.

    found in this entry's text

  911. v2.1.228
    Skills can be loaded from a syncedSkills directory

    Skills can now load from a syncedSkills folder and show up labelled "synced" in your commands.

    found in this entry's text

  912. v2.1.228
    api-key header is now redacted in logs

    An API key sent in the api-key header is now masked in logs.

    found in this entry's text

  913. v2.1.228
    Artifact database data/users/me resolves to your own user id

    Artifacts can address your own user record as "me" instead of looking up your id.

    found in this entry's text

  914. v2.1.227
    claude rm tells you which session is holding a directory

    When claude rm is blocked, it names the session holding the directory and how to stop it.

    found in this entry's text

  915. v2.1.227
    Local reviews now tell you that --post did nothing

    Using --post on a local review now tells you to use --comment instead.

    found in this entry's text

  916. v2.1.227
    The model can propose a session goal, controlled by modelProposedGoals

    Claude can propose a session goal; modelProposedGoals lets you always confirm or turn it off.

    found in this entry's text

  917. v2.1.227
    Worker sync state is stored in a .ccr-dir-sync folder beside the repo

    Sync state lives in a .ccr-dir-sync folder beside your repo so restarts resume quickly.

    found in this entry's text

  918. v2.1.227
    Device-bound sessions reject --project and agent ownership up front

    Device-bound sessions now reject a project id or agent id immediately with a clear message.

    found in this entry's text

  919. v2.1.227
    /mcp explains servers changed in another session

    /mcp now explains servers that another session enabled or disabled behind your back.

    found in this entry's text

  920. v2.1.227
    ENABLE_TOOL_SEARCH=force now works from settings-composed environment

    ENABLE_TOOL_SEARCH=force now works when set through your settings, not just the shell.

    found in this entry's text

  921. v2.1.227
    ultrareview --post says plainly when nothing was posted

    ultrareview --post now states outright when no comment was posted to the pull request.

    found in this entry's text

  922. v2.1.227
    Synced plugin archives containing .git are re-extracted safely

    Org-synced plugin archives containing a .git entry are rejected and re-extracted safely.

    found in this entry's text

  923. v2.1.227
    claude gateway now identifies itself as the gateway provider

    Running claude gateway now reports gateway as the provider regardless of credentials.

    found in this entry's text

  924. v2.1.227
    A skills directory named synced is now reserved

    A skills folder named synced is skipped, reserved for what claude.ai syncs down.

    found in this entry's text

  925. v2.1.224
    New memory_write tool for saving documents to a connected memory store

    Claude can now save documents into a connected memory store, with secret scanning blocking risky writes.

    found in this entry's text

  926. v2.1.224
    Invalid extraKnownMarketplaces entries are dropped with a warning

    Bad marketplace entries in your settings are now removed and reported as warnings instead of silently accepted.

    found in this entry's text

  927. v2.1.224
    REPL bridge survives /clear instead of dropping

    Running /clear no longer disconnects the editor bridge; it follows you onto the new session.

    found in this entry's text

  928. v2.1.224
    conversation_reset events are no longer forwarded

    Conversation reset events no longer turn into outbound messages, so nothing downstream hears about a new conversation id.

    found in this entry's text

  929. v2.1.224
    --teleport and --cloud show up in claude --help

    --teleport and --cloud now show up in claude --help.

    found in this entry's text

  930. v2.1.224
    Failed @name messages now tell you they failed

    Direct messages you send with @name now warn you when delivery fails.

    found in this entry's text

  931. v2.1.224
    ANTHROPIC_BEDROCK_REGION_PREFIX pins the Bedrock inference-profile region

    Set ANTHROPIC_BEDROCK_REGION_PREFIX to pick which regional inference profile your Bedrock models resolve to.

    found in this entry's text

  932. v2.1.224
    claude plugin eval writes a report and publishes it by default

    Plugin eval now writes report.html and publishes it to claude.ai unless you pass --no-publish.

    found in this entry's text

  933. v2.1.224
    claude self-hosted-runner command group

    A whole new claude self-hosted-runner command tree is available to anyone who types it.

    found in this entry's text

  934. v2.1.224
    Scheduled tasks can resolve loop.md defaults asynchronously

    Scheduled tasks resolve loop.md content asynchronously and skip a fire rather than run unresolved.

    found in this entry's text

  935. v2.1.224
    Clearer error when --bg and --environment are combined

    Combining --bg and --environment now explains they are different backends and shows the right command.

    found in this entry's text

  936. v2.1.224
    New dialogExpiry setting for how long forwarded dialogs wait

    Set dialogExpiry to control how long a forwarded permission prompt waits before resolving to its safe default.

    found in this entry's text

  937. v2.1.224
    New environment variable CLAUDE_CODE_MESSAGING_SOCKET

    Point CLAUDE_CODE_MESSAGING_SOCKET at a socket path to enable session-to-session messaging and stream-json message replay.

    found in this entry's text

  938. v2.1.224
    New setting: crossSessionInbound

    crossSessionInbound accepts accept, hold or refuse for messages arriving from your other sessions.

    found in this entry's text

  939. v2.1.224
    New setting: dialogExpiry

    dialogExpiry accepts 60s, 5m, 10m or never for how long forwarded dialogs and held messages wait.

    found in this entry's text

  940. v2.1.224
    Start a cloud session on a self-hosted environment with --environment

    Start a cloud session on your own environment with claude --environment, plus hidden --ref and --on-branch companions.

    found in this entry's text

  941. v2.1.224
    claude plugin eval init no longer suggests a flag that will not help

    The no-terminal message for eval init dropped a flag suggestion that would not have helped.

    found in this entry's text

  942. v2.1.224
    claude eval --interactive is documented

    claude eval --interactive now appears in help; --interview remains a hidden alias.

    found in this entry's text

  943. v2.1.224
    self-hosted-runner orchestrator polls for spawn hints and runs your own spawn script

    An orchestrator subcommand polls for capacity hints and runs your own spawn-runner script to autoscale.

    found in this entry's text

  944. v2.1.224
    self-hosted-runner setup and doctor walk you through it in a scoped Claude session

    setup and doctor relaunch Claude with a restricted toolset to walk you through runner install and diagnostics.

    found in this entry's text

  945. v2.1.224
    Subagents cannot call memory_write

    Only your main conversation can write memory documents; subagents are blocked from memory_write.

    found in this entry's text

  946. v2.1.224
    claude plugin eval init --interactive fails clearly without a terminal

    Asking for the eval interview without a terminal now fails clearly and tells you the alternative.

    found in this entry's text

  947. v2.1.224
    Drain loops should break on budget_reached, not just terminal stops

    Skill guidance now says polling loops should break on any stop reason except requires_action.

    found in this entry's text

  948. v2.1.224
    vault_ids documented as create-only, and deployments can be updated

    Docs say vault_ids cannot change mid-session, and deployments now have an update endpoint.

    found in this entry's text

  949. v2.1.224
    self-hosted-runner decode-token inspects a session token, verifying it by default

    decode-token prints a session token's claims, verifying signature and expiry by default.

    found in this entry's text

  950. v2.1.223
    Builtin /review command dropped; /code-review takes a target instead

    The /review command is gone; /code-review now takes a PR number, branch or path.

    found in this entry's text

  951. v2.1.223
    Broader ]] quote-desync detection in bash command analysis

    Shell command parsing catches more cases of mismatched quotes around bracket tests.

    found in this entry's text

  952. v2.1.223
    Bash [[ ]] conditionals: two new bail-outs for shell-lexer divergence

    Tricky bash double-bracket conditions are now treated as too complex instead of being misread.

    found in this entry's text

  953. v2.1.223
    blockedMarketplaces policy accepts <owner>/* wildcards

    You can block every marketplace repo under one owner with a single wildcard entry.

    found in this entry's text

  954. v2.1.223
    Artifact and frame URLs accept a prefixed slug

    Artifact and frame links that include a readable slug before the id now work instead of being rejected.

    found in this entry's text

  955. v2.1.223
    Hidden print-mode flag --resume-drops-turn guards truncating resumes

    A hidden print-mode flag lets you name the turn a truncating resume should drop, refusing anything unexpected.

    found in this entry's text

  956. v2.1.223
    PR-review binding validation treats a method input key specially

    PR-review markers now validate a method field, allowing only read actions live and create actions in stamps.

    found in this entry's text

  957. v2.1.223
    SDK stream emits a permission_denied system message

    SDK clients now get an explicit system message when a tool call is denied instead of guessing.

    found in this entry's text

  958. v2.1.223
    Plugin and skill search requests a new user:plugins OAuth scope

    Signing in can request an extra permission for plugin search, though search itself remains policy-gated.

    found in this entry's text

  959. v2.1.222
    Artifacts dialog can dismiss frames with x

    In the artifacts frames dialog, press x to detach the highlighted frame from your session.

    found in this entry's text

  960. v2.1.222
    claude import is stubbed out in this build

    The import command exists but just prints a message instead of starting a session here.

    found in this entry's text

  961. v2.1.222
    Bad metadata in frontmatter and manifests now warns

    You now get a warning when metadata in a skill, command, plugin or marketplace file is the wrong type.

    found in this entry's text

  962. v2.1.222
    Frame strip points to /artifacts when frames overflow

    When too many frames fit on the row, you now see a pointer to /artifacts instead of a bare count.

    found in this entry's text

  963. v2.1.221
    migrate now ends with a prompt audit, and a TODO note ships inside the prompt

    The migrate command now finishes by auditing your prompts and tool descriptions for stale wording.

    found in this entry's text

  964. v2.1.221
    claude-api skill gains a prompt-audit subcommand

    You can run /claude-api prompt-audit to scan prompts and tool descriptions for outdated patterns and get a diff.

    found in this entry's text

  965. v2.1.221
    sandbox.credentials.files gains a mask mode with regex extraction

    You can mask secrets in credential files so sandboxed commands see placeholders while real values are swapped in on egress.

    found in this entry's text

  966. v2.1.221
    PR review payloads accept an in-page approve stamp binding

    Review pages can carry an in-page approve button that gets validated when published.

    found in this entry's text

  967. v2.1.221
    PR review artifacts can carry an "Approve on GitHub" button

    PR review artifact pages can show a pinned button that approves the pull request from your GitHub account.

    found in this entry's text

  968. v2.1.221
    claude doctor reports sandbox credential-mask problems

    claude doctor now lists each sandbox credential-masking problem separately with a specific fix.

    found in this entry's text

  969. v2.1.221
    The Agent SDK validates skills entries before turning them into permission rules

    The SDK now rejects malformed skill names with a clear reason instead of creating a rule that never matches.

    found in this entry's text

  970. v2.1.221
    claude attach now measures time-to-interactive

    Attaching to a background session now times how long it takes to paint and reach an idle prompt.

    found in this entry's text

  971. v2.1.219
    register_repo_root accepts launch-time roots and rejects duplicates

    Registering a repo root now accepts launch-time --add-dir roots and clearly rejects duplicates or bad paths.

    found in this entry's text

  972. v2.1.219
    claude mcp list shows why a server failed

    claude mcp list now tells you why a server failed, like a timeout or HTTP error, not just "Failed to connect".

    found in this entry's text

  973. v2.1.219
    opus5 in the local model listing

    The local model listing endpoint now includes Opus 5 among its available keys.

    found in this entry's text

  974. v2.1.219
    fast_mode_disabled_reason on turn-completion telemetry

    Turn logs now record why fast mode was skipped, such as env setting or model not allowed.

    found in this entry's text

  975. v2.1.219
    MCP policy allow/deny entries now expand ${VAR} environment references, and unsafe URL expansions fail closed

    MCP allow and deny policy entries now expand ${VAR} references, skipping allowlist entries whose expansion looks unsafe.

    found in this entry's text

  976. v2.1.219
    New bundled template file templates/workshop-page.html

    A second bundled workshop page template ships, showing what the HTML authoring style looks like.

    found in this entry's text

  977. v2.1.219
    Managed-agents docs: mid-session system.message model gate widened, plus two path/method typo fixes

    Mid-session system messages now work with more models, and two doc references were corrected.

    found in this entry's text

  978. v2.1.219
    Two new API betas documented: scalar fallbacks: "default" and mid-conversation tool changes

    Docs now describe two beta headers for automatic refusal fallbacks and swapping tools mid-conversation.

    found in this entry's text

  979. v2.1.219
    Index-based memory recall behind tengu_mill_orange

    Memory recall could pick documents from a search index instead of asking the model, but it is disabled.

    found in this entry's text

  980. v2.1.218
    Artifact Tool: read_page_data Action

    found in this entry's text

  981. v2.1.218
  982. v2.1.218
  983. v2.1.218
  984. v2.1.217
  985. v2.1.217
  986. v2.1.217
  987. v2.1.217
  988. v2.1.217
  989. v2.1.216
  990. v2.1.215
  991. v2.1.215
  992. v2.1.213
  993. v2.1.213
  994. v2.1.213
  995. v2.1.213
  996. v2.1.213
  997. v2.1.213
    Hook System: policySettings Source

    found in this entry's text

  998. v2.1.213
    SessionStart Hook: fork Source Value

    found in this entry's text

  999. v2.1.211
    --forward-subagent-text CLI Flag

    found in this entry's text

  1000. v2.1.211
    --callback-port Validation Tightened

    found in this entry's text

  1001. v2.1.210
    MCP Connector Approval Retry (CCR / -32003)

    found in this entry's text

  1002. v2.1.210
  1003. v2.1.210
  1004. v2.1.210
    /doctor Command Description Expanded

    found in this entry's text

  1005. v2.1.207
    Morning Brief Skill (/morning)

    found in this entry's text

  1006. v2.1.207
  1007. v2.1.206
  1008. v2.1.206
  1009. v2.1.205
  1010. v2.1.205
  1011. v2.1.205
    --append-subagent-system-prompt flag

    found in this entry's text

  1012. v2.1.205
    EndConversation model tool

    found in this entry's text

  1013. v2.1.205
    <cc-memory> citation tag tracking

    found in this entry's text

  1014. v2.1.202
  1015. v2.1.202
  1016. v2.1.200
    set_cwd SDK Tool

    found in this entry's text

  1017. v2.1.200
  1018. v2.1.200
    manual as Alias for default Permission Mode

    found in this entry's text

  1019. v2.1.200
  1020. v2.1.200
  1021. v2.1.200
    gh CLI Detection Expanded

    found in this entry's text

  1022. v2.1.200
  1023. v2.1.198
    /agents Wizard Removed

    found in this entry's text

  1024. v2.1.198
  1025. v2.1.193
    disableSideloadFlags Enterprise Setting

    found in this entry's text

  1026. v2.1.193
  1027. v2.1.193
    Background Operator & Safety Warning

    found in this entry's text

  1028. v2.1.193
    model_refusal_no_fallback SDK Event

    found in this entry's text

  1029. v2.1.193
  1030. v2.1.193
  1031. v2.1.190
  1032. v2.1.187
    /pause-memory replaces /toggle-memory

    found in this entry's text

  1033. v2.1.187
    Skill token footprint in /usage

    found in this entry's text

  1034. v2.1.187
  1035. v2.1.187
  1036. v2.1.187
  1037. v2.1.187
    preset:default in allowed-tools

    found in this entry's text

  1038. v2.1.186
    respondToBashCommands Setting

    found in this entry's text

  1039. v2.1.186
    Network strictAllowlist Setting

    found in this entry's text

  1040. v2.1.186
    deniedDomains Now Accepts Deny-All Wildcard

    found in this entry's text

  1041. v2.1.183
  1042. v2.1.182
  1043. v2.1.182
  1044. v2.1.182
    disableClaudeAiConnectors Setting

    found in this entry's text

  1045. v2.1.182
    attribution.sessionUrl Setting

    found in this entry's text

  1046. v2.1.182
  1047. v2.1.182
    MCP resources/directory/read Support

    found in this entry's text

  1048. v2.1.182
    /doctor Hint on Setup Issue Count

    found in this entry's text

  1049. v2.1.182
    SendUserFile Tool — Usage Example Added

    found in this entry's text

  1050. v2.1.181
  1051. v2.1.181
    /design Command — Claude Design Hub

    found in this entry's text

  1052. v2.1.181
  1053. v2.1.181
  1054. v2.1.181
    sandbox.allowAppleEvents Setting (macOS)

    found in this entry's text

  1055. v2.1.181
  1056. v2.1.181
  1057. v2.1.179
    Better Error Messages for --json-schema

    found in this entry's text

  1058. v2.1.179
  1059. v2.1.179
  1060. v2.1.179
  1061. v2.1.178
  1062. v2.1.178
  1063. v2.1.176
    Grep Tool: Expanded Allowed Flags for rg

    found in this entry's text

  1064. v2.1.176
    rm/rmdir Safety Analysis Expanded

    found in this entry's text

  1065. v2.1.176
    sed Command Static Analysis

    found in this entry's text

  1066. v2.1.176
  1067. v2.1.175
  1068. v2.1.175
    availableModels Propagated from Policy Tier

    found in this entry's text

  1069. v2.1.175
  1070. v2.1.174
    wheelScrollAccelerationEnabled Setting

    found in this entry's text

  1071. v2.1.174
    --pool Backend Error Message

    found in this entry's text

  1072. v2.1.174
  1073. v2.1.174
  1074. v2.1.174
  1075. v2.1.170
  1076. v2.1.170
    overageInUse Rate Limit Field

    found in this entry's text

  1077. v2.1.170
  1078. v2.1.169
  1079. v2.1.169
  1080. v2.1.169
    disableBundledSkills Setting

    found in this entry's text

  1081. v2.1.169
  1082. v2.1.169
    LSP diagnostics Setting

    found in this entry's text

  1083. v2.1.169
  1084. v2.1.169
    /agents --json Gains --all Flag

    found in this entry's text

  1085. v2.1.169
  1086. v2.1.169
  1087. v2.1.169
    /goal Error Message Updated

    found in this entry's text

  1088. v2.1.167
    Finer-grained managedByHost flag tracking

    found in this entry's text

  1089. v2.1.166
  1090. v2.1.166
    fallbackModel setting in settings.json

    found in this entry's text

  1091. v2.1.166
  1092. v2.1.166
  1093. v2.1.140
  1094. v2.1.140
    "skills-dir" Marketplace Name Reserved

    found in this entry's text

  1095. v2.1.140
    /goal Now Blocked by allowManagedHooksOnly

    found in this entry's text

  1096. v2.1.140
    Marketplace autoUpdate Synced from Settings

    found in this entry's text

  1097. v2.1.140
  1098. v2.1.139
    /goal Status and Completion Behavior

    found in this entry's text

  1099. v2.1.136
  1100. v2.1.136
    Broader /effort max Documentation

    found in this entry's text

  1101. v2.1.126
  1102. v2.1.124
    claude project purge command

    found in this entry's text

  1103. v2.1.124
  1104. v2.1.124
  1105. v2.1.124
  1106. v2.1.124
  1107. v2.1.124
  1108. v2.1.124
  1109. v2.1.124
    DISABLE_GROWTHBOOK environment variable

    found in this entry's text

  1110. v2.1.124
    claude install deprecation banner

    found in this entry's text

  1111. v2.1.124
    token-efficient-tools beta header

    found in this entry's text

  1112. v2.1.124
    MCP file_suggestions SDK request

    found in this entry's text

  1113. v2.1.124
  1114. v2.1.124
    update-config skill prompt rewritten

    found in this entry's text

  1115. v2.1.124
    @-mention attribution metadata

    found in this entry's text

  1116. v2.1.123
  1117. v2.1.122
    Improved find Command Safety Checks

    found in this entry's text

  1118. v2.1.122
    Removed loopAutoEnabled Setting

    found in this entry's text

  1119. v2.1.121
    updatedToolOutput Hook Property

    found in this entry's text

  1120. v2.1.121
    MCP Server alwaysLoad Option

    found in this entry's text

  1121. v2.1.121
    File Read encoding Parameter

    found in this entry's text

  1122. v2.1.121
    Daemon --keep-workers Flag

    found in this entry's text

  1123. v2.1.121
    claude stop Replaces claude kill

    found in this entry's text

  1124. v2.1.121
    claude daemon assistant add Subcommand

    found in this entry's text

  1125. v2.1.121
    Improved -p (Print) Flag Description

    found in this entry's text

  1126. v2.1.120
    claude ultrareview CLI Subcommand

    found in this entry's text

  1127. v2.1.120
    memory-types Skill

    found in this entry's text

  1128. v2.1.120
    Chrome Extension: tabs_close_mcp Tool

    found in this entry's text

  1129. v2.1.120
    hideVimModeIndicator Status Line Setting

    found in this entry's text

  1130. v2.1.120
    CLAUDE_EFFORT System Prompt Substitution

    found in this entry's text

  1131. v2.1.119
    Fleet View (claude agents)

    found in this entry's text

  1132. v2.1.119
  1133. v2.1.119
    Daemon Configuration (daemon.json)

    found in this entry's text

  1134. v2.1.119
    Interactive Daemon Hub (/daemon)

    found in this entry's text

  1135. v2.1.119
  1136. v2.1.119
    --json-path Flag for Daemon

    found in this entry's text

  1137. v2.1.119
    --setting-sources Flag

    found in this entry's text

  1138. v2.1.119
    MCP Completion Support (McpCompletable)

    found in this entry's text

  1139. v2.1.117
  1140. v2.1.117
    file Command Removed from Shell Allowlist

    found in this entry's text

  1141. v2.1.116
    /mode Command

    found in this entry's text

  1142. v2.1.116
    /fast Command (Non-Interactive Variant)

    found in this entry's text

  1143. v2.1.116
    MCP Direct Tool Invocation (mcp_call)

    found in this entry's text

  1144. v2.1.116
    autoUploadSessions Configuration Setting

    found in this entry's text

  1145. v2.1.116
  1146. v2.1.116
    /ultrareview GitHub Repository Validation

    found in this entry's text

  1147. v2.1.116
    --version --verbose Support

    found in this entry's text

  1148. v2.1.110
    /tui Command — Switch Terminal Renderers

    found in this entry's text

  1149. v2.1.110
    /focus Command — Minimal Transcript View

    found in this entry's text

  1150. v2.1.110
  1151. v2.1.110
    /recap and Away Summary Enabled by Default

    found in this entry's text

  1152. v2.1.110
    /ultrareview PR Review Mode

    found in this entry's text

  1153. v2.1.108
  1154. v2.1.108
    /clear Command Description Updated

    found in this entry's text

  1155. v2.1.108
    /rewind Gains undo Alias

    found in this entry's text

  1156. v2.1.98
  1157. v2.1.98
  1158. v2.1.98
  1159. v2.1.97
    /dream Slash Command [Gradual Rollout]

    found in this entry's text

  1160. v2.1.97
    viewMode Configuration Setting

    found in this entry's text

  1161. v2.1.97
    refreshInterval for Status Line

    found in this entry's text

  1162. v2.1.97
    --session-mirror Flag (SDK Internal)

    found in this entry's text

  1163. v2.1.97
  1164. v2.1.97
    excludeDynamicSections SDK Option

    found in this entry's text

  1165. v2.1.97
    Worktree Branch Creation: --no-track

    found in this entry's text

  1166. v2.1.92
    OAuth offline_access Scope

    found in this entry's text

  1167. v2.1.92
    --session-timeout Flag

    found in this entry's text

  1168. v2.1.92
    CLAUDE_CODE_MAX_RETRIES Validation

    found in this entry's text

  1169. v2.1.91
    /feedback Command Provider-Aware Disabling

    found in this entry's text

  1170. v2.1.91
    Permission Mode: auto Classifier

    found in this entry's text

  1171. v2.1.91
    Removed: /output-style Command

    found in this entry's text

  1172. v2.1.91
    Removed: /pr-comments Command

    found in this entry's text

  1173. v2.1.86
    Skill anthropic/alwaysLoad Metadata

    found in this entry's text

  1174. v2.1.86
  1175. v2.1.85
    Hook Conditional Filtering via if Field

    found in this entry's text

  1176. v2.1.84
    --task-budget CLI Flag

    found in this entry's text

  1177. v2.1.84
  1178. v2.1.83
    /version Command

    found in this entry's text

  1179. v2.1.83
    useAutoModeDuringPlan Setting

    found in this entry's text

  1180. v2.1.83
  1181. v2.1.83
    sandbox.failIfUnavailable Setting

    found in this entry's text

  1182. v2.1.83
    shift+tab Plan Approval Feedback

    found in this entry's text

  1183. v2.1.83
  1184. v2.1.83
  1185. v2.1.81
    SessionStart Hook initialUserMessage Field

    found in this entry's text

  1186. v2.1.79
    --claudeai CLI Flag [In Development]

    found in this entry's text

  1187. v2.1.79
    git push Telemetry

    found in this entry's text

  1188. v2.1.79
    Removed process.title Override

    found in this entry's text

  1189. v2.1.78
  1190. v2.1.78
    Transcript Viewer: Press q to Exit

    found in this entry's text

  1191. v2.1.78
  1192. v2.1.77
    /branch Command (renamed from /fork)

    found in this entry's text

  1193. v2.1.77
  1194. v2.1.77
    Sandbox allowRead Setting

    found in this entry's text

  1195. v2.1.77
    update-config Skill

    found in this entry's text

  1196. v2.1.77
    /copy N — Copy Earlier Responses

    found in this entry's text

  1197. v2.1.77
    Agent Resume via SendMessage

    found in this entry's text

  1198. v2.1.77
    Enhanced /init Command [Gradual Rollout]

    found in this entry's text

  1199. v2.1.76
    /effort Slash Command

    found in this entry's text

  1200. v2.1.76
    --plugin-dir Flag Now Repeatable

    found in this entry's text

  1201. v2.1.73
    --remote-control CLI Flag

    found in this entry's text

  1202. v2.1.73
  1203. v2.1.71
    Auto Mode (--permission-mode auto)

    found in this entry's text

  1204. v2.1.71
    --workload CLI Flag

    found in this entry's text

  1205. v2.1.71
  1206. v2.1.69
    --prefill CLI Flag

    found in this entry's text

  1207. v2.1.69
    /reload-plugins Command

    found in this entry's text

  1208. v2.1.69
  1209. v2.1.69
    pluginTrustMessage for Enterprise

    found in this entry's text

  1210. v2.1.69
    includeCoworkInstructions Setting

    found in this entry's text

  1211. v2.1.69
    pathPattern for Marketplace Restrictions

    found in this entry's text

  1212. v2.1.66
    Sub-Agent Context Forking (forkContext)

    found in this entry's text

  1213. v2.1.64
    /reload-plugins Command

    found in this entry's text

  1214. v2.1.64
    InstructionsLoaded Hook Event

    found in this entry's text

  1215. v2.1.64
    asyncRewake Hook Option

    found in this entry's text

  1216. v2.1.64
    commitWorkflowInstructions Setting

    found in this entry's text

  1217. v2.1.64
    showThinkingSummaries Setting

    found in this entry's text

  1218. v2.1.64
    pathPattern for Marketplace Source Matching

    found in this entry's text

  1219. v2.1.53
  1220. v2.1.53
  1221. v2.1.53
    Improved detectFileEncoding Error Handling

    found in this entry's text

  1222. v2.1.53
    Session Metadata Schema for listSessions

    found in this entry's text

  1223. v2.1.51
    /commit-push-pr Command

    found in this entry's text

  1224. v2.1.51
    .worktreeinclude File Support

    found in this entry's text

  1225. v2.1.50
    /diff Command

    found in this entry's text

  1226. v2.1.50
  1227. v2.1.42
    /desktop Command

    found in this entry's text

  1228. v2.1.40
    claude auth Command Group

    found in this entry's text

  1229. v2.1.36
    New User Setting: fastMode

    found in this entry's text

  1230. v2.1.30
    /insights Command

    found in this entry's text

  1231. v2.1.30
    /debug Skill

    found in this entry's text

  1232. v2.1.30
    .claude/rules/ Directory Support

    found in this entry's text

  1233. v2.1.27
    --from-pr Flag for PR-Linked Session Resume

    found in this entry's text

  1234. v2.1.20
    Removed /commit Keybinding

    found in this entry's text

  1235. v2.1.7
    /color Command

    found in this entry's text

  1236. v2.0.72
    /mobile Command - Mobile App QR Codes

    found in this entry's text

  1237. v2.0.72
    File Indexing with git ls-files

    found in this entry's text

  1238. v2.0.70
    Feature Discovery System (/discover)

    found in this entry's text

  1239. v2.0.66
    Prompt Stash (Ctrl+S)

    found in this entry's text

  1240. v2.0.65
    Session Tagging with /tag Command

    found in this entry's text

  1241. v2.0.59
    /migrate-installer Command Removed

    found in this entry's text

  1242. v2.0.58
  1243. v2.0.58
    Custom API Beta Headers (--betas)

    found in this entry's text

  1244. v2.0.56
    New /plan Command

    found in this entry's text

  1245. v2.0.54
  1246. v2.0.42
    GitHub App Installation Validation

    found in this entry's text

  1247. v1.0.124
    Sandboxed Bash Mode (-sb/--sandboxed-bash)

    found in this entry's text

  1248. v1.0.122
    Duplicate .gitignore Entries

    found in this entry's text

  1249. v1.0.113
    Sessions API Support (Feature-Flagged)

    found in this entry's text

  1250. v1.0.62
    🆕 Enhanced /add-dir Command

    found in this entry's text

  1251. v1.0.11
    New /upgrade Command

    found in this entry's text

  1252. v1.0.5
  1253. v1.0.5
    Improved eG() Function (formerly AZ)

    found in this entry's text

  1254. v0.2.117
    Enhanced Print Mode (--print) 📄

    found in this entry's text

  1255. v0.2.29
    Enhanced .gitignore Support for LS Command

    found in this entry's text

First cited

4

The earliest release whose published evidence quoted /code was v2.1.136, 8 May 2026. That is the oldest release this project wrote about it, so it is a floor on the name's age and not the release that introduced it. It is not a presence reading: which builds carried the name is the table below.

ReleaseDateThe span that was quoted
v2.1.1368 May 2026/code/routines
v2.1.2213 Aug 2026Posts an approving review of <code class="stamp-target"></code> from your own GitHub account, as you, if the branch is unchanged.
v2.1.22912 Aug 2026/code/artifact/
v2.1.30419 Oct 2026it or its repository is your home directory, is in a hidden folder there, or is another such place; start from a project folder such as ~/code/my-app

Presence across releases

0

The miner has never read a build containing this name. It is here because a changelog entry of ours names it, which is evidence that it existed and not evidence of which releases carried it. The inventory starts at v2.1.138 and everything older than that was never mined.

Read out of the published npm bundle release by release, and out of Anthropic's own documentation as this site captured it. Nothing on this page is a description anybody here wrote about what the slash command does. All slash commands.

Feedback