From mpuig-claude-cloud-diagrams
Generates AWS architecture diagrams from infrastructure JSON using the Python diagrams library. Supports multiple diagram types and output formats.
How this skill is triggered — by the user, by Claude, or both
Slash command
/mpuig-claude-cloud-diagrams:aws-diagramThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Generate architecture diagrams from `aws_infrastructure.json` using the Python `diagrams` library.
Generate architecture diagrams from aws_infrastructure.json using the Python diagrams library.
Check that aws_infrastructure.json exists in the current directory
Ask user which diagram type they want:
Ask for output format: png (default), svg, or pdf
aws_infrastructure.jsondiagrams librarypython <file>.pyfrom diagrams import Diagram, Cluster, Edge
with Diagram("Title", filename="output_name", outformat="png", show=False):
# Create nodes and connections
Compute:
from diagrams.aws.compute import ECS, Lambda, Fargate, EC2, EKS, Batch, ECR
Database:
from diagrams.aws.database import RDS, Aurora, ElastiCache, Dynamodb, DocumentDB, Neptune, Redshift
Note: Use Dynamodb (not DynamoDB)
Network:
from diagrams.aws.network import ALB, NLB, CloudFront, Route53, VPC, InternetGateway, NATGateway, TransitGateway, Endpoint, APIGateway
Storage:
from diagrams.aws.storage import S3, EFS
Security:
from diagrams.aws.security import WAF, Shield, ACM, Cognito, SecretsManager, KMS, IAM
Integration:
from diagrams.aws.integration import SQS, SNS, Eventbridge, StepFunctions
Note: Use Eventbridge (not EventBridge)
Analytics:
from diagrams.aws.analytics import Kinesis, Athena, Glue, EMR, Quicksight
Management:
from diagrams.aws.management import Cloudwatch, CloudwatchAlarm, Cloudtrail
General (for unknown services):
from diagrams.aws.general import General
External/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:
Guides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Resolves in-progress git merge or rebase conflicts by analyzing history, understanding intent, and preserving both changes where possible. Runs automated checks after resolution.
npx claudepluginhub joshuarweaver/cascade-code-devops-misc-1 --plugin mpuig-claude-cloud-diagrams