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.2.1.tar.gz (533.6 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.2.1-py3-none-any.whl (255.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: simple_backlog-1.2.1.tar.gz
  • Upload date:
  • Size: 533.6 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.2.1.tar.gz
Algorithm Hash digest
SHA256 f323cb2749560ba041fc7e0e78b086d6412153547467a05438ae594c5998edfa
MD5 26b5c01c0cee560fa674e07e82bf0af1
BLAKE2b-256 f967f2dedcbb228185bf3388cf104dc7fa3ad6f3f14dbb6160dbee46fe55900e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: simple_backlog-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 255.2 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.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1e448948bf61f186fbedce871c3b5edb1a5f189ea428446f7a7ee3dd2877dc92
MD5 07467c323a09de8283d28734da755350
BLAKE2b-256 1c167ee9aba9e388b5947abb51afbf27e86547735d49c52039a6c98347e5f308

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