Smart Tasks
v1.0.0Intelligent task management using workspace markdown files. Natural language CRUD via chat, context-aware reminders, priority briefings, and weekly reviews....
Like a lobster shell, security has layers — review code before you run it.
License
SKILL.md
Smart Tasks
Manage tasks as markdown files in tasks/ with an INDEX.md summary.
Minimize context usage: read INDEX.md first, individual files only when needed.
Setup
Run the init script once to create the directory structure:
bash skills/smart-tasks/scripts/init-tasks.sh
This creates tasks/, tasks/active/, tasks/done/, tasks/archive/,
tasks/INDEX.md, and tasks/.meta.json. Idempotent — safe to re-run.
After init, apply workspace integration changes from workspace-integration.md with user approval.
File Structure Overview
tasks/INDEX.md— active task summary table (~1-2KB). Read every session.tasks/.meta.json— tracksnextIdcounter and known categories.tasks/active/— individual task files (one per task).tasks/done/— completed tasks (kept 30 days).tasks/archive/YYYY-QN/— long-term storage.
For full format specs see file-structure.md.
Core Workflow
1. Detect Task Intent
When the user mentions deadlines, todos, or things to do in conversation, propose creating a task. No special commands needed — use natural language.
Examples of triggers:
- "다음 주 금요일까지 리뷰 완료해야 해"
- "논문 피드백 보내야 하는데"
- "이번 주 할일 뭐 있어?"
2. Create a Task
- Read
tasks/.meta.jsonto getnextId. - Generate ID:
T-{nextId}zero-padded to 3 digits (e.g.,T-001). - Create slug from title (kebab-case English summary).
- Write task file to
tasks/active/{ID}_{slug}.mdusing the format in task-format.md. - Fill the Agent Notes section with relevant workspace context (related files, people, timeline analysis).
- Increment
nextIdin.meta.json. Add new category if not already listed. - Update
tasks/INDEX.md— insert row in the correct section.
3. Update a Task
- Identify the task by ID or title search in INDEX.md.
- Read the individual task file from
tasks/active/. - Apply changes to both the task file and INDEX.md.
- Append a timestamped entry to the task's 메모/진행 기록 section.
4. Complete a Task
- Set
status: doneandcompleted: {today}in the task file. - Move file from
tasks/active/totasks/done/. - Remove the row from INDEX.md. (Do NOT add to done section in INDEX.)
- Confirm completion to the user.
5. Query Tasks
- Quick overview: Read INDEX.md only. Answer from the table.
- Detail needed: Read the specific task file(s) from
tasks/active/. - "What should I do?": Analyze INDEX.md by deadline × priority × estimated hours. Recommend a sequence with reasoning.
6. Delete a Task
Only when explicitly requested. Move to tasks/done/ with status: cancelled
rather than deleting the file. Remove from INDEX.md.
INDEX.md Management
INDEX.md is the single-read entry point for task awareness.
Structure
# Tasks Index
> Last updated: YYYY-MM-DD
> Active: N | Overdue: N | Due this week: N
## 🔴 Overdue
| ID | Title | Due | Priority | Category |
|----|-------|-----|----------|----------|
## 🟡 Due This Week
| ID | Title | Due | Priority | Category |
|----|-------|-----|----------|----------|
## 📋 Later
| ID | Title | Due | Priority | Category |
|----|-------|-----|----------|----------|
## 📊 Summary
Update Rules
- Update INDEX.md on every task create / update / complete / delete.
- Recalculate header counters (Active, Overdue, Due this week) each update.
- Keep rows sorted by due date within each section.
- Reclassify rows between sections based on current date.
- Set
Last updatedto today.
Size Control
| Active tasks | ~Size | Action |
|---|---|---|
| 1–20 | ~1KB | Keep as-is |
| 20–50 | ~2.5KB | Abbreviate Later section (title + due only) |
| 50+ | ~5KB+ | Split into category indexes (INDEX-{category}.md) |
Context Strategy
Read context-strategy.md for details on:
- Layered reading pattern (INDEX → active file → done/archive)
- Subagent cost optimization for cron jobs
- When to read vs. skip individual files
Key rule: If INDEX.md alone can answer the question, do NOT read individual files.
Cron Jobs
Set up scheduled briefings and alerts. All cron jobs use Sonnet-class models. See cron-templates.md for:
- Daily morning briefing (08:00) — overdue alerts + today's priorities
- Deadline check (12:00, 18:00) — D-0/D-1/overdue only, silent if none
- Weekly review (Sunday 20:00) — completion summary, stale task detection, archive cleanup (done/ 30+ days → archive/)
Automatic Cleanup
| Transition | Trigger | Action |
|---|---|---|
| active → done | User marks complete | Move file, update INDEX |
| done → archive | 30 days elapsed | Weekly review moves to archive/YYYY-QN/ |
| archive | — | Never in INDEX. Access only via search. |
Task File Format
Each task is a markdown file with YAML frontmatter. See task-format.md for:
- Complete frontmatter schema
- Section template
- 2-3 example tasks
Workspace Integration
This skill does NOT modify files outside its own directory. See workspace-integration.md for recommended changes to AGENTS.md, SOUL.md, and HEARTBEAT.md (diff format). Apply these with user approval during setup.
Integration with Other Skills
- proactivity: Record task status in session-state; proactively surface relevant tasks during conversation.
- self-improving: Log task management mistakes/improvements to domain file.
Create
self-improving/tasks.mdfor task-specific learnings.
Best Practices
- Always update INDEX.md and the task file atomically.
- Fill Agent Notes with cross-references to workspace files at creation time.
- Use estimated_hours to give realistic scheduling advice.
- When reminding about tasks, include relevant context — not just the deadline.
- Categories are user-defined. Never hardcode a fixed set.
- Keep task titles concise but descriptive for INDEX readability.
Files
7 totalComments
Loading comments…
