协同待办事项应用

一款基于Rust和Dioxus构建的协同待办事项应用,支持多设备实时同步,通过MCP协议与AI工具集成。

  • by cetra3
  • Rust
  • 本地部署
  • 15 星标
  • 更新于
在 GitHub 查看 cetra3/todo-mcp

使用说明

所有MCP

一个用Rust和.NET构建的协作待办事项列表应用程序 Dioxus 使用以下命令跨设备同步状态 汽车 CRDT和UDP组播。它还揭示了一个 主控程序 服务器界面,使您的待办事项列表可供Claude Code等人工智能工具访问。

Dioxus 图形用户界面

图

特性

  • 多列表管理 --创建、重命名和删除多个待办事项列表,每个列表都有唯一的颜色
  • 实时同步 --同一局域网上的实例通过UDP多播相互发现,并使用Automarge CRDT保持同步,因此并发编辑可以合并而不会发生冲突
  • MCP服务器 --展示待办事项操作(get_todos, add_todo, toggle_todo等),以便AI助手可以读取和管理您的列表
  • 克劳德代码挂钩 --桥克劳德代码 TaskCreate/TaskUpdate 将事件添加到待办事项列表中,让您在同一UI中跟踪AI生成的任务
  • 持久存储 --状态作为自动程序文档保存到磁盘,并在重新启动时还原
  • TUI模式 --一个完整的终端用户界面 骑 用于在不离开终端的情况下管理todo,使用vim风格的键绑定和实时同步
  • 跨平台 --通过Dioxus功能标志为桌面(默认)、网络和移动设备构建

安装

你可以从这个git仓库或使用cargo安装它:

cargo install todo-mcp

建立和运行

需要 锈 和那个 Dioxus命令行界面:

cargo install dioxus-cli

桌面应用程序(默认)

dx serve --platform desktop

Web 应用

dx serve --platform web

TUI(终端用户界面)

运行一个交互式终端界面来管理您的待办事项列表:

todo-mcp tui

使用箭头键导航或 j/k,切换项目 Space,并按 q 退出。TUI与其他实例实时同步,就像桌面和web应用程序一样。

要构建一个没有Dioxus GUI依赖的最小二进制文件:

cargo build --no-default-features --features tui

MCP服务器

作为基于stdio的MCP服务器运行,以与Claude Code或其他MCP客户端一起使用:

todo-mcp mcp

克劳德代码挂钩

处理来自stdin的Claude Code工具事件,并将其同步到您的待办事项列表中:

todo-mcp hook

MCP工具

在MCP服务器模式下运行时,可以使用以下工具:

工具 说明
get_todos 检索所有列表,或按索引检索特定列表
add_list 创建新的待办事项列表
remove_list 按索引删除列表
rename_list 重命名现有列表
add_todo 向列表中添加项目
remove_todo 从列表中删除项目
toggle_todo 切换项目的完成状态
clear_completed 从列表中删除所有已完成的项目
name_session 为钩子集成命名一个Claude Code会话

Claude代码集成

要将todo-mcp用作Claude Code挂钩,请将以下内容添加到您的Claude Code设置中(.claude/settings.json):

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "TaskCreate|TaskUpdate",
        "hooks": [
          {
            "type": "command",
            "command": "/path/to/todo-mcp hook"
          }
        ]
      }
    ]
  }
}

这将任务生命周期事件路由到todo-mcp中,以便Claude Code的任务列表实时显示在您的todo应用程序中。

同步详细信息

实例通过UDP多播同步 239.1.1.1:1111大于1400字节的消息会自动分段并重新组装。如果对等方在过去5秒内发送了消息,则视为已连接。

国家坚持 ~/.local/share/todo_mcp/automerge.save 默认情况下(用覆盖 MPAD_AUTOSAVE_PATH 环境变量)。

配置

变量 默认值 描述
RUST_LOG todo_mcp=DEBUG 跟踪日志筛选器
TODOMCP_AUTOSAVE_PATH ~/.local/share/todo_mcp/automerge.save 自动保存文件位置

日志同时写入stdout和 /tmp/todo-mcp.log.

许可证

看 Cargo.toml 关于作者的详细信息。