Strategist · Designer · Operator

Launch
with Ben



Claude Code

Stop Claude Code From Deferring to 'Next Session': One Rule

Claude Code keeps deferring work to a 'next session' that never comes. One rule in your global CLAUDE.md stops the stalling for good.

The short version

Claude Code keeps suggesting you stop or defer in-scope work to a next session. One rule in your global CLAUDE.md, never gate progress, raises the odds it stops, though it is guidance and not a guarantee.

What you will learn

  • What progress gating looks like and why it shows up
  • The one rule to add to your global CLAUDE.md
  • Why the file location ~/.claude/CLAUDE.md matters
  • When to use a hook instead of a rule

Who it is for

Anyone on long Claude Code builds who keeps being asked if they are ready to pause.

Skip it if

You never see these soft stops, or you already enforce behavior with hooks.

You leave with

One line to paste into your global CLAUDE.md today.


If you use Claude Code heavily, you’ve seen this:

  • “Good session. Ready to pause?”
  • “Let’s tackle the rest in a fresh session.”
  • “This was a good stopping point.”

At first it feels harmless. Then it shows up in the middle of a multi-phase build, and suddenly your coding agent is trying to manage your schedule.

I have 1,200+ hours in Claude Code. Over the last two weeks, this pattern became impossible to ignore.

What the behavior looks like

PatternWhat it sounds likeWhy it’s a problem
“Good session”Session wrap-upImplies stopping was part of the goal
“Let’s do X next session”Handoff planningReframes in-scope work as future work
“Ready to pause?”Courtesy promptInterrupts momentum you didn’t ask to break
“Fresh session”Compaction-aware planningUseful near limits, annoying everywhere else

None of these are catastrophic on their own. Across a long build, they add up. They create fake checkpoints you didn’t ask for. They shift Claude from execution mode into permission-seeking mode.

Why Claude is doing this

Between mid and late March 2026, Anthropic shipped a dense run of session-continuity changes to Claude Code. Twelve releases in three weeks, many touching compaction, resume, and session handling directly:

VersionDateRelevant change
v2.1.78Mar 17Improved memory usage and startup time when resuming large sessions
v2.1.83Mar 25Fixed background subagents becoming invisible after context compaction
v2.1.84Mar 26Added idle-return prompt nudging users after 75+ minutes to /clear
v2.1.85Mar 26Fixed /compact failing when conversation too large; fixed autocompact thrash loop
v2.1.89Apr 1Fixed autocompact detecting 3x refill cycles; fixed nested CLAUDE.md re-injection in long sessions

The behavior is also well-documented in user reports. Issue #6159, “Agent Reliability: Claude Stops Mid-Task and Fails to Complete Its Own Plan/Todo List,” describes exactly this: Claude generates a multi-phase plan, completes phases 1-3, then stops and summarizes as if the job is done. Phases 4-6 sit unchecked on its own todo list. This is the same failure mode that makes fixing things in the right order so important. If Claude stops halfway through a remediation sequence, you’re left with a half-fixed codebase.

Claude didn’t suddenly learn memory. It got more aggressive about preparing for continuity before context pressure gets ugly. That’s genuinely useful, and post-compaction recovery is cleaner now, especially in longer sessions.

The problem is when that internal continuity logic leaks into normal execution as soft stop signals.

The problem: progress gating

I call this progress gating: when Claude interrupts momentum, suggests deferring already-scoped work, or frames continued execution as a separate decision you now need to make.

Helpful continuity: Save remaining TODOs before compaction. Preserve project state silently. Recover smoothly after context reset.

Progress gating: Suggest stopping when you didn’t ask. Reframe unfinished work as future work. Ask permission to continue work already in scope.

The problem isn’t memory. The problem is gating.

The fix: a global rule in ~/CLAUDE.md

I added one rule to my global ~/CLAUDE.md so Claude can still save context before compaction, but stops framing it as a stopping point.

Add this to ~/CLAUDE.md

Don't

  • Never gate progress. Don’t suggest stopping, winding down, or deferring in-scope work to a future session. The user decides when to stop. Save context silently — don’t frame it as a stopping point.

Put it near the top, ideally inside a short “Golden Rules” section. (The same file where ground truth rules for AI audits belong.)

Get the location right, because this is where I had it wrong for months. Anthropic documents the personal, every-project scope as ~/.claude/CLAUDE.md, not ~/CLAUDE.md:

ScopeLocationApplies to
User instructions~/.claude/CLAUDE.mdevery project on your machine
Project instructions./CLAUDE.md or ./.claude/CLAUDE.mdthat repo, shared with the team

A bare ~/CLAUDE.md does work, but only by accident: Claude Code “reads CLAUDE.md files by walking up the directory tree from your current working directory” (Claude Code docs). So it loads for projects that sit under your home directory and silently does not for projects that do not. Mine live in /Applications/MAMP/htdocs, which is why the rule kept not applying and I assumed Claude was ignoring it.

Two things make the global file the right home for this rule. CLAUDE.md files are “loaded at the start of every conversation,” and a project-root CLAUDE.md “survives compaction: after /compact, Claude re-reads it from disk and re-injects it into the session.” A reminder you type into chat survives neither.

What a CLAUDE.md rule can and cannot do

One caveat worth stating plainly, because it is in Anthropic’s own troubleshooting page: “CLAUDE.md content is delivered as a user message after the system prompt, not as part of the system prompt itself. Claude reads it and tries to follow it, but there’s no guarantee of strict compliance.”

So this rule raises the odds. It is not a wall. When you need a wall, the docs point at a PreToolUse hook instead, which runs regardless of what Claude decides. That gap between guidance and enforcement is the same one behind why Claude Code ignores your CLAUDE.md.

The rule

Save the context. Don’t gate the progress.

Keep the compaction awareness. Keep the memory. Keep the handoff quality. Kill the soft stops.

When a session genuinely does end, by your choice and not Claude’s, that’s the right moment to run a retrospective and capture what actually happened before the specifics fade.


Related:

Sources

Ben Peetermans

Ben Peetermans

I build MVPs and run ad campaigns with AI, and I write these notes from real projects. Twenty years shipping for the web. If you want someone who works with these tools every day to build yours, that is what I do.