| name | markdown-task-manager |
| description | Use when managing tasks, the system is a Kanban task manager based on local Markdown files (`kanban.md` and `archive.md`). It follows a strict format compatible with the task-manager.html web application. |
📋 Markdown Task Manager Skill
When to Use This Skill
- Create tasks to document work to be done
- Plan complex features
- Track project progress
- Archive completed tasks
- Generate status reports
📋 STRICT Task Format
Mandatory Template
### TASK-XXX | Task title
**Priority**: [Critical|High|Medium|Low] | **Category**: [Value] | **Assigned**: @user1, @user2
**Created**: YYYY-MM-DD | **Started**: YYYY-MM-DD | **Due**: YYYY-MM-DD | **Finished**: YYYY-MM-DD
**Tags**: #tag1 #tag2 #tag3
Free text description. **NO `##` or `###` headings allowed**.
**Subtasks**:
- [ ] First subtask
- [x] Completed subtask
**Notes**:
Additional notes with subsections `**Title**:`.
**Result**:
What was done.
**Modified files**:
- file.js (lines 42-58)
❌ FORBIDDEN
## Titleor### Titleinside a task**Subtasks**or**Notes**without:- Automatic archiving (only on user request)
Why? The HTML parser of the application does not recognize ## inside tasks.
🔄 Workflow
1. New Request
- Read
kanban.mdto get the last task ID - Create task in
kanban.md→ "📝 To Do" section - Unique ID (TASK-XXX) auto-incremented
- Break down into subtasks if needed
- Increment counter in
<!-- Config: Last Task ID: XXX -->
2. Start Work
- Move task → "🚀 In Progress" section
- Add
**Started**: YYYY-MM-DD - Check off subtasks progressively
3. Finish Work
- Move → "✅ Done" section
- Add
**Finished**: YYYY-MM-DD - Document in
**Notes**::**Result**:- What was done**Modified files**:- List with line numbers**Technical decisions**:- Choices made**Tests performed**:- Validated tests
4. Archiving
⚠️ Tasks are NOT archived immediately!
- Completed tasks remain in "✅ Done"
- Only on user request → move to
archive.md - Never archive directly at end of work
📁 File Structure
kanban.md
# Kanban Board
<!-- Config: Last Task ID: 42 -->
## ⚙️ Configuration
**Columns**: 📝 To Do | 🚀 In Progress | 👀 Review | ✅ Done
**Categories**: Frontend, Backend, DevOps
**Users**: @alice, @bob
**Tags**: #bug, #feature, #docs
---
## 📝 To Do
### TASK-001 | Title
[...]
## 🚀 In Progress
## 👀 Review
## ✅ Done
### TASK-003 | Completed task
[...]
archive.md
# Task Archive
> Archived tasks
## ✅ Archives
### TASK-001 | Archived task
[... full content ...]
---
### TASK-002 | Another archived task
[... full content ...]
🎯 Golden Rules
✅ ALWAYS
- Create task BEFORE coding
- Strict format (no
##inside tasks) - Break down if complex (3+ steps)
- Update in real-time
- Document result in
**Notes**: - Reference tasks in commits (
TASK-XXX) - Leave in "Done" (archive only on user request)
❌ NEVER
## Titleinside a task- Code without creating task
- Forget to check off subtasks
- Archive immediately (stay in "Done")
- Forget to document the result
🔧 User Commands
Planning
- "Plan [feature]"
- "Create roadmap for 3 months"
Execution
- "Do TASK-XXX"
- "Continue TASK-XXX"
Tracking
- "Where are we?"
- "Weekly status"
Modifications
- "Break down TASK-XXX"
- "Add subtask to TASK-XXX"
Search
- "Search in archives: [keyword]"
Maintenance
- "Archive completed tasks"
📝 Complete Examples
Simple Task
### TASK-001 | Fix login bug
**Priority**: Critical | **Category**: Backend | **Assigned**: @bob
**Created**: 2025-01-20 | **Due**: 2025-01-21
**Tags**: #bug #urgent
Users cannot log in. Error 500 in logs.
**Notes**:
Check Redis, related to yesterday's deployment.
Complete Task with Result
### TASK-042 | Notification system
**Priority**: High | **Category**: Backend | **Assigned**: @alice
**Created**: 2025-01-15 | **Started**: 2025-01-18 | **Finished**: 2025-01-22
**Tags**: #feature
Real-time notifications with WebSockets.
**Subtasks**:
- [x] Setup WebSocket server
- [x] REST API
- [x] Email sending
- [x] Notifications UI
- [x] E2E tests
**Notes**:
**Result**:
✅ Functional system with WebSocket, REST API and emails.
**Modified files**:
- src/websocket/server.js (lines 1-150)
- src/api/notifications.js (lines 20-85)
**Technical decisions**:
- Socket.io for WebSockets
- SendGrid for emails
- 30-day history in MongoDB
**Tests performed**:
- ✅ 100 simultaneous connections
- ✅ Auto-reconnection
- ✅ Emails < 2s
🛠️ Skill Functions
When using this skill, you must:
- Read kanban.md to understand current state and get last ID
- Create tasks following strict format
- Update tasks by moving between sections
- Check off subtasks progressively
- Document result in Notes before marking Done
- Increment Last Task ID in config comment
- Never archive unless explicitly requested
📘 Git Integration
# Commits with reference
git commit -m "feat: Add feature (TASK-042 - 3/5)"
git commit -m "fix: Bug fix (TASK-001)"
# Branches
git checkout -b feature/TASK-042-notifications
⚠️ Critical Points of Attention
- Markdown Format: Strictly respect format (no
##inside tasks) - ID Increment: Always increment
<!-- Config: Last Task ID: XXX --> - Columns: Use exact column names defined in Configuration
- Archiving: NEVER archive automatically, only on request
- Documentation: Always fill
**Notes**:with Result, Modified files, etc.
🎓 Usage
Initialization
Before using the skill, verify the project contains:
kanban.md(required)archive.md(required)AI_WORKFLOW.md(optional but recommended)
First Use
"Use the markdown-task-manager skill to create a task for [feature]"
Invocation Examples
"Skill markdown-task-manager: create a task to implement authentication"
"Skill markdown-task-manager: update TASK-007 with results"
"Skill markdown-task-manager: list all tasks in progress"
"Skill markdown-task-manager: archive completed tasks"
🔍 Implementation Details
Reading kanban.md
Always start by reading kanban.md to:
- Get the last task ID from
<!-- Config: Last Task ID: XXX --> - Understand existing columns structure
- Check current tasks in each column
Creating a New Task
- Calculate new ID:
last_id + 1 - Format as
TASK-XXX(3 digits with leading zeros) - Add to "📝 To Do" section
- Update
<!-- Config: Last Task ID: XXX -->comment - Use today's date for
**Created**:
Moving Tasks Between Columns
When moving a task:
- Copy entire task content (from
### TASK-XXXto blank line before next task) - Paste in target column section
- Delete from original location
- Update dates accordingly (
**Started**:or**Finished**:)
Completing Tasks
Before moving to "✅ Done":
- Ensure all subtasks are checked
[x] - Add
**Finished**: YYYY-MM-DD - Fill in
**Notes**:section with:**Result**:describing what was accomplished**Modified files**:listing changed files with line ranges**Technical decisions**:if any choices were made**Tests performed**:if tests were run
Archiving Tasks
Only when user explicitly requests archiving:
- Read task from "✅ Done" section in
kanban.md - Append task to "## ✅ Archives" section in
archive.md - Add separator
---between archived tasks - Remove task from
kanban.md
This skill ensures complete traceability and total transparency of work done by AI.