Bible Network Crypto DeFi Onchain RWA AI Agent Stablecoin Chain SAFU CryptoTax DeFAI AGI Claude Me Claude Skill Claude Design Claude Cowork
Independent Media
Not affiliated with any project
Exploring the Frontier of AI Intelligence
claude-me.com
LATEST
Claude Autonomously Discovers a Novel CRISPR-Like Enzyme System — 950 Agents, 21 Hours, and Scientists Still Aren't Sure What It Does  ·  Claude Code Adds Model Version Locking: How availableModelsMatch: "exact" and deniedModels Actually Work  ·  Claude Code's New rm Command Rule: A Two-Minute Timeout That Denies Instead of Hanging Forever  ·  How to Set Up Claude Code's Screen Reader Mode: A Complete Guide for Blind and Low-Vision Developers  ·  Claude Artifacts Can Read Live MCP Data or Get a Public Link — Never Both, on Any Plan  ·  Claude Code's Auto Mode Classifier Is Now Free — Unless You're Behind a Gateway, Where It Quietly Isn't
practice

Claude Code's New rm Command Rule: A Two-Minute Timeout That Denies Instead of Hanging Forever

30-Second Version · For the impatient
Confirmation on a dangerous command no longer hangs forever — a two-minute timeout auto-denies and lets the pipeline keep moving, but it changes how waiting is handled, not the danger judgment itself.

Full Explanation +
01 · Why did this happen?

After the two-minute timeout auto-denies an rm command, what record is left, and how do I trace it afterward?

The published behavior notes mention the system attaches a rewrite hint, which means the denial event itself is visible rather than happening silently — at minimum, the current run's output or logs will show that this step was denied along with a suggested alternative. If your pipeline pipes Claude Code's output to a log file or monitoring system, tracing which step got auto-denied afterward is technically feasible — but you need to confirm your log collection actually captures this type of timeout-denial message, rather than assuming it's automatically fully recorded.

If your pipeline has an auditing requirement around which steps get skipped, it's worth actually testing a timeout scenario once to confirm the message really does get captured by your logging system.

02 · What is the mechanism?

How does this two-minute limit differ from the confirmation prompt in ordinary interactive use of Claude Code (someone watching the screen)?

The difference lies in this timeout mechanism's scope — the published notes specifically point to --dangerously-skip-permissions mode and Auto Mode, both of which are designed for scenarios with minimal or zero human oversight in the first place. Confirmation prompt behavior during ordinary interactive use (neither mode enabled, manually confirming each operation step by step) isn't within the scope of this update — your manual confirmation flow while operating Claude Code at a terminal should theoretically be unaffected.

This distinction matters, because mistakenly assuming every confirmation prompt in every context now auto-denies after two minutes could lead you to misjudge the time constraints during your own manual operation.

03 · How does it affect me?

If my scheduled pipeline assumed all dangerous operations would wait for human confirmation before continuing, could this update make the actual behavior inconsistent with that original design assumption?

Yes, and this is exactly what's most worth re-examining after upgrading. If your original pipeline logic assumed "a dangerous operation stalling on confirmation means someone will definitely handle it in real time," that assumption no longer holds once the two-minute timeout is active — with no one present, the system auto-denies after two minutes and lets the pipeline continue, rather than staying stalled until you get to it the next morning.

The recommended response is to re-audit which steps in your pipeline depend on a dangerous operation actually succeeding, and for those critical steps, evaluate whether the pipeline continuing after a timeout-denial could cause later steps to operate on a false assumption (for example, assuming old data was cleared when the deletion was actually denied and never happened).

04 · What should I do?

Is there a simple rule of thumb for deciding whether to disable this timeout for a given pipeline?

A practical rule of thumb: ask yourself, "if this rm command gets denied and the pipeline continues anyway, would that produce an incorrect or inconsistent result?" If the answer is no — say, it's just clearing temp files, a non-essential step where skipping it doesn't affect the correctness of the final outcome — keeping the default two-minute timeout is reasonable, trading that for the reliability of not having the whole pipeline stall on a single step. If the answer is yes — say, the deletion is a prerequisite for later steps to behave correctly — you should consider disabling the timeout with CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT=1 and instead handle the no-one-to-confirm scenario some other way (such as actually ensuring someone is on call to monitor it), rather than letting it get silently skipped.

