Enforce complete Taskwarrior integration for all coding tasks with automatic decomposition, time tracking, and dependency management. Use when managing tasks or tracking work. Trigger with phrases like "taskwarrior", "task warrior", "tw", "create a task", or "track this work".
Limited to specific tools
Additional assets for this skill
This skill is limited to using the following tools:
assets/README.mdreferences/README.mdscripts/README.mdname: 001-jeremy-taskwarrior-integration description: Enforce complete Taskwarrior integration for all coding tasks with automatic decomposition, time tracking, and dependency management. Use when managing tasks or tracking work. Trigger with phrases like "taskwarrior", "task warrior", "tw", "create a task", or "track this work". version: 1.0.0 allowed-tools:
This skill enforces mandatory Taskwarrior integration for ALL coding activities. It ensures every piece of work is:
CRITICAL: NO CODE IS WRITTEN until Taskwarrior tasks are created and started.
Trigger this skill when you mention:
Before writing ANY code, decompose the request into Taskwarrior tasks:
For Simple Requests (1 task):
task add "Brief description of work" project:ProjectName priority:H/M/L due:today/tomorrow/YYYY-MM-DD +tag1 +tag2
For Complex Requests (multiple tasks with dependencies):
# Parent task
task add "Main project goal" project:ProjectName priority:H due:3days +architecture +planning
# Subtasks with dependencies
task add "Subtask 1" project:ProjectName depends:1 priority:M +implementation
task add "Subtask 2" project:ProjectName depends:2 priority:M +testing
task add "Subtask 3" project:ProjectName depends:3 priority:L +documentation
Required Task Attributes:
After creating tasks, activate them to start time tracking:
# Start the first task in the dependency chain
task <ID> start
# Verify task is active
task active
# Timewarrior should automatically begin tracking
timew
What happens:
task active listNow and ONLY now proceed with writing code:
task <ID> annotate "Decision: Using FastAPI over Flask for async support"
task <ID> annotate "Blocker: Waiting for API credentials"
task <ID> stop
task <ID> modify +blocked
task <ID> modify +additional_tag description:"Updated description"
After code is delivered and verified, complete the task:
# Complete the task
task <ID> done
# Timewarrior automatically stops tracking
# View time summary for this task
timew summary :ids
# Check if dependent tasks are now unblocked
task next
Completion Checklist:
After completing tasks, provide summary:
# Show completed task details
task <ID> info
# Show time spent
timew summary :ids
# Show remaining work
task next
User Request: "Create a Bash script that backs up my home directory"
Task Decomposition:
task add "Create home directory backup script" project:DevOps priority:M due:today +scripting +automation +backup
Lifecycle:
task 42 start
[Write backup.sh script]
task 42 done
timew summary :ids
User Request: "Build a REST API with authentication, user management, and PostgreSQL"
Task Decomposition:
# Parent task
task add "Build FastAPI REST API with auth" project:WebDev priority:H due:5days +api +backend
# Dependent subtasks
task add "Design PostgreSQL schema" project:WebDev depends:43 priority:H due:1day +database +design
task add "Implement JWT authentication" project:WebDev depends:44 priority:H due:2days +auth +security
task add "Create user management endpoints" project:WebDev depends:45 priority:M due:3days +crud +endpoints
task add "Write API documentation" project:WebDev depends:46 priority:L due:5days +documentation +openapi
task add "Deploy to staging environment" project:WebDev depends:47 priority:M due:5days +deployment +staging
Lifecycle:
task 44 start # Start with database schema
[Design and implement schema]
task 44 done
task 45 start # Next: authentication
[Implement JWT auth]
task 45 done
# Continue through dependency chain...
User Request: "My Node.js app crashes with ECONNREFUSED"
Task Decomposition:
task add "Debug ECONNREFUSED error in Node.js app" project:Debugging priority:H due:today +debugging +nodejs +urgent +investigation
Lifecycle with Annotations:
task 50 start
task 50 annotate "Error occurs during PostgreSQL connection"
task 50 annotate "Root cause: PostgreSQL service not running"
task 50 annotate "Solution: systemctl start postgresql"
[Provide debugging steps and code fixes]
task 50 done
User Request: "Create a script I need to run weekly to clean Docker images"
Task Decomposition:
task add "Weekly Docker cleanup script" project:Maintenance recur:weekly due:friday priority:M +automation +docker +cleanup
Lifecycle:
task 55 start
[Write docker-cleanup.sh script]
task 55 done
# Future instances auto-generate every Friday
task next # Will show next week's instance
Use this urgency matrix to assign priority:
priority:H (High) - Use when:
priority:M (Medium) - Use when:
priority:L (Low) - Use when:
Common Project Tags:
+feature - New functionality+bugfix - Fixing existing issues+refactor - Code restructuring+testing - Test creation/execution+documentation - Docs and comments+deployment - Release and infrastructure+security - Security-related work+performance - Optimization work+debugging - Investigation and diagnosis+maintenance - Routine upkeep+automation - Scripting and tooling+infrastructure - DevOps and systemsTechnology Tags:
+python, +javascript, +bash, +typescript+docker, +kubernetes, +cicd+postgresql, +redis, +mongodb+fastapi, +react, +nextjsStatus Tags:
+blocked - Cannot proceed (annotate reason)+urgent - Needs immediate attention+waiting - Awaiting external input+review - Ready for reviewIf requirements change while working:
# Modify existing task
task <ID> modify +new_tag description:"Updated description"
# Or create dependent subtask for additional work
task add "Additional scope: Email notifications" depends:<ID> project:SameProject +feature
If encountering blockers (missing credentials, API limits, permissions):
# Stop the task
task <ID> stop
# Annotate the blocker
task <ID> annotate "Blocked: Need AWS credentials from ops team"
# Mark as blocked
task <ID> modify +blocked
# Explain to user what's needed to unblock
For work spanning multiple conversations:
Session 1:
task add "Build e-commerce platform - product catalog" project:Ecommerce priority:H +feature
task 60 start
[Implement product catalog]
task 60 done
Session 2 (later):
# Check existing project tasks
task project:Ecommerce status:pending
# Create related task
task add "Build e-commerce platform - shopping cart" project:Ecommerce depends:60 priority:H +feature
task 61 start
[Implement shopping cart]
task 61 done
If user references an existing Taskwarrior task:
User: "Help me complete task 42: 'Optimize database queries'"
Response:
# Start user's existing task
task 42 start
[Provide optimization recommendations and code]
# Complete user's task
task 42 done
# Show results
task 42 info
timew summary :ids
Taskwarrior automatically integrates with Timewarrior when configured. Here's what happens:
When you start a task:
task <ID> start
# Timewarrior begins tracking with tags from the task
Check current tracking:
timew # Shows what's currently being tracked
task active # Shows active Taskwarrior tasks
Stop tracking (when you stop or complete a task):
task <ID> stop # Pauses tracking
task <ID> done # Stops tracking and completes task
View time reports:
timew summary :ids # Total time per task
timew report :ids :week # This week's breakdown
timew tags # Most-used tags
timew day # Today's time usage
task add BEFORE writing any codetask <ID> start to activate time trackingtask <ID> done when work is delivereddepends: relationshipstask <ID> annotate to document key choicesBefore delivering code, confirm:
task active)timew)task doneIf user asks for code without mentioning Taskwarrior, proactively enforce the protocol:
User: "Write me a Python script to parse CSV files"
Your Response:
Before I write the code, I need to create a Taskwarrior task to track this work properly.
I'll decompose this as:
task add "Create CSV parser Python script" project:DataProcessing priority:M due:today +python +scripting +parsing
Then I'll start the task and implement the solution.
[Proceed with task creation → task start → code implementation → task done]
After completing work, provide these metrics:
# Task details
task <ID> info
# Time spent
timew summary :ids
# Project progress
task project:<ProjectName> completed
task project:<ProjectName> status:pending
# Personal productivity
task completed count
task active count
| Operation | Command |
|---|---|
| Create task | task add "description" project:Name priority:M due:today +tag1 +tag2 |
| Start task | task <ID> start |
| Stop task | task <ID> stop |
| Complete task | task <ID> done |
| View active tasks | task active |
| View next tasks | task next |
| Modify task | task <ID> modify priority:H +new_tag |
| Annotate task | task <ID> annotate "note" |
| View task details | task <ID> info |
| List by project | task project:ProjectName list |
| Show time tracking | timew |
| Time summary | timew summary :ids |
| Weekly report | timew report :ids :week |
Typical Interaction:
User: "I need help with taskwarrior - create a FastAPI authentication system"
Your Response:
I'll enforce the Taskwarrior integration protocol for this work.
## Phase 1: Task Decomposition
Creating tasks for FastAPI authentication system:
task add "Build FastAPI authentication system" project:WebDev priority:H due:2days +fastapi +auth +security +backend
task add "Implement JWT token generation" project:WebDev depends:1 priority:H +jwt +auth
task add "Create login/logout endpoints" project:WebDev depends:2 priority:M +endpoints +api
task add "Add password hashing with bcrypt" project:WebDev depends:3 priority:M +security +passwords
task add "Write authentication tests" project:WebDev depends:4 priority:M +testing +pytest
## Phase 2: Task Activation
task 1 start
timew # Verify tracking started
## Phase 3: Implementation
[Now I'll implement the authentication system...]
[Provide complete FastAPI auth code]
## Phase 4: Completion
task 1 done
timew summary :ids
Total time: 45 minutes
Next task: Implement JWT token generation (task 2)
task next regularly to prioritize workSolution:
# Verify Timewarrior is installed
which timew
# Check if task is active
task active
# Manually start tracking if needed
timew start +tag1 +tag2
Solution:
# List all tasks
task list
# Show task details by description search
task /keyword/ list
# Show recently completed tasks
task completed
Solution:
# Start the task now (retroactively)
task <ID> start
# Manually adjust Timewarrior if needed
timew track yesterday 2:00pm - 3:30pm +projecttag +featuretag
This skill integrates seamlessly with:
This skill enforces a mandatory, comprehensive Taskwarrior integration for ALL coding activities. It ensures:
✅ Every piece of work is tracked as a task ✅ Time spent is automatically accounted via Timewarrior ✅ Complex projects are decomposed into manageable, linked subtasks ✅ Complete audit trail of all work performed ✅ Proper prioritization and deadline management ✅ Full lifecycle from creation → activation → implementation → completion
NO CODE GETS WRITTEN without following the complete Taskwarrior protocol.
task <ID> start to begin time trackingtask <ID> done after deliveryIf Taskwarrior integration fails: