watch it happen

proven end-to-end on stage 2026-06-12

Two decisions. About four clicks. Zero typing.

You make exactly two judgment calls — sign in and point at a repo. Every click below is a consent screen, counted honestly. Everything else is the app's job: the workspace, the import, the linking, the first answer.

decisions 2clicks ≈4 (all consent)typed characters 0your time ~2 min, then the app works
1decision 1 click 1

Continue with GitHub.

One button. Your org is provisioned the instant you sign in — no setup form, no “create a project” wizard, nothing to name.

lema.sh/login
Continue with GitHuborg auto-provisioned · nothing to configure

real stage capture (2026-06-12 walk) replaces this frame in production

2decision 2 clicks 2–4

Point it at a repo.

GitHub's own consent screens — named as such, because that's what they are. You pick the repo; GitHub asks permission; that's the whole job.

github.com/apps/lema
Install & Authorize lema on:⬡ acme/payments-apiInstall & AuthorizeGitHub-owned consent · read-only on code

real stage capture (2026-06-12 walk) replaces this frame in production

3the app works 0 clicks

The import runs while you don’t watch it.

Decisions and claims tick up per source, live. If we truncate, we say so on the page — and email you when first wisdom is ready, so nobody babysits a progress bar.

lema.sh/w/payments-api — importing
974
claims extracted
49 decisions minted · 11 auto-links
adr markdown41/41 files
pull requests200 of 1,847
issues500/500 newest
commits200/200 newest
Imported the newest 200 of 1,847 PRs. The cut is stated here and stays on your workspace statline — full-history backfill is a Pro switch, not a surprise.

real stage capture (2026-06-12 walk) replaces this frame in production

4wisdom arrives 0 clicks

First wisdom is waiting — cited, or honestly absent.

The workspace opens on a synthesis of what your repo argued about, every sentence cited. On a thin repo it shows the gap ledger instead — what you decided in practice but never wrote down — because a gap is honest wisdom and a restated index is not.

lema.sh/w/payments-api
first wisdom · synthesized from your record

Why is the ledger service split from the monolith?

Split in 2024 after the double-write incident: audit writes require serializable transactions the shared pool couldn't guarantee under load.1 Re-merging was argued twice and ruled out both times — the compliance boundary is load-bearing.2

⊘ ruled out — do not reopen
×Re-merge into monolith — kills the audit isolation that passed SOC 2. ADR-0019 · PR #412

real stage capture (2026-06-12 walk) replaces this frame in production

⎘ receipts

One real walk, receipts attached — not an average. A fresh identity did exactly this on 2026-06-12: connected a fork of mozilla/fxa, watched a ~50-minute import, and landed on 49 decisions · 974 claims · 11 auto-links — then asked why, and got citations. The frames above are placeholders for that walk's real captures.

two doors, one graph

Hosted does the work. Local never needs permission.

Hosted

early access
Sign in, point at a repo — the app imports, links, and synthesizes while you do something else.
Ask, cited— “why did we choose X?” answered from your own record, with the ruled-outs attached.
Your agents on the same graph — hosted MCP serves verdicts to every session.
Truncation stated, completion emailed — the lazy path is the honest path.
Connect a repo — free →

Local

shipping today
One command, no account — every file it writes is listed and yours to read.
Claims served as ≤240-char pointers — never documents dumped into context.
One-tap capture the moment you correct the agent — chosen is what you did, rejected is what it proposed.
+ .mcp.jsonserver entry
+ AGENTS.mdask-first rules
+ .lema/hooks/PreToolUse gate

Everyone else hands your AI a filing cabinet; lema hands it the verdicts — and the map to the cabinet, opened only on demand. The two doors share one graph and one rule of identity:

sign-in is for humans · lema_live_ keys are for agents

nothing local is ever crippled.

don't lose the why

Don't lose the why. Ask the repo.

Run a real “why” query on React, Kubernetes, Rust, Vue, or Go right now — no account, no import. Or run it local in ten minutes. Both doors lead to the same graph.

Try it now — no login
● try it · no account · React, Kubernetes, Rust, Vue, Go◐ connect your repo — early-access, opening as hardening completes