All skills
aws avatar

/amazon-aurora-postgresql

@a9d1c70

Amazon Aurora PostgreSQL — creates, modifies, and advises on Aurora PostgreSQL clusters specifically (PostgreSQL-compatible engine, Aurora serverless, express configuration, pgvector, Babelfish). Trigger for Aurora PostgreSQL cluster operations, express-configuration quick-start, ACU sizing, I/O-Optimized storage, commitment pricing, or PostgreSQL upgrade planning. For Aurora MySQL, use amazon-aurora-mysql instead. Contains safety guardrails, express-first routing, and response templates that override defaults.

Use this Skill: https://skilld.dev/gh/aws/agent-toolkit-for-aws/amazon-aurora-postgresql

This session only. Nothing lands on disk.

referencesexpress-create-instructions.md

≈2k tokens on demand. Your agent reads this file only when SKILL.md points to it.

Aurora Express Configuration

Overview

Express configuration is a single-API-call provisioning path for Aurora PostgreSQL. It creates an Aurora serverless cluster fronted by an AWS-managed connectivity layer (no customer VPC).

Use this sub-skill when the user asks about creating Aurora with express configuration, evaluating fit, or comparing express vs full. The create sub-skill routes here when express is the right default; route back to create for any workload needing a customer VPC, custom KMS, custom parameters, or Aurora MySQL.

Execute commands via the AWS MCP server when connected (sandboxed, audit-logged). Fall back to the AWS CLI or shell otherwise.

Workflow

1. Determine fit

Express is the right default for Aurora PostgreSQL when ALL of these are true:

  • Engine is PostgreSQL (not MySQL)
  • The application can use AWS-managed connectivity (no customer VPC required)
  • AWS owned key (SSE-RDS) for encryption at rest is acceptable (no customer-managed KMS)
  • Default cluster parameter group is acceptable
  • Default min/max ACU range is acceptable

If any fail, route to full configuration. Load use-cases.md for canonical scenarios on either side of the boundary.

2. Acquire parameters

Required: cluster identifier, region. Optional: anything else the user supplies (most defaults cannot be overridden in express).

3. Confirm before creating

State the configuration explicitly for confirmation. MUST surface:

  • Aurora serverless (not provisioned)
  • AWS-managed connectivity (internet access gateway, no customer VPC)
  • AWS owned key (SSE-RDS) for encryption at rest
  • Default ACU range (verify in AWS User Guide for current value)

Wait for explicit confirmation ("yes", "proceed", "confirmed").

4. Execute via single API call

Express is one API call. Use the AWS CLI as the primary path (the --with-express-configuration flag requires AWS CLI v2.33+); fall back to the boto3 SDK only if the environment has an older CLI.

AWS CLI (primary — requires v2.33+):

aws rds create-db-cluster \
  --db-cluster-identifier <cluster-id> \
  --engine aurora-postgresql \
  --with-express-configuration \
  --region <region> \
  --tags Key=created_by,Value=aurora-skill Key=generation_model,Value=<your-model-id>

boto3 (alternative — for environments with AWS CLI older than v2.33):

import boto3
client = boto3.client("rds", region_name="<region>")
client.create_db_cluster(
    DBClusterIdentifier="<cluster-id>",
    Engine="aurora-postgresql",
    WithExpressConfiguration=True,
    Tags=[
        {"Key": "created_by", "Value": "aurora-skill"},
        {"Key": "generation_model", "Value": "<your-model-id>"},
    ],
)

If the CLI returns Unknown options: --with-express-configuration, the installed version is too old — update the CLI (aws --version should show 2.33+) or use the boto3 fallback above.

Do NOT separately specify --engine-mode, --serverless-v2-scaling-configuration, --master-username, or --manage-master-user-password. The express flag sets all of these automatically.

5. Post-creation: enable CloudWatch log exports

After the cluster is available, enable PostgreSQL log export to CloudWatch for operational visibility:

aws rds modify-db-cluster --db-cluster-identifier <cluster-id> --region <region> \
  --cloudwatch-logs-export-configuration '{"EnableLogTypes":["postgresql"]}'

