Official agent skill

Create Presentation

by JetBrains in JetBrains/youtrackdb

Generate a PPTX presentation explaining code changes on the current branch, with matplotlib diagrams and dark theme slides.

OfficialApache-2.0Auto-check passedDocuments & Office

Install Create Presentation

skills CLI
$ npx skills add JetBrains/youtrackdb --skill create-presentation -a claude-code

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

GitHub CLI
$ gh skill install JetBrains/youtrackdb create-presentation --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/JetBrains/youtrackdb.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/create-presentation .claude/skills/create-presentation && 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
create-presentation
GitHub stars
437
Token cost
~1.8k tokens
SKILL.md length
631 words
Files
1
Skills in repo
16
Repo updated
First seen
Licence
Apache-2.0

At a glance

Generate a PPTX presentation explaining code changes on the current branch, with matplotlib diagrams and dark theme slides.

  • Works in 6 steps: Investigate the branch → Plan the slides → Set up Python environment → …
  • Tasks that involve Slides and decks
  • SKILL.md covers Arguments, Task and Quality checklist
  • Calls git, python3 and pip

What it does

Create Presentation is an agent skill from JetBrains/youtrackdb, published by the product's own GitHub organization. Generate a PPTX presentation explaining code changes on the current branch, with matplotlib diagrams and dark theme slides.

Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Documents & Office, covering Slides and decks, PowerPoint presentations and Diagrams. It works with Matplotlib and Microsoft PowerPoint. The repository describes itself as: YouTrackDB is a general-use object-oriented graph database with storage format native to handle graph relations. YouTrackDB supports Gremlin queries and ACID transactions. YTDB… The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Slides and decks
  • Tasks that involve PowerPoint presentations
  • Tasks that involve Diagrams

Example prompts

  • “/create-presentation”

Requirements

  • Python 3

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Investigate the branch
  2. Plan the slides
  3. Set up Python environment
  4. Generate diagrams with matplotlib
  5. Build the PPTX
  6. Output

What it can do on your machine

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

    Shell commands in SKILL.md call:

    • git
    • python3
    • pip
    • python

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

  • Network

    No URLs in SKILL.md. Its commands use git and pip, which can reach the network depending on how they are called.

    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

Create Presentation loads about 1.8k tokens when it runs. Until then it costs about 36 tokens; SKILL.md has 631 words of instructions outside code blocks.

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

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 JetBrains/youtrackdb at commit 82af9d5, republished under its Apache-2.0 licence (© JetBrains). 631 words, ~1,751 tokens.

