Installs into .claude/skills of the current project.
Are you the author of 281 Agent 52e57124?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/tools-only-281-agent-52e57124)
---
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:
1. **Create in Asana** with clear name and description
2. **Add to appropriate section** (usually EARLY NEXT unless urgent → NOW/TODAY)
3. **Tag with `cora-working`** if starting immediately
4. **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:
1. **Spawn sub-agent** (Sonnet) for the actual work
2. **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..."
3. **If blocked**, add `blocked` tag and move to WAITING section
4. **When complete**, remove `cora-working` tag and move to READY FOR REVIEW
### 4. Quality Verification
When a task reaches READY FOR REVIEW:
1. **Spawn QA agent** (Opus) to review
2. 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?
3. **If rejected**: Add comment with feedback, move back to EARLY NEXT, notify worker
4. **If approved**: Add `quality-verified` tag, deliver to human
### 5. Delivery
When delivering completed work:
1. **Notify human** with summary:
- What was asked
- What was delivered
- Key findings/results
- Link to Asana task for full history
2. **Move task to DONE**
3. **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:
1. Verify Asana connection: `mcporter call asana.asana_list_workspaces`
2. Get workspace/project IDs
3. Create sections if needed
4. Create tags if needed
5. Document IDs in TOOLS.md
6. Create rules.md with preferences
---
## Rules (rules.md)
Local preferences for this installation:
```markdown
# 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