Now in public beta

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.

Read the docs
Code
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);
  }
}
Experience
Team
Designer
Working on mockups...
Engineer
Reviewing PR #42
PM
Planning sprint
Activity
PM: Assigned "Dashboard redesign" to Designer
Designer: Starting wireframes for dashboard
Engineer: PR #42 approved, merging...
typing...

Write agent logic,
not infrastructure.

Idyllic compiles your agents to stateful actors on Cloudflare's edge — persistence, streaming, and typed RPC included.

PokerTable
4 connected
pot
$2,400
round
flop
dealer
seat 2
blinds
$10/$20
Player 3 raised $120
Player 1 called
VirtualOffice
12 online
meetings
3 active
messages
847
files
23 shared
uptime
14d 3h
Sarah joined #design
New file uploaded
ResearchSwarm
running
sources
47
tokens
12.4k
agents
3 active
queue
12 tasks
Scraped arxiv.org
Summarizing paper...

Stateful Actors

Your agent lives on the cloud. Call its methods from any client — fully typed.

execution trace
durable
Agent started
0ms
State persisted
12ms
Network disconnect
1.2s
Reconnected
3.4s
Worker restart
15m

Durable Execution

Your agent runs continuously. Survives restarts, disconnects, deploys.

web
ios
android
tablet

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.

comparison.ts
// 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.

trading-desk.ts
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.

research-agent.ts
class ResearchAgent extends Agent {
  @field findings = new SemanticArray<Finding>();

  async run() {
    this.
findingsSemanticArray<Finding>
sourcesMap<string, Source>
investigate(query: string) => Promise<Report>
spawn<T>(agent: T) => T

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.

client.ts
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 back
Live State
bids:[ { user: 'alice', amount: 450 }, { user: 'bob', amount: 500 } ]
highestBid:500
leader:"bob"

Developer Experience

From code to cloud in minutes

1
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.

2
$ npx idyllic build

✓ Parsed system definition
✓ Generated client types
✓ Built worker bundle
✓ Ready to deploy

Transform & Bundle

Idyllic compiles your code to Cloudflare Durable Objects with automatic state persistence.

3
$ npx idyllic deploy

✓ Deployed to 300+ locations
✓ WebSocket endpoint ready
✓ State persistence enabled

https://your-app.workers.dev

Deploy 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.

Free

For hobby projects and learning

$0
Get Started
Full framework access
Local development
Community support
Basic observability
Deploy to your own Cloudflare

Pro

Popular

For teams building production agents

$20/seat/mo + usage
Start Free Trial
Observability dashboard
Team collaboration
Priority support
Preview deployments
Custom domains
Everything in Free

Enterprise

For organizations with compliance needs

Custom
Contact Sales
Private cloud deployment
SOC2, HIPAA compliance
SLA guarantees
Dedicated support
Custom integrations
Everything in Pro

Usage includes compute, storage, and egress at Cloudflare rates. No markup on LLM tokens—use your own API keys.

Elements of Agentic System Design

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.

ContextMemoryAgencyReasoningCoordination+5 more
Read the book

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.

Read the docs

“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