Files
ruvnet__ruflo/ruflo/docs/AUTH.md
rUv 29d52dfc22 feat(ruflo): add RuFlo Chat UI with ruvocal fork, MCP bridge, and Docker setup
Adds the complete RuFlo Chat UI system based on a SvelteKit fork (ruvocal)
of HuggingFace Chat UI with custom branding, RVF document store replacing
MongoDB, MCP bridge with 200+ tools, animated RuFloUniverse welcome screen,
and Docker Compose orchestration.

Key changes:
- RVF JSON document store with ObjectId cross-package compatibility fix
- MCP bridge proxy (Express) supporting Gemini, OpenAI, and tool execution
- RuFlo branding: Logo, favicons, welcome animation, centered dot cluster
- URL safety patch for Docker-internal HTTP service names
- CORS fix via relative PUBLIC_ORIGIN asset paths

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-05 18:01:09 +00:00

1.4 KiB

Authentication Setup

HF Chat UI has native OpenID Connect support. Google OAuth is the easiest to set up.

1. Create OAuth Client

  1. Go to Google Cloud Console → APIs & Services → Credentials
  2. Click Create Credentials → OAuth 2.0 Client ID
  3. Application type: Web application
  4. Authorized redirect URIs: https://YOUR_DOMAIN/login/callback
  5. Copy the Client ID and Client Secret

2. Store the Secret

echo -n "GOCSPX-your-client-secret" | gcloud secrets create google-client-secret \
  --data-file=- --project=YOUR_PROJECT

3. Configure

In config/config.json:

{
  "auth": {
    "enabled": true,
    "provider": "google",
    "clientId": "123456789-abc.apps.googleusercontent.com",
    "clientSecretName": "google-client-secret",
    "scopes": "openid profile email",
    "nameClaim": "name"
  }
}

4. Deploy

The deploy script automatically adds OPENID_* env vars and binds the secret.

Disabling Auth

Set auth.enabled: false in config.json. The chat will be publicly accessible.

Custom OIDC Providers

Any OpenID Connect provider works. Change the provider URL in the generated dotenv-local.txt:

OPENID_PROVIDER_URL=https://your-idp.com
OPENID_CLIENT_ID=your-client-id

Supported providers: Google, Microsoft Entra ID, Auth0, Okta, Keycloak, etc.