agentleFS
seandkendallseandkendall/kiro-config/skills/aws-architecture-diagram/SKILL.md

aws-architecture-diagram

Skill8 starsChanged 43 days agoApache-2.0View on GitHub

Generate validated AWS architecture diagrams as draw.io XML using official AWS4 icon libraries. Triggers when user wants to create, generate, or design AWS architecture diagrams, cloud infrastructure diagrams, or system design visuals. Supports codebase analysis and brainstorming modes.

5 other projects use a version of this.

Adopted by

Most recently taken up by

The file

Show its rules and text

We split this skill into the rules it gives an agent

16 rules. 0 are common, 5 are distinctive, and 11 are very specific to this project.

  • 0

    Common

    Most of the 5 edited versions we read keep these.

  • 5

    Distinctive

    This author's own choices. Worth a look.

  • 11

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use this skill (aws-architecture-diagram) when the user wants editable draw.io XML they can refine in app.diagrams.net before exporting

    line 13
  2. Very specific:

    Use aws-diagram-png (the awsdac-based skill) when the user wants a PNG image directly for slides, docs, or PRs

    line 14
  3. Very specific:

    Use aws-diagram-html when the user wants a polished, self-contained HTML page (inline SVG, official icons, verified non-overlapping lines) …

    line 15
  4. Distinctive:

    If user says "analyze", "scan", "from code", or references their existing project:

    line 30
  5. Distinctive:

    If user describes an architecture or says "brainstorm"/"design"/"from scratch":

    line 39
  6. Distinctive:

    Ask 3-5 focused questions (purpose, services, scale, security, traffic pattern)

    line 41
  7. Very specific:

    Font: ALL text MUST use fontFamily=Helvetica.

    line 47
  8. Very specific:

    Dark mode: ALL structural elements use light-dark() fills with fillStyle=auto.

    line 50
  9. Very specific:

    Region groups: Use container=0 (decoration-only)

    line 51
  10. Very specific:

    Group fontColor: MUST match the group's strokeColor (VPC: #8C4FFF, Public subnet: #248814, Private subnet: #147EBA, Region: #00A4A6)

    line 52
  11. Very specific:

    Use mxgraph.aws4.* namespace with resourceIcon;resIcon= for service icons

    line 73
  12. Very specific:

    Use descriptive cell IDs: vpc-1, lambda-orders, s3-assets

    line 74
  13. Distinctive:

    NEVER use compressed/base64 diagram content

    line 76
  14. Very specific:

    NEVER use double hyphens (--) inside XML comments

    line 77
  15. Very specific:

    Create docs/ directory if needed

    line 90
  16. Distinctive:

    Only include services the user mentions or that are core to the data flow — do NOT add cross-cutting concerns (IAM, CloudWatch, CloudTrail, …

    line 93

“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

AWS Architecture Diagram Generator

Generate draw.io XML files with official AWS4 icons matching the style of AWS Reference Architecture diagrams.

When to Use This Skill vs. aws-diagram-png

  • Use this skill (aws-architecture-diagram) when the user wants editable draw.io XML they can refine in app.diagrams.net before exporting
  • Use aws-diagram-png (the awsdac-based skill) when the user wants a PNG image directly for slides, docs, or PRs
  • Use aws-diagram-html when the user wants a polished, self-contained HTML page (inline SVG, official icons, verified non-overlapping lines) to open in a browser

The two skills use different AWS icon libraries:

SkillIcon namespaceOutput
aws-architecture-diagram (this)mxgraph.aws4.* (draw.io's bundled AWS4 set).drawio XML
aws-diagram-pngawsdac's definition-for-aws-icons-light.yaml.png image

Resource type names differ between the two — this skill uses draw.io's resIcon=mxgraph.aws4.<service>, while aws-diagram-png uses CloudFormation-style AWS::<Service>::<Resource> with awsdac-specific fallback rules. Don't mix the two.

Modes

Mode A — Codebase Analysis

If user says "analyze", "scan", "from code", or references their existing project:

  1. Scan for infrastructure files: CloudFormation, CDK (cdk.json), Terraform (resource "aws_*")
  2. Extract services, relationships, VPC structure, and data flow
  3. For non-AWS technologies (Docker, databases, ML frameworks), map to general icons
  4. Confirm discovered architecture with user before generating

Mode B — Brainstorming

If user describes an architecture or says "brainstorm"/"design"/"from scratch":

  1. Ask 3-5 focused questions (purpose, services, scale, security, traffic pattern)
  2. Propose the architecture with service recommendations and data flow
  3. Iterate if needed, then generate

Style Rules

  • Font: ALL text MUST use fontFamily=Helvetica;
  • Icon size: 48x48 inside 120x120 containers with category tint color
  • Spacing: 180px horizontal, 120px vertical between service group containers
  • Dark mode: ALL structural elements use light-dark() fills with fillStyle=auto;
  • Region groups: Use container=0 (decoration-only)
  • Group fontColor: MUST match the group's strokeColor (VPC: #8C4FFF, Public subnet: #248814, Private subnet: #147EBA, Region: #00A4A6)
  • Step badges: Teal #007CBD 28x28 badges near arrow sources
  • Legend: Right sidebar for 7+ services (unless user opts out)
  • Sketch mode: OFF by default, only when user explicitly requests

XML Structure

<mxfile>
  <diagram name="..." id="...">
    <mxGraphModel dx="..." dy="..." grid="0" ...>
      <root>
        <mxCell id="0"/>
        <mxCell id="1" parent="0"/>
        <!-- diagram elements -->
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
  • Use mxgraph.aws4.* namespace with resourceIcon;resIcon= for service icons
  • Use descriptive cell IDs: vpc-1, lambda-orders, s3-assets
  • Edges connect to service icons, not containers
  • NEVER use compressed/base64 diagram content
  • NEVER use double hyphens (--) inside XML comments

Diagram Types

  • Serverless: API Gateway, Lambda, DynamoDB, S3, Step Functions, EventBridge
  • VPC/Network: VPC, subnets, security groups, NAT gateways, load balancers
  • Container: ECS/EKS clusters, ECR, Fargate, load balancing
  • Multi-Region: Multiple regions with replication, Route 53, Global Accelerator
  • Data Flow/Analytics: Kinesis, S3, Glue, Athena, Redshift, QuickSight
  • Hybrid: On-premises + AWS with Direct Connect, VPN, Transit Gateway

Output

  1. Create docs/ directory if needed
  2. Save diagram to ./docs/<descriptive-name>.drawio
  3. Present: file path, diagram type, services included, validation status
  4. Only include services the user mentions or that are core to the data flow — do NOT add cross-cutting concerns (IAM, CloudWatch, CloudTrail, KMS) unless asked

Prerequisites

  • defusedxml>=0.7.1 for XML validation: pip3 install defusedxml
  • draw.io desktop (optional, for PNG/SVG/PDF export)

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.