LearnOS docs
CLI

Presentations

Generate, share, and edit course slide decks from the CLI

Presentations

Slide decks derived from a course — useful as a team kickoff when a course is assigned. View in-browser at /presentations/<id>, track progress like a lesson, and download as .pptx.

Sharing: ready decks are readable by anyone who can access the course (owned / enrolled / assigned / published). Progress is per-viewer. Only the owner can edit or regenerate.

Generate from course content

pnpm learnos -- presentation generate \
  --scope course \
  --course <course-id> \
  --purpose intro

--purpose is one of intro (default), overview, or summary. Intro decks use a kickoff template grounded in the course syllabus. Deterministic by source content — re-runs hit the cache unless you pass --force.

Author slides explicitly

Agents that already know the content can skip the LLM:

pnpm learnos -- presentation create \
  --course <course-id> \
  --title "Introducing AI Engineering" \
  --slides '[
    {"title":"Welcome","body_md":"A 6-week path for the platform team","layout":"title"},
    {"title":"What you will learn","body_md":"- Retrieval\n- Agents\n- Evaluation","layout":"bullets"}
  ]'

Or --slides-file ./deck.json.

Edit an owned deck

pnpm learnos -- presentation update <id> --title "New title"
pnpm learnos -- presentation replace-slides <id> --slides-file ./deck.json
pnpm learnos -- presentation add-slide <id> --title "FAQ" --body "- Ask in #learning"
pnpm learnos -- presentation update-slide <id> 2 --title "Revised outcomes"

Read / list / download

pnpm learnos -- presentation list --course <course-id>
pnpm learnos -- presentation list --course <course-id> --shared   # include teammates' ready decks
pnpm learnos -- presentation get <id>
pnpm learnos -- presentation download <id> --out kickoff.pptx

The download command builds a PowerPoint file locally via pptxgenjs — no network round-trip to the web app required.

On this page

Command Palette

Search for a command to run...