Follow Discord
Sweep 25 Sep 2026 · 19:33Z Build v2.1.283 504 read Stable v2.1.274 Latest v2.1.283 Next v2.1.283 Feeds RSS JSON llms.txt llms-full.txt Unofficial

CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT

env in the build documented JSON

A Claude Code environment variable, read out of the shipped bundle. It has been in the build since v2.1.281, including the newest one read.

Set to 1 to turn off the critical-path check for a recursive rm whose target is entirely the output of a command substitution, such as rm -rf "$(pwd)". The other critical-path checks keep running. Set it in the environment that launches Claude Code, since Claude Code ignores a copy delivered through a settings env block. Requires Claude Code v2.1.281 or later

Anthropic's own wording. Read off Environment variables, captured 2026-09-26.

First seen v2.1.281 23 Sep 2026
Last seen v2.1.283 25 Sep 2026
Builds3 / 126on this box, as of v2.1.283
Written about v2.1.281 first named in a changelog, 23 Sep 2026
v2.1.281in the build not in the build never minedv2.1.283

In the changelogs

2

Releases whose published page names CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT.

  1. v2.1.281
    rm -r on a command-substitution target now always asks, unless an env var or flag turns it off

    A recursive rm aimed at the output of a command substitution now always asks you first, and permission rules cannot auto-allow it

    found in this entry's text

  2. v2.1.281
    rm -r on command-substitution output now always prompts (tengu_iridescent_boot, CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT)

    rm -r on a path made entirely of $(...) or backtick output now always asks, and permission rules cannot auto-allow it

    found in this entry's text

First cited

1

The earliest release whose published evidence quoted CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT was v2.1.281, 23 Sep 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.28123 Sep 2026CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT

Presence across releases

1
BuildsHow manyDatesReading
v2.1.281 – v2.1.2833 builds23 Sep 2026 → 25 Sep 2026 ◆in the build

Build by build

3

One row per release since the first build this name was read out of. Absent means the build was read and the name was not in it, never mined means no bundle for that release was ever archived, and a declared type or a default is only ever what that release's own bundle stated.

BuildDateStateThe record behind it
v2.1.28123 Sep 2026·addedverdict: added · bool
v2.1.28224 Sep 2026·presentverdict: present · bool
v2.1.28325 Sep 2026·presentverdict: present · bool

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 environment variable does. All environment variables.

Feedback