Fetches academic papers via legitimate sources and verifies file integrity.

Install

mkdir -p .claude/skills/paper-downloader && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/12830" && unzip -o skill.zip -d .claude/skills/paper-downloader && rm skill.zip

Installs to .claude/skills/paper-downloader

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

선별된 논문(DOI 리스트)의 PDF를 합법적 경로로 다운로드하는 스킬. Unpaywall(OA) → 기관 프록시(기관 라이선스) → 출판사 직접 링크 순으로 시도. 실패 항목은 manifest에 기록하고 사용자에게 수동 안내. 비공식·비합법 PDF mirror는 사용하지 않는다. 사용자가 "PDF 다운로드", "논문 받기", "전문 다운로드", "DOI 다운로드" 등을 쓸 때 트리거한다. 선별은 paper-screening, QA는 paper-quality-reviewer가 담당한다.
274 charsno explicit “when” triggerlonger than Claude Code's old 250-char listing cap (fine on current versions)
Advanced

Key capabilities

  • Attempt Unpaywall API for OA URLs
  • Use institutional proxy with DOI resolver if Unpaywall fails
  • Mark items as `manual_required` if both fail
  • Verify PDF integrity (file existence, size, magic bytes)
  • Record SHA256 hash and license information
  • Prioritize OA versions from Unpaywall

How it works

The skill takes DOIs from `paper-screening` output, attempts to download PDFs via Unpaywall and institutional proxies, verifies PDF integrity, and records download details or manual requirements.

Inputs & outputs

