Project overview, install instructions, usage. The one that normally rots first.
Every agent starts by reading docs that stopped being true two refactors ago.
Nobody updates the architecture doc. The README describes an install path that changed last spring. Then an agent reads all of it as gospel and writes something confidently wrong, and you catch it in review if you catch it at all.
What lands in docs/
Four files. Three of them are for you.
System design, module breakdown, Mermaid diagrams generated from what the code actually does rather than what someone drew in a meeting.
Exported functions, types, signatures, examples.
The whole reason this tool exists. Not prose — a map.
The one that matters
Markdown makes an agent read three files and guess. This makes it look one thing up.
{
"project": {
"name": "pricelantern-api",
"summary": "Scrapes and ranks retailer prices",
"language": "TypeScript"
},
"files": {
"src/api/rate-limit.ts": {
"purpose": "Token bucket limiter for the public API",
"exports": ["consume", "reset", "RateLimitError"],
"signatures": [
"consume(key: string, cost?: number): Promise<boolean>",
"reset(key: string): void"
]
}
}
}
Every file mapped to its purpose, exports and signatures. An agent that has this skips the search step entirely — it already knows which file owns the thing it was asked to change.
# installs globally, uses the Claude Code CLI you already have npm install -g lumiko cd your-project lumiko init # writes .lumiko/config.yaml lumiko generate # writes docs/
Where it stopped
Being straight about this, because the install line above works and that can mislead.
Small and medium repos
It runs end to end and the output is genuinely useful. The context.json is the part that earned its keep — it is what pointed at this whole idea of giving agents a surface to read.
Not finished, and not pretending
Work moved to issues, which is the same idea aimed at a surface people update daily rather than one they regenerate. lumiko is stopped rather than done, and it is published in that state on purpose.
Still worth a look
If you want a context.json for your own repo, it will probably give you one. If it falls over on a large codebase, that is the known edge and not a surprise.
It is open, it is stopped, and it is not going to quietly become a product with a pricing page.
Picked it up?
If you have run it on something big and it held, we would genuinely like to know — that would change whether it stays stopped.
hi@mirako.computer