aws-diagram — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited aws-diagram (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Generate architecture diagrams from aws_infrastructure.json using the Python diagrams library.
aws_infrastructure.json exists in the current directoryaws_infrastructure.jsondiagrams librarypython <file>.pyfrom diagrams import Diagram, Cluster, Edge
with Diagram("Title", filename="output_name", outformat="png", show=False):
# Create nodes and connectionsCompute:
from diagrams.aws.compute import ECS, Lambda, Fargate, EC2, EKS, Batch, ECRDatabase:
from diagrams.aws.database import RDS, Aurora, ElastiCache, Dynamodb, DocumentDB, Neptune, RedshiftNote: Use Dynamodb (not DynamoDB)
Network:
from diagrams.aws.network import ALB, NLB, CloudFront, Route53, VPC, InternetGateway, NATGateway, TransitGateway, Endpoint, APIGatewayStorage:
from diagrams.aws.storage import S3, EFSSecurity:
from diagrams.aws.security import WAF, Shield, ACM, Cognito, SecretsManager, KMS, IAMIntegration:
from diagrams.aws.integration import SQS, SNS, Eventbridge, StepFunctionsNote: Use Eventbridge (not EventBridge)
Analytics:
from diagrams.aws.analytics import Kinesis, Athena, Glue, EMR, QuicksightManagement:
from diagrams.aws.management import Cloudwatch, CloudwatchAlarm, CloudtrailGeneral (for unknown services):
from diagrams.aws.general import GeneralExternal/Users:
from diagrams.onprem.network import Internet
from diagrams.onprem.client import Users# Left to right flow
node1 >> node2
node1 >> Edge(label="HTTPS") >> node2
# Multiple targets
node1 >> [node2, node3]with Cluster("VPC"):
with Cluster("Public Subnet"):
alb = ALB("Load Balancer")
with Cluster("Private Subnet"):
app = Fargate("App")Show overall infrastructure:
Show security controls:
Show network topology:
Show data movement:
Use these filenames:
aws_architecture.pngaws_security.pngaws_network.pngaws_data_flow.pngshow=False in Diagram constructorGeneralfrom diagrams import Diagram, Cluster
from diagrams.aws.compute import Fargate
from diagrams.aws.database import RDS, ElastiCache
from diagrams.aws.network import ALB, InternetGateway
from diagrams.aws.storage import S3
from diagrams.onprem.network import Internet
with Diagram("AWS Architecture - MyProject (PROD)", filename="aws_architecture", outformat="png", show=False):
internet = Internet("Users")
with Cluster("VPC: 10.0.0.0/16"):
igw = InternetGateway("IGW")
with Cluster("Public Subnet"):
alb = ALB("Public ALB")
with Cluster("Private Subnet"):
with Cluster("ECS Cluster"):
svc1 = Fargate("api")
svc2 = Fargate("worker")
db = RDS("Aurora")
cache = ElastiCache("Redis")
s3 = S3("Assets")
internet >> igw >> alb >> [svc1, svc2]
svc1 >> [db, cache, s3]
svc2 >> [db, s3]Tell the user:
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.