Skip to main content

Distill

CI PyPI Python License: Apache 2.0 Python 3.12+

Point Distill at a research goal. It finds papers, talks, and pages from operator-trusted sites, captures supplied repos, podcasts, feeds, posts, and local files, analyzes each into structured insights with source receipts, verifies claims before write, and synthesizes a plain-Markdown corpus on your disk. Browse it in Obsidian, query it over MCP, ask cited questions that can re-enter the corpus, and refresh on a cadence instead of going stale.

PyPI package distillr; CLI is distill (plus distill-mcp).

Install and first run

uv tool install distillr
distill --cost-mode no-metered init
distill --cost-mode no-metered papers "temporal knowledge graph" --topic tkg --limit 5 --preview

no-metered only allows routes Distill can prove are not API-billed. Preview builds a current arXiv shortlist without ingesting. On a local Ollama or LM Studio route that spend is $0.00 and the budget is wall clock: a two-paper ingest can take an hour on a laptop, and that is the control, not a hang. Run distill bench once so preview can print how long the full ingest will take on this machine. If local inference is up, use it to ingest more and stay more current: ad hoc commands at the keyboard, distill profile refresh --max-hours 6 --yes after hours so many topics keep feeding the markdown wiki. When API spend is OK, the same pipeline goes wide and fast. When the shortlist looks right:

Hard dollar budgets cover registered token-priced calls. Gemini Deep Research has no provider request-side dollar ceiling, so Distill refuses that agent before remote setup whenever a hard workflow or MCP budget is active.

distill --cost-mode paid-ok papers "temporal knowledge graph" --topic tkg --limit 20
distill --cost-mode paid-ok papers "temporal knowledge graph" --topic tkg --limit 20 --workers 3

Paid-ok is how you do a lot quickly: preview the shortlist, then ingest a large set in minutes instead of hours. Paper analysis stays one-at-a-time by default. After reviewing the projected total, --workers 2 or --workers 3 analyzes independent papers in a small bounded group. Discovery, artifact writes, verification, synthesis, and report sections remain serialized.

distill papers CLI demo with synthetic paper titles, progress lines, cost summary, and Markdown corpus artifacts

Illustrative demo (synthetic titles and paths). Real runs use current arXiv results and your configured model route. Distill estimates the selected route before spend; actual cost and duration depend on source size and model output.

Alternate installers, keys, local models, and updates: docs/install.md. Full command reference: docs/usage.md.

What you get

One local library/ of plain Markdown: no database, no cloud lock-in. Same pipeline shape for every source (capture → analyze → verify → synthesize), with a write-time verify gate.

Source Entry point
YouTube distill latest, distill video, distill discover
Websites distill site, distill site-batch
arXiv distill papers
X, repos, podcasts, newsletters, local files distill ingest <url-or-path>

Plus distill ask (cited answers from the corpus), distill audit (free trust report), and distill report (a corpus-first sequential report by default, with explicit accordion and Deep Research profiles). MCP and recurring profiles expose the same durable corpus to agents. Artifact layout and samples: docs/outputs.md. Real example corpus: examples/.

Agent distribution uses one canonical Agent Skill plus an Agent Plugins 1.0.0 portable package and separate client compatibility surfaces. The specification is currently a Working Draft. distill export <topic> --format okf produces an OKF v0.2 projection with portable provenance, bounded receipt copies, lifecycle fields, and digest-bound machine-verification events. The native library/ remains the source of truth. Exact standards boundaries and update policy: docs/interoperability.md.

How Distill differs from Deep Research tools, notebooks, and Markdown wikis: docs/positioning.md.

Docs

Doc For
docs/README.md Full documentation index
docs/usage.md Commands, flags, first recipes
docs/install.md Install, providers, local models
docs/cost.md Cost model and guardrails
docs/mcp.md MCP tools and agent paths
docs/outputs.md What every artifact contains
docs/architecture.md Data flow and routing
docs/invariants.md Design charter
docs/interoperability.md Agent Plugins and OKF baselines
docs/SECURITY.md Trust boundaries and disclosure
docs/CONTRIBUTING.md Dev setup and quality gates
docs/CHANGELOG.md What shipped
ROADMAP.md What is next

Status

Active beta with a broad working surface: sources, discovery, verification, synthesis, ask, audit, MCP, dashboard, profiles, and deferred workers. Every change clears the same release gate: 95% branch coverage, Ruff, Pyright, import-linter, Bandit, pip-audit, the supported Python matrix, and build provenance. Covered v1 contract snapshots are freeze-ready under the published compatibility policy. Pin versions if you integrate on MCP schemas or frontmatter because uncovered pre-1.0 surfaces can still improve additively.

Version 1.0 is a future stability commitment, not a calendar date. Five paired Linux and macOS runs now characterize public-runner variance and support an advisory regression policy. The remaining gates include cross-platform install, cold-start, export, live-journey, accessibility, and freeze-time security evidence. See the roadmap and comparable performance history.

License

Apache 2.0. See LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

