SDKs overview
Official Silos SDKs for TypeScript, Go, and Python — plus framework adapters and in-browser PGLite packages.
Silos ships SDKs that wrap the management API and give you typed helpers for creating databases, managing branches and API keys, and running SQL. They sit on top of the same REST API and SQL endpoints the Console and CLI use, so anything an SDK does, you can also do directly over HTTP.
The SDKs are available and evolving alongside the platform. For the canonical behavior of any operation — request shapes, error semantics, parameters — treat the API reference and CLI as the source of truth. The snippets here show the minimal install-and-connect path for each language.
Available SDKs
TypeScript
@silos/sdk plus @silos/schema and @silos/agent for typed access and agent workflows.
Framework adapters
@silos/next, @silos/nuxt, @silos/svelte, and @silos/tanstack.
Go
silos-sdk-go for management and SQL from Go services.
Python
silos-sdk-python for management and SQL from Python.
You don't need an SDK to use Silos
Silos speaks the standard PostgreSQL wire protocol, so for plain data access you
can use any Postgres driver — pg (node-postgres), psycopg, database/sql with
pgx, and so on — with a normal connection string. The SDKs add value when you want
typed helpers for the management surface (creating databases and branches,
rotating API keys, reading usage) or convenience wrappers around SQL.
psql "postgres://user:password@db-xxxx.silos.sh/main?sslmode=require"For driver and ORM guidance, see Connecting → Drivers.
Choosing between an SDK and a driver
| You want to… | Use |
|---|---|
| Run SQL from an app | A standard Postgres driver (or an SDK's query helper) |
| Create / delete databases and branches | An SDK or the REST API |
| Manage API keys and read usage | An SDK or the REST API |
| Wire Silos into a web framework | A framework adapter |
| Develop locally in the browser | The PGLite packages |
Authentication
Management calls authenticate with a Silos API key, passed as a bearer token.
Create one in the Console or with silos auth keys, and
provide it to the SDK through the SILOS_API_KEY environment variable or the client
constructor. SQL connections authenticate with the database's connection string over
TLS. Never commit keys or connection strings to source control — load them from the
environment.
In-browser PGLite
For local-first development, Silos references the PGLite packages — @silos/pglite
and @silos/pglite-sync — which run a real Postgres engine compiled to WASM directly
in the browser. This is the same engine that powers the Console's
SQL editor. See Browser & PGLite
for the full story.
There is no Rust client SDK — Rust is the language the Silos server is written in.
To talk to Silos from Rust, use a standard Postgres driver such as tokio-postgres
or sqlx with a connection string.