Releases: strands-agents/sdk-python
Releases · strands-agents/sdk-python
v1.8.0
What's Changed
- Moved tool_spec retrieval to after the before model invocation callback by @pghazanfari in #786
- fix(graph): fix cyclic graph behavior by @mkmeral in #768
- fix(models): filter reasoningContent in Bedrock requests using DeepSeek by @aryan835-datainflexion in #652
- docs: cleanup docs so the yields section renders correctly by @afarntrog in #820
- Warn on unknown model configuration properties by @zastrowm in #819
- fix: do not block asyncio event loop between retries by @osdemah in #805
- feat: improve structured output tool circular reference handling by @afarntrog in #817
- fix(tools/loader): load and register all decorated @tool functions from file path by @Ratish1 in #742
- fix(models): patch litellm bug to honor passing in use_litellm_proxy as client_args by @dbschmigelski in #808
- feat: add default read timeout to Bedrock config by @afarntrog in #829
- feat: add support for Bedrock/Anthropic ToolChoice to structured_output by @liushang1997 in #720
- feat(multiagent): allow callers of swarm and graph to pass kwargs to executors by @dbschmigelski in #816
- feat: add region-aware default model ID for Bedrock by @afarntrog in #835
- llama.cpp model provider support by @westonbrown in #585
- fix(llama.cpp) - add ToolChoice and validation of model config values by @awsarron in #838
New Contributors
- @pghazanfari made their first contribution in #786
- @aryan835-datainflexion made their first contribution in #652
- @afarntrog made their first contribution in #820
- @osdemah made their first contribution in #805
- @Ratish1 made their first contribution in #742
- @liushang1997 made their first contribution in #720
- @westonbrown made their first contribution in #585
Full Changelog: v1.7.1...v1.8.0
v1.7.1
What's Changed
- fix: don't emit ToolStream events for non generator functions by @zastrowm in #773
- fix(tests): adjust test_bedrock_guardrails to account for async behavior by @dbschmigelski in #785
- fix(doc): replace invalid Hook names in doc comment with BeforeInvocationEvent & AfterInvocationEvent by @deepyes02 in #782
- fix: Remove status field from toolResult for non-claude 3 models in Bedrock model provider by @mehtarac in #686
- fix: filter 'SDK_UNKNOWN_MEMBER' from response content by @JackYPCOnline in #798
- feat: Implement async generator tools by @zastrowm in #788
- ci: update openai requirement from <1.100.0 to <1.102.0 by @dependabot[bot] in #722
- fix: only add signature to reasoning blocks if signature is provided by @zastrowm in #806
New Contributors
- @deepyes02 made their first contribution in #782
Full Changelog: v1.7.0...v1.7.1
v1.7.0
What's Changed
- feat: Implement typed events internally by @zastrowm in #745
- summarization manager - add summary prompt to messages by @pgrayy in #698
- feat: Use TypedEvent inheritance for callback behavior by @zastrowm in #755
- feat: claude citation support with BedrockModel by @theagenticguy in #631
- feat: Enable hooks for MultiAgents by @zastrowm in #760
- Add invocation_state to ToolContext by @zastrowm in #761
- Add VPC endpoint support to BedrockModel class - Add optional endpoin… by @dbavro19 in #502
- fix: fix stop reason for bedrock model when stop_reason by @JackYPCOnline in #767
- fix: Return tool result message as part of event + expand unit test coverage by @zastrowm in #771
- fix: fix loading tools with same tool name by @JackYPCOnline in #772
New Contributors
Full Changelog: v1.6.0...v1.7.0
v1.6.0
What's Changed
- fix: fix non-serializable parameter of agent from toolUse block by @JackYPCOnline in #568
- Add .DS_Store to .gitignore by @vawsgit in #681
- feat(a2a): support A2A FileParts and DataParts by @jer96 in #596
- ci: update pre-commit requirement from <4.2.0,>=3.2.0 to >=3.2.0,<4.4.0 by @dependabot[bot] in #706
- ci: update ruff requirement from <0.5.0,>=0.4.4 to >=0.4.4,<0.13.0 by @dependabot[bot] in #704
- ci: update pytest-asyncio requirement from <0.27.0,>=0.26.0 to >=0.26.0,<1.2.0 by @dependabot[bot] in #708
- fix: add system_prompt to structured_output_span before adding input_messages by @chengweitsai in #709
- feat(multiagent): Add call implementation to MultiAgentBase by @mkmeral in #645
- chore: Update pydantic minimum version by @mehtarac in #723
- tool executors by @pgrayy in #658
- feat: Add support for agent invoke with no input, or Message input by @Unshure in #653
- ci: bump actions/checkout from 4 to 5 by @dependabot[bot] in #711
- ci: bump actions/download-artifact from 4 to 5 by @dependabot[bot] in #712
- ci: update pytest-cov requirement from <5.0.0,>=4.1.0 to >=4.1.0,<7.0.0 by @dependabot[bot] in #705
- fix: prevent path traversal for message_id in file_session_manager by @mehtarac in #728
- fix: Add AgentInput TypeAlias by @Unshure in #738
- fix: Move AgentInput to types submodule by @Unshure in #746
New Contributors
- @vawsgit made their first contribution in #681
- @dependabot[bot] made their first contribution in #706
- @chengweitsai made their first contribution in #709
Full Changelog: v1.5.0...v1.6.0
v1.5.0
What's Changed
- feature(graph): Allow cyclic graphs by @mkmeral in #497
- chore: request to include code snippet section by @poshinchen in #654
- feat: Add configuration option to MCP Client for server init timeout by @fhwilton55 in #657
- fix: Properly handle prompt=None & avoid agent hanging by @zastrowm in #643
- feat: add structured_output_span by @poshinchen in #655
- litellm - set 1.73.1 as minimum version by @pgrayy in #668
- feat: expose tool_use and agent through ToolContext to decorated tools by @dbschmigelski in #557
- session manager - prevent file path injection by @pgrayy in #680
- fix: only set signature in message if signature was provided by the model by @clareliguori in #682
- fix: Add openai dependency to sagemaker dependency group by @zastrowm in #678
- Have [all] group reference the other optional dependency groups by name by @zastrowm in #674
- fix: append blank text content if assistant content is empty by @poshinchen in #677
- feat: add cached token metrics support for Amazon Bedrock by @oaltagar-aws in #531
New Contributors
- @fhwilton55 made their first contribution in #657
- @oaltagar-aws made their first contribution in #531
Full Changelog: v1.4.0...v1.5.0
v1.4.0
What's Changed
- fix(telemetry): added mcp tracing context propagation by @poshinchen in #569
- Change max_tokens type to int to match Anthropic API by @vinc3m1 in #588
- feat: Add additional intructions for contributors to find issues that are ready to be worked on by @mehtarac in #595
- feat(a2a): configurable request handler by @jer96 in #601
- chore(a2a): update host per AppSec recommendation by @jer96 in #619
- fix(event_loop): ensure tool_use content blocks are valid after max_tokens to prevent unrecoverable state by @dbschmigelski in #607
- fix(structured_output): do not modify conversation_history when prompt is passed by @dbschmigelski in #628
New Contributors
Full Changelog: v1.3.0...v1.4.0
v1.3.0
What's Changed
- fix(deps): pin a2a-sdk>=0.2.16 to resolve #572 by @minorun365 in #581
- chore: pin a2a to a minor version while it is still in beta by @dbschmigelski in #586
- fix: sessions code fence, a2a tests & lint by @theagenticguy in #591
- fix(event_loop): raise dedicated exception when encountering max toke… by @dbschmigelski in #576
New Contributors
- @minorun365 made their first contribution in #581
Full Changelog: v1.2.0...v1.3.0
v1.2.0
What's Changed
- Support for Amazon SageMaker AI endpoints as Model Provider by @dgallitelli in #176
- fix: Remove leftover print statement from sagemaker model provider by @mehtarac in #553
- [Feat] Update structured output error message by @Unshure in #563
- feat(mcp): retain structured content in the AgentTool response by @dbschmigelski in #528
- feat(mcp): Add list_prompts, get_prompt methods by @Ketansuhaas in #160
New Contributors
- @dgallitelli made their first contribution in #176
- @mehtarac made their first contribution in #553
- @Ketansuhaas made their first contribution in #160
Full Changelog: v1.1.0...v1.2.0
v1.1.0
What's Changed
- Update to use dedicated github logo by @zastrowm in #505
- deps(a2a): address interface changes and bump min version by @jer96 in #515
- ci: expose STRANDS_TEST_API_KEYS_SECRET_NAME to integration tests by @dbschmigelski in #513
- Don't re-run workflows on un/approvals by @zastrowm in #516
- Doc fixes: suppressing some typos in various texts by @didier-durand in #487
- docs: add hot reloading documentation for load_tools_from_directory by @cagataycali in #517
- ci: enable integ tests for anthropic, cohere, mistral, openai, writer by @dbschmigelski in #510
- Automatically flatten nested tool collections by @zastrowm in #508
- feat(a2a): support mounts for containerized deployments by @jer96 in #524
- fix: include agent trace into tool for agent as tools by @poshinchen in #526
Full Changelog: v1.0.1...v1.1.0
v1.0.1
What's Changed
- Switch readme to use light logo for better display in github dark mode by @zastrowm in #475
- build(pyproject): update development status classifier by @awsarron in #480
- fix: enable parallel execution in graph workflow by @ahmetatalay in #485
- docs: Update README.md with Writer by @samjulien in #474
- fix(agent): prevent JSON serialization errors with non-serializable direct tool parameters by @cagataycali in #498
- fix(telemetry): group traces when using agent as tool in an agent by @poshinchen in #493
New Contributors
- @ahmetatalay made their first contribution in #485
- @samjulien made their first contribution in #474
Full Changelog: v1.0.0...v1.0.1