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.0.3.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.0.3-py3-none-any.whl (72.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: paperpilot-1.0.3.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.0.3.tar.gz
Algorithm Hash digest
SHA256 901a895fac6f3b812fb6a9e1ac9e214c4ce46e5158d0ffc2787eb69099ca7e6d
MD5 9e532f17b7f7126721a3e861ad14d67a
BLAKE2b-256 929743ded9b03f9c8f600c7e690aa23aef2bb2e57765a800e6e1ae6245d9561e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: paperpilot-1.0.3-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.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1c8440b5db462b351739a871a8143ad84e84e52c0a1e989db3199eafeb91076a
MD5 e48c05e036419702789ff19f02d636e5
BLAKE2b-256 3c6ebc0a819db660a472dde3ef520348d51485ebc56fab3e6d4dbc02857ce320

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