strands-agents/harness-sdk

Build an agent harness and control it end-to-end. Open-source SDK for production AI agents in Python & TypeScript - any model, any cloud.

What it solves

Strands Agents provides a standardized way to build AI agents without having to manually write a custom agent loop. It eliminates the need for a hosted control plane, allowing developers to run agents directly in their own process while providing the essential infrastructure for managing agent lifecycles, tools, and model portability.

How it works

The SDK offers a model-driven approach to agent construction in Python and TypeScript. It provides a built-in agent loop that manages the interaction between the LLM and tools. It supports multiple model providers (such as Amazon Bedrock, Anthropic, OpenAI, and Gemini) and integrates with the Model Context Protocol (MCP) for tool use. The system includes hooks for intercepting steps to log or validate actions, guardrails to prevent mistakes, and steering handlers for self-correction.

Who it’s for

Developers who want to build AI agents with full control over the execution environment and observability, but avoid the overhead of creating a hand-rolled agent loop from scratch.

Highlights

  • Model Agnostic: First-class support for a wide range of providers including Bedrock, Anthropic, OpenAI, and Gemini.
  • Comprehensive Lifecycle Controls: Built-in management for turn limits, token budgets, cancellation, and stop reasons.
  • Integrated Tooling: Support for structured output, MCP, and multi-agent patterns.
  • Observability: Default tracing of every decision and hooks for custom logging and validation.
  • Production Ready: Includes memory, session management, streaming, and evaluation SDKs.

Related

  • Project
  • Project
  • Project
  • Project
  • Project