# Genomi has one release, tagged Genoni, and every feature it describes came after it

> An Apache-2.0 agent runtime that keeps a genome in a local index and points an MCP host at public genetics evidence. The manifest carries twelve dependencies pinned three different ways, one of them a git commit, inside a project whose headline claim is that nothing leaves your machine.

**exon-research/genomi** — Local-first, open-source Claude Science alternative, before Claude Science is a thing. Turn your AI agent into personal DNA expert.

- Repository: https://github.com/exon-research/genomi
- Website: https://www.genomiagent.com/
- Stars: 483 · Forks: 62
- Language: Python
- License: Apache-2.0
- Published: 2026-09-10 · Updated: 2026-09-10 · Language: en
- Canonical page: https://hysenlabs.com/projects/exon-research-genomi

## One release exists, it is misnamed, and it is two months stale

The project has exactly one published release, v0.1.0, dated July 1, 2026, and its release title reads Genoni rather than Genomi. The last push to the default branch, master, is dated August 31, 2026, and the manifest still declares version 0.1.0. So the tag and the manifest agree, which is tidy, and both are behind the README by a wide margin. Every GenomiLab capability described in the documentation, including the research desk, the specialist board, the Paperclip evidence route and the bounded ESM and Proto operations, describes work that has never appeared in a release. There is a RELEASE_NOTES.md at the root that the release history cannot yet be compared against, and a GENOMILAB_PRODUCT_DEFINITION.md beside it, which reads more like the reason the README reads the way it does.

## Installation is a raw markdown URL on a moving branch

The install instruction is not a command. It is a block of text telling the reader to paste this into their agent:

```text
Install and configure Genomi by following the instructions here:
https://raw.githubusercontent.com/exon-research/genomi/master/INSTALL_FOR_AGENTS.md
```

The same pattern appears above it as a shorthand, with the instruction to read a second raw file called llms-full.txt from the same branch. Both URLs point at master rather than at the 0.1.0 tag, so the text an agent fetches and follows is whatever that branch holds at read time, and it is not tied to the version you think you installed. The project is otherwise careful about versions, with a separate install guide covering dependency checks, library selection, MCP registration, optional genome-source import and verification, and a canonical update path of genomi install or the MCP operation genomi.install for hosts that already have it. The bootstrap URL is the weak link, not the rest.

## Twelve dependencies use three different pinning strategies

The manifest declares twelve runtime dependencies for Python 3.10 or newer, and they are not pinned the same way. Most are lower bounds only: biopython at 1.87, cryptography at 42, google-genai at 2.0.1, keyring at 25, numpy at 1.26, openpyxl at 3.1.5, pysam at 0.22, pyliftover at 0.4, isal at 1.1 and duckdb at 1.0. One is pinned to an exact version, modal at 1.5.1. One is not on an index at all: gxl-paperclip, requested directly from a git repository at a fixed commit hash. Meanwhile the repository root carries a uv.lock while the build backend is setuptools, so the lockfile and the build tool are two different toolchains. None of that is inconsistent on its own, but a reader cannot tell from the manifest which dependencies the author actually tested against.

## A git dependency and two cloud SDKs sit inside a local-first claim

The headline promise is that your genome stays on your machine. Two entries in the mandatory dependency list sit awkwardly beside that. google-genai is a client for a hosted model endpoint, and modal is a cloud serverless platform, both required rather than optional. The manifest comment on modal is reassuring and narrow: it is for prototype prerequisite checks through an isolated child with fixed endpoints and user-owned credentials, and no prototype tool is deployed or run. Even so, a local-first claim now requires two vendor SDKs to install. The git-pinned dependency is the other case: it resolves to one commit of one repository at one organisation, so that component can change the moment the commit is garbage collected or the repository is made private.

## The manifest comments explain exactly the six dependencies you would not guess

Six dependencies carry a comment explaining why they are there, and they are consistently the surprising six. cryptography is for persisting in-memory SQLite state as an authenticated encrypted container with the key in an OS-backed secret store. isal is Intel ISA-L gzip acceleration, claimed at three to five times faster decompression for ClinVar and population imports, falling back to subprocess or stdlib gzip when unavailable. pysam supplies htslib bindings so the source parser can write a bgzip-compressed canonical VCF per index and read it back by virtual offset without ever reopening the user's intake. pyliftover handles GRCh37 to GRCh38 liftover through UCSC chain files in pure Python. The other six have no comment at all.

