Skip to main content

Python port of jpicklyk/task-orchestrator — MCP server for AI agent work management

Project description

task-orchestrator-py

Python port of jpicklyk/task-orchestrator — an MCP server for AI agent work management.

Persistent work item graph with workflow enforcement, dependency tracking, and session-resumable context. Runs natively with uvx — no Docker required.

Quick Start

# Run directly (no install needed)
uvx --from git+https://github.com/filhocf/task-orchestrator-py.git task-orchestrator-py

# Or install and run
pip install git+https://github.com/filhocf/task-orchestrator-py.git
task-orchestrator-py

MCP Configuration

{
  "mcpServers": {
    "task-orchestrator": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/filhocf/task-orchestrator-py.git", "task-orchestrator-py"]
    }
  }
}

Database defaults to ~/.task-orchestrator/tasks.db. Override with:

"env": {"TASK_ORCHESTRATOR_DB": "/path/to/tasks.db"}

Tools (10)

Tool Description
manage_items Create, update, delete work items
query_items Get by ID, list with filters, overview
advance_item Trigger-based workflow transitions
get_next_item Priority-ranked next actionable item
get_context Session resume — global dashboard or item detail
get_blocked_items All items blocked by deps or explicit block
manage_notes Persistent per-phase documentation on items
manage_dependencies Add/remove/query dependency edges
create_work_tree Atomic creation of root + children + deps

Workflow

queue → work → review → done
  ↓       ↓       ↓
  └── blocked ──→ resume → previous status
  
Any → cancelled (via cancel trigger)
done/cancelled → queue (via reopen trigger)

Triggers: start, complete, block, resume, cancel, reopen

What's Implemented (v0.1)

  • ✅ WorkItems with hierarchy (4 levels deep)
  • ✅ Status workflow with trigger-based transitions
  • ✅ Dependency graph with cycle detection
  • ✅ Dependency enforcement on advance
  • ✅ Notes per item/phase
  • get_next_item() — priority-ranked next action
  • get_context() — session resume
  • get_blocked_items() — blocked item detection
  • create_work_tree() — atomic tree creation
  • ✅ SQLite persistence (WAL mode)

Not Yet Implemented

Features from the original Kotlin project to port:

  • Note schemas (YAML config, phase gate enforcement)
  • Lifecycle modes (linear, milestone, exploratory)
  • Sub-agent orchestration
  • HTTP transport mode
  • complete_tree (batch complete descendants)
  • Plugin system (skills, hooks)
  • Output styles

Track the original project for new features: https://github.com/jpicklyk/task-orchestrator/releases

License

MIT — see LICENSE. Based on jpicklyk/task-orchestrator.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

task_orchestrator_py-0.2.0.tar.gz (56.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

task_orchestrator_py-0.2.0-py3-none-any.whl (16.4 kB view details)

Uploaded Python 3

File details

Details for the file task_orchestrator_py-0.2.0.tar.gz.

File metadata

  • Download URL: task_orchestrator_py-0.2.0.tar.gz
  • Upload date:
  • Size: 56.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for task_orchestrator_py-0.2.0.tar.gz
Algorithm Hash digest
SHA256 effbb203dd44c920312b1b2bddfb6fdb05918f3d0dc1ddc671836546d24ed0aa
MD5 2a9645f08d145eacacd91d77693e631b
BLAKE2b-256 f0c148b71e5a0ca1d54bff771bd5f03e4615e2bdecec94da1477097cb37c35ab

See more details on using hashes here.

File details

Details for the file task_orchestrator_py-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: task_orchestrator_py-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 16.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for task_orchestrator_py-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4a90627ce15b24091df0ba94bfb69c90456cd1c20bab19b00348629fa40ba215
MD5 90874bb9f97c12d807387f9343de68cc
BLAKE2b-256 47481066885c67e61e041797b50a37c2d5d9a4051731797b3cef0d09290e0402

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page