skillpack.co
All solutions

AWS Strands Agents SDK

watch

5.5M PyPI downloads/month (claimed 14M+ cumulative since May 2025). v1.30.0 (2026-03-11), A2A protocol, Agents-as-Tools pattern. Internal AWS usage: Amazon Q Developer, AWS Glue, VPC Reachability Analyzer. Best for AWS Bedrock teams only. Anomalous download/star ratio (1,038 DL/star vs CrewAI 122) — zero HN organic signal.

Score 87watch

Where it wins

Official AWS SDK — supported tooling for Bedrock teams

Internal AWS usage: Amazon Q Developer, AWS Glue, VPC Reachability Analyzer

A2A protocol support; Agents-as-Tools pattern

Calculator agent in ~3 lines vs LangGraph's ~40 (AWS benchmark, caveated)

Cold start ~800ms/150MB vs LangGraph ~1,200ms/250MB (AWS benchmark, caveated)

Where to be skeptical

Anomalous download/star ratio: 5.5M downloads / 5.3K stars = 1,038 DL/star (CrewAI: 122) — CI/CD pipeline inflation concern

Zero HN organic discussion despite claimed 14M cumulative downloads

AWS Bedrock lock-in — not model-agnostic

All benchmark data from AWS-controlled publications, no third-party reproduction

Editorial verdict

AWS Bedrock teams only. High claimed downloads but anomalous download/star ratio (1,038 vs CrewAI 122) and zero HN organic discussion despite 14M cumulative downloads raises CI/CD pipeline inflation concern. Official AWS tooling is genuine advantage for Bedrock teams; lock-in penalty is high for everyone else.

Related

Claude Code

98

Anthropic's official agentic coding CLI. v2.1.81 (Mar 20) shipped `--bare`, smarter worktree resume, and improved MCP OAuth while the repo crossed 82,204 stars and logged ~14 commits/week across 10+ maintainers. Terminal-native, tool-use-driven, with deep file system + shell access, #1 SWE-bench Pro standardized (45.89%), ~4% of GitHub public commits (SemiAnalysis), $2.5B annualized revenue. 8M+ npm weekly downloads. Opus 4.6 with 1M context.

LangGraph

95

#1 Python agent framework by production evidence — 40.2M PyPI downloads/month, Fortune 500 deployments (LinkedIn, Uber, Replit, Elastic, Klarna, Cloudflare, Coinbase), ~400 LangGraph Platform companies, LangSmith rated best-in-class observability. Stable v1.x API, model-agnostic, MCP support.

Pydantic AI

95

#3 Python agent framework by downloads — 15.6M PyPI/month. Built by the Pydantic team. Runtime type enforcement is a genuine differentiator no other framework offers. V1 shipped with Temporal integration for durable execution and Logfire observability. Emerging pattern: 'Pydantic AI for agent logic, LangGraph for orchestration' (ZenML).

AutoGen (Microsoft)

95

⚠️ MAINTENANCE MODE — Microsoft officially confirmed bug fixes and security patches only, no new features (VentureBeat 2026-02-19). 55.9K stars but only 1.57M PyPI/month — DL/star ratio of 28, the most inflated among active frameworks. Being replaced by Microsoft Agent Framework (AutoGen + Semantic Kernel merge, GA targeted ~Q2 2026). Teams on AutoGen should plan migration.

Public evidence

Raw GitHub source

GitHub README peek

Constrained peek so you can sanity-check the source material without leaving the site.

<div align="center"> <div> <a href="https://strandsagents.com"> <img src="https://strandsagents.com/latest/assets/logo-github.svg" alt="Strands Agents" width="55px" height="105px"> </a> </div> <h1> Strands Agents </h1> <h2> A model-driven approach to building AI agents in just a few lines of code. </h2> <div align="center"> </div> <p> <a href="https://strandsagents.com/">Documentation</a> ◆ <a href="https://github.com/strands-agents/samples">Samples</a> ◆ <a href="https://github.com/strands-agents/tools">Tools</a> ◆ <a href="https://github.com/strands-agents/agent-builder">Agent Builder</a> ◆ <a href="https://github.com/strands-agents/mcp-server">MCP Server</a> </p> </div>

Strands Agents is a simple yet powerful SDK that takes a model-driven approach to building and running AI agents. From simple conversational assistants to complex autonomous workflows, from local development to production deployment, Strands Agents scales with your needs.

This monorepo contains the Python SDK, TypeScript SDK, documentation site, and supporting packages:

DirectoryDescription
strands-py/Python SDK — agent loop, model providers, tools (PyPI)
strands-wasm/WebAssembly bindings for running Python tools from TypeScript agents
strands-py-wasm/Python host for WASM components (bridges WIT interfaces to Python)
strandly/Developer CLI for local builds, codegen, and workspace tooling
site/Documentation site built with Astro/Starlight (strandsagents.com)
designs/Design proposals for significant features (RFC-style)

Feature Overview

  • Lightweight & Flexible: Simple agent loop that just works and is fully customizable
  • Model Agnostic: Support for Amazon Bedrock, Anthropic, Gemini, LiteLLM, Llama, Ollama, OpenAI, Writer, and custom providers
  • Advanced Capabilities: Multi-agent systems, autonomous agents, and streaming support
  • Built-in MCP: Native support for Model Context Protocol (MCP) servers, enabling access to thousands of pre-built tools

Quick Start

# Install Strands Agents
pip install strands-agents strands-agents-tools
from strands import Agent
from strands_tools import calculator
agent = Agent(tools=[calculator])
agent("What is the square root of 1764")

Note: For the default Amazon Bedrock model provider, you'll need AWS credentials configured and model access enabled for Claude 4 Sonnet in the us-west-2 region. See the Quickstart Guide for details on configuring other model providers.

Installation

Ensure you have Python 3.10+ installed, then:

# Create and activate virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows use: .venv\Scripts\activate

# Install Strands and tools
pip install strands-agents strands-agents-tools

Features at a Glance

Python-Based Tools

Easily build tools using Python decorators:

from strands import Agent, tool

@tool
def word_count(text: str) -> int:
    """Count words in text.

    This docstring is used by the LLM to understand the tool's purpose.
    """
    return len(text.split())

agent = Agent(tools=[word_count])
response = agent("How many words are in this sentence?")

Hot Reloading from Directory: Enable automatic tool loading and reloading from the ./tools/ directory:

from strands import Agent

# Agent will watch ./tools/ directory for changes
agent = Agent(load_tools_from_directory=True)
response = agent("Use any tools you find in the tools directory")
MCP Support

Seamlessly integrate Model Context Protocol (MCP) servers:

from strands import Agent
from strands.tools.mcp import MCPClient
from mcp import stdio_client, StdioServerParameters

aws_docs_client = MCPClient(
    lambda: stdio_client(StdioServerParameters(command="uvx", args=["awslabs.aws-documentation-mcp-server@latest"]))
)

with aws_docs_client:
   agent = Agent(tools=aws_docs_client.list_tools_sync())
   response = agent("Tell me about Amazon Bedrock and how to use it with Python")
Multiple Model Providers

Support for various model providers:

from strands import Agent
from strands.models import BedrockModel
from strands.models.ollama import OllamaModel
from strands.models.llamaapi import LlamaAPIModel
from strands.models.gemini import GeminiModel
from strands.models.llamacpp import LlamaCppModel

# Bedrock
bedrock_model = BedrockModel(
View on GitHub →