Skip to main content

A tool that generates concise summaries for you Miniflux feeds.

Project description

minigist

AI-powered summaries for your Miniflux feeds.

Turn your long Miniflux articles into clear, concise summaries.

Build status  License  PyPI 

🤘 Features

  • Automatic summarization of unread Miniflux entries
  • Configurable filters to target specific feeds
  • Notification support via Apprise for various messaging services
  • Dry-run mode to preview changes without modifying entries
  • Structured logging for better debugging and monitoring

🚀 Installation

Install minigist using pip:

pip install minigist

Install minigist using uv:

uv tool install minigist

📄 Usage

Configuration

Create a configuration file at ~/.config/minigist/config.yaml:

miniflux:
  url: "https://your-miniflux-instance.com"
  api_key: "your-miniflux-api-key"
  timeout_seconds: 2  # Default

llm:
  api_key: "your-ai-service-api-key"
  base_url: "https://openrouter.ai/api/v1"   # Default
  model: "google/gemini-2.0-flash-lite-001"  # Default
  timeout_seconds: 60                        # Default
  concurrency: 5                             # Default

prompts:
  - id: "default"
    prompt: "Generate an executive summary of the provided article."
  - id: "deep-dive"
    prompt: "Extract the nuanced arguments and counterpoints."

# Optional: when no targets are defined, this prompt is used for all unread entries
# If omitted, the first prompt in the list is used.
default_prompt_id: "default"

targets:
  # When targets are defined, only these feeds/categories are processed; overlaps across targets are errors.
  - prompt_id: "default"
    feed_ids: [1, 2]
  - prompt_id: "deep-dive"
    category_ids: [5]
    use_pure: true  # Prefer pure.md for this target

scraping:
  pure_api_token: "optional-pure-md-token"
  # Always route matching URLs through pure.md.
  pure_base_urls:
    - "https://text.npr.org/"
  timeout_seconds: 5  # Default

fetch:
  limit: 50     # Default

notifications:
  urls:                # Apprise notification URLs (optional)
    - "discord://webhook_id/webhook_token"
    - "telegram://bot_token/chat_id"

See Apprise documentation for all supported notification services.

Basic Commands

Run minigist to process unread entries:

minigist run

Run in dry-run mode to see what would happen without making changes:

minigist run --dry-run

Increase logging verbosity:

minigist run --log-level DEBUG

Use a different configuration file:

minigist run --config-file /path/to/config.yaml

Project details


Download files

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

Source Distribution

minigist-0.9.0.tar.gz (27.9 kB view details)

Uploaded Source

Built Distribution

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

minigist-0.9.0-py3-none-any.whl (26.6 kB view details)

Uploaded Python 3

File details

Details for the file minigist-0.9.0.tar.gz.

File metadata

  • Download URL: minigist-0.9.0.tar.gz
  • Upload date:
  • Size: 27.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for minigist-0.9.0.tar.gz
Algorithm Hash digest
SHA256 e363dfc0df571827c337280e3e3e0a4708a88cccbed2a7ce2b87caa3c194800c
MD5 4446c6ed4fe2e8676b258728814cd34c
BLAKE2b-256 d7955145cddccb89f2d03a2dbc8a6b820012cccb929edb3d4bec072b313edf5c

See more details on using hashes here.

File details

Details for the file minigist-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: minigist-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 26.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for minigist-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 875fad40b6f5448a5437f17fba623b67eeb51caad4f7fc601a25c0357d75326f
MD5 89e6a040e7ff45e78d1bbce5c3c4a6e2
BLAKE2b-256 507dbd8808957702a45f15a86ff7428cd00ee69720cda2b13b6156ceca580d6a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page