A CLI tool to analyze academic papers and extract their core value
Project description
Paper Fluff Cutter
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:
- Why should I care? - What problem does this address and why does it matter?
- What's the actual innovation? - What's the core idea in plain terms?
- Is the evidence convincing? - Do the experiments actually support the claims?
Installation
Prerequisites
- Python 3.10+
Install the tool
pip install -e .
Configuration
Option 1: Interactive setup (recommended)
fluff-cutter init
This will prompt you for your API keys and 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
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-4o
fluff-cutter analyze paper.pdf --provider anthropic --model claude-sonnet-4-20250514
Save output to file
fluff-cutter analyze paper.pdf --output analysis.md
Supported Providers
| Provider | Default Model | Environment Variable |
|---|---|---|
| OpenAI | gpt-4o | OPENAI_API_KEY |
| Anthropic | claude-sonnet-4-20250514 | 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):
- Command-line arguments (
--provider,--model) - Environment variables
- Config file (
~/.config/fluff-cutter/config.json)
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fluff_cutter-0.1.0.tar.gz.
File metadata
- Download URL: fluff_cutter-0.1.0.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3510e8e0417147c5f833ca4d154cd4863d09699b7feb9271e6500cadc3b42bc3
|
|
| MD5 |
ba9b77159078c97e9e68b88da28bd126
|
|
| BLAKE2b-256 |
ed75c4a2aec3f01e5b9044be0da22446a8fc67d941579f380290fb626ea3ee34
|
Provenance
The following attestation bundles were made for fluff_cutter-0.1.0.tar.gz:
Publisher:
publish.yml on weijianzhg/paper-fluff-cutter
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fluff_cutter-0.1.0.tar.gz -
Subject digest:
3510e8e0417147c5f833ca4d154cd4863d09699b7feb9271e6500cadc3b42bc3 - Sigstore transparency entry: 909223678
- Sigstore integration time:
-
Permalink:
weijianzhg/paper-fluff-cutter@38277bc26c9d3e25edb6e350280426b4eeb2fedd -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/weijianzhg
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@38277bc26c9d3e25edb6e350280426b4eeb2fedd -
Trigger Event:
push
-
Statement type:
File details
Details for the file fluff_cutter-0.1.0-py3-none-any.whl.
File metadata
- Download URL: fluff_cutter-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
304cf3826c36f768d65b38febf657a36b6344b14e4088e0f81da798e19019162
|
|
| MD5 |
76604b2ac3f75424ada793feeac5d7dc
|
|
| BLAKE2b-256 |
0765a257473d68cbbe4b996563544a29a600d68bea14f0cfcc92a8644e49a680
|
Provenance
The following attestation bundles were made for fluff_cutter-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on weijianzhg/paper-fluff-cutter
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fluff_cutter-0.1.0-py3-none-any.whl -
Subject digest:
304cf3826c36f768d65b38febf657a36b6344b14e4088e0f81da798e19019162 - Sigstore transparency entry: 909223683
- Sigstore integration time:
-
Permalink:
weijianzhg/paper-fluff-cutter@38277bc26c9d3e25edb6e350280426b4eeb2fedd -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/weijianzhg
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@38277bc26c9d3e25edb6e350280426b4eeb2fedd -
Trigger Event:
push
-
Statement type: