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/config.yml at repo root (in .simple-backlog/ directory). 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-1.3.0.tar.gz (596.0 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-1.3.0-py3-none-any.whl (285.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: simple_backlog-1.3.0.tar.gz
  • Upload date:
  • Size: 596.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for simple_backlog-1.3.0.tar.gz
Algorithm Hash digest
SHA256 d9e9ed212e0c044c4a7a9593ea0e58db15acbe4ecc31d70206b06814da0ef6d2
MD5 ea4f7b829c6871bec1f07448465b5d17
BLAKE2b-256 38ce0b817c208b6a26a126d6e771e36d4537637c1e037bdf4c7c8ed9eceb5afc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: simple_backlog-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 285.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for simple_backlog-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9f387933ada133b2b955989e9997d9eaccc409641f9bb409e11bf75865baac66
MD5 5c76b7c598da7712e3d17477771eab13
BLAKE2b-256 f816c393ded5a27dce6d300c0e37842652eea0f35b3b1e54dacb531ff0b84f8d

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