Task tracking and management via Kanban board. Tasks stored in kanban.md as structured markdown, viewable in task-manager.html browser UI. Triggers when the user says "add a task", "new task", "create a task", "I need to do [X]", "remind me to [X]", "track this task", "show my tasks", "list tasks", "what are my tasks", "what's on my plate", "complete [task]", "done with [task]", "mark [task] as done", "delete task", "edit task", "change task priority", "update task", "what's overdue", "task board", "my to-do list", "open kanban", or any request to create, view, modify, complete, or delete tracked tasks. Do NOT use for generating a prioritized daily execution plan (use daily-plan), conducting weekly task retrospectives or reviews (use weekly-review), tracking habits or streaks (use productivity-os), or interpreting tasks in the context of goals or project strategy (task-manager manages task data; planning and strategy belong to other skills). Do NOT use for requests asking how to prioritize tasks, what to work on next, or how to best use today's time (use daily-plan — task-manager manages task data; prioritization and scheduling belong to daily-plan).
From tandemnpx claudepluginhub binatrixai/tandem-marketplace --plugin tandemThis skill is limited to using the following tools:
evals/evals.jsonreferences/ai-workflow.mdreferences/archive-example.mdreferences/archive-template.mdreferences/kanban-example.mdreferences/kanban-format.mdreferences/kanban-tandem-template.mdreferences/kanban-template.mdreferences/markdown-task-manager-skill.mdreferences/task-manager.htmltemplate.mdExecutes pre-written implementation plans: critically reviews, follows bite-sized steps exactly, runs verifications, tracks progress with checkpoints, uses git worktrees, stops on blockers.
Verifies tests pass on completed feature branch, presents options to merge locally, create GitHub PR, keep as-is or discard; executes choice and cleans up worktree.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Manage tasks using the Markdown Task Manager system. Tasks are stored in
~/Tandem/tasks/kanban.md as structured markdown and can be viewed in a
visual Kanban board by opening ~/Tandem/tasks/task-manager.html in Chrome/Edge.
For the authoritative kanban.md format specification, see ${CLAUDE_SKILL_DIR}/references/kanban-format.md.
See METHODOLOGY.md language mirror rule. Reply in the user's language.
Tasks live in ~/Tandem/tasks/kanban.md using this strict format:
# Tandem Tasks
<!-- Config: Last Task ID: 003 -->
## ⚙️ Configuration
**Columns**: 📝 To Do | 🚀 In Progress | ✅ Done
**Categories**: Work, Personal, Client, Admin
**Users**: @[user-name]
**Tags**: #urgent, #email, #meeting, #project, #follow-up
## 📝 To Do
### TASK-001 | Task title here
**Priority**: [Critical|High|Medium|Low] | **Category**: [Value] | **Assigned**: @user
**Created**: YYYY-MM-DD | **Due**: YYYY-MM-DD
**Tags**: #tag1 #tag2
Description of the task.
**Subtasks**:
- [ ] First subtask
- [x] Completed subtask
---
## 🚀 In Progress
## ✅ Done
For the complete format specification with field ordering rules, forbidden patterns, and examples, see ${CLAUDE_SKILL_DIR}/references/kanban-format.md.
Critical format rules (the HTML parser requires strict compliance):
### TASK-XXX | Title (always H3, never H2)## or ### headings inside a task body**Bold**: sections only (Subtasks, Notes, Result)---<!-- Config: Last Task ID: XXX -->Archived tasks go to ~/Tandem/tasks/archive.md — only when user explicitly requests.
Before add, edit, complete, delete, move, or any mutation of kanban.md:
~/Tandem/tasks/kanban.md in full<!-- Config: Last Task ID: XXX --> to get the current max ID${CLAUDE_SKILL_DIR}/references/kanban-format.mdThis step is mandatory. Never write to kanban.md without reading it first. This prevents ID collisions, format drift, and lost tasks.
Step 1: Description — accept from user's message.
Step 2: Priority
AskUserQuestion:
- "Critical — needs attention now"
- "High — important, this week"
- "Medium — should get done soon"
- "Low — when I get to it"
Step 3: Due Date
AskUserQuestion:
- "Today"
- "Tomorrow"
- "This week (Friday)"
- "Custom date"
- "No deadline"
Step 4: Category
AskUserQuestion:
- "Work"
- "Personal"
- "Client"
- "Admin"
Step 5: Confirm and Save
New task:
### TASK-[next-id] | [Title]
**Priority**: [X] | **Category**: [X] | **Assigned**: @[user]
**Created**: [today] | **Due**: [date]
AskUserQuestion:
- "Add it"
- "Change something"
- "Cancel"
Write to ~/Tandem/tasks/kanban.md under "## 📝 To Do" section.
Increment <!-- Config: Last Task ID: XXX -->.
**Started**: [today's date]**Finished**: [today's date][x]What would you like to change?
AskUserQuestion:
- "Priority"
- "Due date"
- "Description"
- "Add subtasks"
Always confirm before deleting:
Delete this task?
TASK-[XXX] | [Title]
AskUserQuestion:
- "Yes, delete it"
- "No, keep it"
Only when user explicitly asks. Move from "✅ Done" in kanban.md to archive.md.
Default: show all active tasks grouped by column. Overdue highlighted.
AskUserQuestion:
- "By priority"
- "Due this week"
- "Overdue only"
- "Show all"
The file ~/Tandem/tasks/task-manager.html provides a visual Kanban UI.
Tell the user: "Open task-manager.html in Chrome or Edge to see your visual task board."
The HTML reads kanban.md directly from disk via File System Access API. Changes made in the browser update kanban.md, and changes Claude makes to kanban.md are reflected when the page refreshes.
After adding a task:
AskUserQuestion:
- "Add another task"
- "Show my task board"
- "Nothing else"
After completing a task:
AskUserQuestion:
- "Update Monday.com too"
- "Start the next priority task"
- "Nothing else"
After listing tasks (if overdue exist):
AskUserQuestion:
- "Reschedule overdue tasks"
- "Complete one of the overdue tasks"
- "Nothing else"
## headings inside task body — breaks the HTML parser<!-- Config: Last Task ID: XXX -->After any create, complete, or update operation (NOT after read-only list/show queries), append an entry to ~/Tandem/stats.json:
{
"type": "task",
"action": "<operation performed: 'completed', 'created', or 'updated'>",
"count": <number of tasks affected>,
"timeSavedMinutes": <count * 5>,
"description": "Completed 2 tasks: TASK-015, TASK-018",
"timestamp": "<current ISO 8601>"
}
If ~/Tandem/stats.json does not exist, create it as [<entry>]. If it exists, read it, parse the JSON array, append the new entry, and write it back.
After appending to stats.json, follow the /sync workflow from tandem-skills/core/sync/SKILL.md to rebuild ~/Tandem/dashboard.html with updated statistics. This keeps the dashboard current after every skill run. If /sync fails (e.g., dashboard.html does not exist yet), continue — the main skill workflow must complete successfully regardless of sync outcome.