View a markdown version of this page

将工具导出到代码 - 亚马逊基岩 AgentCore

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将工具导出到代码

将工具导出到代码采用托管工具配置,并使用 Strands 框架将等效代理生成为可编辑的 Python 源代码。生成的代理是一个普通的 AgentCore 运行时代理:你拥有代码,可以自由修改它,并像部署任何其他代理一样部署它。生成的代理反映了工具的模型、工具、技能、内存、执行限制和文件系统挂载。

何时使用导出

当你有可用的安全带并且想要:

  • 在工具配置允许的范围之外进行自定义 -添加自定义工具逻辑、更改代理循环 middleware/hooks、注入或集成工具未公开的库

  • 拥有代码 -从声明性配置移至由您控制、审查和版本控制的源代码,就像应用程序的其余部分一样。

  • 对原型进行研究 ——从安全带快速开始,然后在准备投资手工维护的代理商时出口。

如果安全带配置已经满足了你所需要的一切,则不必导出——继续将其作为安全带运行。

今天支持的内容

  • 框架 -Strands,其他框架,如 Claude Agents SDK 即将推出

  • 语言 -仅限 Python

  • 编译类型 - CodeZip (默认)和容器

生成的代理中包含的线束功能:

  • 模型提供者和配置(Bedrock、OpenAI、Gemini-包括模型 ID 和 API 密钥引用)

  • 工具-远程 MCP 工具、网关、内联函数工具、 AgentCore 浏览器、 AgentCore 代码解释器、内置shell和工具 file_operations

  • 内存

  • 执行限制

  • 对话截断

  • 技能(路径、S3、Git)

  • VPC 线束的文件系统挂载(会话存储、EFS、S3)

  • 授权者配置

CLI 用法

命令语法

例
AgentCore CLI
agentcore export harness --arn <arn> [options]

选项

标记 说明 默认

--arn <arn>

要导出的工具的 ARN(在导出在当前 CLI 项目之外创建的工具时使用)

arn或name必填项

--name <name>

要导出的线束的名称(在导出在同一 CLI 项目中创建的线束时使用)

arn或name必填项

--target-agent-name <name>

生成的运行时代理的名称

<harnessName>Agent

--build <type>

构建类型:CodeZip或 Container

CodeZip

--json

将结果输出为 JSON

False

示例

使用默认值进行基本导出:

例
AgentCore CLI
# Export harness with ARN - generates MyHarnessAgent using CodeZip agentcore export harness --arn arn:aws:bedrock-agentcore:us-east-1:123456789012:harness/MyHarness # Export harness created within CLI project - generates MyHarnessAgent using CodeZip agentcore export harness --name MyHarness # Export with a custom agent name agentcore export harness --name MyHarness --target-agent-name MyProductionAgent # Export as a Container build (generates Dockerfile) agentcore export harness --name MyHarness --build Container
Interactive

agentcore export harness不运行--name即可启动交互式导出向导。

  1. 如果项目有多个线束,请选择要导出的线束。(使用单个安全带,向导会跳过此步骤。)

    选择要导出的线束
  2. 输入生成的运行时代理的名称,或接受默认名称<harness>Agent。

    命名生成的运行时代理
  3. 选择编译类型:CodeZip(将 Python 源代码打包为 zip,默认)或容器(通过 ECR 和构建 Docker 镜像 CodeBuild)。

    选择编译类型
  4. 查看导出配置并确认。

    查看并确认导出

导出后,查看EXPORT_NOTES.md,然后运行agentcore deploy以部署生成的代理。

导出后

使用 AgentCore CLI 部署生成的运行时代理。

例
AgentCore CLI
agentcore deploy

导出的代理是作为正常运行时添加的,因此它会与 AgentCore CLI 项目的其余部分一起部署。

导出_ NOTES.md

每次出口后,都会以书EXPORT_NOTES.md面形式列出需要人工跟踪的项目。Export 会在代理目录NOTES.md 中向 EXPORT_ 写入笔记,列出每个项目、需要注意的原因以及确切的操作。在部署NOTES.md 之前,请务必阅读 EXPORT_。

部署选项

导出后,您可以将代理部署到多个托管环境:

  • AgentCore 运行时(托管)-用于agentcore deploy在 AgentCore 运行时中托管,运行时会自动管理基础架构、扩展和凭据配置。

  • Self-hosted-将生成的 Python 代理部署到任何支持 Python 3.12+ 的地方:

    • AWS 服务:Lambda、 ECS/Fargate、EC2

    • Kubernetes 集群

    • On-premise 服务器

    • 任何容器化环境