16. Plan and todo

16.1 Plan

Under plan mode the assistant typically produces a structured plan:

  • Overall goal
  • Phases
  • Per-phase inputs / outputs / risks

The plan shows on a floating card and supports:

  • ✓ Accept (enter execute)
  • ✏ Edit (edit inline and hand back)
  • ✗ Reject (have the assistant redo)

16.2 Todo

During execution the assistant maintains a live todo list, marking progress:

  • Todo
  • In progress
  • Done
  • Skipped / failed

Live on the right-side float; you can add / edit / delete items at any time.

16.3 Preserved across compaction

When history compaction happens (Chapter 17), plan and todo structured state is preserved verbatim in the new summary — never compressed into something fuzzy. So even in long conversations the AI knows exactly "what I'm doing, where I am".

16.4 End-of-turn todo nudge

When a turn wraps up (isGoalTurnFinalRecord) and the todo list still has open items, AVL Code auto-injects a hidden user message (source = auto_todo_nudge) prompting the agent to verify progress: mark completed ones as completed, continue on the unfinished, and explicitly stop on blocked ones.

  • Prevents the "half-done work, dangling todos with no follow-up" pattern.
  • Same family as goal auto-continuation and the compact nudge — another end-of-turn hook member.
  • Hidden user message: doesn't show in the visible conversation stream, but the agent reads and responds to it.