Skip to main content
Glama

TaskMateAI

AI/MCP TODO 태스크 관리 애플리케이션

TaskMateAI는 AI가 자율적으로 태스크를 관리 및 실행하기 위한 간단한 태스크 관리 어플리케이션으로 MCP(Model Context Protocol)를 통해 조작할 수 있습니다.

English README available here

Related MCP server: Taskmaster

특징

  • MCP를 통한 작업 생성 및 관리

  • 하위 작업 지원

  • 우선순위에 기반한 작업 처리

  • 작업 진행 관리 및 보고 기능

  • 노트 추가 기능

  • JSON 파일로 데이터 지속성

  • 에이전트 ID로 다중 AI 작업 관리

  • 프로젝트별로 작업 정리

설치

전제 조건

  • 파이썬 3.12 이상

  • uv (Python 패키지 관리자)

  • WSL (Windows Subsystem for Linux) ※Windows 환경의 경우

설치 절차

  1. 리포지토리 복제 또는 다운로드:

git clone https://github.com/YourUsername/TaskMateAI.git cd TaskMateAI
  1. 필요한 패키지 설치:

uv install -r requirements.txt

사용방법

애플리케이션 시작

WSL 환경에서 다음과 같이 응용 프로그램을 실행할 수 있습니다.

cd /path/to/TaskMateAI/src/TaskMateAI uv run TaskMateAI

MCP 구성

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 도구를 제공합니다.

  1. get_tasks - 태스크 리스트의 취득(스테이터스나 우선도로 필터링 가능)

  2. get_next_task - 우선순위가 높은 다음 태스크 가져오기(자동으로 진행 중인 상태로 업데이트)

  3. create_task - 새 태스크 작성(하위 태스크 포함)

  4. update_progress - 태스크 진행 업데이트

  5. complete_task - 작업을 완료로 표시

  6. add_subtask - 기존 작업에 하위 작업 추가

  7. update_subtask - 하위 작업의 상태 업데이트

  8. add_note - 작업에 노트 추가

  9. list_agents - 사용 가능한 에이전트 ID 목록을 가져옵니다.

  10. 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のタスクファイル

각 태스크 파일은 애플리케이션이 실행될 때 자동으로 생성되고 갱신됩니다.

에이전트 및 프로젝트 관리

특정 에이전트 및 프로젝트의 작업을 관리하는 방법은 다음과 같습니다.

  1. MCP 설정에서 기본 에이전트 지정 : defaultArguments 에서 agent_id 를 지정하면 모든 요청에서 자동으로 사용됩니다.

  2. AI 대화에서 프로젝트 지정 : 대화에서 "프로젝트 X에 새 작업 추가" 등을 지정할 수 있습니다.

  3. AI에서 직접 지정 : 요청 매개변수에 agent_idproject_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

테스트 유형

  1. 단위 테스트 : 애플리케이션의 개별 구성 요소가 올바르게 작동하는지 확인합니다.

    • test_task_utils.py : 작업 읽기, 쓰기 및 ID 생성과 같은 기본 기능 테스트

    • test_mcp_tools.py : MCP 도구의 기능 (작업 생성, 업데이트, 완료 등) 테스트

    • test_agent_projects.py : 에이전트 ID 및 프로젝트 관리 기능 테스트

  2. 통합 테스트 : 여러 구성 요소가 함께 작동하여 올바르게 작동하는지 확인합니다(향후 확장 예정)

테스트 실행 방법

다음 명령을 사용하여 테스트를 실행할 수 있습니다.

  1. 모든 테스트 실행:

cd /path/to/TaskMateAI uv run python -m pytest -xvs
  1. 특정 테스트 파일 실행:

uv run python -m pytest -xvs tests/unit/test_task_utils.py
  1. 특정 테스트 클래스 실행:

uv run python -m pytest -xvs tests/unit/test_mcp_tools.py::TestMCPTools
  1. 특정 테스트 함수 실행:

uv run python -m pytest -xvs tests/unit/test_task_utils.py::TestTaskUtils::test_read_tasks_with_data

테스트 인수 설명:

  • -x : 오류가 발생하면 테스트를 중지합니다.

  • -v : 자세한 출력을 표시합니다.

  • -s : 테스트중인 표준 출력을 표시합니다.

수정 예정 항목

  • 작업 템플릿 기능 구현

  • 작업 간 종속성 관리 시스템 구축

  • 스케줄 기능 추가

  • 태그별 태스크 분류 시스템 도입

  • 마일스톤 관리 기능 구현

라이센스

MIT

저자

NewAITees

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/NewAITees/TaskMateAI'

If you have feedback or need assistance with the MCP directory API, please join our Discord server