TalksAWS re:Invent 2025 - Build production AI agents with the Strands Agents SDK for TypeScript (AIM3331)
AWS re:Invent 2025 - Build production AI agents with the Strands Agents SDK for TypeScript (AIM3331)
Building Production AI Agents with the Strands Agents SDK for TypeScript
Overview of Strands Agents
Model-Driven Approach to Building Agents
Strands takes a model-driven approach to building agents, where the agent is given a goal and a set of tools to achieve that goal
This is different from a workflow-driven approach, where the developer has to define the specific steps the agent should take
With the model-driven approach, the agent is able to figure out its own workflow to achieve the goal, making the development process much simpler
Key Features of Strands Agents
Supports a wide range of reasoning models, including large language models (LLMs) from providers like OpenAI, Anthropic, and Cohere
Allows developers to bring their own custom model providers and tools
Provides a simple, intuitive interface for building agents in just a few lines of code
Includes features for controlling and steering the agent's behavior, such as structured output, system prompts, and hooks
Strands Agents SDK for TypeScript
Motivation for Typescript Support
The Strands team wanted to provide TypeScript support to improve the developer experience, building on lessons learned from developing the Python SDK
They aimed to make the TypeScript SDK high-quality and maintainable, rather than relying heavily on AI-generated code
Development Approach
The team used a collaborative approach, working with the Agents team to develop the TypeScript SDK
They leveraged Strands' own features, such as agent SOPs (Standard Operating Procedures), to guide the agent in writing the TypeScript code
The team also integrated the TypeScript SDK development into their GitHub workflow, using Strands agents to automate code generation and updates
Key Features of the TypeScript SDK
Supports the same simple agent loop as the Python SDK, allowing developers to quickly build prototype agents
Includes support for Bedrock and OpenAI models, as well as the ability to bring custom model providers
Provides features for controlling and steering the agent's behavior, such as structured output and system prompts
Integrates with the Strands SOPs (Standard Operating Procedures) system for more structured agent guidance
Improving the Developer Experience with Strands
Agent SOPs (Standard Operating Procedures)
SOPs are a way to provide structured, step-by-step instructions to the agent, using keywords like "must" and "should" to guide the agent's behavior
SOPs help make the agent's behavior more predictable and debuggable for developers
Modular Prompting and Steering
Strands introduces a "steering" feature that allows developers to provide external feedback and constraints to the agent during its execution
This is done through hooks in the agent's lifecycle, where external systems can judge the agent's actions and provide feedback
Evaluations Library
Strands has introduced an evaluations library to help developers build and run evaluations on their agents
This includes the ability to generate synthetic data sets and integrate with online evaluation systems like Agent Core
Business Impact and Real-World Applications
Efficiency Gains in Agent Development
The Strands team has seen significant efficiency gains in their own development process by using Strands agents to automate code generation and updates
They report being able to save their principal engineer up to 4 hours of time on a single feature implementation
Diverse Use Cases
Strands agents are being used by customers to build a wide range of applications, including chat experiences, data processing pipelines, and research assistants
The model-driven approach and extensibility of Strands make it suitable for a variety of AI-powered applications
Ongoing Development and Community Involvement
Strands is actively being developed, with new features like the TypeScript SDK and integrations with tools like Copilot Kit
The Strands team encourages community involvement, with the project hosted on GitHub and opportunities to contribute model providers and other extensions
These cookies are used to collect information about how you interact with this website and allow us to remember you. We use this information to improve and customize your browsing experience, as well as for analytics.
If you decline, your information won’t be tracked when you visit this website. A single cookie will be used in your browser to remember your preference.