roboto-sai-sdk
Python SDK for the Roboto SAI platform — the canonical client and source of truth for public model names, runtime profiles, and the frozen runtime contract.
Install
pip install roboto-sai-sdk
Requires Python 3.10+.
Quick Start
from roboto_sai_sdk import RobotoSAI
client = RobotoSAI() # uses SAI_ACCESS_TOKEN from env
result = client.send_message("Review this repository and propose the next refactor.")
print(result["model"]) # "roboto-sai"
print(result["subtitle"]) # "Core runtime"
print(result["text"]) # assistant reply
Stream mode:
from roboto_sai_sdk import RobotoSAI, extract_text_delta
client = RobotoSAI(model="roboto-sai")
for event in client.stream("List five things to test in a new SDK release."):
print(extract_text_delta(event), end="", flush=True)
Personal Memory
Retrieve the authenticated user's memories (Supabase-backed) with the same token:
from roboto_sai_sdk import RobotoSAI
client = RobotoSAI()
for mem in client.list_memories(limit=10):
print(mem["category"], "—", mem["content"])
hits = client.search_memories("what did I say about the launch?", limit=5)
Public Model Surface
The SDK exposes four canonical models:
| Model | Mode | Use |
|---|---|---|
roboto-sai |
single-agent | Core general intelligence |
roboto-sai-code-x |
single-agent | Code generation, debugging, architecture |
roboto-sai-cortex |
multi-agent | Deep orchestration with research capabilities |
roboto-sai-rovox |
single-agent (audio) | Voice/audio I/O — separate realtime path |
Use only canonical roboto-sai-* names. Legacy aliases (e.g. roboto-sai-lightning, -heavy, -flex) were removed in 0.2.0.
Inspect Runtime Profiles
from roboto_sai_sdk import (
DEFAULT_PUBLIC_MODEL,
PUBLIC_MODEL_NAMES,
get_runtime_profile,
)
print(DEFAULT_PUBLIC_MODEL) # "roboto-sai"
print(sorted(PUBLIC_MODEL_NAMES)) # all 4 names
print(get_runtime_profile("roboto-sai"))
Authentication
The Roboto SAI API authenticates with a Supabase JWT. The SDK resolves it in this order:
- Explicit
access_token=...argument SAI_ACCESS_TOKENenvironment variable
Get a token by logging in (e.g. roboto-sai auth login in the CLI). Set
SAI_API_BASE_URL to override the default base URL (https://api.roboto-sai.com).
Public API
The stable surface is roboto_sai_sdk.__all__ (17 names; client, memory, keys, and MCP are lazy-loaded on first access):
RobotoSAI, SendMessageResult, StreamEvent, extract_text_delta, Memory, DEFAULT_PUBLIC_MODEL, PUBLIC_MODEL_NAMES, RuntimeProfile, get_runtime_profile, normalize_public_model, get_mcp_config, get_public_runtime_contract, CONTRACT_VERSION, CONTRACT_LAST_UPDATED, SAI_ACCESS_TOKEN, resolve_access_token, hash_key
import roboto_sai_sdk
assert roboto_sai_sdk.__all__ == [
"RobotoSAI",
"SendMessageResult",
"StreamEvent",
"extract_text_delta",
"Memory",
"DEFAULT_PUBLIC_MODEL",
"PUBLIC_MODEL_NAMES",
"RuntimeProfile",
"get_runtime_profile",
"normalize_public_model",
"get_mcp_config",
"get_public_runtime_contract",
"CONTRACT_VERSION",
"CONTRACT_LAST_UPDATED",
"SAI_ACCESS_TOKEN",
"resolve_access_token",
"hash_key",
]
Voice/audio (roboto-sai-rovox) requires the realtime integration — send_message and stream raise NotImplementedError for that model. A future RobotoSAIVoice client will land in a separate release.
Repository
Source code, examples, and full release notes: https://github.com/Roboto-SAI-LLC/roboto-sai-sdk
License
Proprietary. See LICENSE in the repository.
Metadata
Release files for roboto-sai-sdk 0.6.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| roboto_sai_sdk-0.6.1.tar.gz | 23.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| roboto_sai_sdk-0.6.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 43.3 kB
Release files / roboto_sai_sdk-0.6.1.tar.gz
| Download URL | roboto_sai_sdk-0.6.1.tar.gz |
|---|---|
| Size | 23.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
be9d506e348004b507e2d89cf71ade783c8ea9d2f37acf20e1af737ac41cfa1d
|
|
BLAKE2b-256 checksum How to use checksums |
703c6a138bab7c1caf7ecc65aac0c72b7c7277fac7fd165c195434f68d6f44ac
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.15
|
Release files / roboto_sai_sdk-0.6.1-py3-none-any.whl
| Download URL | roboto_sai_sdk-0.6.1-py3-none-any.whl |
|---|---|
| Size | 20.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
972d10e9d46194241dcac2cb9d1251f67bcce62991f785c971760c679fb94773
|
|
BLAKE2b-256 checksum How to use checksums |
a0b865d911c37a6c60229282de39b36c030efac25a9d76153bb67d749147012c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.15
|