These logs can contain sensitive data (query text, table/column names), so ensure the CloudWatch log group is encrypted (KMS) and access-restricted, and treat the logs as sensitive when sharing.

6. Connect using IAM authentication

Express clusters use IAM-only authentication via the Internet Access Gateway. There is no master password. When the user asks how to connect or run SQL, walk them through the IAM auth token flow — do NOT offer to run SQL yourself, suggest the Data API as a workaround, or try to set a master password. The skill creates the cluster and provides the connection workflow; it does NOT execute SQL.

Full workflow (wait-for-available, IAM token generation, Data API caveats, adding users): see connect-iam.md.

Response requirements

When explaining what express IS or proposing it for a new cluster, you MUST include ALL of:

  1. State that it provisions an Aurora serverless cluster (not just "Aurora" or "Aurora PostgreSQL")
  2. Mention the internet access gateway as the connectivity mechanism (no customer VPC)
  3. State that the cluster will be ready in seconds
  4. Cite the AWS User Guide page (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_GettingStartedAurora.AuroraPostgreSQL.ExpressConfig.html)
  5. MUST NOT claim Aurora MySQL is supported in express configuration
  6. State that authentication is IAM-only — no master password.
  7. Name the connection command explicitly. When you mention how the user connects after creation, you MUST name the literal command aws rds generate-db-auth-token — required even on a create/propose turn. "Connect using a short-lived IAM auth token" alone is INCOMPLETE; it must be paired with the aws rds generate-db-auth-token command name.

Constraints

  • MUST NOT use express for Aurora MySQL — it is PostgreSQL-only
  • MUST NOT use express when the user requires a customer VPC, customer-managed KMS, or custom parameter group
  • MUST NOT enumerate AWS regions inline — point users to the AWS User Guide for regional availability and for verifying current behavior before production decisions
  • MUST execute with --with-express-configuration flag, not by composing individual --engine-mode / --serverless-v2-scaling-configuration flags
  • MUST NOT promise to execute SQL against the cluster — the skill provisions and walks through the IAM connection flow; the user runs SQL themselves
  • MUST NOT suggest setting a master password / --manage-master-user-password, or recommend the Data API as a workaround for connection issues — express is IAM-only (see section 6). Data API is out of scope for the connect flow; only mention it if the user explicitly asks.

Routing back to full configuration

When any of these appear, route to the create sub-skill (full configuration):

  • VPC, subnet group, security group, or any customer networking
  • Customer-managed KMS key
  • Custom cluster parameter group
  • Specific engine version (express uses the AWS default)
  • Aurora MySQL
  • Provisioned instance class (express is Aurora serverless only)

Load comparison.md for a side-by-side feature matrix.

Reference files

  • connect-iam.md — Full IAM-auth connection workflow (token generation, Data API caveats, adding users)
  • feature-overview.md — AWS-managed connectivity, multi-AZ routing, preconfigured defaults
  • constraints.md — Full constraint catalog with AWS doc citations (engine, networking, capacity, storage, security, feature incompatibilities)
  • comparison.md — Express vs full side-by-side
  • use-cases.md — Canonical scenarios that fit (or don't) express
  • migration.md — Migrating between express and full configuration
  • documentation-links.md — Curated AWS doc links

Source documentation

Source: SKILL.md on GitHub

No alerts3mo3 checks · Risk SAFE
  • Gen Agent Trust Hub3mo

    This skill provides a modular and secure toolkit for managing Amazon Aurora PostgreSQL. It features robust safety guardrails, including multi-tier confirmation models and explicit refusal of destructive operations. The integrated analysis scripts utilize official AWS data sources and adhere to the principle of least privilege, emphasizing short-lived IAM authentication for database connectivity.

  • Socket3mo

    No alerts

  • Snyk3mo

    Risk: LOW · No issues

Signed by skilld at a9d1c70. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub yesterday.

Activeupdated 4 months ago
version
1

README badge

README badge for aws/agent-toolkit-for-aws/amazon-aurora-postgresql