Token导航 LogoToken导航TokenDH.com
研究检索external-servicegithub未标认证来源可访问许可证需确认审计提醒

paper-slides纸幻灯片

Agent Skill

paper-slides 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

1,746

周安装

75

GitHub Stars

7,795

下载量

612
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:paper-slides(纸幻灯片)
来源仓库:https://github.com/wanshuiyin/auto-claude-code-research-in-sleep
仓库路径:skills/paper-slides
安装命令:
npx skills add https://github.com/wanshuiyin/auto-claude-code-research-in-sleep --skill paper-slides
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/wanshuiyin/auto-claude-code-research-in-sleep --skill paper-slides

简介

paper-slides 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。

  • 它支持通过关键词、任务场景或来源线索进行信息检索与筛选。
  • 可通过 npx skills add 命令从指定 GitHub 仓库安装并使用。
  • 安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Paper Slides: From Paper to Conference Talk

Generate conference presentation slides from: $ARGUMENTS

Context

This skill runs after Workflow 3 (/paper-writing). It takes a compiled paper and generates a presentation slide deck for conference oral talks, spotlight presentations, or poster lightning talks.

Unlike posters (single page, visual-first), slides tell a temporal story: each slide builds on the previous one, with progressive revelation of the research narrative. A good talk makes the audience understand *why this matters* before showing *what was done*.

Constants

  • VENUE = NeurIPS — Target venue, determines color scheme. Supported: NeurIPS, ICML, ICLR, AAAI, ACL, EMNLP, CVPR, ECCV, GENERIC. Override via argument.
  • TALK_TYPE = spotlight — Talk format. Options: oral (15-20 min), spotlight (5-8 min), poster-talk (3-5 min), invited (30-45 min). Determines slide count and content depth.
  • TALK_MINUTES = 15 — Talk duration in minutes. Auto-adjusts slide count (~1 slide/minute for oral, ~1.5 slides/minute for spotlight). Override explicitly if needed.
  • ASPECT_RATIO = 16:9 — Slide aspect ratio. Options: 16:9 (default, modern projectors), 4:3 (legacy).
  • SPEAKER_NOTES = true — Generate \note{} blocks in beamer and corresponding PPTX notes. Set false for clean slides without notes.
  • PAPER_DIR = paper/ — Directory containing the compiled paper.
  • OUTPUT_DIR = slides/ — Output directory for all slide files.
  • REVIEWER_MODEL = gpt-5.4 — Model used via Codex MCP for slide review.
  • AUTO_PROCEED = false — At each checkpoint, always wait for explicit user confirmation.
  • COMPILER = latexmk — LaTeX build tool.
  • ENGINE = pdflatex — LaTeX engine. Use xelatex for CJK text.
💡 Override: /paper-slides "paper/" — talk_type: oral, venue: ICML, minutes: 20, aspect: 4:3

Talk Type → Slide Count

Talk TypeDurationSlidesContent Depth
poster-talk3-5 min5-8Problem + 1 method slide + 1 result + conclusion
spotlight5-8 min8-12Problem + 2 method + 2 results + conclusion
oral15-20 min15-22Full story with motivation, method detail, experiments, analysis
invited30-45 min25-40Comprehensive: background, related work, deep method, extensive results, discussion

Venue Color Schemes

Same as /paper-poster:

VenuePrimaryAccentBackgroundText
NeurIPS#8B5CF6#2563EB#FFFFFF#1E1E1E
ICML#DC2626#1D4ED8#FFFFFF#1E1E1E
ICLR#059669#0284C7#FFFFFF#1E1E1E
CVPR#2563EB#7C3AED#FFFFFF#1E1E1E
GENERIC#334155#2563EB#FFFFFF#1E1E1E

State Persistence (Compact Recovery)

Persist state to slides/SLIDES_STATE.json after each phase:

{
  "phase": 3,
  "venue": "NeurIPS",
  "talk_type": "spotlight",
  "slide_count": 10,
  "codex_thread_id": "019cfcf4-...",
  "status": "in_progress",
  "timestamp": "2026-03-18T15:00:00"
}

