ReviewDistill
Distill the comments you write in a LaTeX paper into a reusable agent skill to save your proofreading time.
What is ReviewDistill?
You already write comments in the .tex file. Those remarks stay in that paper. ReviewDistill groups them into labels and exports a skill you reuse: an agent applies the same checks on the next paper.
You can add an API key if you want an LLM to suggest labels. Comments and keys stay on your computer.
Start using it
Clone this repository. You need Python ≥ 3.11. Then:
pip install -e .
That puts the reviewdistill command on your PATH and compiles the workbench. You do not need Node to run the UI. Compiling it from this repository needs Node ≥ 22 and pnpm once.
In a paper repository:
reviewdistill init --name paper-01 --command myremark- Proofread with
\myremark{...}(or the commands you passed toinit). Define\newcommand{\myremark}[1]{#1}in the preamble if needed. reviewdistill extract(add--watchto keep extracting).reviewdistill ui→ http://127.0.0.1:8765. Pick a leaf label, or Label with AI if a key is set. Verify stamps the observation; Delete removes a bad extract.- Repeat on the next paper; the taxonomy is reused.
- Export in the workbench, or
reviewdistill export(writesSKILL.md) - Put that file in
.cursor/skills/scholarly-review/(or the equivalent for another coding agent).
The full guide: Introduction, Install, Your first paper, Label comments, Export.
To see the data folder: reviewdistill paths, or header Settings → Data. To copy it somewhere else: reviewdistill paths move ~/Documents/reviewdistill.
Run the documentation site locally: pnpm --dir website start.
For developers
| Command | Description |
|---|---|
pip install -e ".[dev]" |
CLI + Python deps + client UI build |
python -m pytest |
Python tests |
pnpm --dir client test |
Client unit tests |
pnpm --dir client lint |
Client ESLint (--fix to apply) |
pnpm --dir client up |
Bump client npm deps (taze) |
pnpm --dir client dev |
Vite on :5173, proxies /api |
pnpm --dir website start |
Documentation site |
pnpm --dir website capture |
Rebuild docs screenshots and CLI GIFs |
python client_build.py |
Rebuild packaged UI without reinstalling |
Client source: client/. Docs site: website/. Product spec: docs/spec/README.md, docs/spec/data-schema.md, docs/spec/comment-identity.md.
A GitHub Release whose tag matches pyproject.toml (v0.1.0 or 0.1.0) publishes to PyPI via Trusted Publishing.
License
ReviewDistill is released under the MIT License.
Release files for reviewdistill 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| reviewdistill-0.1.0.tar.gz | 228.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| reviewdistill-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 412.7 kB
Release files / reviewdistill-0.1.0.tar.gz
| Download URL | reviewdistill-0.1.0.tar.gz |
|---|---|
| Size | 228.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7f43b5b61f777330724ea93f0b4d034b40a67d7afe28c06b5be7f897f2a3764a
|
|
BLAKE2b-256 checksum How to use checksums |
faf10dffe46edeabd615089eb5a429c83a651016a7d0f913dd8000a139c55b3b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 16, 2026.
Transparency logRelease files / reviewdistill-0.1.0-py3-none-any.whl
| Download URL | reviewdistill-0.1.0-py3-none-any.whl |
|---|---|
| Size | 183.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8861a2fd9cd9d6cb84a1bac77cc6be22aceac33c7f91b8a43e634981f0462972
|
|
BLAKE2b-256 checksum How to use checksums |
dc3db36d7ab74105b6bf2438e2761d5782d6e35d0d9c29bdf8ea135cfe5b29b7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 16, 2026.
Transparency log