Repository navigation
Module 05 The Agent Loop No Framework to Strands
Write the loop by hand, feel the pain, then let Strands remove it.
Module 05 of 16 · track Build · Estimated time: 5–6 hours · Prerequisites: Module 02. Module 03 helps but is not required.
The best way to understand a framework is to build what it replaces. You will write a working agent loop in plain Python, hit every sharp edge, and only then meet Strands — at which point every abstraction it offers will be obvious rather than magical.
Open the module on GitHub ↗: the slides, notebooks, exercises and solutions are there. This page is the reading order, with the tutorial and the workbench alongside.
The lesson that frames this module is P2 Build & Prove: How to Build an AI Agent in Proven Slices (8 min): building in proven slices, which is what the loop makes possible. Then try the sprint-to-bolt planner in the workbench: the same decision, with your numbers.
- Write a complete agent loop with no framework at all
- Explain exactly what a framework abstracts away, and what it costs you
- Build the same agent in Strands in a fraction of the code
- Choose deliberately between hand-rolled and framework code
| Portable GenAI concepts | AWS-specific surface |
|---|---|
| Agent loop mechanics | Bedrock Converse API |
| Tool dispatch | Strands on Bedrock |
| State management | AgentCore preview |
| Framework trade-offs |
Portable concepts transfer to any stack. The AWS column is where this module touches the cloud — see docs/concepts/portability-matrix.md.
| # | Step | What it is | |
|---|---|---|---|
| 1 | 📖 | slides/Day6_Deck1_Agent_Loop.pptx |
The agent loop, from first principles |
| 2 | 💻 | notebooks/Day6_Demo_0_Foundations.ipynb |
Foundations |
| 3 | 💻 | notebooks/Day6_Demo_1_NoStrands.ipynb |
The hand-built loop — no framework |
| 4 | ✏️ | exercises/Day6_Exercise.ipynb |
Exercise: extend the hand-built loop |
| 5 | 📖 | slides/Day6_Deck2_Strands_AgentCore.pptx |
Strands and AgentCore |
| 6 | 💻 | notebooks/Day6_Demo_2_Strands.ipynb |
The same agent in Strands |
| 7 | 💻 | notebooks/Day6_Demo_2b_Strands_Advanced.ipynb |
Strands, further |
| 8 | ✏️ | exercises/Day6_Exercise_2b.ipynb |
Exercise 2b |
| 9 | 💻 | notebooks/Day6_Demo_3_AgentCore.ipynb |
First look at AgentCore |
| 10 | ✏️ | exercises/Day6_Capstone_TravelMind_Desk.ipynb |
Capstone: TravelMind desk |
📖 read 💻 run ✏️ practise 📊 workbook 🔖 reference
Worked solutions live in solutions/. Attempt every exercise closed-book first — the solutions are written to be read after you have a wrong answer to compare against.
- Reaching for a framework before you can write the loop. You will not be able to debug it.
- Assuming Strands hides Bedrock. It does not — model IDs and access still apply.
Every error anyone has hit in this course is in the Error Index, by the exact string. Model access and region problems are in Model and Region Notes. If it is a question rather than an error, check the answered ones first, then ask in Q&A.
Frameworks
- Autonomy Ladder — R3 vs R4 — where most money is lost
- Failure Signature Catalog — Tool ping-pong and its cause
Quick reference
- Bedrock Converse API — The round trip you are writing by hand
- Strands — The same loop, framework-managed
Recipes and procedures
- Runbook · runaway loop — Caps belong in code, not the prompt
← Module 04 · Agent Builder, Knowledge Bases and Guardrails · All modules · Module 06 · Strands Foundations: Tools, Memory and MCP →
✏️ This page is generated from modules/05-agent-loop-no-framework-to-strands/README.md. To change it, edit the module README: an edit made here is replaced at the next sync.
This wiki is the connective layer. The repository is canonical and versioned; these pages are the cross-surface maps and the notes that change too often to live in a reviewed file. Anyone can edit — see Editing this wiki.
▶ Start here · 55 lessons, on the site ↗
- Getting started · 2
- Agentic PDLC fundamentals · 9
- Methods decoded · 7
- Running delivery · 13
- By role · 9
- Teams and organisation · 4
- Practice · 4
- Interviews and careers · 7
The method
The Agentic PDLC
The Eight Loops
Gates & Governance
The Evidence Pack
The journey · end to end
Product manager
Solution architect
Engineering lead
QA lead
DevOps & platform
The method · by role
Product manager
Solution architect
Engineering lead
QA lead
DevOps and platform
Sponsor
How to
Run an NFR workshop
Design an agent on paper
Build, buy or borrow
Cut sprints into bolts
Review by risk band
Prove the bar
Control the token bill
Hold the security boundary
Run a missing-control postmortem
Reference
Mental Models
Glossary
Formulas & Calculators
Decision Trees
Scenario Library
Exercises & Answers
Anti-Patterns
Sources & Confidence
Where do I find…?
The 16 modules
- Agentic Foundations
- LLM Intuition and the AWS Bridge
- Amazon Bedrock Essentials
- Amazon Bedrock Agents
- Agent Builder, Knowledge Bases and Guardrails
- The Agent Loop: No Framework to Strands
- Strands Foundations: Tools, Memory and MCP
- Multi-Agent Patterns with Strands
- LangChain and LangGraph
- LLM Memory Mechanics
- RAG, OpenSearch and LiteLLM
- Amazon Bedrock AgentCore
- A2A and A2UI: Agent Interoperability
- Agentic QA and Evaluation
- End-to-End Production Pipeline
- Agentic Product Lifecycle
Learning paths · Field guide
Study Plans
Eight sessions
Living notes
Error Index
Community Answers
Field Notes
Model & Region Notes
Cost Log
Scoreboard 🧪
The project
Roadmap
Editing this wiki
Maintainer Runbook
📘 The manual · live
🛫 Ninety Days, the simulator
🧰 The workbench
👔 For leadership
🧠 Mental models
Templates · Prompts
Frameworks & acronyms
The repository · Setup
Pinned discussions
Discussion map — where to post what
Exercise & lab index
Simulator Arena — get a lab graded
Pitch an idea
All discussions →