Strands Agents is an SDK for building and running AI agents in Python and TypeScript, aimed at teams that would otherwise write their own agent loop. It runs in your process with no hosted control plane and covers the jobs a hand-rolled loop grows into: lifecycle controls, tools and structured output, MCP, multi-agent patterns, memory and sessions, model portability, streaming, guardrails, tracing, and evals.
The monorepo ships two layers. Strands harness is a fully assembled agent created with one call, with benchmarked defaults for the model, tools, memory, sessions, and context management that can each be overridden, plus a CLI for prototyping and chatting with a harness agent from the terminal. The Python and TypeScript SDKs sit underneath and expose the agent loop, tools, model providers, memory, sessions, and hooks for teams that want to build their own harness.
The agent loop traces every decision by default, and hooks intercept any step to log, validate, or redirect it. Guardrails catch mistakes before they run, and steering handlers let agents correct themselves. Model providers include Amazon Bedrock, Anthropic, OpenAI, Gemini, and Ollama, plus custom providers, and backends can be swapped without changing agent code. A Strands skill for coding agents covers framework selection, scaffolding, tools, MCP integration, and LangGraph migrations, and Claude Code discovers it automatically in the repository.
Features
- Strands harness: a fully assembled agent with benchmarked defaults for model, tools, memory, sessions, and context management
- Python and TypeScript SDKs: the agent loop, model providers, tools, memory, sessions, and hooks for building your own harness
- Lifecycle controls: turn limits, token budgets, cancellation, and stop reasons
- Model portability: Amazon Bedrock, Anthropic, OpenAI, Gemini, Ollama, and custom providers
- Tools and MCP: tools, MCP servers, structured output, and Zod-typed tools in TypeScript
- Multi-agent patterns: built-in patterns for coordinating several agents
- Hooks and tracing: every decision is traced by default, and hooks intercept any step
- Guardrails and steering: guardrails check actions before they run, and steering handlers let agents self-correct
- Streaming: streaming responses, including bidirectional streaming in Python
- Evals: an evals SDK for testing agent behavior
- Strands CLI: prototype and chat with a harness agent from the terminal
- Coding-agent skill: a skill for framework selection, scaffolding, MCP integration, and LangGraph migrations


