CSE Roadmap

Core tier · about 5 hours · 6 parts

Part 1 of 6 · 2 min read

Overview

In this module you will

  • Write the agent loop directly against a provider's tool-calling shape, with no framework, and say what each part of the request and response is for.
  • Show that a raw loop, an SDK-shaped loop and a state graph are three ways of writing one agent.
  • Name, for each piece of your Level 5 agent, the module it came from and the name a framework may give it.
  • Audit the defaults of a framework: retries, truncation, step limits, hidden prompts, swallowed errors.
  • Choose between raw code and a framework with a decision guide, and move an agent into a framework without losing its tests.
  • Finish Level 5 with a framework-free research agent that you can explain line by line.

Every agent framework is a way of writing the loop you wrote in module 1, plus a layer of conveniences: tool registration, state, retries, limits, tracing. If you have written the loop once, a framework's documentation reads as "ah, that is where they put the step counter". If you have not, the framework is a black box with a manual, and when a run goes wrong (and in Level 9 you will see that they all do) you cannot tell whether the model, your code or the framework did it.

The goal is not to avoid frameworks. It is to choose them with open eyes: knowing what they buy you, what they decide for you, and how to check.

About the examples

Everything here is an offline imitation. The "model" is a rule-based program that handles ten question shapes; the "SDK client" is a fake that returns responses in the general shape that tool-calling APIs use, and it was never run against any real service; graphlite.py is a teaching toy, not a copy of any library; AutoAgent is invented, and its defaults are plausible choices I made to make a point, not the behaviour of any real product. The numbers show what each choice does in this toy, not what a real framework does. For anything about a real framework, read its current documentation.