Skip to main content

Terminal PDF analyzer with Groq-powered answers, vector search, and optional web search.

Project description

Paner Cli

Paner Cli

Features

  • Fast ingestion: Drag-and-drop or paste a PDF path to index it. All chunking and embedding happens locally with SentenceTransformer("all-MiniLM-L6-v2").
  • Multi-document focus: Load as many PDFs as you need, list them with list, and scope queries with use <id|name|all>.
  • Rich answers: Responses preserve Markdown formatting and cite the source file/page in each chunk.
  • Smart fallbacks: If a question can’t be answered from your docs, Paner offers to run a DuckDuckGo search and summarizes the best hits.
  • Secure API handling: Groq API keys are validated and stored in your platform-specific config directory.

Requirements

  • Python 3.11+
  • Groq API key (starts with gsk_…)
  • Internet access for Groq, initial model downloads, and optional web search

Installation

Paner is published as a standard Python package, so you can install it via pip/pipx/uv once the wheel/sdist is available:

pip install paner-cli 

For local development clone the repo and install in editable mode:

git clone https://github.com/wiseman-umanah/paner.git
cd paner
pip install -e .

Getting Started

  1. Run the CLI:
    paner
    
  2. On first launch Paner prompts for your Groq API key. It validates the key and stores it under platformdirs.user_config_dir("paner", "wiseman-umanah").
  3. When you see paner>>>, paste a PDF path (drag-and-drop works in most terminals). Paner will parse and index the document.
  4. Ask questions in natural language. Answers reference the matched PDF chunks and respect the currently active document.

Session Commands

Command Description
list Show every PDF loaded this session with an index, path, and active status.
use <n> Focus questions on document n from the list output.
use <name> Focus by file name (case-insensitive).
use all Query across every ingested PDF.
quit / exit Leave the CLI.

The prompt automatically updates to paner[filename]>>> when a specific document is active.

Web Search Fallback

If a question can’t be answered locally Paner displays a Rich confirmation prompt:

I couldn't find this in your documents. Search the web? (y/N)
  • Accept (y) to run a DuckDuckGo query and summarize the top results.
  • Decline (n) to keep the conversation offline.

Make sure the duckduckgo-search dependency is installed (it ships with Paner) and that your environment permits outbound requests.

Development

Useful tasks while hacking on Paner:

  • Lint / format: configure ruff or black as desired.
  • Run the CLI against sample PDFs to exercise chunking, vector search, and the Groq integration.
  • Update pyproject.toml whenever dependencies or metadata change.

See CONTRIBUTING.md for the full contribution workflow and pull-request expectations.

License

MIT License. See the LICENSE section in pyproject.toml for details. Feel free to adapt Paner for your own workflows.

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

paner_cli-0.1.0.tar.gz (2.6 kB view details)

Uploaded Source

Built Distribution

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

paner_cli-0.1.0-py3-none-any.whl (3.4 kB view details)

Uploaded Python 3

File details

Details for the file paner_cli-0.1.0.tar.gz.

File metadata

  • Download URL: paner_cli-0.1.0.tar.gz
  • Upload date:
  • Size: 2.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.5

File hashes

Hashes for paner_cli-0.1.0.tar.gz
Algorithm Hash digest
SHA256 3729580ad4650d1d0dfac5ea7c2414c2a4bda7749f889b7a6cd509e1f45a77ac
MD5 ac9614eed34586b864afbe398017eb79
BLAKE2b-256 1997675d93c5da37d13d1647d654a17fa28872d52e554c176e091d3de711107d

See more details on using hashes here.

File details

Details for the file paner_cli-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: paner_cli-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.5

File hashes

Hashes for paner_cli-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7e3f6e835ee93cfd9fa265f29c30ef99c6725bc325bf33ee4c69513e793a3484
MD5 84560789be7682b69dc2e21573e4b24c
BLAKE2b-256 7493f210af05a8d8d386edb5d16d9b983036a787b89081957f41feaed9206723

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