Scholiast

Local-first research agent that verifies every claim against a source chunk before showing it

REPOgithub.com/Anuj-Attri/scholiast
STACKTypeScript / React · Electron · Python / FastAPI · LangGraph · llama.cpp · Qwen3-VL-8B
PERIOD2026
STATUSactive, ~22k lines

Scholiast is a desktop research agent. You ask a question; it plans sub-questions, searches, picks sources with explicit ranking signals, ingests each one (web page or PDF) into a per-workspace index, and writes a templated summary in which every claim is tied to a specific source chunk and checked before it is rendered. The graph canvas shows the question, its sub-questions, and the sources that answered them.

Scholiast summary view: question graph on the left, cited summary with an evidence table and confidence on the right (design canvas).
Scholiast summary view: question graph on the left, cited summary with an evidence table and confidence on the right (design canvas).

Why claim-level verification

Most research assistants cite at the paragraph level, which means a wrong sentence can sit next to a right citation. Scholiast attaches a chunk reference to each claim, batches the claims, and runs a verification pass that drops any claim the source does not actually support. The summary header reports what happened: coverage, confidence, how many sources were read, how many failed, and how many claims the verifier removed. Claims that two sources agree on are marked corroborated; claims sources disagree on are marked contested and listed under a separate heading rather than averaged away.

Systems work underneath

Workspace graph: a question hub, open and answered sub-questions, candidate and selected sources (design canvas).
Workspace graph: a question hub, open and answered sub-questions, candidate and selected sources (design canvas).

Scope

PropertyValue
Codebase~22k lines of first-party TypeScript and Python, ~120 source files
OrchestrationLangGraph workflow: plan, search, read within budget, organize, narrate
Local modelQwen3-VL-8B via bundled llama.cpp; cloud providers optional
Verificationbatched claim-to-chunk checks; dropped claims counted in the summary header