Skip to content
helmstudio
Contents

Documentation

helmstudio runs studios: repositories that each wrap an open-weight model — video, image or speech — behind a web page of their own. It installs a studio from a manifest, fetches its weights, runs its processes, keeps one heavy model in memory at a time, and gives every studio the same storage, gallery and timeline, so what one makes is there for the next.

These pages are for someone writing a studio, or wrapping a repository someone else wrote.

Three packages, one direction

A studio takes as much of helmstudio as it wants. None of it is required: a studio that uses no package at all still installs, launches and runs.

Package Gives a studio Depends on
helm-css Tokens, and classes for layout and components, in both themes. No JavaScript. Nothing.
helm-runtime-sdk A client for the platform API — settings, sessions, records, assets, the gallery, jobs, the timeline and events — in Go, Python and JavaScript, generated from one contract. The API contract.
helm-ui-sdk helm-gallery, helm-player, helm-terminal and helm-timeline, as custom elements. helm-css, and the browser build of the runtime SDK.

Only the runtime SDK knows the wire format. A component is given a client and calls its methods, and helm-css assumes no component's markup, so nothing points back up the chain.

What no package will ever contain: prompt builders, parameter panels, model pickers and scheduler controls. Those are where studios differ, and where their authors' judgement lives.

Where to start

What is not here yet

There is no release, so everything in these pages runs from a clone of the repository, and the pages say so where it matters. Four commands the design describes are not built — helm studio init, helm test, helm doctor and helm adopt — and neither are helm dev --fixtures and --fail. Where a page would use one, it says so.