SRE Components Reference
The Smyth Runtime Environment (SRE) provides over 40 production-ready components, building blocks you can combine to create robust AI agents.
Each component encapsulates a reusable function, like calling a language model, fetching web data, or filtering JSON.
AI & LLM Components
Direct access to cutting-edge AI models and multimodal processing.
Component List:
GenAILLM
— Unified LLM interface (OpenAI, Anthropic, Google, etc.)VisionLLM
— Image analysis and understandingMultimodalLLM
— Text, image, audio togetherLLMAssistant
— Multi-turn conversational assistantHuggingFace
— Hugging Face modelsImageGenerator
— Text-to-image generation
Example:
const llm = SDK.GenAILLM({ model: 'gpt-4', prompt: 'Summarize this article' }, agent);
const vision = SDK.VisionLLM({ image: imageBuffer }, agent);
External Integrations
Connect your agents to live web data and APIs.
Component List:
APICall
— HTTP(S) API requests, OAuth supportWebSearch
— Live search via web enginesWebScrape
— Website content extractionZapierAction
— Zapier triggers/automationsMCPClient
— Model Context Protocol client (advanced integration)
Example:
const search = SDK.WebSearch({ query: 'SmythOS news', maxResults: 5 }, agent);
const api = SDK.APICall({
url: 'https://api.example.com/data',
method: 'GET'
}, agent);
Data Processing Components
Clean, index, filter, and classify your data before using it in workflows.
Component List:
DataSourceIndexer
— Index a batch of documentsDataSourceLookup
— Fast search/lookup from indexDataSourceCleaner
— Data normalization/cleaningJSONFilter
— Extract/filter from JSON structuresClassifier
— Classify data by custom rules or AI
Example:
const indexer = SDK.DataSourceIndexer({ documents: myDocs }, agent);
const classifier = SDK.Classifier({ classes: ['finance', 'tech', 'health'] }, agent);
classifier.in({ Input: llm.out.Reply });
Logic & Control Flow
Control agent workflow logic: branching, iteration, asynchronicity.
Component List:
LogicAND
,LogicOR
,LogicXOR
— Boolean logicLogicAtLeast
,LogicAtMost
— Threshold-based logicForEach
— Iterate over a list or arrayAsync
,Await
— Asynchronous workflow handling
Example:
const forEach = SDK.ForEach({ items: [1,2,3] }, agent);
// Process each item in the array through a step in your workflow
Storage & File Operations
Store, retrieve, and execute code or files inside your agent’s environment.
Component List:
FileStore
— Read/write files (local/S3)Code
— Execute code snippets dynamicallyServerlessCode
— Serverless compute (cloud function-style)
Example:
const fileStore = SDK.FileStore({ filename: 'output.txt', content: 'Hello world' }, agent);
const code = SDK.Code({ language: 'python', source: 'print("Hi")' }, agent);
System Integration
Integrate agents with system or plugin-level functionality.
Component List:
ComputerUse
— Automate computer/system tasksGPTPlugin
— Use OpenAI-compatible pluginsAPIEndpoint
— Create custom HTTP endpoints in the agent
Example:
const endpoint = SDK.APIEndpoint({ path: '/report', handler: async (req) => ({ ok: true }) }, agent);
nt Summary Table
A complete overview of all available components, organized by category.
Category | Component Name | Description |
---|---|---|
AI & LLM | GenAILLM | Unified interface for multiple LLMs |
VisionLLM | Analyze and understand images | |
MultimodalLLM | Process text, image, and audio | |
LLMAssistant | Conversational AI assistant | |
HuggingFace | Hugging Face model APIs | |
ImageGenerator | Generate images from text | |
External Integration | APICall | HTTP requests (OAuth support) |
WebSearch | Real-time web search | |
WebScrape | Extract website content | |
ZapierAction | Zapier automations | |
MCPClient | Model Context Protocol client | |
Data Processing | DataSourceIndexer | Index documents for lookup |
DataSourceLookup | Retrieve from indexed sources | |
DataSourceCleaner | Clean and normalize input | |
JSONFilter | Manipulate JSON data | |
Classifier | Categorize content into classes | |
Logic & Control Flow | LogicAND , LogicOR , LogicXOR | Boolean operations |
LogicAtLeast , LogicAtMost | Conditional logic by threshold | |
ForEach | Iterate over lists | |
Async , Await | Manage async steps | |
Storage & Files | FileStore | File operations (read, write) |
Code | Execute custom code | |
ServerlessCode | Run serverless functions | |
System Integration | ComputerUse | Automate system-level tasks |
GPTPlugin | OpenAI plugin integration | |
APIEndpoint | Custom API endpoints |
How to Add and Use Components
You can add components to your agent either:
import { SDK } from 'smyth-runtime';
const agent = new SDK.Agent({ name: 'FileBot', model: 'gpt-4' });
const fileStore = SDK.FileStore({ filename: 'log.txt', content: 'Test' }, agent);
See the Building Agents guide for more advanced patterns.
What's Next?
- 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.