Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Manage Microsoft To Do tasks via the `todo` CLI. Use when user wants to add, list, complete, remove tasks, manage subtasks (steps), notes, or organize task lists.
Manage Microsoft To Do tasks via the `todo` CLI. Use when user wants to add, list, complete, remove tasks, manage subtasks (steps), notes, or organize task lists.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Manage tasks in Microsoft To Do using the todo command.
references/setup.md (Azure app registration + OAuth configuration)
todo CLI installed (pip install microsoft-todo-cli) Microsoft Azure app registered (see references/setup.md) Credentials configured at ~/.config/microsoft-todo-cli/keys.yml First run completes OAuth flow in browser
# List tasks todo tasks --json # Default list todo tasks Work --json # Specific list todo tasks --due-today --json # Due today todo tasks --overdue --json # Past due todo tasks --important --json # High priority todo tasks --completed --json # Done tasks todo tasks --all --json # Everything # Create task todo new "Task name" --json # Basic todo new "Task" -l Work --json # In specific list todo new "Task" -d tomorrow --json # With due date todo new "Task" -r 2h --json # With reminder todo new "Task" -d mon -r 9am --json # Due Monday, remind 9am todo new "Task" -I --json # Important todo new "Task" -R daily --json # Recurring daily todo new "Task" -R weekly:mon,fri --json # Specific days todo new "Task" -S "Step 1" -S "Step 2" --json # With subtasks todo new "Task" -N "Note content" --json # With note # Update task todo update "Task" --title "New" --json todo update "Task" -d friday -I --json # Complete/Uncomplete todo complete "Task" --json todo complete 0 1 2 --json # Batch by index todo uncomplete "Task" --json # Delete todo rm "Task" -y --json
todo new-step "Task" "Step text" --json todo list-steps "Task" --json todo complete-step "Task" "Step" --json todo uncomplete-step "Task" "Step" --json todo rm-step "Task" 0 --json
todo note "Task" "Note content" todo show-note "Task" todo clear-note "Task"
todo lists --json todo new-list "Project X" --json todo rename-list "Old" "New" --json todo rm-list "Project X" -y --json
MethodStabilityUse Case--id "AAMk..."StableAutomation, scriptsIndex (0, 1)UnstableInteractive onlyName ("Task")UnstableUnique names only Use ID for multi-step operations: ID=$(todo new "Task" -l Work --json | jq -r '.id') todo complete --id "$ID" -l Work --json
TypeExamplesRelative1h, 30m, 2d, 1h30mTime9:30, 9am, 17:00, 5:30pmDaystomorrow, monday, friDate2026-12-31, 31.12.2026Keywordsmorning (7:00), evening (18:00)
PatternDescriptiondailyEvery dayweeklyEvery weekmonthlyEvery monthyearlyEvery yearweekdaysMonday to Fridayweekly:mon,wed,friSpecific daysevery 2 daysCustom interval
AliasCommandttasksnnewccompletedrmsnshow-notecnclear-note
Always use --json for all commands to get structured output Always use -y with rm commands to skip confirmation Use --id with -l ListName for list context First run opens browser for OAuth authentication
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.