[{"data":1,"prerenderedAt":4},["ShallowReactive",2],{"readme:harness-sdk":3},"\u003Cdiv align=\"center\">\n  \u003Cdiv>\n    \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\" rel=\"nofollow ugc noopener\">\n      \u003Cpicture>\n        \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fstrandsagents.com\u002Flatest\u002Fassets\u002Fwordmark-github-dark.svg\">\u003C\u002Fsource>\n        \u003Cimg src=\"https:\u002F\u002Fstrandsagents.com\u002Flatest\u002Fassets\u002Fwordmark-github-light.svg\" alt=\"Strands\" width=\"320\" \u002F>\n      \u003C\u002Fpicture>\n    \u003C\u002Fa>\n  \u003C\u002Fdiv>  \u003Ch1>\n    Strands Agents\n  \u003C\u002Fh1>  \u003Ch2>\n    A model-driven approach to building AI agents in just a few lines of code.\n  \u003C\u002Fh2>  \u003Cdiv align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fstrands-agents\u002Fharness-sdk\u002Fgraphs\u002Fcommit-activity\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"GitHub commit activity\" src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fcommit-activity\u002Fm\u002Fstrands-agents\u002Fharness-sdk\" \u002F>\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fstrands-agents\u002Fharness-sdk\u002Fissues\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"GitHub open issues\" src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fissues\u002Fstrands-agents\u002Fharness-sdk\" \u002F>\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fstrands-agents\u002Fharness-sdk\u002Fpulls\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"GitHub open pull requests\" src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fissues-pr\u002Fstrands-agents\u002Fharness-sdk\" \u002F>\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fstrands-agents\u002Fharness-sdk\u002Fblob\u002Fmain\u002FLICENSE.APACHE\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"License\" src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002Fstrands-agents\u002Fharness-sdk\" \u002F>\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Fstrands-harness\u002F\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"Python harness version\" src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fstrands-harness?label=Python%20harness\" \u002F>\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@strands-agents\u002Fharness\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"TypeScript harness version\" src=\"https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F%40strands-agents%2Fharness?label=TypeScript%20harness\" \u002F>\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@strands-agents\u002Fcli\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"CLI version\" src=\"https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F%40strands-agents%2Fcli?label=CLI\" \u002F>\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Fstrands-agents\u002F\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"Python SDK version\" src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fstrands-agents?label=Python%20SDK\" \u002F>\u003C\u002Fa>\n    \u003Ca href=\"https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@strands-agents\u002Fsdk\" rel=\"nofollow ugc noopener\">\u003Cimg alt=\"TypeScript SDK version\" src=\"https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002F%40strands-agents%2Fsdk?label=TypeScript%20SDK\" \u002F>\u003C\u002Fa>\n  \u003C\u002Fdiv>  \u003Cp>\n    \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002F\" rel=\"nofollow ugc noopener\">Documentation\u003C\u002Fa>\n    ◆ \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fstrands-agents\u002Fsamples\" rel=\"nofollow ugc noopener\">Samples\u003C\u002Fa>\n    ◆ \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fstrands-agents\u002Fharness-sdk\u002Ftree\u002Fmain\u002Fstrands-mcp\" rel=\"nofollow ugc noopener\">MCP Server\u003C\u002Fa>\n    ◆ \u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002Fstrands\" rel=\"nofollow ugc noopener\">Discord\u003C\u002Fa>\n  \u003C\u002Fp>\n\u003C\u002Fdiv>\u003Cp>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 \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fconcepts\u002Fagents\u002Fagent-loop\u002F\" rel=\"nofollow ugc noopener\">lifecycle controls\u003C\u002Fa> (turn limits, token budgets, cancellation, stop reasons), \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fconcepts\u002Ftools\u002F\" rel=\"nofollow ugc noopener\">tools\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fconcepts\u002Fagents\u002Fstructured-output\u002F\" rel=\"nofollow ugc noopener\">structured output\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fconcepts\u002Ftools\u002Fmcp-tools\u002F\" rel=\"nofollow ugc noopener\">MCP\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fconcepts\u002Fmulti-agent\u002Fmulti-agent-patterns\u002F\" rel=\"nofollow ugc noopener\">multi-agent patterns\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fconcepts\u002Fmemory\u002Foverview\u002F\" rel=\"nofollow ugc noopener\">memory\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fconcepts\u002Fagents\u002Fsession-management\u002F\" rel=\"nofollow ugc noopener\">sessions\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fconcepts\u002Fmodel-providers\u002F\" rel=\"nofollow ugc noopener\">model portability\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fconcepts\u002Fstreaming\u002F\" rel=\"nofollow ugc noopener\">streaming\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fsafety-security\u002Fguardrails\u002F\" rel=\"nofollow ugc noopener\">guardrails\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fobservability-evaluation\u002Fobservability\u002F\" rel=\"nofollow ugc noopener\">tracing\u003C\u002Fa>, and \u003Ca href=\"https:\u002F\u002Fstrandsagents.com\u002Fdocs\u002Fuser-guide\u002Fevals-sdk\u002Fquickstart\u002F\" rel=\"nofollow ugc noopener\">evals\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Using a coding agent? Load the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fstrands-agents\u002Fharness-sdk\u002Fblob\u002FHEAD\u002F.agents\u002Fskills\u002Fstrands\u002F\" rel=\"nofollow ugc noopener\">Strands skill\u003C\u002Fa> for framework selection, scaffolding, tools, MCP integration, and LangGraph migr\u003C\u002Fp>\n",1791762980533]