SuperAPI AI Directory

do.todo

General & other

View repository

Updated 10-16 05:06

About this skill

Manage DeepOrbit Tasks

Use the local CLI so task IDs, dates, and rewrites stay deterministic:

deeporbit --vault "<vault-path>" todo add "<text>" [--today] [--project "<name>"] \
    [--scheduled YYYY-MM-DD] [--due YYYY-MM-DD] [--time HH:MM] \
    [--priority highest|high|medium|low|lowest] [--recur "<rule>"] [--parent <line-or-id>]
deeporbit --vault "<vault-path>" todo list [--view flat|board|timeline|progress] [--md]
deeporbit --vault "<vault-path>" todo set <id> [--status todo|doing|done|cancelled] \
    [--due YYYY-MM-DD] [--time HH:MM] [--priority <p>] [--recur "<rule>"]
deeporbit --vault "<vault-path>" todo attach <id> <file>
deeporbit --vault "<vault-path>" todo done <id>

Default capture goes to 00_Inbox/Todos.md; --today targets today's Daily Note; --project targets 20_Projects/<name>.md. Do not rewrite unrelated text in the containing note. Tasks, Dataview, and Calendar plugins are optional presentation layers; never require them for task operations.

Capture with natural language

todo add parses Chinese and English time expressions out of the text (today/tonight/tomorrow, 上午/晚上 N点, N天后, 周X/每周X, X月X日, in 3 days, 7pm, every Friday, …) and returns the structured result as JSON. Echo it back for confirmation before moving on:

$ deeporbit todo add "今晚七点跟丽丽吃饭"
→ {"text": "跟丽丽吃饭", "due": "2026-07-25", "time": "19:00", ...}
已录入:跟丽丽吃饭 📅 2026-07-25 ⏰ 19:00

When the CLI parser cannot express the semantics, decompose the request yourself and pass explicit flags:

  • "提前一小时提醒我" → parse the due time, subtract one hour, pass it as --time explicitly.
  • "周五之前,最重要的事" → --due <friday> --priority highest.
  • #tag and !1 !2 !3 priority shorthands are recognized inline.

Split big tasks

Turn a large task into a parent line plus indented subtasks (CLI --parent, or indented checkbox lines in Markdown). Order the subtasks with ⛔ <id> dependencies when a step blocks another. Progress is derived automatically as [n/m] — never hand-write percentages.

Polish rough input

Convert colloquial dumps ("那个啥,下周之前得把评审材料弄完,还要约会议室") into concrete, actionable tasks, preserving the original meaning. If an item is an idea or thought rather than a commitment, suggest moving it to 30_Research instead of capturing it as a task.

Report

Combine deeporbit agenda (overdue / today / upcoming / unscheduled) with todo list --view progress (per-project n/m and completion rate) and summarize in natural language. Use --md when the chat renders Markdown tables.

Attachments

todo attach <id> <file> copies the file into 90_Attachments/ (timestamped on conflict) and appends ![[...]] to the task line. When the user pastes an image for a task, save it to 90_Attachments/ first, then attach.

Link tasks to the vault

Reference projects with #project/<name> inline or --project <name> to file the task into the project note; [[note name]] wikilinks inside task text stay live in Obsidian.

Reminders

The first time the user asks to be reminded at a time ("提醒我", "到点叫我"), guide them through deeporbit remind install (see the do.remind skill). Reminders fire only for tasks carrying both 📅 and ⏰.