然后
带有TUI和MCP服务器的CLI待办事项管理器,用于AI助手。
npm install -g tadacli快速开始
tada init # Create a .tada/ store in current directory
tada add "My task" # Add a todo
tada # Launch the TUICLI命令
# Todos
tada add "title" # Add a todo
tada add "title" -P # Add as subtask
tada ls # List inbox
tada today # Show today's todos
tada done # Complete a todo
tada cancel # Cancel a todo
tada undo # Undo last action
tada undo # Reopen a specific todo
tada edit --title "new" # Edit a todo
tada delete # Delete a todo
tada move -p
# Move to project
tada tag work # Add tags
tada untag work # Remove tags
tada search # Search todos
# Projects
tada project add "title" # Create a project
tada project ls # List projects
tada project show # Show project details
tada project done # Complete project
tada project delete # Delete project (todos go to inbox)
# Areas
tada area add "title" # Create an area
tada area ls # List areas
tada area delete # Delete area
# Store management
tada stores # List all known tada stores
tada -g ls # Use global store (~/.tada)文本用户界面
跑 tada 以启动交互式终端UI。
布局
+------------------+-------------------------------+
| Sidebar | Main Panel |
| | |
| 1 Inbox (3) | Inbox (3) |
| 2 Today (1) | |
| 3 Upcoming | > o Task one |
| 4 Projects (1) | o Task two |
| 5 Areas | > Subtask a |
| 6 Logbook (2) | o Task three |
| 7 Search | |
+------------------+-------------------------------+
| hjkl:nav a:add d:done x:del u:undo ?:help |
+--------------------------------------------------+键绑定
| 关键 | 行动 |
|---|---|
j/k | 向上/向下移动 |
h/l | 切换侧边栏/主边栏 |
1-7 | 跳转查看 |
a | 全部添加 |
A | 在选定项下添加子任务 |
d | 标记完成/重新打开 |
x | 删除 |
m | 移动到项目 |
u | 撤消上次操作 |
s | 循环排序(创建/alpha/到期) |
c | 切换已完成 |
g | 切换全球/本地商店 |
/ | 搜索 |
Enter | 展开子任务/打开详细信息 |
? | 帮助 |
q | 退出 |
视图
- 收件箱 -没有项目、没有预定日期的待办事项
- 今天 -定于今天或今天截止日期的待办事项
- 即将到来的 -为未来日期安排的待办事项
- 项目 -按项目分组,可扩展
- 区域 -项目组织小组
- 日志 -已完成和取消的待办事项
- 搜索 -跨待办事项的全文搜索
MCP 服务器
tada包括一个用于Claude Code等AI编码助手的MCP服务器。
tada mcp # Start the MCP server (stdio transport)可用工具
| 工具 | 说明 |
|---|---|
todo_add | 创建待办事项 |
todo_list | 使用过滤器列出待办事项 |
todo_complete | 完成待办事项 |
todo_update | 更新待办事项字段 |
todo_delete | 删除待办事项 |
todo_reopen | 重新打开已完成的待办事项 |
todo_cancel | 取消待办事项 |
undo | 撤消上次突变 |
project_create | 创建项目 |
project_list | 列出项目 |
project_show | 显示带有待办事项的项目 |
project_complete | 完成一个项目 |
project_delete | 删除项目 |
area_create | 创建一个区域 |
area_list | 列出区域 |
area_delete | 删除区域 |
Claude代码集成
添加到MCP配置中:
{
"mcpServers": {
"tada": {
"command": "tada",
"args": ["mcp"]
}
}
}演示:TUI演练
推出TUI tada 并跟随。
导航
- 应用程序打开到 收件箱 主面板聚焦的视图
- 按
j/k在todos中上下移动光标 - 按
h将焦点转移到侧边栏,l返回主界面 - 按
1-7或使用j/k在侧边栏中+Enter切换视图
添加待办事项
- 按
a打开底部的快速添加栏 - 使用内联语法键入todo:
Deploy to staging #devops !high @today due:2026-03-15 - 按
Enter另外,Esc取消 - 在 项目 查看、展开项目
Enter,然后按a--todo会自动分配给该项目
子任务
- 选择待办事项并按
A(换档+A) - 快速添加栏显示
[subtask of "Parent"]上下文 - 键入子任务标题并按
Enter - 家长展示了
[0/1]进度计数器 - 按
Enter在父级上展开并内联查看子任务
完成并删除
- 按
d在打开的待办事项上标记已完成(按d再次完成待办事项以重新打开) - 按
x要删除--出现确认提示,请按y确认 - 按
u撤消上一个操作
在项目之间移动待办事项
- 选择待办事项并按
m - 出现一个项目选择器——使用
j/k选择项目(或收件箱) - 按
Enter移动
排序和过滤
- 按
s循环排序模式:创建日期、字母顺序、截止日期 - 按
c切换显示已完成的待办事项 - 按
/要打开搜索,请键入查询,然后Enter浏览结果
详细视图
- 按
Enter在待办事项(没有子任务)上打开详细信息面板 - 显示标题、状态、优先级、标签、日期、注释和子任务
- 从细节:
d为了完成,x要删除,m移动,Esc关闭
切换商店
- 按
g从任何窗格在本地和全局存储之间切换 - 侧边栏显示当前商店路径——当侧边栏聚焦时,它会滚动
演示:CLI演练
仅使用CLI进行从头到尾的演示。
1.初始化并添加待办事项
$ tada init
✓ Initialized .tada/ in current directory
$ tada add "Design landing page" -t design --priority high -s today
✓ Added "Design landing page" a1b2c3
$ tada add "Write API docs" -t docs -d 2026-03-15
✓ Added "Write API docs" d4e5f6
$ tada add "Set up CI pipeline" -t infra
✓ Added "Set up CI pipeline" g7h8i92.组织项目
$ tada project add "Website Redesign"
✓ Created project "Website Redesign" j0k1l2
$ tada move a1b2 -p j0k1
✓ Moved "Design landing page" to project
$ tada move d4e5 -p j0k1
✓ Moved "Write API docs" to project3.添加子任务
$ tada add "Hero section" -P a1b2
✓ Added "Hero section" m3n4o5
$ tada add "Footer layout" -P a1b2
✓ Added "Footer layout" p6q7r84.完成任务
$ tada today
Today (1)
○ !!! Design landing page #design j0k1l2
$ tada done m3n4
✓ Completed "Hero section"
$ tada done p6q7
✓ Completed "Footer layout"
$ tada done a1b2
✓ Completed "Design landing page"5.撤销错误
$ tada undo
✓ Undone
$ tada ls
# "Design landing page" is back to open6.标签、截止日期和搜索
$ tada tag g7h8 urgent
✓ Tagged "Set up CI pipeline" with urgent
$ tada edit g7h8 -d 2026-03-10
✓ Updated "Set up CI pipeline"
$ tada search "CI"
○ Set up CI pipeline #infra #urgent 2026-03-10 g7h8i97.全球门店
$ tada add "Buy groceries" -g
✓ Added "Buy groceries" s9t0u1
$ tada ls -g
Inbox (1)
○ Buy groceries s9t0u1
$ tada stores
Stores
global ~/.tada
local ~/projects/myapp/.tada (active)数据模型
全部
每个待办事项都有:标题、注释、状态(打开/完成/取消)、优先级(无/低/中/高)、标签、计划日期、截止日期、重复和可选父项(用于子任务)。
ID是8个字符的字母数字字符串。CLI命令接受明确的前缀(例如。, tada done k3x).
项目和区域
- 项目 小组相关的待办事项。删除项目会将其待办事项移至收件箱。
- 区域 与团队相关的项目(例如,工作、个人)。删除区域会取消其项目的链接。
存储
tada使用a .tada/ 每个项目的目录(如 .git/):
.tada/
store.json # All todos, projects, areas
store.undo.json # Previous state (for undo, auto-managed)本地vs全球
- 本地 (默认):
.tada/在当前目录或最近的父目录中。创建于tada init. - 全球:
~/.tada/在您的主目录中。与一起使用tada -g或g将钥匙插入TUI。
注册表
所有已知的本地商店都在 ~/.tada/registry.json。这让 tada stores 列出系统中的每个tada目录。商店在打开或创建时会自动注册。
发展
git clone https://github.com/taichatha/tada.git
cd tada
npm install
npm run build
npm link # Makes `tada` available globally
npm test # Run tests
npm run lint # Type-check
npm run dev -- ls # Run CLI without building建筑
src/
core/ # Pure business logic (no I/O awareness)
cli/ # Commander.js CLI layer
tui/ # Ink/React terminal UI
mcp/ # MCP server (stdio transport)
test/ # Vitest tests这 核心 层是基础。所有功能都需要 TadaStore 对象,在内存中对其进行修改,并返回结果。CLI、TUI和MCP层处理加载/保存和用户交互。
