Topic in, cited literature review out.
espigue is a standalone command-line tool that turns a research question into
a structured, citation-grounded literature review. It searches arXiv and Semantic
Scholar (and your own documents), grounds every claim in retrieved sources, and
surfaces a field's areas of disagreement and open gaps — using them to drive
further, targeted literature search. One OPENROUTER_API_KEY drives generation,
embeddings, and reranking.
Two things set it apart. Every citation and quote is mechanically verified against the real source text — a deterministic check, not the model's word — so the review puts a hard floor under the hallucination that plain LLM summarisation invites. And it keeps a persistent local corpus: every paper it reads, plus anything you ingest, accumulates into a queryable memory of a field that you own.
The draft stage is an evolutionary search, not a single pass: a population of parallel expert drafts competes under adversarial judges, the weakest are culled for drifting from their sources, and survivors are rewritten round by round with evidence retrieved to close the gaps and disagreements they expose — until the fittest is fused into the final review.
It has been evaluated end-to-end with Haiku driving that draft swarm and a
single Opus 4.8 call to merge — the surprising part is how much quality holds
with the bulk of the reasoning on Haiku. Defaults ship gemini-2.5-flash for
drafts; pass --model anthropic/claude-haiku-4.5 to reproduce the tested setup.
pip install espigue
export OPENROUTER_API_KEY=sk-or-...
espigue "test-time compute scaling for language models"
# → synthesis.yaml + graph.mdBuilt for Python users. pip install espigue ships a self-contained binary —
no Rust toolchain, no runtime dependencies. Drive it from a Python script with
subprocess and load the structured synthesis.yaml; a few lines turn a review
into a dataset. See From Python.
Each review is also emitted as a synthesis.yaml — the review as data, not just
prose: every claim carries its sources, evidence grade, support level, method,
lineage, and mechanically verified quotes, and the field's agreements,
disagreements, uncertainties, and open research gaps are first-class lists. Each
review is a small, queryable knowledge graph of its field.
Five complete, unedited example reviews — .md prose plus full .synthesis.yaml
— are in examples/reviews/. Full documentation and the
design of the three-stage pipeline are in the package README:
crates/espigue/README.md.
This is a self-contained Rust workspace. The CLI is packaged as a pip-installable
wheel via maturin (bindings = "bin").
| Crate | Role |
|---|---|
crates/espigue |
The espigue binary + the synthesis pipeline (run_review) |
crates/orchestration |
Test-time-diffusion synthesis engine (TTD + adapter) |
crates/search |
Literature search — RRF fusion, reranking, the vec store |
crates/base |
Shared types, error taxonomy, trait definitions |
cargo build --release -p espigue # → target/release/espigue
# or build the wheel:
pip install maturin
cd crates/espigue && maturin build --releaseespigue is a sibling of Symphonia,
an LLM-assisted expert-consensus platform, and shares its synthesis engine with
axiotic-ai/consensus — the original
Python implementation of the test-time-diffusion consensus method ported here.
Apache-2.0. See LICENSE.