strands-agents/harness-sdk

▲ 96 stars today★ 7,764⑂ 1,195

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

About strands-agents/harness-sdk

strands-agents/harness-sdk is an open-source project on GitHub, mainly written in Python. Build an agent harness and control it end-to-end. Open-source SDK for production AI agents in Python & TypeScript - any model, any cloud. It currently holds 7,764 stars and 1,195 forks with 806 open issues, and was last pushed on 2026-09-23 (repository created 2025-05-14).

Project Overview

Git Homed tracks it on the Today's Trending board, currently at rank #38 with 96 new stars today.

GitHub Repository Details

Repository strands-agents/harness-sdk · default branch main · size 212027 KB · watchers 52 · source: GitHub REST API and repository README

README

https://github.com/strands-agents/harness-sdk/blob/HEAD/Strands

Strands Agents

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

https://github.com/strands-agents/harness-sdk/blob/HEAD/GitHub commit activity https://github.com/strands-agents/harness-sdk/blob/HEAD/GitHub open issues https://github.com/strands-agents/harness-sdk/blob/HEAD/GitHub open pull requests https://github.com/strands-agents/harness-sdk/blob/HEAD/License https://github.com/strands-agents/harness-sdk/blob/HEAD/Python harness version https://github.com/strands-agents/harness-sdk/blob/HEAD/TypeScript harness version https://github.com/strands-agents/harness-sdk/blob/HEAD/CLI version https://github.com/strands-agents/harness-sdk/blob/HEAD/Python SDK version https://github.com/strands-agents/harness-sdk/blob/HEAD/TypeScript SDK version

DocumentationSamplesMCP ServerDiscord

Strands Agents is an open-source SDK for building and running AI agents in Python and TypeScript. Choose Strands when you would otherwise write your own agent loop: it runs in your process with no hosted control plane, and it covers the jobs a hand-rolled loop grows into. In one SDK you get lifecycle controls (turn limits, token budgets, cancellation, stop reasons), tools and structured output, MCP, multi-agent patterns, memory and sessions, model portability, streaming, guardrails, tracing, and evals.

This monorepo contains Strands harness, the Python and TypeScript SDKs, the documentation site, and supporting packages:

| Directory | Description | |-----------|-------------| | harness-py/ | Python Strands harness: fully assembled agent via create_harness() (PyPI · docs) | | harness-ts/ | TypeScript Strands harness: fully assembled agent via createHarness() (npm · docs) | | strands-cli/ | strands CLI: prototype and chat with a harness agent from the terminal (npm) | | strands-py/ | Python SDK: agent loop, model providers, tools (PyPI · releases) | | strands-ts/ | TypeScript SDK: agent loop, model providers, tools (npm · releases) | | site/ | Source for the strandsagents.com documentation site (Astro/Starlight) | | team/ | Governance and cross-SDK process docs (tenets, decisions, PR & compatibility guidelines, and designs/ proposals) |

Why Strands

Build an agent harness. Control it end-to-end.

MCP, streaming, multi-agent patterns, and structured output are all built in.

Quick Start

The easiest way to get started is with Strands harness, a fully assembled, state-of-the-art agent. A single create_harness() (Python) or createHarness() (TypeScript) call gives you an optimized agent with benchmarked defaults for the model, tools, memory, sessions, and context management — ready to take from idea to production. Follow the harness quickstart, or see the Python Strands harness and TypeScript Strands harness packages to get started.

Python

pip install strands-harness
from strands_harness import create_harness

agent = create_harness() agent("Find the slowest test in this repo and explain why it's slow")

TypeScript

npm install @strands-agents/harness
import { createHarness } from '@strands-agents/harness'

const agent = await createHarness() await agent.invoke("Find the slowest test in this repo and explain why it's slow")

Start here to get a batteries-included agent, then drop down to the SDKs below when you want to own the agent loop and wire up tools, model providers, and memory yourself. The harness configuration reference documents every default you can override.

The Quickstart Guide covers configuring providers (Amazon Bedrock, Anthropic, OpenAI, Gemini, Ollama, and more).

Working with the SDK

The Strands Harness SDK lets you go deeper and control every part of the agent: the loop, tools, model providers, memory, sessions, and hooks. You can dive into the SDK after working with Strands harness or if you prefer building your own harness from the ground up when the assembled defaults aren't enough.

Python

Requires Python 3.10+:

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")

The Python SDK README covers tools, model providers, MCP, and bidirectional streaming.

TypeScript

Requires Node.js 22+:

npm install @strands-agents/sdk
import { Agent } from '@strands-agents/sdk'

const agent = new Agent() const result = await agent.invoke('What is the square root of 1764?') console.log(result)

More in the TypeScript SDK README, including Zod-typed tools, structured output, and multi-agent patterns.

Documentation

For detailed guidance & examples, explore our documentation:

The docs themselves live in this monorepo under site/, and doc PRs are welcome alongside code changes.

Development

Git operations (commits, branches, PRs) are done from the repo root. Each package has its own toolchain:

Python SDK (strands-py/):

cd strands-py
pip install hatch
hatch test        # run unit tests
hatch fmt         # format & lint

TypeScript SDK (strands-ts/):

npm ci            # install from repo root
npm run build     # build
npm test          # run unit tests

Documentation site (site/):

cd site
npm install
npm run dev       # local dev server at http://localhost:4321/

Contributing ❤️

We welcome contributions! See our Contributing Guide for details on:

Stay in touch with the team

Come meet the Strands team and other users on Discord

License

This project is licensed under the Apache License 2.0 - see the LICENSE.APACHE file for details.

Security

See CONTRIBUTING for more information.

GitHub Stars & Activity

7,764Stars
1,195Forks
806Open issues
PythonLanguage

GitHub Popularity

GitHub stars7,764
Forks1,195
Open issues806
Primary languagePython
LicenseApache-2.0
Stars gained today96
Created2025-05-14
Last pushed2026-09-23

Trending History

Daily boardrank #38 · ▲ 96 stars

Related GitHub Projects

1

Comfy-Org / ComfyUI

Python★ 134,710⑂ 15,949▲ 203 stars
2

PaddlePaddle / PaddleOCR

Python★ 90,096⑂ 11,398▲ 76 stars
3

HKUDS / CLI-Anything

Python★ 49,866⑂ 4,598▲ 41 stars
4

anthropics / financial-services

Python★ 36,873⑂ 5,371▲ 665 stars
5

mukul975 / Anthropic-Cybersecurity-Skills

Python★ 33,277⑂ 4,040▲ 98 stars
6

davila7 / claude-code-templates

Python★ 31,438⑂ 3,572▲ 393 stars
7

browser-use / video-use

Python★ 26,417⑂ 3,159▲ 745 stars
8

mvt-project / mvt

Python★ 14,429⑂ 1,379▲ 546 stars

More Trending Repositories