Skip to content
Content
Skill

/claude-paper-study

Use this skill when the user wants to read, study, analyze, or deeply understand a research paper (PDF).

From plugin
claude-paper
3536 skills1 command

Claude Code

$ npx -y skills add alaliqing/claude-paper --skill claude-paper-study --agent claude-code

SKILL.md

claude-paper-study.SKILL.md
name: claude-paper-study
description: Use this skill when the user wants to read, study, analyze, or deeply understand a research paper (PDF).
allowed-tools: Bash, Write, Edit, Read

Cross-Agent Compatibility

> This file is generated from the existing Claude Paper Skill. Its workflow and output requirements are unchanged; only equivalent host metadata, the plugin-root variable, and cross-skill invocation are adapted.

Resolve `CLAUDE_PAPER_PLUGIN_ROOT` to the absolute `plugin/` directory in this package before each shell invocation. From this `SKILL.md`, that directory is `../../plugin`. Treat every `${CLAUDE_PAPER_PLUGIN_ROOT}` reference below as that resolved absolute directory. Do not substitute the current workspace root.

When this workflow asks to launch the viewer, load and follow the `claude-paper-webui` skill.

---

Paper Study Workflow

Invoke this skill with a paper PDF path.

**Language Detection**: Detect the user's language from their input and generate ALL materials in that language.

  • Example: User says "我们学习一下这篇论文吧" → Generate materials in Chinese
  • Example: User says "Let's study this paper" → Generate materials in English

---

Core Philosophy

Primary Objective: Facilitate deep conceptual understanding and research-level thinking.

Secondary Objective: Create a structured, reusable paper knowledge system.

This workflow is not just for summarizing — it builds a learning environment around the paper.

---

Step 0: Check Dependencies (First Run Only)

if [ ! -f "${CLAUDE_PAPER_PLUGIN_ROOT}/.installed" ]; then
  echo "First run - installing dependencies..."
  cd "${CLAUDE_PAPER_PLUGIN_ROOT}"
  npm install || exit 1

  # Install Python dependencies for image extraction
  python3 -m pip install pymupdf --user 2>/dev/null || pip3 install pymupdf --user 2>/dev/null || echo "Warning: Failed to install pymupdf"

  touch "${CLAUDE_PAPER_PLUGIN_ROOT}/.installed"
  echo "Dependencies installed!"
fi

Recommended:

  • Node >= 18
  • Python 3 with pip (for image extraction)

---

Step 1: Download and Parse PDF

Supports multiple input formats:

  • **Local path**: `~/Downloads/paper.pdf`
  • **Direct PDF URL**: `https://arxiv.org/pdf/1706.03762.pdf`
  • **arXiv URL**: `https://arxiv.org/abs/1706.03762`

Step 1a: Check input type and download if URL

USER_INPUT="<user-input>"

