核心用法
Task 是一个 CLI 任务管理工具的「自然语言接口」,核心作用是将用户的口语化指令翻译成 tasker_cmd 的原始参数。
典型交互模式:
- 列表查询:「今天有什么任务」→
tasks --open --format telegram(自动包含今日+逾期) - 周规划:「这周安排」→
week --days 7 --format telegram - 添加任务:「记得买牛奶今天」→
add "买牛奶" --today --format telegram - 带详情添加:「订机票 | 北京往返上海,周五去周日回」→
add --text "订机票 | 北京往返上海,周五去周日回" --format telegram - 快速捕获:「capture 想法」→
capture "想法" --format telegram - 完成任务:「标记周报为完成」→
done "周报" - 看板视图:「看 Work 项目板」→
board --project Work --format telegram
关键解析规则:
- 仅识别
|(空格-管道-空格)作为标题/详情/截止日的分隔符,避免误拆普通连词 - 模糊匹配时先执行
resolve "<query>",唯一直接匹配时才按 ID 操作,且 ID 永不暴露给用户 - 笔记追加必须用
note add <selector> -- <text>,双横线防歧义
显著优点
| 维度 | 优势 |
|------|------|
| **交互自然** | 支持完整句子输入,降低 CLI 学习成本 |
| **输出友好** | 原生 `--format telegram` 优化,适合即时通讯场景 |
| **结构保留** | 相比纯 Markdown 列表,保留元数据同时隐藏机器 ID |
| **智能回退** | `resolve` 命令在模糊查询时提供智能降级(含笔记内容搜索) |
| **双模式** | 自然语言模式(本 skill)与纯 `/task` 指令模式并存,按需切换 |
潜在局限
- 分隔符严格:必须精确输入
|,普通|或中文「|」无法触发多字段解析 - 依赖外部 CLI:实际任务数据操作由
tasker_cmd执行,故障排查需跨工具定位 - 上下文无记忆:每次调用独立,无法维持跨会话的任务选择状态
- 权限边界模糊:
tasker_cmd的具体权限模型(能否删库、能否跨项目)未在 skill 层暴露
适合人群
- IM 重度用户:主要在 Telegram/WhatsApp 管理任务清单
- CLI 工具链用户:已在使用 Tasker 生态,需要自然语言快捷入口
- 周计划/看板需求者:需要
week和board视图快速规划
常规风险
1. 解析歧义:自然语言转 CLI 存在语义损失,如「明天」与具体日期的映射依赖工具层实现
2. 模糊匹配误伤:resolve 若返回多结果会阻断操作,用户可能困惑为何无响应
3. 数据一致性:--format telegram 仅为输出层,若底层数据变更而缓存未刷新,可能展示过期状态
4. 命令注入边界:虽然 raw args 模式减少了 shell 转义问题,但 " 和 -- 的处理仍需依赖 tasker_cmd 的安全实现