Lovelace – project management that lives in your repo

LambrosPhotios1 pts0 comments

Lovelace - Project management that lives in your repo

Download

Documentation Download for free

Project management that lives in your repo.

The free and private app for managing your software project.

Download for macOSOther platforms

Lovelace

Work<br>Board List

Knowledge<br>Documentation Graph<br>Define conflict policy for concurrent agent writes

Git High T-0151

Session log viewer: collapse tool calls

Sessions Low T-0148

Surface frontmatter validation errors inline

Schema Medium T-0144

Add ticket

Implement update_ticket with frontmatter patching

MCP High 1m 23s T-0142

Board column virtualization for large projects

Desktop Medium T-0139

Add ticket

query_tickets: filter by epic, status

MCP Medium T-0131

Epic progress derived from ticket files

Schema Low T-0128

Add ticket

create_ticket writes valid frontmatter

MCP T-0122

.lovelace/ directory layout

Schema T-0119

Ticket ID allocation safe under parallel agents

Schema T-0117

Add ticket

01 Project Management

Boards, tickets, and epics as files inside the repo, indexed by one YAML workflow file.

Backlog 0

The title is all you type. The schema fills the rest: type task,<br>status backlog, and the next ID from the project counter.

02 Documentation

Briefs as Markdown files, navigated via a knowledge tree, linked to other assets project-wide.

index.md<br>documentation/architecture/

index.md

caching.mdstale<br>documentation/domain/

index.md

index.md<br>The root document: a project summary and the reading order. An agent reads this first, then follows<br>each directory's index.md down to what it needs.

stale · review_by 2026-06-01

Summaries come from the files' frontmatter; indexes and agents read them without opening the body.<br>Wiki-links like [[T-0142]] tie documents to tickets.

03 The Views

Lovelace allows you to interact with your project using methods already familiar.

Work<br>In Progress 3<br>Validate link integrity in the indexer<br>Indexer High T-0142 · 4m

Cache the digest<br>Medium T-0143

Index wiki-links across docs<br>Indexer Medium T-0144

In Review 2<br>Report depends_on cycles once<br>Low T-0141

Badge stale docs in the tree<br>Medium T-0145

Board<br>Tickets grouped by status, columns from your workflow, with your agent moving tickets alongside you.

In Progress 2<br>Validate link integrity in the indexer Indexer High 4 Jul T-0142<br>Cache the digest Medium 3 Jul T-0143<br>In Review 1<br>Report depends_on cycles once Low 2 Jul T-0141<br>Done 2<br>Ship the board reorder 1 Jul T-0140<br>Wire the session hooks 28 Jun T-0139

List<br>Every ticket visible, filterable, and editable in a single table view.

Knowledge<br>index architecture index cachingstale decisions domain index tickets sessions

Documentation<br>Your project's documentation. A living organism of your project, its architecture, and any decisions you've made.

context architecture caching decisions domain sessions<br>Graph<br>A visual representation of your documentation and all connections between them.

04 The Agent Integration

An MCP server, hooks, and slash commands for Claude Code, installed by the app in one click.

the MCP tools &middot; click one<br>create_ticket Validate fields against the schema, assign an ID, write the file create_ticket(type: "task", fields: {title: "Cache the digest"})<br>✓ T-0143.md written · status: backlog

update_ticket Patch fields and status; locked core fields are rejected update_ticket(id: "T-0142", fields: {priority: "medium"})<br>✓ one field rewritten · updated bumped

describe_schema Return the project's types, fields, statuses and priorities describe_schema()<br>types, fields, statuses, priorities for this project

query_tickets Filter by status, type, assignee, parent or custom field query_tickets(filters: {status: "in_progress"})<br>1 match: T-0142

read_document Return a document's body, or a landing page plus child summaries read_document(id_or_path: "documentation/architecture")<br>index.md + children, summaries only

log_session Write an append-only session record log_session(ticket: "T-0142", approach: "…", outcome: "completed")<br>✓ S-0032.md written

set_active_ticket Record the ticket the session is working on set_active_ticket(id: "T-0142")<br>✓ recorded (machine-local, gitignored)

search Plain-text search across entity bodies and titles search(query: "cycle detection")<br>2 hits: T-0142, S-0031

Try Lovelace on your repo.<br>Free for macOS, Windows, and Linux. No sign up.<br>Download for macOSOther platforms

project index documentation ticket medium status

Related Articles