AWS发布基于Bedrock AgentCore的AI驱动开发参考实现:自动生成ER图与代码安全分析

AWS机器学习博客公布两个开源参考实现,展示如何在Amazon Bedrock AgentCore上构建AI驱动的开发工作流,覆盖SQL架构图自动生成和CI/CD代码安全扫描。

AI解读:AWS这次发布的两个参考实现,本质上是把AI编程从单机助手扩展到云端自动化流水线。以前你用Kiro、Claude Code这类工具生成代码,但代码提交后的架构图更新和安全审查仍依赖人工。现在AgentCore的方案让智能体在云端监听代码上传事件,自动完成重复性工作:一个从SQL文件生成Mermaid ER图,另一个对Python/Java代码做安全扫描并给出 1-10 的质量分。对数据库团队,PR合并后不用再手动补文档;对DevOps团队,安全审查从人工瓶颈变成流水线里的自动环节。它用Cognito做M2M认证、AgentCore存 90 天会话、OpenTelemetry做追踪,安全上考虑得比较全。目前方案服务器无状态,需要自己部署Lambda和S3,适合已经有CI/CD基础、想减少人工文档和安全审查成本的中大型团队。不过AWS没有给实际的效率提升数据,迁移成本需要自行评估。

AWS机器学习博客发布两个面向AI驱动开发生命周期(AI-DLC)的参考实现,均基于Amazon Bedrock AgentCore构建。一个是自动从SQL schema生成Mermaid ER图的事件驱动架构,另一个是代码提交后自动进行安全漏洞、CVE依赖和策略合规检查的多智能体系统。两个项目的完整部署说明和代码已分别发布在GitHub仓库,博客目的是弥合概念框架与实际代码之间的差距。

方案一:从SQL schema到ER图生成的自动化

该AWS Samples项目通过AgentCore runtime上的智能体工作流,从SQL schema文件自动生成Mermaid ER图。工作流由S3上传事件触发:SQL文件被放入S3桶后,Lambda函数发起分析,经Amazon Cognito OAuth2 M2M认证后调用运行在AgentCore runtime上的容器化智能体。智能体使用Strands框架,通过Amazon Bedrock调用Claude Sonnet 4解析DDL并生成 .mmd图,文件保存回S3。系统只读取表、约束、外键等schema元数据,不接触行数据。

架构包含S3事件触发器(SQL上传触发Lambda)、Cognito认证(OAuth2 M2M,客户端凭据存于Systems Manager Parameter Store)、AgentCore runtime(Strands智能体)、AgentCore memory(90 天过期,支持语义搜索,用于跨分析会话和增量schema理解)以及S3输出存储。代码示例显示模型ID为us.anthropic.claude-sonnet-4-5-20250929-v1:0,区域限定us-west-2,读者需按官方区域可用性核对。

实现上的关键设计包括:大SQL文件拆分处理以避免超出上下文窗口;结构化提示先提取表、列、主键和外键再生成图;用OpenTelemetry对每一步做追踪以观测耗时、分块数量和错误归属。完整代码,含OpenAI Codex skills与MCP server集成,见仓库sample-to-create-mermaid-entity-diagrams-from-sql-using-agentic-ai-on-agentcore。

方案二:代码安全分析的多智能体系统

该无服务器代码安全分析方案名为“Secure software handoffs”,当代码从GitLab流水线推送到S3时触发分析。Strands智能体调用Amazon Bedrock上的Anthropic Claude Sonnet模型,通过MCP工具执行策略检查和CVE扫描(每个工具对应独立Lambda)。分析覆盖代码结构、逻辑质量、内存与性能、安全问题和最佳实践,输出 1 到 10 的质量分及建议,结果存于AgentCore memory支持语义搜索,并通过实时会话型Web仪表盘展示。Cognito负责身份验证,AgentCore Observability和CloudWatch负责监控。

该方案的关键设计包括:智能体职责分离——质量评估归代码分析智能体,策略与CVE检查委托给独立Lambda,各自单用途且可独立更新;会话级结果持久化——每次分析在memory中建立唯一会话,仪表盘按会话ID检索,支持质量分跨提交比较;通过AgentCore Gateway做MCP工具中介,避免硬编码工具调用逻辑,新工具无需改代码即可添加。

AgentCore memory采用三种自管理策略:语义策略存详细分析与CVE/策略违规供按需检索,摘要策略维护聚合指标与趋势用于仪表盘,用户偏好策略记录界面布局与筛选偏好。完整实现见仓库sample-agentic-secure-software-handoffs。

本地智能体与云端工作流的配合方式

博文还说明了本地智能体如何与AgentCore部署互补。Kiro通过规格驱动开发(把自然语言需求转为带验收标准的规格和实现计划)和自定义skills支持AI-DLC的inception与construction阶段,agent模式可自主完成多文件任务,但在规格检查点保留人工复审。

仓库附带OpenAI Codex集成:一个本地MCP server通过INFORMATION_SCHEMA连接MySQL或Aurora MySQL,暴露schema_summary、generate_er_markdown、generate_mermaid三个工具,不访问表行数据;SKILL.md将生成流程编码为可复用skill;数据库凭据从Secrets Manager获取并强制TLS校验。

Claude Code被用于本地快速原型迭代(测试提示词、验证工具集成)、生成部署脚本与Dockerfile/IAM策略/CloudFormation模板,并在代码进入CI/CD之前做第一轮项目规则检查。

典型工作流与实施建议

博文描述了典型“AI-DLC bolt”短周期工作流:Inception阶段用Kiro把业务需求转成带验收标准的规格,团队在mob式细化会议中验证;Construction阶段用Claude Code和Kiro生成实施代码、部署脚本与测试套件;Validation阶段代码经CI/CD推送触发AgentCore自动化安全分析与质量评估;Operations阶段类似ER图生成器的生产智能体持续在AgentCore runtime上运行,事件驱动处理工作负载。

基于部署经验,作者给出实践建议:智能体职责单一并靠编排组合;用AgentCore memory维持上下文连续性,避免重复处理;从第一天起接入OpenTelemetry;配置存Parameter Store而非代码;用分块处理应对超出上下文窗口的输入;用Cognito M2M认证(OAuth2 client credentials),不用硬编码凭据;生产环境应接入CI/CD事件(如GitLab webhook或GitHub Actions)而非手动上传;用Amazon Bedrock Guardrails过滤不安全代码模式或幻觉CVE引用,并加接地验证确图与源schema一致。

查看原图 · 1152 × 576
查看原图 · 1059 × 435

信息来源