Smyth Runtime Environment (SRE)
The SRE is a unified runtime inspired by operating system kernels, designed for building, running, and managing intelligent agents efficiently. It handles infrastructure so you can focus on agent logic, security, and performance at any scale.
Key Features of SRE
Feature | Description |
---|---|
Agent-centric design | Tailored for agent workloads, not general-purpose computation |
Unified abstraction | One interface for storage, LLMs, cache, and more |
Modular connectors | Plug in new services or providers as needed |
Secure by default | Access control, isolation, and credential management built in |
Observable runtime | Built-in monitoring, logging, and step-by-step debugging |
Cloud-native | Runs locally, in the cloud, or hybrid environments |
Scalable architecture | Efficient from prototype to enterprise production |
Building Agents: Studio, SDK, and CLI
Use SRE in the way that matches your project or team:
Method | Best for | How it works |
---|---|---|
Studio | Visual prototyping, collaboration | Build and test agent workflows in the browser with drag-and-drop UI. |
SDK | Developers, automation, CI/CD | Programmatic agent creation, configuration, and extension in TypeScript. |
CLI | Scripting, automation, power users | Scaffold, run, and manage agents and workflows via the terminal. |
For more, see Building Agents and Hybrid Workflows.
Subsystem Overview
SRE’s architecture is modular. Each subsystem handles a distinct part of the agent runtime. For architecture details, see SRE Architecture.
Subsystem | Description & Link |
---|---|
IO | Handles data I/O, storage, API routing, and logging. |
LLM Manager | Manages access to language models, caching, usage tracking. |
Security | Covers credentials, authentication, secrets, and access policies. |
Memory Manager | Maintains agent state, multi-tier caching, and conversation context. |
Agent Manager | Orchestrates execution, lifecycle, monitoring, and component flows. |
Security and Access Control
SRE applies zero-trust principles. Every resource and action is scoped to an agent identity and enforced by explicit permissions.
const candidate = AccessCandidate.agent(agentId);
const storage = ConnectorService.getStorageConnector().user(candidate);
await storage.write('data.json', content);
For details, see Security Model and explore examples at SRE GitHub repo.
Seamless from Development to Production
You can start building agents right away. SRE is initialized automatically for local and standard development. There’s no setup required for common cases.
async function main() {
// agent logic here
}
main();
If you need to customize connectors for storage, security, or scaling (such as using external vaults, cloud storage, or enterprise logging), you can provide your own initialization. This unlocks advanced configuration and full control.
See Enterprise Deployment and SRE repo for examples and guidance on customizing your SRE setup for production workloads.
What's Next?
- Quickstat: Quickly build your first agent using SRE.
- Building Agents: Combine these components into agent workflows.
- SDK Guide: Programmatically add and configure components.
- Architecture: See how these components fit into the overall SRE system.