volcengine-rds-postgresql
使用火山引擎 RDS PostgreSQL,帮助用户完成 RDS PostgreSQL 相关的实例管理、数据库操作、账号管理和运维任务,可直接调用 uv run ./scripts/call_rds_postgresql.py 脚本获取实时结果。
How do I install this agent skill?
npx skills add https://skills.volces.com --skill volcengine-rds-postgresqlIs this agent skill safe to install?
No partner audit is available yet. Read the source before installing.
What does this agent skill do?
Skill 概览
本 Skill 用于在对话中充当 火山引擎 RDS PostgreSQL 的智能运维代理:
- 理解用户的自然语言需求(中文或英文),识别是否与 RDS PostgreSQL 相关;
- 直接调用内置脚本
scripts/call_rds_postgresql.py实时查询 RDS PostgreSQL 并获取结果; - 当获取到结果或用户粘贴错误信息时,进一步解释、诊断并给出后续建议。
工作模式:
- 使用
scripts/call_rds_postgresql.py脚本直接获取 RDS PostgreSQL 的实时响应
运行方式: 脚本支持两种运行方式:
# 方式 1: 使用 uv (推荐,自动管理依赖)
uv run ./scripts/call_rds_postgresql.py [action] [options]
# 方式 2: 使用 python (需要预先安装依赖)
python ./scripts/call_rds_postgresql.py [action] [options]
标准使用流程
-
确认任务类型与参数
- 判断用户意图:查询实例列表、查看实例详情、管理数据库、管理账号、查看参数配置、创建实例等。
- 收集必要参数(如未指定则使用默认值):
--region:地域 ID(默认cn-beijing)--action:操作类型(如list-instances、describe-instance、list-databases等)--instance-id:实例 ID(部分操作必需)
-
构造查询并调用脚本
- 示例(以下命令可使用
uv run或python运行):# 查询实例列表 uv run ./scripts/call_rds_postgresql.py list-instances # 或 python ./scripts/call_rds_postgresql.py list-instances # 查询指定实例详情 uv run ./scripts/call_rds_postgresql.py describe-instance --instance-id postgres-xxx # 或 python ./scripts/call_rds_postgresql.py describe-instance --instance-id postgres-xxx # 查询实例的数据库列表 uv run ./scripts/call_rds_postgresql.py list-databases --instance-id postgres-xxx # 或 python ./scripts/call_rds_postgresql.py list-databases --instance-id postgres-xxx # 查询实例的账号列表 uv run ./scripts/call_rds_postgresql.py list-accounts --instance-id postgres-xxx # 或 python ./scripts/call_rds_postgresql.py list-accounts --instance-id postgres-xxx # 查询实例参数 uv run ./scripts/call_rds_postgresql.py list-parameters --instance-id postgres-xxx # 或 python ./scripts/call_rds_postgresql.py list-parameters --instance-id postgres-xxx # 查询 VPC 列表(用于创建实例) uv run ./scripts/call_rds_postgresql.py list-vpcs # 或 python ./scripts/call_rds_postgresql.py list-vpcs # 查询子网列表 uv run ./scripts/call_rds_postgresql.py list-subnets --vpc-id vpc-xxx --zone-id cn-beijing-a # 或 python ./scripts/call_rds_postgresql.py list-subnets --vpc-id vpc-xxx --zone-id cn-beijing-a
- 示例(以下命令可使用
-
解析结果并后续处理
- 将 RDS PostgreSQL 的响应用自然语言解释给用户;
- 如返回包含敏感操作,评估风险并提醒:
- 避免在生产环境直接执行高风险操作(如删除实例、删除数据库等);
- 建议在测试环境验证或做好备份。
工具脚本使用说明
支持的操作(Actions)
| 操作 | 说明 | 必需参数 |
|---|---|---|
list-instances | 查询 RDS PostgreSQL 实例列表 | 无 |
describe-instance | 查询指定实例详情 | --instance-id |
list-databases | 查询实例的数据库列表 | --instance-id |
list-accounts | 查询实例的账号列表 | --instance-id |
list-parameters | 查询实例的参数配置 | --instance-id |
list-parameter-templates | 查询参数模板列表 | 无 |
describe-parameter-template | 查询参数模板详情 | --template-id |
list-vpcs | 查询 VPC 列表 | 无 |
list-subnets | 查询子网列表 | --vpc-id |
get-price | 查询实例价格 | 多个配置参数 |
命令行参数
| 参数 | 说明 | 默认值 |
|---|---|---|
action | 操作类型(必需) | - |
--region / -r | 火山引擎地域 ID | cn-beijing |
--instance-id / -i | 实例 ID | 无 |
--page-number | 分页页码 | 1 |
--page-size | 每页记录数 | 10 |
--output / -o | 输出格式(json/table) | json |
注意:
--region、--page-number、--page-size等全局参数必须放在子命令之前,例如:uv run ./scripts/call_rds_postgresql.py --region cn-shanghai list-instances放在子命令之后会被忽略(argparse 解析限制)。
输出格式
脚本会将查询信息输出到 stderr,将结果输出到 stdout,便于分离日志和结果:
[操作] list-instances
[地域] cn-beijing
============================================================
[查询结果]
<实际结果内容>
常见使用场景
1. 查看所有实例
uv run ./scripts/call_rds_postgresql.py list-instances
2. 查看实例详情
uv run ./scripts/call_rds_postgresql.py describe-instance --instance-id postgres-xxx
3. 查看实例的数据库
uv run ./scripts/call_rds_postgresql.py list-databases --instance-id postgres-xxx
4. 查看实例的账号
uv run ./scripts/call_rds_postgresql.py list-accounts --instance-id postgres-xxx
5. 查看实例参数配置
uv run ./scripts/call_rds_postgresql.py list-parameters --instance-id postgres-xxx
6. 按版本过滤实例
uv run ./scripts/call_rds_postgresql.py list-instances --db-engine-version PostgreSQL_14
7. 创建实例前查询网络信息
# 先查询 VPC
uv run ./scripts/call_rds_postgresql.py list-vpcs
# 再查询子网
uv run ./scripts/call_rds_postgresql.py list-subnets --vpc-id vpc-xxx --zone-id cn-beijing-a
环境变量配置
-
获取火山引擎访问凭证:参考 用户指南 获取 AK/SK
-
配置以下环境变量:
export VOLCENGINE_ACCESS_KEY="your-access-key"
export VOLCENGINE_SECRET_KEY="your-secret-key"
export VOLCENGINE_REGION="cn-beijing" # 可选,默认 cn-beijing
权限说明:
list-vpcs和list-subnets调用的是 VPC 服务接口,AK/SK 需要同时授予 RDS PostgreSQL 和 VPC(vpc:DescribeVpcs、vpc:DescribeSubnets)两个服务的权限, 否则会返回AccessDenied 403错误。
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/skills.volces.com/volcengine-rds-postgresql">View volcengine-rds-postgresql on skillZs</a>