Agent skill

Sci Figure

by ShZhao27208 in ShZhao27208/Aut_Sci_Write

Extracts figures and sub-figures from academic PDF papers. An agent skill from ShZhao27208/Aut_Sci_Write.

AGPL-3.0-or-laterAuto-check passedDocuments & Office

Install Sci Figure

skills CLI
$ npx skills add ShZhao27208/Aut_Sci_Write --skill sci-figure -a claude-code

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

GitHub CLI
$ gh skill install ShZhao27208/Aut_Sci_Write sci-figure --agent claude-code

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

Manual copy
$ git clone --depth 1 https://github.com/ShZhao27208/Aut_Sci_Write.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/sci-figure .claude/skills/sci-figure && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

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

Facts

Skill name
sci-figure
GitHub stars
209
Token cost
~1.6k tokens
SKILL.md length
514 words
Files
32 (incl. scripts)
Skills in repo
9
Repo updated
First seen
Licence
AGPL-3.0-or-later

At a glance

Extracts figures and sub-figures from academic PDF papers. An agent skill from ShZhao27208/Aut_Sci_Write.

  • User asks to extract figure
  • SKILL.md covers Installation, Preferences (EXTEND.md), Usage and Options, plus 7 more sections
  • Runs Python scripts from its folder; calls pip, winget and apt
  • Get figure from paper

What it does

Sci Figure is an agent skill from ShZhao27208/Aut_Sci_Write. Extracts figures and sub-figures from academic PDF papers. Supports Fig/Figure, Scheme, Chart, Supplementary Figure, Extended Data Figure (Nature), and Chinese equivalents (图/方案/示意图/附图/补充图). Sub-figure label recognition supports (a)/(A)/a)/(i)/(1)/a. formats. High-quality PNG output at configurable DPI. Use when user asks to "extract figure", "截取文献图片", "提取子图", "get figure from paper", "Scheme", "方案图", "补充图", "Supplementary Figure", or "Extended Data".

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 33 other files, including scripts (for example `CHANGELOG.md`, `README.md` and `README_CN.md`).

It sits in Documents & Office, covering PDF. The repository describes itself as: Academic research skills suite for AI Agent — literature search/download (WoS+Elsevier+Springer), PDF extraction, figure cropping, review writing, Zotero sync, and PPT/Html… The licence is AGPL-3.0-or-later.

When your agent uses it

  • User asks to extract figure
  • Get figure from paper
  • Supplementary Figure

Example prompts

  • “extract figure”
  • “截取文献图片”
  • “get figure from paper”
  • “/sci-figure”

Requirements

  • Python 3

What it can do on your machine

Read from SKILL.md and the folder at commit 357766f. 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

    Ships 1 file in scripts/ (Python, from the files we listed), which the agent can run.

    Shell commands in SKILL.md call:

    • pip
    • winget
    • apt
    • brew

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

  • Network

    Links to these hosts (documentation or services it may open):

    • pymupdf.readthedocs.io

    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

Sci Figure loads about 1.6k tokens when it runs. Until then it costs about 117 tokens; SKILL.md has 514 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~117
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

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); the scripts in this folder are not scanned.

SKILL.md

The full file from ShZhao27208/Aut_Sci_Write at commit 357766f, republished under its AGPL-3.0-or-later licence (© ShZhao27208). 514 words, ~1,627 tokens.

Download SKILL.mdSave it as .claude/skills/sci-figure/SKILL.md (or your agent's skills folder). This skill also uses 31 other files; get the full folder from GitHub.
name
sci-figure
description
Extracts figures and sub-figures from academic PDF papers. Supports Fig/Figure, Scheme, Chart, Supplementary Figure, Extended Data Figure (Nature), and Chinese equivalents (图/方案/示意图/附图/补充图). Sub-figure label recognition supports (a)/(A)/a)/(i)/(1)/a. formats. High-quality PNG output at configurable DPI. Use when user asks to "extract figure", "截取文献图片", "提取子图", "get figure from paper", "Scheme", "方案图", "补充图", "Supplementary Figure", or "Extended Data".
author
Shuo Zhao
license
AGPL-3.0-or-later
copyright
© 2026 Shuo Zhao. All rights reserved.
triggers
提取图片, 截取文献图片, 提取子图, 提取附图, 补充图, 方案图, 示意图, 图片提取, extract figure, extract subfigure, get figure from paper, Supplementary Figure, Extended Data, Scheme, figure…

