Future-Proof Your Browser:

In-Browser AI Agents

GDGBerlin

Baris Guler, 2026

a Berlin-based engineering (leader) focused on distributed systems, serverless architectures, and AI-native applications. Iโ€™ve led cross-functional teams at Intel, Delivery Hero, Blacklane, Wรผrth Cloud Services and recently a software architect at Zoi, designing cloud-based distributed systems.
Chairman of (the fictional) Bureau of Tech.
Interested in WebAssembly, browser-native AI, uncompromised agents, and on-demand system facilitation.

Who am I?๐Ÿ‘‹๐Ÿผ

Feedback Systems Before AI

Portability, Isolation, and the Locality of Intelligence

ใ€ž

Feedback is older than AI.

โ€“ The Fictional History of Machinic Tools

Thermostat

Measure โ†’ Compare โ†’ Adjust

 

CI/CD

Deploy โ†’ Observe โ†’ Roll Back

 

 

Compiler Optimization

Rewrite โ†’ Benchmark โ†’ Rewrite

 

 

Recommendation Systems

Behavior โ†’ Update โ†’ Suggest

 

Feedback Loops at their best

Observe โ†’ Adjust โ†’ Repeat

Where Does the Loop Close?

Portability, Isolation, and the Locality of Intelligence

An Agent Is a Loop With Memory

Input

The loop begins with a signal: user input, system state, or environmental data. entering the runtime boundary.

1.

Interpret

The system contextualizes the signal using its current memory and predictive model to construct a meaningful internal representation.

2.

Decide

Based on memory and prediction, the loop selects the next action either deterministic, probabilistic, or a combination of both.

3.

Act

The system executes the action, updates its memory with the outcome, and prepares for the next iteration of the loop.

4.

ใ€ž

Where does the loop run today?

โ€“ The History of Machinic Tools

1st

Client

2nd

API

3rd

Cloud

5th

LLM

7th

Loop

4th

Tools

6th

Memory

The loop closes remotely today

User โ†’ Browser โ†’ API โ†’ Cloud App โ†’ LLM API โ†’ Tool API โ†’ Memory Store โ†’ Response

The Default Agent Architecture Today

The browser is mostly treated as a terminal.

But it already has compute, memory, isolation, storage, and acceleration.

โ˜๏ธ Cloud

๐Ÿ–ฅ Desktop

๐Ÿ“ฑ Mobile

๐ŸŒ Edge

A loop can run in today:

๐Ÿงญ Browser Tab

โ€ข Mozilla AI blueprints โ†’ Can the browser be a serious runtime?

How I Ended Up Testing This Idea

โ€ข wasm-agents blueprint โ†’ Pyodide in-browser notebooks

โ€ข Built a PoC โ†’ wasm-browser-agents-blueprint

Thanks Davide from Mozilla.ai โค๏ธ

# Build and run with Docker (Recommended)
docker build -t wasm-browser-agents-app .

# For development with hot-reload
docker run -p 5173:5173 \
  -v $(pwd)/demos:/app/demos \
  -v $(pwd)/src:/app/src \
  wasm-browser-agents-app

TLDR;

No application backend.

No inference API.

The browser becomes the runtime boundary.

Loop Component โ†’ Browser Primitive

Agent capability Browser Primitive
Short-term state JS heap / worker memory
Durable memory IndexedDB / OPFS
Model inference WebLLM / MediaPipe GenAI / remote fallback
Deterministic execution WASM
Parallelism WebWorkers
Tool Access Web APIs
Acceleration WebGPU
Isolation Boundary Worker boundary + WASM sandbox
DistributionStatic assets + model cache

Isolation is

Structural

Isolation is Structural

Determinism Inside the Loop

If the loop is real, parts of it must be deterministic, too.

ใ€ž

Loops Shouldn't Care About the Language

โ€“ An unwritten book on WASM Agents 

The browser used to host one language

SM made it portable.

Conceptual

Reconstruction

Same loop,

different placement.

What Runs Where?

Part Local?Primitive
Agent control loop YesJS / Python via Pyodide / WASM
Deterministic tools YesWASM
Parallel execution YesWeb Workers
Memory cache YesIndexedDB / Cache API
LLM inference DependsWebLLM / external API / local endpoint
UI YesBrowser

Demo ๐ŸŽ‰

Local Is Not Magic

Local loops give you: Privacy, Latency, Offline potential, Lower backend cost and User control.

It charges you in: Memory, Distribution, Device variance, Energy, Heat and Context limits.

but

The Six Taxes of Local Loops

When You Close the Loop Locally, You Inherit New Taxes

Tax #1

Memory

Local loops are bounded by device memory.

Tax #2

Distribution

Portability increases distribution cost.

Tax #3

Variance

Local loops inherit the userโ€™s machine: GPU, RAM, battery, browser, permissions, and patience.

Tax #4

Energy

Energy is part of loop economics.

Tax #5

Heat

Feedback exists at the hardware layer too.

Tax #6

Context

Context window defines the visible past of the loop.

ใ€ž

Constraints are not reasons to avoid locality entirely. They're the cost of moving closer to the user.

โ€“ The History of Machinic Tools

Strategic Placement of Loops

Local Loop

private, low latency

1.๐Ÿงญ๐Ÿ“ฑ๐Ÿ–ฅ

Edge Loop

Shared

2.๐ŸŒ

Cloud Loop

heavy compute

3.โ˜๏ธ

Where Does the Decision Become Real?

Intelligence is not where the model is

It's where the loop closes.

The browser is a serious place for loops to close.

So for agents, too.

Key Takeaways

  • Agents are feedback loops with memory not personalities. ๐Ÿ”

  • Loop placement matters more than model size. ๐Ÿ“

  • The browser already contains the primitives to host a loop. ๐ŸŒ

  • Isolation (WebWorkers) enables stability. ๐Ÿงฑ

  • Portability (WASM) enables polyglot architectures. ๐Ÿงณ

  • Prediction should be paired with deterministic control. โš–๏ธ

  • Energy, latency, and memory are part of loop economics. โšก

  • Moving the loop changes privacy, cost, and control. ๐Ÿ”’

Thank you!

Contact me via email or social if you have any questions,always happy to help!

Made with Slides.com