Strands harness is a state-of-the-art, fully assembled harness you can use in one import. It comes with benchmarked defaults for tools, context management, sessions, memory, and hooks, plus a tuned system prompt, so you start with an optimized agent instead of assembling an agent harness yourself piece by piece.
Get one running
Section titled “Get one running”You do not have to pass anything. Import it, instantiate it, then give the agent a task:
# pip install strands-harnessfrom strands_harness import create_harness
agent = create_harness()agent("Research the top three vector databases, compare pricing and limits, and write it up in comparison.md")// npm install @strands-agents/harnessimport { createHarness } from '@strands-agents/harness'
const agent = await createHarness()await agent.invoke("Research the top three vector databases, compare pricing and limits, and write it up in comparison.md")Amazon Bedrock is the default. See choose a model to run on Anthropic, OpenAI, Google, or Ollama.
Make it yours
Section titled “Make it yours”Strands harness is a powerful general-purpose harness that you can customize. It is opinionated
in its implementation but not restrictive: every default is overridable, and what you get
back is a standard Strands Agent with no wrapper or hidden abstraction. As your use case
gets more specific, override the defaults that matter for it and keep the rest.
Strands harness is built on the Strands Harness SDK. If you want to build your own harness from the ground up, you can always use the Strands Harness SDK directly, with the same configuration you already have on Strands harness.
What the default harness does
Section titled “What the default harness does”Without any customization, Strands harness hands you back a fully functional agent. Every default below can be narrowed, swapped, or turned off; the linked page shows how:
- Runs on the model of your choice, with providers across Amazon Bedrock, Anthropic, OpenAI, and Google, plus Ollama for running locally, and reasoning turned on.
- Follows a tuned system prompt: explore first, then act, confirm before anything irreversible, and verify before finishing.
- Has a shell and file tools (
read,write,edit) and web access. - Manages its own context window (the limited span of text the model reads at once), setting bulky tool results aside as a task grows, and caches the reused parts of each request to save time and cost.
- Keeps long-term memory across runs, and can pick up an earlier conversation when you give it a session id.
- Hands open-ended subtasks to a built-in helper agent and tracks multi-step work with a checklist.
- Loads Agent Skills when present, and lets the model orchestrate its own tools in code.
Explore Strands harness
Section titled “Explore Strands harness”Where Strands harness fits
Section titled “Where Strands harness fits”Strands is an open source toolkit for agent builders. Strands harness is the fastest way to get an optimized, pre-configured agent that you can customize to your use case. It is built on top of the Strands Harness SDK, and the rest of the toolkit works alongside it:
Where to go next
Section titled “Where to go next”New to Strands harness? Start with the quickstart and have an agent running in a few minutes. What the default harness does above tours everything it ships with before you change anything. When you are ready to tune it, configure the agent walks each option, the configuration reference lists them all, and composing with the Strands Harness SDK shows how to reach past the defaults into the full Strands Harness SDK.