Work with Obsidian vaults (plain Markdown notes) and automate via obsidian-cli.
npx skills add insightflo/claude-impl-tools --skill "tasks-migrate"
Install specific skill from multi-skill repository
# Description
Consolidates legacy task files (docs/planning/06-tasks.md, etc.) into the root TASKS.md. Use this whenever task files are scattered across multiple locations. Invoke immediately on "migrate tasks", "move 06-tasks to TASKS", or "consolidate tasks" requests.
# SKILL.md
name: tasks-migrate
description: Consolidates legacy task files (docs/planning/06-tasks.md, etc.) into the root TASKS.md. Use this whenever task files are scattered across multiple locations. Invoke immediately on "migrate tasks", "move 06-tasks to TASKS", or "consolidate tasks" requests.
triggers:
- /tasks-migrate
- νμ€ν¬ λ§μ΄κ·Έλ μ΄μ
- 06-tasksλ₯Ό TASKSλ‘
- νμ€ν¬ ν΅ν©
- migrate tasks
version: 1.0.0
Tasks Migrate Skill
Scans legacy task files (docs/planning/06-tasks.md, task.md, etc.) and consolidates them into the root TASKS.md.
Role
- Detect task files scattered across multiple locations
- Extract checkbox items and Task IDs
- Merge into root
TASKS.md(with deduplication) - Never modifies the original legacy files (safe)
Workflow
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 1. Detection Phase β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β’ Check whether TASKS.md exists β
β β’ Scan for legacy files (in priority order) β
β β’ Count discovered checkbox items β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 2. Analysis Phase β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β’ Extract Task IDs (P*-T*, T*.*) β
β β’ Classify by layer (T0βT3, P*) β
β β’ Detect duplicates β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 3. User Confirmation β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β’ Output migration summary β
β β’ User chooses: create / merge / cancel β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 4. Output Phase β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β’ Create or merge TASKS.md β
β β’ Append Migration Report section β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Execution Stages
Phase 1: Detection
Check for task files in the following priority order:
# Priority order
ls -la TASKS.md 2>/dev/null
ls -la docs/planning/06-tasks.md 2>/dev/null
ls -la docs/planning/tasks.md 2>/dev/null
ls -la docs/tasks.md 2>/dev/null
ls -la planning/tasks.md 2>/dev/null
ls -la .tasks.md 2>/dev/null
ls -la task.md 2>/dev/null
Fallback: If none of the above are found, search using the *tasks*.md pattern.
Phase 2: Analysis
Extract checkbox items from discovered files:
Extracted targets:
- [ ] Incomplete task
- [x] Completed task
- [/] In progress (optional: normalize to - [ ] (in progress))
Task ID patterns:
P\d+(?:-[A-Z]\d+)?(?:-T\d+)? # P1-T1, P2-S1-T3
T\d+(?:\.\d+)+ # T0.1, T1.12, T3.4
Classification criteria:
| ID Pattern | Layer | Section |
|------------|-------|---------|
| T0.* | Skeleton | ## T0 β Skeleton |
| T1.* | Muscles | ## T1 β Muscles |
| T2.* | Muscles Advanced | ## T2 β Muscles (advanced) |
| T3.* | Skin | ## T3 β Skin |
| P*-* | Phase-based | ## P* β Project/Phase tasks |
| (no ID) | Uncategorized | ## Uncategorized |
Phase 3: User Confirmation
Output the migration summary and ask the user to confirm:
## Migration Summary
### Discovered Files
| File | Tasks | Checked | Unchecked |
|------|-------|---------|-----------|
| docs/planning/06-tasks.md | 25 | 20 | 5 |
| task.md | 3 | 1 | 2 |
### ID Distribution
- T0.* (Skeleton): 5
- T1.* (Muscles): 12
- T2.* (Advanced): 3
- T3.* (Skin): 5
- P*-T* (Phase): 3
- No ID: 0
### Expected Result
- TASKS.md create/merge: 28 items
- Duplicates removed: 2
Confirm via AskUserQuestion:
- Create (generate new TASKS.md)
- Merge (append to existing TASKS.md)
- Cancel (do nothing)
Phase 4: Output
TASKS.md structure:
# TASKS.md
> Canonical task file for this project.
> Migrated: {date}
## T0 β Skeleton
- [ ] T0.1: Project structure setup
- [x] T0.2: Routing configuration
## T1 β Muscles
- [ ] T1.1: Authentication feature implementation
- [ ] T1.2: API integration
## T2 β Muscles (advanced)
- [ ] T2.1: Caching layer
- [ ] T2.2: Error handling
## T3 β Skin
- [ ] T3.1: Apply animations
- [ ] T3.2: Responsive design
## P* β Project/Phase tasks
- [x] P1-T1: Design document complete
- [ ] P2-T1: Hook implementation
---
## Migration Report
| Source | Imported | Duplicates Skipped |
|--------|----------|-------------------|
| docs/planning/06-tasks.md | 25 | 2 |
| task.md | 3 | 0 |
**Total**: 28 tasks imported
**Date**: 2026-03-03
Safety Guarantees
- Legacy files are never modified: Original files are never deleted or edited
- Deduplication: If the same ID already exists, the existing item is preserved
- User confirmation required: Always confirm via AskUserQuestion before creating or merging
- Dry-run support: Use
--dry-runto preview without making changes
Usage Examples
/tasks-migrate
# or
"Migrate 06-tasks.md to TASKS.md"
"Consolidate legacy task files"
Related Skills
/workflow-guideβ Diagnose whether migration is needed/agileβ Run a sprint after migration/recoverβ Reference when recovering task files
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.