aws_multi_region
Run AWS API operations simultaneously across multiple regions, handling partial failures per region. Use for fleet-wide tasks like describing instances or listing buckets in all regions.
Instructions
Run the same AWS API operation across multiple regions in parallel. Same shape as aws_call (service, operation, params?, query?, outputFormat?, timeoutMs?) but takes regions: string[] instead of region. Returns an array of {region, ok, data?, command?, error?, errorKind?} -- partial failure is expected (services aren't everywhere, perms may be region-scoped). Duplicate regions in the input are collapsed (first occurrence wins), so results.length may be less than regions.length; use the returned regionCount for the actual count run. Use for fleet-wide reads: 'describe-instances across all our regions', 'list buckets in every region', 'check IAM password policy everywhere'.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| service | Yes | AWS service in kebab-case: 's3api', 'ec2', 'iam', etc. | |
| operation | Yes | Operation in kebab-case: 'describe-instances', 'list-buckets', etc. | |
| regions | Yes | Region IDs (e.g. ['us-east-1','us-west-2','eu-west-1']). 1-32. Validated for argv-safety; a bad region name yields a clear per-region error and skips its CLI spawn (per-region isolation comes from each region being a separate call, not from this pre-check). | |
| params | No | Operation parameters (PascalCase keys) -- same shape as aws_call. | |
| query | No | JMESPath expression for --query (server-side trimming per region). | |
| outputFormat | No | Output format. Default 'json'. | |
| profile | No | Override session profile for the batch. | |
| timeoutMs | No | Timeout in ms applied PER region. Default 60000. | |
| concurrency | No | Max regions in flight at once (1-32). Default 8. |