Skip to main content

Roadmap CLI

Project Management as Code — Manage your project in git, not in a tool.

Roadmap is a CLI-first project management tool designed for developers who want to keep their project data in git, not locked away in another SaaS tool. If you use git, shell scripts, and plain text files, Roadmap feels like home.

The Problem

Modern project management tools solve a problem developers don't have:

  • You already track work in git. Commit messages, PRs, issues in GitHub/GitLab... it's all there.
  • You duplicate effort. Update status in Jira, then mention it in Slack, then close the GitHub issue. Same information, three places.
  • You can't script your workflow. Want to auto-assign issues based on a commit? Good luck with most tools.
  • Your data lives elsewhere. Offline? Can't access your roadmap. Switching tools? Export is painful.

The Solution

Roadmap stores your project data in plain YAML + Markdown files tracked in git. This simple approach gives you:

Problem Solution
Duplicated data entry Single source of truth: your git repo
Manual status updates Auto-sync on commits (fixes issue-123)
No offline access Clone the repo, work offline, push changes
Vendor lock-in Files stay plain text forever
Non-scriptable workflow Composable with jq, fzf, ripgrep, shell scripts
Missing context Full git history + blame for every change
Team bloat for small teams Start solo, scale to teams without learning new tool

Project management as a durable, automatable, self-owned system — not a product you rent.

Why It Works for Small Teams

For Solo Developers

roadmap today                    # What am I working on?
roadmap issue update 42 done     # Mark issue done
git log --oneline                # See what I shipped

No UI to load. No notifications to ignore. Just you, your terminal, and your git history.

For Small Teams (3-8 people)

roadmap issue list --filter assignee=alice
roadmap milestone list --project web-app
git push && roadmap sync github   # Two-way sync with GitHub

