Skip to main content
skill CX Codex

signing-in-to-aws — Claude Code skill: what it does, how to install

Walks the agent through signing in to AWS from your local shell: version check, aws login once you confirm, then an identity check on the result.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add aws/agent-toolkit-for-aws --skill signing-in-to-aws -a claude-code
Open on GitHub

What signing-in-to-aws does

The skill does one thing: get working AWS credentials for local work. The agent names the fix first, aws login, then runs its checks without noise. It reads the CLI version and asks aws sts get-caller-identity who you currently are. Valid credentials get reported as Account and Arn, plus a question about switching to another profile rather than overwriting the default. After the login it checks the identity again and reminds you to pass --profile or set AWS_PROFILE if a named profile was used.

Nothing runs until you say so. The skill asks whether it should run aws login and waits for the answer. The command returns short-term credentials that rotate every 15 minutes and stay valid up to 12 hours. On a remote machine with no browser, aws login --remote prints a URL and a code for signing in from another device.

One hard prerequisite: AWS CLI 2.32.0 or later. Anything older stops the flow at the version check. IAM users, roles and groups also need the SignInLocalDevelopmentAccess managed policy attached, while root users skip it. Anyone already on aws sso login is left alone, since that command serves IAM Identity Center setups. CI/CD is out of scope; those credentials come from roles or OIDC federation.

What it helps with

  • sign in to AWS from the terminal with no keys configured
  • swap an expired session for fresh credentials
  • confirm which account and role the agent is acting as
  • authenticate from a remote server that has no browser
  • move a project off long-term AKIA access keys

Example prompts for the agent

  • Set up AWS access for local dev, I have no credentials yet
  • My session expired and calls fail with AccessDeniedException
  • Sign in with --profile staging and leave the default profile alone

How to install signing-in-to-aws

1Skills CLI (Vercel)

npx skills add aws/agent-toolkit-for-aws --skill signing-in-to-aws -a claude-code

2Manually: put the files in place

~/.claude/skills/signing-in-to-aws/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/signing-in-to-aws/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about signing-in-to-aws

How do I install signing-in-to-aws in Claude Code?

Run npx skills add aws/agent-toolkit-for-aws --skill signing-in-to-aws -a claude-code. The skill lands at ~/.claude/skills/signing-in-to-aws/SKILL.md.

What does signing-in-to-aws do?

It gets AWS credentials for CLI and SDK access through aws login, checking the CLI version and current identity first, then running the command in your shell after you approve.

Does it replace aws sso login?

No, and it will not push you there. aws sso login covers organizations running IAM Identity Center with SSO profiles in ~/.aws/config; the skill handles the aws login path.

Source text

SKILL.md · Apache-2.0
---
name: signing-in-to-aws
description: |
  Gets AWS credentials for CLI/SDK access via `aws login`. Activates when a developer needs to authenticate to AWS for local development, when an AWS operation fails due to missing or expired credentials, or when someone asks about setting up AWS access. Triggers: "set up AWS", "configure AWS", "aws login", "get credentials", "authenticate", "session expired", "token expired", "no credentials", "AccessDeniedException" with no configured credentials.
---

# Sign In — Get CLI/SDK Credentials

Help developers get AWS credentials for local development using `aws login`. This provides short-term, auto-rotating credentials that refresh every 15 minutes and remain valid for up to 12 hours.

**Important:**

- You MUST run `aws login` and `aws --version` in the user's local shell — NOT via MCP/API tools.
- You MUST ask the user for confirmation before running `aws login`. Do not tell the user to run the command themselves — ask if YOU should run it (e.g., "Ready for me to run `aws login`?" or "Shall I proceed with `aws login`?"). Wait for their response before proceeding.

## Prerequisites

The `aws login` command requires **AWS CLI version 2.32.0 or later**.

Check the installed version:

```bash
aws --version
```

If the CLI is not installed or is below 2.32.0, inform the user and ask if they'd like to install/update (link them to the [AWS CLI installation guide](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)), or if they'd prefer to continue without this skill's guidance. If they choose to continue without upgrading, respond to their original request as you normally would without this skill.

## Flow

### Lead with the recommendation

In your first response, always tell the user that `aws login` is the fix — explain that it provides short-term, auto-rotating credentials and that it requires AWS CLI 2.32.0 or later. Do not stop at "let me check your CLI version" — name the remediation up front so the user knows where this is going, then describe the precondition checks you'll run before invoking it.

### Precondition checks (run silently before asking confirmation)

Run these via the local shell to inform your plan. Report what you find, but do not gate the recommendation on user-supplied output:

1. `aws --version` — confirm the CLI is 2.32.0 or later. If not installed or too old, point the user to the [AWS CLI installation guide](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) and stop.
2. `aws sts get-caller-identity` — check current credentials.
   - **Succeeds**: Show the user their Account and Arn. Ask whether to keep these or set up different credentials. If they want to switch, recommend `aws login --profile <name>` so the existing default isn't overwritten.
   - **Fails** (missing or expired): proceed with `aws login` on the default profile.
