开发与工程 python-sdktypescript-sdkamazon-bedrockmodel-providersmcpmulti-agent-systemsstructured-outputbidirectional-streaming

Strands Agents

用 Python 或 TypeScript 构建并端到端控制生产级 AI Agent 的 SDK。

FollowAgents 评估 · FARS-2.1
不推荐
30/ 100 五分制 1.5 / 5
1 2 3 4 5 6
按维度查看评分与理由
1信任安全0 / 29 · 0.0/5

证据显示仓库包含安全策略(SECURITY.md)和贡献指南,但未提供权限模型、用户确认机制、数据流透明度或敏感数据处理细节。依赖安全未提及,外部影响未描述,回滚机制未说明,来源归属仅通过README中的品牌提及,但发布者未验证。因此所有信任标准得分为0。

2可靠稳定5 / 14 · 1.8/5

自一致性:README和pyproject.toml中的Python版本要求一致(>=3.10),但未发现内部矛盾。依赖可用性:依赖列表存在,但未提供锁定或验证机制。失败消息:未提供错误处理或用户可见的失败消息。因此自一致性得2,依赖可用性得1,失败消息得0。

3适用触发8 / 18 · 2.2/5

受众和场景:README描述了多种使用场景(从简单对话到复杂工作流),但未明确目标受众。能力边界:未明确说明限制。触发精度:未提供触发机制。环境适配:提供了Python和TypeScript的安装说明,但未提及操作系统或云环境兼容性。因此受众和场景得2,能力边界得1,触发精度得0,环境适配得2。

4规范维护8 / 18 · 2.2/5

信息架构:README提供了清晰的目录结构。安装说明:提供了pip和npm安装命令。命名稳定性:未提及API稳定性。示例和FAQ:提供了快速入门示例,但无FAQ。已知限制:未提及。许可证:明确Apache-2.0。版本和变更日志:未提供变更日志。维护责任:未明确。因此信息架构得2,安装说明得2,命名稳定性得1,示例和FAQ得2,已知限制得0,许可证得2,版本和变更日志得1,维护责任得1。

5有效结果6 / 13 · 2.3/5

输出可用性:示例展示了基本用法,但未展示输出格式。边际价值:提供了多模型支持和MCP等特性,但未与其他框架比较。成本效益:未提供性能或成本数据。因此输出可用性得1,边际价值得2,成本效益得1。

6证据核验3 / 8 · 1.9/5

声明可追溯性:README中的声明未链接到具体代码或测试。跨来源佐证:未提供外部验证。事实与推断分离:未明确区分。因此所有标准得1。

证据充分度: 评估于 2026年8月9日 审查版本 11ad6366a157
上游仓库在本次评估后已有新提交;当前评分仍对应所示审查版本,可能尚未覆盖最新改动。
源码中未见的安全控制:最小权限约束、执行前用户确认、数据流向说明、敏感信息处理、依赖安全审查、外部影响披露、回滚或恢复路径、来源归属可核验
使用前请注意
  • 发布者身份未验证,应视为未知,不要基于品牌信任。
  • 未提供权限模型、数据流透明度和敏感数据处理细节,使用前需自行评估。
  • 依赖安全未提及,建议检查依赖锁定和漏洞扫描。
  • 未提供回滚机制,生产环境需谨慎。
  • 未提供已知限制和失败消息,可能影响故障排查。
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

Strands Agents 是一个用于构建和运行 AI Agent 的开源 SDK 单仓库,包含 Python SDK、TypeScript SDK、开发者 CLI、文档站点和治理资料。两个 SDK 都提供 Agent loop、模型提供商接入与工具机制,可用于从对话助手到自主工作流的实现。应用可通过 Python 的 Agent 或 TypeScript 的 Agent 创建执行实例,并以工具、模型提供商和运行控制扩展其行为。项目明确提供 MCP、流式处理、多 Agent 模式和结构化输出能力,并支持 Amazon Bedrock、Anthropic、OpenAI、Gemini 及自定义模型提供商。默认模型提供商是 Amazon Bedrock;部署和运行的具体基础设施仍由采用者自行配置。

