VibeTV is a physical desk display for AI builders. It keeps usage, limits, tokens, reset times, and workflow status visible on your desk so you can see important changes before they interrupt your work.
Start here: Buy the hardware · Open Control Center · Setup guide · Themes · Provider support
| Mini | Claude Creature | Clippy | Synthwave |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
See docs/themes.md for included themes and custom theme development.
VibeTV can show provider usage surfaced by CodexBar. Common examples include:
- Codex
- Claude / Claude Code
- Cursor
- Gemini
- Antigravity
- Kimi and Kimi K2
- Copilot
- z.ai
- Kiro
- Augment
- Amp
- JetBrains AI
- OpenRouter
- OpenAI / Azure OpenAI
- Mistral, DeepSeek, Moonshot, AWS Bedrock, LiteLLM, and more
VibeTV is a physical device that sits on your desk and shows your AI usage at a glance: provider, limits, tokens, reset time, and status. It gives the usage signal a place outside your laptop screen, so you can see where you stand while you work.
The Mac App sends the local usage signal to the device. The hosted setup page at
app.vibetv.shop starts setup and installs the Mac
App. After installation, the Mac App opens the local Control Center on this Mac
for themes, display settings, updates, and support.
VibeTV is built on top of CodexBar for AI provider usage data. CodexBar knows how to read usage and quota information from many AI tools. VibeTV turns that signal into a dedicated physical display.
VibeTV does not generate new provider data in the cloud. It shows the usage signal that already exists on your Mac: CodexBar reads provider usage locally, the Mac App turns it into display frames, and those frames go to VibeTV over your local WiFi. Control Center loads the app, theme catalog, and update metadata from the web, but normal provider usage is not uploaded to a VibeTV backend. Support reports are only created when you ask for them.
- session usage and remaining room
- weekly usage and reset windows
- token counts when the provider exposes them
- active provider and account state
- provider health or stale-data status
- firmware and Mac App update state
- the active theme running on the device
CodexBar on the Mac
-> VibeTV Mac App on 127.0.0.1:47832
-> local Control Center in the browser
-> VibeTV on the local WiFi
- CodexBar reads provider usage, quotas, tokens, and reset windows.
- The VibeTV Mac App (
codexbar-display) reads that data locally. - The local Control Center talks to the Mac App through the browser.
- The Mac App sends display frames to VibeTV over local WiFi.
- VibeTV renders the selected theme on the 240x240 screen.
The normal customer path does not require USB flashing. USB-C powers the device.
- Buy the hardware from vibetv.shop.
- Power VibeTV with USB-C.
- Join the
VibeTV-SetupWiFi hotspot and connect VibeTV to your home WiFi. - Open
app.vibetv.shopon your Mac and download the Mac App. - Drag
VibeTV Control Centerinto Applications and open it. - The app opens the local Control Center, then connect VibeTV there.
The customer setup guide is docs/customer-setup.md.
Useful support commands:
# check whether the Mac App is running
curl -fsS http://127.0.0.1:47832/v1/status
# reinstall the Mac App without the download (support fallback)
curl -fsSL https://app.vibetv.shop/install-control-center-companion.sh | bash
# stop the Mac App
curl -fsSL https://app.vibetv.shop/install-control-center-companion.sh | bash -s -- --uninstall- ESP8266 firmware for the current VibeTV hardware target
- the macOS Mac App / Companion binary
codexbar-display - the hosted Control Center app in
apps/control-center - the local Companion API used by Control Center
- Theme Studio and theme-pack tooling
- release scripts, firmware manifests, and validation gates
- hardware, setup, provider, architecture, and operator docs
Start with docs/README.md.
Important entry points:
- Customer setup: docs/customer-setup.md
- Architecture: docs/architecture.md
- Providers: docs/providers.md
- Preferences registry: docs/preferences.md
- Themes: docs/themes.md
- Theme development: docs/theme-dev-guide.md
- Control Center readiness: docs/control-center-customer-readiness.md
- Hardware contract: docs/hardware-contract.md
- Operator runbook: docs/operator-runbook.md
- Protocol: protocol/PROTOCOL.md
Control Center:
cd apps/control-center
npm install
npm run devMac App / Companion:
cd companion
go test ./...
go run ./cmd/codexbar-display api --dev-origin http://localhost:3000Customer-flow checks:
cd apps/control-center
npm run check:customer-ui-copy
npm run test:customer-smokeThe full customer-ready gate is:
scripts/check-control-center-customer-ready-gate.shThe attached VibeTV is not a routine test target. Use unit tests, mocks, and read-only checks first.
Allowed read-only checks:
curl http://<device-ip>/hello
curl http://<device-ip>/health
curl http://<device-ip>/assetsDo not run firmware updates, theme installs, asset uploads, frame posts, or WiFi resets against a device IP unless a human explicitly approved that exact hardware test.
Source available under the Functional Source License 1.1 with the MIT future license (FSL-1.1-MIT). The source may be inspected, used, modified, and redistributed for permitted purposes, but not made available to others in a competing commercial product or service. Each version becomes available under the MIT License two years after it is published.
Versions published previously under the MIT License remain available under the license terms distributed with those versions. See LICENSE for the current terms.




