
Aws Sdk Swift Usage
- 3k installs
- 2.2k repo stars
- Updated August 4, 2026
- aws/agent-toolkit-for-aws
|
About
The aws sdk swift usage skill |. Documentation covers workflows, commands, and guardrails agents should follow when users invoke this capability. Key documented areas include `S3Client.S3ClientConfig` (not S3ClientConfiguration); `DynamoDBClient.DynamoDBClientConfig` (not DynamoDBClientConfiguration); `STSClient.STSClientConfig` (not STSClientConfiguration); `S3ClientTypes.Bucket`, `S3ClientTypes.Object`. Reference commands include @main; struct Main {. Use when developers or agents need structured guidance for aws sdk swift usage tasks with evidence grounded in the bundled SKILL.md rather than generic advice. `S3Client.S3ClientConfig` (not S3ClientConfiguration) `DynamoDBClient.DynamoDBClientConfig` (not DynamoDBClientConfiguration) `STSClient.STSClientConfig` (not STSClientConfiguration) `S3ClientTypes.Bucket`, `S3ClientTypes.Object` `DynamoDBClientTypes.AttributeValue` `CloudWatchClientTypes.MetricDatum`, `CloudWatchClientTypes.Dimension` `awsCredentialIdentityResolver` - Custom credentials `useFIPS` - Enable FIPS endpoints |
- `S3Client.S3ClientConfig` (not S3ClientConfiguration)
- `DynamoDBClient.DynamoDBClientConfig` (not DynamoDBClientConfiguration)
- `STSClient.STSClientConfig` (not STSClientConfiguration)
- `S3ClientTypes.Bucket`, `S3ClientTypes.Object`
- `DynamoDBClientTypes.AttributeValue`
Aws Sdk Swift Usage by the numbers
- 3,018 all-time installs (skills.sh)
- +412 installs in the week ending Aug 5, 2026 (Skillselion tracking)
- Ranked #140 of 1,039 Cloud & Infrastructure skills by installs in the Skillselion catalog
- Security screen: HIGH risk (skills.sh audit)
- Data as of Aug 5, 2026 (Skillselion catalog sync)
aws-sdk-swift-usage capabilities & compatibility
- Capabilities
- `s3client.s3clientconfig` (not s3clientconfigura · `dynamodbclient.dynamodbclientconfig` (not dynam · `stsclient.stsclientconfig` (not stsclientconfig · `s3clienttypes.bucket`, `s3clienttypes.object` · `dynamodbclienttypes.attributevalue`
npx skills add https://github.com/aws/agent-toolkit-for-aws --skill aws-sdk-swift-usageAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 3k |
|---|---|
| repo stars | ★ 2.2k |
| Security audit | 2 / 3 scanners passed |
| Last updated | August 4, 2026 |
| Repository | aws/agent-toolkit-for-aws ↗ |
How do I handle aws sdk swift usage tasks with agent guidance?
|
Who is it for?
Teams needing documented aws sdk swift usage workflows.
Skip if: Teams building only REST backends in non-Swift languages or managing AWS infrastructure with Terraform instead of application SDK code.
When should I use this skill?
|
What you get
Structured workflow from aws sdk swift usage documentation applied to the user request.
- Swift AWS client modules
- Struct-based service config snippets
Files
AWS SDK for Swift
Async Code Structure
All SDK operations are async. Use @main entry point:
@main
struct Main {
static func main() async throws {
let client = try await S3Client()
// ... async operations
}
}CRITICAL: Use Struct Config Types
NEVER use S3ClientConfiguration or DynamoDBClientConfiguration - these are DEPRECATED classes.
ALWAYS use the struct-based config types:
S3Client.S3ClientConfig(not S3ClientConfiguration)DynamoDBClient.DynamoDBClientConfig(not DynamoDBClientConfiguration)STSClient.STSClientConfig(not STSClientConfiguration)
Config parameters MUST be in declaration order. Region is ALWAYS required when creating a config. Check the service client source for exact order.
// CORRECT - struct config
let config = try await S3Client.S3ClientConfig(region: "us-west-2")
let client = S3Client(config: config)
// WRONG - deprecated class
// let config = try await S3Client.S3ClientConfiguration(region: "us-west-2")Client Creation
All service clients follow the same pattern: <Service>Client with <Service>Client.<Service>ClientConfig.
Model types (structs/enums used in requests/responses) are namespaced under <Service>ClientTypes:
S3ClientTypes.Bucket,S3ClientTypes.ObjectDynamoDBClientTypes.AttributeValueCloudWatchClientTypes.MetricDatum,CloudWatchClientTypes.Dimension
import AWSS3
import AWSDynamoDB
// Simple - auto-detects region
let s3 = try await S3Client()
let dynamo = try await DynamoDBClient()
// With region
let s3 = try S3Client(region: "us-west-2")
// With config - parameters must be in declaration order
let config = try await S3Client.S3ClientConfig(
useFIPS: true,
awsRetryMode: .adaptive,
maxAttempts: 5,
region: "us-west-2"
)
let client = S3Client(config: config)
// With custom endpoint and credentials
let config = try await S3Client.S3ClientConfig(
awsCredentialIdentityResolver: resolver,
region: "us-west-2",
endpoint: "https://s3.custom-endpoint.com"
)Common config parameters (MUST follow declaration order):
awsCredentialIdentityResolver- Custom credentialsuseFIPS- Enable FIPS endpointsuseDualStack- Enable dual-stack endpointsawsRetryMode- Retry strategy (.adaptive, .standard, .legacy)maxAttempts- Max retry attemptsregion- AWS regionhttpClientEngine- Custom HTTP client (requires HttpClientConfiguration parameter):
import ClientRuntime
let httpConfig = HttpClientConfiguration()
let httpClient = URLSessionHTTPClient(httpClientConfiguration: httpConfig)
let config = try await S3Client.S3ClientConfig(
region: "us-east-1",
httpClientEngine: httpClient
)endpoint- Custom endpoint URL
For service-specific config options or exact parameter order, check Sources/Services/AWS<Service>/Sources/AWS<Service>/<Service>Client.swift in the SDK.
Credential Resolvers
import AWSSDKIdentity
import SmithyIdentity
// Static credentials - pass credential object directly
let creds = AWSCredentialIdentity(accessKey: "AKIA...", secret: "...")
let resolver = StaticAWSCredentialIdentityResolver(creds)
// Assume role - REQUIRES underlying resolver
let underlying = try DefaultAWSCredentialIdentityResolverChain()
let resolver = try STSAssumeRoleAWSCredentialIdentityResolver(
awsCredentialIdentityResolver: underlying,
roleArn: "arn:aws:iam::123456789012:role/MyRole",
sessionName: "session-name"
)
// Use in config
let config = try await S3Client.S3ClientConfig(
awsCredentialIdentityResolver: resolver,
region: "us-west-2"
)Waiters
Import SmithyWaitersAPI. WaiterOptions requires maxWaitTime parameter:
import AWSS3
import SmithyWaitersAPI
let client = try await S3Client()
_ = try await client.waitUntilBucketExists(
options: WaiterOptions(maxWaitTime: 120.0),
input: HeadBucketInput(bucket: "my-bucket")
)Pagination
let input = ListObjectsV2Input(bucket: "my-bucket")
for try await page in client.listObjectsV2Paginated(input: input) {
for object in page.contents ?? [] {
print(object.key ?? "")
}
}Presigned URLs
let url = try await client.presignedURLForGetObject(
input: GetObjectInput(bucket: "my-bucket", key: "file.pdf"),
expiration: 3600
)Common Operations
// Put object
_ = try await client.putObject(input: PutObjectInput(
body: .data(data),
bucket: "bucket",
key: "key"
))
// Get object
let output = try await client.getObject(input: GetObjectInput(bucket: "bucket", key: "key"))
let data = try await output.body?.readData()
// List buckets
let response = try await client.listBuckets(input: ListBucketsInput())
for bucket in response.buckets ?? [] {
print(bucket.name ?? "")
}Related skills
How it compares
Pick aws-sdk-swift-usage over generic AWS CLI skills when the target artifact is Swift application code using the official aws-sdk-swift package.
FAQ
What does aws sdk swift usage do?
|
When should I invoke aws sdk swift usage?
|
What are key capabilities?
`S3Client.S3ClientConfig` (not S3ClientConfiguration)
Is Aws Sdk Swift Usage safe to install?
skills.sh reports 2 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.