关于 things-todo
通过 `things` CLI 管理 Peter 的 Mac 上 Things 3 待办事项。涵盖添加、搜索、更新和删除,并要求回读验证,避免直接写入数据库。
主要功能
- 01添加和搜索任务
- 02设置日期、截止日期、清单和标签
- 03按 ID 更新或删除任务
- 04回读任务以验证更改
- 05变更前进行试运行
适用场景
- 01记录具体的下一步行动
- 02按查询查找任务
- 03更新或移除现有待办事项
- 04确认任务变更已生效
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ steipete/ agent-scripts --skill things-todo安装后在 Claude Code 中输入/things-todo确认已加载。
详细介绍
Things 待办事项
在 Peter 的 Mac 上使用此工具管理 Things 3 任务。对于由 Things 管理的待办事项,优先使用 things;只有用户要求使用 Apple Reminders 时才使用 $reminders。
工具
- CLI:
things - 仓库:
https://github.com/ossianhempel/things3-cli - 安装:
GOBIN=/opt/homebrew/bin go install github.com/ossianhempel/things3-cli/cmd/things@latest
更新 URL 操作的身份验证:
source ~/.profile >/dev/null 2>&1 || true
things auth
THINGS_AUTH_TOKEN 应从 ~/.profile 或 1Password 获取。绝不要打印它。
things update --dry-run 必须将其编辑为 auth-token=***。
开始
使用 JSON 进行脚本化读取和验证:
things tasks --format json --limit 20
things today --format json
things search "query" --format json
读取 Things 数据库可能需要为调用应用授予“完全磁盘访问权限”。写入应通过 things 使用 Things URL Scheme 或 AppleScript 进行;不要直接写入 SQLite 数据库。
添加
默认流程:添加后搜索并读回。
things add "Book LHR-SFO nonstop business flight" --notes "Nonstop only." --when tomorrow --tags travel
things tasks --search "LHR-SFO" --format json
实用标志:
--notes "text"--when today|tomorrow|evening|anytime|someday|YYYY-MM-DD--deadline YYYY-MM-DD--list "Project or Area"--tags tag1,tag2--checklist-item "text"可重复使用--dry-run用于查看things:///URL,而不进行更改。
更新 / 删除
先查找 UUID,然后按 ID 修改:
things tasks --search "flight" --format json
things update --id <uuid> "New title" --notes "Updated notes"
things tasks --search "New title" --format json
things delete --id <uuid> --confirm <uuid>
things tasks --search "New title" --format json
things trash --search "New title" --format json
写入后务必读回。删除会将条目移至 Things 废纸篓;需要清理时,请确认普通搜索无结果,且在废纸篓搜索中能找到该条目。
约定
- 将模糊的请求转化为明确的下一步行动标题。
- 如果用户明确希望直接记录而非改写,则保留原措辞。
- 将无关的操作拆分为独立待办事项。
- 只有当用户暗示要设为 Today 时才使用 Today;否则采用 Inbox/Anytime 默认值。
- 批量更新或删除前优先使用
--dry-run。 - 计算当前日期时运行
date;不要猜测。
注意事项
- 仅限 macOS;如果远程主机上没有 Things.app 或无法看到它,可能会显示 Things.app 版本为
UNKNOWN。 update需要THINGS_AUTH_TOKEN;add不需要。--tags是添加/更新时使用的复数形式;tasks --tag是筛选时使用的单数形式。today的 JSON 可能显示start: Anytime,同时包含实际的start_date;验证是否已设为 Today 时,应检查命令归属或读回结果,不要只依据单个字段。
评论
支持 Markdown