Allows cloning repositories through Git as part of the installation process for TaskMateAI.
Enables cloning the TaskMateAI repository from GitHub during installation.
Supports comprehensive testing of TaskMateAI functionality through pytest, including unit tests for task management and MCP tools.
Built on Python 3.12+, allowing for Python-based task management and automation.
Provides comprehensive task management functionality including creating, updating, and completing tasks with support for subtasks, priorities, and progress tracking.
TaskMateAI
AI/MCP TODOタスク管理アプリケーション
TaskMateAIは、AIが自律的にタスクを管理・実行するためのシンプルなタスク管理アプリケーションで、MCP (Model Context Protocol)を通じて操作できます。
Related MCP server: Taskmaster
特徴
MCPを通じたタスクの作成・管理
サブタスクのサポート
優先順位に基づくタスク処理
タスクの進捗管理と報告機能
ノート追加機能
JSONファイルによるデータ永続化
エージェントIDによる複数AIのタスク管理
プロジェクト単位でのタスク整理
インストール
前提条件
Python 3.12以上
uv (Python パッケージマネージャー)
WSL (Windows Subsystem for Linux) ※Windows環境の場合
インストール手順
リポジトリをクローンまたはダウンロード:
必要なパッケージをインストール:
使用方法
アプリケーションの起動
WSL環境では以下のようにアプリケーションを実行できます:
MCP構成
MCPで利用するための設定例:
利用可能な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 - 特定のエージェントに関連するプロジェクトの一覧を取得
データ形式
タスクは以下のような構造で管理されます:
データ保存
タスクデータは階層構造で保存されます:
各タスクファイルはアプリケーション実行時に自動的に生成・更新されます。
エージェントとプロジェクトの管理
特定のエージェントやプロジェクトのタスクを管理するには、以下の方法があります:
MCP設定でデフォルトエージェントを指定:
defaultArgumentsでagent_idを指定することで、すべてのリクエストで自動的に使用されます。AI会話でプロジェクトを指定:会話の中で「プロジェクトXに新しいタスクを追加して」などと指定できます。
AIからの直接指定:リクエストパラメータに
agent_idとproject_nameを含めることができます。
プロジェクト構造
テスト
TaskMateAIでは、機能の信頼性を確保するため、包括的なテストスイートを提供しています。
テストの構成
テストは以下のディレクトリ構造で管理されています:
テストの種類
ユニットテスト: アプリケーションの個々のコンポーネントが正しく機能することを確認します
test_task_utils.py: タスクの読み書き、ID生成などの基本機能をテストtest_mcp_tools.py: MCPツールの機能(タスクの作成、更新、完了など)をテストtest_agent_projects.py: エージェントIDとプロジェクト管理機能をテスト
統合テスト: 複数のコンポーネントが連携して正しく動作することを確認します(将来拡張予定)
テスト実行方法
以下のコマンドを使用してテストを実行できます:
すべてのテストを実行:
特定のテストファイルを実行:
特定のテストクラスを実行:
特定のテスト関数を実行:
テスト引数の説明:
-x: エラーが発生した時点でテストを停止します-v: 詳細な出力を表示します-s: テスト中の標準出力を表示します
修正予定項目
タスクテンプレート機能の実装
タスク間の依存関係管理システムの構築
スケジュール機能の追加
タグによるタスク分類システムの導入
マイルストーン管理機能の実装
ライセンス
MIT