원클릭으로
aws-cli
Use when interacting with AWS - managing S3, EC2, Lambda, IAM, CloudFormation, ECS/EKS, RDS, DynamoDB, CloudWatch, or any AWS service
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Use when interacting with AWS - managing S3, EC2, Lambda, IAM, CloudFormation, ECS/EKS, RDS, DynamoDB, CloudWatch, or any AWS service
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | aws-cli |
| description | Use when interacting with AWS - managing S3, EC2, Lambda, IAM, CloudFormation, ECS/EKS, RDS, DynamoDB, CloudWatch, or any AWS service |
MANDATORY: All AWS CLI commands MUST run in subagents.
Use Task tool with
subagent_type: "general". Never runawsdirectly in your session. AWS operations can be long-running, may require investigation, and must be isolated from your main context. No exceptions.
aws <service> <command> [options]
You are running in a subagent. Use built-in help to discover commands and options:
aws help - List all servicesaws <service> help - List commands for a serviceaws <service> <command> help - Full command documentation with all flagsThis is the preferred way to learn command syntax rather than guessing.
| Flag | Purpose |
|---|---|
--output json | Scriptable output (also: text, table) |
--query <expr> | JMESPath filtering |
--profile <name> | Use named profile |
--region <r> | Specify region |
--no-cli-pager | Disable pager (critical for scripts) |
REQUIRED: Always specify
--profileand--region: Do not rely on defaults or environment variables. Every command must include--profile <name> --region <region>for predictable, explicit behavior.
Before running ANY AWS command, discover available profiles:
aws configure list-profiles
Profile selection logic:
prodqadevExample inference:
Available: default, mycompany-dev, mycompany-prod, mycompany-qa
Task: "Check production EC2 instances"
→ Infer: mycompany-prod (contains "prod", matches "production" in task)
When to ask (use Question tool):
prod-us, prod-eu when task says "production")All commands require
--profile <p> --region <r>(omitted below for brevity)
| Task | Command |
|---|---|
| Caller identity | aws sts get-caller-identity |
| List S3 buckets | aws s3 ls |
| Describe instances | aws ec2 describe-instances |
| List functions | aws lambda list-functions |
| Deploy stack | aws cloudformation deploy --template-file t.yaml --stack-name s |
| Get secret | aws secretsmanager get-secret-value --secret-id name |
# Filter by tag
--query 'Reservations[].Instances[?Tags[?Key==`Name`].Value|[0]==`web`]'
# Extract specific fields
--query 'Reservations[].Instances[].[InstanceId,State.Name]' --output table
# Get first matching item
--query 'Buckets[?starts_with(Name,`prod`)].Name | [0]' --output text
--profile or --region: Commands may target wrong account/region silentlyaws directly: Always delegate to subagent via Task toolaws <service> <command> help instead of guessing flags--no-cli-pager or AWS_PAGER=""| Excuse | Reality |
|---|---|
| "I'll just run this one command quickly" | AWS commands can hang on pager, trigger rate limits, or need retries. Context isolation protects your main session. |
| "The default profile/region is fine" | Defaults change, env vars get misconfigured. One wrong-account command can cause outages. |
| "I remember this syntax" | AWS CLI has 200+ services with dozens of commands each. Memory errors are guaranteed. Use aws help. |
| "This is a read-only command, it's safe" | Safety isn't the issue—context isolation is. Even describe can reveal you need 5 more commands. |
| "Subagent overhead is unnecessary" | Subagent launch takes seconds; debugging context pollution takes minutes. |
| "I can guess which profile to use" | Profile names vary wildly. Run aws configure list-profiles - takes 1 second, prevents wrong-account disasters. |
| "There's probably only one profile" | Many systems have 5+ profiles. Discovery is cheap; wrong-account commands are expensive. |
| "Asking the user slows things down" | Running against wrong account is slower. When in doubt, ask. |
All of these mean: Delegate to subagent. No exceptions.
When delegating AWS tasks, include in your subagent prompt:
aws configure list-profiles first to discover available profiles--profile <name> --region <region> explicitlyaws <service> <command> help to verify syntaxExample dispatch prompt (profile specified):
Check the status of EC2 instance i-0abc123 in us-east-1 using profile 'prod'. Load the aws-cli skill first and check ./gotchas.md. Use explicit --profile and --region flags. Report instance state and any relevant details.
Example dispatch prompt (profile NOT specified):
Check if our production Lambda functions are healthy. Load the aws-cli skill first. Run
aws configure list-profilesto discover available profiles. Infer the correct profile from context (look for 'prod' in profile names). If multiple profiles match or none match, ask the user which profile to use. Check ./gotchas.md, use explicit --profile and --region.
See: ./gotchas.md (in this skill's directory) for non-obvious behaviors that cause common errors.
TODO: This skill needs TDD validation per writing-skills guidelines.
Required tests:
- Pressure scenario: "Urgently check if EC2 instance is running" - verify subagent delegation
- Pressure scenario: "Quick S3 bucket check" - verify --profile/--region compliance
- Document baseline rationalizations agents use without skill loaded
- Verify skill changes agent behavior under pressure
Use when querying or automating Jira - sprints, issues, epics, stories, boards, or correlating Jira data with external systems
Based on our current conversion write a document with high level user stories representing the valuable increments the work can be split into
Grilling session for MBM that challenges a plan against the existing domain model, sharpens terminology using UBIQUITOUS_LANGUAGE.md, and updates MBM docs/KDRs as decisions crystallise. Use when the user wants to stress-test a plan against MBM's language and documented decisions.
Use the `mdc` CLI to publish local Markdown files to Confluence and fetch/pull Confluence pages back into Markdown files. Use when the user asks to publish, update, sync, pull, fetch, or create Confluence pages from markdown, including shorthand like "Publish this KDR".
Use the local Playwright browser tools to browse websites, navigate pages, extract visible text or HTML, take screenshots, and fill simple forms. Use when the user asks to inspect a live website, click through a flow, capture a screenshot, or read content that requires a real browser.
Use when querying or automating Jira - sprints, issues, epics, stories, boards, or correlating Jira data with external systems