Strands

Strands Agents Samples

A model-driven approach to building AI agents in just a few lines of code.

GitHub commit activity GitHub open issues GitHub open pull requests License Strands Discord

Documentation ◆ Samples ◆ CLI ◆ MCP Server
Harness (Python, TypeScript) ◆ SDK (Python, TypeScript) ◆ Box ◆ Shell ◆ Evals ◆ Labs

Welcome to the Strands Agents Samples repository! Explore easy-to-use examples to get started with Strands Agents. The examples in this repository are for **demonstration and educational purposes** only. They demonstrate concepts and techniques but are **not intended for direct use in production**. Always apply proper **security** and **testing** procedures before using in production environments. ## Quick Start
### Python Python **Prerequisites:** - Python 3.10 or higher - pip package manager (not required when using the uv alternative below) - Verify with: `pip --version` or `pip3 --version` - Usually comes bundled with Python 3.4+ installers from python.org - If pip is missing, install using one of these methods: ```bash # Method 1 - Use Python's built-in module python -m ensurepip --upgrade # Method 2 - Download and run the official installer curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py python get-pip.py ``` **Step 1: Create Virtual Environment** ```bash # Create virtual environment python -m venv venv # Activate virtual environment # On macOS/Linux: source venv/bin/activate # On Windows: venv\Scripts\activate ``` **Step 2: Install** ```bash pip install strands-agents ``` This installs the core SDK, which is all the first agent below needs. Many samples need additional packages, so check each sample's README and `requirements.txt` or `pyproject.toml` before running it. **Alternative: Use uv** If you prefer [uv](https://docs.astral.sh/uv/), install it using the [official installation instructions](https://docs.astral.sh/uv/getting-started/installation/) and follow these steps instead of Steps 1 and 2 above. Create a virtual environment: ```bash uv venv ``` Activate it on macOS/Linux (bash or zsh): ```bash source .venv/bin/activate ``` Or on Windows (PowerShell): ```powershell .\.venv\Scripts\Activate.ps1 ``` If PowerShell blocks `Activate.ps1`, see Python's [Windows execution policy guidance](https://docs.python.org/3/library/venv.html#creating-virtual-environments) and follow any applicable organizational policies. Then install the same package: ```bash uv pip install strands-agents ``` **Your First Agent:** ```python from strands import Agent agent = Agent() response = agent("Hello! Tell me a joke.") print(response) ``` [Explore Python tutorials →](./python/01-learn/) ### TypeScript TypeScript **Prerequisites:** - Node.js 18 or higher - npm or yarn package manager **Install:** ```bash npm install @strands-agents/sdk ``` **Your First Agent:** ```typescript import { Agent } from "@strands-agents/sdk"; async function main() { const agent = new Agent({ systemPrompt: "You are a helpful assistant." }); const response = await agent.invoke("Hello! Tell me a joke."); console.log(response.toString()); } main(); ``` [Explore TypeScript tutorials →](./typescript/01-learn/)
### Model Provider Setup Follow the instructions [here](https://strandsagents.com/docs/user-guide/sdk/model-providers/) to configure your model provider and model access. ## Explore the Repository ### Python Samples - **[01-learn](./python/01-learn/)** - SDK tutorials covering fundamentals, multi-agent systems, and streaming - **[02-deploy](./python/02-deploy/)** - Deployment patterns for Lambda, Fargate, and AgentCore - **[03-integrate](./python/03-integrate/)** - Integrations with AWS services, databases, and third-party tools - **[04-industry-use-cases](./python/04-industry-use-cases/)** - Industry applications (finance, healthcare, retail, productivity, etc.) - **[05-technical-use-cases](./python/05-technical-use-cases/)** - Architectural patterns including Agentic RAG - **[06-evaluate](./python/06-evaluate/)** - Evaluation tutorials and testing patterns - **[07-ux-demos](./python/07-ux-demos/)** - Full-stack applications with user interfaces - **[08-edge](./python/08-edge/)** - Edge device integrations including physical AI and robotics ### TypeScript Samples - **[01-learn](./typescript/01-learn/)** - SDK tutorials for the TypeScript SDK - **[02-deploy](./typescript/02-deploy/)** - Deployment patterns for AgentCore ## Contributing ❤️ We welcome contributions! See our [Contributing Guide](CONTRIBUTING.md) for details on: - Reporting bugs & features - Development setup - Contributing via Pull Requests - Code of Conduct - Reporting of security issues ## Stay in touch with the team Come meet the Strands team and other users on [**Discord**](https://discord.com/invite/strands) ## License This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details. ## Security See [CONTRIBUTING](CONTRIBUTING.md#security-issue-notifications) for more information.