Agent skill

Academic Paper Workflow

by sjqsgg in sjqsgg/Paperwise

Finds, annotates, cites and tracks academic papers through subcommands for searching, turning a PDF into an annotated webpage, and daily paper discovery.

MITAuto-check passedResearch & Science

Install Academic Paper Workflow

skills CLI
$ npx skills add sjqsgg/Paperwise --skill paper -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install sjqsgg/Paperwise paper --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
paper
GitHub stars
147
Token cost
~4.1k tokens
SKILL.md length
1,385 words
Files
7 (incl. references)
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

Finds, annotates, cites and tracks academic papers through subcommands for searching, turning a PDF into an annotated webpage, and daily paper discovery.

  • Works in 3 steps: context flag in command → Current directory's CLAUDE.md… → No context → use Mode B directly…
  • Searching for papers on a research topic and getting a ranked digest
  • SKILL.md covers Default Config, Subcommands, Context Resolution (in… and Data Sources, plus 7 more sections
  • Reaches doi.org and api.openalex.org

What it does

The /paper command covers four subcommands: find searches for papers and builds an HTML digest with the top results, read annotates a single PDF into a full dual-column HTML page, digest pulls new arXiv papers daily for a cron job, and cite generates APA and BibTeX citations from an existing annotation. Flags let you override the project context, switch to a question mode where discussion questions guide the annotation, change the output directory or language, restrict the search to arXiv or a configured venues list, or read local PDFs with no API calls at all.

Context comes from a --context flag, the current directory's CLAUDE.md, or a zero-config logic-analysis mode when neither is set. Its primary data source is OpenAlex, queried without an API key at up to ten requests per second, and after each search the skill keeps only the title, first author, year, citation count, venue name and DOI from the response, discarding everything else.

When your agent uses it

  • Searching for papers on a research topic and getting a ranked digest
  • Turning a downloaded PDF into an annotated, readable webpage
  • Generating an APA or BibTeX citation from an already-annotated paper

Example prompts

  • “Find papers on cognitive load in LLM interfaces and give me the top 5.”
  • “Annotate this attention-is-all-you-need PDF into a dual-column page.”
  • “Generate a BibTeX citation from my saved annotation of that transformer paper.”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. context flag in command
  2. Current directory's CLAUDE.md (auto-loaded by Claude Code)
  3. No context → use Mode B directly (zero-config, logic analysis mode)

What it can do on your machine

Read from SKILL.md and the folder at commit d865630. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are yaml).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • doi.org
    • api.openalex.org
    • api.semanticscholar.org
    • export.arxiv.org

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Academic Paper Workflow loads about 4.1k tokens when it runs, and up to ~4.9k if it reads all its reference files. Until then it costs about 50 tokens; SKILL.md has 1,385 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~50
When it runs · the whole SKILL.md, loaded when a task matches
~4.1k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~4.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from sjqsgg/Paperwise at commit d865630, republished under its MIT licence (© sjqsgg). 1,385 words, ~4,121 tokens.

Download SKILL.mdSave it as .claude/skills/paper/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.
name
paper
description
Academic paper workflow — find, read/annotate (HTML), daily digest, cite. Use when user invokes /paper, needs paper annotation, literature search, citation generation, or daily paper discovery.

/paper — Academic Paper Workflow

Default Config

Edit this section to customize for your project.

yaml
output_dir: "./papers"
# Obsidian vault users: set paper_output_dir in your project's CLAUDE.md
# Drive/OneDrive: use the appropriate MCP, then set path (e.g. "gdrive://My Drive/Papers")

venues: [CHI, ACL, EMNLP, NAACL, NeurIPS, ICML, ICLR, EDM, LAK, AIED, ITS, CSCW, SIGIR, CIKM]

keywords:
  - cognitive load
  - adaptive learning
  - intelligent tutoring
  - conversational learning
  - LLM tutoring
  - learning analytics
  - behavioral signals
  - educational dialogue

min_citations: 5      # /paper find: filter out papers with fewer citations
daily_max: 10         # /paper digest: max papers per run

annotation_lang: zh   # zh = Chinese annotations | en = English; override with --lang