# Check if input is a URL (starts with http:// or https://)
if [[ "$USER_INPUT" =~ ^https?:// ]]; then
  # Download PDF from URL
  INPUT_PATH=$(node ${CLAUDE_PAPER_PLUGIN_ROOT}/skills/study/scripts/download-pdf.cjs "$USER_INPUT")
else
  # Use local path directly
  INPUT_PATH="$USER_INPUT"
fi

For URLs, the download script will:

  • Download PDFs to `/tmp/claude-paper-downloads/`
  • Convert arXiv `/abs/` URLs to PDF URLs automatically
  • Validate that URLs point to PDF files
  • Return the local file path for processing

For local paths, use the path directly without downloading.

Step 1b: Parse PDF

Extract structured information:

PARSE_OUTPUT_DIR=$(mktemp -d)
node ${CLAUDE_PAPER_PLUGIN_ROOT}/skills/study/scripts/parse-pdf.js \
  "$INPUT_PATH" \
  --output-dir "$PARSE_OUTPUT_DIR"

The command prints a small, strict JSON summary to stdout and writes:

  • `meta.json` — title, authors, abstract, links, page count, and a context-safe content preview
  • `paper.txt` — complete extracted text without the 50k preview limit

Use `paper.txt` as the source for generating materials. Search it and read relevant sections as needed; do not treat `meta.json.content` as the complete paper when `contentTruncated` is true.

After choosing `{paper-slug}`, create the paper directory and copy both parser artifacts plus the original PDF:

mkdir -p ~/claude-papers/papers/{paper-slug}
cp "<metaPath-from-parser-output>" ~/claude-papers/papers/{paper-slug}/meta.json
cp "<fullTextPath-from-parser-output>" ~/claude-papers/papers/{paper-slug}/paper.txt
cp "$INPUT_PATH" ~/claude-papers/papers/{paper-slug}/paper.pdf

Generate exactly 2 tags in Step 2.5 and add them to the saved `meta.json`.

Fallback: If structured parsing fails, extract raw text and continue with degraded structure.

---

Step 2: Assess Paper Before Generating Materials

Before generating any files, evaluate:

1. Difficulty Level

  • Beginner
  • Intermediate
  • Advanced
  • Highly Theoretical

2. Paper Nature

  • Theoretical
  • Architecture-based
  • Empirical-heavy
  • System design
  • Survey

3. Methodological Complexity

  • Simple pipeline
  • Multi-stage training
  • Novel architecture
  • Heavy mathematical derivation

This assessment determines:

  • Whether to create method.md
  • Whether to create .ipynb
  • Explanation depth
  • Code demo complexity

---

Step 2.5: Generate Exactly 2 Semantic Tags (Mandatory)

Before generating files, infer exactly 2 tags from semantic understanding of the paper.

Rules:

  • Generate exactly 2 tags, no more and no less
  • Tags must be distinct
  • Each tag should be short (1-3 words)
  • Avoid generic tags: `paper`, `research`, `ai`, `ml`
  • Prefer one tag for problem/domain and one for method/core idea

Examples:

  • `machine translation`, `self-attention`
  • `3d detection`, `bev transformer`
  • `protein folding`, `structure prediction`

Persist these 2 tags in both locations:

  • `~/claude-papers/papers/{paper-slug}/meta.json` as `tags`
  • `~/claude-papers/index.json` entry as `tags`

---

Step 3: Generate Core Study Materials

Create folder:

~/claude-papers/papers/{paper-slug}/

---

Required Files

README.md

  • What the paper is about (one paragraph)
  • Difficulty level
  • How to navigate materials
  • Key takeaways
  • Estimated study time
  • Folder structure overview

---

summary.md

  • Background context
  • Problem statement
  • Main contributions
  • Key results
  • Quantitative metrics

---

insights.md (Most Important)

  • Core idea explained plainly
  • Why this works
  • What conceptual shift it introduces
  • Trade-offs
  • Limitations
  • Comparison to prio
Read more
@alaliqing
Ships withclaude-paper

Transform research papers into comprehensive learning environments A research-paper learning plugin for Claude Code, Codex, OpenCode, and DeepSeek Harness.

Stars on GitHub

Momentum

stars in total
353
Star history of alaliqing/claude-paper on GitHub, a chart by star-history.com

Other skills on claude-paper.

study

study

Use this skill when the user wants to read, study, analyze, or deeply understand a research paper (PDF).

summary

summary

Use this for a quick summary of a research paper's core ideas and key points. Use when you want to quickly understand a paper…

More skills from other plugins.

prompt-lookup

prompt-lookup

Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use…

@gh-f@gh-fInstall Skill
ppt-master

ppt-master

AI-driven presentation workflow for generating editable PPTX decks and slides, reconstructing page visuals, creating reusable…

@hugohe3@hugohe3Install Skill
morph-ppt

morph-ppt

Use this skill when the user wants a .pptx with smooth cross-slide animation — PowerPoint Morph transitions, Keynote-style…

@iofficeai@iofficeaiInstall Skill

Questions about claude-paper-study.

Which coding agents can use claude-paper-study?
claude-paper-study installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.