DevMesh DevBoard
Your kanban lives in backlog.md. Your terminal drives it. Edit the file, save, the card lands.
What Is
DevMesh DevBoard?
DevBoard is a kanban that treats your backlog.md as the source of truth. Tickets are markdown headings. Status is an HTML comment. Groups are a label. That’s the whole format.
The dm CLI is the driver. Add tasks from inside your repo and they auto-bind to it. Run dm backlog watch and the file syncs to the board on every save.
The result: your tickets live next to the code that resolves them. Reviewers comment on tickets the same way they comment on diffs. Nothing about your project lives in a database you can’t git log.
# Backlog ## Wire OAuth callback handler <!-- devmesh:status=todo --> <!-- devmesh:group=auth-rewrite --> Handle Supabase callback edge cases. ## Patch SQLi in /api/search <!-- devmesh:status=in_progress --> <!-- devmesh:group=security-audit --> Replace string concat with parameterized queries. Audit other endpoints. ## Rotate leaked Stripe secret <!-- devmesh:status=in_review --> <!-- devmesh:group=security-audit --> ## Viewport-fit kanban <!-- devmesh:status=complete -->
How DevBoard Works
Edit backlog.md
Add `## Wire OAuth callback handler` with `<!-- devmesh:status=todo -->`. That's the whole format. Plain markdown, plain HTML comments, plain git.
Push to the board
Run `dm backlog push` once, or `dm backlog watch` for live sync. The file becomes the board, and the board reflects the file — both directions.
Drive from the terminal
`dm task add "Quick fix" --group security-audit` auto-binds to the current repo via `.devmesh.json`. No browser tab, no copy-pasted IDs.
Code references the card
Commit messages mentioning `DEVM-83` light up the badge on the card. Pushed vs local is visible. The work and the ticket stay in lockstep without you typing twice.
Move it on the board
Drag a card across columns, or `dm task move DEVM-83 in_review`. Both update backlog.md and the kanban together. The next git diff tells the team what shipped.
Six Reasons It Sticks
Counter-positioned against Linear, Plane, and GitHub Projects. Different model, different audience, on purpose.
Your backlog is a file
backlog.md is the source of truth. Git diffs, PR reviews, blame, all of it. Reviewers can comment on tickets the same way they comment on code.
## Wire OAuth callback handler <!-- devmesh:status=todo --> <!-- devmesh:group=auth-rewrite -->
`dm task add` from anywhere
Tasks auto-bind to the current repo via .devmesh.json. No browser tab required, no IDs to copy/paste.
$ dm task add "Quick fix for retry logic" ✔ DEVM-91 → todo · bound to devmesh
Commit status on every card
Reference a task ID in any commit message and the card's badge updates. Pushed vs local is visible at a glance.
$ git commit -m "fix: handle OAuth retry (DEVM-83)" ↳ DEVM-83 · commit local · push to publish
Visual task grouping
--group security-audit paints sibling cards a shared color from an 8-color hash palette. Tasks born from the same prompt or audit visually cluster.
$ dm task add "Patch SQLi in /api/search" \
--group security-auditViewport-fit board
Columns scroll, the page doesn't. Cards keep their natural height even in crowded columns. The board respects your screen.
Centered modal, drag-only cards
Click to read, drag to move. No accidental opens, no keyboard fights with column scroll.
The Format Rules
Eight conventions that make the file-as-truth model work. Memorize the footgun on rule 3.
backlog.md lives at the repo root and is the source of truth on `dm backlog push`.
Valid statuses: `todo`, `in_progress`, `in_review`, `complete`, `cancelled`.
Footgun: `done` is NOT valid — it silently parses as `todo`. Use `complete`.
Items without an `id` field get a server-minted UUID written back into the file on next push.
Tasks created via `dm task add` auto-bind to the current repo from `.devmesh.json`.
Pass `--group <label>` on every sibling task to share a color on the board.
Group labels are lowercase-with-dashes, case-insensitive after first use.
A task can belong to multiple groups — repeat `--group` to attach more.
Frequently Asked Questions
Stop tab-switching. Start shipping from your terminal.
DevBoard is free on devmesh.app. Install the CLI, write a backlog, watch the cards land.