Sci-Figure — Scientific Figure Extractor

Precisely extract figures and sub-figures from academic PDF papers.

License note: sci-figure is licensed under AGPL-3.0-or-later because it links PyMuPDF (fitz), which is AGPL-licensed.

Installation

Install the package from the skill directory before first use:

bash
cd ${SKILL_DIR}
pip install -e .

This registers the sh-sci-fig CLI command. Requires Tesseract OCR:

  • Windows: winget install UB-Mannheim.TesseractOCR
  • Linux: apt install tesseract-ocr
  • macOS: brew install tesseract

Preferences (EXTEND.md)

Use Bash to check EXTEND.md existence (priority order):

bash
# Check project-level first
test -f .baoyu-skills/sci-figure/EXTEND.md && echo "project"

# Then user-level (cross-platform: $HOME works on macOS/Linux/WSL)
test -f "$HOME/.baoyu-skills/sci-figure/EXTEND.md" && echo "user"

EXTEND.md Supports: Default DPI | Default output format | Tesseract path

Usage

bash
sh-sci-fig <input.pdf> [options]

Options

OptionShortDescriptionDefault
<input>PDF file pathRequired
--figure-fFigure number (1, 2, 3...)Required (except --list/--all)
--subfigure-sSub-figure label (a, b, c...)None (returns whole figure)
--output-oOutput directoryCurrent directory
--dpi-dOutput resolution600
--list-lList all available figure numbersfalse
--allExtract all figuresfalse
--formatOutput format (png/jpg)png
--strategyExtraction strategy: hybrid/native/cvhybrid
--ocrOCR engine: tesseract/easyocr/nonetesseract
--render-pageRender full page with annotationsfalse
--annotateDraw bounding boxes on rendered pagefalse
--bboxManual bbox override (x0,y0,x1,y1 in px)None
--no-trimDisable whitespace trimmingfalse
--debugEnable debug loggingfalse
--quiet-qSuppress info messagesfalse

Examples

bash
# Extract Figure 2, sub-figure c
sh-sci-fig paper.pdf -f 2 -s c

# Extract entire Figure 3
sh-sci-fig paper.pdf -f 3

# List all available figures in a PDF
sh-sci-fig paper.pdf --list

# Extract all figures
sh-sci-fig paper.pdf --all

# Custom output directory and DPI
sh-sci-fig paper.pdf -f 2 -s c -o ./output/ -d 300

# Use EasyOCR for sub-figure label detection
sh-sci-fig paper.pdf --all --ocr easyocr

# CV-only strategy (skip native extraction)
sh-sci-fig paper.pdf --all --strategy cv

# Render page with annotated bounding boxes (debugging)
sh-sci-fig paper.pdf -f 1 --render-page --annotate

# Manual bbox extraction (multimodal correction)
sh-sci-fig paper.pdf -f 1 --bbox 100,200,800,1200

Output:

Extracted: figure_2c.png (1920x1080, 600 DPI)

Error Handling

ScenarioBehavior
Figure number not foundError + list all available figure numbers
OCR recognition failedReturn entire figure region
Sub-figure split failedReturn entire figure region
No sub-figure labels foundReturn entire figure region

Tech Stack

LibraryRole
pdfplumberText + coordinate extraction (caption detection)
PyMuPDF (fitz)Native image extraction + high-quality page rendering
opencv-pythonCV region detection, connected-component analysis, content validation
PillowFinal cropping, format conversion
pytesseractOCR for sub-figure label recognition (default)
easyocrAlternative OCR engine (optional, pip install sci-figure[ocr])
numpyImage array operations

Extraction Engines (v2)

EnginePriorityBest For
Native (PyMuPDF)1stRaster images embedded in PDF
CV (connected-component)2ndVector graphics, colored plots
Caption-anchored3rdFallback when above engines fail

The hybrid strategy (default) tries all three in order and validates results.

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

Detected Figure Fields

Each figure returned by FigureExtractor.detect_all() is a dict with these keys:

FieldTypeDescription
numberintFigure number
pageintPage index (0-based)
bbox_pdftupleCrop region in PDF points (x0, y0, x1, y1)
bbox_pxtupleCrop region in pixels (x0, y0, x1, y1)
caption_textstrFull caption text
figure_typestrOne of: figure, scheme, chart, supplementary, extended_data
sublabelslist[str]Sub-figure labels, e.g. ["a","b","c"]
imagendarrayCropped figure image (numpy array)
engine_usedstrEngine that produced the crop: native, cv, or fallback

