td-task-management
td - Task Management for AI Agents
Overview
td is a minimalist CLI for tracking tasks and maintaining agent memory across context windows. When your AI session ends, td captures what was done, what remains, and what decisions were made—so the next session picks up exactly where the last one left off.
Core capability: Run td usage and get everything needed for the next action—current focus, pending reviews, open issues, recent decisions.
Quick Start
Session Start (Every Time)
td usage --new-session # Auto-rotation + see current state
Output tells you:
- Active work sessions and recent decisions
- What issues are pending review (you can review these)
- Highest priority open issues
- Recent handoffs from previous sessions
Single-Issue Workflow
For focused work on one issue:
td start <issue-id> # Begin work
td log "OAuth callback implemented" # Track progress
td log --decision "Using JWT tokens" # Log decisions
td handoff <id> --done "..." --remaining "..." # Capture state
td review <id> # Submit for review
Multi-Issue Workflow (Recommended for Agents)
For agents handling related issues:
td ws start "Auth implementation" # Start work session
td ws tag td-a1b2 td-c3d4 # Associate issues (auto-starts them)
td ws tag --no-start td-e5f6 # Associate without starting
td ws log "Shared token storage" # Log to all tagged issues
td ws handoff # Capture state, end session
Key Workflows
Workflow 1: Starting New Work
# 1. Check what to work on
td usage # See current state
td next # Highest priority open issue
td critical-path # What unblocks most work
# 2. Start work
td start <id>
# 3. Begin logging
td log "Started implementation"
Workflow 2: Handing Off Work
This is critical for agent-to-agent handoffs:
td handoff <id> \
--done "OAuth flow, token storage" \
--remaining "Refresh token rotation, error handling" \
--decision "Using JWT for stateless auth" \
--uncertain "Should tokens expire on password change?"
Keys:
--done- What's actually complete (be honest)--remaining- What's left (be specific)--decision- Why you chose approach X--uncertain- What you're unsure about
Next session will see all this context with td usage or td context <id>.
Workflow 3: Reviewing Code
# 1. See reviewable issues
td reviewable
# 2. Check details
td show <id>
td context <id>
# 3. Approve or reject
td approve <id>
# Or:
td reject <id> --reason "Missing error handling"
Important: You cannot approve work you implemented. Session isolation enforces this.
Workflow 4: Handling Blockers
# 1. Log the blocker
td log --blocker "Waiting on API spec from backend team"
# 2. Work on something else
td next # Get another issue
td ws tag td-e5f6 # Add to work session
# 3. Come back to blocked issue later
td context td-a1b2 # Refresh context when blocker resolves
Commands by Category
Checking Status
td usage- Current state, reviews, next stepstd usage -q- Compact view (after first read)td current- What you're working ontd ws current- Current work session statetd next- Highest priority opentd critical-path- What unblocks most work
Working on Issues
td start <id>- Begin worktd unstart <id>- Revert to open (undo accidental start)td log "msg"- Track progresstd log --decision "..."- Log decisiontd log --blocker "..."- Log blockertd show <id>- View detailstd context <id>- Full context for resuming
Handing Off
td handoff <id> --done "..." --remaining "..."- Single issuetd ws handoff- Multi-issue work session
Reviews
td review <id>- Submit for reviewtd reviewable- Issues you can reviewtd approve <id>- Approve (different session only)td reject <id> --reason "..."- Reject
Creating/Managing Issues
td create "title" --type feature --priority P1- Createtd list- List alltd list --status in_progress- Filter by statustd block <id>- Mark as blockedtd delete <id>- Delete
File Tracking
td link <id> <files...>- Track files with issuetd files <id>- Show file changes
Other
td monitor- Live dashboardtd session --new "name"- Force new sessiontd undo- Undo last action
See quick_reference.md for full command listing.
Resources
quick_reference.md
Complete command reference organized by task type.
ai_agent_workflows.md
Detailed workflows for common AI agent scenarios:
- Single-issue focus
- Multi-issue work sessions
- Handling blockers
- Resuming work
- Code review process
- Tips for AI agents
Issue Lifecycle
open → in_progress → in_review → closed
| |
v | (reject)
blocked -----------+
Key Principles
Session Isolation: Every terminal/context gets a unique session ID. The session that implements code cannot approve it. Different session must review. This forces actual handoffs and prevents "works on my context" bugs.
Structured Handoffs: Don't just say "here's what I did"—structure it with done/remaining/decisions/uncertain so next agent has clear context.
Minimal: Does one thing. Single binary, SQLite local storage (.todos/), no server, works with any AI tool.
For AI Agents
Always start conversation with:
td usage --new-session
This auto-rotates sessions and gives you current state. Then:
- Single focused issue → Use single-issue workflow
- Multiple related issues → Use
td ws startfor work sessions - Before context ends → Always
td handoffortd ws handoff - Log decisions → Use
--decisionflag to explain reasoning - Log uncertainty → Use
--uncertainflag to mark unknowns - Track files → Use
td linkso future sessions know what changed
See ai_agent_workflows.md for detailed examples.