openalex_email: ""    # Optional. Add email to join OpenAlex Polite Pool (higher rate limits).
semantic_scholar_api_key: ""  # Optional. Free key: semanticscholar.org/product/api

Override any config value in your project's CLAUDE.md using keys: paper_output_dir, paper_venues, paper_keywords, paper_annotation_lang.


Subcommands

CommandUsageDescription
find/paper find "cognitive load LLM"Search papers → Digest HTML with top N cards
read/paper read /path/to/file.pdfAnnotate a single PDF → full dual-column HTML
digest/paper digestDaily new papers from arxiv (used by cron)
cite/paper cite [[note-name]]Generate APA + BibTeX citation from existing annotation

Flags:

  • --context "ML课第3周" — override project context
  • --questions "Q1:... Q2:..." — switch to Question mode (Mode A)
  • --questions — interactive question mode (Claude asks you)
  • --output /path/ — override output directory for this run
  • --top N — return N results (default: 5 for find, daily_max for digest); also accepts bare number after query
  • --lang en — override annotation language for this run
  • --source arxiv — search only arxiv (latest preprints, no citation filter)
  • --source venues — search only papers from config venues list (citation-weighted ranking)
  • --local /path/ — read local PDFs from folder (no API calls); or --local a.pdf b.pdf for specific files

Flags can be written with or without --. Claude accepts natural language equivalents (e.g. top 5, source venues, local /path/, questions "...").


Context Resolution (in priority order)

  1. --context flag in command
  2. Current directory's CLAUDE.md (auto-loaded by Claude Code)
  3. No context → use Mode B directly (zero-config, logic analysis mode)

Data Sources

Primary: OpenAlex

Free, no API key required, 10 req/s rate limit.

https://api.openalex.org/works?search={query}
  &select=title,authorships,publication_year,cited_by_count,primary_location,doi
  &per-page=20
  [&mailto={openalex_email}  ← add if configured]

After fetching: immediately extract and keep only — title, first author, year, cited_by_count, venue name (primary_location.source.display_name), DOI. Discard all other fields from the response before further processing.

Secondary: Semantic Scholar (only if semantic_scholar_api_key is set)
https://api.semanticscholar.org/graph/v1/paper/search?query={topic}
  &fields=title,authors,year,citationCount,venue,externalIds&limit=20

Header: x-api-key: {semantic_scholar_api_key}

Tertiary: arxiv (fallback + digest source)
https://export.arxiv.org/api/query?search_query=(cat:cs.CL+OR+cat:cs.HC+OR+cat:cs.AI+OR+cat:cs.LG)
  +AND+({keywords})&sortBy=submittedDate&sortOrder=descending&max_results=30

Note: arxiv papers have no citation count. Label as preprint.

Rate Limit Handling

If a source returns 429: check Retry-After header → wait that many seconds. If no header: wait 2s → 5s → 10s (3 retries). After 3 failures → skip source, move to next in priority. Note which source was skipped in output.


Subcommand: find

  1. Parse flags: topic query, --top N (default: 5), --lang, --source (default: mixed), --local (path or file list)

    • --top N also accepts a bare number immediately after the query string (e.g. /paper find "query" 10 → top 10)
  2. Resolve source strategy:

    --source / flagAPI callsRanking formula
    (default, mixed)Single OpenAlex call sort=cited_by_count:desc; arxiv fallback if <3 results0.5 × relevance_rank + 0.3 × log(cited_by_count+1) + 0.2 × recency_score
    arxivarxiv API only (sortBy=submittedDate); no min_citations filter0.5 × relevance_rank + 0.5 × recency_score
    venuesSingle OpenAlex call; keep only papers where venue name matches any entry in config venues list (case-insensitive partial match on primary_location.source.display_name)0.5 × relevance_rank + 0.5 × log(cited_by_count+1)
    --local /path/ or --local a.pdf b.pdfNo API calls — read local PDFs onlyTake first --top N files (alphabetical order)

    --local and --source are mutually exclusive. If both are given, return an error.

  3. If --local flag present — execute local PDF steps instead of steps 3–6:

    1. Scan the given folder for all .pdf files, or use the explicitly listed files directly
    2. If file count > --top N, take first N (alphabetical order)
    3. For each PDF, extract: title, authors, year, abstract (first 300 words), conclusion paragraph (last 300 words)
    4. Generate a Digest Card per PDF (same 4-sentence format: 研究问题 / 核心方法 / 关键发现 / 相关性)
    5. Citation badge: fixed as 📄 Local PDF (no OpenAlex lookup)
    6. Card bottom link: /paper read /absolute/path/to/file.pdf 精读 (use absolute path)
    7. Save to: {output_dir}/FindResults/find-local-YYYY-MM-DD-HHmm-{folder-slug}.html
    8. Print summary and exit — skip steps 4–8 below

