analyzing-release-read…
Trigger a pre-merge release readiness review on a GitHub PR, GitLab MR, or local branch. Use when the user wants to analyze code changes for risk, correctness,…
Create managed Iceberg tables using Amazon S3 Tables (s3tables API namespace) with automatic compaction and snapshot management. Sets up table bucket, namespace, table, schema, Glue catalog registration, partitioning, IAM access control. Triggers on: create table, data lake
$ npx -y skills add aws/agent-toolkit-for-aws --skill creating-data-lake-table --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/creating-data-lake-tableContext preview
The summary Claude sees to decide when to auto-load this skill.
Create managed Iceberg tables using Amazon S3 Tables (s3tables API namespace) with automatic compaction and snapshot management. Sets up table bucket, namespace, table, schema, Glue catalog registration, partitioning, IAM access control. Triggers on: create table, data lake
name: creating-data-lake-table description: >- Create managed Iceberg tables using Amazon S3 Tables (s3tables API namespace) with automatic compaction and snapshot management. Sets up table bucket, namespace, table, schema, Glue catalog registration, partitioning, IAM access control. Triggers on: create table, data lake table, analytics table, structured data storage, S3 Tables, Iceberg, Athena table, partitioning strategy, access permissions. Do NOT use for: importing files (use ingesting-into-data-lake), vector storage (use storing-and-querying-vectors), querying existing tables (use querying-data-lake), or locating existing table (use finding-data-lake-assets). metadata: version: "1" argument-hint: "'[table-description|schema-spec]'"
Amazon S3 Tables provides managed Iceberg tables with automatic compaction and snapshot management. Queryable via Athena and Iceberg-compatible engines.
You MUST use AWS MCP server tools when connected, they provide command validation, sandboxed execution, and audit logging. Fall back to AWS CLI if MCP unavailable.
**Before creating, You MUST check what exists:**
You MUST run `aws glue get-tables --database-name <NAME>` when user mentions a database.
| What you find | Action | |---------------|--------| | Fuzzy database name ("our analytics db") | You MUST STOP. Delegate to `finding-data-lake-assets` to resolve. | | Non-S3-Tables table with matching name | You MUST STOP. Delegate to `finding-data-lake-assets`. You MUST NOT create until user confirms. | | Existing S3 Tables table with matching name | You MUST check schema match. Reuse if compatible, recreate only if user confirms. | | No matching tables | Proceed with creation (Steps 1-8). | | User explicitly requests new S3 Tables table | Skip checks, proceed with creation. |
**Creation paths:**
**Constraints:**
**Constraints:**
Names: 3-63 chars, lowercase, numbers, hyphens.
aws s3tables create-table-bucket --name <BUCKET_NAME> --region <REGION>
Capture `table-bucket-arn`. Encryption (SSE-S3 default, SSE-KMS) and storage class (STANDARD, INTELLIGENT_TIERING) set at creation. See `references/best-practices.md`.
**Constraints:**
aws s3tables create-namespace --table-bucket-arn <ARN> --namespace <NAMESPACE>
**Constraints:**
Check if `s3tablescatalog` exists (create once per region per account):
aws glue get-catalog --catalog-id s3tablescatalog
If not found, create (requires `glue:CreateCatalog`, `glue:passConnection`):
aws glue create-catalog --name "s3tablescatalog" --catalog-input '{
"FederatedCatalog": {
"Identifier": "arn:aws:s3tables:<REGION>:<ACCOUNT_ID>:bucket/*",
"ConnectionName": "aws:s3tables"
},
"CreateDatabaseDefaultPermissions": [{"Principal": {"DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"}, "Permissions": ["ALL"]}],
"CreateTableDefaultPermissions": [{"Principal": {"DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"}, "Permissions": ["ALL"]}],
"AllowFullTableExternalDataAccess": "True"
}'Verify with `aws glue get-catalogs --parent-catalog-id s3tablescatalog`.
S3 Tables uses `s3tables:*` IAM namespace (not `s3:*`).
**Querying principal permissions (bucket policy):**
**Querying principal permissions (IAM policy):**
You MUST scope to correct ARN patterns. You MUST read `references/access-control.md` for exact resource ARNs.
**Constraints:**
| Context | Path | |---------|------| | Default (any user) | **S3 Tables API** (below) | | User specifically wants SQL DDL | **Athena DDL** (see `references/athena-ddl-path.md`) | | Glue
Help AI coding agents build, deploy, and manage applications on AWS. The Agent Toolkit for AWS gives AI coding agents the tools, knowledge, and guardrails they need to work with AWS services.
Repo: aws/agent-toolkit-for-aws
Trigger a pre-merge release readiness review on a GitHub PR, GitLab MR, or local branch. Use when the user wants to analyze code changes for risk, correctness,…
Have a fast, conversational analysis with the AWS DevOps Agent. Use for cost optimization, architecture review, topology mapping, knowledge / runbook…
Coordinate the AWS DevOps Agent across multiple AgentSpaces from one Claude Code session — route questions to the right space (prod vs staging vs knowledge),…
Run a fast AWS Security Agent diff scan on only the changed code since a git ref. Use when the user asks to scan changes, run a diff scan, check what changed…
Run a deep root-cause investigation on the AWS DevOps Agent. Use when the user describes an incident, alarm, outage, or unexplained behavior — keywords like…
Run an AWS Security Agent penetration test against a live web application — registers and verifies the target domain, exercises the supplied endpoints with the…