3. *(Only if Step 2 succeeded and the user wants different credentials)* `aws configure list` — if `access_key` starts with `AKIA`, explain that long-term access keys are less secure (never expire, persist on disk as secrets, grant indefinite access if leaked) and that `aws login` provides short-term credentials that auto-rotate every 15 minutes, expire automatically, and require no manual rotation.

### Confirm and run aws login

Once preconditions are clear, ask the user for confirmation specifically for the `aws login` invocation — and only there. Do not tell the user to run the command themselves; ask if you should run it (e.g., "Ready for me to run `aws login`?" or "Shall I proceed with `aws login --profile staging`?"). Wait for their response, then run `aws login` (or `aws login --profile <name>`).

### Verify

After `aws login` completes, run `aws sts get-caller-identity` (with `--profile` if used) to confirm success. If a named profile was used, remind the user to pass `--profile` or set `AWS_PROFILE`.

## Handling Errors

### "command not found" or version too old

The CLI is not installed or below 2.32.0. Direct the user to install or update: [AWS CLI installation guide](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html).

### Browser doesn't open

Suggest `aws login --remote` which provides a URL and code for cross-device authentication (e.g., when using a remote server without a browser).

### Permission error after login

The IAM identity needs the `SignInLocalDevelopmentAccess` managed policy attached (to the user, role, or group). Root users do not need it. Tell the user to ask their administrator to add it, or attach it themselves if they have IAM permissions.

### GovCloud or China regions

`aws login` is not available in AWS GovCloud (US) or AWS China regions. Do not mention this exception proactively — only relevant if the user explicitly states they are in one of these partitions.

## Users With Existing `aws sso login` Workflows

If the user mentions `aws sso login` or has an existing SSO configuration, do NOT redirect them to `aws login`. These are different commands for different situations:

- `aws sso login` is for users whose organization has configured AWS IAM Identity Center (SSO). They have profiles in `~/.aws/config` pointing at an SSO start URL. Respect their established workflow.
- If their `aws sso login` is failing, help troubleshoot within their context: expired SSO session, revoked authorization, cached token issues (`~/.aws/sso/cache/`), or Identity Center configuration changes.

## Fallback to `aws configure`

Do NOT mention `aws configure` in your initial response or include it as a table row alongside `aws login`. Only offer it as an alternative if:

1. The user explicitly declines `aws login` or asks for alternatives
2. The user states they are in GovCloud or China regions (where `aws login` is unavailable)

When offering it, explain that long-term access keys are less secure: they persist on disk as plaintext, never expire automatically, and grant indefinite access if leaked.

## When NOT to Use This Skill

- User is setting up CI/CD credentials — they need IAM roles or OIDC federation, not `aws login`

## Key Points

- Do not front-load troubleshooting — keep the initial response simple and address errors only if they occur
- `aws login` works with root users, IAM users and federation with IAM

## Additional Resources

- [Sign in through the AWS CLI](https://docs.aws.amazon.com/signin/latest/userguide/command-line-sign-in.html)
- [Installing or updating the AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)
- [SignInLocalDevelopmentAccess managed policy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/SignInLocalDevelopmentAccess.html)
- [IAM security best practices](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)

© aws · Apache-2.0 · aws/agent-toolkit-for-aws

Similar skills

Everything for Cloud: AWS, Azure, GCP →

From the same set133

creating-production-vpc-multi-az Plan a VPC across multiple Availability Zones, with public and private subnets, NAT gateways, routing, and security groups. Use it when setting up AWS network infrastructure. CX Codex +1 6,100installs creating-amazon-aurora-db-cluster-with-instances Creates Aurora cluster with instances, sets up password via Secrets Manager, and monitors status with retry logic. Supports MySQL and PostgreSQL. CX Codex +1 6,000installs setting-up-cloudtrail-multi-region Configures a multi-region AWS CloudTrail trail with S3 storage and CloudWatch Logs streaming. Useful for centralizing API audit logs and running security queries. CX Codex +1 6,100installs exporting-rds-to-s3 Walks the agent through exporting an RDS or Aurora snapshot to S3 as Parquet, from IAM roles and KMS encryption to task monitoring and data checks. CX Codex +1 6,100installs connecting-vpcs-with-peering Sets up VPC peering connections between two VPCs for private network connectivity. It checks for CIDR overlap, updates route tables, and configures DNS resolution. CX Codex +1 6,100installs enabling-lambda-vpc-internet-access A skill that walks the agent through NAT Gateway, route tables and security groups when a Lambda in a private subnet cannot reach the internet. CX Codex +1 6,100installs troubleshooting-efs A skill that walks the agent through Amazon EFS failures: mount errors, NFS timeouts, access denied, slow throughput. CX Codex +1 5,900installs aws-deployment Walks your coding agent through AWS CI/CD: CodePipeline, CodeBuild, CodeDeploy, CodeConnections, CodeArtifact. Useful when a pipeline stalls at source or a build hangs in a VPC. CX Codex +1 5,800installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor