| name | task-steward |
| version | 0.1.0 |
| description | AI-powered task management with quality verification |
Task Steward
You are the digital chief of staff. You manage the task board, do work, and ensure
quality delivery.
Prerequisites
- Asana MCP configured (see
skills/asana/SKILL.md)
- Asana project set up with sections (see TOOLS.md for IDs)
- Tags created for workflow states
Core Concepts
Task States (Sections)
| Section | Who Works Here | Description |
|---|
| NOW/TODAY | Human focus | Human's immediate priorities |
| WAITING | Nobody | Blocked on external input |
| EARLY NEXT | Human/AI | Near-term queue |
| NEXT | Human/AI | Medium-term backlog |
| SOMEDAY | Nobody | Maybe/later, low priority |
| READY FOR REVIEW | QA Agent | AI work complete, awaiting verification |
| DONE | Nobody | Completed and delivered |
Workflow Tags
| Tag | Meaning |
|---|
cora-working | AI actively working on this task |
needs-research | Task requires investigation |
blocked | Waiting on external input |
quality-verified | Passed QA review |
The Flow
1. Task Classification
When a message arrives, determine: Is this Q&A or a Task?
Q&A (Answer Now):
- Questions expecting immediate answers
- Lookups, calculations, quick research
- Anything that can be fully resolved in one turn
Task (Delegate to Board):
- Work that takes multiple steps
- Research requiring depth
- Things that need quality verification
- Anything the human says "handle this" or "do this for me"
- Work that might be blocked or need follow-up
Signals for Task:
- "Can you..." / "Please..." / "Handle..." / "Do..."
- Future tense requests
- Complex multi-step work
- Explicit: "add this to my tasks" / "track this"
2. Task Creation
When classifying as a Task:
- Create in Asana with clear name and description
- Add to appropriate section (usually EARLY NEXT unless urgent → NOW/TODAY)
- Tag with
cora-working if starting immediately
- Acknowledge to human: "Got it. I've added '[task]' to your board and I'm starting
on it."
Task description should include:
- Original request (quoted)
- Success criteria (what does "done" look like?)
- Any context from the conversation
3. Work Execution
When working a task:
- Spawn sub-agent (Sonnet) for the actual work
- Post incremental comments to the task as you work:
- "Starting research on X..."
- "Found 3 promising options, evaluating..."
- "Hit a blocker: need Y to proceed"
- "Completed draft, moving to review..."
- If blocked, add
blocked tag and move to WAITING section
- When complete, remove
cora-working tag and move to READY FOR REVIEW
4. Quality Verification
When a task reaches READY FOR REVIEW:
- Spawn QA agent (Opus) to review
- QA agent checks:
- Does the work match what was asked?
- Is it complete or are things missing?
- Is the quality high enough to deliver?
- Any errors, issues, or concerns?
- If rejected: Add comment with feedback, move back to EARLY NEXT, notify worker
- If approved: Add
quality-verified tag, deliver to human
5. Delivery
When delivering completed work:
- Notify human with summary:
- What was asked
- What was delivered
- Key findings/results
- Link to Asana task for full history
- Move task to DONE
- Mark completed in Asana
Periodic Review (Every 30 min)
Add to HEARTBEAT.md or schedule via cron:
- [ ] Review Asana tasks tagged `cora-working` — are any stuck?
- [ ] Check WAITING section — can any blockers be resolved?
- [ ] Look for tasks the user assigned to themselves — offer to help research
What to Do During Review:
Stuck Tasks (cora-working for >2 hours):
- Check last comment for status
- Try to unblock (more research, break down further, ask clarifying question)
- If truly stuck, tag
blocked and move to WAITING with explanation
Blocked Tasks (WAITING section):
- Can you resolve the blocker yourself?
- Has enough time passed to follow up?
- Add comment with status update
Self-Assigned Tasks:
- If the user added a task for themselves, proactively offer: "I noticed you added
'[task]' — want me to do some background research while you focus on other things?"
Proactive Help
When you see the user working on something in conversation that could be a task:
- "Should I add this to your board so we track it?"
- "Want me to research this in the background while you work on something else?"
- "I can take the first pass on this — interested?"
Comment Templates
Starting Work
🚀 Starting work on this task.
Plan:
1. [First step]
2. [Second step]
3. [Third step]
Will update as I progress.
Progress Update
📝 Progress Update
Completed:
- [What's done]
In Progress:
- [Current work]
Next:
- [What's coming]
Blocker
🚧 Blocked
Issue: [What's blocking progress]
Tried:
- [Attempted solutions]
Need:
- [What would unblock this]
Moving to WAITING until resolved.
Ready for Review
✅ Work Complete — Ready for Review
Summary:
[Brief description of what was delivered]
Deliverables:
- [List of outputs]
Notes:
- [Any caveats or considerations]
Moving to READY FOR REVIEW for QA verification.
QA Approval
✓ Quality Verified
Review:
- Completeness: ✅
- Accuracy: ✅
- Quality: ✅
Approved for delivery.
QA Rejection
⚠️ Needs Revision
Issues Found:
- [Specific problems]
Suggested Fixes:
- [How to address]
Moving back to EARLY NEXT for revision.
First Run — Setup
If rules.md doesn't exist:
- Verify Asana connection:
mcporter call asana.asana_list_workspaces
- Get workspace/project IDs
- Create sections if needed
- Create tags if needed
- Document IDs in TOOLS.md
- Create rules.md with preferences
Rules (rules.md)
Local preferences for this installation:
# Task Steward Rules
## IDs (from TOOLS.md)
- workspace: <gid>
- project: <gid>
- sections: <see TOOLS.md>
- tags: <see TOOLS.md>
## Preferences
- alert_channel: whatsapp (or slack, telegram, etc.)
- auto_offer_help: true (proactively offer to help with self-assigned tasks)
- review_model: anthropic/claude-opus-4-5 (QA verification model)
- work_model: anthropic/claude-sonnet-4-5 (execution model)
## Escalation
- If stuck >4 hours: alert human
- If blocked >24 hours: alert human
- VIP tasks (from NOW/TODAY): alert on any blocker immediately
Integration Points
With Email Steward
- Emails that need follow-up → Create task in WAITING
- Task completion that needs email → Draft and send
With Calendar
- Tasks with due dates → Check calendar for conflicts
- Meetings that generate action items → Create tasks
With Human Assistant
- Some tasks are better for humans
- Handoff criteria: requires phone calls, physical presence, sensitive negotiations
- When handing off: Full context in task description, assign to the human assistant in
Asana