Skip to content

futurelarry

## Project description — agent-eln ### What I built **agent-eln** is an AI-native lab operating system: a single git repo that unifies an Electronic Lab Notebook (ELN), a Laboratory Information Management System (LIMS),

Core trick

Stores lab records as Markdown with one-way frontmatter links, deriving backlinks and provenance graphs from them in stdlib Python.

Tags

Description

## Project description — agent-eln ### What I built **agent-eln** is an AI-native lab operating system: a single git repo that unifies an Electronic Lab Notebook (ELN), a Laboratory Information Management System (LIMS), a methods library, and a knowledge wiki into plain Markdown files plus a small Python toolkit. No database engine, no server — just files, `git`, and ~4,300 lines of stdlib Python under `tools/`. The system is organized around four modules that share one registry, one provenance graph, and one CLI: Every record is a Markdown file with a stable ID (`PLA-0042`, `EXP-2026-07-12-01`, `LIT-0060`) whose YAML frontmatter declares one-way provenance links (`used_resources`, `produced_resources`, `derived_from`, `protocols`). A single registry (`tools/registry.py`) is the schema — adding a new record type is two edits: one registry entry + one template. Backlinks, provenance edges, per-type CSV tables, an interactive HTML dashboard, and a DuckDB view are all auto-generated from the files; git hooks enforce validation on every commit. ### What I found Two design choices did most of the work: 1. **Filesystem = database, YAML frontmatter = queryable schema, body = free text.** Both the AI and the human read the same files. `git log` becomes the audit trail; `git blame` becomes attribution; every commit is a snapshot of the entire lab you can time-travel to. 2. **Only write one-way links; derive backlinks and the provenance graph.** A single field on the experiment card (`produced_resources: [PLA-0042]`) causes `produced_in: EXP-…` to be auto-backfilled on the plasmid card, edges to appear in `graph.json`, and the resource to show up in `plasmids.csv` — with no duplicated bookkeeping. The system now runs an active UCSD lab: 134 records across 26 types, 56/56 DOIs deduplicated, 30/30 tests green, structural validation at zero errors. A 2026-07-13 external audit scored it 8/10 as a research ELN and 8/10 for literature/knowledge management. It handles Novogene/BGI vendor deliveries with MD5 verification, GenBank plasmid auto-annotation, DOI → LIT card ingest, and a bidirectional LIT ↔ wiki bridge. ### Why it matters Legacy ELNs (OneNote, Benchling, LabArchives) were built for humans clicking forms — they can't hand context to an AI. The notebook is flat: no link from the experiment to the plasmid, no link from the plasmid to the paper it came from, so every trace is a search bar and every audit is a guess. When a postdoc leaves, the lab loses its memory. agent-eln flips the model. The AI is the primary user; the human reads the same files. Every experiment auto-declares which mouse, which plasmid, which SOP it used; every new sample, gel, and dataset gets a unique ID and an automatic edge back to its ancestors. Nothing orphans. The next breakthrough will be co-authored by an AI — that AI needs a lab it can read, and this is one built for that from day one. It's MIT-licensed, runs on a laptop, and any AI agent that clones the repo can operate it end-to-end.
larrywei8/agent-eln★ 10 forksPythonMITCreated Jul 13, 2026 · last push Jul 14, 2026

README excerpt

# Agent ELN

> [!TIP]
> **Install Agent ELN with one prompt**
>
> Using Codex, Claude Code, OpenClaw, Hermes, Zo Computer, or another coding agent?
> Give it this prompt:
>
> `Install Agent ELN from https://github.com/larrywei8/agent-eln into a new agent-eln folder and follow its installation instructions.`
>
> Your agent will clone, configure, validate, and test a clean workspace by following
> [`INSTALL.md`](INSTALL.md).

[![tests](https://github.com/larrywei8/agent-eln/actions/workflows/tests.yml/badge.svg)](https://github.com/larrywei8/agent-eln/actions/workflows/tests.yml)
[![Python 3.11+](https://img.shields.io/badge/python-3.11%2B-3776AB?logo=python&logoColor=white)](https://www.python.org/)
[![License: MIT](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)

## You remember the result. Agent ELN remembers everything that produced it.

**Never lose the story behind an experiment again.**

Agent ELN connects each experiment to the exact samples, plasmids, mice, reagents,
protocols, datasets, code, and papers behind it—while an AI agent handles the organizing.

Six months later, you can still trace any result back to what you used, what you did,
what you produced, and why.

![One result connected to the literature, materials, method, experiment, samples, and data that produced it](docs/assets/readme/hero-provenance.svg)

## Your experiment is one story stored in ten different places

The notebook records what you did. A spreadsheet tracks sample names. Plasmid

Team