Skip to main content

Local-first task manager: markdown files in git, MCP + CLI, per-type schemas, deterministic + LLM validator

Project description

simple-backlog

Local-first task manager: markdown files in git, MCP + CLI, per-type schemas, deterministic + LLM validator.

Why

Your tasks live as plain markdown files in your repo — no server, no account, no sync. A flexible schema engine lets every project define its own task types with custom statuses, fields, and guarded transitions. Claude (and any MCP client) gets full read/write access via a typed tool API.

Quickstart

uvx simple-backlog init         # bootstrap config + docs/backlog/
backlog task create task --title "First task"
backlog task list
backlog task transition TASK-... in_progress

Install

# Run once without installing:
uvx simple-backlog init

# Install permanently:
uv tool install simple-backlog
# or:
pipx install simple-backlog

MCP Setup (Claude Desktop / Code)

Add to your MCP client config:

{
  "mcpServers": {
    "backlog": {
      "command": "uvx",
      "args": ["simple-backlog", "serve-mcp"]
    }
  }
}

Configuration

.simple-backlog.yml at repo root. Example:

backlog_dir: docs/backlog
types:
  task:
    statuses: [backlog, in_progress, done, cancelled]
    initial_status: backlog
    fields:
      done_summary:
        type: string
        required: false
    transitions:
      - from: in_progress
        to: done
        gates:
          - kind: require_field
            field: done_summary

Git Hooks

backlog install-hooks   # installs pre-commit validation
backlog uninstall-hooks

Commands

backlog init                        # bootstrap
backlog task create <type>          # create task
backlog task list                   # list tasks
backlog task show <id>              # show task
backlog task transition <id> <to>   # change status
backlog task link <from> <to> --kind blocks
backlog validate --all              # validate repo
backlog fix --all                   # auto-repair
backlog search "query"
backlog serve-mcp                   # start MCP server

Shortcuts: backlog new, backlog ls, backlog show, backlog done, backlog wip

Design

See docs/plans/2026-05-28-simple-backlog-design.md for full design.

Contributing

Python 3.11+, uv, TDD. Run pytest and ruff check src/.

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

simple_backlog-0.2.0.tar.gz (309.3 kB view details)

Uploaded Source

Built Distribution

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

simple_backlog-0.2.0-py3-none-any.whl (72.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: simple_backlog-0.2.0.tar.gz
  • Upload date:
  • Size: 309.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for simple_backlog-0.2.0.tar.gz
Algorithm Hash digest
SHA256 736246817015c6138a74ad92d383f50c548086c780fc87da8d751c482290fc16
MD5 1e2e2b8afed8501355428d8537b010c3
BLAKE2b-256 281ebdb59636d973403f30aeaa2bde8d01342b1f1e8c70fe92230008df381625

See more details on using hashes here.

File details

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

File metadata

  • Download URL: simple_backlog-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 72.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for simple_backlog-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e65b24f5785878357d7d5211632f9992df39deb3935924a65e1578268c7a533d
MD5 c324e5e01f1a0aa645ad66dd5bf64073
BLAKE2b-256 0275881f7008c6450db760e116a5bda0d410aa9d330bf93a78ab35b739ec8127

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