open-slide

Overview

How open-slide and your coding agent work together.

open-slide treats your coding agent as a first-class user. Decks are React, agents are great at React, the gap between "make slides about X" and a polished deck is mostly the runtime — which open-slide provides.

What ships in the workspace

npx @open-slide/cli init generates an AGENTS.md (and CLAUDE.md) at the root with the framework's hard rules, plus a skills/ folder with four skills the agent invokes by name:

The skills are kept inside the workspace (not the agent's global config) so they version with the project. open-slide sync:skills re-syncs them from the package if you upgrade.

The hard rules (AGENTS.md)

Short, intentional, machine-readable:

  • Slides go under slides/<kebab-case-id>/.
  • Entry is slides/<id>/index.tsx.
  • Assets sit in slides/<id>/assets/.
  • Don't touch package.json, open-slide.config.ts, or other slides.
  • Don't add dependencies. Use only React and standard web APIs.

These constraints protect the agent from itself: it can't accidentally install a UI library, rewrite global config, or stomp on another deck.

On this page