Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when working with AWS resources — ECS Fargate, ECR, EFS, Secrets Manager, gomplate templates, multi-env deployments — even when the user says 'deploy to staging' without naming AWS.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Use this skill when working with AWS infrastructure, deployment configurations, ECS task definitions, or environment-specific settings.
Do NOT use when:
docker skill).aws/ directory (or equivalent) for environment configs and templates..github/workflows/) for the deployment pipeline.agents/overrides/skills/aws-infrastructure.md for project-specific service names, prefixes, and infrastructure details.| Environment | Trigger | Notes |
|---|---|---|
| Review | PR with label | Ephemeral, per-branch |
| Stage | Push to main | Persistent, pre-production |
| Production | Release tag | Persistent, live |
| Service | Purpose |
|---|---|
| ECS Fargate | Container orchestration (no EC2 instances) |
| ECR | Docker image registry |
| EFS | Shared filesystem (private + public access points) |
| Secrets Manager | .env file storage per environment |
| IAM Roles | OIDC-based GitHub Actions authentication |
| VPC | Networking (security groups, subnets) |
Environment-specific config files (e.g., .aws/*.vars.yaml) typically contain:
AWS:
GlobalPrefix: {project}-{env} # Resource naming prefix
Region: eu-central-1 # AWS region
RoleArn: arn:aws:iam::... # GitHub Actions OIDC role
ECS:
Cluster: {project}-{env} # ECS cluster name
VPC:
SecurityGroups: [...]
Subnets: [...]
EFS:
FileSystemId: fs-...
Read the actual vars files in the project for concrete values.
Templates commonly use gomplate for rendering. Typical templates:
| Template | Purpose |
|---|---|
task-definition-web.tpl.yaml | Web server (app + reverse proxy) |
task-definition-worker.tpl.yaml | Queue worker |
task-definition-scheduler.tpl.yaml | Task scheduler (cron) |
task-definition-migrations.tpl.yaml | One-shot migration runner |
Template variables:
{{ .Env.DockerImage }} — Full ECR image URI with tag{{ .Env.CommitHash }} — Git commit SHA{{ (ds "Vars").AWS.* }} — Values from the vars filelatest)aws-actions/configure-aws-credentials handles the OIDC exchange.sha-<full-commit-sha> (immutable)latest (Stage/Production) or <review-env-name> (Review).env files are stored in AWS Secrets Manager.<GlobalPrefix>-dotenv.linux/arm64 for Graviton, linux/amd64 for x86).The underlying AWS resources (ECS clusters, ALBs, RDS, Redis, IAM roles, security groups, etc.) are typically managed via Terraform + Terragrunt in a separate infrastructure repository.
See the terraform and terragrunt skills for general IaC conventions.
The conventions above describe how this project deploys. This section is the floor underneath them, and it holds whether or not a given resource is managed here or in the infrastructure repo.
Action: * and
Resource: * are not shorthand for "we will scope it later" - one
compromised task credential then reaches every service and object in the
account. A wildcard needs a named, reviewed exception written beside it.publicly_accessible left true, a volume or snapshot with no
encryption block - each of these works either way, which is why it survives
review. Treat an absent security block as a finding, not as a silence..vars.yaml or a task-definition template is
the same defect as one in .tf, and the state and template files are as
readable as the code.Do not restate the mitigation here. The abuse case, the required controls, and
the negative test for each of the four live in the infrastructure surface
class of threat-modeling's corpus, which is
their single authority. Ask that skill's grounded-corpus step for the
infrastructure surface class - it carries the invocation - describing the
change, e.g. iam role with a wildcard action.
Those rows carry a Decided by: clause naming the check that actually decides
each one. For the IAM, networking, storage, and encryption rows it reads NO
CHECK IN THIS REPOSITORY; only the credential-in-a-file row names a real gate.
Nothing here parses IAM policy documents or cloud config, so the discipline
above is the enforcement, and saying otherwise would claim coverage this
package does not have.
See also the terraform skill's Permissive defaults and missing security
blocks section for the backstop greps over a .tf tree.
{{ }} which conflicts with other template engines — escape carefully.GlobalPrefix — it's used for resource naming across AWS.まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when defining or auditing the activation event — aha-moment selection, retention correlation, falsifiable definition. Triggers on 'what is our aha moment', 'redefine activation'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when capturing an architectural decision — file naming, next ADR number, Status / Context / Decision / Consequences, index regen; fires even without saying 'ADR'.
日本語の概要は準備中です。原文の説明を表示しています。
Adversarial critique — devil's advocate, stress-test, honest teardown ('poke holes', 'be brutal', 'was hältst du davon'); explicit request only. Routine code or design review → code-review.
日本語の概要は準備中です。原文の説明を表示しています。
Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure.
日本語の概要は準備中です。原文の説明を表示しています。
Use for an adversarial red-team / blue-team / auditor review of an AI agent's CONFIG + behaviour (rules, skills, MCP, hooks, permissions) — attack-chain → defensive-gap list, not a code audit.
日本語の概要は準備中です。原文の説明を表示しています。