distillr-0.19.70.tar.gz (932.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

distillr-0.19.70-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file distillr-0.19.70.tar.gz.

File metadata

  • Download URL: distillr-0.19.70.tar.gz
  • Upload date:
  • Size: 932.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for distillr-0.19.70.tar.gz
Algorithm Hash digest
SHA256 fa073c562626e47fe44c3833ee915209dd6be80d46f621196df87d9c50cb72e3
MD5 b621f8c8ca8bd646df7d1a391939e656
BLAKE2b-256 e4482152aec7aea01f1fe39539c1af9573f0feb46dc014409c4d874063d5af76

See more details on using hashes here.

Provenance

The following attestation bundles were made for distillr-0.19.70.tar.gz:

Publisher: publish.yml on blisspixel/distillr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file distillr-0.19.70-py3-none-any.whl.

File metadata

  • Download URL: distillr-0.19.70-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for distillr-0.19.70-py3-none-any.whl
Algorithm Hash digest
SHA256 09122f28a0cf9b1efd28e09326fe54056e1c72156f14c202ddd4a1a324770a45
MD5 655bd5defc700c7f645436fcfb2482bc
BLAKE2b-256 20a5b519a9784397c57d3efbaf355af1367e2ec07d052acbd180945a5201b37a

See more details on using hashes here.

Provenance

The following attestation bundles were made for distillr-0.19.70-py3-none-any.whl:

Publisher: publish.yml on blisspixel/distillr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.19.74

2 files

0.19.73

2 files

0.19.72

2 files

0.19.71

2 files

This release

0.19.70 This release

2 files

0.19.69

2 files

0.19.68

2 files

0.19.67

2 files

0.19.66

2 files

0.19.65

2 files

0.19.64

2 files

0.19.63

2 files

0.19.62

2 files

0.19.61

2 files

0.19.60

2 files

0.19.59

2 files

0.19.58

2 files

0.19.56

2 files

0.19.55

2 files

0.19.54

2 files

0.19.53

2 files

0.19.52

2 files

0.19.51

2 files

0.19.50

2 files

0.19.47

2 files

0.19.46

2 files

0.19.45

2 files

0.19.44

2 files

0.19.43

2 files

0.19.42

2 files

0.19.41

2 files

0.19.40

2 files

0.19.39

2 files

0.19.38

2 files

0.19.37

2 files

0.19.36

2 files

0.19.35

2 files

0.19.34

2 files

0.19.33

2 files

0.19.32

2 files

0.19.31

2 files

0.19.30

2 files

0.19.29

2 files

0.19.28

2 files

0.19.27

2 files

0.19.26

2 files

0.19.25

2 files

0.19.24

2 files

0.19.23

2 files

0.19.22

2 files

0.19.21

2 files

0.19.20

2 files

0.19.19

2 files

0.19.18

2 files

0.19.17

2 files

0.19.16

2 files

0.19.15

2 files

0.19.14

2 files

0.19.13

2 files

0.19.12

2 files

0.19.11

2 files

0.19.10

2 files

0.19.9

2 files

0.19.8

2 files

0.19.7

2 files

0.19.6

2 files

0.19.5

2 files

0.19.4

2 files

0.19.3

2 files

0.19.2

2 files

0.19.1

2 files

0.19.0

2 files

0.18.3

2 files

0.18.2

2 files

0.18.1

2 files

0.18.0

2 files

0.17.0

2 files

0.16.20

2 files

0.16.19

2 files

0.16.18

2 files

0.16.17

2 files

0.16.16

2 files

0.16.15

2 files

0.16.14

2 files

0.16.13

2 files

0.16.12

2 files

0.16.11

2 files

0.16.10

2 files

0.16.9

2 files

0.16.8

2 files

0.16.7

2 files

0.16.6

2 files

0.16.5

2 files

0.16.4

2 files

0.16.3

2 files

0.16.2

2 files

0.16.1

2 files

0.12.13

2 files

0.12.12

2 files

0.12.11

2 files

0.12.10

2 files

0.12.9

2 files

0.12.8

2 files

0.12.7

2 files

0.12.6

2 files

0.12.5

2 files

0.12.4

2 files

0.12.3

2 files

0.12.2

2 files

0.12.1

2 files

0.12.0

2 files

0.11.2

2 files

0.11.1

2 files

0.11.0

2 files

0.10.2

2 files

0.10.1

2 files

0.10.0

2 files

0.9.31

2 files

0.9.30

2 files

0.9.29

2 files

0.9.28

2 files

0.9.27

2 files

0.9.26

2 files

0.9.25

2 files

0.9.24

2 files

0.9.23

2 files

0.9.22

2 files

0.9.21

2 files

0.9.20

2 files

0.9.19

2 files

0.9.18

2 files

0.9.17

2 files

0.9.16

2 files

0.9.15

2 files

0.9.14

2 files

0.9.13

2 files

0.9.12

2 files

0.9.11

2 files

0.9.10

2 files

0.9.9

2 files

0.9.8

2 files

0.9.7

2 files

0.9.6

2 files

0.9.5

2 files

0.9.4

2 files

0.9.0

2 files

0.8.12

2 files

0.8.11

2 files

0.8.10

2 files

0.8.9

2 files

0.8.8

2 files

0.8.7

2 files

0.8.6

2 files

0.8.5

2 files

0.8.4

2 files

0.8.3

2 files

0.8.2

2 files

0.8.1

2 files

0.8.0.3

2 files

0.8.0.2

2 files

0.8.0.1

2 files

0.8.0

2 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

0.6.1

2 files

0.6.0

2 files

0.5.0

2 files

0.4.0

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page