aws-dynamodb

SKILL.md

AWS DynamoDB

Query and manage DynamoDB tables.

List tables

aws dynamodb list-tables --output table

Describe table

aws dynamodb describe-table --table-name my-table | jq '{TableName: .Table.TableName, Status: .Table.TableStatus, ItemCount: .Table.ItemCount, SizeBytes: .Table.TableSizeBytes, KeySchema: .Table.KeySchema, BillingMode: .Table.BillingModeSummary.BillingMode}'

Get item

aws dynamodb get-item --table-name my-table \
  --key '{"pk": {"S": "user#123"}, "sk": {"S": "profile"}}' | jq '.Item'

Query items

aws dynamodb query --table-name my-table \
  --key-condition-expression "pk = :pk" \
  --expression-attribute-values '{":pk": {"S": "user#123"}}' \
  --query 'Items[*]' | jq .

Query with filter

aws dynamodb query --table-name my-table \
  --key-condition-expression "pk = :pk AND begins_with(sk, :prefix)" \
  --expression-attribute-values '{":pk": {"S": "user#123"}, ":prefix": {"S": "order#"}}' \
  --query 'Items[*]' | jq .

Scan table (use carefully)

aws dynamodb scan --table-name my-table --max-items 10 | jq '{Count, ScannedCount, Items: .Items[:3]}'

Put item

aws dynamodb put-item --table-name my-table \
  --item '{"pk": {"S": "user#456"}, "sk": {"S": "profile"}, "name": {"S": "John"}, "email": {"S": "john@example.com"}}'
echo "Item written"

Delete item

aws dynamodb delete-item --table-name my-table \
  --key '{"pk": {"S": "user#456"}, "sk": {"S": "profile"}}'
echo "Item deleted"

Table metrics

aws cloudwatch get-metric-statistics --namespace AWS/DynamoDB \
  --metric-name ConsumedReadCapacityUnits --dimensions Name=TableName,Value=my-table \
  --start-time $(date -u -d '1 hour ago' +%Y-%m-%dT%H:%M:%S) --end-time $(date -u +%Y-%m-%dT%H:%M:%S) \
  --period 300 --statistics Sum --output table

Notes

  • Prefer query over scan; scans read every item and are expensive.
  • DynamoDB uses typed attributes (S for string, N for number, B for binary, etc.).
  • Confirm before writing or deleting items.
Weekly Installs
1
First Seen
Mar 1, 2026
Installed on
amp1
cline1
opencode1
cursor1
kimi-cli1
codex1