list_figures() returns the same dicts without the image field.

Extension Support

Custom configurations via EXTEND.md. See Preferences section for paths and supported options.


Aut_Sci_Write — Autonomous Scientific Writer

  • Author: Shuo Zhao
  • License: MIT License
  • Copyright: © 2026 Shuo Zhao. All rights reserved.
  • Original Work: This is an original work created by the author. No reproduction, redistribution, or commercial use without explicit permission. Permission is hereby granted, free of charge, to any person obtaining a copy of this software... (See the LICENSE file in the root directory for the full MIT terms.)

This skill is part of the Aut_Sci_Write suite. For full license terms, see the LICENSE file in the project root.

© ShZhao27208, AGPL-3.0-or-later. 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 31 other files (scripts) in skills/sci-figure of ShZhao27208/Aut_Sci_Write.

  • SKILL.md
  • CHANGELOG.md
  • LICENSE
  • README.md
  • README_CN.md
  • _meta.json
  • requirements.txt
  • sci_figure.egg-info/PKG-INFO
  • sci_figure.egg-info/SOURCES.txt
  • sci_figure.egg-info/dependency_links.txt
  • sci_figure.egg-info/entry_points.txt
  • sci_figure.egg-info/requires.txt
  • sci_figure.egg-info/top_level.txt
  • sci_figure/__init__.py
  • sci_figure/annotator.py
  • sci_figure/caption_detector.py
  • sci_figure/cli.py
  • sci_figure/column_detector.py
  • sci_figure/exceptions.py
  • … and 13 more

Open the folder on GitHubat commit 357766f

Compare with similar skills

Sci Figure 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.

Sci Figure compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Sci Figure this skillShZhao27208/Aut_Sci_Write209—~1.6kAutomated safety check: PassAGPL-3.0-or-later
Paper Interpretationdigoal/blog8.6k—~1.5kAutomated safety check: PassGPL-2.0
Paper2htmlcnfjlhj/ai-collab-playbook454—~2.4kAutomated safety check: PassNone
Paper LensYSQ-boop/paper-lens101—~1.3kAutomated safety check: PassApache-2.0
Paper Auditbahayonghang/academic-writing-skills500—~5.1kAutomated safety check: PassNone
Paper ReviewRapidAI/MaClaw148—~1kAutomated safety check: PassMIT

Similar skills

  • 从论文 PDF 文件或论文 PDF URL 生成通俗易懂、图文并茂、带批判性评估的中文 Markdown 解读,并保存到当前项目的 markdown 目录。Use when the user asks to interpret,精读,解读,summarize,explain,analyze, or write an article from an academic paper PDF…

    8.6k GitHub stars~1.5k tokensUpdated 2 days ago
    Documents & OfficeAuto-check passed
  • Paper2html

    cnfjlhj/ai-collab-playbook

    A skill your agent uses when turning an academic paper PDF/arXiv/OpenReview page/local LaTeX source into a single-file Chinese HTML deep-reading page, especially when the user wants a Cheat-Sheet…

    454 GitHub stars~2.4k tokensUpdated 26 days ago
    Documents & OfficeAuto-check passed
  • Paper Lens

    YSQ-boop/paper-lens

    Read and critically analyze one academic paper from an arXiv URL/ID or a local PDF, producing a source-grounded Markdown report that can grow from a quick read into a reviewer-level deep review.

    101 GitHub stars~1.3k tokensUpdated 12 days ago
    Documents & OfficeAuto-check passed
  • Paper Audit

    bahayonghang/academic-writing-skills

    Reviewer-style audit and submission gate for academic papers in .tex, .typ, or .pdf.

    500 GitHub stars~5.1k tokensUpdated 13 days ago
    Documents & OfficeAuto-check passed
  • Paper Review

    RapidAI/MaClaw

    论文深度解读 Skill — 下载论文PDF → LLM深度解读(问题/创新点/方法原理/实验分析)→ PDF图片提取 → 生成组会PPT → 生成解读音频MP3。端到端学术论文解读工具。

    148 GitHub stars~1k tokensUpdated today
    Documents & OfficeAuto-check passed
  • Ma Fulltext Management

    htlin222/meta-pipe

    Collect and manage full-text PDFs for included studies, track provenance, and prepare documents for extraction.

    139 GitHub stars~1.7k tokensUpdated 18 days ago
    Documents & OfficeAuto-check: notes

