TUI 支持完整的 CRUD —— 即使没有外部 Agent,也可以独立使用 Mutsumi 管理任务。
触发方式:按 n 键或点击底部 [+New] 按钮。
弹出输入对话框:
┌─────────── New Task ───────────┐│ Title: [ ] ││ Scope: (Day) Week Month Inbox ││ Priority: High (Normal) Low ││ Tags: [ ] ││ ││ [Create] [Cancel] │└────────────────────────────────┘- Title 是唯一必填字段
- Scope 默认为当前活动标签,Priority 默认为 Normal
- Tags 接受逗号分隔的输入
- UUIDv7 ID 和
created_at在创建时自动生成
触发方式:按 e 键打开编辑表单,或按 i 键进行行内编辑。
表单编辑 (e)
Section titled “表单编辑 (e)”打开编辑对话框,可修改标题、scope、优先级、标签等所有字段。
行内编辑 (i)
Section titled “行内编辑 (i)”标题直接变为可编辑文本框,在列表行中原地编辑:
- Enter 确认
- Escape 取消
- 修改立即回写到 JSON
触发方式:按 dd(vim 风格双键)。
- 显示确认对话框(可在配置中禁用)
- 删除后任务从 JSON 中移除
- 同时发射
task_deleted事件
触发方式:按 Space 键或鼠标点击复选框。
pending→done:自动填充completed_atdone→pending:清除completed_at- 立即回写 JSON,无确认步骤(追求手感利落)
按 A (Shift+a) 为选中任务添加子任务。也可以在详情面板中点击 [+Sub] 按钮。
子任务通过 children 数组递归嵌套:
{ "id": "01JQ...", "title": "重构用户系统", "children": [ { "id": "01JQ...", "title": "设计数据库 schema", "status": "done", "children": [] }, { "id": "01JQ...", "title": "写 migration 脚本", "status": "pending", "children": [] } ]}TUI 默认渲染 3 层嵌套,更深层折叠显示为”3 subtasks…”。
| 按键 | 操作 |
|---|---|
+ / = | 提升优先级 (low → normal → high) |
- / _ | 降低优先级 (high → normal → low) |
| 按键 | 操作 |
|---|---|
| J (Shift+j) | 在列表中下移任务 |
| K (Shift+k) | 在列表中上移任务 |
| 按键 | 操作 |
|---|---|
| y | 复制当前任务 |
| p | 在下方粘贴任务 |
| P (Shift+p) | 在上方粘贴任务 |
| 按键 | 操作 |
|---|---|
| h | 折叠优先级分组 |
| l | 展开优先级分组 |
| z | 切换子任务折叠/展开 |
按 s 键打开排序菜单,可按以下维度排序:
- 优先级
- 创建时间
- 到期日期
- 标题字母序
按 / 进入搜索模式:
- 实时过滤(边输入边过滤)
- 搜索范围:标题 + 标签 + 描述
- Escape 退出搜索并恢复完整列表
| 鼠标操作 | 行为 |
|---|---|
点击 [ ] / [x] | 切换完成状态,回写 JSON |
| 点击任务行 | 选中任务(高亮) |
| 双击标题 | 进入行内编辑模式 |
| 点击标签页 | 切换视图 (Today/Week/Month/Inbox) |
点击 [+New] | 打开新任务输入对话框 |
| 滚轮 | 滚动任务列表 |