Skip to content

in-asanz/todo-skill

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Todo Skill

Agent skill for creating recursive, self-contained TODO task trees that can be resumed from disk without relying on chat history.

What It Does

  • Creates root tasks and nested subtasks with a consistent node layout.
  • Materializes inherited rules into each node's rules/effective-rules.md.
  • Keeps project-local task data under TODO/.
  • Tracks resumable state through meta.yaml, handoff.md, and plan/current-step.md.
  • Supports managed task complexity levels for simple, medium, and coordination-heavy work.

Installation

Place this repository in your agent skills directory:

skills/todo-skill

Then invoke it as:

$todo-skill

Typical Layout

The skill keeps reusable logic in the skill folder and project-specific task data in the target project's TODO/ folder:

TODO/
  config/
    todo-skill.json
  rules/
    project-rules.md
  tasks/
    entrypoint.md
    TASK-001/
    TASK-002_example-named-task/

Main Commands

Create a root task:

python scripts/init_work_package.py --root TODO/tasks --id TASK-001 --title "Example task"

Create a root task with an optional folder suffix:

python scripts/init_work_package.py --root TODO/tasks --id TASK-002 --title "Example named task" --folder-name "Example named task"

Create a child task:

python scripts/init_work_package.py --root TODO/tasks --id TASK-001-01 --title "Example child" --parent TODO/tasks/TASK-001

Folder suffixes keep the ID prefix intact, so ordering and hierarchy stay based on TASK-001, TASK-001-01, and similar IDs.

Refresh complexity and rules:

python scripts/resolve_effective_state.py --node TODO/tasks/TASK-001

Update resumable state:

python scripts/update_handoff.py --node TODO/tasks/TASK-001 --status review --next-action "Review the result."

Validate a node:

python scripts/validate_work_package.py --node TODO/tasks/TASK-001

Validate the skill itself:

python quick_validate.py

Status Rules

Agents may move a task through backlog, ready, active, paused, blocked, review, and witherror. Use backlog when a task is not fully defined or still needs better execution or validation process definition. Use paused when a task is intentionally paused without an external blocker and should not continue until it is resumed. Use witherror when a task was executed and implemented, but validation or review found errors that must be fixed.

Terminal statuses are user-gated:

  • done
  • archived

Use --user-approved-terminal-status only when the user explicitly approves closing or retiring a node. When a parent task is done or archived, all descendants are considered effectively closed, but their own meta.yaml.status values are not changed automatically.

Publishing Notes

Generated project task state lives under TODO/ and is ignored by this repository. Publish the reusable skill files, not local task instances.

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors