litpm

Plan in plain files. Ship with your agents.

litpm is a local issue tracker where every issue is a markdown file, for a product, a team or your own week. It is also the control surface for the coding agents that work those issues with you, and it stays out of their way. Nothing hidden, nothing to host.

litpm's issue list: thirty issues grouped by status, with sub-issues nested under their parent, labels, projects, assignees and due dates

Your work, in files you own.

A Linear-grade tracker over a folder of markdown. The issue on the left is the file on the right, and either one can change first. Everything else, from the lists to the dashboards, is read from those files.

An issue page in litpm: title, description, properties, and two comments, one from a person and one from Claude Code
---
title: Checkout totals ignore the volume discount
status: todo
priority: urgent
labels: [bug, customer]
milestone: checkout
parent: NW-1
assignee: Margaret
due: 2026-09-13
---
Ordering 40 cases of Chai shows the list price at
checkout; the invoice later applies the 12% discount.
Two customers called about it this week.

## Comments

### 2026-09-14 10:17 - Margaret

Reproduced: the discount tiers are read from the old
price list. Fix is in the pricing service.

### 2026-09-15 23:26 - claude

Recommendation: pick this up first, ahead of
everything else open in Storefront.
The Issues dashboard: a chip per person, tiles for open, in progress and done, a scope and completion graph, and breakdowns by status, priority and project
The Projects page with its summary band: started, needs attention, due in 30 days, issues done, and the projects by status, health and lead

Edit anywhere, see it live

Open an issue in the app or in your editor. The file is the truth, and whichever side you change, the other follows.

The files add up

A dashboard per person and per agent, health and progress across projects and initiatives, views as live cards. All read from the folder, nothing to maintain.

Git is the sync

A folder is enough for one person. Put it in a repo and commits carry it between machines, or run one team server and send invites.

Your agents, on the same issues.

Mention an agent in a comment the way you would a colleague. It reads the issue, does the work, whether that is a plan, a draft, a check or a fix, and answers in the same thread under its own name. Open the run to watch it think and to approve what it asks.

Comments on an issue: Nancy mentions @Codex and gets a regression checklist back, then mentions @Grok Build, who answers about the milestone dates
A run in litpm: the prompt, Claude Code's tool calls folded away, its response with issue references as chips, and the reply box

Any agent, by name

Claude Code, Codex, Grok, Cursor, Gemini and more, side by side on one issue. Each run gets its own litpm command, so what it writes is signed by it.

Choose how much it may do

Supervised asks before every change. Full access never asks. Approvals and questions land in the thread, and litpm shows what is waiting for you.

Minimal by design

litpm doesn't wrap the agent in a framework or steer how it works. It starts the program you already run, with your own login, and hands it one skill: the litpm CLI.

From thread to pull request.

A Code chat gets a branch and a worktree of its own. When the agent is done, the diff is right there: read it, commit, push and open the pull request from the same page. litpm never merges for you; how far the agent goes on its own is the mode you gave it.

A Code chat in litpm: Claude Code's turns fixing NW-5 on the left, and the Changes pane on the right with two files, the diff of pricing.js, a commit message and Commit, Push and pull request buttons

A worktree per chat

Each Code chat works on its own branch in its own checkout, so two agents never step on each other and your working copy stays yours.

Review, then ship

Every changed file and its diff in one pane. Commit, push, open the pull request and merge on GitHub or GitLab without leaving litpm.

Chats become issues

A conversation that turns into real work is promoted to an issue with one click, and the branch takes the issue's name.

One executable, or the app

bunx litpm in a terminal, or the desktop app for Mac, Windows and Linux. Nothing else to install.

Readable without litpm

Markdown with a little frontmatter. Grep it, diff it, back it up, or leave for another tool and take the files with you.

Knows your git host

Link a codebase and commits show up on their issues. A commit that says Fixes NW-5 closes it, and pull requests on GitHub or GitLab are tracked to merge.

Local-first. Nothing hidden.

What you see in the app is what's on disk. Your agents see the same.