⚠ This page is served via a proxy. Original site: https://github.com
This service does not collect credentials or authentication data.
Skip to content

Conversation

@moritalous
Copy link
Contributor

Description

Enable CRT (Common Runtime) support in boto3 and botocore to support the new aws login command for authentication. This provides browser-based credential generation with short-lived temporary credentials, improving security by reducing the need for long-lived programmatic access keys.

References:

Type of Change

New feature

Testing

How have you tested the change? Verify that the changes do not break functionality or introduce warnings in consuming repositories: agents-docs, agents-tools, agents-cli

  • I ran hatch run prepare

Checklist

  • I have read the CONTRIBUTING document
  • I have added any necessary tests that prove my fix is effective or my feature works
  • I have updated the documentation accordingly
  • I have added an appropriate example to the documentation to outline the feature, or no new docs are needed
  • My changes generate no new warnings
  • Any dependent changes have been merged and published

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Enable CRT (Common Runtime) support in boto3 and botocore to support the new `aws login` command for authentication. This provides browser-based credential generation with short-lived temporary credentials, improving security by reducing the need for long-lived programmatic access keys.

References:
- https://aws.amazon.com/blogs/security/simplified-developer-access-to-aws-with-aws-login/
- https://aws.amazon.com/about-aws/whats-new/2025/11/console-credentials-aws-cli-sdk-authentication/
@strands-agent
Copy link
Contributor

The [crt] extras will add awscrt as a dependency (~10MB compiled extension). Consider making this optional to avoid bloating installations for users who don't need aws login support:

dependencies = [
    "boto3>=1.26.0,<2.0.0",
    "botocore>=1.29.0,<2.0.0",

Then add a separate optional dependency group in pyproject.toml:

[project.optional-dependencies]
aws-login = [
    "boto3[crt]>=1.26.0,<2.0.0",
    "botocore[crt]>=1.29.0,<2.0.0",
]

Users who need aws login can install with pip install strands-agent[aws-login], while others keep the smaller default installation.


🤖 This is an experimental AI agent response from the Strands team, powered by Strands Agents. We're exploring how AI agents can help with community support and development. Your feedback helps us improve! If you'd prefer human assistance, please let us know.

Move boto3 and botocore CRT variants to optional [crt] dependency group.
Allows users to opt-in to enhanced performance with:

pip install strands-agent[crt]
@moritalous
Copy link
Contributor Author

Implemented the changes based on your feedback. The documentation has been updated in a separate PR:
strands-agents/docs#437

Please review both PRs when you get a chance.

#1486

@codecov
Copy link

codecov bot commented Jan 15, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@moritalous
Copy link
Contributor Author

@cagataycali Thank you for your approval on this PR. I see that one more approval is required before merging. Could you please suggest another reviewer who could provide the second approval?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants