AI 日报hiw3c.com

使用Amazon Bedrock AgentCore的人工智能驱动开发生命周期

原文标题 · AI-driven development lifecycle using Amazon Bedrock AgentCore
AWS ML Blog aws.amazon.com RSS 全文

以下为 AI 机器翻译(保留原文图片与链接),仅供参考,请以原文为准。

工程团队采用人工智能驱动开发工作表(AI-DLC),亚马逊基石代理核心 and coding agents like Kiro often struggle with the gap between conceptual frameworks and working code. Amazon Bedrock AgentCore is a service for building, connecting, and optimizing agents at scale with any framework or model. AI-DLC positions AI as a central collaborator across the software development lifecycle, handling routine execution while humans retain oversight of critical decisions. This post closes that gap with working reference implementations.

This post walks through the architecture, design decisions, and key code patterns behind two reference implementations that demonstrate AI-DLC construction phase patterns using Amazon Bedrock AgentCore, Kiro, and local agentic coding tools. The first generates Mermaid entity relationship diagrams from SQL schemas using AgentCore runtime, a capability of Amazon Bedrock AgentCore. The second provides automated code security analysis through a multi-agent architecture that uses AgentCore Gateway, a capability of Amazon Bedrock AgentCore, and AgentCore memory, a capability of Amazon Bedrock AgentCore, along with external tool integrations. Together, they illustrate how to structure AI-driven workflows that maintain human-in-the-loop governance while accelerating delivery. Both implementations link to complete deployment instructions in their respective GitHub repositories.

AI-DLC construction patterns in practice

The AI-DLC construction phase positions AI to propose architecture, generate implementation plans, produce code, and create deployment artifacts, with team members providing clarification on technical decisions in real time. The implementations described here map directly to this pattern:

  • 自动化文物生成:代理接收结构化输入(SQL模式文件)、创建详细计划、生成输出(Mermaid ER图)并存储结果以供人类审查。
  • 持续的代码质量强制执行多代理系统分析通过持续集成和持续交付(CI/CD)管道推送的代码,生成安全评估、常见漏洞和暴露(CVE)检查以及策略合规性报告,为人类决策提供信息。

这两个系统都拥有一个基于AgentCore的共同架构基础,展示了团队如何从模块化、可管理的组件组成人工智能驱动的工作流程。

解决方案1:SQL模式到ER图生成

该AWS Samples项目使用Amazon Bedrock AgentCore上的代理AI工作流程从SQL模式文件自动生成Mermaid ER图。开发人员签入SQL代码后,亚马逊简单存储服务(Amazon S3)触发器和AWS Lambda基于功能的工作流程调用AgentCore运行时,该运行时解析数据定义语言(SYS)以生成.mmd图表保存回Amazon S3。它只读取模式元数据(表、约束和外部键),从不读取行数据,使其成为模式到图表自动化的干净引用。

业务挑战

管理不断发展的SQL模式的数据库团队需要当前的实体关系文档。手动创建ER图是耗时的,并且文档经常偏离实际模式。当模式更改通过拉取请求时,团队需要更新图,而无需向开发工作流添加手动文档步骤。

架构

该系统使用无服务器、事件驱动的架构,包含以下组件:

An Amazon S3 upload triggers a Lambda function that invokes an AgentCore agent to generate a Mermaid ER diagram

图1:SQL模式到ER图生成的事件驱动架构

  1. S3事件触发:上传到Amazon S3存储桶的SQL文件触发AWS Lambda函数,该函数启动分析工作流程。
  2. 认证:Amazon Cognito提供OAuth2机器对机器(M2M)身份验证。客户端凭据存储在AWS Systems Manager参数存储中。
  3. AgentCore运行时:用股框架在AgentCore运行时运行。该代理通过Amazon Bedrock使用Claude Sonnet 4来解析SQL SYS陈述并生成Mermaid ER图语法。(For AWS区域提供的模型,请参阅按型号划分的区域可用性.)
  4. 代理核心内存:提供有效期为90天的持久会话上下文,并支持跨之前分析的语义搜索和增量模式理解。
  5. 输出存储:生成.mmd图表文件以专用前缀保存到Amazon S3,元数据跟踪源文件和生成时间戳。

工作流程如下所示:

  1. SQL文件上传到Amazon S3(手动或通过CI/CD管道)。
  2. Lambda触发器读取文件内容并通过Cognito OAuth进行身份验证。
  3. 触发器以SQL内容作为有效负载来调用AgentCore运行时代理。
  4. 代理分析模式并识别表、列、约束和外部键关系。然后生成完整的美人鱼erDiagram。
  5. 该图表保存到Amazon S3,分析会话存储在AgentCore内存中。

实现细节

代理实现使用BedrockAgentCoreApp运行时包装@app.entrypoint装饰者注册处理程序:

