43 lines
1.0 KiB
Markdown
43 lines
1.0 KiB
Markdown
# Sybil Web
|
|
|
|
Preact + Vite frontend for the Sybil backend.
|
|
|
|
## Setup
|
|
|
|
1. Copy env values:
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
```
|
|
|
|
2. Install and run:
|
|
|
|
```bash
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
Default dev URL: `http://localhost:5173`
|
|
|
|
## Environment variables
|
|
|
|
- `VITE_API_BASE_URL`: backend API base URL. Defaults to `http://localhost:8787`.
|
|
- `VITE_ADMIN_TOKEN`: optional. Pre-fills a token in the login form.
|
|
|
|
## Authentication
|
|
|
|
- On startup, the app checks `GET /v1/auth/session`.
|
|
- If backend runs with `ADMIN_TOKEN`, sign in using that token.
|
|
- If backend runs in open mode (`ADMIN_TOKEN` unset), you can continue without a token.
|
|
- The entered token is stored in browser `localStorage` and can be cleared via Logout.
|
|
|
|
## UI
|
|
|
|
- Left panel: mixed list of chat conversations and Exa searches.
|
|
- Right panel:
|
|
- Chat mode: transcript + provider/model controls.
|
|
- Search mode: top AI answer block + Google-style Exa results view.
|
|
- Composer adapts to the active item:
|
|
- Chat sends `POST /v1/chat-completions`.
|
|
- Search sends `POST /v1/searches/:searchId/run`.
|