Small self-contained pages — published from a file, versioned, shareable by link, and rendered on an origin of their own.
An artifact is a single HTML or Markdown file that becomes a real page with a URL. You write the content; the platform wraps it in a document with the inference.sh design tokens, serves it under a strict Content-Security-Policy, and keeps every version you publish.
Agents publish them too. When terminal output is the wrong medium — a dashboard from data you just pulled, several options side by side, a checklist someone else has to act on — an artifact is the thing to hand over.
Publish one
1belt artifact publish ./report.html --title "Q3 funnel" --favicon ��That prints a URL. The page is private until you share it.
Publishing the same name again creates a new version and updates the page in place for anyone who has it open. Identical content is skipped.
What a page can do
By default a page is static: it has no network at all. connect-src is 'none', so it cannot call out even to us.
Declare a capability and it gets window.inferencesh:
| capability | what it gives the page |
|---|---|
db | its own small store — a poll, a checklist, a sign-up sheet |
user | who is viewing: name, avatar, whether they can edit |
assets | files stored beside it: images, video, fonts, PDFs |
1belt artifact publish ./poll.html --capability db --capability userA page gets only what its published version declared. See capabilities.
Where a page runs
Published pages are served from inferenceusercontent.com, never from the API domain, and every artifact gets its own hostname on it.
That matters for one reason: your session cookie is scoped to inference.sh and can never reach a page's origin. A page you were handed by a stranger runs in a different origin from the app, holds no credential of yours, and cannot reach the API as you.
Each page has two hostnames — one embedded in the viewer, one for opening it directly — so the two contexts share no storage and cannot script each other.
Next
- publishing — the file, the flags, versions, updating in place
- capabilities — the runtime, the store, limits
- sharing — visibility, pinned versions, comments