Best for
- Preparing conference presentations (5-20 minutes)
- Developing academic seminars (45-60 minutes)
- Creating thesis or dissertation defense presentations
synthetic-sciences/openscience/backend/cli/skills/writing/scientific-slides/SKILL.md
[EXPERIMENTAL] Build slide decks and presentations for research talks using Nano Banana Pro AI. Generates stunning PDF presentations with AI-generated slides. Use for conference presentations, seminar talks, thesis defense slides, or any scientific talk. Provides slide structure, design guidance, timing recommendations, and visual validation.
Decision brief
[EXPERIMENTAL] External AI Dependency This skill uses Nano Banana Pro AI for slide image generation — an external model. Inside OpenScience, make every generation/edit with the native generateimage tool so the request uses connected OpenRouter BYOK or a funded OpenScience wallet…
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/synthetic-sciences/openscience --skill "backend/cli/skills/writing/scientific-slides"Inspect the Agent Skill "scientific-slides" from https://github.com/synthetic-sciences/openscience/blob/95be136c06386eb18546ce94d134d2c7e66976ac/backend/cli/skills/writing/scientific-slides/SKILL.md at commit 95be136c06386eb18546ce94d134d2c7e66976ac. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Generate each slide as a complete image using Nano Banana Pro, then combine into a PDF. This produces the most visually stunning results.
Implement iterative improvement through visual inspection. For complete workflow, refer to references/visualreviewworkflow.md.
Define Context: 1. What type of talk? (Conference, seminar, defense, etc.) 2. How long? (Duration in minutes) 3. Who is the audience? (Specialists, general, mixed) 4. What's the venue? (Room size, A/V setup, virtual/in-person) 5. What happens after? (Q&A, discussion, networking)
Define Context: 1. What type of talk? (Conference, seminar, defense, etc.) 2. How long? (Duration in minutes) 3. Who is the audience? (Specialists, general, mixed) 4. What's the venue? (Room size, A/V setup, virtual/in-person) 5. What happens after? (Q&A, discussion, networking)
Design Considerations (Make It Visually Appealing): - Select MODERN color palette: Match your topic (biotech=vibrant, physics=sleek, health=warm) - NOT default blue/gray themes - 3-5 colors with high contrast - Choose clean fonts: Sans-serif, large sizes (24pt+ body) - Plan visu…
Permission review
The documentation asks the agent to run terminal commands or scripts.
python scripts/generate_slide_image.py "Title slide for presentation: 'Machine Learning: From Theory to Practice'. Subtitle: 'AI Conference 2025'. Speaker: Synthetic Sciences. FORMATTING GOAL: Dark blue background (#1a237e), white text, golThe documentation asks the agent to run terminal commands or scripts.
python scripts/generate_slide_image.py "Presentation slide titled 'Why Machine Learning Matters'. Three key points with simple icons: 1) Industry adoption, 2) Breakthrough applications, 3) Future potential. CITATIONS: Include at bottom in sThe documentation includes network, browsing, or remote request actions.
# Get key at: https://openrouter.ai/keysThe documentation asks the agent to create, modify, or delete local files.
**Build reference list**: Create .bib file or citation list for slidesEvidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 93/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 3,338 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
[EXPERIMENTAL] External AI Dependency This skill uses Nano Banana Pro AI for slide image generation — an external model. Inside OpenScience, make every generation/edit with the native
generate_imagetool so the request uses connected OpenRouter BYOK or a funded OpenScience wallet in managed mode. The Python scripts documented below are standalone BYOK helpers, not the in-product wallet route. third-party service that may be unavailable or require separate credentials. The core slide structure and content guidance works independently.
Scientific presentations are a critical medium for communicating research, sharing findings, and engaging with academic and professional audiences. This skill provides comprehensive guidance for creating effective scientific presentations, from structure and content development to visual design and delivery preparation.
Key Focus: Oral presentations for conferences, seminars, defenses, and professional talks.
CRITICAL DESIGN PHILOSOPHY: Scientific presentations should be VISUALLY ENGAGING and RESEARCH-BACKED. Avoid dry, text-heavy slides at all costs. Great scientific presentations combine:
Remember: Boring presentations = forgotten science. Make your slides visually memorable while maintaining scientific rigor through proper citations.
This skill should be used when:
This skill uses Nano Banana Pro AI to generate stunning presentation slides automatically.
Generate each slide as a complete image using Nano Banana Pro, then combine into a PDF. This produces the most visually stunning results.
How it works:
Step 1: Plan Each Slide
Before generating, create a detailed plan for your presentation:
# Presentation Plan: Introduction to Machine Learning
## Slide 1: Title Slide
- Title: "Machine Learning: From Theory to Practice"
- Subtitle: "AI Conference 2025"
- Speaker: Dr. Jane Smith, University of XYZ
- Visual: Modern abstract neural network background
## Slide 2: Introduction
- Title: "Why Machine Learning Matters"
- Key points: Industry adoption, breakthrough applications, future potential
- Visual: Icons showing different ML applications (healthcare, finance, robotics)
## Slide 3: Core Concepts
- Title: "The Three Types of Learning"
- Content: Supervised, Unsupervised, Reinforcement
- Visual: Three-part diagram showing each type with examples
... (continue for all slides)
Step 2: Generate Each Slide
Use the generate_slide_image.py script to create each slide.
CRITICAL: Formatting Consistency Protocol
To ensure unified formatting across all slides in a presentation:
Define a Formatting Goal at the start of your presentation and include it in EVERY prompt:
Always attach the previous slide when generating subsequent slides using --attach:
Default author is "Synthetic Sciences" unless another name is specified
Include citations directly in the prompt for slides that reference research:
Attach existing figures/data for results slides (CRITICAL for data-driven presentations):
figures/, results/, plots/, images/)--attach to include these figures so Nano Banana Pro can incorporate them:
--attach fig1.png --attach fig2.pngExample with formatting consistency, citations, and figure attachments:
# Title slide (first slide - establishes the style)
python scripts/generate_slide_image.py "Title slide for presentation: 'Machine Learning: From Theory to Practice'. Subtitle: 'AI Conference 2025'. Speaker: Synthetic Sciences. FORMATTING GOAL: Dark blue background (#1a237e), white text, gold accents (#ffc107), minimal design, sans-serif fonts, generous margins, no decorative elements." -o slides/01_title.png
# Content slide with citations (attach previous slide for consistency)
python scripts/generate_slide_image.py "Presentation slide titled 'Why Machine Learning Matters'. Three key points with simple icons: 1) Industry adoption, 2) Breakthrough applications, 3) Future potential. CITATIONS: Include at bottom in small text: (LeCun et al., 2015; Goodfellow et al., 2016). FORMATTING GOAL: Match attached slide style - dark blue background, white text, gold accents, minimal professional design, no visual clutter." -o slides/02_intro.png --attach slides/01_title.png
# Background slide with multiple citations
python scripts/generate_slide_image.py "Presentation slide titled 'Deep Learning Revolution'. Key milestones: ImageNet breakthrough (2012), transformer architecture (2017), GPT models (2018-present). CITATIONS: Show references at bottom: (Krizhevsky et al., 2012; Vaswani et al., 2017; Brown et al., 2020). FORMATTING GOAL: Match attached slide style exactly - same colors, fonts, minimal design." -o slides/03_background.png --attach slides/02_intro.png
# RESULTS SLIDE - Attach actual data figure from working directory
# First, check what figures exist: ls figures/ or ls results/
python scripts/generate_slide_image.py "Presentation slide titled 'Model Performance Results'. Create a slide presenting the attached accuracy chart. Key findings to highlight: 1) 95% accuracy achieved, 2) Outperforms baseline by 12%, 3) Consistent across test sets. CITATIONS: Include at bottom: (Our results, 2025). FORMATTING GOAL: Match attached slide style exactly." -o slides/04_results.png --attach slides/03_background.png --attach figures/accuracy_chart.png
# RESULTS SLIDE - Multiple figures comparison
python scripts/generate_slide_image.py "Presentation slide titled 'Before vs After Comparison'. Build a side-by-side comparison slide using the two attached figures. Left: baseline results, Right: our improved results. Add brief labels explaining the improvement. FORMATTING GOAL: Match attached slide style exactly." -o slides/05_comparison.png --attach slides/04_results.png --attach figures/baseline.png --attach figures/improved.png
# METHODOLOGY SLIDE - Attach existing diagram
python scripts/generate_slide_image.py "Presentation slide titled 'System Architecture'. Present the attached architecture diagram with brief explanatory bullet points: 1) Input processing, 2) Model inference, 3) Output generation. FORMATTING GOAL: Match attached slide style exactly." -o slides/06_architecture.png --attach slides/05_comparison.png --attach diagrams/system_architecture.png
IMPORTANT: Before creating results slides, always:
ls -la figures/ or ls -la results/Prompt Template:
Include these elements in every prompt (customize as needed):
[Slide content description]
CITATIONS: Include at bottom: (Author1 et al., Year; Author2 et al., Year)
FORMATTING GOAL: [Background color], [text color], [accent color], minimal professional design, no decorative elements, consistent with attached slide style.
Step 3: Combine to PDF
# Combine all slides into a PDF presentation
python scripts/slides_to_pdf.py slides/*.png -o presentation.pdf
Generate presentation slides using Nano Banana Pro AI.
# Generate a complete slide as image
python scripts/generate_slide_image.py "slide description" -o output.png
# With reference images attached (Nano Banana Pro will see these)
python scripts/generate_slide_image.py "Create a slide explaining this chart" -o slide.png --attach chart.png
python scripts/generate_slide_image.py "Combine these into a comparison slide" -o compare.png --attach before.png --attach after.png
Options:
-o, --output: Output file path (required)--attach IMAGE: Attach image file(s) as context for generation (can use multiple times)--iterations: Max refinement iterations (default: 2)--api-key: OpenRouter API key (or set OPENROUTER_API_KEY env var)-v, --verbose: Verbose outputAttaching Reference Images:
Use --attach when you want Nano Banana Pro to see existing images as context:
Environment Setup:
export OPENROUTER_API_KEY='your_api_key_here'
# Get key at: https://openrouter.ai/keys
Combine multiple slide images into a single PDF.
# Combine PNG files
python scripts/slides_to_pdf.py slides/*.png -o presentation.pdf
# Combine specific files in order
python scripts/slides_to_pdf.py title.png intro.png methods.png -o talk.pdf
# From directory (sorted by filename)
python scripts/slides_to_pdf.py slides/ -o presentation.pdf
Options:
-o, --output: Output PDF path (required)--dpi: PDF resolution (default: 150)-v, --verbose: Verbose outputTip: Name slides with numbers for correct ordering: 01_title.png, 02_intro.png, etc.
For complete slides, include:
Example prompts:
Title slide:
"Title slide for a medical research presentation. Title: 'Advances in Cancer Immunotherapy'. Subtitle: 'Clinical Trial Results 2024'. Professional medical theme with subtle DNA helix in background. Navy blue and white color scheme."
Content slide:
"Presentation slide titled 'Key Findings'. Three bullet points: 1) 40% improvement in response rate, 2) Reduced side effects, 3) Extended survival outcomes. Include relevant medical icons. Clean, professional design with green and white colors."
Diagram slide:
"Presentation slide showing the research methodology. Title: 'Study Design'. Flowchart showing: Patient Screening → Randomization → Treatment Groups (A, B, Control) → Follow-up → Analysis. CONSORT-style flow diagram. Professional academic style."
In addition to slide generation, use the scientific-schematics skill for technical diagrams:
When to use scientific-schematics instead:
How to generate schematics:
python scripts/generate_schematic.py "your diagram description" -o figures/output.png
For detailed guidance on creating schematics, refer to the scientific-schematics skill documentation.
Build presentations with clear narrative flow and appropriate structure for different contexts. For detailed guidance, refer to references/presentation_structure.md.
Universal Story Arc:
Talk-Specific Structures:
Create professional, readable, and accessible slides that enhance understanding. For complete design guidelines, refer to references/slide_design_principles.md.
ANTI-PATTERN: Avoid Dry, Text-Heavy Presentations
❌ What Makes Presentations Dry and Forgettable:
✅ What Makes Presentations Engaging and Memorable:
Core Design Principles:
Visual-First Approach (CRITICAL):
Simplicity with Impact:
Typography for Engagement:
Color for Impact:
Layout for Visual Interest:
Adapt scientific figures for presentation context. For detailed guidance, refer to references/data_visualization_slides.md.
Key Differences from Journal Figures:
Visualization Best Practices:
Common Mistakes to Avoid:
Different presentation contexts require different approaches. For comprehensive guidance on each type, refer to references/talk_types_guide.md.
Conference Talks (10-20 minutes):
Academic Seminars (45-60 minutes):
Thesis Defenses (45-60 minutes):
Grant Pitches (10-20 minutes):
Journal Clubs (20-45 minutes):
Implement iterative improvement through visual inspection. For complete workflow, refer to references/visual_review_workflow.md.
Visual Validation Workflow:
Step 1: Convert PDF to Images
# Using the pdf_to_images script
python scripts/pdf_to_images.py presentation.pdf review/slide --dpi 150
Step 2: Systematic Inspection
Check each slide for:
Step 3: Document Issues
Create issue log:
Slide # | Issue Type | Description | Priority
--------|-----------|-------------|----------
3 | Text overflow | Bullet 4 extends beyond box | High
7 | Overlap | Figure overlaps with caption | High
12 | Font size | Axis labels too small | Medium
Step 4: Regenerate Problem Slides
Regenerate any slides that have issues with improved prompts, then re-combine to PDF.
Step 5: Re-Validate
Repeat Steps 1-4 until no critical issues remain.
Stopping Criteria:
Ensure presentations fit allocated time. For comprehensive timing guidance, refer to assets/timing_guidelines.md.
The One-Slide-Per-Minute Rule:
Time Allocation:
Practice Requirements:
Timing Checkpoints:
For 15-minute talk:
Emergency Strategies:
Automated Validation:
# Validate slide count, timing, file size
python scripts/validate_presentation.py presentation.pdf --duration 15
# Generates report on:
# - Slide count vs. recommended range
# - File size warnings
# - Slide dimensions
Manual Validation Checklist:
Define Context:
Research and Literature Review (Use research-lookup skill):
Develop Content Outline:
Example Outline for 15-Minute Talk:
1. Title (30 sec)
2. Hook: Compelling problem (60 sec) [Cite 1-2 papers via research-lookup]
3. Background (90 sec) [Cite 3-4 key papers establishing context]
4. Research question (45 sec) [Cite papers showing gap]
5. Methods overview (2 min)
6-8. Main result 1 (3 min, 3 slides)
9-10. Main result 2 (2 min, 2 slides)
11-12. Result 3 or validation (2 min, 2 slides)
13-14. Discussion and implications (2 min) [Compare to 2-3 prior studies]
15. Conclusions (45 sec)
16. Acknowledgments (15 sec)
NOTE: Use research-lookup to find papers for background (slides 2-4)
and discussion (slides 13-14) BEFORE creating slides.
Design Considerations (Make It Visually Appealing):
Populate Slides (Visual-First Strategy):
VISUAL CONTENT REQUIREMENTS (Make Slides Engaging):
Scientific Content (Research-Backed):
Text Guidelines (Less is More):
Generate Images:
# Convert PDF to images
python scripts/pdf_to_images.py presentation.pdf review/slides
Systematic Review:
Common Issues to Fix:
Iteration:
Practice Schedule:
What to Practice:
Refinement Based on Practice:
Technical Checks:
Content Final:
Delivery Prep:
Research Lookup (Critical for Scientific Presentations):
Scientific Writing:
Data Visualization:
Dry, Boring Presentations (CRITICAL TO AVOID):
Too Much Content:
Too Much Text:
Missing Research Context:
Poor Narrative:
Rushing Through Results:
Generic, Default Appearance:
Text-Heavy, Visual-Poor:
Small Fonts:
Low Contrast:
Cluttered Slides:
Inconsistent Formatting:
Missing Visual Hierarchy:
Not Practicing:
No Time Checkpoints:
Going Over Time:
Skipping Conclusions:
generate_slide_image.py - Generate slides with AI:
# Generate a complete slide
python scripts/generate_slide_image.py "Title: Introduction\nContent: Key points" -o slide.png
# Options:
# -o, --output Output file path (required)
# --attach IMAGE Attach reference images for context
# --iterations N Max refinement iterations (default: 2)
# -v, --verbose Verbose output
slides_to_pdf.py - Combine slide images into PDF:
# From glob pattern
python scripts/slides_to_pdf.py slides/*.png -o presentation.pdf
# From directory (sorted by filename)
python scripts/slides_to_pdf.py slides/ -o presentation.pdf
# Options:
# -o, --output Output PDF path (required)
# --dpi N PDF resolution (default: 150)
# -v, --verbose Verbose output
validate_presentation.py:
python scripts/validate_presentation.py presentation.pdf --duration 15
# Checks:
# - Slide count vs. recommended range
# - File size warnings
# - Slide dimensions
pdf_to_images.py:
python scripts/pdf_to_images.py presentation.pdf output/slide --dpi 150
# Converts PDF to images for visual inspection
# Supports: JPG, PNG
# Adjustable DPI
# Page range selection
Recommended:
Comprehensive guides for specific aspects:
references/presentation_structure.md: Detailed structure for all talk types, timing allocation, opening/closing strategies, transition techniquesreferences/slide_design_principles.md: Typography, color theory, layout, accessibility, visual hierarchy, design workflowreferences/data_visualization_slides.md: Simplifying figures, chart types, progressive disclosure, common mistakes, recreation workflowreferences/talk_types_guide.md: Specific guidance for conferences, seminars, defenses, grants, journal clubs, with examplesreferences/visual_review_workflow.md: PDF to images conversion, systematic inspection, issue documentation, iterative improvementassets/timing_guidelines.md: Comprehensive timing, pacing, and practice strategiesResearch & Plan (45 minutes):
Generate Slides with Nano Banana Pro (1-2 hours):
Important: Use consistent formatting, attach previous slides, and include citations!
# Title slide (establishes style - default author: Synthetic Sciences)
python scripts/generate_slide_image.py "Title slide: 'Your Research Title'. Conference name, Synthetic Sciences. FORMATTING GOAL: [your color scheme], minimal professional design, no decorative elements, clean and corporate." -o slides/01_title.png
# Introduction slide with citations (attach previous for consistency)
python scripts/generate_slide_image.py "Slide titled 'Why This Matters'. Three key points with simple icons. CITATIONS: Include at bottom: (Smith et al., 2023; Jones et al., 2024). FORMATTING GOAL: Match attached slide style exactly." -o slides/02_intro.png --attach slides/01_title.png
# Continue for each slide (always attach previous, include citations where relevant)
python scripts/generate_slide_image.py "Slide titled 'Methods'. Key methodology points. CITATIONS: (Based on Chen et al., 2022). FORMATTING GOAL: Match attached slide style exactly." -o slides/03_methods.png --attach slides/02_intro.png
# Combine to PDF
python scripts/slides_to_pdf.py slides/*.png -o presentation.pdf
Review & Iterate (30 minutes):
Practice (2-3 hours):
Finalize (30 minutes):
Total time: ~5-6 hours for quality AI-generated presentation
Remember:
Frequently asked questions
[EXPERIMENTAL] External AI Dependency This skill uses Nano Banana Pro AI for slide image generation — an external model. Inside OpenScience, make every generation/edit with the native generateimage tool so the request uses connected OpenRouter BYOK or a funded OpenScience wallet…
The source record exposes this install command: npx skills add https://github.com/synthetic-sciences/openscience --skill "backend/cli/skills/writing/scientific-slides". Inspect the command and pinned source before running it.
Static rules flagged exec-script, network, write-files in the source; the page lists the matching lines and excerpts.
Alternatives
K-Dense-AI/scientific-agent-skills
Build slide decks and presentations for research talks. Use this for making PowerPoint slides, conference presentations, seminar talks, research presentations, thesis defense slides, or any scientific talk. Provides slide structure, design templates, timing guidance, and visual validation. Works with PowerPoint and LaTeX Beamer.
prowler-cloud/prowler
PostgreSQL indexing best practices for Prowler: index design, partial indexes, partitioned table indexing, EXPLAIN ANALYZE validation, concurrent operations, monitoring, and maintenance. Trigger: When creating or modifying PostgreSQL indexes, analyzing query performance with EXPLAIN, debugging slow queries, reviewing index usage statistics, reindexing, dropping indexes, or working with partitioned table indexes. Also trigger when discussing index strategies, partial indexes, or index maintenance
brucesongs/kali-claw
Insecure Design (OWASP A06:2025) focuses on security flaws in system architecture and design phases, rather than code implementation-level bugs.
NintendaDev/unikit-ai
Generate and maintain the project's TECHNICAL documentation from its codebase — scans the project structure, tech stack, and module boundaries, then writes a lean README landing page plus detailed topic pages (architecture, modules, setup, build, APIs), only the docs that are relevant. Use whenever the user wants to create, update, or validate documentation of the CODE or the project itself, e.g. "generate documentation", "create docs", "write the README", "update the project docs", "document th