When a task stalls or fails

Last updated: 2026-09-22

Short answer: first work out which state it's in — running, waiting for you, or already dead. From the outside all three look like "stopped", and each calls for the opposite response.

Telling the three apart

Running: something is moving

There's one test: is new output appearing, or is the elapsed time still advancing. If so, it's working. Some tasks go quiet for minutes at a time — reading a large file, running a test suite, waiting on an external service — and that is not a stall.

Waiting for you: it needs one answer

Here it has genuinely stopped, on purpose — it hit an action it isn't allowed to decide alone and left the question hanging.

The typical case is a one-line confirmation: "delete this file?", "run this command?". You answer, it continues.

Which actions get held, and how to configure that so it isn't annoying, is in what the approval gate is for.

If you can't tell what it's waiting for, look for a pending or awaiting-confirmation item — a task waiting on you generally does not time out and vanish; it stays.

Dead: nothing moving, nothing waiting

No new output, nothing in any pending list, and that state has lasted clearly longer than this task should take. Treat it as dead.

The first step is not to retry — it's to find out how far it got. See below.

One thing to establish before retrying

A task that stopped may have already completed part of the work, and that part may have side effects: files changed, an email sent, an order placed.

Retrying from the top means doing it again. Best case you waste the time; worst case the same thing happens twice.

So the order is:

  1. Keep the previous output and log — they tell you where it stopped.
  2. Check the outside state: what does that file contain now? did that record get written?
  3. Then decide: rerun the whole task, or resume from where it stopped.

If the task is idempotent — running it twice lands in the same place as running it once — a retry is cheap. If it "sends another" or "buys another", establish the state first.

Failing versus stalling

Failure usually announces itself: an error, some output. Those are the easy ones, because you have a lead.

The hard ones are silent failures — no error anywhere in the run, and a conclusion that looks complete while one of the steps never happened. For those, look at whether tools were actually called and whether results had content, not at whether anything errored. The tests are in checking that it actually finished.

When to stop retrying

If the same task halts at the same point two or three runs in a row, luck is not the variable:

In those cases another retry just repeats the failure. Take the error it stopped on and look it up, or rewrite the task description before dispatching again.

Next

Key numbers

  • Task stuck? If the computer shuts down, the program crashes, or the network drops, just reopen and continue — tasks are queued and resume where they left off.
  • 4 built-in AIs: Claude Code, Codex CLI, Hermes, OpenClaw.
  • Local database: 24 tables, 131 HTTP endpoints.
  • Concurrency: up to 10 tasks by default (max 5 per agent), 8 built-in agent nodes.
  • Get your gateway key in about a minute after signing up.
  • Task and confirmation records stay on your machine; only the actual AI call uses the network.

FAQ

How do I tell if it's stuck or just quiet?

The one test: is new output appearing, or is elapsed time still advancing? Some tasks go quiet for minutes (reading a large file, running a test suite, waiting on an external service) — that is not a stall.

It stopped and is waiting on me — is that a bug?

No. It stopped on purpose on an action it isn't allowed to decide alone, usually a one-line "delete this file?" — it stays and does not time out and vanish.

What should I check before retrying?

A stopped task may already have partial side effects (files changed, an email sent, an order placed). Keep the previous output and log, check the outside state, then decide to rerun whole or resume. Idempotent tasks retry cheaply; "sends another/buys another" tasks need state checks first.

When do I stop retrying?

When it halts at the same point two or three runs in a row: what it needs doesn't exist (wrong filename, missing model, account without permission), the environment doesn't satisfy it (missing dependency, wrong version), or the task is vague. Take the error it stopped on and look it up, or rewrite the task description. And if the computer shuts down or the network drops — just reopen and continue; tasks are queued and resume where they left off.