Files
..
2026-02-16 00:55:41 -08:00
2026-02-13 23:15:12 -08:00
2026-02-14 20:28:23 -08:00
2026-02-16 00:55:41 -08:00
2026-02-13 23:15:12 -08:00
2026-02-14 21:20:14 -08:00
2026-02-13 23:15:12 -08:00
2026-02-13 23:15:12 -08:00
2026-02-14 20:28:23 -08:00
2026-02-14 20:28:23 -08:00
2026-02-14 20:28:23 -08:00
2026-02-14 20:28:23 -08:00

Sybil Web

Preact + Vite frontend for the Sybil backend.

Setup

  1. Copy env values:
cp .env.example .env
  1. Install and run:
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/stream (SSE).
    • Search sends POST /v1/searches/:searchId/run/stream (SSE).

Client API contract docs:

  • ../docs/api/rest.md
  • ../docs/api/streaming-chat.md

Routes

  • /: full Sybil app (sidebar + chat/search workspace)
  • /search?q=bitcoin+price: standalone search page that renders only the search query box and results panel