On startup: if SLIDES_STATE.json exists with "status": "in_progress" and within 24h → resume. Otherwise → fresh start.

Workflow

Phase 0: Input Validation & Setup

  1. Check prerequisites: which pdflatex && which latexmk
  2. Verify paper exists: ls $PAPER_DIR/main.tex || ls $PAPER_DIR/main.pdf ls $PAPER_DIR/sections/*.tex ls $PAPER_DIR/figures/
  3. Backup existing slides: if slides/ exists, copy to slides-backup-{timestamp}/
  4. Create output directory: mkdir -p slides/figures
  5. Detect CJK: if paper contains Chinese/Japanese/Korean, set ENGINE to xelatex
  6. Determine slide count: from TALK_TYPE and TALK_MINUTES using the table above
  7. Check for resume: read slides/SLIDES_STATE.json if it exists

State: Write SLIDES_STATE.json with phase: 0.

Phase 1: Content Extraction & Slide Outline

Read paper/sections/*.tex and build a slide-by-slide outline.

Slide template by talk type:

Oral (15-22 slides)

SlidePurposeContent SourceFigure?
1TitlePaper metadataNo
2OutlineSection headersNo
3-4Motivation & ProblemIntroductionOptional
5Key InsightIntroduction (contribution)No
6-9MethodMethod sectionYes (hero figure)
10-14ResultsExperimentsYes (per slide)
15-16Analysis / AblationsExperimentsYes
17LimitationsConclusionNo
18Conclusion / TakeawayConclusionNo
19Thank You + QRQR code

Spotlight (8-12 slides)

SlidePurposeContent SourceFigure?
1TitlePaper metadataNo
2-3Problem + Why It MattersIntroductionOptional
4Key InsightContributionNo
5-6MethodMethod (condensed)Yes (hero)
7-9ResultsKey results onlyYes
10TakeawayConclusionNo
11Thank You + QRQR code

Poster-talk (5-8 slides)

SlidePurposeContent SourceFigure?
1TitlePaper metadataNo
2ProblemIntroduction (1 slide)No
3MethodMethod (1 slide)Yes
4-5ResultsKey result onlyYes
6Takeaway + QRConclusionQR

For each slide, specify:

  • Title (max 8 words)
  • 3-5 bullet points (max 8 words each)
  • Figure reference (if any) from paper/figures/
  • Speaker note (2-3 sentences of what to say)
  • Time allocation (in seconds)

Output: slides/SLIDE_OUTLINE.md

🚦 Checkpoint:

📊 Slide outline ready:
- Talk type: [TALK_TYPE] ([TALK_MINUTES] min)
- Slide count: [N] slides
- Figures used: [N] from paper/figures/
- Time budget: [breakdown]

Slide-by-slide outline:
1. [Title slide]
2. [Motivation — 1.5 min]
3. [Problem statement — 1 min]
...

Proceed to drafting? Or adjust the outline?

⛔ STOP HERE and wait for user response. This is the most critical checkpoint — the outline determines the entire talk flow.

Options:

  • "go" → proceed to Phase 2
  • adjustments (e.g., "merge slides 3-4", "add a demo slide", "cut the ablation") → revise
  • "stop" → save to slides/SLIDE_OUTLINE.md

State: Write SLIDES_STATE.json with phase: 1.

Phase 2: Slide-by-Slide Content Drafting

For each slide in the outline, draft the actual content.

Presentation rules (enforced strictly):

RuleRationale
One message per slideIf a slide has two ideas, split it
Max 6 lines per slideMore than 6 lines = wall of text
Max 8 words per lineAudience reads, not listens, if text is long
Sentence fragments, not sentences"Improves F1 by 3.2%" not "Our method improves the F1 score by 3.2 percentage points"
Figure slides: figure ≥60% areaThe figure IS the content; bullets are annotations
Bold key numbers"Achieves 94.3% accuracy"
Progressive disclosureUse \pause or \onslide for complex slides
No Related Work slideUnless invited talk (30+ min)

For each slide, produce:

  1. \frametitle{}
  2. Content (itemize or figure + caption)
  3. \note{} with speaker text (if SPEAKER_NOTES=true)

Phase 3: Generate Slides LaTeX

Create slides/main.tex using beamer.

Template structure:

\documentclass[aspectratio=169]{beamer}

% Venue theme
\usepackage{xcolor}
\definecolor{primary}{HTML}{VENUE_PRIMARY}
\definecolor{accent}{HTML}{VENUE_ACCENT}

% Clean theme
\usetheme{default}
\usecolortheme{default}
\setbeamercolor{frametitle}{fg=primary}
\setbeamercolor{title}{fg=primary}
\setbeamercolor{structure}{fg=accent}
\setbeamercolor{itemize item}{fg=primary}
\setbeamercolor{itemize subitem}{fg=accent}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{footline}{
  \hfill\insertframenumber/\inserttotalframenumber\hspace{2mm}\vspace{2mm}
}

% Packages
\usepackage{graphicx,amsmath,booktabs}
\graphicspath{{figures/}}

% Speaker notes (if enabled)
% \setbeameroption{show notes on second screen=right}

% Metadata
\title{PAPER TITLE}
\author{Author 1 \and Author 2}
\institute{Affiliation}
\date{VENUE YEAR}

\begin{document}

\begin{frame}
\titlepage
\end{frame}

% Content slides follow...

\begin{frame}{Motivation}
\begin{itemize}
  \item Bullet point 1
  \item Bullet point 2
  \item \textbf{Key insight in bold}
\end{itemize}
\note{Speaker note: explain the motivation...}
\end{frame}

% Figure slide example
\begin{frame}{Method Overview}
\centering
\includegraphics[width=0.85\textwidth]{method_overview.pdf}
\vspace{0.5em}
\begin{itemize}
  \item Key annotation about the figure
\end{itemize}
\note{Walk through the figure left to right...}
\end{frame}

% ... more slides ...

\begin{frame}{Thank You}
\centering
{\Large Questions?}\\[2em]
Paper: [URL or QR placeholder]\\
Code: [URL or QR placeholder]
\end{frame}

\end{document}

Symlink figures:

ln -sf ../paper/figures/*.pdf slides/figures/ 2>/dev/null
ln -sf ../paper/figures/*.png slides/figures/ 2>/dev/null

Key formatting rules:

  • Title font: ≥28pt, venue primary color
  • Body font: ≥20pt
  • Footnotes: ≥14pt
  • No navigation symbols
  • Frame numbers in bottom-right
  • Clean white background (no gradients, no decorative elements)

Phase 4: Compile Slides

cd slides && latexmk -$ENGINE -interaction=nonstopmode main.tex

Error handling loop (max 3 attempts):

  1. Parse error log
  2. Fix: missing package, undefined command, file not found, overfull boxes
  3. Recompile

Verification:

# Check slide count matches outline
pdfinfo slides/main.pdf | grep Pages

If page count differs significantly from outline (>2 slides off), investigate.

State: Write SLIDES_STATE.json with phase: 4.

Phase 5: Codex MCP Review

Send the slide outline + selected LaTeX frames to GPT-5.4 xhigh:

mcp__codex__codex:
  config: {"model_reasoning_effort": "xhigh"}
  prompt: |
    Review this [TALK_TYPE] presentation ([TALK_MINUTES] min) for [VENUE].

    Evaluate using these criteria (score 1-5 each):

    1. **Story arc** — Does the talk build a compelling narrative? (Problem → insight → method → evidence → takeaway)
    2. **Slide density** — Any slides with too much text? (Max 6 lines, 8 words/line)
    3. **Time budget** — Is [N] slides realistic for [TALK_MINUTES] minutes?
    4. **Figure visibility** — Will figures be readable on a projector?
    5. **Opening hook** — Do slides 2-3 grab attention? (Not "In this paper, we...")
    6. **Takeaway** — Is the final message clear and memorable?
    7. **Progressive build** — Are complex ideas revealed gradually?

    Slide outline:
    [PASTE SLIDE_OUTLINE.md]

    Selected frames (LaTeX):
    [PASTE KEY FRAMES]

    Provide:
    - Score for each criterion
    - Top 3 actionable fixes
    - Overall: Ready to present? (Yes / Needs revision / Major issues)

Apply fixes. Recompile if LaTeX was changed.

⚠️ If mcp__codex__codex is not available (no OpenAI API key), skip external review and proceed to Phase 6. Note the skip in SLIDES_STATE.json.

Save review to slides/SLIDES_REVIEW.md.

State: Write SLIDES_STATE.json with phase: 5.

Phase 6: Speaker Notes

For each slide, ensure a \note{} block exists with:

  1. What to say (2-3 complete sentences, conversational tone)
  2. Timing hint (e.g., "spend 1 minute here", "quick — 20 seconds")
  3. Transition phrase to the next slide (e.g., "So how do we actually implement this? Let me show you...")

Also generate slides/speaker_notes.md as a standalone backup:

# Speaker Notes

## Slide 1: Title
[No speaking — wait for introduction]

## Slide 2: Motivation
"Thank you. So let me start with the problem we're trying to solve..."
[Time: 1.5 min]

## Slide 3: Problem Statement
"Specifically, the challenge is..."
→ Transition: "To address this, our key insight is..."
[Time: 1 min]

...

State: Write SLIDES_STATE.json with phase: 6.

Phase 7: PowerPoint Export

Generate an editable PPTX using python-pptx:

python3 -c "import pptx" 2>/dev/null || pip install python-pptx

Write slides/generate_pptx.py that:

  1. Creates a PPTX with correct aspect ratio (16:9 → 13.33" x 7.5"; 4:3 → 10" x 7.5")
  2. For each beamer frame:

- Creates a slide with matching layout - Title in venue primary color, bold - Bullet points with venue accent color markers - Figures embedded as images (from slides/figures/) - Speaker notes transferred to PPTX notes field

  1. Title slide with special formatting (centered, larger title)
  2. Thank You slide with centered text
  3. Applies venue color scheme throughout
cd slides && python3 generate_pptx.py
# Output: slides/presentation.pptx
⚠️ If python-pptx is not installed, skip with a note: "Install pip install python-pptx to enable PowerPoint export."

State: Write SLIDES_STATE.json with phase: 7.

Phase 8: Full Talk Script

Generate slides/TALK_SCRIPT.md — a complete, word-for-word script for the talk.

This is different from speaker notes (brief reminders). The talk script is a full manuscript that can be read aloud or used for practice.

# Talk Script: [Paper Title]

**Venue**: [VENUE] [YEAR]
**Talk type**: [TALK_TYPE] ([TALK_MINUTES] min)
**Total slides**: [N]

---

## Slide 1: Title [0:00 - 0:15]

*[Wait for chair introduction]*

"Thank you [chair name]. I'm [author] from [affiliation], and today I'll be talking about [short title]."

---

## Slide 2: Motivation [0:15 - 1:30]

"Let me start with the problem. [Describe the real-world motivation in accessible terms]. This matters because [impact statement].

The current state of the art approaches this with [brief existing approach]. But there's a fundamental limitation: [gap statement]."

→ *Transition*: "So what's our key insight?"

---

## Slide 3: Key Insight [1:30 - 2:30]

"Our key observation is that [core insight in one sentence].

This leads us to propose [method name], which [one-sentence description]."

→ *Transition*: "Let me walk you through how this works."

---

## Slide 4-N: [Continue for each slide...]

...

---

## Slide [N]: Thank You [TALK_MINUTES:00]

"To summarize: we've shown that [main result]. The key takeaway is [memorable final message].

The paper and code are available at the QR code on screen. I'm happy to take questions."

---

## Time Budget Summary

| Slide | Topic | Duration | Cumulative |
|:-----:|-------|:--------:|:----------:|
| 1 | Title | 0:15 | 0:15 |
| 2 | Motivation | 1:15 | 1:30 |
| 3 | Key Insight | 1:00 | 2:30 |
| ... | ... | ... | ... |
| N | Thank You | 0:15 | [TALK_MINUTES]:00 |

**Total**: [sum] min (target: [TALK_MINUTES] min)

---

## Anticipated Q&A

### Q1: How does this compare to [strongest baseline]?
**A**: "[Specific comparison with numbers]. Our advantage is particularly clear in [specific scenario], where we see [X%] improvement."

### Q2: What are the main limitations?
**A**: "[Honest answer]. We see this as [future work direction]."

### Q3: How computationally expensive is this?
**A**: "[Training/inference cost]. Compared to [baseline], our method requires [comparison]."

### Q4: Does this generalize to [related domain]?
**A**: "[Answer based on paper's discussion section]."

### Q5: What's the most surprising finding?
**A**: "[Interesting insight from the experiments]."

### Q6: How sensitive is the method to [hyperparameter/design choice]?
**A**: "[Reference ablation study if available]."

### Q7: What's the next step for this research?
**A**: "[Future work from conclusion]."

### Q8: [Domain-specific question]
**A**: "[Answer]."

Final Output Summary

📊 Slide generation complete:
- Talk type: [TALK_TYPE] ([TALK_MINUTES] min) for [VENUE]
- Files:
  slides/
  ├── main.tex              # Beamer LaTeX source
  ├── main.pdf              # Compiled slides (primary output)
  ├── presentation.pptx     # Editable PowerPoint
  ├── SLIDE_OUTLINE.md      # Slide-by-slide outline
  ├── SLIDES_REVIEW.md      # GPT-5.4 review feedback
  ├── speaker_notes.md      # Per-slide speaker notes
  ├── TALK_SCRIPT.md        # Full word-for-word talk script + Q&A
  ├── SLIDES_STATE.json     # State persistence
  ├── generate_pptx.py      # PPTX generation script
  └── figures/              # Symlinked from paper/figures/

Next steps:
1. Practice with TALK_SCRIPT.md (read aloud, time yourself)
2. Edit presentation.pptx for visual tweaks (animations, custom graphics)
3. Review Anticipated Q&A section before the talk
4. Do a dry run with a colleague

State: Write SLIDES_STATE.json with phase: 8, status: "completed".

Key Rules

  • Large file handling: If the Write tool fails due to file size, immediately retry using Bash (cat << 'EOF' > file) to write in chunks. Do NOT ask the user for permission — just do it silently.
  • One message per slide. If a slide has two ideas, split it into two slides.
  • Do NOT fabricate data. All numbers must come from paper/sections/*.tex.
  • Bullet points only — never full sentences on slides. Sentence fragments are fine.
  • Figure slides: figure ≥60% of slide area. The figure IS the content.
  • Progressive disclosure: Use \pause or \onslide for complex method slides.
  • De-AI polish: Remove watch words from all slide text and talk script.
  • Do NOT hallucinate citations. Reference only papers cited in the paper.
  • Opening hook matters: Never start with "In this paper, we..." — start with the problem or a provocative question.
  • Font size minimums: Title ≥28pt, body ≥20pt, footnotes ≥14pt.
  • Feishu notifications are optional. If ~/.claude/feishu.json exists, send notifications. If absent, skip.

Parameter Pass-Through

/paper-slides "paper/" — talk_type: oral, venue: ICML, minutes: 20, aspect: 4:3, notes: false
ParameterDefaultDescription
venueNeurIPSConference for color scheme
talk_typespotlightoral/spotlight/poster-talk/invited
minutes15Talk duration
aspect16:9Aspect ratio (16:9 / 4:3)
notestrueGenerate speaker notes
enginepdflatexLaTeX engine
auto proceedfalseSkip checkpoints

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.22%
按下载量换算209

Claude

31.43%
按下载量换算192

Cursor

19.48%
按下载量换算119

Gemini CLI

8.34%
按下载量换算51

安全审计

Gen Agent Trust Hub

通过

Socket

可疑

Snyk

通过

权限和风险

external-service

该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills