PATH
Install and first turn
Get started
is the shortest live path: install the client, bind the runtime, mint a token, call
session.send.
DOCS
Reference for the client, host language SDKs, the runtime, and the wire. Copy is aligned to the source.
Two pieces: a JS client in the host, a Rust runtime beside it. This page is the shortest path to a live stream.
SvedaClient is the attach surface. Vue and web-component packages exist as optional UI — core does not require them.
The binary is sveda-server. It is Axum. It is not in your application request cycle unless you choose to proxy it.
Replicas are stateless. Histories and settings live in Postgres. Occupancy, throttle, and MCP creds live in Redis.
One POST, one SSE response, a closed event list. Frontend vs backend tool.call targets.
Three layers: builtin agent tools, client-registered frontend tools, and host MCP listed at token mint.
The catalog is on the runtime. The client may pass model or provider on a turn; failover is still the ordered list.
Tokens are HMAC, prefixed sveda_embed_, scoped to visitor_id. The host mints them. The browser only sends them.
These pages are a contract against the source: package names, route paths, event types, and env vars as they exist in
@sveda-ai/core
and
sveda-server.
PATH
Get started
is the shortest live path: install the client, bind the runtime, mint a token, call
session.send.
CONTRACT
JS client, runtime, and stream protocol are the attach surface. Everything else hangs off this pair plus one SSE pipe.
ATTACH
MCP and tools, models, and embed tokens document builtins, the catalog, and the host handshake. Language minting lives under Host SDKs.
Numbered install for each language, plus a path with no framework. Same
POST /sveda/session
JSON on every stack.
A static page can open the chat. Something on your origin still has to mint the embed token — curl for local, or a tiny POST /sveda/session.
Framework-agnostic PHP. Factory::factory() → embed()->createToken(). Your page only receives origin and token.
The package wraps sveda-ai/client, mints Sanctum MCP tokens, and exposes StartSidecarSessionController.
One client. Flask, Django, and FastAPI are route wrappers. start_host_session returns origin, token, expires_in, appearance.
Native fetch. startHostSession talks to the sidecar. The page still opens chat with data-sveda-open buttons.
The gem mints embed tokens with Bearer host auth. Rails is a controller and a layout. Plain Ruby is the same HTTP call.
No framework required. net/http plus the module is the host. Templates only render chat buttons when the origin is set.
HttpClient transport. Spring Boot is a controller and Thymeleaf. The SDK does not need Spring.
net8.0 Sveda.Client. ASP.NET is MapPost plus a layout. The library is usable from any HttpClient host.
Install @sveda-ai/core. Run sveda-server on 0.0.0.0:8787. Mint a token. Call session.send.