Guides

Stop Claude Code ending with unfinished tasks

Keep an approved Claude Code task list authoritative when the agent tries to finish early, pauses for a question, or loses the working contract.

Answers: Claude Code stops before finishing the task list · Updated

SHORT ANSWER

Developers phrase this problem as Claude Code stopping mid-task, ending before all todos are complete, or doing nothing overnight. Nightshift moves approved work into a punch list and uses the host’s Stop hook to keep open boxes visible whenever the session attempts to clock out.

01

A plan in conversation is not the stop condition

Long sessions can end after the easy work, summarize unfinished items as later work, or pause on a question. Nightshift makes the on-disk punch list the contract instead of relying on another keep-going instruction.

  • One top-level checkbox per approved outcome.
  • One Verify line and commit subject per item.
  • Questions park with a reversible default when they do not require the owner.
02

The Stop hook returns the open contract

When Claude Code attempts to end while approved items remain open, the clock-out gate blocks that stop and returns the working contract. It releases for completion, the owner’s STOP order, or a declared ending boundary.

  • The owner can stop the shift at any time.
  • A finite list ends when its approved items are complete.
  • Open-ended work requires a deadline.
03

The tick is not independent proof

The gate enforces that the list is not quietly abandoned. Definitions of done, project checks, local commits, and owner review determine whether the implementation is good.

/nightshift:setup
# Add one bounded item with Verify and Commit lines
/nightshift:start
TRY IT

Start with a bounded prompt

This prompt names the outcome and preserves Nightshift’s review boundary. Paste it into the supported coding host from the project you want to change.

/nightshift:setup
/nightshift:start
BOUNDARIES

What this workflow does not claim

  • The gate enforces that approved boxes remain open; it does not independently verify the work behind a tick.
  • A stop-work order and the owner's explicit interruption always take precedence over continued execution.
SOURCES

Evidence and sources

These links support the released behavior, public outcomes, or problem language described on this page.

Reported mid-task stopping languageDevelopers describe Claude Code stopping during an unfinished task list and looking for a Stop-hook boundary.Open evidence ↗Versioned workflow contractThe shipped one-item loop, decision boundary, gates, recovery, and clock-out behavior.Open evidence ↗Merged first-night PRThe preserved overnight commits and owner-reviewed merge.Open evidence ↗
RELATED QUESTIONS

Continue from the question you have

how to stop Claude Code ending earlyRead the answer →how to keep Claude Code working overnightRead the answer →how to make Claude Code finish all todosRead the answer →