You give it
`screened_path` to `screened.json` from `paper-screening`, `pipeline_run_id`, `config.output_dir`, `config.pdf_subdir`, `config.user_email`, `config.use_institu
You get back
`downloads.json` with download status and metadata, `manual_guide.md` for manual downloads, `failed.json` for failed items

When to use paper-downloader

  • Download research papers
  • Verify PDF integrity
  • Fetch open access articles

About this skill

논문 PDF 다운로드 스킬 (paper-downloader)

0. 핵심 원칙 (반드시 준수)

금지

  • 비공식·비합법 PDF mirror 사용 금지: 저작권·기관 라이선스 위반
  • 공유 폴더 다운로드 금지: 개인 연구용으로만
  • 출판사 anti-bot 우회 금지: 캡챠 자동 풀이, IP rotation, headers 위조 금지
  • rate limit 위반 금지: polite pool 사용, email 헤더 포함

허용

  • Unpaywall API: OA 버전 자동 탐색
  • 기관 프록시: 기관 라이선스 범위 내
  • CrossRef: DOI → metadata·landing URL 조회
  • 사용자 supervised: 자동화 실패 시 수동 안내

1. 이 스킬이 하는 일

paper-screening 출력의 selected[*].doi를 받아:

  1. Unpaywall API로 OA URL 우선 시도
  2. 실패 시 기관 프록시 + DOI resolver
  3. 두 경로 모두 실패 시 manual_required로 표시
  4. 다운로드 성공 시 PDF 검증·SHA256·라이선스 정보 기록

2. 입출력 계약

입력 (필수 필드)

  • screened_path: paper-screening의 screened.json 경로
  • pipeline_run_id
  • config.output_dir, config.pdf_subdir
  • config.user_email (Unpaywall polite pool 필수)
  • config.use_institutional_proxy (bool)
  • config.max_per_run, config.rate_limit_qps, config.skip_if_exists

출력 (필수 산출물)

  • downloads.json: schema_version, stage=S4, policy, summary, items[*]
    • items[*]: wos_uid, doi, status, method, pdf_path, pdf_sha256, size_bytes, downloaded_at, source.{found,pdf_url,license,version,host_type}
  • manual_guide.md: 수동 다운로드 필요 항목 안내
  • failed.json: 다운로드 실패 항목

status enum

  • ok | manual_required | skipped_existing | failed

method enum

  • unpaywall | institutional_proxy | manual

3. 다운로드 검증 (PDF 무결성)

  • 파일 존재 + 최소 크기(min_size_kb=30) 검사
  • magic bytes %PDF 확인 (HTML 위장 차단)
  • SHA256 해시 기록
  • 검증 실패 시 파일 삭제 후 manual_required로 표시

4. OA 우선순위 (Unpaywall)

  1. host_type=publisher + version=publishedVersion → 최선
  2. host_type=repository + publishedVersion → 차선
  3. acceptedVersion → 가능
  4. submittedVersion (preprint) → 인용 시 주의

5. 의존성

pip install requests pypdf playwright
playwright install chromium

6. 주의사항

  • Unpaywall rate limit: polite pool 100,000 req/day, email 헤더 필수
  • PDF 검증 실패: HTML 받음 → manual_required, 너무 작음 → 폐기
  • 라이선스: cc-by 또는 publisher host_type → 안전, submittedVersion → 인용 주의
  • 중복 처리: skip_if_exists=true 기본
  • 개인정보: email은 매니페스트에만, 로그는 마스킹

7. 다음 단계 연계

  • 입력: paper-screening의 screened.json
  • 출력: paper-quality-reviewer가 status=ok PDF만 QA
  • vault 통합: 사용자 검토 후 수동

8. 상세 예시·코드

본 섹션의 입력 예시·전략별 코드(Unpaywall, 기관 프록시, 수동 안내)·메인 워크플로우· 출력 예시(downloads.json, manual_guide.md, 파일 구조)는 docs/appendix/paper-downloader-strategies.md 참조.

When not to use it

  • When using unofficial or illegal PDF mirrors
  • When downloading to shared folders
  • When attempting to bypass publisher anti-bot measures

Limitations

  • Prohibits unofficial or illegal PDF mirror usage
  • Prohibits sharing folder downloads
  • Prohibits bypassing publisher anti-bot measures

How it compares

This skill automates the legal and verified downloading of research papers, prioritizing open access and institutional licenses, unlike manual searching and downloading which may lead to copyright violations.

Compared to similar skills

paper-downloader side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
paper-downloader (this skill)03moReviewAdvanced
firecrawl-scrape57moReviewBeginner
call-prep36moNo flagsBeginner
adaptyv77moCautionAdvanced

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

firecrawl-scrape

parcadei

Scrape web pages and extract content via Firecrawl MCP

536

call-prep

anthropics

Prepare for a sales call with account context, attendee research, and suggested agenda. Works standalone with user input and web research, supercharged when you connect your CRM, email, chat, or transcripts. Trigger with "prep me for my call with [company]", "I'm meeting with [company] prep me", "call prep [company]", or "get me ready for [meeting]".

320

adaptyv

davila7

Cloud laboratory platform for automated protein testing and validation. Use when designing proteins and needing experimental validation including binding assays, expression testing, thermostability measurements, enzyme activity assays, or protein sequence optimization. Also use for submitting experiments via API, tracking experiment status, downloading results, optimizing protein sequences for better expression using computational tools (NetSolP, SoluProt, SolubleMPNN, ESM), or managing protein design workflows with wet-lab validation.

79

universal-learner

huangserva

通用学习器 - 从任何领域的Prompt中自动提取可复用元素,持续学习和积累知识

25

youtube-collector

greatSumini

유튜브 채널을 등록하고 새 컨텐츠를 수집하여 자막 기반 요약을 생성하는 skill. 사용자가 (1) 유튜브 채널 등록/관리를 요청하거나, (2) 등록된 채널의 새 영상 수집을 요청하거나, (3) 유튜브 영상 요약을 요청할 때 사용. 데이터는 .reference/ 폴더에 YAML 형식으로 저장됨.

16

batch-research

miantiao-me

批量数据采集技能,负责分批并发调度 researcher agent 抓取所有数据源。

10

Search skills

Search the agent skills registry