SmythOS Runtime Environment (SRE)
The SmythOS Runtime Environment (SRE) is the execution platform for agents.
It abstracts away infrastructure so you can focus on logic, workflows, and scaling securely.
Key Features
Feature | What it gives you |
---|---|
Agent-centric | Purpose-built runtime for agent execution rather than generic compute |
Unified interface | One API for storage, language models, caching, and connectors |
Modular connectors | Swap or extend providers without rewriting workflows |
Secure by default | Zero-trust access, credential management, and isolation |
Observable | Logs, monitoring, and step-level debugging available out of the box |
Cloud-native | Works the same locally, in the cloud, or hybrid environments |
Scalable | Runs efficiently from prototype to enterprise workloads |
How to Build with SRE
You can use SRE through different interfaces. Choose the one that fits your workflow:
Method | Best for | How you’ll use it |
---|---|---|
Studio | Visual prototyping, collaboration | Open Studio and design workflows with a drag-and-drop canvas. |
SDK | Developers, CI/CD pipelines | Use the TypeScript SDK to create, configure, and extend agents programmatically. |
CLI | Automation, scripting, power users | Scaffold, run, and manage agents from the terminal. |
See Building Agents for help deciding which interface to start with.
Architecture Overview
SRE is modular. Each subsystem handles one core aspect of the runtime.
You can replace or extend subsystems depending on your requirements.
Subsystem | What it manages |
---|---|
IO | Data I/O, storage, API routing, and logging |
LLM Manager | Language model access, caching, and usage tracking |
Security | Credentials, authentication, secrets, and access policies |
Memory Manager | Agent state, caching layers, and conversation context |
Agent Manager | Execution, lifecycle management, monitoring, and orchestration |
Security Model
SRE enforces zero-trust access control.
Every action and resource is scoped to an agent identity with explicit permissions.
const candidate = AccessCandidate.agent(agentId);
const storage = ConnectorService.getStorageConnector().user(candidate);
await storage.write('data.json', content);
See the Security Model for details, or explore examples in the SRE GitHub repo.
Development to Production
You can begin building agents immediately. SRE initializes automatically in local development with no setup required:
async function main() {
// agent logic here
}
main();
When you need enterprise-grade features, you can configure external vaults, cloud storage, logging, or scaling connectors. The same agent definitions work across local, staging, and production environments.
See Enterprise Deployment for advanced configuration examples.
What’s Next
- Quickstart: Build your first agent with SRE
- Building Agents: Explore Studio, SDK, and CLI options
- SDK Guide: Extend agents programmatically in TypeScript
- Architecture: Learn how the subsystems fit together