## Public evidence lookup ships switched off behind three approvals

The README opens with questions about hair loss, Alzheimer's risk and why ibuprofen does nothing, and answers to those are supposed to be evidence backed. The evidence route itself is described with unusual caution. Paperclip supports a narrow, approved set of literature, regulatory and trial-registry discovery operations, and explicitly not full-text extraction and not claim verification. An API key can be stored in the keyring and checked with a fixed public probe against one gene and one result, but that probe enables no evidence operation on its own. Using it for a real investigation requires an owner-provided deployment policy, a patient-data contract and an exact just-in-time disclosure approval. Absent that configuration the documentation says no live route is advertised at all.

## The research desk needs a query-ready index before it will open

GenomiLab is labelled a developer preview and depends on groundwork the user has to finish first. It is opened by asking the host that already runs genomi serve, and it deliberately shares that one long-lived process rather than starting a second agent server. A prerequisite is a current user with a query-ready Active Genome Index selected, which means handing the host a local VCF, a gVCF or another supported genome-source path so the agent can prepare and select the index. On a fresh home that path alone creates a usable placeholder profile which the patient can rename, and only an ambiguous multi-user home triggers a question about which profile owns the genome. Once open, every investigation reuses the active index and never copies its rows into a separate database.

## The board of subagents is recorded, the messages are not

Each investigation runs under a chair agent that must convene two to five adaptive, non-overlapping specialist subagents. The chair keeps the patient conversation, the authorization, private index reads and the canonical research commits, while specialists get either a bounded public question or the minimum approved evidence. What reaches the patient-facing portal is narrow by design: the logical board and meaningful milestone states, and never raw agent messages, chain of thought, or native task identifiers. Follow-up questions stay inside the same host task, the patient approves the exact context change in the portal, and only affected evidence is rerun before a superseding hypothesis and revised brief are committed. A resumed investigation reuses its recorded board rather than reconvening one.

## Conclusion

Use Genomi to read your own variants against public data on your own machine, which is a real and useful thing for a curious developer to do, and treat everything about GenomiLab as unreleased work rather than as a product. Two things to check first. The install instructions are a raw markdown URL on the master branch, so you are asking an agent to execute whatever that file says at the moment it reads it, and pinning it to the 0.1.0 tag is the only way to make that repeatable. And the dependency list includes two cloud SDKs in a local-first project, so decide for yourself which capabilities you are willing to have reach a network. Nothing here should be read as clinical interpretation.

## FAQ

### Does Genomi send my genome file to a server?

The README says the genome stays on your machine, and the manifest says the source parser writes a bgzip-compressed canonical VCF per Active Genome Index which downstream capabilities read by virtual offset, never reopening the intake. Separately, the required dependency list does include two cloud client SDKs.

### What does installing Genomi involve?

Pasting a two-line instruction containing a raw markdown URL into your agent. The install guide it points at covers dependency checks, library selection, MCP registration, optional genome-source import and verification. Hosts that already have Genomi use genomi install or the MCP operation genomi.install instead.

### Can I use the Genomi research desk yet?

It is labelled a developer preview. You need a current Genomi user with a query-ready Active Genome Index selected, and you open the desk by asking the host that is already running genomi serve, which keeps the same long-lived process rather than starting a second server.

### Which genome files does Genomi accept?

A local VCF, a gVCF, or another supported genome-source path, given to the host agent, which then prepares and selects the Active Genome Index. On a fresh home that also creates a usable placeholder profile that the patient can rename later.

### What can Genomi's Paperclip integration actually retrieve?

A narrow, approved set of literature, regulatory and trial-registry discovery operations. It does not do full-text extraction or claim verification, and without an owner deployment policy, a patient-data contract and a just-in-time disclosure approval, no live route is advertised.

## Sources

- [exon-research/genomi on GitHub](https://github.com/exon-research/genomi)
- [License: Apache-2.0](https://github.com/exon-research/genomi/blob/master/LICENSE)
- [Project website](https://www.genomiagent.com/)
- [README](https://github.com/exon-research/genomi/blob/master/README.md)
- [Releases](https://github.com/exon-research/genomi/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/exon-research-genomi
