Make and change presentations in Herald Slides, the presentation editor in Herald OS - a deck from a topic (an outline first, a title slide, one idea a slide, short bullets, speaker notes, a closing…
Install the "herald-slides" agent skill from https://github.com/iamlukethedev/Herald-OS/tree/main/plugins/herald-os-bridge/skills/herald-slides into .claude/skills/herald-slides/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "herald-slides", then confirm the skill loads.
Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Type this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
skills CLI
$ npx skills add iamlukethedev/Herald-OS --skill herald-slides -a codex
Project install goes to .agents/skills/; add -g for ~/.codex/skills/.
Install the "herald-slides" agent skill from https://github.com/iamlukethedev/Herald-OS/tree/main/plugins/herald-os-bridge/skills/herald-slides into .agents/skills/herald-slides/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "herald-slides", then confirm the skill loads.
Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skills CLI
$ npx skills add iamlukethedev/Herald-OS --skill herald-slides -a cursor
Project install goes to .agents/skills/; add -g for ~/.cursor/skills/.
Install the "herald-slides" agent skill from https://github.com/iamlukethedev/Herald-OS/tree/main/plugins/herald-os-bridge/skills/herald-slides into .cursor/skills/herald-slides/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "herald-slides", then confirm the skill loads.
Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
skills CLI
$ npx skills add iamlukethedev/Herald-OS --skill herald-slides -a gemini-cli
Project install goes to .agents/skills/; add -g for ~/.gemini/skills/.
Install the "herald-slides" agent skill from https://github.com/iamlukethedev/Herald-OS/tree/main/plugins/herald-os-bridge/skills/herald-slides into .gemini/skills/herald-slides/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "herald-slides", then confirm the skill loads.
Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Installs for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
skills CLI
$ npx skills add iamlukethedev/Herald-OS --skill herald-slides -a github-copilot
Project install goes to .agents/skills/; add -g for ~/.copilot/skills/.
Install the "herald-slides" agent skill from https://github.com/iamlukethedev/Herald-OS/tree/main/plugins/herald-os-bridge/skills/herald-slides into .github/skills/herald-slides/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "herald-slides", then confirm the skill loads.
GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skills CLI
$ npx skills add iamlukethedev/Herald-OS --skill herald-slides -a opencode
OpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
Install the "herald-slides" agent skill from https://github.com/iamlukethedev/Herald-OS/tree/main/plugins/herald-os-bridge/skills/herald-slides into .opencode/skills/herald-slides/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "herald-slides", then confirm the skill loads.
OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Facts
Skill name
herald-slides
GitHub stars
408
Token cost
~4.8k tokens
SKILL.md length
2,524 words
Files
1
Skills in repo
8
Repo updated
First seen
Licence
MIT
At a glance
Make and change presentations in Herald Slides, the presentation editor in Herald OS - a deck from a topic (an outline first, a title slide, one idea a slide, short bullets, speaker notes, a closing…
Works in 5 steps: Find the deck. slides action=list shows… → Read before you change anything. slides… → Write the words yourself. Titles are… → …
Tasks that involve Slides and decks
SKILL.md covers The workflow, A deck from a topic, From a document or a sheet and Layouts for the content, plus 9 more sections
Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
What it does
Herald Slides is an agent skill from iamlukethedev/Herald-OS. Make and change presentations in Herald Slides, the presentation editor in Herald OS - a deck from a topic (an outline first, a title slide, one idea a slide, short bullets, speaker notes, a closing slide), decks from a Herald Docs document and slides of a Herald Sheets range, layouts chosen for the content, the slide master and its layouts (a logo, slide numbers, a footer and the date on every slide, placeholders, backgrounds), themes and custom themes in a brand's colours, transitions, gradients, flowcharts and…
Its SKILL.md is about 4.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 Microsoft PowerPoint. The repository describes itself as: An agent-native operating system, with Hermes Agent as the interface. Independent project, not affiliated with Nous Research. The licence is MIT.
When your agent uses it
Tasks that involve Slides and decks
Tasks that involve PowerPoint presentations
Tasks that involve Diagrams
Example prompts
“/herald-slides”
Workflow steps
5 steps, taken from the first numbered list in SKILL.md.
1Find the deck. slides action=list shows the presentations open in Herald Slides: name,
2Read before you change anything. slides action=read gives the size, theme, transition,
3Write the words yourself. Titles are short (a few words, no full stop). body is one line
4One call, one step. Every call is one step the person can undo (Ctrl+Z, ⌘Z on a Mac, or
5Check. Read the deck back (slides action=read) and say in a sentence what you made or
What it can do on your machine
Read from SKILL.md and the folder at commit 7babe0c. 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
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Network
No URLs in SKILL.md.
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
Herald Slides loads about 4.8k tokens when it runs. Until then it costs about 199 tokens; SKILL.md has 2,524 words of instructions outside code blocks.
Always· name and description, kept in context so the agent knows when to use it
~199
When it runs· the whole SKILL.md, loaded when a task matches
~4.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.
Download SKILL.mdSave it as .claude/skills/herald-slides/SKILL.md (or your agent's skills folder).
name
herald-slides
description
Make and change presentations in Herald Slides, the presentation editor in Herald OS - a deck from a topic (an outline first, a title slide, one idea a slide, short bullets, speaker notes, a closing slide), decks from a Herald Docs document and slides of a Herald Sheets range, layouts chosen for the content, the slide master and its layouts (a logo, slide numbers, a footer and the date on every slide, placeholders, backgrounds), themes and custom themes in a brand's colours, transitions, gradients, flowcharts and diagrams with grouped shapes and connectors, table borders, speaker notes for every slide, pictures, tables, text boxes and shapes, reordering, duplicating and hiding slides, find and replace, saving PowerPoint files and exporting PDFs, all through the slides tool
Herald Slides
Herald Slides is the presentation editor built into Herald OS. It opens and saves PowerPoint files
(.pptx), and the person watches every change land in the Slides window. Use the slides tool
whenever they want a deck made or changed: "make a deck about our Q3 results", "turn my report
into slides", "put the budget table on a slide", "add our logo and slide numbers", "make it
darker", "draw the approval process as a flowchart", "export it as a PDF".
The workflow
Find the deck.slides action=list shows the presentations open in Herald Slides: name,
path, unsaved edits, the one in front (active), its slide in front and what is selected.
slides action=list_all adds what is open in Herald Docs and Sheets, and os_ui action=state
carries the same list as office. "This slide" is the slide in front. Name a deck by its file
(presentation="~/Documents/Q3 review.pptx") or by its tab (presentation="Q3 review"); left
out, a call works on the one in front.
Read before you change anything.slides action=read gives the size, theme, transition,
header and footer, and each slide's number, id, layout, title, text, speaker notes, whether it
is hidden, its own theme, transition and background where it has them, and its elements with
their ids, boxes in points, groups and what each connector joins (slide=3 for one). Name a
slide by its number (1 is the first), its id or its title; left out, a call works on the slide
in front. Name an element by its id from read (or its number in the slide's list).
slides action=find text="Q2" lists the slides where something appears.
Write the words yourself. Titles are short (a few words, no full stop). body is one line
a bullet; two spaces or a tab at the start of a line go a level deeper.
One call, one step. Every call is one step the person can undo (Ctrl+Z, ⌘Z on a Mac, or
slides action=undo, with steps=3 for several). Land a whole change in one call. Several
changes go in one slides action=edit (below), never a string of small calls.
Check. Read the deck back (slides action=read) and say in a sentence what you made or
changed.
An open deck changes in its window. A file that is not open is read, changed and written straight
back to disk: the person is asked first every time, Herald backs the original up the first time
it writes over it, and it refuses when the file holds something it cannot keep (see the end).
Then open it (slides action=open path="~/Documents/Q3 review.pptx"; the answer lists the slides
and what Herald shows differently from the file) and work in the window, above all before naming
elements, whose ids a file that is not open may not keep from one call to the next.
A deck from a topic
Plan the outline first: the story in 6 to 12 slide titles, from the opening question to
the answer. When the person wants to see the outline before you build it, give it and wait;
otherwise build it straight away.
One idea a slide. A title slide (the deck's title, and a line with who and when), then a
slide for each point, a section slide between the parts of a long deck, and a closing slide
(the takeaway, the next steps, or the question to discuss).
Short, parallel bullets: three to five a slide, each a few words, all built the same way
("Cut costs", "Grow sales", "Hire two engineers"). The detail goes in the speaker notes, in
full sentences: what to say on that slide.
Make it in one call, with a theme that suits the audience:
slides action=new name="Q3 review" theme=herald slides=[
{"layout": "title", "title": "Q3 review", "body": "Finance team · October 2026"},
{"title": "Where we landed", "body": "Revenue up 12%\nCosts flat\nMargin at 18%", "notes": "Lead with revenue: it beat the plan by 4 points, mostly from the new subscription tier."},
{"layout": "two-content", "title": "Subscriptions vs one-off sales", "body": ["Subscriptions\n Up 31%\n Churn 2.1%", "One-off sales\n Down 6%\n Mostly hardware"], "notes": "The mix keeps moving to subscriptions."},
{"layout": "section", "title": "Next quarter", "body": "What we will change"},
{"title": "Three priorities", "body": "Raise prices on the base tier\nCut delivery times\nHire two support staff", "notes": "Ask for a decision on prices today."},
{"title": "Thank you", "body": "Questions and next steps", "notes": "Close on the price decision."}
]
Finish it on the master in one edit: slide numbers and a footer, the logo if they have
one (below).
path saves the new deck at once (a new .pptx, never over a file that exists): give it only
when the person said where.
From a document or a sheet
A document becomes a deck:slides action=from_document document="~/Documents/Report.docx"
makes a new presentation named after it as one step, as File > New from Document does: a title
slide from its title, then each heading's slides of bullets (its paragraphs and list items, list
levels kept), going on over "(continued)" slides as they need; a top heading with headings under
it makes a section header; pictures go beside their text or on slides of their own, and tables,
quotes and code on slides of their own. Fields read as the text they show, and notes as their
raised numbers with their text in the speaker notes. level=2 makes only the second-level
headings start slides (deeper ones become bullets, higher ones section headers); notes=true
is for a talk with a script (every paragraph in the speaker notes, short bullets on the slides);
presentation= adds the slides to the end of a deck instead. Then read it and tidy it in one
edit: shorter titles, thin slides merged, a closing slide, a theme.
Figures from a sheet:slides action=insert_range workbook="~/Documents/Budget.xlsx" range="A1:D6" slide="Costs" puts the range on the slide as a table, as its cells show
(formatted numbers and dates), in place of the slide's empty text placeholder or under its
title (x, y, width place it yourself; range=selection takes what is selected in an open
workbook). slides action=add_slide_from_sheet workbook="~/Documents/Budget.xlsx" range="A1:D30" title="Budget" after="Costs" makes a Title Only slide of it, going on over more slides with the
header row repeated when it is long. Keep a table to what matters (a few rows and columns), and
add a summary slide with the two or three figures to remember.
Layouts for the content
title: the deck's first slide; body is the line under the title.
title-content: a title and bullets, the default.
two-content: two columns, for comparisons, before and after, pros and cons. Give body as a
list of two bodies and name both sides in the title ("Rent vs buy").
comparison: two columns, each under a bold heading of its own.
section: a big title and a line under it, between the parts of a long deck.
title-only: a title and the room under it, for a table, a picture, a diagram or a big number.
blank: nothing, for a picture that fills the slide.
picture-caption: a title, a picture on the right and a caption on the left (body is the
caption; add_image without a place fills the picture's spot).
A big number reads best alone: a title-only slide, then add_text text="12%" size="120" bold=true align=center (sizes go from 4 to 400 points) with a smaller line under it. Change a
slide's layout with set_slide layout=two-content; its text moves into the new layout's places.
The slide master and its layouts
What every slide shares lives on the slide master, and what every slide of one layout shares on
that layout: change the master or a layout rather than every slide.slides action=read_master
shows the master's background, placeholders and elements, each layout with the slides on it, and
the header and footer.
Slide numbers, a footer, the date:set_header_footer number=true footer="Acme · Confidential" skipTitle=true (date=true dateFormat=dmy, or dateText="Q3 2026"). They go in
the master's own places on every slide; never draw them as text boxes.
A logo on every slide:add_logo source="~/Pictures/logo.png" corner=top-right (clear of
the footer; layout=title for title slides only).
Drawings on every slide:add_master_shape kind=rect x=0 y=0 width=960 height=12 fill=accent1 (a band), add_master_text text="Draft", add_master_image (a watermark);
layout= puts them on one layout's slides. remove_from_master elements=[...] takes them off.
Placeholders:set_placeholder role=title size="36" color=accent1 restyles the master's
title, and every layout's and slide's title that still looked like it follows; layout= and
which= (the second text of two-content is 2) reach one layout's, x, y, width,
height move it.
Backgrounds:set_background layout=master gradient="background2 to background" behind every
slide, layout=section for section slides, slide="1, 7" for some slides; source= a picture.
show_master_graphics show=false slide=1 hides the logo and bands on a slide (a cover photo),
layout= on a layout's slides; rename_layout, and reset_master puts Herald's own master
back (it asks the person first, as remove_from_master does).
Themes and backgrounds
theme (on new, or slides action=set_theme theme=midnight) changes the colours and fonts
everywhere they come from the theme, and keeps what was picked by hand: herald (white with navy
text and blue accents, the default), midnight (dark navy with light text, for big screens and
keynotes), paper (warm cream with serif type, for stories and teaching), graphite (dark grey
with yellow accents), forest (pale with green accents), coral (warm peach and coral, friendly),
mono (black and white with a red accent, stark), ocean (pale blue and teal, calm), aurora
(deep blue with a soft glow, bold), dune (a cream-to-sand gradient with serif headings), slate
(cool off-white with blue accents, sober), blossom (a pale pink gradient) and ember (dark warm
brown with orange accents). set_theme slide="3, 4" gives some slides a theme of their own.
Custom themes: for a brand, make_theme name="Acme" from=slate colors={"accent1": "#e4002b", "text": "#1d1d1b"} headingFont="Futura" apply=true saves a theme of the person's own for every
deck and puts it on this one. list_themes lists Herald's and theirs (by id and name);
delete_theme takes one away and asks first. Keep text readable on its backgrounds.
set_slide background=accent1 colours one slide (a section slide, the closing slide);
set_background gradient="navy to teal" angle=45 gives slides a gradient. Colours are #rrggbb,
names like navy, or theme colours accent1 to accent6, text and background, which follow
the theme when it changes. size=standard on new makes a 4:3 deck instead of 16:9.
Show full SKILL.md (929 more words)Show less
Transitions
slides action=set_transition kind=push slide=all gives every slide (and the deck) one transition;
without slide=all it is the slide in front's own, or slide="2-4"'s. Kinds: none, fade,
push, wipe, cover, uncover, split and zoom; direction is the way the new slide
moves (left comes in from the right, right, up, down; in or out for split and zoom),
duration its seconds (0.5). Keep to one quiet kind for a whole deck; a different one marks a
section.
Speaker notes, order and hiding
Notes for every slide: read the deck, then write them all in one edit with a setSlide per
slide ({"op": "setSlide", "slide": "2", "notes": "..."}): what to say, in full sentences,
about a minute a slide, with the numbers on the slide explained.
move_slide slide="Risks" to=last (a number, first or last), duplicate_slide slide=3
(a copy right after it, notes and all), set_slide slide=7 hidden=true (skipped when
presenting, still in the file), and remove_slide slide=4, which deletes it and asks the
person first.
Presenting is the person's: they start it from the Slides window.
Pictures, tables, text and shapes
Boxes are in points from the top-left: a wide slide is 960 by 540, a standard one 720 by 540.
Without a place, things go in the middle or into the slide's empty placeholder.
Pictures from files (PNG, JPEG, GIF, WebP or BMP): slides action=add_image slide=3 source="~/Pictures/team.jpg"; with x, y, width, height, fit=contain (all of it),
cover (fills the box, cut to fit) or stretch; fit=slide fills the whole slide. Use the
person's pictures, or ones they ask you to find or make.
Tables: slides action=add_table slide="Prices" cells=[["Plan", "Price"], ["Base", "$9"], ["Pro", "$19"]] (the first row is the header); or insert_range from Herald Sheets. Lines:
set_cell_borders range="A1:C1" sides=bottom color=accent1 width=2 (sides outer, inner, all,
top, bottom, left, right or none; cells as a sheet names them, or row 1, column 2).
Text boxes: add_text text="Draft" x=40 y=480 size="18" color=accent2.
Shapes: add_shape kind=roundRect x=600 y=380 width=300 height=100 fill=accent1 text="New in Q3". kind is any of PowerPoint's presets by name, in families: rectangles, basic shapes
(hexagon, can, cloud, heart, lightningBolt…), brackets and braces, arrows
(rightArrow, chevron, bentArrow, uturnArrow…), math (mathPlus, mathEqual…),
flowchart (flowChartProcess, flowChartDecision, flowChartTerminator,
flowChartInputOutput, flowChartDocument…), stars and banners (star5, star12, wave) and
callouts (wedgeRoundRectCallout, cloudCallout…); words like circle, star, cylinder or decision
work too.
Gradients: gradient="accent1 to accent2" angle=0 on add_shape, or set_fill elements=["shape-2"] gradient=... (fill= a colour, or none) on what is there.
Diagrams: groups and connectors
A flowchart is shapes joined by connectors: add the shapes (flowChartTerminator for start and
end, flowChartProcess for steps, flowChartDecision for questions) in rows or columns with room
between them, then add_connector from="shape-1" to="shape-2" for each arrow. A connector is glued
to the two shapes' nearest connection sites and follows them when they move; kind=elbow bends at
right angles, curved curves, arrow puts its head at the end (the default), the start, both or
neither; connection_sites element=... lists a shape's sites for fromSite and toSite. Build a
whole diagram in one edit (an addShape per box, then an addConnector per arrow, naming the
shapes by their numbers on the slide). Then group elements=[...] makes it one thing to move,
rotate elements=[...] degrees=90 turns elements together, ungroup takes a group apart, and
convert_to_shapes turns a file's SmartArt into shapes that can be edited.
Several changes as one step
slides action=edit edits=[...] makes every change in order as ONE step to undo, and if one
fails, none is made. Each edit sees the deck as the ones before left it: a slide one edit adds can
be named by its title in the next, and an edit without a slide lands where the one before went.
The ops: addSlide, setSlide, duplicateSlide, moveSlide, removeSlide, addText,
addShape, addImage, addTable, setTheme and replace; and, with the same arguments as the
actions of the same words, setBackground, addMasterText, addMasterShape, addMasterImage,
addLogo, removeFromMaster, setPlaceholder, showMasterGraphics, renameLayout,
resetMaster, setHeaderFooter, setTransition, group, ungroup, rotate,
convertToShapes, addConnector, setCellBorders, setFill and addSlideFromSheet. A batch
that removes a slide or something from the master asks the person first, as the action alone does.
slides action=replace find="Q2" replacement="Q3" changes titles, text, shapes, tables and notes
everywhere (all=false only the first; leaving out replacement deletes the matches).
Saving and exporting
Never save unless the person asks. An open deck keeps its unsaved edits (its tab says so), and
they save with Ctrl+S (⌘S on a Mac) or ask you to.
"Save it": slides action=save. Saving over the deck's own file asks the person every time;
the first time Herald writes over a file it shows what it cannot keep, and the original goes to
Herald's Office backups.
A deck never saved needs a place: slides action=save to="~/Documents/Q3 review.pptx". A file
that exists is replaced only with overwrite=true, which asks first.
A PDF: slides action=export_pdf writes a page a slide (hidden slides left out) to a new file
in ~/Documents, or to="~/Desktop/Q3 review.pdf". Say where it went.
What Herald Slides cannot do yet
No animations (a file's animations and automatic timings are not kept), no charts (a file's
charts are approximated, and its SmartArt shows as a drawing until convert_to_shapes), videos
shown as their poster frame, sounds left out, and no comments, macros, embedded fonts, sections
or custom shows. Opening a file lists what it had. Say so plainly, and offer what works: a table
or a big-number slide in place of a chart, a diagram of shapes and connectors in place of
SmartArt, a picture exported from Herald Canvas in place of a drawing, a duplicated slide with one
more bullet in place of a build animation.
Herald Slides 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.
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.
Convert a complete academic source package, such as a paper, report, proposal, review outline, PDF, Word document, Markdown file, or pasted text, into a Chinese academic .pptx deck.
Change Herald OS itself - make and switch themes, fonts and the wallpaper, widgets, the menu bar, control-menu entries, branding, keybindings, settings, routines and hooks
Work in Herald Sheets, the spreadsheet in Herald OS - read workbooks, write values and formulas (a formula from a description, explaining one, filling it down), fill a column from examples, clean…
Make and edit pictures in Herald Canvas, the layered image editor in Herald OS - posters, banners, thumbnails, collages and photo fixes through the canvas tool, with editable text and shape layers…
Write and edit documents in Herald Docs, the word processor in Herald OS - letters, cover letters, CVs, reports, memos, meeting notes, proposals, essays and newsletters drafted from a brief or a…
Find documents such as invoices among badly named files, read them, name them clearly and file them where the person keeps them, with a plan they approve and an undo
Make and change presentations in Herald Slides, the presentation editor in Herald OS - a deck from a topic (an outline first, a title slide, one idea a slide, short bullets, speaker notes, a closing…. Herald Slides is an agent skill from iamlukethedev/Herald-OS.
When should I use Herald Slides?
Herald Slides fits situations like: tasks that involve Slides and decks; tasks that involve PowerPoint presentations; tasks that involve Diagrams.
How do I install Herald Slides in Claude Code?
Run `npx skills add iamlukethedev/Herald-OS --skill herald-slides -a claude-code`. Or copy the skill folder (plugins/herald-os-bridge/skills/herald-slides in iamlukethedev/Herald-OS) into .claude/skills/herald-slides in your project. Claude Code loads it when a task matches its description.
How do I install Herald Slides in Codex?
Run `npx skills add iamlukethedev/Herald-OS --skill herald-slides -a codex`. Or copy the skill folder (plugins/herald-os-bridge/skills/herald-slides in iamlukethedev/Herald-OS) into .agents/skills/herald-slides in your project. Codex loads it when a task matches its description.
Can I use Herald Slides 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 iamlukethedev/Herald-OS --skill herald-slides -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/herald-slides, .gemini/skills/herald-slides, .github/skills/herald-slides and .opencode/skills/herald-slides in your project.
What does Herald Slides need to run?
SKILL.md names no scripts, command-line tools or credentials: Herald Slides is instructions for the agent only.
Does Herald Slides access the network?
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Is Herald Slides 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 Herald Slides use?
Herald Slides is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
How many tokens does Herald Slides use?
About 4.8k tokens (SKILL.md is roughly 19k 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 Herald Slides?
Skills that share tags, products or a category with Herald Slides: Xiaobei Skill Image To Vba (xiao24bei/xiaobei-skill, 586 stars), Ky Markdown Rebuilder (KyrieCheungYep/ky-markdown-rebuilder, 117 stars), PPTX To Md (sammcj/agentic-coding, 162 stars) and Create Presentation (JetBrains/youtrackdb, 439 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Who maintains Herald Slides?
iamlukethedev (a GitHub user) maintains it in iamlukethedev/Herald-OS, which has 408 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on October 10, 2026.
Source: iamlukethedev/Herald-OS on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.