从bedrock_agentcore.runtime导入BedrockAgentCoreApp
从mosket_agentcore.内存导入SecureClient
来自股线进口代理
来自strands.models导入BedrockModel

app = BedrockAgentCoreApp()
model = BedrockModel(model_id=“us.anthropic.claude-sonnet-4-5-20250929-v1:0”,region_name=“us-west-2”)
erdiagram_Agent = Agent(模型=模型)
内存_客户端=内存客户端(region_Name=“us-west-2”)

@app.entrypoint
请使用def generate_er_diagram(payload:Dict[str,Any])-> Dict[str,Any]:
    SQL_content = payment.get(“SQL_content”,“”)
    file_list = payment.get(“file_list”,“unknow_file. url”)
    #生成图表,存储在内存中,保存到S3
    ...

关键设计决策包括:

  • 分块处理:大型SQL文件被分成可管理的部分,独立分析,然后合并到统一的图表中。这可以在不超出上下文限制的情况下处理具有数百个表的模式。
  • 结构化提示:代理使用系统分析提示,在生成图表语法之前提取表、列、数据类型、公钥和新元素关系。
  • OpenTelegram跟踪:每个步骤都带有跨度和属性,提供处理持续时间、块计数和错误归因的可观察性。

完整的实施,包括OpenAI Codex技能和HCP服务器集成,可在sample-to-Deliver-mermaid-Entity-diagram-from-SQL-using-agentic-ai-on-agentcore中提供存储库.

解决方案2:安全的软件交接

此无服务器代码安全分析解决方案使用Amazon Bedrock AgentCore自动扫描Python或Java代码是否存在安全漏洞、依赖项中的UTE风险和策略违规。当代码从GitLab管道推送到Amazon S3时,会触发分析。然后,基于Strands的代理使用Amazon Bedrock上的Anthropic Claude Sonnet模型来评估代码。它调用在AWS Lambda上运行的模型上下文协议(HCP)工具来进行CVS和策略检查。(For按地区列出的型号可用性,请参阅按型号划分的区域可用性.)结果(包括1到10的质量分数和建议)存储在带有语义搜索的AgentCore内存中,并通过基于会话的实时Web仪表板显示。Amazon Cognito提供身份验证,AgentCore Observability(Amazon Bedrock AgentCore的一项功能)和Amazon CloudWatch提供监控。

业务挑战

安全合规性的代码审查需要跨UTE数据库、组织编码策略和特定语言的安全模式的专业知识。手动安全审查会在交付管道中造成瓶颈,并且团队之间标准的应用不一致导致代码质量不一致。

架构

该解决方案通过多代理架构提供自动化代码安全分析,以实现开发阶段之间的安全软件交接:

Uploaded code is analyzed by an AgentCore agent that calls policy-check and CVE-scanner tools through AgentCore Gateway

图2:用于自动代码安全分析的多代理架构

  1. 代码文件上传到Amazon S3桶(手动或通过CI/CD管道)。AWS Lambda触发器检测新上传并通过OAuth2身份验证启动AgentCore分析工作流程。
  2. 带MCP工具的AgentCore网关:该网关协调对外部工具集成的调用:
    1. 政策检查Lambda:根据组织特定的安全策略验证代码。
    2. CVS数据库检查Lambda:扫描已知漏洞的依赖项文件。
  3. AgentCore运行时(Strands框架):核心分析代理执行深度代码审查,包括结构评估、逻辑质量评估、内存和性能分析、安全问题检测以及最佳实践合规性。
  4. 代理核心内存:具有语义搜索功能存储分析结果,支持历史比较和趋势分析。
  5. 仪表板Lambda:提供Web UI,该UI提供基于会话的结果,并跨文件、违规和质量指标进行搜索和多选项卡导航。

关键能力

  • 多维分析该系统评估代码的结构质量、算法效率、安全状态和标准合规性。它产生一个质量分数与具体的建议。
  • 记忆策略:三种不同的自我管理记忆策略满足不同的需求:
    • 语义策略:存储详细的代码分析结果、UTE结果和策略违规,以便按上下文检索。
    • 总结策略:维护仪表板可视化的汇总指标和趋势。
    • 用户偏好策略:跟踪整个会话的仪表板布局和过滤器首选项。

    要了解更多信息,请参阅代理核心记忆策略.

  • 通过AgentCore Gateway集成LCP工具:该功能允许代理在分析期间根据需要调用外部工具(策略检查器、UTE扫描器),而无需将工具调用或外部API逻辑硬编码到代理本身中。

分析代理遵循与解决方案1相同的AgentCore运行时模式,只是添加了通过AgentCore Gateway路由的HCP工具调用:

