当前位置: 首页 > ops >正文

终结开发混乱,用 Amazon Q 打造AI助手

有一说一,作为开发者,我们得戴着好几顶帽子干活。前一分钟,你还沉浸在 Python 后端,和数据库结构死磕;下一分钟,你可能就被空投到 React 前端项目里,对着组件库和设计系统一脸懵圈。每一次上下文切换,都是一次大脑的“硬重启”,伴随着全新的工具、语言和思维模式。

现在,想象一下,你的命令行里就有一个像 Amazon Q Developer 这样的 AI 助手,随时待命。你问它:“嘿,这里有多少个 table?” AI 愣住了。你问的是 UI 里的 HTML <table> 元素,还是 PostgreSQL 数据库里的 SQL 表?如果不知道你戴着哪顶“帽子”,它只能靠猜。

这就是那种拖慢我们节奏的“开发混乱”。但如果你能给你的 AI 助手也配上不同的帽子呢?如果你能为它创建几个专属的“人设”或“搭档”——一个前端专家,一个后端大师,一个 DevOps 能手——让它精准地知道你正在做什么呢?

这正是 Amazon Q Developer CLI 中的定制代理(Custom Agents) 能做到的事。话不多说,让我们动手打造几个这样的 AI 搭档,来简化我们的工作流吧。

新用户可获得高达 200 美元的服务抵扣金

亚马逊云科技新用户可以免费使用亚马逊云科技免费套餐(Amazon Free Tier)。注册即可获得 100 美元的服务抵扣金,在探索关键亚马逊云科技服务时可以再额外获得最多 100 美元的服务抵扣金。使用免费计划试用亚马逊云科技服务,最长可达 6 个月,无需支付任何费用,除非您选择付费计划。付费计划允许您扩展运营并获得超过 150 项亚马逊云科技服务的访问权限。

任务揭晓 🚀

今天,我们要在终端里亲手打造两个专属的 AI 代理:

  1. 后端专家:这个代理将是我们的 Python 和 PostgreSQL 栈的专家。它将被授予对我们数据库结构的直接只读访问权限。
  2. 前端大师:这个代理将为 React 和 Figma 量身定制,随时准备在 UI 组件和设计规范方面提供帮助。

万事开头难:先把环境搭好

在开始构建之前,请确保你已经安装并认证了 Amazon Q Developer CLI。可以在亚马逊云科技官网注册你的账号并完成以下操作。

第一步:打造你的后端专家代理 🐍

我们的第一个代理将是后端专家。我们会用一个简单的 JSON 文件来定义它的个性和技能。

首先,创建这个文件。定制代理的配置文件存放在你主目录下的一个特定文件夹里。

# 如果目录不存在,就创建它
mkdir -p ~/.aws/amazonq/agents/# 为我们的后端代理创建并打开配置文件# 用你喜欢的编辑器,比如 nano, vim, 或者 VS Code
~/.aws/amazonq/agents/back-end.json

现在,把下面的 JSON 内容粘贴到 back-end.json 文件里。我们稍后会逐一解释每个部分的作用。

{"description": "为 Python 和 PostgreSQL 后端开发优化","mcpServers": {"PostgreSQL": {"command": "uvx","args":}},"tools": ["*"],"allowedTools":,"resources":,"hooks": {"agentSpawn": [{"command": "git status"}]}
}

保存并关闭文件。现在,我们来解读一下这个配置:

  • "description": 这只是给你自己看的一段简单描述,解释这个代理是干嘛的。
  • "mcpServers": 这是你把代理和外部世界连接起来的地方。在这里,我们给了它一条直连 PostgreSQL 数据库的“热线”。这让 Q 可以问出“users 表的结构是什么?”这样的问题,并得到真实的答案。注意那个 "--readonly", "True" 标志——这是一个至关重要的安全措施,确保我们的 AI 助手不会意外修改我们的数据。
  • "tools""allowedTools": 把这想象成给了你的代理一个工具箱 (tools),然后预先批准了其中一些工具的使用权 (allowedTools)。我们给了它访问所有工具的权限 ("*"),但在权限上非常小心。它可以无需询问就读取文件 (fs_read) 和获取数据库结构 (@PostgreSQL/get_table_schema),但如果它想写文件 (fs_write),就必须先征得你的同意。这给了你精细的控制权。

  • "resources": 这就像是给了你的代理一些必读材料。我们告诉它,要始终参考项目的 README.md 和一些我们全局存放的关于 Python 和 SQL 的个人偏好文件。这有助于它给出与我们项目规范和个人编码风格一致的答案。

  • "hooks": 这给了我们的代理一个启动程序。agentSpawn 钩子会在我们每次与这个代理开始聊天时运行一个命令。在这里,我们运行 git status,这样代理就能立刻知道我们仓库的状态。

第二步:组装前端大师代理 🎨

