Skip to content
Content
Skill

/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 without deep study materials. Triggers on PDF paths, arXiv URLs, or paper URLs.

From plugin
claude-paper
3596 skills1 command

Claude Code

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

SKILL.md

summary.SKILL.md
name: summary
description: 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 without deep study materials. Triggers on PDF paths, arXiv URLs, or paper URLs.
disable-model-invocation: false
allowed-tools: Bash, Write, Read

Quick Paper Summary Workflow

This skill generates a **concise summary** of a research paper's core ideas and key points.

**When to use:**

  • You want to quickly understand what a paper is about
  • You need the main contributions without deep technical details
  • You're screening papers to decide which to study in depth

**When NOT to use:**

  • You want comprehensive study materials (use `/claude-paper:study` instead)
  • You need code demonstrations
  • You want interactive visualizations

---

**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

---

Step 0: Check Dependencies (First Run Only)

if [ ! -f "${CLAUDE_PLUGIN_ROOT}/.installed" ]; then
  echo "First run - installing dependencies..."
  cd "${CLAUDE_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_PLUGIN_ROOT}/.installed"
  echo "Dependencies installed!"
fi

---

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_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

Step 1b: Parse PDF

Extract structured information:

PARSE_OUTPUT_DIR=$(mktemp -d)
node ${CLAUDE_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 the quick summary. Do not treat `meta.json.content` as the complete paper when `contentTruncated` is true.

---

Step 2: Generate Quick Summary

Create the paper folder:

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 **quick-summary.md** with the following structure:

# Quick Summary: [Paper Title]

## One Sentence
[One sentence that captures what the paper is about]

## Problem
[What problem does this paper solve? Why is it important?]

## Core Idea
[The key innovation explained in 2-3 sentences. What makes this paper novel?]

## Key Contributions
- [Contribution 1]
- [Contribution 2]
- [Contribution 3]
- [Contribution 4 if applicable]

## Main Results
| Metric | Value | Dataset/Benchmark |
|--------|-------|-------------------|
| [metric1] | [value] | [dataset] |
| [metric2] | [value] | [dataset] |

## Why It Matters
[Practical implications. How does this advance the field? What can we now do that we couldn't before?]

## Limitations
- [Limitation 1]
- [Limitation 2]

**Guidelines for each section:**

| Section | Length | Focus | |---------|--------|-------| | One Sentence | 1 sentence | High-level summary | | Problem | 2-3 sentences | Context and motivation | | Core Idea | 2-3 sentences | The main innovation | | Key Contributions | 3-5 bullets | What's new/novel | | Main Results | 1 table | Quantitative metrics from the paper | | Why It Matters | 2-3 sentences | Practical value | | Limitations | 2-3 bullets | What the paper doesn't solve |

**Total length:** ~300-500 words (excluding results table)

---

Step 3: Update Index

**CRITICAL**: Read existing index.json first, then append the new paper. Never overwrite the entire file.

If index.json does not exist, create:

{"papers": []}

Append new entry to the papers array:

{
  "id": "paper-slug",
  "title": "Paper Title",
  "slug": "paper-slug",
  "authors": ["Author 1", "Author 2"],
  "abstract": "Paper abstract...",
  "year": 2024,
  "date": "2024-01-01",
  "tags": ["quick-summary"],
  "githubLinks": ["https://github.com/..."],
  "codeLinks": ["https://..."]
}

**IMPORTANT**: The index.json file must be located at:

~/claude-papers/index.json

---

Step 4: Relaunch Web UI

Invoke:

/claude-paper:webui

---

Step 5: Present Summary to User

After generating the summary:

1. **Show the user the quick-summary.md content** - Display the full summary

2. **Offer next steps:**

  • "Would you like to study this paper in more depth? Use `/claude-paper:study` for comprehensive materials."
  • "Do you have questions about specific parts of the paper?"
  • "Would you like me to explain any section in more detail?"

3. **File location reminder:**

  • Summary saved to: `~/claude-papers/papers/{paper-slug}/quick-summary.md`
  • Web UI available at: `http://localhost:5815`

---

Example Output

# Quick Summ
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
359
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).

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 summary.

Which coding agents can use summary?
summary 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.