All docs ▾
Getting started
Using Vex
Requirements
Platforms, Docker, the OpenRouter key, and the one-time model download.
Vex runs its own data plane on your machine: a local Postgres with pgvector for memory and an embeddings runtime, both in Docker containers the app brings up for you. That is where most of the requirements come from. Inference is the other half. It goes through your own OpenRouter account, so a key is required before setup can finish.
Supported platforms
| OS | Versions | Architectures |
|---|---|---|
| Windows | 10 and 11 | x64 |
| macOS | 13 and newer | Apple silicon and Intel |
| Linux | Ubuntu 22.04 and 24.04 | x64 |
Other Linux distributions may work but are not part of the tested matrix. Builds ship per OS as described in Install. WSL2 is a development environment only: started from a WSL2 shell, the app runs as a Windows-native Electron process and reads %APPDATA%\vex, not ~/.config/vex. See Troubleshooting if you work that way.
Docker and Compose
Vex needs Docker and Compose 2.23.1 or newer. The floor is the version that introduced inline configs.content:, which the app’s Compose template uses; the app probes your Compose version and the System Check screen shows an upgrade hint instead of letting the stack fail with unknown field: content. Every install gets its own Compose project and its own named volumes, and both services publish only on 127.0.0.1.
On Windows, Docker Desktop must have the WSL2 backend enabled; the Hyper-V backend has bind-mount path bugs. Minimal or headless Ubuntu installs may also need xdg-utils, which is what opens external links.
API keys
Only one key is required. The rest unlock specific capabilities and can be added later, or skipped entirely during first run. All of them are stored in the encrypted vault, never in a plain file. See Keys & encryption.
| Key | Required | What it enables |
|---|---|---|
OPENROUTER_API_KEY | Required | All LLM inference. The provider step of the wizard verifies it live before setup can finish, and the tokens are billed to your own account. |
JUPITER_API_KEY | Needed for Solana swaps | Jupiter routing on Solana. Optional if you only work on EVM chains; the wizard does not block on it. |
TAVILY_API_KEY | Optional | The WebResearch tool, which is hidden from the model when the key is missing, plus evidence for the daily market-regime classifier. |
RETTIWT_API_KEY | Optional | X/Twitter account research, and the second evidence source for the regime classifier. |
RELAY_API_KEY | Optional | Relay bridging works fully without it; a key only raises Relay rate limits. |
The full list of variables the app and the bridge read is in Environment variables.
Network and the first-run download
The first time the stack comes up, an init container downloads the local embedding model, EmbeddingGemma 300M Q8_0, roughly 333 MB, from HuggingFace. It verifies the file against a pinned SHA256 and caches it in a named volume; a cached file that fails the checksum is deleted and pulled again. Together with the container images, budget 5 to 15 minutes on a slow connection. It happens once, and later launches start from the cache.
After that, embeddings are computed locally at 768 dimensions and your conversations, memories and vectors stay in the local Postgres. See Privacyfor what does and doesn’t leave the machine.
Vex spends your own money on inference. Missions think unattended until their deadline, so set capital ceilings and pick a model deliberately. See Missions.