Installation
Install VibeAI OS on macOS or a Linux server with one command.
Your signed license.json (from your account manager) is the only credential
you need. The installer downloads the latest prebuilt release for your
platform — no compilers, no Node, no package managers.
macOS (Apple Silicon)
curl -fsSL https://releases.aivibehosting.com/install | VIBEAI_LICENSE_FILE=./license.json bash
- Installs
aiosandaios-dashboardinto~/.local/bin— no sudo, and no Gatekeeper prompt (terminal downloads carry no quarantine flag). - Runs by default: the dashboard starts at login (
http://127.0.0.1:9200) and restarts on crash, via launchd. A Telegram gateway agent is added too onceTELEGRAM_BOT_TOKENexists in the secrets vault (add it on the Keys page or withaios secrets set TELEGRAM_BOT_TOKEN, then re-run the installer). - If the installer notes
~/.local/binisn’t on your PATH, run the one-line hint it prints.
Linux server
curl -fsSL https://releases.aivibehosting.com/install | VIBEAI_LICENSE_FILE=./license.json bash
- Installs into
/usr/local/bin; the TUI bundle, bundled Node runtime, web dashboard UI, and optional MCP servers land under~/.aios. - Run the dashboard with
aios-dashboard(port 9200) and the Telegram bot withaios gateway run, or wire them into systemd for always-on service.
After install — onboarding
Open the dashboard: until the install is ready to chat, every page is
replaced by the onboarding wall (the server enforces this too — the
API answers 409 onboarding_required until onboarding is complete). Four
steps:
- Account — create the admin user.
- About you — a few fields that seed the agent’s preferences.
- Provider + key — pick a model provider and paste its API key (or
point at a detected local runtime like Ollama or LM Studio — those
need no key). The key goes straight into the encrypted
secrets vault; there is no
.envfile to edit. - Done — start chatting.
Afterwards: pick or change the active model on the Models page any
time, and add an optional Telegram bot by putting TELEGRAM_BOT_TOKEN
and TELEGRAM_ALLOWED_USER=<your numeric user id> into the vault
(Keys page, Channels card, or
aios secrets set).
Verify
aios --version
aios license status
Both artifacts are checksum-verified during install, and your license is
validated immediately — aios license status should say authentic with
your expiry date.
Updating — automatic
Since v0.7.8, VibeAI OS keeps itself current: every hour it checks for a new release for your platform, and when one is published it downloads, verifies, and installs it, then restarts its own services — no action needed. Your license also renews itself on the same schedule while your subscription is active.
Prefer to update on your own terms? Turn the automatic apply off in
~/.aios/config.yaml:
update:
auto: false
and update manually whenever you like (shows live download progress):
aios update apply
Upgrading a pre-vault install (one that still has plaintext .env /
license.json files): the very first vault-era update runs an ordered,
gated upgrade — import everything into the vault, refresh the service
units, then rename the plaintext files to *.migrated — before the
normal restart sweep. aios doctor --pre-secrets previews exactly what
that upgrade will find and do, without changing anything.
Reinstalling
Re-run the same one-liner with VIBEAI_LICENSE_FILE= pointing at your
license file again — it never overwrites your configuration or data (your
stored keys stay in the vault untouched). Keep your license.json copy:
on a running install the license lives encrypted in the secrets vault,
not as a file on disk, so the installer can’t rediscover it from there.
(On a pre-vault box that still has ~/.aios/license.json, the installer
finds it automatically, and first start imports it into the vault.)