Full Content +

In increasingly automated workflows, one often-underestimated risk is this: what should happen when Claude Code encounters a dangerous operation requiring confirmation while running unattended? The old behavior was to simply hang and wait for input — if no one was around, the entire Scheduled Task or automation pipeline would stall indefinitely. A recent release introduces a time limit for commands like rm, changing the "no one to confirm" scenario from "hang forever" to "safely auto-deny and keep going."

How the New Rule Actually Works

Under --dangerously-skip-permissions mode or Auto Mode, whenever Claude Code is about to run an rm command flagged as dangerous, the system still surfaces a confirmation prompt as before — but now with a cap: if no one responds within two minutes, the system stops waiting indefinitely and automatically treats it as a denial, attaching a rewrite hint suggesting a possible alternative approach. After the denial, the overall workflow can continue rather than stalling in place — a meaningful reliability improvement for Scheduled Tasks or long-running background agent pipelines. Previously, one dangerous command stuck waiting for confirmation could stall an entire overnight automation run; now the worst case is that single step gets skipped, while the pipeline itself keeps moving.

How to Turn This Off If You Actually Need Indefinite Waiting

This two-minute cap is on by default, but can be disabled via the environment variable CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT=1, restoring the previous indefinite-wait behavior. When would you actually want to disable it? If your unattended pipeline actually has someone monitoring an alerting system and planning to manually step in and confirm dangerous operations rather than have them auto-denied, keeping the pipeline in a waiting state by disabling this timeout makes more sense — because after an auto-denial, that deletion simply doesn't happen, and if that deletion was actually a necessary step in the pipeline, the auto-denial could cause later steps to fail because a prerequisite operation never completed.

What This Fixes Is "Hanging," Not "Danger" Itself

It's worth noting that this update addresses "what to do when there's no one to confirm," not the underlying logic Claude Code uses to judge whether a given rm command is dangerous in the first place — the danger threshold hasn't gotten looser or stricter; what's changed is purely how a confirmation timeout gets handled. In other words, this is not an update that "loosens safety restrictions" — it's one that "prevents the safety mechanism itself from dragging down overall pipeline reliability." These two things are easy to conflate when discussing this update.

What This Means for Your Money

If you're already running unattended Claude Code pipelines via scheduled tasks or Auto Mode, this update directly reduces the odds of a scenario where a dangerous command stalls on confirmation overnight and you discover the next morning that the entire batch never ran — saving you the debugging time that used to go into figuring out why a task hung. But if your pipeline design depends on certain deletion operations actually completing before it can continue (say, clearing a temp folder before writing new results), you should re-examine whether those specific steps could get silently skipped by the two-minute auto-denial after upgrading, creating a logical inconsistency downstream — rather than assuming every denied dangerous operation is automatically a safe default.

Sources: Claude Code changelog
Diagram
Timeout Behavior Change for Dangerous rm Commands過去無人確認會無限期卡住,新版本兩分鐘逾時後自動拒絕並讓流程繼續Dangerous rm Confirmation: Before vs AfterBeforeAfter (v2.1.283+)rm command triggers promptNo one respondsWaits forever — pipeline stallsrm command triggers prompt2 min, no responseAuto-deny + rewrite hintPipeline continuesClaude Me · claude-me.com
Feel free to share. Please credit the source.
Ask a Question
Please enter at least 10 characters
Related Articles
Claude Code Adds Model Version Locking: How availableModelsMatch: "exact" and deniedModels Actually Work
practice · Sep 28
Claude Code's Auto Mode Classifier Is Now Free — Unless You're Behind a Gateway, Where It Quietly Isn't
practice · Sep 26
Claude Code Now Reads AGENTS.md: The Four instructionFiles Modes and a CLAUDE.local.md Priority Trap
practice · Sep 26
Claude Artifacts Can Read Live MCP Data or Get a Public Link — Never Both, on Any Plan
practice · Sep 26
More Related Topics