3b. Fetch papers (online mode):

  • Add &filter=cited_by_count:>{min_citations} for default/venues mode (skip for arxiv)
  • After fetch: immediately discard all fields except title, first author, year, cited_by_count, venue name, DOI
  • On any source failure → follow Rate Limit Handling
  1. Deduplicate against existing files:

    • Check {output_dir}/FindResults/ and {output_dir}/ root for [FirstAuthor-YYYY-slug].html
    • Mark existing papers as [已有], include in summary with their path, skip card generation
  2. Rank top N using the formula for the active source strategy

  3. Generate Digest HTML — a single self-contained HTML file containing N paper cards.

    Digest Card format (one card per paper):

    [Title] — [First Author] et al., [Year] — [Venue or arXiv]
    [Citation badge]  [Source tag]
    研究问题: [1 sentence — what problem does this paper solve?]
    核心方法: [1 sentence — what approach do they use?]
    关键发现: [1 sentence — what is the main result?]
    相关性:   [1 sentence — why this matters for your research, based on CLAUDE.md context]
    [DOI link if available] · → /paper read <doi_or_path> 精读
    • Citation badge uses tier logic from Paper Quality Bar section
    • Annotation language for cards follows annotation_lang config (or --lang flag)
    • HTML structure: simple cards layout, embed references/template.css in <style>
  4. Save Digest HTML to: {output_dir}/FindResults/find-YYYY-MM-DD-HHmm-{query-slug}.html

    • Create subdirectory automatically if it doesn't exist
  5. Print summary:

    Found N papers via {source}. Digest saved:
    → 30_Research/FindResults/find-2026-03-14-1430-cognitive-load-llm.html
    
    Papers included:
    - Jin-2025-llm-teachable-agent        [⭐ 47 citations · CHI]
    - Cai-2025-intrinsic-load             [📄 preprint · arXiv]
    - Klepsch-2017-two-types-icl          [已有 → 30_Research/FindResults/...]

Subcommand: read

  1. Read the PDF at provided path
  2. Extract: title, authors, year, venue/journal, abstract, full text
  3. Resolve mode:
    • No --questions → Mode B (logic analysis)
    • --questions "..." → Mode A (inline). Parse questions using these rules:
      • Strip optional Q1: / Q2: etc. prefixes (they are decorative, not required)
      • Split on: comma , / semicolon ; / newline / Q\d+ pattern boundaries
      • Extract up to 6 questions; if more are given, take first 6 and warn the user
      • Accept any of these formats:
        "Q1: 方法? Q2: 与 baseline 比较?"   ← Q-label + colon
        "方法?, 与 baseline 比较?"            ← comma-separated
        "方法?; 与 baseline 比较?"            ← semicolon-separated
    • --questions (no argument) → Mode A (interactive): Output exactly: 请输入你的阅读问题(每行一个,或逗号分隔,最多6个): Wait for user input, then parse using the same rules above, then proceed with Mode A
  4. Resolve annotation language: --lang flag > annotation_lang config
  5. Generate full dual-column HTML annotation (see HTML Template section)
    • Paper Quality Bar: omit (no citation data from local PDF unless found in text)
  6. Save to {output_dir}/[FirstAuthorLastName-YYYY-keyword].html
    • Write directly to path; do not ls the directory beforehand
  7. Output: file path + brief summary of key arguments found

Show full SKILL.md (525 more words)Show less