More from ShZhao27208/Aut_Sci_Write

All 9 skills in this repo
  • Sci Polish

    ShZhao27208/Aut_Sci_Write

    Two-stage academic paper polishing skill. An agent skill from ShZhao27208/Aut_Sci_Write.

    209 GitHub stars~2.1k tokensUpdated 1 mo ago
    Auto-check passed
  • Sci Review

    ShZhao27208/Aut_Sci_Write

    Specialized workflows for drafting, refining, and responding to academic literature reviews and peer review feedback.

    209 GitHub stars~673 tokensUpdated 1 mo ago
    Auto-check passed
  • Sci HTML

    ShZhao27208/Aut_Sci_Write

    Generate academic presentation-style HTML slide decks and browser reports from PDFs, structured text, Markdown, paper summaries, outlines, or research notes.

    209 GitHub stars~1.4k tokensUpdated 1 mo ago
    Auto-check: notes
  • Sci Ppt

    ShZhao27208/Aut_Sci_Write

    Generate professional academic PowerPoint (PPTX) presentations from paper PDFs, structured outlines, or plain text.

    209 GitHub stars~757 tokensUpdated 1 mo ago
    Auto-check passed
  • Sci Search

    ShZhao27208/Aut_Sci_Write

    Academic paper search and metrics analysis. An agent skill from ShZhao27208/Aut_Sci_Write.

    209 GitHub stars~1.7k tokensUpdated 1 mo ago
    Auto-check: notes
  • Sci Extract

    ShZhao27208/Aut_Sci_Write

    Read an academic paper end to end and extract professional research insights, figures, metadata, and critique.

    209 GitHub stars~5.8k tokensUpdated 1 mo ago
    Auto-check: notes

Questions about Sci Figure

What does Sci Figure do?

Extracts figures and sub-figures from academic PDF papers. An agent skill from ShZhao27208/Aut_Sci_Write. Sci Figure is an agent skill from ShZhao27208/Aut_Sci_Write. Extracts figures and sub-figures from academic PDF papers.

When should I use Sci Figure?

Sci Figure fits situations like: user asks to extract figure; get figure from paper; supplementary Figure.

How do I install Sci Figure in Claude Code?

Run `npx skills add ShZhao27208/Aut_Sci_Write --skill sci-figure -a claude-code`. Or copy the skill folder (skills/sci-figure in ShZhao27208/Aut_Sci_Write) into .claude/skills/sci-figure in your project. Claude Code loads it when a task matches its description.

How do I install Sci Figure in Codex?

Run `npx skills add ShZhao27208/Aut_Sci_Write --skill sci-figure -a codex`. Or copy the skill folder (skills/sci-figure in ShZhao27208/Aut_Sci_Write) into .agents/skills/sci-figure in your project. Codex loads it when a task matches its description.

Can I use Sci Figure 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 ShZhao27208/Aut_Sci_Write --skill sci-figure -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/sci-figure, .gemini/skills/sci-figure, .github/skills/sci-figure and .opencode/skills/sci-figure in your project.

What does Sci Figure need to run?

Going by SKILL.md and its folder, Sci Figure needs Python for the scripts in its folder and the command-line tools its instructions call (pip, winget, apt and brew). Our summary lists: Python 3.

Does Sci Figure access the network?

SKILL.md names 1 domain. As links in the text: pymupdf.readthedocs.io. This is read from the text; nothing was executed.

Is Sci Figure 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Sci Figure use?

Sci Figure is published under the AGPL-3.0-or-later licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Sci Figure use?

About 1.6k tokens (SKILL.md is roughly 6.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Sci Figure?

Skills that share tags, products or a category with Sci Figure: Paper Interpretation (digoal/blog, 8.6k stars), Paper2html (cnfjlhj/ai-collab-playbook, 454 stars), Paper Lens (YSQ-boop/paper-lens, 101 stars) and Paper Audit (bahayonghang/academic-writing-skills, 500 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Sci Figure?

ShZhao27208 (a GitHub user) maintains it in ShZhao27208/Aut_Sci_Write, which has 209 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on August 13, 2026.

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