Local-first · cross-source · provenance-bounded

Make heterogeneous evidence answerable.

Lynchpin joins activity captures, exports, code history, AI-session archives, and machine telemetry without turning them into one opaque database. Sources remain owned; materialized products remain rebuildable; conclusions retain coverage and provenance.

Evidence architecture

Keep the sources distinct; make the joins reproducible

The analytical substrate accelerates cross-source questions. It is not a second raw archive and does not erase each source’s observation window, missingness, or trust boundary.

01 · Adapters

Read owner-native data

Typed, lazy APIs preserve provider semantics, coverage, and source-specific caveats.

02 · Materialize

Build canonical products

A dependency planner rebuilds missing or stale products and records complete manifests.

03 · Substrate

Promote a coherent window

DuckDB joins source products under one refresh identity with stable readers and views.

04 · Evidence

Graph, analyze, compile

Graphs, deterministic metrics, context packs, CLI, and MCP expose bounded answers.

What it provides

An analysis system with explicit epistemic edges

Source APIs

One interface, preserved differences

ActivityWatch, Atuin, Git, Polylogue, browser exports, health data, machine metrics, and other sources stay typed and lazy.

Evidence graph

Connect work across systems

Projects, commits, files, sessions, terminal activity, focus spans, GitHub items, signals, and claims become traversable evidence.

Deterministic analysis

Metrics carry their denominator

Velocity, change surfaces, work rhythms, longitudinal signals, machine pressure, and calibrated attribution retain timeframe and unit.

Agent contract

Eight stable MCP tools

Status, catalog, query, evidence, project, personal, machine, and operations domains hide internal churn behind typed actions.

Documentation

Choose the layer that owns the question