● コミュニティ
zxkane
⚡ 即起動
aws-skills
作者 zxkane · zxkane/aws-skills
AWS向けのClaudeエージェントスキル — 主要サービスをカバーするシェルファーストのワークフローで、適切なデフォルト設定と最小権限IAMを備えています。
aws-skillsは一般的なAWS CLIワークフローをエージェントスキルとしてラップします:EC2フリートオペレーション、S3ポリシーチェック、IAM監査、CloudFormation/CDKスキャフォールディング、コストクエリに対応。シェルファーストのため、実行されるコマンドを常に確認できます。IaCにはTerraSharkとの併用が効果的です。
なぜ使うのか
主な機能
- シェルファースト — 実行前にコマンドを確認可能
- 主要サービスに対応:EC2、S3、IAM、Lambda、CloudFormation、Cost Explorer
- 最小権限IAMをデフォルトで適用
- リージョンとプロファイルを自動認識
- Claude CodeおよびCodexと連携可能
ユースケース
実用的な使い方: aws-skills
使うタイミング: タグに一致するインスタンスグループのパッチ適用や再起動が必要だが、スクリプトを一から書きたくない場合に使用します。
フロー
-
ドライランでクエリを実行
Use aws-skill. List EC2 instances tagged Env=staging, App=api. Just describe, don't mutate.✓ コピーしました
→ インスタンスIDと状態の一覧テーブル
-
アクションを計画
Now propose the command to restart all running ones. Show me the exact aws cli call before running it.✓ コピーしました
→ コマンドが表示されるが、まだ実行されない
-
ガードレール付きで実行
Execute in batches of 3 with 30s between batches. Abort if any fails.✓ コピーしました
→ バッチごとの成功/失敗を含むバッチ出力
結果: 予期しない問題が発生しない、制御されたフリートオペレーション。
注意点
- プロファイル/リージョンの誤りで本番環境を破壊 — アクション実行時の最初の行で、解決済みのプロファイルとリージョンを必ず表示する
使うタイミング: コンプライアンスレビューの前や、設定ミスのアラートが発生した後に使用します。
フロー
-
バケットの一覧取得
List all S3 buckets in our account with their public access block settings and any bucket policies that allow *.✓ コピーしました
→ バケットごとのステータスを含むテーブル
-
トリアージ
Flag buckets that have public access and don't match our known public-bucket allowlist (list: [...]). Propose remediation for each.✓ コピーしました
→ フラグ付きバケットごとの修復プラン
結果: S3パブリック公開に対する優先度付き修復リスト。
注意点
- CloudFront用のOAI/OACがバケットレベルではパブリックに見える — フラグを立てる前にCloudFrontのオリジン設定を確認する
使うタイミング: サービスアカウントがAdministratorAccessで動作しており、権限を適切にスコープダウンしたい場合に使用します。
フロー
-
使用状況の収集
Pull the Access Analyzer / CloudTrail-derived actions used by this role over last 30 days.✓ コピーしました
→ アクション一覧テーブル
-
スコープされたポリシーの生成
Write the minimal policy matching those actions. No wildcard Resource unless necessary; comment where wildcards are justified.✓ コピーしました
→ コメント付きポリシーJSON
結果: 根拠が文書化された最小権限ポリシー。
注意点
- 30日間ではすべてのパスを捕捉するのに十分でない場合がある — ポリシーを切り替える前に、既知の月次・四半期ジョブと照合して検証する
使うタイミング: 財務部門から「なぜ4月にS3の支出が急増したのか」と聞かれ、会議前に回答を用意したい場合に使用します。
フロー
-
クエリ実行
Use Cost Explorer to compare S3 spend April vs March by usage type.✓ コピーしました
→ 使用タイプ別の差分テーブル
-
説明
Which usage type grew most, and which bucket is most likely responsible?✓ コピーしました
→ 具体的なバケット候補を含む仮説
結果: フォローアップ可能な具体的な原因特定。
組み合わせ
他のMCPと組み合わせて10倍の力を
単発オペレーションにはaws-skill、コード化されたインフラにはTerraSharkを使用
aws-skillで調査し、修正内容をterrasharkでTerraformとしてコード化する。✓ コピーしました
IAMおよびS3設定のセキュリティレビュー
IAMスコーピング後、生成されたポリシーに対してOWASPレビューを実行する。✓ コピーしました
コストと制限
運用コスト
- APIクォータ
- AWS APIの制限はサービスごとに異なりますが、対話的な使用では通常問題になりません
- 呼び出しあたりのトークン
- 計画段階で5〜15k。実行時にClaudeトークンは消費されません
- 金額
- スキル自体は無料。AWSの使用料は通常通り課金されます
- ヒント
- Cost Explorer APIにはリクエスト単位の料金が発生します。反復作業時は結果をキャッシュしてください。
セキュリティ
権限、シークレット、影響範囲
認証情報の保管: 標準のAWS CLIクレデンシャル(共有コンフィグ、SSO)を使用します。スキルはアクティブなプロファイルを読み取ります。
データ送信先: すべてのAWS API呼び出し。コマンド出力にはARNやタグなどの機密データが含まれる場合があります。
絶対に付与しない: AdministratorAccess for interactive use
- 破壊的なコマンドの実行前に、必ずアクティブなプロファイルとリージョンを確認してください。スキルは実行前に両方を表示します — この確認を省略しないでください。
- 長期間有効なアクセスキーではなく、SSOの短期クレデンシャルを使用してください。
トラブルシューティング
よくあるエラーと対処法
正しいプロファイルにもかかわらずAccessDeniedが発生
ロールセッションが期限切れの可能性があります。再認証してください(aws sso login またはSTSリフレッシュ)
確認: aws sts get-caller-identity
コマンドが誤ったリージョンに送信される
スキルはAWS_REGION環境変数を参照します。明示的に設定するか、呼び出しごとに--regionを指定してください
大規模フリートオペレーション時のRate-limiting
スキルのバッチモードを使用し、遅延を設定してください
代替案
aws-skills 他との比較
| 代替案 | 代わりに使う場面 | トレードオフ |
| AWS MCP server | シェルファーストではなくネイティブMCPツールコールを使用したい場合 | シェルの可視性が低下し、信頼モデルが異なります |