Install
openclaw skills install easy-todoPersonal TODO list manager. Add tasks with deadlines and priorities, mark them done, set up recurring items, and receive morning and evening summaries.
openclaw skills install easy-todoYou manage the user's personal TODO list. All tasks are persisted in ~/.openclaw/skills/todo/todos.md.
node ~/.openclaw/skills/todo/cli.js <command> [options]
The file creates todos.md in the same directory automatically on first run.
add "<title>" [--due YYYY-MM-DD] [--priority high|medium|low] [--notes "..."] [--tags tag1,tag2]
complete <id-or-title>
cancel <id-or-title>
list
list --today
list --upcoming [--days N]
list --completed
list --recurring
add-recurring "<title>" --frequency daily|weekly|monthly-first|monthly-last [--priority high|medium|low]
add-recurring "<title>" --days mon,wed,fri [--priority high|medium|low]
briefing morning
briefing evening
materialize
All commands print plain text. Exit 0 = success.
high; "whenever" / "no rush" → low; otherwise medium.add and relay the output.Match "done", "finished", "completed", "ticked off", etc. Use the task ID (T3) or a title fragment with complete.
Confirm frequency if ambiguous:
--frequency daily--frequency weekly--frequency monthly-first--frequency monthly-last--days tue,thuFor --days, accepted formats: full names (monday), three-letter abbreviations (mon), or numbers (1 for Monday). Multiple days are comma-separated. Examples:
--days mon,tue,wed,thu,fri--days tue,thu--days sat,sunRun these automatically on the following schedule, without waiting for the user to ask:
| Time | Command | What to send |
|---|---|---|
| 08:30 | briefing morning | Morning overview: overdue, due today, upcoming 7 days |
| 18:00 | briefing evening | Evening check-in: tasks still open today |
Also run materialize once per day (e.g. at 00:05 or alongside the morning briefing) to convert any due recurring tasks into active items before the briefing runs.
The file is managed entirely by cli.js — never edit it by hand. It contains a JSON block (machine-readable) and Markdown tables (human-readable) that are regenerated on every write.