visual-explainer

Visual Concept Explainer

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "visual-explainer" with this command: npx skills add davistroy/claude-marketplace/davistroy-claude-marketplace-visual-explainer

Visual Concept Explainer

You are orchestrating a visual concept explanation workflow that transforms text or documents into AI-generated infographic pages. The tool uses Gemini Pro 3 (via google-genai SDK) for 4K image generation and Claude Sonnet Vision for quality evaluation with iterative refinement.

Proactive Triggers

Suggest this skill when:

  • User has a document, report, or concept they want visualized as infographic pages

  • After generating a report or analysis that would benefit from a visual summary

  • User mentions creating infographics, visual explanations, or concept diagrams

  • User asks to make a document more visually appealing or presentation-ready

  • User wants to transform a whitepaper, guide, or technical document into visual content

Infographic Mode (Recommended)

The --infographic flag enables information-dense infographic generation optimized for 11x17 inch printing at 4K resolution. This mode:

  • Adaptive page count (1-6 pages) based on document complexity, word count, and content types

  • Zone-based layouts with explicit text placement, typography specifications, and content zones

  • 8 page types: Hero Summary, Problem Landscape, Framework Overview, Framework Deep-Dive, Comparison Matrix, Dimensions/Variations, Reference/Action, Data/Evidence

  • Information density: Each page can hold 800-2000 words of readable text plus diagrams, tables, and charts

Page Type Selection

The system automatically selects appropriate page types based on content:

Content Pattern Page Type Purpose

Executive summary needed Hero Summary One-page overview with key stats

Challenges, pain points Problem Landscape Issues visualization with severity

Multi-step processes Framework Overview Visual framework with connections

Deep component analysis Framework Deep-Dive Detailed component exploration

Multiple options to compare Comparison Matrix Side-by-side analysis table

Variations, types, categories Dimensions/Variations Category breakdown visualization

Statistics, research data Data/Evidence Charts and data visualization

Action items, checklists Reference/Action Actionable takeaways and guides

Technical Notes

Image Generation:

  • Uses google-genai SDK with model from $GOOGLE_IMAGE_MODEL env var, falling back to gemini-3-pro-image-preview (default as of 2026-03-04 — verify with provider if errors occur)

  • Configuration: response_modalities=["IMAGE"] with ImageConfig for aspect ratio/size

  • 4K images are approximately 6-7.5MB each (JPEG format)

Image Evaluation:

  • Claude Vision API has 5MB limit for base64-encoded images

  • Tool automatically resizes images >3.5MB before evaluation (accounts for base64 overhead)

  • Uses PIL/Pillow for high-quality LANCZOS resampling