开发者在 Python 中从 strands 导入 Agent,并可将 strands_tools 的 calculator 等工具传入 Agent(tools=[calculator]);随后以 agent("What is the square root of 1764") 发起一次任务。TypeScript 中可创建 new Agent(),再通过 await agent.invoke("What is the square root of 1764?") 获得 result 并输出。SDK 的 Agent loop 负责执行 Agent 工作流,并结合模型提供商和工具;README 还说明可用 hooks 拦截步骤、记录、验证或重定向处理,并提供 guardrails 与 steering handlers。仓库同时包含 strands-mcp 相关入口,以及文档站点、Python/TypeScript 构建与测试工作流。

  1. 需要在 Python 服务中为用户问题调用模型和 calculator 等工具的后端开发者。
  2. 正在用 Node.js 20+ 和 TypeScript 开发 Agent 应用,并希望通过 Agent.invoke() 获取调用结果的团队。
  3. 需要在 Amazon Bedrock、Anthropic、OpenAI、Gemini 或自定义模型提供商之间选择模型后端的平台工程团队。
  4. 希望在 Agent loop 的步骤中插入日志、验证或重定向逻辑的生产系统开发者。
  5. 需要 MCP、双向流式处理、结构化输出或多 Agent 模式的 Agent 工作流实现者。

这个 Agent 有哪些优点和局限?

优点
  • 同一仓库同时提供 Python 和 TypeScript SDK,且两者都围绕 Agent loop、模型提供商和工具构建。
  • 明确支持 Amazon Bedrock、Anthropic、OpenAI、Gemini、更多提供商及自定义提供商,适合避免把应用逻辑固定在单一模型后端。
  • hooks 可在 Agent 执行步骤中进行记录、验证或重定向;README 还列出 guardrails 和 steering handlers。
  • MCP、流式处理、多 Agent 模式和结构化输出被列为内置能力,而非仅限示例项目。
  • 仓库包含文档站点、开发者 CLI 与跨 SDK 的治理资料,便于同时维护代码、文档和协作规范。
局限
  • 默认路径依赖 AWS 凭证以及已启用的 Claude Sonnet Amazon Bedrock 模型访问,未具备这些条件时不能按默认示例直接运行。
  • Python 与 TypeScript 有不同运行时要求和工具链:Python 需要 3.10+,TypeScript 需要 Node.js 20+。
  • README 仅说明其他提供商可用,未在给出的材料中提供 Anthropic、OpenAI、Gemini 或 Ollama 的具体配置步骤。
  • 生产部署、模型选择、上下文管理策略和观测系统的具体配置仍需采用者设计,材料未给出一键部署流程。
  • strands-mcp 虽在仓库导航中出现,但给出的材料未说明其安装、认证或暴露的具体 MCP 功能。

如何安装或部署这个 Agent?

Python 需要 Python 3.10+:

pip install strands-agents strands-agents-tools

TypeScript 需要 Node.js 20+:

npm install @strands-agents/sdk

两个 SDK 默认使用 Amazon Bedrock。使用默认配置前,需要配置 AWS 凭证,并启用 Claude Sonnet 的模型访问权限。

如何使用这个 Agent?

Python:

from strands import Agent
from strands_tools import calculator
agent = Agent(tools=[calculator])
agent("What is the square root of 1764")

TypeScript:

import { Agent } from '@strands-agents/sdk'
const agent = new Agent()
const result = await agent.invoke('What is the square root of 1764?')
console.log(result)

若不使用默认 Bedrock 提供商,README 明确列出 Anthropic、OpenAI、Gemini、Ollama 等其他提供商,但未给出其具体配置命令。

常见问题

默认示例需要哪些权限?
默认使用 Amazon Bedrock,因此需要已配置的 AWS 凭证,并已启用 Claude Sonnet 模型访问。
能否使用 OpenAI 或 Anthropic,而不是 Bedrock?
可以。材料明确列出 Anthropic、OpenAI、Gemini 以及更多模型提供商和自定义提供商;但未提供具体配置命令。
是否只能写 Python?
不是。仓库包含 Python SDK 和 TypeScript SDK;Python 要求 3.10+,TypeScript 要求 Node.js 20+。
当 Agent 的某一步需要审查或改写时怎么办?
README 说明 hooks 可以拦截任意步骤以记录、验证或重定向,steering handlers 用于让 Agent 纠正自身而非静默失败。

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents