The TypeScript framework for
building realtime, interactive AI
Dev tools for AI apps, with multi-agent coordination, realtime state-sync, autonomous agent behavior, and human interaction beyond chat.
class VirtualOffice extends Agent {
@field employees = new Map<string, Employee>();
@field messages = new SemanticArray<Message>();
@field activeProject: Project | null = null;
designer = this.spawn(DesignAgent);
engineer = this.spawn(EngineerAgent);
pm = this.spawn(PMAgent);
async assignTask(task: Task) {
const assignee = await this.pm.delegate(task);
this.messages.push({
from: 'PM',
text: `Assigned "${task.title}" to ${assignee.role}`
});
await assignee.work(task);
}
}Write agent logic,
not infrastructure.
Idyllic compiles your agents to stateful actors on Cloudflare's edge — persistence, streaming, and typed RPC included.
Stateful Actors
Your agent lives on the cloud. Call its methods from any client — fully typed.
Durable Execution
Your agent runs continuously. Survives restarts, disconnects, deploys.
Real-time Sync
Server state streams to clients over WebSockets. Multiplayer out of the box.
Design intelligence in code. Idyllic handles the rest.
Applications, not conversations.
Your agent's interface isn't chat(). It's typed methods on stateful objects. Define the interface your application needs.
// Every other framework
agent.chat({
messages: [{
role: 'user',
content: 'place bid $500'
}]
})
// Idyllic
auction.submitBid({
userId: 'user-123',
amount: 500
})Agentic systems.
Multiple agents coordinating with shared state. Agents spawn agents. State flows between them.
class TradingDesk extends Agent {
analyst = this.spawn(MarketAnalyst);
risk = this.spawn(RiskManager);
@field shared = new SemanticMap<string, Insight>();
async evaluateTrade(ticker: string) {
const analysis = await this.analyst.analyze(ticker);
this.shared.set(ticker, analysis);
if (await this.risk.approve(analysis)) {
return this.execute(analysis);
}
}
}TypeScript-native.
Classes. Types. Decorators. No DSL. No YAML. No config files. If you know TypeScript, you know Idyllic.
class ResearchAgent extends Agent {
@field findings = new SemanticArray<Finding>();
async run() {
this.Compiles to edge infrastructure.
Write a class. Deploy a globally distributed stateful actor. 300+ locations. No Kubernetes. No Redis.
Real-time by default.
State streams to your UI. Agents stream to each other. No polling. No webhooks. Changes propagate in milliseconds.
const auction = await connect(Auction, 'auction-123');
auction.onStateChange(state => {
renderBids(state.bids); // Updates instantly
showLeader(state.highestBid); // No polling
});
await auction.submitBid(500); // State streams backDeveloper Experience
From code to cloud in minutes
export default class Agent {
@field query = '';
@field response = stream<string>('');
@action()
async ask(q: string) {
this.query = q;
// AI logic here...
}
}Write TypeScript
Define your agents as classes with typed state and methods. Decorators mark what syncs to clients.
$ npx idyllic build
✓ Parsed system definition
✓ Generated client types
✓ Built worker bundle
✓ Ready to deployTransform & Bundle
Idyllic compiles your code to Cloudflare Durable Objects with automatic state persistence.
$ npx idyllic deploy
✓ Deployed to 300+ locations
✓ WebSocket endpoint ready
✓ State persistence enabled
https://your-app.workers.devDeploy to Edge
One command deploys globally. WebSocket endpoints, state sync, and hibernation—all handled.
Pricing
Grows with your usage
Start free, scale as you grow. We make money when your agents are successful.
Usage includes compute, storage, and egress at Cloudflare rates. No markup on LLM tokens—use your own API keys.
Elements of Agentic System Design
William C. D. Chen
Free Book
Intelligent Systems
from First Principles
The mental models you use for distributed systems, queues, and workflows apply directly to building systems around language models. Ten elements form the vocabulary for designing AI applications that actually work.
Trusted by builders shipping AI
Engineers and teams building the next generation of AI applications.
Frequently asked
questions
Everything you need to know about building with Idyllic.
What is Idyllic?
How is this different from other AI frameworks?
What can I build with Idyllic?
How does deployment work?
Is Idyllic production-ready?
Is Idyllic open source?
Build realtime AI apps with one framework
From TypeScript class to global deployment in minutes.
“The mental model of state-as-code completely changed how I think about building AI applications. No more wiring up WebSockets by hand.”
Early adopter
AI infrastructure engineer