cd /news/ai-products/vibeos Β· home β€Ί topics β€Ί ai-products β€Ί article
[ARTICLE Β· art-23456] src=github.com pub= topic=ai-products verified=true sentiment=↑ positive

VibeOS

VibeOS, a fully hallucinated operating system for macOS inspired by a BUILD 2026 demo, launches as a real desktop shell with fake apps generated on the fly by Anthropic's Claude AI. The system creates a functional menu bar, dock, and draggable windows locally, while each app window is streamed as an interactive HTML mini-app running in a sandboxed iframe, with Claude writing working JavaScript for local computation. Users can log into different personas that change the entire OS theme and app cache, with the system supporting persistent caching, prefetching, and patch updates to minimize API calls.

read3 min publishedJun 6, 2026

A fully hallucinated operating system for macOS, inspired by Steve Sanderson's vibeOS from BUILD 2026.

The desktop shell is real and local (menu bar, dock, draggable windows, menus β€” all instant, zero API calls). The apps are not: each app window is hallucinated by Claude as a self-contained interactive HTML mini-app running in a sandboxed iframe. Claude writes working JavaScript on the fly, so a calculator actually computes locally; only actions that need fresh imagination (navigating the fake Safari, etc.) trigger a regeneration. Opened apps are cached, so reopening is instant.

  • macOS 13+
  • Swift toolchain (Xcode or Command Line Tools: xcode-select --install

) - An Anthropic API key ( https://console.anthropic.com)

make run          # build & launch
make app          # build WibeOS.app, then: open WibeOS.app

On first launch it asks for your API key (stored in the app's preferences; or set ANTHROPIC_API_KEY

in the environment instead).

The dock has an App Store stocked entirely with apps invented for whoever is logged in β€” Get installs them to the dock permanently (per persona; right-click a dock icon to remove). On first login each persona also gets a full OS theme hallucinated for them β€” wallpaper, accent, menu bar, dock, window chrome, fonts β€” and apps are told the accent/dark-mode so they match.

Boot lands on a login screen. Who you log in as changes everything: the persona is injected into every hallucination, so Grandma's Mail is chain letters in giant fonts while the hacker kid's whole machine is neon-on-black 1998. Each persona gets its own app cache. Click + to invent new personas ("a medieval wizard discovering computers"); right-click an avatar to remove it. Log out via the menu.

  • Click dock icons to "launch" apps β€” you watch the HTML stream by as Claude hallucinates the app, then it becomes real(ish). Click ✨ to imagine any app.
  • Option-click a dock icon (or View β†’ Re-imagine) to force a fresh hallucination instead of the cached version.
  • Menu bar, window dragging/minimize/zoom, Cmd+W close β€” all local and instant. Cmd+R

reboots.Cmd+Ctrl+F

for full screen β€” recommended for the illusion.- Right-click β†’ Inspect Element works for debugging the generated HTML.

  • Camera/photo-booth apps use your real webcam (macOS will ask once). For the permission prompt to be attributed correctly, run as a bundle: make app

thenopen WibeOS.app

β€” withmake run

the prompt belongs to your terminal.

Persistent cache: each app is hallucinated once, then stored in~/Library/Application Support/wibeOS/cache

β€” reopening is instant, even across reboots. Option-click a dock icon or View β†’ Re-imagine to regenerate.Prefetch: at boot, the dock apps are pre-hallucinated in the background (2 at a time), so most apps are ready before you click. Disable withWIBEOS_PREFETCH=0

(first boot prefetch costs roughly 8 app generations).Patch updates: data-wibe actions (browser navigation, opening an email…) return only the changed region as<wibe-patch select="…">

blocks instead of the whole app β€” a fraction of the tokens, applied live without remounting.Prompt caching: the system prompt is cached server-side across calls.** Model**: defaults toclaude-haiku-4-5-20251001

(fast). For fancier apps:WIBEOS_MODEL=claude-sonnet-4-6 make run

.

  • System prompt: edit systemPrompt

inSources/WibeOS/AppDelegate.swift

to change the OS's personality, default dock, look, etc.

open app ─▢ shell asks Claude for ONE self-contained HTML app (streamed)
         ─▢ injected bridge script added, mounted in sandboxed <iframe>
         ─▢ app runs locally (its own JS) β€” most clicks cost nothing
         ─▢ controls marked data-wibe / data-wibe-enter round-trip to Claude
            for fresh hallucinated content (whole-window re-render)

Each window keeps its own small conversation history (creation pair + last 6 messages), so updates stay consistent and cheap. The Swift layer is a stateless streaming proxy to the Anthropic API.

Only app generation and data-wibe actions cost tokens; everything else is local.

── more in #ai-products 4 stories Β· sorted by recency
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain β€” perfect for shipping the agent you just read about.

$git push zahid main
β†’ Live at https://your-agent.zahid.host βœ“
Get free account β†’ Pricing
from €0/mo Β· no card required
LIVE [news/vibeos] indexed:0 read:3min 2026-06-06 Β· β€”