Skip to main content
synti-cli is a terminal client for the Synti headless server. It connects over WebSocket, streams agent responses to your terminal, and scripts cleanly for automation and CI. The client itself is stateless — it marshals commands and streams events while the server does the real work of storing sessions and calling the model. This page is a quick orientation. For every command, flag, and scripting recipe, see the full CLI reference.

Connect

The client needs a server URL and a matching token. Set them once in your environment:
ping confirms the connection and reports your client ID and latency. The token is the same SYNTI_SERVER_TOKEN the server was started with — see Headless Server for generating one. For wss:// endpoints with a self-signed certificate, trust the CA with SYNTI_TLS_CA or --tls-ca.

Common tasks

Manage sessions

Create, list, and delete sessions with synti-cli session ....

Send and stream

synti-cli send <session> <message> streams the response, and accepts piped stdin.

One-off runs

synti-cli run <prompt> spawns a temporary server, runs, and exits — no setup.

Validate a server

synti-cli --validate-server exercises the full server lifecycle end to end.

Scripting

Add --json for machine-readable output and pipe prompts through stdin:
Flags take precedence over environment variables, so you can override SYNTI_SERVER_URL per invocation with --url — handy when targeting several servers from one shell.

Learn more

CLI Reference

Full command list, flags, and troubleshooting.

Headless Server

Start and secure the server the client connects to.

Environment Variables

Connection variables the client reads.

LLM Connections

Providers the server can use.