Everyone sees the same data (it's in git). Changes are trackable (git blame). Decisions are documented (commits). No meetings about "where is the roadmap file?"

For Distributed Teams

roadmap issue create "API pagination" --assignee bob --milestone sprint-2
# Bob works offline, commits changes locally
# Roadmap auto-updates via commit message: git commit -m "fixes API pagination"
git pull                         # Everyone syncs to latest
roadmap sync github              # GitHub issues stay in sync

Git is the synchronization layer. No merge conflicts on simple status changes. No "who has the lock?"

Key Features

📋 Issue Management

  • Create, list, update, delete issues
  • Status tracking (todo, in-progress, blocked, review, done)
  • Priority levels (low, medium, high, critical)
  • Team assignment and filtering
  • Advanced search and sorting

📅 Milestone Planning

  • Create sprints/releases as milestones
  • Track progress (how many issues done?)
  • Due dates and scope management
  • Link issues to milestones

🚀 Roadmap Planning

  • High-level quarterly/annual plans
  • Organize milestones by roadmap
  • Strategic tracking

🔗 Git Integration

  • Auto-sync on commit: git commit -m "fixes issue-42" → issue status updates
  • Two-way GitHub sync: Pull requests → issues, status changes → PR labels
  • Commit blame: See who changed what and when

📊 Output Formats

roadmap today                    # Rich (interactive)
roadmap today --format json      # JSON (for scripting)
roadmap today --format csv       # CSV (for spreadsheets)
roadmap today --format plain     # Plain text (for pipes)

Composable with Unix tools:

roadmap issue list --format json | jq '.[] | select(.priority == "critical")'
roadmap today --format csv | fzf --preview 'cat {}'
roadmap issue list --format plain | grep -i "performance"

🔐 Secure by Default

  • Data stored locally (or in git)
  • No cloud account required
  • Git history = audit trail
  • Credentials managed via system keyring
  • Open source (audit the code)

Requirements

  • Python 3.13 or later (3.13 and 3.14 are supported)
  • macOS or Linux
  • Git (for repository tracking and sync)
  • System keyring (for secure credential storage)

Installation

Recommended: uv tool

uv tool install roadmap-cli
roadmap --version

pipx

pipx install roadmap-cli
roadmap --version

pip in a virtual environment

python3.13 -m venv .venv
source .venv/bin/activate
pip install roadmap-cli
roadmap --version

From Source

git clone https://github.com/shanewilkins/roadmap.git
cd roadmap
uv sync --all-extras --locked
uv run roadmap --help

Quick Start (5 minutes)

1. Initialize your project

cd my-project
roadmap init

This creates .roadmap/ directory with configuration.

2. Create an issue

roadmap issue create "Fix login timeout issue"
roadmap issue list

3. Start tracking work

roadmap issue update 1 in-progress
roadmap issue assign 1 alice

4. Auto-sync with git

git commit -m "fixes issue 1: login timeout resolved"
roadmap issue list              # Status auto-updated to 'done'

5. View your priorities

roadmap today                   # Your task list
roadmap today --filter priority=critical

→ Next steps: Read Quick Start Guide for more examples.

Documentation

Guide For Time
Quick Start New users 5 min
Workflows Real-world patterns 10 min
GitHub Sync Setup GitHub integration 10 min
Milestone Syncing Milestone dependencies & sync 15 min
FAQ Questions & comparisons 15 min
Architecture Technical details 20 min
Installation Setup & troubleshooting varies
Security Privacy & safety 10 min
Future Features Roadmap (v1.1+) 5 min

Community & Governance

Compare to Other Tools

Tool Model Data Good For Bad For
Jira SaaS/On-prem Proprietary DB Large enterprises Small teams, CLI, offline work
Linear SaaS Cloud Growing startups No offline, no git-native
Trello SaaS Cloud Visual boards Serious PM, git-less
GitHub Issues SaaS GitHub Open source Cross-repo, multiple teams
Notion SaaS Cloud Note-taking Structured workflows
Roadmap CLI Git + YAML Small teams, developers Enterprise RBAC, Web UI

See FAQ.md for deeper comparisons.

Scope & Limitations

What Roadmap Does Well

Single Repository:

  • Track issues, milestones, and roadmaps within one repo
  • Organize work by priority, assignment, and status
  • Integrate with git commits via auto-sync
  • Export to multiple formats for reporting
  • Work offline, sync when ready

Small Teams (1-8 people):

  • Everyone has read/write access to the repo
  • Git-based synchronization (no merge conflicts on simple status changes)
  • All changes are tracked and auditable via git history
  • CLI-first workflow matches developer preferences

What Roadmap Doesn't Do

Multiple Repositories:

  • This tool is repo-scoped by design (each repo gets its own .roadmap directory)
  • If you manage multiple related projects across repos, use:
    • GitHub Projects (free, integrated with repos)
    • Jira or Linear (enterprise, for complex coordination)
    • Your own meta-layer (if you need something custom)
  • Each repo runs independently; there's no built-in cross-repo aggregation

Enterprise Features:

  • Complex RBAC (role-based access control)
  • Multiple teams with separate permissions
  • Audit logging and compliance reporting
  • Web UI and mobile access
  • SaaS infrastructure

For these, use Jira, Linear, or GitHub Enterprise.

Why This Scope?

Roadmap intentionally stays small because:

  1. It solves the actual problem for solo devs and small teams (duplicate data entry)
  2. Larger teams benefit from better tools (Jira, Linear) that solve different problems
  3. Git as the sync layer works at scale up to ~5 projects per person
  4. Simplicity is a feature — less code = fewer bugs = easier to fork/modify

Future-Proofing

The schema includes optional repo_url (on projects) and project_id (on milestones) fields for future tooling that might aggregate across repos. These fields are unused today but allow extensions without breaking existing data.

Real-World Example

Solo Developer

# Monday: Plan sprint
roadmap milestone create sprint-12 --due 2025-02-14
roadmap issue create "Refactor auth module" --milestone sprint-12 --priority high

# Wednesday: Work offline
git clone . ~/offline
cd ~/offline
# ... code ...
git commit -m "refactors auth module, fixes security issue"
roadmap issue status 42 done   # Mark done

# Friday: Sync and review
git push
roadmap today --done            # See what shipped
roadmap sync github             # Update GitHub labels

Small Team (PM + 3 devs)

# Monday standup (async in Slack)
roadmap today --format json | jq '.[] | .title' | sort
# → Shows everyone's tasks

# Devs work independently
git commit -m "implements new API endpoint [closes roadmap:issue-58]"
roadmap sync github             # PR gets linked to issue

# Friday metrics
roadmap analysis velocity sprint-12    # How many issues completed?

See Workflows.md for more patterns.

Integrations

Works Well With

CLI Tools:

  • jq — Query issues as JSON
  • fzf — Fuzzy find issues
  • ripgrep — Search issue descriptions
  • Standard Unix: grep, awk, sed, sort, uniq

Development:

  • Git hooks (auto-sync on commit)
  • GitHub/GitLab (two-way sync)
  • CI/CD (create issues on test failures)
  • Cron jobs (daily snapshots, reminders)

Data:

  • Spreadsheets (export to CSV)
  • Grafana (stream metrics)
  • Slack (notify on updates)

See Workflows.md for integration examples.

Philosophy

  • Plain text first. Data lives in YAML + Markdown, tracked in git.
  • CLI-native. Full power from your terminal. No bloated UI.
  • Offline by default. Clone repo, work anywhere, push changes.
  • Git is your database. History, blame, and rollback come free.
  • Composable. Works with jq, shell scripts, and Unix tools.
  • Developer-friendly. Made by developers, for developers.

Getting Help

License

License.md — MIT


Ready to stop duplicating your work? Get started in 5 minutes →

Download files

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

Source Distribution

roadmap_cli-0.1.1.tar.gz (614.5 kB view details)

Uploaded Source

Built Distribution

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

roadmap_cli-0.1.1-py3-none-any.whl (882.9 kB view details)

Uploaded Python 3

File details

Details for the file roadmap_cli-0.1.1.tar.gz.

File metadata

  • Download URL: roadmap_cli-0.1.1.tar.gz
  • Upload date:
  • Size: 614.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for roadmap_cli-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a64f5ab711eb07dd3e9834c026c19ecb735f86164cc96e83a230150dcdf6de69
MD5 867b1bd8481163e141e9b01b9326aa51
BLAKE2b-256 b4c65949c0e3b00aaf66bf651981624546990eac2d84a50afd7b3b7334a33e47

See more details on using hashes here.

Provenance

The following attestation bundles were made for roadmap_cli-0.1.1.tar.gz:

Publisher: release.yml on shanewilkins/roadmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file roadmap_cli-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: roadmap_cli-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 882.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for roadmap_cli-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bb88102b898f902e77862fc5ef0939f81b906fd7a2383e00b59a2096f5463d70
MD5 44094a726bdb0bcc7b52ac3489556ebe
BLAKE2b-256 059472445b26ae8b06aea5a03e77099ef0579f2d8dc93ff6e1619a0e899d42e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for roadmap_cli-0.1.1-py3-none-any.whl:

Publisher: release.yml on shanewilkins/roadmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.0.2

2 files

1.0.0

2 files

0.3.0

2 files

0.2.0

2 files

This release

0.1.1 This release

2 files

0.1.0

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page