AI Agents & Automation
Design LLM agents that use tools, remember context, recover from failure, and automate real work safely.
Why learn AI Agents & Automation?
Agents are the skill every AI team is hiring for right now, and the gap between talking about them and building one is enormous. Calling a model once is a solved problem that anyone can do in an afternoon. Making a model act in a loop, with real tools, against real systems, without looping forever or quietly doing the wrong thing, is engineering, and this course teaches the mechanics rather than the vocabulary.
You learn the actual machinery: the function-calling round trip, the schemas that make tools callable, the twenty-line loop that turns a model into an agent, what to do when a tool fails mid-run, and how to stop an agent that has decided to keep going. Every lesson works from frozen traces, schemas, and configs you can reason about, so you are reading the same artifacts you will debug on the job.
Automation is where this pays off. A well-chosen agent takes a task that eats hours every week and closes it, and a badly chosen one burns budget and trust. The course spends its final module on picking the right candidates, then walks a complete agent design end to end: brief, tools, permissions, guardrails, evals, cost ceiling, and launch plan.
Who this course is for
- Developers who finished the AI path courses and want to build systems that act, not just answer
- Engineers whose team has decided to add agents and who would rather understand the loop than inherit it
- Automation-minded builders looking for the judgment to choose what should and should not be automated
- Anyone who has read a hundred agent threads and still could not draw the control flow on a whiteboard
What you'll build and practice
- A mental model of the agent loop precise enough to implement in under thirty lines in any SDK
- Tool schemas that get called correctly, with the descriptions, enums, and error contracts that make them reliable
- A permission and approval design that decides which actions an agent may take alone and which need a human
- Injection defenses built for agents specifically, where the attack reaches tools rather than just the reply
- A reliability kit: retry policy with real backoff arithmetic, idempotency keys, timeouts, and traces you can debug from
- A complete paper design for an interview-scheduling agent, from brief to evals to cost ceiling, as a portfolio piece
What you'll learn
AI Agents & Automation is organized into 10 focused modules. By the end you'll be comfortable with:
- Agents, Demystified
- Tool Use
- The Agent Loop
- Memory and State
- Retrieval for Agents
- Structure and MCP
- Planning and Multi-Agent Patterns
- Guardrails and Safety
- Reliability, Evals, and Cost
- Automation in the Wild
Course curriculum
64 lessons across 10 modules. Lessons marked Free preview are readable without an account.
Module 1. Agents, Demystified
What an agent actually is under the marketing, what its trace looks like from the outside, and when a plain script beats one.
- 8mModel, Tools, LoopFree preview
Strip the marketing off and an agent is three parts wired in a circle. This lesson names them, runs one, and shows exactly what you are left with when you remove each.
- 8mWhat Agents Actually ShipFree preview
The demos promise an autonomous coworker. The agents that survive a quarter in production are narrower, duller, and worth considerably more. Learn to tell the two apart before you build.
- 9mAnatomy of an AgentFree preview
Every agent you will ever build or debug has the same six parts. Name them once, and every future bug report turns into a question about which part is wrong.
- 9mAgents versus Pipelines
Same job, two implementations: one where you wrote every edge of the graph, one where a model picks them at runtime. Knowing which you need is the highest-leverage decision in the whole build.
- 9mThe Trace Is the Truth
An agent has no memory, no state, and no inner life. It has a message array. Learn to read one and you can reconstruct any run, including the ones that went wrong.
- 8mNaming Things Across Providers
Turn, step, iteration. Tool, function, skill, action. The same six ideas wear four vocabularies, and half of all agent confusion is a naming collision. Here is the translation table.
Module 2. Tool Use
How a model calls your code, how to describe a tool so it gets called correctly, and what to hand back when it fails.
- 8mA Tool Is a Promise
A tool has two halves: a description the model reads and an executor you wrote. The model can only see one of them, and it believes it completely.
- 8mThe Round Trip
One tool call is four legs: you send definitions, the model emits a request, your code runs it, you append the result. Miss a leg and the run stops in a way the error message will not explain.
- 9mWriting the Schema
The parameter schema decides what the model is able to say. Some of its promises are enforced at decode time and some are decoration, and knowing which is which is the difference between a control and a wish.
- 9mTools Worth Having
Five design rules for tool sets, each one anchored to a specific failure you can point at in a trace. Bad tool design does not look like an error; it looks like a model that is being stupid.
- 9mForcing and Forbidding
One request parameter decides whether the model may call a tool, must call one, must call a specific one, or may not call anything. Each setting changes the observable output, and one of them will hang your run.
- 8mMany Calls, One Turn
One response can ask for six tools at once. That is a large latency win and a set of assumptions about ordering that the wire format does not actually make.
- 9mErrors Are Data
A sensor goes offline. In one design the run dies with a stack trace and a half-watered greenhouse. In the other the agent opens a work order and carries on. The difference is four lines of executor code.
Module 3. The Agent Loop
The loop that turns a model into an agent, line by line, plus how it ends and how it breaks.
- 8mSense, Decide, Actuate
Two programs can call the same model with the same prompt and only one of them is an agent. The difference is a loop, and the loop is what you engineer.
- 9mTwenty Lines That Are an Agent
The complete greenhouse agent is about twenty lines of Python. Read every one of them until you could type it from memory, because everything later in this course is a modification of these lines.
- 9mKnowing When to Stop
Four ways a run should end, and the one everybody recommends and nobody implements: a no-progress detector, written out in full.
- 8mThe Messages Are the State
There is no hidden state anywhere in an agent. The message list is the whole machine, which means a run can be saved, resumed after a crash, replayed, and forked.
- 9mWhen a Step Fails
A sensor times out, a tool returns nonsense, the model calls a function that does not exist. Four in-loop failures and the loop code that survives each one.
- 9mReading a Long Trace
A run finished, filed a work order, and was completely wrong. Here is the trace. Find the exact iteration where it went off the rails.
Module 4. Memory and State
Why agents blow the context budget faster than chatbots, and the four things you can do about it.
- 9mThe Context Budget
A chatbot turn costs roughly what the last one cost. An agent iteration costs more than the one before it, every time, and the arithmetic is worse than it looks.
- 9mRolling Summarization
Compaction as an engineering decision: a trigger threshold, a legal cut point, a written contract for the summarizer, and the failure where it swallows state the agent still needed.
- 8mThe Scratchpad
Give the agent a tool it can write notes to and read back. Notes live outside the conversation, so compaction cannot eat them and the window never pays for them twice.
- 9mMemory Outside the Window
Key-value, vector, files, and tables. Four stores, one selection rule, and the mistake that turns an external store into a bigger context problem.
- 8mSession versus Long-Term
What the agent should still know next week, what it must forget by Thursday, and why a remembered fact is a reason to check rather than a license to act.
- 9mPacking the Window
One function runs before every model call and decides what the agent gets to know this iteration. Here is the assembly order, the eviction ladder, and the arithmetic when it does not fit.
Module 5. Retrieval for Agents
Retrieval stops being a pipeline stage and becomes something the agent decides to do, repeatedly, and can get wrong.
- 8mWhen the Model Cannot Know
Three classes of fact no amount of prompting will produce, and why a loop walks into them far more often than a chat window does.
- 7mMeaning as Coordinates
A fast refresher on similarity search, aimed squarely at the thing that changes when the agent writes the query itself.
- 9mCutting Documents Up
A chunk that lands in an agent's history stays there for the rest of the run, re-sent and re-billed every turn. Design them accordingly.
- 9mPrecision, Recall, and Rerank
Two numbers that tell you whether your search is working, and the hard ceiling that reranking can never lift.
- 10mSearch as a Tool
The agent writes its own query, reads its own results, and can search again. Whether it notices a bad search depends entirely on what you return.
- 9mHow Retrieval Fails
Five named failures, each with a detection signal and a fix, and one result set that contains three of them at once.
Module 6. Structure and MCP
Getting output your code can rely on, and the protocol that turned tools into something you can plug in.
- 8mOutput You Can Parse
In a loop, the model's output is another program's input. A parse failure is not an ugly answer, it is a stalled machine mid-run.
- 8mJSON Mode versus Strict Schemas
One guarantees syntax. One guarantees shape. Neither guarantees that anything in the object is true.
- 9mDesigning an Output Schema
Flat over nested, enums over free text, and one field whose only job is to let the model say it could not find out.
- 9mWhat MCP Is
The Model Context Protocol is a protocol, not a product. Here is the problem it solves, the shape it actually has, and what it does not do for you.
- 8mMCP Primitives
Tools, resources, and prompts. Three different things with three different controllers, and picking wrong is a category error with consequences.
- 9mTrusting a Tool Server
An installed tool server is code you are running, describing its own tools, and free to change that description tomorrow.
Module 7. Planning and Multi-Agent Patterns
The named patterns, what each one actually buys you, what it costs to run, and why the honest answer is usually the simplest one.
- 9mReAct: Reason, Then Act
The oldest agent pattern with a name, and still the default. Reason one step, act once, look at what came back, reason again.
- 9mPlan, Then Execute
Write the whole plan first, then run it. You get an artifact a human can approve and steps cheap enough for a small model. You also get a plan that can go stale mid-run.
- 8mThe Reflection Pass
Adding a critic stage to the loop is easy. Making it earn its cost is not: a critic with nothing to measure against is just a second opinion from the same source.
- 10mThe Orchestrator Pattern
One coordinator, several workers. The interesting part is not the fan-out, it is what the merge does when a worker dies, lies, or never comes back.
- 9mHandoffs
Not delegation, transfer. One agent stops and another continues the same job, with whatever the envelope carried and nothing else.
- 9mWhen Multi-Agent Is Overkill
Splitting one agent into five feels like architecture. Here is the bill it generates, written out, and the short list of jobs that actually justify it.
- 9mPicking the Minimal Pattern
A decision table and an escalation ladder that starts at a plain script. You climb a rung only when the rung below has failed for a reason you can name.
Module 8. Guardrails and Safety
What an agent is allowed to touch, who approves the dangerous parts, and what happens when the text it reads turns hostile.
- 9mLeast Privilege for Tools
Two questions per actuator: what untrusted text can reach it, and what does it touch? The answers give you a tier table, and the tier table is your real security posture.
- 9mThe Human in the Loop
Anyone can add an approval step. The hard part is designing the screen, because an approval based on a vague summary is a signature on a document nobody read.
- 9mInjection Against Agents
Against a chatbot, injected text changes a sentence. Against an agent, it reaches a valve. Same weakness, completely different consequence.
- 9mDefending the Agent
Layers ordered by where they act in the loop: at sense, at decide, at actuate, outside, and afterwards. None of them is a fix, and one of them is a guarantee.
- 10mRunaway Agents
Zone 3 has now been irrigated eleven times. No attacker involved. This lesson is the accounting: what counts as a turn, how you meter a run, and what a cap does when it trips mid-action.
- 9mDesigning Safe Actions
You cannot make an agent's decisions correct. You can build actuators where a wrong decision is something you walk back on Monday instead of something you explain to the grower.
Module 9. Reliability, Evals, and Cost
Making an agent survive contact with flaky systems, proving it works, and knowing what a run costs.
- 8mThe Six Ways a Run Goes Wrong
Agent runs do not fail in a hundred creative ways. They fail in six, and each one has a different fix, so naming the failure is most of the repair.
- 10mRetries, Backoff, and Timeouts
Every tool call crosses a network that is having a worse day than you are. Retry policy is arithmetic, not vibes, and the wrong policy turns one flaky service into an outage you caused.
- 10mIdempotency Keys
A retried read costs you nothing. A retried actuator call waters the field twice. The mechanism that makes retries safe is one header, generated in exactly one place.
- 9mTracing What Happened
A run is a tree, not a list. Spans with parent links let you reconstruct exactly what the loop did, and there are fields that must never touch that record.
- 9mEvaluating an Agent
You cannot test an agent with an expected answer, because an agent does not produce an answer. It produces a path. Golden traces pin the path.
- 9mThe Cost of a Loop
A single call has a price. A loop has a curve. Iteration 8 costs several times iteration 1, and the arithmetic that shows why is the arithmetic that sizes your ceiling.
- 10mDebugging from a Trace
One ticket, one trace, one full diagnosis. Everything in this module, applied to a run that went wrong at 19:42 and cannot be reproduced.
Module 10. Automation in the Wild
What is actually worth automating, three real shapes, and one complete agent designed end to end.
- 8mCase Study: Inbox Triage
The first real shape: high volume, low stakes per item, and one actuator that must never fire unattended. A sketch of the design and the metric that lies.
- 8mAgents in Data Pipelines
Shape two, and the most honest lesson in the module: most pipeline work should not be an agent. Here is the narrow place where one earns its keep.
- 8mDriving a Browser
Shape three: the highest-variance, highest-risk surface an agent can be given. Why it breaks so easily, and the mitigation stack for when you genuinely have no alternative.
- 8mWhat to Automate First
Four factors decide whether a task should become an agent, and one of them outweighs the other three combined. Score your candidates before you write a line.
- 10mCapstone: The Brief
The winning candidate, designed for real. An interview-scheduling operations agent, and a brief whose sharpest lines are the things it will never be allowed to do.
- 10mCapstone: Tools and Guardrails
Nine tools, four permission tiers, one approval gate, and the idempotency keys that make a retry safe. The design decisions are the lesson.
- 10mCapstone: Evals, Cost, and Launch
Four golden traces, one cost ceiling, and a launch order that earns autonomy instead of assuming it. Then the end of the course.
Frequently asked questions
- Do I need to have shipped an LLM feature before starting this?
- You should be comfortable reading Python and JSON and know what a system prompt, a token, and an embedding are. The AI path builds that up over several courses, and this one starts the moment a model gains the ability to call your code. You do not need production experience, but you do need to be past the tutorial stage.
- Which agent framework does the course teach?
- None, deliberately. Frameworks wrap the same four mechanics: a tool description, a call, an execution, a result appended to the message list. The course teaches those directly with provider-neutral traces, so you can read any framework's source, choose between them on merit, or write the loop yourself in an afternoon when a framework is overkill.
- How does this differ from the Prompt Engineering track's agent lessons?
- Prompt Engineering approaches agents from the prompt side: how to brief one, how to shape its outputs, how to keep the instructions honest. This track approaches them from the systems side: the loop, the schemas, the failure taxonomy, retries and idempotency, permissions, traces, evals, and the bill. Same territory viewed from a different altitude, with no shared examples.
- Will I be able to run an agent in production after this?
- You will be able to design one responsibly and read one fluently, which is the part that takes longest to learn. The course is built on frozen traces and schemas rather than a live sandbox, so the coding happens in your own project with your own provider. What you take away is the design judgment and the operational checklist that decide whether that project survives contact with real users.
- Is a multi-agent system always better than a single agent?
- Almost never, and one lesson exists mainly to argue that. Every extra agent adds coordination cost, more places for context to go missing, and a much harder debugging story. The course teaches an escalation ladder that starts with a plain script and adds autonomy only when the task genuinely requires it, so you can defend the simplest design that works.
Ready to start AI Agents & Automation?
Create a free account to track progress, earn XP, and get instant help from the AI tutor as you code.
Create your free account