{"id":51110355,"url":"https://github.com/sznicolas/taskmajor","last_synced_at":"2026-06-24T17:01:23.646Z","repository":{"id":356974739,"uuid":"1196849613","full_name":"sznicolas/taskmajor","owner":"sznicolas","description":null,"archived":false,"fork":false,"pushed_at":"2026-05-25T09:23:49.000Z","size":1644,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-25T11:12:00.007Z","etag":null,"topics":["hermes-agent","mcp-server","task-management","taskwarrior","taskwarrior3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sznicolas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-03-31T05:18:49.000Z","updated_at":"2026-05-24T13:13:52.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/sznicolas/taskmajor","commit_stats":null,"previous_names":["sznicolas/taskmajor"],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/sznicolas/taskmajor","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sznicolas%2Ftaskmajor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sznicolas%2Ftaskmajor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sznicolas%2Ftaskmajor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sznicolas%2Ftaskmajor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sznicolas","download_url":"https://codeload.github.com/sznicolas/taskmajor/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sznicolas%2Ftaskmajor/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34741320,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-24T02:00:07.484Z","response_time":106,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hermes-agent","mcp-server","task-management","taskwarrior","taskwarrior3"],"created_at":"2026-06-24T17:01:22.137Z","updated_at":"2026-06-24T17:01:23.595Z","avatar_url":"https://github.com/sznicolas.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TaskMajor\n\n[![PyPI](https://img.shields.io/pypi/v/taskmajor)](https://pypi.org/project/taskmajor/)\n[![Python 3.10+](https://img.shields.io/badge/python-3.10%2B-blue)](https://www.python.org/)\n[![MCP Compatible](https://img.shields.io/badge/MCP-compatible-blueviolet)](#quick-start)\n[![Local‑First](https://img.shields.io/badge/local--first-%E2%9C%93-brightgreen)](#why-taskmajor)\n[![License: MIT](https://img.shields.io/badge/license-MIT-green)](LICENSE)\n[![codecov](https://codecov.io/gh/sznicolas/taskmajor/branch/main/graph/badge.svg)](https://codecov.io/gh/sznicolas/taskmajor)\n\n\u003e **Your tasks. Your rules. Your agents.**\n\nA **local-first MCP server** that gives AI agents native access to a full TaskWarrior-compatible engine.  \nNo cloud. No binary to install. No lock-in. Just a `pip install` and your agents are in control.\n\nAsk your agent:\n```text\n\"Add a task to review the API spec\"\n\"What's on my plate for today?\"\n\"Run my weekly review\"\n\"Show me the roadmap for Project X\"\n```\n\n---\n\n## Why TaskMajor?\n\nMost task managers are cloud-first and agent-hostile. TaskMajor is neither.\n\n- 🔒 **100% local \u0026 private** — all data stays on your machine, stored as plain text via the embedded TaskChampion engine\n- ⚙️ **Full TaskWarrior power** — projects, priorities, due dates, tags, UDAs, dependencies, contexts — all accessible by your agent\n- 🎭 **Profile System** — the feature no other task MCP has: define exactly what your agent can see and do, adapted to *your* methodology\n- ⚡ **Zero friction** — one command installs and starts a fully functional MCP server\n\n---\n\n## 🚀 Quick Start\n\n```bash\npip install taskmajor   # or: uv tool install taskmajor\ntaskmajor               # starts at http://localhost:8888\n```\n\nPoint your MCP client (Claude Desktop, Hermes, Continue, or any MCP-compatible agent) at `http://localhost:8888`.\n\n\u003e **That's it.** No TaskWarrior binary to install — the engine is embedded.\n\n\u003e **🤖 Hermes user in a hurry?** → [5-minute Hermes setup](docs/quickstart_hermes.md)\n\n**Want a specific workflow?**\n\n```bash\ntaskmajor --profile standard      # task CRUD + agenda (default)\ntaskmajor --profile productivity  # GTD: reviews, energy levels, contexts\ntaskmajor --profile project-mgmt  # sprints, effort tracking, blockers queue\n```\n\n→ [Full installation options](docs/getting-started/index.md) — uv, Docker, from source\n\n---\n\n## 📸 Demo\n![](docs/images/screenshot_01.png)  \n![](docs/images/screenshot_02.png)  \n\n---\n\n## 🎭 Profile System — TaskMajor's Killer Feature\n\nProfiles are the heart of TaskMajor. Each profile defines a **complete behavioral contract** for your agent: what tools it can call, what data structures exist, what views it can read, and how it should reason about your tasks.\n\n| Profile | Extends | What it unlocks |\n|---|---|---|\n| `minimal` | — | Bare CRUD: add, query, complete, delete |\n| `standard` | minimal | Agenda views, date tools, metadata, organization prompts |\n| `productivity` | standard | GTD: energy levels (`low/medium/high`), daily \u0026 weekly reviews, capture workflow, context tags (`+@`) |\n| `project-mgmt` | standard | Sprint planning, effort analytics, blockers queue |\n| *your-profile* | any built-in | Extend any profile without touching the package |\n\n**Custom profile in 3 lines:**\n\n```yaml\n# ~/.config/myproject/profiles/myprofile/manifest.yaml\nextends: [productivity]\n# add your own UDAs, contexts, resources, and agent instructions\n```\n\n```bash\ntaskmajor -c ~/.config/myproject\n```\n\n→ [Profile System documentation](docs/user-guides/profiles/profile-system.md)\n\n---\n\n## ✨ Key Features\n\n- 🔒 **Private by design** — plain-text storage, TaskChampion engine, runs entirely on your machine\n- 🧠 **Profile-shaped agents** — agents see only what you expose; switch workflows with one flag\n- ⚡ **Energy-aware scheduling** — `low / medium / high` energy UDA lets your agent suggest tasks that match your current state\n- 🏷️ **Safe context tags** — `+@work`, `+@home`, `+@focus` filter tasks without breaking TaskWarrior's native context system\n- 📅 **Flexible date expressions** — natural language dates resolved before any write operation\n- 📋 **Daily \u0026 weekly reviews** — structured review resources and prompts built into the `productivity` profile\n- 🔄 **Optional sync** — periodic or manual sync to a TaskChampion server (local or remote)\n- 🔌 **Any MCP client** — works with Claude Desktop, Hermes, Continue, or any MCP-compatible agent\n- 🐳 **Docker-ready** — official Dockerfile for containerized deployments\n- 📊 **Built-in analytics** — stats by project, priority, and status; effort and sprint tracking in `project-mgmt`\n\n---\n\n## 📚 Documentation\n\n| For | Start here |\n|---|---|\n| First install | **[Getting Started](docs/getting-started/index.md)** |\n| 5-minute walkthrough | **[Quick Start guide](docs/getting-started/getting-started.md)** |\n| Hermes agent users | **[Hermes Quick Start](docs/quickstart_hermes.md)** |\n| Custom workflows | **[Profile System](docs/user-guides/profiles/profile-system.md)** |\n| All profiles reference | **[Profile Reference](docs/user-guides/profiles/reference/)** |\n| Tools \u0026 resources API | **[API Reference](docs/api-reference/index.md)** |\n| Config \u0026 CLI flags | **[Configuration](docs/getting-started/configuration.md)** |\n| Docker / from source | **[Deployment](docs/deployment/build-from-source.md)** |\n| Contributing | **[Contributing](docs/developer/contributing.md)** |\n\n---\n\n## 🌐 Community\n\n- **Issues \u0026 Features:** [GitHub Issues](https://github.com/sznicolas/taskmajor/issues)\n- **Discussions:** [GitHub Discussions](https://github.com/sznicolas/taskmajor/discussions)\n\n---\n\n## 📄 License\n\nMIT — see [LICENSE](LICENSE)\n\n---\n\nBuilt with [FastMCP](https://github.com/jlowin/fastmcp) · [pytaskwarrior](https://github.com/sznicolas/pytaskwarrior) · [TaskChampion](https://pypi.org/project/taskchampion3-py-dev/) · [Pydantic](https://docs.pydantic.dev/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsznicolas%2Ftaskmajor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsznicolas%2Ftaskmajor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsznicolas%2Ftaskmajor/lists"}