Subcommand: digest

  1. Check cache: if {output_dir}/PaperDigests/YYYY-MM-DD-digest.html exists today → skip fetch, output cached path
  2. Fetch arxiv: same URL as Data Sources section above
  3. Filter: keep top daily_max most relevant to config keywords (semantic match on title+abstract)
  4. Deduplicate: skip arxiv IDs seen in previous 7 days' digests
  5. Annotate: for each paper, run Mode B annotation (brief version); annotation language follows config
  6. Combine: all annotations → single HTML digest file; each paper has a compact Paper Quality Bar
  7. Save: {output_dir}/PaperDigests/YYYY-MM-DD-digest.html
  8. Update daily note: append to 10_Daily/YYYY-MM-DD.md:
    ## Paper Digest
    → [[30_Research/PaperDigests/YYYY-MM-DD-digest|Today's Paper Digest]] (N papers)

Subcommand: cite

  1. Parse note name from user input (e.g., [[Klepsch-2017-annotation]] or file path)
  2. Find HTML or MD file in {output_dir}/ or vault root
  3. Extract metadata: title, authors, year, venue, DOI/URL
  4. Output directly (no file saved):
    • APA 7th: Author, A., & Author, B. (Year). Title. *Venue*, *vol*(issue), pages. https://doi.org/...
    • BibTeX:
      bibtex
      @article{key,
        author = {...}, title = {...}, journal = {...}, year = {...}, doi = {...}
      }

HTML Annotation Template

Paper Quality Bar (find/digest only — between navbar and section-nav)

Shows: {source_icon} {source} | {venue} | {year} | {citation_badge} | {venue_type_tag}

Citation tiers:

ConditionBadgeCSS class
cited_by_count ≥ 100🔥 高引 N citationsbadge-high
20–99⭐ N citationsbadge-important
5–19✓ N citationsbadge-valid
< 5 or no data📄 Preprintbadge-preprint

Venue type tag: A* 会议 (top venues: CHI/NeurIPS/ACL/EMNLP/ICML/ICLR/SIGIR/CSCW) | 会议/期刊 (other config venues) | Workshop | Preprint

Source icon: 🔍 OpenAlex | 📚 Semantic Scholar | 📄 arXiv

CSS: see references/template.css (.quality-bar, .badge-*, .qb-* classes).


Mode B: Logic Analysis (Default)

Generate a complete, self-contained HTML file. CSS: embed references/template.css as <style> in <head>. Google Fonts: import Lora + IBM Plex Sans.

5-Color Highlight System:

ColorClassRepresents
🟡 Yellow #fef08athesisCore thesis / main claim
🔴 Red #fecacaconceptKey concepts / terminology
🔵 Blue #bfdbfeevidenceEmpirical evidence / data
🟢 Green #bbf7d0concessionConcessions / counterargument handling
🟣 Purple #e9d5ffmethodologyMethodology description

Document structure:

1. TOP NAVBAR
   - Paper title
   - Context label (or "General Reading" if none)
   - Color legend: 5 colored chips with dimension labels

2. PAPER QUALITY BAR (find/digest only — omit for /paper read)

3. STICKY SECTION NAV
   - Links: Abstract | Introduction | Related Work | Methods | Results | Discussion | Conclusion
   - Highlight active section on scroll

4. DUAL-COLUMN BODY — one <div class="paragraph-group"> per paragraph
   Left column — original text (ALWAYS IN ORIGINAL LANGUAGE — never translate):
     - Copy verbatim from PDF; annotation_lang ONLY controls the right column
     - Highlight key phrases: <mark class="thesis">...</mark> etc.
   Right column — annotation cards (language follows annotation_lang):
     [Colored left border matching paragraph's dominant highlight]
     ① 段落功能 / Paragraph Function:...
     ② 逻辑角色 / Logical Role:...
     ③ 论证技巧或潜在漏洞 / Rhetorical Technique or Logical Gap:...

5. BACK-TO-TOP BUTTON
   <button id="back-to-top" title="返回顶部">↑</button>
   <script>
     const btn = document.getElementById('back-to-top');
     window.addEventListener('scroll', () => { btn.style.display = window.scrollY > 300 ? 'flex' : 'none'; });
     btn.addEventListener('click', () => window.scrollTo({ top: 0, behavior: 'smooth' }));
   </script>

6. BOTTOM — Argument Structure Overview (language follows annotation_lang)
   zh labels: 问题 / 论点 / 证据 / 反驳处理 / 结论
   en labels: Problem / Argument / Evidence / Concession / Conclusion
   - Author's core claim (1 sentence)
   - 最强论证 / Strongest argument
   - 最弱论证 / Weakest argument
   - APA Citation (auto-formatted) + copy button:
     <button class="copy-btn" data-label="复制 APA" onclick="copyText(this, '{apa_string}')">复制 APA</button>
   - BibTeX block + copy button:
     <button class="copy-btn" data-label="复制 BibTeX" onclick="copyText(this, '{bibtex_string}')">复制 BibTeX</button>

   Add this script alongside the back-to-top script:
   <script>
   function copyText(btn, text) {
     navigator.clipboard.writeText(text);
     btn.textContent = '✓ 已复制'; btn.classList.add('copied');
     setTimeout(() => { btn.textContent = btn.dataset.label; btn.classList.remove('copied'); }, 1500);
   }
   </script>

Mode A: Question-Driven (triggered by --questions)

Same structure as Mode B, with these differences:

  • Color legend: per-question colors Q1–Q6 (cycling through a distinct palette)
  • Left highlights: <mark class="q1">, <mark class="q2">, etc.
  • Right annotation cards: labeled 【Q2 核心论点】 / [Q2 Core Argument]: ① Paragraph Function ② Argument Logic ③ Which question/layer this paragraph answers
  • Bottom: Q&A Worksheet (replaces Argument Structure Overview): One card per question — Core argument + Key evidence + Potential counter/limitation

CSS

All CSS is in references/template.css (adjacent to this SKILL.md). When generating any HTML output, embed the file contents as a <style> block in <head>. Only load when generating HTML — /paper cite does not need it.


Error Handling

  • PDF unreadable: output error with path, suggest checking permissions
  • No results from any source: output "No papers found — try broader keywords"
  • OpenAlex 429: retry with backoff (2s→5s→10s); after 3 failures fall back to arxiv
  • Semantic Scholar 429: retry with backoff; fall back to OpenAlex/arxiv
  • Missing output_dir: create directory automatically before saving
  • Malformed --questions: re-prompt user for correct format
  • Source fallback notice: always state which source(s) were used, e.g. "⚠️ OpenAlex unavailable — results from arXiv only (no citation counts)"

Notes for Open-Source Use

  1. Set output_dir in your project's CLAUDE.md:

    paper_output_dir: 30_Research
  2. Override keywords/venues/language:

    paper_venues: [CHI, AIED, EDM, LAK]
    paper_keywords: [your, topic, keywords]
    paper_annotation_lang: en
  3. Optional — OpenAlex Polite Pool (higher rate limits, no account needed):

    openalex_email: yourname@example.com
  4. Optional — Semantic Scholar secondary source (free key):

    semantic_scholar_api_key: your_key_here

© sjqsgg, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 6 other files (references) in the repository root of sjqsgg/Paperwise.

  • SKILL.md
  • .gitignore
  • Demo-cn.png
  • LICENSE
  • README.md
  • README.zh.md
  • references/template.css

Open the folder on GitHubat commit d865630

Compare with similar skills

Academic Paper Workflow next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Academic Paper Workflow compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Academic Paper Workflow this skillsjqsgg/Paperwise147—~4.1kAutomated safety check: PassMIT
Literature Reviewneflibata-feng/MyArxiv-Agent12620 repos~5.9kAutomated safety check: NotesMIT
Systematic Literature Review Builderbytedance/deer-flow84k2 repos~4.3kAutomated safety check: PassMIT
Paper Research on arXivXiaomiMiMo/MiMo-Code14k—~1.5kAutomated safety check: PassMIT
Literature Review AgentAr9av/PaperOrchestra6771 repos~5.2kAutomated safety check: PassCustom licence
Arxiv MCP Serverblazickjp/arxiv-mcp-server3.2k—~353Automated safety check: PassApache-2.0

Similar skills

  • Literature Review

    neflibata-feng/MyArxiv-Agent

    Conduct comprehensive, systematic literature reviews using multiple academic databases (PubMed, arXiv, bioRxiv, Semantic Scholar, etc.).

    126 GitHub starsUsed in 20 repos~5.9k tokens
    Research & ScienceAuto-check: notes
  • Searches arXiv across many papers on one topic, extracts each paper's methodology and findings in parallel, and synthesizes a cited literature review.

    84k GitHub starsUsed in 2 repos~4.3k tokens
    Research & ScienceAuto-check passed
  • Paper Research on arXiv

    XiaomiMiMo/MiMo-Code

    Searches arXiv, fetches metadata, generates BibTeX, downloads PDFs and finds citations and related papers using a bundled Python script.

    14k GitHub stars~1.5k tokensUpdated today
    Research & ScienceAuto-check passed
  • Literature Review Agent

    Ar9av/PaperOrchestra

    Step 3 of the PaperOrchestra pipeline (arXiv:2604.05018). An agent skill from Ar9av/PaperOrchestra.

    677 GitHub starsUsed in 1 repo~5.2k tokens
    Research & ScienceAuto-check passed
  • Arxiv MCP Server

    blazickjp/arxiv-mcp-server

    A skill your agent uses when finding, comparing, reading, or monitoring arXiv papers, including requests for abstracts, citation graphs, original LaTeX, section-level technical details, or…

    3.2k GitHub stars~353 tokensUpdated yesterday
    Research & ScienceAuto-check passed
  • Arxiv Paper Writer

    appautomaton/latex-arxiv-SKILL

    Write LaTeX ML/AI review articles for arXiv using the IEEEtran template and verified BibTeX citations.

    458 GitHub stars~2.3k tokensUpdated 26 days ago
    Research & ScienceAuto-check passed

Works with

Questions about Academic Paper Workflow

What does Academic Paper Workflow do?

Finds, annotates, cites and tracks academic papers through subcommands for searching, turning a PDF into an annotated webpage, and daily paper discovery. The /paper command covers four subcommands: find searches for papers and builds an HTML digest with the top results, read annotates a single PDF into a full dual-column HTML page, digest pulls new arXiv papers daily for a cron job, and cite generates APA and BibTeX citations from an existing annotation. Flags let you override the project context, switch to a question mode where discussion questions guide the annotation, change the output directory or language, restrict the search to arXiv or a configured venues list, or read local PDFs with no API calls at all.

When should I use Academic Paper Workflow?

Academic Paper Workflow fits situations like: searching for papers on a research topic and getting a ranked digest; turning a downloaded PDF into an annotated, readable webpage; generating an APA or BibTeX citation from an already-annotated paper.

How do I install Academic Paper Workflow in Claude Code?

Run `npx skills add sjqsgg/Paperwise --skill paper -a claude-code`. Or copy the skill folder (the sjqsgg/Paperwise repository) into .claude/skills/paper in your project. Claude Code loads it when a task matches its description.

How do I install Academic Paper Workflow in Codex?

Run `npx skills add sjqsgg/Paperwise --skill paper -a codex`. Or copy the skill folder (the sjqsgg/Paperwise repository) into .agents/skills/paper in your project. Codex loads it when a task matches its description.

Can I use Academic Paper Workflow in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add sjqsgg/Paperwise --skill paper -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/paper, .gemini/skills/paper, .github/skills/paper and .opencode/skills/paper in your project.

What does Academic Paper Workflow need to run?

SKILL.md names no scripts, command-line tools or credentials: Academic Paper Workflow is instructions for the agent only.

Does Academic Paper Workflow access the network?

SKILL.md names 4 domains. In commands or code: doi.org, api.openalex.org, api.semanticscholar.org and export.arxiv.org; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Academic Paper Workflow safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Academic Paper Workflow use?

Academic Paper Workflow is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Academic Paper Workflow use?

About 4.1k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 778 tokens, read only when the agent opens those files.

What are the alternatives to Academic Paper Workflow?

Skills that share tags, products or a category with Academic Paper Workflow: Literature Review (neflibata-feng/MyArxiv-Agent, 126 stars), Systematic Literature Review Builder (bytedance/deer-flow, 84k stars), Paper Research on arXiv (XiaomiMiMo/MiMo-Code, 14k stars) and Literature Review Agent (Ar9av/PaperOrchestra, 677 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Academic Paper Workflow?

sjqsgg (a GitHub user) maintains it in sjqsgg/Paperwise, which has 147 GitHub stars. The repository was last updated on March 15, 2026.

Source: sjqsgg/Paperwise on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.