Back to Videos

Claude Agent SDK [Full Workshop] - Thariq Shihipar, Anthropic

Channel Anthropic
Published January 5, 2026
Duration 1:52:25
Anthropic Claude Agent SDK Workshop Tutorial AI Agents Claude Code
TL;DR

Thariq Shihipar from Anthropic delivers a comprehensive workshop on building AI agents using the Claude Agent SDK. The core philosophy centers on "Bash is all you need" - leveraging Unix primitives (bash, file system) as the foundation for powerful agents. The workshop covers the agent loop (gather context, take action, verify work), security through "Swiss cheese defense" layers, and demonstrates how to build production agents using Claude Code as a prototyping platform before deploying with the SDK.

Key Takeaways

Summary

What is the Claude Agent SDK?

The Claude Agent SDK is built on top of Claude Code, providing a framework for building production-ready AI agents. The key insight is that models are "grown, not designed" - meaning developers need to understand and work with the model's natural capabilities rather than fighting against them. The SDK handles the infrastructure complexity (sub-agents, bash execution, context management) so developers can focus on domain-specific problems.

The Anthropic Way to Build Agents

The workshop introduces the "Anthropic way" of building agents, which emphasizes simplicity and leveraging what models already know. Rather than creating complex tool ecosystems, the philosophy is to use Unix primitives - bash and the file system - as the foundation. Bash provides a composable, well-understood interface that models are deeply familiar with from training data.

Tools vs Bash vs Code Generation

Three main approaches for agent actions:

The choice depends on how dynamic the operation is. Static operations favor tools; highly dynamic operations favor code generation. Bash sits in the middle, offering composability for relatively static scripts.

The Agent Loop

Every agent follows a core loop:

  1. Gather Context: Search, read files, query APIs - get the information needed
  2. Take Action: Write files, execute commands, make changes
  3. Verify Work: Run tests, check outputs, validate results

This loop continues until the task is complete. Verification is crucial - use deterministic checks (linting, tests) wherever possible, and save model-based verification for cases where rules cannot be written.

Security: Swiss Cheese Defense

Security cannot rely on a single layer. The "Swiss cheese defense" model uses multiple overlapping protections:

Each layer has holes, but overlapping them provides robust protection.

Context Engineering and Skills

Rather than front-loading all context into the system prompt, use "progressive context disclosure" through skills. Skills are markdown files that get loaded on-demand, providing relevant context exactly when needed. This keeps the initial context clean while making rich information available.

File System as Memory

The file system serves as persistent memory for agents. Write notes, state, and context to files so agents can resume work across sessions. This is analogous to how Claude Code uses CLAUDE.md files - they provide persistent context that survives context window resets.

Sub-agents for Complex Tasks

Sub-agents are crucial for managing context and parallelizing work. Use them when:

Sub-agents can also serve as adversarial verifiers, checking the main agent's work without "sympathetic" context pollution.

Prototyping with Claude Code

The recommended workflow is to prototype with Claude Code first. Give Claude Code access to your APIs and data, iterate on the approach, and once it works well, translate to the Agent SDK for production. Claude Code serves as the perfect prototyping environment because it uses the same underlying primitives.

State and Reversibility

Consider how reversible your agent's actions are when choosing use cases. Code is highly reversible (git history), while computer use is not (ordering the wrong item cannot be undone). Agents work best in domains with reversible state or the ability to create checkpoints.

Live Demonstration: Pokemon Agent

The workshop includes a live demonstration building a Pokemon agent that can query the PokeAPI, search competitive data from Smogon, and help build Pokemon teams. The example showcases:

Notable Quotes

"Bash is all you need. The bash tool is just like one of the most powerful tools because it is so composable."

"Models are grown and not designed. We're sort of understanding their capabilities like riding a horse - giving signals, calming it down, figuring out how to push it faster."

"Simple is not the same as easy. The amount of code in your agent should not be huge, but it does need to be elegant. It needs to be what the model wants."

"If you're using other SDKs and you think about tools first, I would challenge you to try bash first and see if that's all you need."

"The agent should gather context as much as possible. Give it the tools to find its own work. Think about it like someone locked in a room - would you want a stack of papers or a computer?"

References