Skip to content

feat(deploy-on-aws): Add AWS architecture diagram skill#102

Closed
mayakost wants to merge 2 commits intomainfrom
feat/diagram-skill
Closed

feat(deploy-on-aws): Add AWS architecture diagram skill#102
mayakost wants to merge 2 commits intomainfrom
feat/diagram-skill

Conversation

@mayakost
Copy link
Contributor

@mayakost mayakost commented Mar 21, 2026

Summary

  • Adds a new aws-architecture-diagram skill to the deploy-on-aws plugin that generates validated AWS architecture diagrams as draw.io XML using official AWS4 icon libraries
  • Includes PostToolUse hook for automatic draw.io validation on Edit/Write, Python post-processing scripts (icon color fixes, nesting fixes, step badge rendering), and extensive reference material (style guide, XML templates, 6 annotated example diagrams)
  • Bumps deploy-on-aws plugin version from 1.1.0 to 1.2.0 and updates marketplace/plugin manifests with new keywords and description

Test plan

  • Install the plugin locally with claude --plugin-dir ./plugins/deploy-on-aws and trigger the skill by asking to generate an AWS architecture diagram
  • Verify the generated .drawio file opens correctly in draw.io desktop and renders with proper AWS4 icons, step badges, and category containers
  • Confirm the PostToolUse validation hook fires when writing/editing .drawio files and catches malformed XML
  • Run mise run lint:manifests to validate updated marketplace.json and plugin.json
  • Run mise run lint:cross-refs to validate cross-references between manifests
  • Test both modes: codebase analysis ("analyze my infrastructure") and interactive brainstorm ("design a serverless API")

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the project license.

@mayakost mayakost requested review from a team as code owners March 21, 2026 00:01
Copy link

@github-advanced-security github-advanced-security bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Semgrep OSS found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.

import argparse
import math
import re
import sys
diagram_bottom = 0
for cell in root_elem.iter("mxCell"):
parent = cell.get("parent", "")
style = cell.get("style", "")
try:
data = json.load(sys.stdin)
file_path = data.get("tool_input", {}).get("file_path", "")
except (json.JSONDecodeError, KeyError):
…arkdown lint

Replace xml.etree.ElementTree with defusedxml.ElementTree in all Python
scripts to address Bandit B314/B405 and Semgrep XXE findings. Add nosec
suppression to subprocess import in drawio_url.py (browser URL opener only).
Fix 106 markdownlint errors (MD022/MD031/MD032 blank lines, MD001 heading
levels) across 7 reference files and SKILL.md. Trim SKILL.md from 515 to
495 lines to satisfy the 500-line SKILL001 limit.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@mayakost mayakost closed this Mar 23, 2026
@mayakost mayakost deleted the feat/diagram-skill branch March 23, 2026 16:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant