task-focus
task-focus
Category: Task Management
Usage
task-focus <task-file>
Arguments
<task-file>: Required - Path to task file to focus on
Execution Instructions for Claude Code
When this command is run, Claude Code should:
- Check if focus/ directory is empty (enforce one-task rule)
- If not empty, show current focus and ask to switch
- Move the specified task file to tasks/focus/
- Parse the task file to extract:
- Task metadata (ID, title, status, priority)
- All subtasks with their completion status
- Current progress percentage
- Load all tasks into TodoWrite tool
- Update task file header with focus start time
- Display current progress and next incomplete subtask
- Show session restoration command for future use
TodoTools Loading
Convert task file format to TodoWrite format:
# File format: - [x] 1.1 Task description (2h)
# Todo format: {"id": "1.1", "content": "Task description", "status": "completed", "priority": "medium"}
# Status mapping:
# [ ] → "pending"
# [-] → "in_progress"
# [x] → "completed"
# [~] → "cancelled" (exclude from todos)
Focus Session Start
Add to task file work log:
## Work Log
### 2025-01-06 14:30 - SESSION START
- Moved to focus
- Current progress: 40%
- Next task: 2.3 Implement JWT tokens
Output Format
🎯 Focusing on: TASK-001-user-authentication.md
📊 Task Overview:
Title: Implement User Authentication
Progress: 40% (4/10 subtasks)
Estimated remaining: 4.5 hours
Dependencies: All satisfied ✅
📋 Loading tasks into TodoTools...
✅ Loaded 10 tasks (4 completed, 6 pending)
🚀 Next subtask:
2.3 Implement JWT tokens (est. 2h)
💡 To resume this session later:
task-focus tasks/focus/TASK-001-user-authentication.md
Ready to work! Use 'task-done' when completing subtasks.
Error Handling
- If task file not found: Show available tasks with
task-list - If focus not empty: Show current focus and confirm switch
- If task file invalid: Run validation and show errors
- If already in focus: Show message and continue
Example
# Start focusing on a task
task-focus tasks/active/TASK-001-auth.md
# Focus on task from current directory
task-focus ./implement-search.md
# Switch focus (will prompt)
task-focus tasks/active/TASK-002-api.md
Implementation Tips for Claude Code
- Atomic Move: Use git mv if in git repo, ensure file moves successfully
- Parse Robustly: Handle various task formats and indentation
- Preserve State: Don't lose work log or metadata during move
- Time Tracking: Start tracking time when focus begins
- Dependency Check: Warn if dependencies not met
More from jpoutrin/product-forge
generate-tasks
Convert PRD to structured task list with automatic linking
6typescript-import-style
Merge-friendly import formatting (one-per-line, alphabetical). Auto-loads when writing TypeScript/JavaScript imports to minimize merge conflicts in parallel development. Enforces consistent grouping and sorting.
5typescript-code-review
TypeScript and React code review guidelines (type safety, React patterns, performance). Auto-loads when reviewing TypeScript/React code.
5zod
Zod schema validation patterns and type inference. Auto-loads when validating schemas, parsing data, validating forms, checking types at runtime, or using z.object/z.string/z.infer in TypeScript.
5documentation-research
Enforces documentation research before implementation. Auto-loads when implementing features to ensure current best practices are followed. Researches official docs first.
4code-review
Review code changes between commits for security, logic, performance, and style issues
4