TaskMateAI
AI/MCP TODO任务管理应用
TaskMateAI是一个简单的任务管理应用程序,可以使AI自主管理和执行任务,并可以通过MCP(模型上下文协议)进行操作。
Related MCP server: Taskmaster
特征
通过 MCP 创建和管理任务
子任务支持
基于优先级的任务处理
任务进度管理及汇报功能
添加注释功能
通过 JSON 文件进行数据持久化
通过代理ID管理多个AI的任务
按项目组织任务
安装
先决条件
Python 3.12 或更高版本
uv(Python 包管理器)
WSL(适用于 Linux 的 Windows 子系统)*适用于 Windows 环境
安装说明
克隆或下载存储库:
git clone https://github.com/YourUsername/TaskMateAI.git
cd TaskMateAI安装所需的软件包:
uv install -r requirements.txt如何使用
应用程序启动
在 WSL 环境中,您可以像这样运行您的应用程序:
cd /path/to/TaskMateAI/src/TaskMateAI
uv run TaskMateAIMCP 配置
与 MCP 一起使用的配置示例:
{
"mcpServers": {
"TodoApplication": {
"command": "uv",
"args": [
"--directory",
"/絶対パス/TaskMateAI",
"run",
"TaskMateAI"
],
"env": {},
"alwaysAllow": [
"get_tasks", "get_next_task", "create_task", "update_progress",
"complete_task", "add_subtask", "update_subtask", "add_note",
"list_agents", "list_projects"
],
"defaultArguments": {
"agent_id": "agent_123",
"project_name": ""
}
}
}
}{
"mcpServers": {
"TodoApplication": {
"command": "wsl.exe",
"args": [
"-e",
"bash",
"-c",
"cd /絶対パス/TaskMateAI && /home/ユーザー/.local/bin/uv run TaskMateAI"
],
"env": {},
"alwaysAllow": [
"get_tasks", "get_next_task", "create_task", "update_progress",
"complete_task", "add_subtask", "update_subtask", "add_note",
"list_agents", "list_projects"
],
"defaultArguments": {
"agent_id": "agent_123",
"project_name": ""
}
}
}
}可用的 MCP 工具
TaskMateAI 提供以下 MCP 工具:
get_tasks - 获取任务列表(可以按状态和优先级进行过滤)
get_next_task - 获取下一个高优先级任务(自动更新为进行中状态)
create_task - 创建新任务(带有子任务)
update_progress - 更新任务的进度
complete_task - 将任务标记为完成
**add_subtask——**向现有任务添加子任务
update_subtask - 更新子任务的状态
add_note - 为任务添加注释
list_agents - 获取可用代理 ID 列表
list_projects - 获取与特定代理相关的项目列表
数据格式
使用以下结构来管理任务:
{
"id": 1,
"title": "タスクのタイトル",
"description": "タスクの詳細な説明",
"priority": 3,
"status": "todo", // "todo", "in_progress", "done" のいずれか
"progress": 0, // 0-100 の進捗率
"subtasks": [
{
"id": 1,
"description": "サブタスクの説明",
"status": "todo" // "todo", "in_progress", "done" のいずれか
}
],
"notes": [
{
"id": 1,
"content": "ノートの内容",
"timestamp": "2025-02-28T09:22:53.532808"
}
]
}数据存储
任务数据以分层结构存储:
output/
├── tasks.json # デフォルトのタスクファイル
├── agent1/
│ ├── tasks.json # agent1のタスクファイル
│ ├── project1/
│ │ └── tasks.json # agent1のproject1のタスクファイル
│ └── project2/
│ └── tasks.json # agent1のproject2のタスクファイル
└── agent2/
├── tasks.json # agent2のタスクファイル
└── projectA/
└── tasks.json # agent2のprojectAのタスクファイル应用程序运行时,每个任务文件都会自动生成和更新。
管理代理和项目
要管理特定代理或项目的任务,您可以:
在您的 MCP 设置中指定默认代理:通过在
defaultArguments中指定agent_id,它将在所有请求中自动使用。在 AI 对话中指定项目:您可以在对话中指定项目,例如“向项目 X 添加新任务”。
AI直接指定:您可以在请求参数中包含
agent_id和project_name。
项目结构
TaskMateAI/
├── src/
│ └── TaskMateAI/
│ ├── __init__.py # パッケージ初期化
│ └── __main__.py # メインアプリケーションコード
├── output/ # データ保存ディレクトリ
│ └── tasks.json # タスクデータ (自動生成)
├── tests/ # テストコード
│ ├── unit/ # ユニットテスト
│ └── integration/ # 統合テスト
├── requirements.txt # 依存パッケージリスト
└── README.md # このファイル测试
TaskMateAI 提供了全面的测试套件以确保功能的可靠性。
测试配置
测试按以下目录结构组织:
tests/
├── __init__.py # テストパッケージの初期化
├── conftest.py # テスト用フィクスチャの定義
├── unit/ # ユニットテスト
│ ├── __init__.py
│ ├── test_task_utils.py # タスク関連ユーティリティのテスト
│ ├── test_mcp_tools.py # MCPツール機能のテスト
│ └── test_agent_projects.py # エージェントとプロジェクト管理のテスト
└── integration/ # 統合テスト
└── __init__.py测试类型
单元测试:确保应用程序的各个组件正常运行
test_task_utils.py:测试读写任务、生成ID等基本功能。test_mcp_tools.py:测试 MCP 工具的功能(创建、更新、完成任务等)test_agent_projects.py:测试代理ID和项目管理功能
集成测试:确保多个组件正确协同工作(计划未来扩展)
如何运行测试
您可以使用以下命令运行测试:
运行所有测试:
cd /path/to/TaskMateAI
uv run python -m pytest -xvs运行特定的测试文件:
uv run python -m pytest -xvs tests/unit/test_task_utils.py运行特定的测试类:
uv run python -m pytest -xvs tests/unit/test_mcp_tools.py::TestMCPTools运行特定的测试功能:
uv run python -m pytest -xvs tests/unit/test_task_utils.py::TestTaskUtils::test_read_tasks_with_data测试参数解释:
-x:发生错误时停止测试-v:显示详细输出-s:测试期间显示标准输出
待修复项目
实现任务模板功能
构建任务之间的依赖管理系统
增加日程安排功能
引入基于标签的任务分类系统
实施里程碑管理功能
执照
麻省理工学院
作者
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.