Install Prism
Start with Docker, protect the installation, then connect the AI provider from the browser. The standard stack includes the execution workspace, PostgreSQL/pgvector, SearXNG and Traefik.
1. Prepare the host
Install Git, Docker Engine and the Docker Compose plugin. Check that ports 48080 (Prism) and 80 (Traefik) are free. You do not need a host GPU when the model runs on another server or API. If you host a model, size RAM/VRAM and disk for that model separately.
docker --version
docker compose version
docker info2. Download the project
git clone https://github.com/blazux/prism.git
cd prism
cp .env.example .env
chmod 600 .env3. Set your access token
Run the command below and put its output in PRISM_TOKEN in .env, without the leading comment marker. Generate your own value; do not reuse a documentation placeholder. Keep the bundled database and path defaults for this first installation.
openssl rand -hex 32For shared mode, set MULTI_USER=1 before starting and use the shared-mode guide. The first account becomes the global administrator. Choose this mode deliberately: converting an existing personal installation migrates its configuration and secrets.
Set up shared mode →4. Start the services
docker compose up -d
docker compose psOpen http://localhost:48080 and sign in with your token. The first launch downloads the images; allow the database and workspace to initialize. Use the optional protonmail profile only if you need Proton Mail Bridge.
Configure Proton Mail Bridge →5. Connect the first model
Open Settings → AI provider, add a source, enter its URL/key and click Connect. Choose a tool-capable conversation model. Model selection saves automatically; use Use as default when choosing among sources, and Save other changes for remaining edits. Wait for All changes saved.
Configure models, context and document search →6. Verify the installation
The UI should open, the execution workspace should be running, and a simple chat should produce a response. Then follow Get started to verify a widget and persistence. A model returning plain text instead of structured tool calls needs a server/model configuration check.
docker compose logs --tail=100 prism-server
docker compose logs --tail=50 workspaceBuild your first tool →