Platform Compatibility:

  • Windows: Folder names are sanitized to remove invalid characters (: , * , ? , " , < , > , | )

  • All platforms: Full Unicode support in Rich terminal UI

Tested Results (4 documents, 17 images):

  • Formats tested: URL (Substack), Markdown, DOCX

  • Average scores: 0.76-0.88 (all passing with threshold 0.75)

  • Generation time: 5-10 minutes per document (~2 min/image including analysis)

  • Only 1 retry needed across 17 images (image scored 0.72 → refined to 0.82)

  • Recommended pass threshold: 0.75-0.85 for good quality without excessive refinement

Input Validation

Required Arguments:

  • Input content (one of the following):

  • Raw text (pasted directly)

  • Document path (.md , .txt , .docx , .pdf )

  • URL (to fetch and extract content)

Optional Arguments:

Parameter Default Options Description

--infographic

false flag Recommended. Generate information-dense infographic pages (11x17 format)

--max-iterations

5 1-10 Max refinement attempts per image

--aspect-ratio

16:9 16:9, 1:1, 4:3, 9:16, 3:4 Image aspect ratio

--resolution

high low, medium, high Image quality (high=4K/3200x1800)

--style

professional-clean professional-clean, professional-sketch, or path Visual style

--output-dir

./output path Output directory

--pass-threshold

0.85 0.0-1.0 Score required to pass evaluation

--concurrency

3 1-10 Max concurrent image generations

--no-cache

false flag Force fresh concept analysis

--resume

null path Resume from checkpoint file

--dry-run

false flag Show plan without generating

--setup-keys

false flag Force re-check of API key availability (use /unlock to load keys)

--json

false flag Output results as JSON (for programmatic use). Returns structured metadata including image paths, scores, concept mappings, and generation statistics. Useful for downstream automation or integration with other tools.

Input Format Handling:

Format Handling

.md , .txt

Direct text extraction

.docx

Requires python-docx

  • extracts paragraphs preserving headings

.pdf

Requires PyPDF2

  • extracts text content

URL Requires beautifulsoup4

  • fetches and extracts main content

Web content Best practice: Save as markdown first for reproducibility and future reference

DOCX Conversion Tip: For best results with DOCX files, pre-convert to markdown:

from docx import Document doc = Document('document.docx') with open('document.md', 'w') as f: for para in doc.paragraphs: style = para.style.name if para.style else '' if style.startswith('Heading'): level = int(style[-1]) if style[-1].isdigit() else 1 f.write('#' * level + ' ' + para.text + '\n\n') else: f.write(para.text + '\n\n')

Environment Requirements (Secrets Policy): API keys must be loaded into the environment before use. The primary method is the /unlock skill, which loads secrets from Bitwarden Secrets Manager via the bws CLI (see CLAUDE.md Secrets Management Policy):

  • GOOGLE_API_KEY

  • For Gemini Pro 3 image generation

  • ANTHROPIC_API_KEY

  • For Claude concept analysis and image evaluation

Optional Model Configuration (non-sensitive, safe for .env):

  • GOOGLE_IMAGE_MODEL
  • Override Gemini image model (default: gemini-3-pro-image-preview , as of 2026-03-04 — verify with provider if errors occur)

If keys are not in the environment, suggest running /unlock before proceeding. Secrets policy compliance:

  • Do NOT write API keys to .env files or any configuration files

  • Do NOT guide users through creating .env files with API key values

  • Do NOT hardcode API keys in commands or scripts

  • Always direct users to /unlock or the Bitwarden Secrets Manager workflow

Tool vs Claude Responsibilities

Understanding what the Python tool handles vs what you (Claude) must do:

Component Responsibility What It Does

visual-explainer (Python tool) Core pipeline Concept analysis, prompt generation, Gemini API calls, evaluation, refinement loop, output organization

You (Claude) Input collection Gather input text/path/URL from user

You (Claude) Interactive confirmation Style selection, image count confirmation

You (Claude) Progress display Show generation progress to user

You (Claude) Results presentation Display completion summary

Workflow

Phase 1: Setup and Dependency Check

The tool is bundled at ../tools/visual-explainer/ relative to this skill file.

Step 1: Set Up Tool Path

Determine the plugin directory

PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-/path/to/plugins/personal-plugin}" TOOL_SRC="$PLUGIN_DIR/tools/visual-explainer/src"

Step 2: Check Dependencies

The tool automatically checks dependencies when run. You can also do a dry-run to verify setup:

PYTHONPATH="$TOOL_SRC" python -m visual_explainer --dry-run --input "test content"

Required packages:

  • Core: google-genai , anthropic , httpx , python-dotenv , pydantic , aiofiles , rich , pillow

  • Optional (format-specific): python-docx (DOCX), PyPDF2 (PDF), beautifulsoup4 (URLs)

If packages are missing, install them:

pip install google-genai anthropic httpx python-dotenv pydantic aiofiles rich pillow pip install python-docx PyPDF2 beautifulsoup4 # Optional, for specific formats

Phase 2: API Key Setup (if needed)

If API keys are missing:

API Key Setup Required

This tool requires two API keys:

  • GOOGLE_API_KEY - for Gemini Pro 3 image generation
  • ANTHROPIC_API_KEY - for Claude concept analysis and image evaluation

Missing keys detected:

  • GOOGLE_API_KEY - not found
  • ANTHROPIC_API_KEY - not found

