Skip to main content

A CLI research agent for AI-related paper search, code discovery, PDF collection, and bilingual reports.

Project description

PaperPilot

A CLI AI literature search agent that follows a v1.0 research workflow:

Intake -> Protocol -> Search -> Corpus -> Screening -> Verification -> Synthesis -> Review -> Report

Quick Start

pip install -e .
PaperPilot

Command mode:

PaperPilot "LLM agent" --auto-confirm --max-papers 30 --since-year 2021
PaperPilot "RNA inverse folding sequence design" --github-filter required --mode apa --quality balanced
PaperPilot inspect runs/<task-id>
PaperPilot resume runs/<task-id>

LLM Config

Recommended:

PaperPilot config set --base-url https://api.deepseek.com --model deepseek-chat
PaperPilot config import ./api.json
PaperPilot config show
PaperPilot config list
PaperPilot config use deepseek

The config is stored at ~/.paperpilot/config.json with file mode 600 where supported. Running PaperPilot without an LLM config starts a setup wizard. The app requires a working LLM configuration before running searches. Inside the interactive shell, use /model to add, import, switch, test, or delete model profiles.

Priority:

  1. Environment variables: OPENAI_API_KEY, OPENAI_BASE_URL, OPENAI_MODEL
  2. User config: ~/.paperpilot/config.json
  3. Legacy project file: llmapi.txt

Without a working LLM config, PaperPilot will pause and ask you to configure one first.

Outputs

Each run writes:

  • task.json
  • state.json
  • manifest.json
  • query_understanding.md
  • plan.json
  • protocol.json
  • prompt_manifest.json
  • registries.json
  • events.jsonl
  • metadata.json
  • user_corpus_log.json
  • corpus.json
  • core_papers.json
  • adjacent_papers.json
  • excluded_papers.json
  • ranked_papers.json
  • verification.json
  • quality_gate.json
  • literature_matrix.json
  • synthesis.json
  • evidence_ledger.json
  • review_agent_findings.json
  • report.canonical.json
  • reflection.json
  • report.zh.md
  • report.en.md
  • report.zh.html
  • report.en.html
  • report.zh.pdf
  • report.en.pdf
  • download_log.json
  • pdfs/
  • fulltext/
  • paper_notes.json

The Chinese and English Markdown, HTML, and PDF reports are rendered from the same report.canonical.json, so paper lists and conclusions stay aligned.

Local corpus input is supported with --user-corpus <file-or-dir> for PDF, BibTeX, RIS, Markdown, and text files. User corpus entries are logged in user_corpus_log.json; skipped files include reasons instead of being silently dropped.

GitHub Filter

literature-agent "retrieval augmented generation" --auto-confirm --github-filter required
  • any: keep all papers and annotate code availability.
  • required: the final report view keeps papers with a detected public code link; the full screened corpus is still saved.
  • none: keep papers without detected public code links.

v1.0 Quality Layer

  • prompt_manifest.json records versioned prompt roles and required JSON keys.
  • registries.json records the built-in ToolRegistry and CapabilityRegistry.
  • events.jsonl records stage start/progress/completion events for inspection.
  • protocol.json records research question, inclusion/exclusion rules, sources, and negative keywords.
  • corpus.json stores every screened paper with core, adjacent, or exclude decisions.
  • verification.json records DOI, URL, PDF, and code confidence status.
  • quality_gate.json emits pass, retry, or needs_user_attention.
  • evidence_ledger.json maps report-level claims to paper citations or MATERIAL GAP.
  • review_agent_findings.json records SourceVerifier, RelevanceJudge, CitationCompliance, and Devil's Advocate checks.
  • literature_matrix.json and synthesis.json support APA-style reports with evidence limits and AI disclosure.
  • Reports include a real review narrative: field background, method families, representative paper summaries, method comparison, trends, and open questions.

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

paperpilot-1.1.0.tar.gz (68.0 kB view details)

Uploaded Source

Built Distribution

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

paperpilot-1.1.0-py3-none-any.whl (72.0 kB view details)

Uploaded Python 3

File details

Details for the file paperpilot-1.1.0.tar.gz.

File metadata

  • Download URL: paperpilot-1.1.0.tar.gz
  • Upload date:
  • Size: 68.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for paperpilot-1.1.0.tar.gz
Algorithm Hash digest
SHA256 b686f0716f16121715e94c494ec0cef5e801e3ab11d62868203eef0ffc13e0ea
MD5 3e214cc97491505104f43e55cf62e7f4
BLAKE2b-256 7b83bcd7cbfada244a720fc290a5275f91b86186ca794b4e16f7856e3f4b33d2

See more details on using hashes here.

File details

Details for the file paperpilot-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: paperpilot-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 72.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for paperpilot-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7f0174141fd86bf636e6fc2a3b498d342a26da1712c77312380cd89798944619
MD5 426c66ab36baf640803ace1a670238b7
BLAKE2b-256 2c29312347aee549f048bf0a91439605597d1b04c0d09e5142053a8af6bbfc38

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