Get started
Install
One command puts Prometheus on your PATH. Everything below was run on a clean machine before this page was written — the output is captured, not reconstructed.
Before you start
Python 3.11 or newer. That is the floor declared in
pyproject.toml; older interpreters refuse to install rather than fail
later.
Somewhere to run a model — a local inference server, or a cloud API key. You do not need it to install, only to finish setup. Four local servers are detected automatically:
| Server | Port | Probed at |
|---|---|---|
| llama.cpp | 8080 | /v1/models |
| Ollama | 11434 | /api/tags |
| LM Studio | 1234 | /v1/models |
| vLLM | 8000 | /v1/models |
The model list is the liveness check. A candidate only counts as detected when that endpoint returns JSON in a shape it recognises, so an HTML dashboard or a proxy error page squatting on 8080 is skipped rather than written into your config.
| Route | Status | Use it when |
|---|---|---|
| uv / pipx from git | Works today | You want to run it. This is the one. |
| clone + editable | Works today | You intend to change the code. |
| pip from PyPI | Works today | You want a plain package install — see the bottom of this page. |
| Homebrew | Apple Silicon only | You are on an M1-or-later Mac — see the bottom of this page. |
-
Put it on your PATH
uvkeeps the tool in its own environment, so it cannot collide with anything else you have installed.pipxdoes the same if that is what you already have.installuvuv tool install 'oara-prometheus[full] @ git+https://github.com/OAraLabs/Prometheus' … resolving, downloading, building … Installed 4 executables: oara, prometheus, prometheus-daemon, prometheus-init
installpipxpipx install 'oara-prometheus[full] @ git+https://github.com/OAraLabs/Prometheus'The plain package, with no extras, already runs the daemon and pairs with Beacon.
[full]adds Slack, Discord, MCP, the browser tool, the Anthropic provider and voice output. It pulls 77 packages to the plain install’s 37 and needs no system libraries — no compiler, no PortAudio, no Homebrew prerequisites. On a warm cache the whole thing is a few seconds.If you would rather be selective, the extras are separable:
Extra Brings anthropic The Anthropic SDK, for that cloud provider. web Nothing extra: the control plane Beacon connects to (HTTP and WebSocket) is in the base package. The extra stays so installs that name it keep working. slack The Slack gateway. discord The Discord gateway. push APNs push, for Beacon on iOS. mcp MCP client support — the extension boundary for third-party tools. browser Browser automation. voice Speech in and out. evals The judge and scoring harness. skills The local encoder for the auto-skill near-duplicate check. voicealready brings it; without either, the check is skipped and logged.computer Computer use, through the cua-driver backend. Not in full, and not tested in CI, which has no display.full Slack, Discord, MCP, the browser tool, the Anthropic provider and voice output. Not push, evals, skills, computer or speech-to-text — add those by name. dev Test and lint tooling. Only for working on Prometheus itself. The Telegram gateway is not an extra It is a base dependency, so an install with no extras at all can still be reached from your phone. Being reachable is the point of a daemon. -
Confirm it landed
The command is
oara.verifyoara --version Prometheus 0.9.5 oara --help usage: oara [-h] [--version] [--config CONFIG] [--once QUERY] [--model MODEL] [--provider PROVIDER] [--debug] [-v] [--setup] [--setup-gateway-only] [--reset-telemetry] [--reset-data] [--voice] {setup,token,doctor,retention,install-service,gepa,scrub,daemon, identity,vault,migrate,code,ingest-video,bakeoff-vlm, export-traces,config} Prometheus — sovereign AI agent harness … setup First-run setup wizard (the one canonical path) doctor Diagnose the install: config, server, model, web, token, dirs daemon Start always-on daemon (the rest are in the CLI reference)
Three other executables are installed alongside it.
prometheusis a compatibility alias that still accepts every documented subcommand; the chat surfaces print a one-line note when you invoke it that way.prometheus-daemonandprometheus-initare older entry points kept for the same deprecation window. New instructions should sayoara.Why the command is not called prometheus A package that installs aprometheusbinary collides with the CNCF project in every shell on the machine. The import path and the Python package are stillprometheus— only the command changed. -
Then set it up
Installing puts the command on your PATH and does nothing else. No config is written, no directories are created, nothing starts — you can confirm that by running
oara doctorright now and watching it tell you there is no config.Everything after this happens in
oara setup.
Installing from source
If you plan to change the code, clone it and install editable. Same extras.
git clone https://github.com/OAraLabs/Prometheus.git cd Prometheus pip install -e '.[full]'
Read CONTRIBUTING.md before opening anything — the test and
verification expectations are not the usual ones.
pip and Homebrew
Both are published, and both put the same oara command on your PATH.
pip install oara-prometheus
The package is oara-prometheus — prometheus on PyPI is a
different project. The plain install runs the daemon and pairs with Beacon;
pip install 'oara-prometheus[full]' adds Slack, Discord, MCP, the browser
tool, the Anthropic provider and voice output. The other extras are the same ones listed
above.
brew install oaralabs/tap/oara
brew install oara fails because
the tap isn’t trusted. It installs in a few minutes. Like a plain pip install,
it runs the daemon and pairs with Beacon.
Uninstalling
uv tool uninstall oara-prometheus # or: pipx uninstall oara-prometheus # or: pip uninstall oara-prometheus # or: brew uninstall oara
That removes the commands. It does not remove your config, database or identity files — configuration says where those live so you can decide about them separately.