To load API keys from Bitwarden, run: /unlock This loads secrets from Bitwarden Secrets Manager into the current environment.

See CLAUDE.md Secrets Management Policy for details on storing and retrieving secrets.

If keys are still missing after /unlock , ask the user to verify the secrets are stored in their Bitwarden vault. Do NOT offer to write keys to .env files or guide users through creating .env files with API keys.

Phase 3: Input Collection

If no input was provided in arguments, prompt:

I'll help you create visual explanations for your content.

Please provide your input in one of these formats:

  1. Paste text directly
  2. Provide a file path (e.g., ./docs/concept.md)
  3. Provide a URL to fetch content from

Phase 4: Content Analysis

After receiving input, run concept analysis:

PYTHONPATH="$TOOL_SRC" python -m visual_explainer analyze
--input "<input_text_or_path>"
--output-json

Display the analysis summary:

Content Analysis

Document: "Understanding Quantum Entanglement" Word Count: 1,847 words Key Concepts: 5 concepts identified Recommended Images: 3 images

Concept Flow:

  1. Classical Physics Background -> 2. Quantum Superposition -> 3. Entanglement Phenomenon -> 4. Applications -> 5. Future Implications

Phase 5: Style Selection (Interactive)

Prompt for style selection:

Visual Style Selection

What style would you prefer?

  1. Professional Clean (Recommended)

    • Clean, corporate-ready with warm accents
    • Best for: Business, presentations, reports
  2. Professional Sketch

    • Hand-drawn sketch aesthetic
    • Best for: Creative, educational, informal
  3. Custom

    • Provide path to your own style JSON
  4. Skip (use Professional Clean default)

Select style [1-4]:

Phase 6: Image Count Confirmation

Image Generation Plan

Based on analysis, I recommend 3 images:

Image 1: "The Classical Foundation"

  • Covers: Classical Physics Background
  • Intent: Establish baseline understanding

Image 2: "Quantum Superposition"

  • Covers: Superposition, probability states
  • Intent: Introduce quantum concepts

Image 3: "Entanglement Synthesis"

  • Covers: Entanglement, applications, future
  • Intent: Tie concepts together

Would you like to:

  1. Proceed with 3 images (Recommended)
  2. Use fewer images (condense concepts)
  3. Use more images (expand detail)
  4. Adjust settings (aspect ratio, iterations)

Phase 7: Generation Execution

Execute the full generation pipeline:

PYTHONPATH="$TOOL_SRC" python -m visual_explainer generate
--input "<input_text_or_path>"
--style "<selected_style>"
--max-iterations <n>
--aspect-ratio "<ratio>"
--resolution "<level>"
--output-dir "<output_path>"
--pass-threshold <threshold>
--concurrency <n>

Progress Display Format:

Starting Image Generation

Image 1 of 3: "The Classical Foundation"

Attempt 1/5: [=========> ] Generating... (4.2s) Generated Evaluating... - Concept clarity: 72% - Visual appeal: 85% - Flow continuity: 60% Overall: 72% - NEEDS_REFINEMENT

Attempt 2/5: Refining: Adding visual flow indicators [=========> ] Generating... (3.8s) Generated Evaluating... - Concept clarity: 91% - Visual appeal: 88% - Flow continuity: 85% Overall: 88% - PASS

Image 1 complete. Best version: Attempt 2

Image 2 of 3: "Quantum Superposition"

...

Phase 8: Completion Summary

Generation Complete

Results:

  • Images generated: 3 of 3
  • Total attempts: 7
  • Average quality score: 89%
  • Estimated cost: $0.70

Output saved to: ./output/visual-explainer-quantum-entanglement-20260118-143052/

Final Images:

  1. 01-classical-foundation.jpg (Score: 88%)
  2. 02-quantum-superposition.jpg (Score: 91%)
  3. 03-entanglement-synthesis.jpg (Score: 88%)

