Local-first · Session capture · PR appendix · MCP

Know why this PR is safe to merge.

Your agent writes code faster than you can verify it. Chreia captures the assumptions, dead ends, and evidence behind the diff, then exports a reasoning appendix your reviewers will actually read. Everything stays in a local SQLite file on your machine.

Open source alpha

AGPL-3.0 · local-first · no telemetry. The Windows installer is not commercially code-signed yet. If SmartScreen appears, click More info → Run anyway. Audit the source on GitHub.

Chreia_*_x64-setup.exe · GitHub Releases · free while in development

Chreia desktop app showing a workspace timeline with assumption, action, evidence, and conclusion blocks

What you get

See what your agent did while you work. Hand over proof when you ship.

While you work

Capture

One click ingests your Cursor or Claude Code session while the agent works. Branch a tangent like git, merge what worked, discard the rest.

Blocks

Your agent logs assumption, action, and evidence blocks over MCP as it works. You add the judgment calls only you can make. Weeks later you can still see why a line of code exists. Large AI PRs stay reviewable when each change gets its own block: one PR for git, a coherent map of decisions for reviewers.

When you ship

Hygiene

See what the agent assumed, what it abandoned, and what is still open. Reasoning debt and half-finished agent work get flagged before they slip into a merge.

Export

Paste a short reasoning receipt into the PR, with an optional link to the full session trail (graph + logs) on a Chreia share page — password-protectable for reviewers.

MCP

Your agent is a first-class writer here. Over MCP it logs blocks, checkpoints, and conclusions into the same local SQLite graph you read. Capture stays opt-in: nothing records until you hit Start, and sessions never leave your machine.

How it works

Six steps from prompt to defensible merge.

You and your agent write to one local SQLite graph. You leave with a PR appendix instead of a lost chat.

  1. Step 01

    Open a workspace

    One workspace per piece of work: a feature, a refactor, a bug that will not die. Each one is its own timeline with its own hygiene state.

    Workspacetimeline

    Workspaces

    session-store-race-fix

    Fix race in session store under concurrent writes

    auth-middleware-refactor

    1 workspace · agent_devops template

  2. Step 02

    Capture the chat trail

    Hit Start capture, pick the Cursor or Claude Code thread, and new messages ingest while the agent works. Branch a tangent when it rabbit-holes; merge what worked or discard the dead end. Nothing records until you say so.

    Captureopt-in

    Capturing · session-store-race-fix

    Scope: Cursor · TurnMeUp workspace

    14 new messages since start

    Nothing records until you click Start capture
  3. Step 03

    Your agent writes the record

    The bundled contextlayer-mcp binary gives your agent tools to log blocks, slice checkpoints, and check hygiene as it works. Its assumptions and conclusions land in the same SQLite graph you read, right beside your own.

    MCPany IDE

    contextlayer-mcp

    stdio · your IDE's MCP config

    • save_block — log assumption, action, evidence
    • export_blocks — PR-ready markdown slice
    • get_workspace_hygiene — before next test run
    • commit_checkpoint — slice session log
  4. Step 04

    Add your judgment calls

    Each block gets a title plus any mix of assumption, action, evidence, and conclusion, with a belief state that tracks how convinced you are. The agent logs the legwork; you record the decisions only you can make.

    Blocktimeline
    Leaning trueActionEvidence

    Per-key write serialization

    Assumption
    Concurrent map writes corrupt session state
    Action
    Added keyed mutex; benchmarked under load
    Evidence
    Repro test fails pre-fix, passes post-fix
  5. Step 05

    Check the agent's work

    The hygiene panel shows what the agent assumed, what it abandoned, and what is still open. Reasoning debt and stale threads get flagged before they reach a merge.

    Workspace healthhygiene

    Blocks

    5

    Open

    2

    Confirmed

    1

    Rejected

    0

    Needs review

    1

    Reasoning debt

    1

    • Still open2
    • Reasoning debt1
    • Stale0
    • Dead ends0
  6. Step 06

    Export for PR

    Select blocks and publish a session trail link for reviewers, then paste a short reasoning receipt into the pull request. Full graph and logs stay on the share page — not dumped into the PR description.

    TipLarge AI PRs stay reviewable when each change has its own block: one PR for git, a coherent map of decisions in the appendix.

    PR appendixmarkdown
    ## Reasoning appendix
    **Workspace:** session-store-race-fix
    **Goal:** Fix race in session store under concurrent writes
     
    ### Summary for reviewers
    Mutex on write path; rejected global lock on read hot path.
     
    ### Block: Per-key write serialization
    **Belief:** confirmed · **Outcome:** confirmed
    **Assumption:** Concurrent map writes corrupt session state
    **Action:** Added keyed mutex; benchmarked under load
    **Evidence:** Repro test fails pre-fix, passes post-fix
    **Conclusion:** Ship keyed lock; defer read-path changes
     
    _3 of 5 blocks exported · pasted into PR description_

Why SQLite and Tauri

Built like a native utility, not a SaaS dashboard.

Tauri + Rust

Native desktop client with a small footprint. One Rust core powers the app, MCP server, and capture tools.

Local SQLite

Your assumptions, evidence, and chat capture stay on disk while you work. Offline by default. Share links are opt-in when you publish a trail for a PR.

Extensible data

It is a normal database file. Query your own history with SQL if you want dashboards or audits.

Built for builders who can't afford to forget why they believed something.

Design partners

Help shape the workflow before the loud launch.

Looking for 10–15 Windows builders who ship AI-assisted PRs. Break capture, critique the timeline and hygiene panel, and tell us what is missing. Open a Design Partner Feedback issue or reply on X.

Ship the diff with the why attached.

One installer, no account, no cloud. Your agent leaves the trail while it works; you check the hygiene panel and paste the appendix when you open the PR.