有了后端专家,我们再来创建它的前端搭档。

为我们的前端代理打开一个新文件:

~/.aws/amazonq/agents/front-end.json

粘贴这个配置。注意它和我们后端代理的不同之处。

{"description": "为使用 React 和 Figma 的前端 Web 开发优化","mcpServers": {"Figma": {"command": "npx","args": ["mcp-remote","http://127.0.0.1:3845/sse"]}},"tools": ["*"],"allowedTools": ["fs_read","fs_write","report_issues","@Figma"],"resources":,"hooks": {"agentSpawn": [{"command": "git status"}]}
}

我们来重点看看关键变化:

  • 新工具mcpServers 部分现在指向了一个本地的 Figma 服务器,让我们的代理可以直接访问我们的设计文件。

  • 不同的权限:这里的 allowedTools 更加宽松。我们信任这个代理可以读写文件 (fs_write),并且可以无需许可就使用 Figma 服务器的任何工具 (@Figma)。

  • 不同的阅读材料resources 现在指向一个 react-preferences.md 文件,使其知识更贴合我们的前端框架。

第三步:让你的代理们大显身手!

见证奇迹的时刻到了。在我们的专属 AI 搭档之间切换,就像用一个参数开始一段新聊天一样简单。

要和你的后端专家对话,你只需输入:

q chat --agent back-end

现在,在这段聊天里,Amazon Q 就知道它处于“后端模式”。你可以问:

“products 表里有哪些列?”

然后它就会利用与 PostgreSQL 的连接,返回准确的表结构。

准备好切换到前端工作了吗?只需和你的前端大师开始一段新聊天:

q chat --agent front--end

在这个会话中,你可以问:

“根据 Figma 设计稿里的‘登录按钮’,生成一个 React 组件。”

然后它就会利用 Figma 连接来拉取设计规范并生成代码。再也没有模棱两可,只有懂你心思、感知上下文的帮助。

还能打造哪些代理?

可以为你工作流的任何部分创建定制代理:

  • 一个 aws-specialist 代理:预先加载你的文档,并被允许运行 CLI 命令。
  • 一个 code-reviewer 代理:配置了你团队的代码检查规则和风格指南。
  • 一个 documentation-writer 代理:被授予读取所有源文件的权限,但只能写入 .md 文件。

通过创建这些简单的 JSON 文件,你不仅仅是在配置一个工具;你是在构建一个能适应工作方式的专属 AI 助手团队。你在驯服上下文切换的混乱,一次一个代理。

以上就是本文的全部内容啦。最后提醒一下各位工友,如果后续不再使用相关服务,别忘了在控制台关闭,避免超出免费额度产生费用~

http://www.xdnf.cn/news/18353.html

相关文章:

  • 华为云ModelArts+Dify AI:双剑合璧使能AI应用敏捷开发
  • CSS【详解】性能优化
  • 【知识储备】PyTorch / TensorFlow 和张量的联系
  • 数字货币发展存在的问题:交易平台的问题不断,但监管日益加强
  • React + Antd+TS 动态表单容器组件技术解析与实现
  • Linux -- 封装一个线程池
  • 射频电路的完整性简略
  • ubuntu编译ijkplayer版本k0.8.8(ffmpeg4.0)
  • JVM-(7)堆内存逻辑分区
  • 智能编程中的智能体与 AI 应用:概念、架构与实践场景
  • 【Flutter】Container设置对齐方式会填满父组件剩余空间
  • BaaS(Backend as a Service)技术深度解析:云时代的后端开发革命
  • 数据结构青铜到王者第一话---数据结构基本常识(1)
  • Spring面试宝典:Spring IOC的执行流程解析
  • JavaScript 十六进制与字符串互相转(HEX)
  • 通义千问VL-Plus:当AI“看懂”屏幕,软件测试的OCR时代正式终结!
  • 微信小程序基础Day1
  • iOS 文件管理全景实战 多工具协同提升开发与调试效率
  • ACM模式输入输出
  • mlir CollapseShapeOp ExpandShapeOp的构造
  • 循环神经网络实战:用 LSTM 做中文情感分析(二)
  • Class A 包含字段 x Class B 也包含字段 x,如果判断List<A> lista 和 List<B> listb 有相同的 x?
  • 29、工业网络威胁检测与响应 (IDS 模拟) - /安全与维护组件/industrial-network-ids
  • spark数据缓存机制
  • 云计算下数据隐私保护系统的设计与实现(LW+源码+讲解+部署)
  • [RestGPT] docs | RestBench评估 | 配置与环境
  • 阿里云的centos8 服务器安装MySQL 8.0
  • 【OpenGL】LearnOpenGL学习笔记13 - 深度测试、模板测试
  • Linux CentOS 安装 .net core 3.1
  • 1. 准备工作---数据分析编程 - 从入门到精通