M365 Task Manager
Use this skill to perform real Microsoft Graph CRUD operations for Microsoft To Do tasks.
Setup
- Create an Entra app registration for delegated sign-in.
- Add Microsoft Graph delegated permissions:
Tasks.ReadWriteUser.Readoffline_access
- Configure environment variables:
M365_TENANT_ID=your-tenant-id-or-common
M365_CLIENT_ID=your-public-client-app-id
# optional
M365_TOKEN_CACHE_PATH=/home/user/.cache/openclaw/m365-task-manager-token.json
- Install dependencies at repo root:
npm install
On first run, the script uses Device Code login and caches tokens for reuse.
Commands
# profile connection
node skills/m365-task-manager/scripts/m365-todo.mjs info
# list Microsoft To Do lists
node skills/m365-task-manager/scripts/m365-todo.mjs lists
# list tasks
node skills/m365-task-manager/scripts/m365-todo.mjs tasks:list --list-name "Tasks"
# create task
node skills/m365-task-manager/scripts/m365-todo.mjs tasks:create --list-name "Tasks" --title "2026-03-01-submit-weekly-status-report" --due 2026-03-01
# update task
node skills/m365-task-manager/scripts/m365-todo.mjs tasks:update --list-name "Tasks" --task-id <TASK_ID> --status inProgress
# delete task
node skills/m365-task-manager/scripts/m365-todo.mjs tasks:delete --list-name "Tasks" --task-id <TASK_ID>
Operating standard
- Task title pattern:
<project>-<date>-<person>-<action> - Required fields: title, owner, due date, status
- Status values:
Open,In Progress,Blocked,Done
References
references/playbook.mdfor operating guidance.
Scripts
scripts/m365-todo.mjsfor Graph CRUD on Microsoft To Do.scripts/format-task-name.shfor deterministic task naming.
Author
Abdelkrim BOUJRAF - ALT-F1 SRL - https://www.alt-f1.be
License
MIT