Skip to main content

Models and Authentication

The stack will not be useful until it can authenticate users and talk to at least one model provider.

MODEL_CONFIGS

  1. Decide which providers you want to use (OpenAI-compatible, Anthropic, Gemini, etc.).
  2. For each provider, collect the API key and base URL if the provider requires a custom endpoint.
  3. Build a JSON array describing each model, e.g.:
    [
    {
    "provider": "openai",
    "model": "gpt-4o-mini",
    "apiKey": "sk-your-key",
    "baseUrl": "https://api.openai.com/v1",
    "maxRetries": 3
    }
    ]
  4. Paste the serialized JSON blob into MODEL_CONFIGS in docker/.stack.env.

The current example uses:

MODEL_CONFIGS='[{"model_id":"gpt-5-mini","provider":"OpenAI","api_key":"replace-me","display_name":"GPT-5 Mini","is_default":true}]'

RESEARCHER_AGENT_CONFIG

  • This config defines specialized model roles for research-oriented workflows.
  • The example file includes a minimal placeholder object so the env surface is present even before you fully wire research.

JWT and session secrets

Required values:

  • JWT_SECRET_KEY
  • SESSION_SECRET_KEY
  • AUTH_SECRET_KEY
  • ACCESS_TOKEN_EXPIRE_MINUTES

Google OAuth variables

  • GOOGLE_CLIENT_ID
  • GOOGLE_CLIENT_SECRET
  • GOOGLE_REDIRECT_URI

Populate these only when you are actively testing Google sign-in.