Output Structure: metadata.json # Full generation metadata concepts.json # Extracted concepts summary.md # Human-readable summary all-images/ # Final images only 01-classical-foundation.jpg 02-quantum-superposition.jpg 03-entanglement-synthesis.jpg image-01/ # All attempts for image 1 final.jpg prompt-v1.txt attempt-01.jpg evaluation-01.json ...

Would you like to:

  1. View the summary report
  2. Regenerate a specific image
  3. Open output folder

Resume from Checkpoint

If generation was interrupted, resume with:

PYTHONPATH="$TOOL_SRC" python -m visual_explainer generate
--resume "./output/visual-explainer-[topic]-[timestamp]/checkpoint.json"

The checkpoint contains:

  • Generation state

  • Completed images

  • Current progress

  • Configuration used

Cost Estimation

Estimated costs per session:

Scenario Images Avg Attempts Est. Total

Simple doc, 1 image 1 2 ~$0.28

Medium doc, 3 images 3 2.3 ~$0.95

Complex doc, 5 images 5 3 ~$2.10

Component costs:

  • Gemini image generation: ~$0.10 per image

  • Claude concept analysis: ~$0.02 per document

  • Claude image evaluation: ~$0.03 per evaluation

Performance

Scenario Images Expected Duration Estimated API Cost

Simple document, 1 image 1 2-4 minutes ~$0.28

Medium document, 3 images 3 5-10 minutes ~$0.95

Complex document, 5 images 5 12-20 minutes ~$2.10

Infographic mode, 3 pages 3 8-15 minutes ~$1.20

Infographic mode, 6 pages 6 15-30 minutes ~$2.80

Duration scales linearly with image count. Each image takes approximately 2 minutes including Gemini generation, Claude evaluation, and potential refinement. Refinement retries (when score < pass threshold) add ~1.5 minutes per retry.

API cost breakdown per image: Gemini Pro 3 generation ~$0.10, Claude concept analysis ~$0.02/document (one-time), Claude image evaluation ~$0.03/evaluation. Costs increase with refinement retries. At default settings (max 5 iterations, 0.85 threshold), typical cost is $0.15-0.25 per final image. Use --dry-run to preview the generation plan without incurring any API costs.

Error Handling

Error Response

Missing API key Suggest running /unlock to load keys from Bitwarden

Rate limit (429) Exponential backoff, respect Retry-After header

Safety filter Log, skip to next attempt with modified prompt

Timeout Retry with increased timeout (up to 5 min)

All attempts exhausted Select best attempt, report scores

Network error Retry up to 3 times with backoff

Examples

Infographic mode (recommended for complex documents):

/visual-explainer --input docs/architecture-overview.md --infographic

Infographic with dry-run preview:

/visual-explainer --input whitepaper.md --infographic --dry-run

Basic usage (interactive):

/visual-explainer

With document path:

/visual-explainer --input docs/architecture-overview.md

Custom settings:

/visual-explainer --input concept.txt --style professional-sketch --max-iterations 3 --aspect-ratio 1:1

High quality infographic:

/visual-explainer --input whitepaper.md --infographic --resolution high --max-iterations 7 --pass-threshold 0.90

Dry run (plan only):

/visual-explainer --input document.md --dry-run

Resume interrupted generation:

/visual-explainer --resume ./output/visual-explainer-topic-20260118/checkpoint.json

Execution Summary

Follow these steps in order:

  • Setup - Parse arguments, set up tool path

  • Dependency Check - Verify packages and API keys

  • API Key Setup - If missing, guide user through setup wizard

  • Input Collection - Get text/path/URL from user (if not provided)

  • Content Analysis - Extract concepts, determine image count

  • Style Selection - Let user choose or use default

  • Image Count Confirmation - Confirm plan with user

  • Generation Execution - Run full pipeline with progress display

  • Completion Summary - Display results and output locations

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

visual-explainer

No summary provided by upstream source.

Repository SourceNeeds Review
General

contrast-checker

No summary provided by upstream source.

Repository SourceNeeds Review
General

visual-explainer

No summary provided by upstream source.

Repository SourceNeeds Review