Oblive Docs
Getting Started

Requirements

What the portable Oblive installation needs on macOS and Linux.

Supported Hosts

The installer supports macOS and Linux on AMD64/x86_64 and ARM64. Windows and WSL 1 are not supported by this release.

You need:

  • enough disk space for the Oblive images, PostgreSQL, Redis, Garage, and agent workspaces;
  • network access to oblive.dev, downloads.oblive.dev, Amazon ECR Public, and Codex/OpenAI;
  • the default ports below, or free alternatives configured after installation; and
  • permission to run a local Docker-compatible daemon.

You do not need Bun, Git, jq, or a source checkout to use Oblive.

Docker and Compose

Oblive requires the docker command, a running daemon, and the Docker Compose plugin. The installer reuses a working installation. If Docker is missing, it offers an explicit installation path:

  • on macOS, Homebrew and Docker Desktop; or
  • on Linux, Docker’s official convenience script after showing its dry run.

The installer never silently changes Linux group membership and never runs the installed oblive command with sudo. Docker Desktop has its own terms and must be started as a desktop application.

Verify an existing installation with:

docker info
docker compose version

Agent Authentication

The friendly default is a local Codex login. The installer offers the official Codex CLI when it is missing and runs codex login only when no working login exists. Oblive mounts only the resulting auth.json into its credential synchronizer; agent containers do not receive your host Codex configuration, sessions, plugins, or global skills.

Advanced installations can use an API key instead:

export OPENAI_API_KEY="your-key"
curl -fsSL https://oblive.dev/install.sh | sh -s -- --auth api-key

The API key remains a host environment variable and must be present whenever the stack starts.

Default Ports

ServiceDefault PortPurpose
Backend3000HTTP API, health, and local API reference
Frontend3001Oblive product interface
PostgreSQL5432Canonical operational state and pgvector
Redis6379Live signals and worker wakeups
Garage S33900Local S3-compatible object API
Garage admin3903Local storage administration

Every published port binds to 127.0.0.1 by default. Change a host port in local-stack.json when it conflicts; container-to-container traffic continues to use private Compose DNS names.

Optional Public Callbacks

Some provider callbacks require externally managed HTTPS hostnames. If you expose the frontend or backend through a tunnel or reverse proxy, protect both with an external access policy. The local control plane has no end-user authentication gate and must not be placed behind an unrestricted public tunnel.

Next

Install Oblive.