Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/modem-dev/sideshow/sideshownpx skills add modem-dev/sideshow --skill sideshowgit clone --depth 1 https://github.com/modem-dev/sideshowWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00054 | $0.00676 |
| Opus 5 | $0.00027 | $0.00338 |
| Sonnet 5 | $0.00011 | $0.00135 |
| Haiku 4.5 | $0.00005 | $0.00068 |
Grade A, and why
sideshow scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 68 lines — stays where its author put it; the contents beside it link to each section on GitHub.
sideshow (plugin)
The user keeps a sideshow surface open in their browser. You publish HTML snippets to it; they appear instantly. The user comments on any snippet, and this plugin streams those comments to you as notifications — you do not poll or arm a watcher. It is a two-way surface, not a fire-and-forget renderer.
How feedback reaches you
A background monitor (sideshow watch) runs for the whole session and delivers
each new user comment as a notification on your next turn, for example:
sideshow comment on “Cache layout” (snippet a1b2c3): “tighten the spacing”
Treat every such line as a message from the user. Respond by revising the
snippet it refers to (update_snippet / sideshow update <id>) or replying
(reply_to_user / sideshow comment). Comments are delivered exactly once —
you will not see the same one twice, so act on each when it arrives. You never
need to call wait_for_feedback just to stay aware of comments; the monitor
already does that. (Publish/update/reply responses may still carry a
userFeedback array; it is the same stream, also delivered once.)
Before your first publish
Fetch the design contract once per session (fragment rules, theme CSS variables, CDN allowlist, sizing):
- MCP:
get_design_guide - CLI:
sideshow guide
Publishing
Prefer the MCP tools when connected (publish_snippet, update_snippet,
wait_for_feedback, reply_to_user); otherwise use the CLI. Session grouping
is automatic.
sideshow publish sketch.html --title "Cache layout" --session-title "Cache redesign"
echo '<p>...</p>' | sideshow publish - --title "Quick note"
Rules of thumb:
- On your first publish, set a session title that names the task ("Auth
refactor"), not the tool —
sessionTitle(MCP) /--session-title(CLI). It applies only when the session is created; never retitle later (the user may have renamed it in the viewer). - One concept per snippet, with a clear title. A series of small snippets beats one giant page.
- Iterate with
update_snippet/sideshow update <id>(same card, new version) instead of publishing near-duplicates. - Use the kit from the design guide (pre-styled form elements, SVG utility classes) before writing CSS; otherwise use the theme CSS variables so snippets work in dark mode.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 68 lines · 54 tokens per session scan A d47ae5671ebd
sideshow is a skill published in the GitHub repository modem-dev/sideshow (567 stars, last pushed 5d ago), licensed MIT. It adds 54 tokens to every session and 676 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
embedded-captions
Add captions or subtitles to an existing single-subject talking-head video without editing the footage. Use for plain verbatim captions, cinematic captions embedded behind the subject, VFX captions, “炸/特效/酷炫字幕,” or a named identity from the 35-style catalog. Route by visual identity, not by backend engine. The quiet…
slideshow
Author a HyperFrames slideshow — a presentation, pitch deck, or interactive deck with discrete slides, fragment reveals, branching, hotspot navigation, and built-in presenter mode with speaker notes; also converts an existing page into a deck. Output is a navigable deck, not a rendered MP4. If the user didn't…
faceless-explainer
Turn arbitrary text — an article, notes, a topic, a brief — into a faceless explainer video: there is no site or footage to capture, so the visuals are invented per scene (typography, abstract graphics, diagrams, data-viz). Use for topic explainers, concept breakdowns, how-tos, listicles. Not a video built from a…
general-video
Author or edit a custom HyperFrames composition when no specialized workflow fits, or when BRIEF.md sets flow: companion. Use for longer or multi-scene pieces, brand and sizzle reels, montages, static loops, static title cards, footage remixes, and freeform builds. Use motion-graphics instead for a short unnarrated…
motion-graphics
A short, design-led motion graphic where motion is the message — kinetic typography, stat count-up, chart/data-viz hit, logo sting / brand lockup, lower-third / callout / social overlay, animated map (highlight regions, connect places, zoom to a location), animated tweet / news-article / headline, webpage / UI…
hyperframes-registry
Install, discover, and wire registry blocks and components into HyperFrames compositions. Use when running hyperframes add or hyperframes catalog, installing one item or every block matching a tag, wiring an installed item into index.html, or working with hyperframes.json. Covers discovery, install locations, block…