---
title: Stalled session (orange) and the Continue alert
---
# Stalled session (orange) and the Continue alert

## What it is

A session turns **orange** with the label **"Stalled?"** when its Claude Code
process stops producing output for longer than your stall-detection time
(Settings → Sessions → **Stall detection time**, default 15 minutes). It is not
an error and not a question — the agent simply went silent. Common triggers: the
CLI wedged after a long operation (a big auto-compaction, a slow tool, a dropped
network connection).

**One exception (2026-06-20):** if the agent's last words explicitly declared a
background wait — the canonical _"Waiting on a background process to finish…"_
sentinel — the session **auto-waits** (⏱ Auto-waited) instead of stalling, even
when its turn never cleanly finished. The [waiting detector](waiting-detector.md)
now covers that case on the stall path too, so a session that _told you_ it was
waiting no longer lands in the orange "Stalled?" state.

**Sleep doesn't count as silence (2026-07-04).** Stall timing is wall-clock,
so putting the computer to sleep (or a brief app freeze) used to read as one
long stretch of agent silence — waking a laptop could greet you with spurious
"Session timed out" kills or unneeded "Please continue" nudges for sessions
that were fine. Now, when Omniscio notices that time jumped, the stall detector
grants one fresh detection window instead of counting the sleep as silence.
A genuinely hung session still times out — one normal window after wake, not
zero.

Unlike **"Needs You"** (amber) — where there's a visible question, plan, or
permission prompt to act on — a stalled session has _nothing_ in the transcript
explaining the silence. So the **chat panel shows a small orange alert just above
the message box**:

> ⚠️ This session stopped responding and may be stuck. Nothing was lost —
> continue to pick up where it left off. **[ Continue ]**

Clicking **Continue** sends a "Please continue" turn and auto-resumes the CLI
(via `--resume`), exactly as if you'd typed it. The session flips back to
green/running and carries on from where it stalled. (Typing any message into the
composer does the same thing.)

**Continue also moves you on (2026-06-26).** After you press Continue on a paused
or gray (ended) session, Omniscio advances your selection to the **next** such session
— the same "take me to the next one" you already get from archiving — so you can
rip through a pile of stopped sessions without clicking back into the list between
each. A stalled / Needs-You session likewise advances to the next item needing
you. If there's nothing left to move to, you simply stay on the session you just
resumed as it turns green. (This is the one-click **Continue** / `C` shortcut /
wait-timeout nudge; a normal typed reply still follows your **Post-send
navigation** preference instead.)

**Every engine resumes on Continue (2026-06-10).** Earlier, Codex / Pi / OpenClaw
showed a **[ Start a new session ]** button instead — their single long-lived
child can't be rehydrated and there is no `--resume`. They now resume the same
way Claude does: clicking **Continue** re-spawns the engine and replays the
session's stored conversation as context on that first message, so you pick up
where you left off without starting over. (Claude resumes via `--resume`; the
Claude-binary and one-shot-CLI providers were always resumable.) If the engine
genuinely can't restart — e.g. its API key was removed — you get one clear error
instead. See [codex-provider.md](codex-provider.md).

## Where to find it

### Where it shows — and where it deliberately doesn't

- **Chat panel only.** The alert + Continue button live above the composer of the
  stalled session. That is the single stall-specific surface.
- **A stalled session goes quiet in the sidebar (updated 2026-08-11).** Under the
  owner rule that reclassified `error` and `stalled` as **non-attention**, a stalled
  session no longer lands in your Inbox, no longer adds a project count badge, and no
  longer plays a chime. Instead it settles into the sidebar's **Interrupted** group —
  alongside ended sessions — where you can open it and press **Continue** when you're
  ready. (Before this, a stalled session appeared in the Inbox with a plain orange dot.)
  One exception: if the app is already quietly **reconnecting** a dropped session, it
  stays in **Live** with a "Reconnecting…" dot until it returns. See
  [interrupted-sessions-section.md](interrupted-sessions-section.md).

## How it behaves

### Auto-continue: does Omniscio try to revive it first?

Whether Omniscio nudges a silent session itself before flagging it depends on
**Settings → Sessions → Auto-Continue Mid-Task** (`autoContinueEnabled`, **off by
default**, in the "Waiting & keeping sessions going" group):

- **Auto-Continue ON** — when a session goes silent past the stall-detection
  time, Omniscio first sends up to **3** automatic "Please continue" nudges (spaced
  ~30s apart). It only marks the session **Stalled?** (and shows the alert) if
  all three fail to revive output.
- **Auto-Continue OFF** (default) — Omniscio skips the nudges and surfaces the
  **Stalled?** alert immediately once the time passes, leaving the decision to
  you.

Either way, once a session is **stalled** nothing resumes it automatically — it
waits for you. This is distinct from two other recovery features that do **not**
cover the stalled state:

- [Crash recovery](crash-recovery.md) auto-resumes sessions that were running
  when **Omniscio itself** restarted.
- [Aborted-response recovery](aborted-response-recovery.md) self-heals when the
  **CLI drops a turn mid-flight** (stamped `response_aborted`, status
  `needs_you` / `error`) — a different failure from a stall.

### How to clear it

Open the session and click **Continue** in the orange alert, **press `C`**, or type
any message into the composer. All three resume the turn. Pressing `C` works even
though Omniscio autofocuses the message box on a stalled session — the empty box no
longer swallows the key (it reverts to typing a literal `c` the moment you start a
reply). See [keyboard-shortcuts.md](keyboard-shortcuts.md).

## Related

- [session-stuck-in-needs-you.md](session-stuck-in-needs-you.md) — the amber
  "Needs You" states (question / plan / permission / rate-limit / auth / API
  error / stopped) and how to clear each.
- [aborted-response-recovery.md](aborted-response-recovery.md) — self-healing for
  when the CLI drops a turn mid-flight.
- [crash-recovery.md](crash-recovery.md) — auto-resume after an Omniscio restart.
- [waiting-detector.md](waiting-detector.md) — suppresses spurious "needs you"
  flips when the agent says it's waiting on something.
