Install
openclaw skills install neomano-todoEnhanced TODO/task manager backed by a local SQLite database (instead of flat text files) with priorities (1-3), tags, due dates, reminder timestamps, explicit task lifecycle statuses (open/done/blocked/expired/forgotten), and stale-task detection to prevent backlog accumulation. Use when the user wants to add, list, filter, prioritize, update, complete, expire/forget, or review stale tasks; or when they want reminder scheduling metadata to be stored for OpenClaw cron delivery.
openclaw skills install neomano-todoAn improved personal TODO system that uses SQLite as the backend (not text files).
Why SQLite:
due_at (when it should be done)remind_at (when to notify)open, done, blocked, expired, forgottenremind_at + cron_job_id so reminders can be created/updated/cancelled by the agentlast_touched_at and priority thresholdsRecommended: set in ~/.openclaw/.env on the gateway machine.
NEOMANO_TODO_DB_PATH
~/.openclaw/workspace/data/neomano-todo.sqlite3Used by the agent when scheduling a reminder (cron delivery).
NEOMANO_TODO_DEFAULT_CHANNEL
whatsapp, telegram, etc.NEOMANO_TODO_DEFAULT_TARGET
+593987233203 for WhatsApp.NEOMANO_TODO_TZ
America/GuayaquilThe helper script auto-creates tables on first run.
Main fields stored per task:
title, notespriority (1–3)status (open|done|blocked|expired|forgotten)created_at, updated_at, last_touched_at, completed_atdue_at, remind_atcron_job_id (optional, set after creating a cron job)tags + task_tagsUse the bundled deterministic helper script:
skills/neomano-todo/scripts/todo.pyIt outputs JSON to make it easy for an agent to parse.
Add a task:
python3 skills/neomano-todo/scripts/todo.py add "Install Starlink antenna" --priority 2 --tags "starlink,truck" --notes "This weekend"
Get a task:
python3 skills/neomano-todo/scripts/todo.py get 12
List tasks:
python3 skills/neomano-todo/scripts/todo.py list --status open --order priority
python3 skills/neomano-todo/scripts/todo.py list --status open --order due
python3 skills/neomano-todo/scripts/todo.py list --tag sales --order priority
Complete / reopen:
python3 skills/neomano-todo/scripts/todo.py done 12
python3 skills/neomano-todo/scripts/todo.py reopen 12
Change status (blocked/expired/forgotten/etc):
python3 skills/neomano-todo/scripts/todo.py set-status 12 blocked
python3 skills/neomano-todo/scripts/todo.py set-status 12 forgotten
Change priority:
python3 skills/neomano-todo/scripts/todo.py set-priority 12 1
Update tags:
python3 skills/neomano-todo/scripts/todo.py set-tags 12 "sales,followup"
Update due/reminder timestamps:
python3 skills/neomano-todo/scripts/todo.py set-dates 12 --due-at "2026-03-29T09:00:00-05:00" --remind-at "2026-03-29T08:30:00-05:00"
Store cron job id (after scheduling a reminder with OpenClaw cron):
python3 skills/neomano-todo/scripts/todo.py set-cron-job 12 <cron_job_id>
Delete:
python3 skills/neomano-todo/scripts/todo.py delete 12
The script stores reminder timestamps; the agent is responsible for scheduling.
Workflow:
remind_at is set and status is open, create/update a cron job scheduled at remind_at.set-cron-job.done, expired, forgotten), cancel the cron job (if any).Policy:
List stale candidates:
python3 skills/neomano-todo/scripts/todo.py stale-candidates