What SOAT provides
One self-hosted layer for the agent backend stack.
SOAT packages the production services agents need into a single control surface: storage, orchestration, retrieval, governance, and observability.

Build
Projects, AI providers, secrets, files, and documents give agents a durable workspace.
Orchestrate
Agents, tools, sessions, conversations, and actors handle real multi-step workflows.
Remember
Knowledge search and memories retrieve context, deduplicate writes, and preserve useful facts.
Govern
IAM policies, API keys, scoped secrets, and resource names keep every operation bounded.
Observe
Traces and webhooks expose what agents did, which tools ran, and what changed downstream.
One backend. Four ways to call it.
Every operation in SOAT is reachable through the surface that fits the job. Same permissions, same data, same business logic.
Agent Formations
Deploy complete agent stacks from one template.
Agent Formations are the declarative deployment layer in SOAT. Define the desired stack once, preview the plan, then let SOAT create or update every dependent resource with consistent permissions and traceable operations.
Declare
Describe providers, memories, tools, agents, documents, and webhooks in one JSON or YAML template.
Resolve
SOAT builds the dependency graph, resolves refs, and provisions resources in the correct order.
Operate
Every create, update, and delete operation is tracked with resources, outputs, and an immutable event log.
From zero to running agent in three commands.
Create an agent, open a session to persist conversation state, and run a generation — all from the CLI. Every step is recorded as a traceable operation.
- Attach any AI provider with a single flag
- Sessions accumulate message history automatically
- Traces capture every tool call and model response
soat create-agent \
--project-id "$PROJECT_ID" \
--ai-provider-id "$PROVIDER_ID" \
--name "support-bot" \
--instructions "You are a helpful support assistant."
soat create-agent-session \
--agent-id "$AGENT_ID" \
--name "user-chat-42"
soat create-agent-generation \
--agent-id "$AGENT_ID" \
--session-id "$SESSION_ID" \
--messages '[{"role":"user","content":"Hello!"}]'
Stop rebuilding agent infrastructure.
Self-host SOAT and ship production-ready agents with sessions, knowledge, memory, IAM, traces, and MCP on your own infrastructure.