Download SKILL.mdSave it as .claude/skills/create-presentation/SKILL.md (or your agent's skills folder).
name
create-presentation
description
Generate a PPTX presentation explaining code changes on the current branch, with matplotlib diagrams and dark theme slides.
argument-hint
[base-branch]
user-invocable
true

Generate a PPTX presentation explaining the changes on the current branch.

Arguments

If "$ARGUMENTS" is non-empty, use it as the target branch to compare against. Otherwise, default to origin/develop.

Task

You are creating a technical presentation for a team of developers. The output is a .pptx file in the project root that the user can open in Google Slides.

Step 1 — Investigate the branch
  1. Run git log --oneline <base>..HEAD to list all commits on this branch.
  2. Run git diff --name-only <base>..HEAD to find changed source files.
  3. Separate generated files (e.g. sql/parser/YouTrackDBSql*.java) from hand-written code.
  4. Read every non-generated changed source file to understand the full picture.
  5. Read commit messages for motivation and design rationale.
Step 2 — Plan the slides

Create a slide outline (15–25 slides) covering:

  • Title slide with branch name and issue ID (extracted from branch name).
  • Problem statement — what motivated this change.
  • Solution overview — high-level summary with a phase/flow diagram.
  • Architecture slides — new files, data structures, on-disk formats.
  • Algorithm slides — step-by-step flowcharts for key algorithms.
  • Code path slides — how existing code is modified and where new code hooks in.
  • Configuration — new parameters, defaults, tuning guidance.
  • Safety properties — crash safety, concurrency, error handling.
  • Design decisions — key trade-offs and rationale.
  • Scope/limitations — what is NOT covered.
  • Q&A slide.
Step 3 — Set up Python environment
bash
python3 -m venv .tmp/pptx-venv
.tmp/pptx-venv/bin/pip install python-pptx matplotlib

If the venv already exists, skip creation and just verify imports work.

Step 4 — Generate diagrams with matplotlib

For every diagram (flowcharts, architecture, data flow, record layouts, before/after comparisons), generate a matplotlib figure rendered to a PNG BytesIO stream.

Follow these conventions:

Color theme (dark, matches slide background)
python
MPL_BG      = '#121224'   # figure/axes background
MPL_FG      = '#e0e0e0'   # default text
MPL_BLUE    = '#64B5F6'   # titles, primary boxes
MPL_LBLUE   = '#81D4FA'   # secondary highlights
MPL_GREEN   = '#A5D6A7'   # success/safe elements
MPL_ORANGE  = '#FFB74D'   # accent/new/warning
MPL_RED     = '#EF5350'   # delete/danger
MPL_BOX_BG  = '#1a2a44'   # box fill
MPL_BOX_BORDER = '#3a5a8a'  # box stroke
Diagram building blocks

Use matplotlib.patches.FancyBboxPatch for boxes and ax.annotate with arrowprops for arrows. Helper pattern:

python
def make_box(ax, x, y, w, h, text, facecolor, edgecolor, text_color,
             fontsize=11, weight='normal'):
    box = FancyBboxPatch((x, y), w, h, boxstyle="round,pad=0.15",
                         facecolor=facecolor, edgecolor=edgecolor, linewidth=1.5)
    ax.add_patch(box)
    ax.text(x + w/2, y + h/2, text, ha='center', va='center',
            fontsize=fontsize, color=text_color, weight=weight, family='monospace', wrap=True)

def make_arrow(ax, x1, y1, x2, y2, color='#81D4FA', style='->', lw=2):
    ax.annotate('', xy=(x2, y2), xytext=(x1, y1),
                arrowprops=dict(arrowstyle=style, color=color, lw=lw))
Figure setup
  • Always use matplotlib.use('Agg') before importing pyplot.
  • Use fig.savefig(buf, format='png', dpi=200, bbox_inches='tight', facecolor=fig.get_facecolor()).
  • Turn off axes: ax.axis('off').
  • Use figsize appropriate for widescreen (e.g. (12, 5) for wide diagrams, (10, 7) for tall ones).
What NOT to do for diagrams
  • Do NOT use Pillow ImageDraw.text() to render ASCII art — the default bitmap font has broken glyph coverage for box-drawing characters (U+250x) and the output is unreadable in presentations.
  • Do NOT use mermaid-py or mermaid-cli — they require network access or a headless browser, neither of which is reliably available.
  • Do NOT use the graphviz Python package — it requires the dot binary which may not be installed.
  • matplotlib is the ONLY reliable local renderer. Use it for ALL diagrams.
Show full SKILL.md (234 more words)Show less
Step 5 — Build the PPTX

Use python-pptx to assemble slides. Follow these conventions:

Slide dimensions
python
prs.slide_width = Inches(13.333)   # widescreen 16:9
prs.slide_height = Inches(7.5)
PPTX color theme
python
BG_COLOR        = RGBColor(0x1B, 0x1B, 0x2F)  # slide background
TITLE_COLOR     = RGBColor(0x64, 0xB5, 0xF6)  # slide titles
HEADING_COLOR   = RGBColor(0x81, 0xD4, 0xFA)  # subtitles
TEXT_COLOR      = RGBColor(0xE0, 0xE0, 0xE0)  # body text
ACCENT_COLOR    = RGBColor(0xFF, 0xB7, 0x4D)  # bold highlights
CODE_BG         = RGBColor(0x12, 0x12, 0x24)  # code block fill
TABLE_HEADER_BG = RGBColor(0x1A, 0x3A, 0x5C)  # table header row
TABLE_ROW_BG    = RGBColor(0x15, 0x15, 0x2A)  # odd table rows
TABLE_ALT_BG    = RGBColor(0x1D, 0x1D, 0x35)  # even table rows
BORDER_COLOR    = RGBColor(0x3A, 0x3A, 0x5C)  # code block border
Slide structure
  • Use prs.slide_layouts[6] (blank layout) for all slides.
  • Set background: slide.background.fill.solid(); slide.background.fill.fore_color.rgb = BG_COLOR.
  • Title: 32pt, bold, TITLE_COLOR, positioned at (0.5", 0.3").
  • Body text: 17–18pt, TEXT_COLOR. Use **bold** parsing to apply ACCENT_COLOR.
  • Code blocks: ROUNDED_RECTANGLE shape with CODE_BG fill, Consolas 13pt, green text.
  • Tables: styled with alternating row colors, header row in TABLE_HEADER_BG.
  • Diagrams: inserted as PNG images via slide.shapes.add_picture(stream, left, top, width).
Code organization

Write the entire generator as a single Python script saved to .tmp/gen-presentation.py. Structure it as:

  1. Imports and theme constants.
  2. matplotlib diagram generator functions (one per diagram).
  3. PPTX helper functions (set_slide_bg, add_title, add_bullet_text, add_code_block, add_table, add_image).
  4. Slide-by-slide assembly.
  5. prs.save(output_path) at the end.

Run with: .tmp/pptx-venv/bin/python .tmp/gen-presentation.py

Step 6 — Output

Save the PPTX to the project root as <branch-name>-presentation.pptx. Tell the user the file path and total slide count. Also leave the Python script at .tmp/gen-presentation.py so the user can tweak and regenerate.

Quality checklist

  • Every diagram is a matplotlib-rendered PNG — no ASCII art in the final PPTX.
  • Diagrams use the dark color theme and render at 200 DPI.
  • All text is legible (minimum 10pt in diagrams, 13pt in code blocks, 17pt in body).
  • Slide count is between 15 and 25.
  • The presentation tells a coherent story: problem → solution → details → safety → decisions.
  • No broken images or placeholder text.

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

Files

Just SKILL.md in .claude/skills/create-presentation of JetBrains/youtrackdb.

Open the folder on GitHubat commit 82af9d5

Compare with similar skills

Create Presentation 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.

Create Presentation compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Create Presentation this skillJetBrains/youtrackdb437—~1.8kAutomated safety check: PassApache-2.0
Astra Figure WorkflowIamJerryXu/AstraDraw141—~1.9kAutomated safety check: PassNone
Xiaobei Skill Image To Vbaxiao24bei/xiaobei-skill579—~6.9kAutomated safety check: PassApache-2.0
Ky Markdown RebuilderKyrieCheungYep/ky-markdown-rebuilder117—~5.7kAutomated safety check: PassNone
Img2pptxLancelot-Xie/img2pptx158—~5.9kAutomated safety check: PassApache-2.0
PPTX To Mdsammcj/agentic-coding162—~1.8kAutomated safety check: PassApache-2.0

Similar skills

  • Astra Figure Workflow

    IamJerryXu/AstraDraw

    Design research method figures from an existing paper, retrieve visual priors from component or private PPTX libraries, produce editable diagrams, and revise selected objects while preserving…

    141 GitHub stars~1.9k tokensUpdated 27 days ago
    Documents & OfficeAuto-check passed
  • Xiaobei Skill Image To Vba

    xiao24bei/xiaobei-skill

    A skill your agent uses when users want XiaoBei skill / xiaobei-skill / 小北在读研 style academic image-to-VBA reconstruction: convert academic figures, scientific diagrams, slides, screenshots, or other…

    579 GitHub stars~6.9k tokensUpdated 1 mo ago
    Documents & OfficeAuto-check passed
  • Ky Markdown Rebuilder

    KyrieCheungYep/ky-markdown-rebuilder

    Rebuild visual documents into reliable Markdown by combining text extraction with page or screenshot alignment.

    117 GitHub stars~5.7k tokensUpdated 2 mo ago
    Documents & OfficeAuto-check passed
  • Img2pptx

    Lancelot-Xie/img2pptx

    Reconstruct raster reference images as one-slide editable, modular, auditable PPTX files containing a complete SVG.

    158 GitHub stars~5.9k tokensUpdated 1 mo ago
    Documents & OfficeAuto-check passed
  • PPTX To Md

    sammcj/agentic-coding

    Convert a PPTX slide deck into per-slide markdown that preserves both the verbatim text and the meaning of embedded screenshots, diagrams and charts in their original layout positions.

    162 GitHub stars~1.8k tokensUpdated yesterday
    Documents & OfficeAuto-check passed
  • HTML Slides Maker

    microsoft/Huabu

    Official

    Orchestrate an approval-gated static HTML presentation workflow with optional technical diagrams.

    157 GitHub stars~222 tokensUpdated today
    Documents & OfficeAuto-check passed

More from JetBrains/youtrackdb

All 16 skills in this repo
  • Readability Feedback

    JetBrains/youtrackdb

    Official

    Audit a finished design document for hard-to-read or hard-to-understand paragraphs, then harden the house-style rules so future design docs avoid them.

    437 GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Review Docs

    JetBrains/youtrackdb

    Official

    Review documentation files for grammar, factual accuracy, and query correctness.

    437 GitHub stars~3k tokensUpdated today
    Auto-check passed
  • Edit Design

    JetBrains/youtrackdb

    Official

    Apply an edit to design.md or design-mechanics.md through the mutation discipline: apply → auto-review → iterate → present.

    437 GitHub stars~21k tokensUpdated today
    Auto-check passed
  • Migrate Workflow

    JetBrains/youtrackdb

    Official

    Migrate a branch's docs/adr/<dir/workflow/ artifacts by replaying workflow-format commits from the per-artifact stamp base through HEAD.

    437 GitHub stars~12k tokensUpdated today
    Auto-check passed
  • Run Jmh Benchmarks Hetzner

    JetBrains/youtrackdb

    Official

    Provision a Hetzner CCX33 server, deploy the project, run JMH benchmarks, collect results, and destroy the server.

    437 GitHub stars~3.7k tokensUpdated today
    Auto-check: warnings
  • Review Workflow PR

    JetBrains/youtrackdb

    Official

    Review a workflow-style PR's design, plan, and track files in research-mode Q&A; auto-records observations and submits a line-anchored review via gh api.

    437 GitHub stars~11k tokensUpdated today
    Auto-check passed

Questions about Create Presentation

What does Create Presentation do?

Generate a PPTX presentation explaining code changes on the current branch, with matplotlib diagrams and dark theme slides. Create Presentation is an agent skill from JetBrains/youtrackdb, published by the product's own GitHub organization. Generate a PPTX presentation explaining code changes on the current branch, with matplotlib diagrams and dark theme slides.

When should I use Create Presentation?

Create Presentation fits situations like: tasks that involve Slides and decks; tasks that involve PowerPoint presentations; tasks that involve Diagrams.

How do I install Create Presentation in Claude Code?

Run `npx skills add JetBrains/youtrackdb --skill create-presentation -a claude-code`. Or copy the skill folder (.claude/skills/create-presentation in JetBrains/youtrackdb) into .claude/skills/create-presentation in your project. Claude Code loads it when a task matches its description.

How do I install Create Presentation in Codex?

Run `npx skills add JetBrains/youtrackdb --skill create-presentation -a codex`. Or copy the skill folder (.claude/skills/create-presentation in JetBrains/youtrackdb) into .agents/skills/create-presentation in your project. Codex loads it when a task matches its description.

Can I use Create Presentation 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 JetBrains/youtrackdb --skill create-presentation -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create-presentation, .gemini/skills/create-presentation, .github/skills/create-presentation and .opencode/skills/create-presentation in your project.

What does Create Presentation need to run?

Going by SKILL.md and its folder, Create Presentation needs the command-line tools its instructions call (git, python3, pip and python). Our summary lists: Python 3.

Does Create Presentation access the network?

SKILL.md contains no URLs. Its commands use git and pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Create Presentation 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 Create Presentation use?

Create Presentation is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Create Presentation use?

About 1.8k tokens (SKILL.md is roughly 7k 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 Create Presentation?

Skills that share tags, products or a category with Create Presentation: Astra Figure Workflow (IamJerryXu/AstraDraw, 141 stars), Xiaobei Skill Image To Vba (xiao24bei/xiaobei-skill, 579 stars), Ky Markdown Rebuilder (KyrieCheungYep/ky-markdown-rebuilder, 117 stars) and Img2pptx (Lancelot-Xie/img2pptx, 158 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Create Presentation?

JetBrains (a GitHub organization, an official publisher) maintains it in JetBrains/youtrackdb, which has 437 GitHub stars. The repository holds 16 skills in this directory. The repository was last updated on October 7, 2026.

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