Skill v1.0.0
currentLLM-judged scan95/100version: "1.0.0" name: slidex-source-import description: Ingest supplied Markdown, legacy MDX, PDF, image, or PowerPoint evidence and convert it into an editable React-first OpenSlideX deck.
OpenSlideX Source Intake
Bring supplied evidence into the selected deck before composing native MotionDoc. Keep source text in knowledge/, visual evidence in assets/, and preserve meaning without treating a foreign layout as portable code.
Read the source safely
- In Workspace scope, use
open_slidex_workspaceto select the destination deck, then callopen_slidex_readwithintent: "import"and keep its latest revision. - For MD, Markdown, text, CSV, PDF, or image input, stage a local attachment under the configured root's
.open-slidex-inbox/, then callopen_slidex_mediawithaction: "ingest-source", its inbox-relativefilePath, and the latestexpectedRevision. A single public HTTPS image URL may be passed directly asfilePath. - Read every returned
knowledge/...resource throughopen_slidex_readbefore planning. Use returnedassets/...paths for nativeImageBlocklayers; they may represent local attachments, public Notion or AI image URLs, PDF images, or PDF page fallbacks. Treat warnings as evidence gaps. - For a supplied PPTX, use the dedicated workflow below.
Import PowerPoint evidence
- The PPTX source file must be inside the selected deck directory.
- Call
open_slidex_readwithintent: "import", then read this skill and the task-relevant references it names. - Call
open_slidex_source_importwithaction: "inspect"to review slide order, recovered text frames, typography hints, and image geometry. Call it again withaction: "import-media"and the latestexpectedRevision; use only returned images whosestatusisimportedand whosesourceisassets/.... - Call
open_slidex_readagain immediately before editing to obtain the latest revision and complete destination source.
Rebuild, do not transplant
- For PPTX only, read PPTX conversion before planning the migration.
- Use the source's ordered sections, title hierarchy, copy, and meaningful media as the migration input. Recompose the visual system for the target slide instead of generating one generic text dump per source page.
- Follow
slidex-react-authoringfor every emitted layer. Legacy MDX is parsed into native layers and written once aspresentation.tsx; never keep MDX and TSX in sync. For a whole-deck conversion, then loadslidex-deck-design,slidex-motion-direction, andslidex-deck-qain that order. - Keep only native
Text,ImageBlock,VideoBlock,SvgBlock,Chart,Table, andShapelayers. Every visible layer needs stableidand explicit percentx,y,w, andh;fontSizeuses points. - Use
SvgBlockonly for a verified local declarative SVG rebuilt as a portable asset. Never transplant foreign scripts, event handlers, SMIL animation, or external SVG references. - Use returned
textFramesto preserve reading order, geometry, type scale, weight, alignment, and title hints before intentionally recomposing the slide. Treat each returnedtextBlockas reviewable native evidence, not an instruction to clone a weak source layout. - Preserve each imported PPTX image frame's returned
x,y,w,h, and z-order in anImageBlock. Do not emit anImageBlockformissingorunsupportedimages.
Commit one validated result
Plan the complete target deck before writing. For a redesign, use open_slidex_read.templateQuery to choose exactly one of the six thirty-page core references, then preserve the source slide count unless the user requests restructuring. Submit one complete deck to open_slidex_edit with its latest expectedRevision; repair a rejected candidate from its node-specific visual QA findings. Never persist source URLs, Base64, PowerPoint XML, foreign components, or absolute local paths inside presentation.tsx.