Agentic Workflows
Build AI systems that act autonomously — from single-step tools to multi-stage pipelines with decision loops.
Prerequisites: Prompt Engineering
Stage 1: What is an Agent?
You’ll know this when… you can explain the difference between a chatbot, a tool-using assistant, and an autonomous agent — and know when each is appropriate.
Key Concepts
- Agent = LLM + tools + a loop (observe → think → act)
- The spectrum: chat → tool-use → single-step agent → multi-step agent → autonomous
- When agents are overkill vs. when they unlock real value
- Trust boundaries — what should an agent do unsupervised?
Recommended Resources
Practice Project
Map your Intelligence Hub as an agent. Draw out the agent loop in agent/run.js: what does it observe (RSS feeds), think about (evaluate.js scoring), and act on (publish.js)? Write a one-page analysis of where it falls on the agent spectrum and what would make it more autonomous.
Stage 2: Single-Step Agents — One LLM Call, One Action
You’ll know this when… you can build a script that takes input, sends it to Claude with a specific tool/function, and acts on the structured response.
Key Concepts
- Structured output as the “action” layer
- Input validation before the LLM call
- Output parsing and error handling
- The importance of deterministic fallbacks
Recommended Resources
Practice Project
Build a “project tagger” agent. Create a script that reads a project description from src/content/projects/, sends it to Claude, and gets back suggested tags (category, tech stack, complexity). Write the tags into the frontmatter automatically. One call, one action.
Stage 3: Multi-Step Pipelines — Sequential Processing
You’ll know this when… you can chain multiple LLM calls together where each step’s output feeds the next, with error handling between stages.
Key Concepts
- Pipeline architecture: ingest → process → evaluate → output
- Data contracts between stages (what shape does each step expect?)
- Error propagation — when one stage fails, what happens?
- Parallel vs. sequential execution (
Promise.allSettledvs.await) - State management between steps
Recommended Resources
- Your own agent/run.js — a working 4-stage pipeline
- Anthropic — Prompt Chaining
- Node.js — Promise.allSettled
Practice Project
Add a “summarize week” stage to your pipeline. After daily briefings publish, build a step that reads the last 7 briefings from src/content/intelligence/, sends them to Claude, and generates a weekly digest. Chain it after the daily publish in run.js (only on Sundays).
Stage 4: Tool Use & Function Calling
You’ll know this when… you can define tools that Claude can call, handle the tool results, and let Claude decide which tools to use based on context.
Key Concepts
- Defining tools with JSON Schema
- The tool-use message loop (Claude requests → you execute → return result)
- Letting Claude choose between multiple tools
- Tool result formatting for best follow-up reasoning
- Safety: validating tool inputs, rate limiting, sandboxing
Recommended Resources
Practice Project
Give your agent a “check site” tool. Define a tool that fetches a page from elizabethcarey.biz and returns the HTTP status + title. Let Claude use it during evaluation to verify that linked resources in briefing items are still live. Wire it into evaluate.js as an optional verification step.
Stage 5: Autonomous Loops — Agents That Decide When to Stop
You’ll know this when… you can build an agent that runs in a loop, makes decisions about what to do next, and knows when to stop — without human intervention.
Key Concepts
- The ReAct pattern: Reason → Act → Observe → repeat
- Stop conditions (max iterations, goal achieved, confidence threshold)
- Memory across iterations (conversation history, state files)
- Guardrails: budget limits, scope constraints, human-in-the-loop breakpoints
- Debugging autonomous systems — logging, tracing, replay
Recommended Resources
- Anthropic — Building Effective Agents
- Claude Agent SDK
- ReAct: Synergizing Reasoning and Acting (Paper)
Practice Project
Build a “content gap” agent. Create an autonomous agent that: (1) reads your site’s existing content, (2) analyzes your Intelligence Hub briefings for recurring topics, (3) identifies topics that come up often but have no matching project or blog post, (4) generates a prioritized list of content to create. The agent should loop until it has checked all briefings, then stop and output its recommendations.