This is the entire agent loop
while True:
response = llm(messages, tools)
if response.tool_call:
result = run_tool(response.tool_call)
messages.append(result)
else:
breakUser
LLM
Tool
Result
LLM
Done
Watch the loop run. This is what every agent framework does.
>>
Runs in Your Browser
Python via Pyodide. Real code, real API calls, real traces. No terminal, no venv, no Docker.
{}
No Framework Required
Raw HTTP calls to the LLM API. See the actual POST request. No SDKs hiding the work.
==
See What Frameworks Do
Every lesson shows the LangChain or CrewAI equivalent — then the plain Python underneath.
9 lessons. Each one builds on the last.
Start anywhere. Every lesson runs live in your browser.
From a single function call to a complete agent framework — learn tool calling, conversation memory, state management, policy gates, and self-scheduling.
One function. One HTTP POST.
That's where it starts. The first lesson takes 2 minutes.
Start Lesson 1 →