从bedrock_agentcore.runtime导入BedrockAgentCoreApp
从boundary_agentcore.memory导入AgentCoreMemory
来自股线进口代理
来自strands.models导入BedrockModel

app = BedrockAgentCoreApp()
model = BedrockModel(model_id=“us.anthropic.claude-sonnet-4-5-20250929-v1:0”,region_name=“us-west-2”)
analysis_agent = Agent(model=model,tools=[analyze_code,check_quality])
内存= AgentCoreMemory(namency =“code-analysis”)

@app.entrypoint
解析def analyze_uploaded_code(payload:Dict[str,Any])-> Dict[str,Any]:
    file_content = payment.get(“file_content”,“”)
    file_list = payment.get(“file_list”,“unknown.py”)
    会话ID = payload.get(“会话ID”,“”)
    #分析代码,将结果存储在内存中,返回质量分数
    ...

代理从AWS Lambda触发器接收代码内容,使用基础模型(FM)执行多维分析,然后根据需要通过AgentCore Gateway调用外部工具(策略检查器、UTE扫描器)。结果保存到AgentCore内存中,以进行仪表板检索和历史比较。

关键设计决策包括:

  • 多代理分离:代码分析代理仅专注于质量评估。策略检查和UTE扫描被委托给通过AgentCore Gateway调用的专用AWS Lambda功能,使每个组件保持单一用途且可独立更新。
  • 基于会话的结果持久化:每次分析运行都会在AgentCore内存中创建一个唯一的会话。仪表板按会话ID检索结果,允许开发人员比较多个代码提交的质量分数。
  • 网关介导的工具调用:外部工具是通过AgentCore网关使用MAO而不是直接调用注册的。这将代理与工具实现详细信息分开,并允许添加新工具而无需修改代理代码。

完整的实现可在示例代理安全软件副本中提供存储库.

集成本地代理工具:Kiro、OpenAI ChatGPT Codex和Claude Code

虽然AgentCore为已部署的事件驱动代理工作负载提供云运行时,但开发工作流本身受益于在开发人员工作站实现AI-DLC模式的本地代理工具。

Kiro代理和技能

基罗通过结构化规范和定制代理技能支持AI-DLC的初始和构建阶段:

  • 规范驱动的开发Kiro将自然语言需求转换为具有验收标准的结构化规范,然后根据这些规范生成实现计划。这直接映射到AI创建计划并在执行前寻求人类验证的AI-DLC模式。
  • 自定义技能:团队可以定义可重复使用的Kiro代理技能它对组织标准(编码模式、安全要求、架构指南)进行编码,以便人工智能生成的代码始终符合企业质量标准。
  • 快速任务执行:Kiro的代理模式通过自主工具使用(文件创建、终端命令、搜索)处理多文件实现任务,同时在每个规范检查点维护人在循环审查。

OpenAI ChatGPT Codex(HCP服务器和技能)

该存储库还包括一个OpenAI Codex集成,该集成演示了相同的ER图生成工作流程如何通过MCP和自定义技能扩展到其他编码代理:

  • 用于实时数据库模式访问的HCP服务器:本地基于stdio的HCP服务器通过将Codex连接到SQL或Amazon Aurora SQL数据库信息_SCEMA.服务器公开了三个工具(模式_摘要, generate_er_markdown,而且生成_美人鱼),允许Codex在无需访问表行数据的情况下查询表结构、列、索引和新元素关系。
  • 定制法典技能:ASKILL.md文件将ER图生成工作流程编码为可重复使用的Codex技能,以一致的质量指导代理完成模式分析和图表创建。
  • 安全凭证管理:从AWS Secrets Manager中检索数据库凭据,并强制执行SSL验证,遵循AgentCore实现中使用的相同安全模式。

Claude Code(当地代理)

Claude Code作为本地命令行代理运行,补充AgentCore部署:

  • 快速成型:在部署到AgentCore运行时之前,开发人员使用Claude Code来初始化代理逻辑、测试提示并本地验证工具集成模式。
  • 格式结构即代码生成:Claude Code生成部署脚本、Dockerfile、AWS身份和访问管理(ILM)策略以及AWS CloudFormation模板。这些文物遵循AI-DLC构建阶段产生的架构规范。
  • 代码审查和重构:本地代理根据项目规则和自定义指令执行首过审查,在代码进入CI/CD管道之前发现问题,安全软件移交系统提供权威的安全分析。

组合工作流程

使用这些工具的典型AI-DLC螺栓(短而密集的工作周期)遵循以下模式:

  1. 成立(Kiro):将业务需求转化为具有接受标准的规范。该团队在暴民详细说明会议中验证人工智能生成的规格。
  2. 建设(Claude Code和Kiro):生成实现代码、部署脚本和测试套件。本地代理处理文件生成和迭代细化,而Kiro管理任务编排。
  3. 验证