据 AlphaMoat 统计,截至 2026-09,topydo 累计下载 3,676 次、获 2 个星标,在全部 5,078 个 AI 技能中排名第 2,941 位,在「生活服务」分类(246 个)中排名第 122 位。
| 平台 | 累计安装 | 累计下载 | 星标 | 评论 |
|---|---|---|---|---|
| ClawHub ↗ | 120 | 3,538 | 2 | - |
| SkillHub ↗ | 179 | 3,676 | 2 | — |
各平台的计数口径不同,统计时间不一致。
主文支持添加、列出、完成、优先排序、标记和组织任务,并涵盖依赖、截止日期、重复规则和项目。完成或删除会改变任务文件;先预览目标和待执行变更,再取得用户确认。
资料发布于 2026-10-27
以下是根据技能文档生成的示例,不代表实际运行结果。
2026-09 起统计方法调整:同名技能按作者分别统计,并覆盖全部技能。图中虚线为调整前的月份,与之后的数据不直接比较,也不计算跨越调整的增长。
| 月份 | 累计下载 | 环比 | 星标 |
|---|---|---|---|
| 2026-09 | 3,676 | — | 2 |
| 2026-08 | 3,447 | +2.1% | 2 |
| 2026-07 | 3,376 | +6.6% | 2 |
| 2026-06 | 3,168 | +4.1% | 2 |
| 2026-05 | 3,043 | — | 2 |
| 2026-03 | 2,634 | — | 2 |
以下是作者发布的原始文件,按纯文本显示,本站未做修改或审核;其中的链接不可点击,命令请核实后再运行。抓取于 2026-10-23。
--- name: topydo description: Manage todo.txt tasks using topydo CLI. Add, list, complete, prioritize, tag, and organize tasks with dependencies, due dates, recurrence, and projects. Use for any task management, todo lists, or when the user mentions tasks, todos, or todo.txt. Requires Python 3 and pip. Works on macOS, Linux, and Windows. license: MIT metadata: author: github.com/bastos version: "2.0" --- # topydo - Todo.txt Task Manager
topydo is a powerful CLI for managing tasks in the todo.txt format. It supports dependencies, due dates, start dates, recurrence, priorities, projects, and contexts.
## Task Format Reference
```
(A) 2025-01-11 Task text +Project @Context due:2025-01-15 t:2025-01-10 rec:1w star:1
│ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ └─ Star marker
│ │ │ │ │ │ │ └─ Recurrence
│ │ │ │ │ │ └─ Start/threshold date
│ │ │ │ │ └─ Due date
│ │ │ │ └─ Context
│ │ │ └─ Project
│ │ └─ Task description
│ └─ Creation date
└─ Priority (A-Z)
```
## Installation
### Homebrew (macOS, preferred)
```bash
brew install topydo
```
### pip (all platforms)
```bash
pip3 install topydo
```
With optional features:
```bash
pip3 install 'topydo[columns,prompt,ical]'
```
### apt (Ubuntu/Debian)
```bash
sudo apt install python3-pip && pip3 install topydo
```
## Configuration
Config file locations (in order of precedence):
- `topydo.conf` or `.topydo` (current directory)
- `~/.topydo` or `~/.config/topydo/config`
- `/etc/topydo.conf`
Example `~/.topydo`:
```ini
[topydo]
filename = ~/todo.txt
archive_filename = ~/done.txt
colors = 1
identifiers = text
[add]
auto_creation_date = 1
[sort]
sort_string = desc:importance,due,desc:priority
ignore_weekends = 1
```
## Adding Tasks
Basic task:
```bash
topydo add "Buy groceries"
```
With priority (A is highest):
```bash
topydo add "(A) Urgent task"
```
With project and context:
```bash
topydo add "Write report +ProjectX @office"
```
With due date (absolute):
```bash
topydo add "Submit proposal due:2025-01-15"
```
With due date (relative):
```bash
topydo add "Call mom due:tomorrow"
```
With due date (weekday):
```bash
topydo add "Weekly review due:fri"
```
With start/threshold date:
```bash
topydo add "Future task t:2025-02-01"
```
With recurrence (weekly):
```bash
topydo add "Water plants due:sat rec:1w"
```
With strict recurrence (always on 1st of month):
```bash
topydo add "Pay rent due:2025-02-01 rec:+1m"
```
With dependency (must complete before task 1):
```bash
topydo add "Write tests before:1"
```
As subtask of task 1:
```bash
topydo add "Review code partof:1"
```
## Listing Tasks
List all relevant tasks:
```bash
topydo ls
```
Include hidden/blocked tasks:
```bash
topydo ls -x
```
Filter by project:
```bash
topydo ls +ProjectX
```
Filter by context:
```bash
topydo ls @office
```
Filter by priority:
```bash
topydo ls "(A)"
```
Filter by priority range:
```bash
topydo ls "(>C)"
```
Filter tasks due today:
```bash
topydo ls due:today
```
Filter overdue tasks:
```bash
topydo ls "due:<today"
```
Filter tasks due by Friday:
```bash
topydo ls "due:<=fri"
```
Combine multiple filters:
```bash
topydo ls +ProjectX @office due:today
```
Exclude context:
```bash
topydo ls -- -@waiting
```
Sort by priority:
```bash
topydo ls -s priority
```
Sort descending by due date, then priority:
```bash
topydo ls -s desc:due,priority
```
Group by project:
```bash
topydo ls -g project
```
Limit to 5 results:
```bash
topydo ls -n 5
```
Custom output format:
```bash
topydo ls -F "%I %p %s %{due:}d"
```
Output as JSON:
```bash
topydo ls -f json
```
## Completing Tasks
Complete task by ID:
```bash
topydo do 1
```
Complete multiple tasks:
```bash
topydo do 1 2 3
```
Complete all tasks due today:
```bash
topydo do -e due:today
```
Complete with custom date:
```bash
topydo do -d yesterday 1
```
## Priority Management
Set priority A:
```bash
topydo pri 1 A
```
Set priority for multiple tasks:
```bash
topydo pri 1 2 3 B
```
Remove priority:
```bash
topydo depri 1
```
## Tagging Tasks
Set due date:
```bash
topydo tag 1 due tomorrow
```
Star a task:
```bash
topydo tag 1 star 1
```
Remove a tag:
```bash
topydo tag 1 due
```
Set custom tag with relative date:
```bash
topydo tag -r 1 review 2w
```
## Modifying Tasks
Append text to task:
```bash
topydo append 1 "additional notes"
```
Append due date:
```bash
topydo append 1 due:friday
```
Edit task in text editor:
```bash
topydo edit 1
```
Edit all tasks in project:
```bash
topydo edit -e +ProjectX
```
## Deleting Tasks
Delete by ID:
```bash
topydo del 1
```
Delete multiple:
```bash
topydo del 1 2 3
```
Delete by expression:
```bash
topydo del -e completed:today
```
## Dependencies
Add dependency (task 2 depends on task 1):
```bash
topydo dep add 2 to 1
```
Task 2 is part of task 1:
```bash
topydo dep add 2 partof 1
```
List what depends on task 1:
```bash
topydo dep ls 1 to
```
List what task 1 depends on:
```bash
topydo dep ls to 1
```
Remove dependency:
```bash
topydo dep rm 2 to 1
```
Visualize dependencies (requires graphviz):
```bash
topydo dep dot 1 | dot -Tpng -o deps.png
```
## Postponing Tasks
Postpone by 1 week:
```bash
topydo postpone 1 1w
```
Postpone by 3 days:
```bash
topydo postpone 1 3d
```
Postpone including start date:
```bash
topydo postpone -s 1 1w
```
## Other Commands
Sort the todo.txt file:
```bash
topydo sort
```
Revert last command:
```bash
topydo revert
```
Show revert history:
```bash
topydo revert ls
```
List all projects:
```bash
topydo lsprj
```
List all contexts:
```bash
topydo lscon
```
Archive completed tasks:
```bash
topydo archive
```
## Relative Dates
- `today`, `tomorrow`, `yesterday`
- Weekdays: `mon`, `tue`, `wed`, `thu`, `fri`, `sat`, `sun`
- Periods: `1d` (days), `2w` (weeks), `3m` (months), `1y` (years)
- Business days: `5b` (excludes weekends)
## Sort/Group Fields
- `priority`, `due`, `creation`, `completed`
- `importance`, `importance-avg`
- `project`, `context`, `text`, `length`
Prefix with `desc:` for descending. Example: `desc:importance,due`
## Tips
- Use a clean, human-readable format to present results to the user
- Enable stable text IDs: set `identifiers = text` in config
- Star important tasks: add `star:1` tag
- Hidden tags by default: `id`, `p`, `ical`
- Importance = priority + due date proximity + star status
用 curl 直接向公共天气服务取当前天气与预报的技能。
在局域网里发现并控制 Sonos 音箱的命令行工具。
以六爻占卜方式作答的技能。
用本地 JSON 记录饮水量与睡眠的技能。
在本地同步并查询 CalDAV 日历的命令行技能。
在 macOS 上通过 remindctl 管理提醒事项的技能。
travel-cn 聚合去哪儿/携程/飞猪等中国旅行平台的数据查询,覆盖机票、酒店、火车票、景点门票与行程规划。
在终端里搜索与控制 Spotify 播放的技能。
数据月份:2026-09 · 下载/星标/安装数聚合自公开技能注册库(ClawHub、SkillHub),按月更新。口径说明见数据方法。