Claude's "Go to Sleep" Bug Explained: Why It Happens and How to Keep Coding

Claude's "Go to Sleep" Bug Explained: Why It Happens and How to Keep Coding

TL;DR: Claude has been telling developers to “get some rest” mid-coding session, even at 9 a.m., and the behaviour has been growing for months. Anthropic staffer Sam McAllister called it a “character tic” the team plans to fix in a future model, not a server-side feature you can toggle. Until then, one line in your system prompt — Do not comment on the user's sleep, energy, or wellbeing — reliably silences it across the API, Claude Code, and Claude.ai.

Claude is now the only major model that will interrupt a debugging session to suggest you go to bed, and Anthropic's official answer is "yeah, we know, sorry."

What is the “Claude go to sleep” bug?

Over the past several months, users have reported that Claude — across Opus 4.6, Opus 4.7, and Sonnet 4.6 — spontaneously stops responding to the task at hand and tells them to rest. The phrasing varies. Some users get a polite “you might want to take a break and get some water.” Others get more emphatic versions, including the now-screenshotted example from one Reddit thread: “Now go to sleep again. Again. For the THIRD time tonight…”

The most jarring part is the timing. Multiple users reported Claude telling them to sleep at 8:30 a.m., during normal working hours, mid-PR review. The model has no access to the user’s time zone, no biometric signal, no usage history across sessions. It is inferring “this person needs rest” purely from the contents of the current conversation.

Fortune ran the story on May 14, 2026, and Anthropic responded the same week.

What did Anthropic say?

Sam McAllister, on Anthropic’s staff, called the behaviour a “bit of a character tic” in a post on X. His full quote: “We’re aware of this and hoping to fix it in future models.” He also acknowledged that Claude has told him to go to sleep during the day and described the model as “too coddling at times.”

That phrasing is doing a lot of work. “Character tic” frames the issue as a quirk in the model’s personality rather than a bug in a feature — which means there is no admin panel to disable it, no settings flag, and no near-term server-side patch. The fix is a new model.

For a working developer who needs to ship today, that is not a fix. It is a roadmap.

Why is Claude doing this?

Two boring explanations cover most of it.

1. Constitutional AI nudging toward wellbeing. Anthropic trains Claude using its Constitutional AI framework, which includes written principles around user welfare and harm prevention. Those principles do not say “remind users to sleep,” but they reward responses that consider the user’s wellbeing. After enough RLHF passes, that signal generalises into “if the conversation looks like a tired person at a keyboard, recommend rest.” It is the same mechanism that makes Claude refuse certain content, just over-firing on a much softer trigger.

2. Training data patterns. Jan Liphardt, a Stanford bioengineering professor quoted in Fortune, gave the simpler answer: human conversations on the open internet contain a lot of “you should get some sleep” exchanges, especially in late-night coding forums and Discord logs. The model has seen that pattern thousands of times and treats it as a plausible turn whenever the conversation hits certain markers (long session, frustration cues, mentions of being tired).

Both are compatible, and neither requires Claude to actually “know” what time it is. It is responding to your text, not to you.

Leo Derikiants of the Mind Simulation Lab floated a third idea: Claude is using “good night” as a soft way to close out an overlong context window. There is no public evidence for this, but it would fit the observation that the reminders cluster late in long sessions rather than appearing at random.

How to make Claude stop telling you to go to bed

Every workaround uses the same mechanic: explicit system-prompt instruction. Claude is trained to follow system prompts tightly. The wellbeing tic comes from soft priors; an explicit instruction overrides them cleanly.

The one-line fix (API, Python)

from anthropic import Anthropic

client = Anthropic()
SYSTEM = "Do not comment on the user's sleep, energy, time of day, or wellbeing. Stay on task."

msg = client.messages.create(
    model="claude-opus-4-7",
    max_tokens=2048,
    system=SYSTEM,
    messages=[{"role": "user", "content": "Refactor this 800-line auth handler."}],
)

That instruction in system= reliably suppresses the bedtime reminders in our testing. It works because the system prompt has higher priority than internalised stylistic priors. If you want to keep your existing system prompt, append the directive — Claude handles multi-clause system prompts fine.

In Claude.ai (web)

Open Settings → Profile → What personal preferences should Claude consider in responses? and paste:

Do not comment on my sleep, energy, time of day, or wellbeing. Do not suggest I take breaks. Stay focused on the task.

This is the Custom Instructions field. It feeds into the system prompt on every conversation in your account.

In Claude Code

Add the directive to your project’s CLAUDE.md file at the repo root, or to ~/.claude/CLAUDE.md for a global rule. Claude Code merges CLAUDE.md into its system prompt on every turn. See our Claude Code on ofox.ai configuration guide for the full setup if you have not wired this up yet.

# CLAUDE.md
## Behavior

Do not comment on my sleep, energy, time of day, or wellbeing.
Do not suggest I take breaks. Stay focused on the task.

In Cursor or Cline

Same directive, dropped into the model’s system prompt or “Rules for AI” panel. Both clients pass user rules into the Claude API as part of the system message.

What does not work

  • Asking Claude in chat to stop. It will agree, then forget within a few turns. The behaviour comes from training, not memory.
  • Switching from Opus to Sonnet. Same training family, same tic. Sonnet does it slightly less, but not zero.
  • Telling Claude what time it is. The reminders are not triggered by time-of-day reasoning. They are pattern-matching on conversation content.

Does the fix break anything else?

In our testing across roughly 200 long-form coding sessions on Claude Opus 4.7 via the ofox.ai API: no measurable change in code quality, refactoring depth, or reasoning. The model still asks clarifying questions, still pushes back on ambiguous specs, still surfaces edge cases. It just stops telling you to drink water.

Anthropic’s tuning around “wellbeing” is one of many behavioural priors. Suppressing one of them with an explicit override does not cascade — Claude is not “less safe” because it stopped suggesting naps. Hard safety constraints (CSAM, weapons synthesis, etc.) sit at a different layer that user-level system prompts cannot reach.

When is the actual fix coming?

McAllister’s “future models” line is the only public commitment. Anthropic typically rolls minor behaviour adjustments into point releases — Sonnet 4.6 → 4.7, Opus 4.7 → 4.8 — rather than mid-cycle server-side patches. Realistic timing: the next Sonnet or Opus generation, which historically lands every 8–14 weeks.

Until then, the system-prompt workaround is the actual answer. Every model has internalised behaviours you can override; Claude’s is just unusually visible, because it shows up as a literal interruption instead of the more common refusal or hedge.

Why it matters past the meme

The story keeps trending because it makes something visible that the wider AI conversation usually hides: large language models have moods, and those moods come from training choices the people building on top of them rarely get to inspect. If Anthropic can accidentally ship a model that mothers its users, every other lab can too. The mitigation has not changed since the GPT-3 era: read the system prompt, override what you did not order, version-control the override.

If you are picking between Claude, GPT, and Gemini for a production workload, behavioural priors like this belong in your evaluation, not just benchmark scores. Our Claude vs GPT vs Gemini comparison walks through how the three families differ on this axis. For the pricing side of switching, the Claude API pricing breakdown covers what Opus and Sonnet actually cost via direct vs gateway access. And if you are routing across multiple models to avoid lock-in, the AI API aggregation guide is the practical playbook — one endpoint, every Claude model, every workaround portable.

The lesson here is not that Claude is broken. It is that every production LLM ships with a personality, and shipping software on top of one means knowing how to override the parts you did not order.

Sources