[FEATURE] Persistent Todo List panel in sidebar (alongside Activity / Plan)
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
The sidebar currently has "Activity" (background agents) and "Plan" (plan mode content) panels. There is no persistent panel to view the TodoWrite list at a glance during long sessions.
Today, todos render only inline in chat, so they scroll out of view as the conversation grows. Users lose visibility on what's done vs pending without scrolling back up.
Proposed Solution
Add a third sidebar panel "Todos" (or "Task List") that:
- Always shows the current TodoWrite list, live-updated as the agent marks items in_progress / completed.
- Persists across the session — visible while chat continues, doesn't scroll away.
- Allows the user to manually tick items as a sanity check.
- Shows status icons: ⏸ pending, 🔵 in_progress, ✅ completed.
Mockup:
┌─────────────┬──────────────────┐
│ Chat │ Todos │
│ │ ⏸ Fix bug X │
│ ... │ 🔵 Audit PR │
│ │ ✅ Recover work │
└─────────────┴──────────────────┘
Alternative Solutions
Current workaround: I maintain a manual .md file on the Desktop, updated by the agent after each task completion. It works but requires keeping a separate editor window open in parallel to Claude Code.
I also tried the "Activity" panel (for background agents only) and "Plan" panel (only fills during Plan Mode). Neither surfaces TodoWrite state.
Priority
Low - Nice to have
Feature Category
Interactive mode (TUI)
Use Case Example
Scenario:
- I'm running a 12-18 hour Claude Code session on a complex web project (Next.js + Supabase + Stripe).
- The session has 10-15 distinct tasks: bug fixes, PR audits, deploys, external deadlines.
- After ~200 messages, the inline todos have scrolled far up. To check what's pending I have to scroll back, breaking flow.
- With a persistent Todos panel I could see at a glance: 2 pending, 1 in_progress, 8 completed — without scrolling.
- This saves ~5 min per session of scroll-and-search and reduces risk of missed tasks.
Additional Context
- The TodoWrite tool already exists internally in Claude Code — this request is purely about surfacing its state in a persistent sidebar panel.
- Real use case: running 12-18h sessions on a SaaS project (TPCard, pre-launch T-29).
- Could be a toggle in settings for users who prefer minimalist UI.
- Similar pattern: VS Code has a persistent "Problems" panel that stays visible while coding.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