Skip to main content

A CLI tool to analyze academic papers and extract their core value

Project description

Paper Fluff Cutter

PyPI version

A CLI tool that cuts through academic paper fluff to extract what actually matters.

Most research has close to zero value. This tool uses multimodal LLMs to analyze papers and answer the three questions every paper should be able to answer:

  1. Why should I care? - What problem does this address and why does it matter?
  2. What's the actual innovation? - What's the core idea in plain terms?
  3. Is the evidence convincing? - Do the experiments actually support the claims?

Installation

pip install fluff-cutter

Requires Python 3.10+.

Development install

git clone https://github.com/weijianzhg/paper-fluff-cutter.git
cd paper-fluff-cutter
pip install -e .

Configuration

Option 1: Interactive setup (recommended)

fluff-cutter init

This will prompt you for your API keys, default provider, and model preferences, then save them to ~/.config/fluff-cutter/config.json.

Option 2: Environment variables

export OPENAI_API_KEY=sk-your-key-here
export ANTHROPIC_API_KEY=sk-ant-your-key-here
export FLUFF_CUTTER_PROVIDER=anthropic  # optional, default provider
export FLUFF_CUTTER_OPENAI_MODEL=gpt-5.2  # optional, override default model
export FLUFF_CUTTER_ANTHROPIC_MODEL=claude-sonnet-4-5  # optional, override default model

Usage

Basic usage

fluff-cutter analyze paper.pdf

Specify provider

fluff-cutter analyze paper.pdf --provider openai
fluff-cutter analyze paper.pdf --provider anthropic

Specify model

fluff-cutter analyze paper.pdf --provider openai --model gpt-5.2
fluff-cutter analyze paper.pdf --provider anthropic --model claude-sonnet-4-5

Save output to file

fluff-cutter analyze paper.pdf --output analysis.md

Long papers

For very long papers that exceed the model's token limit, you can limit the number of pages:

fluff-cutter analyze paper.pdf --max-pages 30

If you don't specify --max-pages and the paper exceeds the token limit, it will automatically truncate to the first 50 pages and retry.

Supported Providers

Provider Default Model Environment Variable
OpenAI gpt-5.2 OPENAI_API_KEY
Anthropic claude-sonnet-4-5 ANTHROPIC_API_KEY

Both providers now support native PDF input - no external dependencies like poppler needed.

Configuration Precedence

Configuration is loaded with the following precedence (highest to lowest):

  1. Command-line arguments (--provider, --model)
  2. Environment variables (FLUFF_CUTTER_PROVIDER, FLUFF_CUTTER_OPENAI_MODEL, FLUFF_CUTTER_ANTHROPIC_MODEL)
  3. Config file (~/.config/fluff-cutter/config.json)
  4. Provider defaults (gpt-5.2 for OpenAI, claude-sonnet-4-5 for Anthropic)

License

MIT

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

fluff_cutter-0.2.0.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

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

fluff_cutter-0.2.0-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file fluff_cutter-0.2.0.tar.gz.

File metadata

  • Download URL: fluff_cutter-0.2.0.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fluff_cutter-0.2.0.tar.gz
Algorithm Hash digest
SHA256 76bb046f6bc68a5d537f7a116ced84f0ad186a1bad69f348c392c48d5b486e73
MD5 7e8a2c834707aeb460a09c83aeab246b
BLAKE2b-256 95c05b4e766d096844841310c1d2da76ee3367549f9a4eed1a5c831bd320216b

See more details on using hashes here.

Provenance

The following attestation bundles were made for fluff_cutter-0.2.0.tar.gz:

Publisher: publish.yml on weijianzhg/paper-fluff-cutter

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

File details

Details for the file fluff_cutter-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: fluff_cutter-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fluff_cutter-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 03d1c957fdc9b5bd1d697e2900a1ee15c14f2554422e3a819316761b9ba3ad64
MD5 09a5dde7896512d1edd61f15ca657745
BLAKE2b-256 ab5a6c0d3a5d82e00099891a21a374f090828482d82209ba6f752bb2890054b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for fluff_cutter-0.2.0-py3-none-any.whl:

Publisher: publish.yml on weijianzhg/paper-fluff-cutter

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

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