-
Notifications
You must be signed in to change notification settings - Fork 61
feat: add architecture diagram skill #103
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
30 commits
Select commit
Hold shift + click to select a range
69b42fc
add diagram skill
mayakost 55b946c
fix: resolve CI failures — use defusedxml for safe XML parsing, fix m…
mayakost f2a2579
Add architecture diagram skill
mayakost 28b9b5c
fix: split SKILL.md into references to pass skill-length lint rule
mayakost 1f466d9
fix: apply dprint formatting to pass fmt:check
mayakost d92c414
fix(diagram-skill): remove defusedxml dependency, fix code quality is…
scoropeza 68caa21
refactor(diagram-skill): consolidate references, delete outdated exam…
scoropeza 1d1a401
refactor(diagram-skill): restructure SKILL.md for progressive disclosure
scoropeza 35fc174
fix(diagram-skill): remove white background and edge label background…
scoropeza 41ae138
feat(diagram-skill): support non-AWS architecture diagrams
scoropeza eb78b16
merge: resolve marketplace.json conflict with upstream/main
scoropeza 9bf773c
fix(diagram-skill): restore defusedxml, add README, fix markdown lint
scoropeza 1b7dcf2
fix(diagram-skill): apply dprint formatting to group-styles.md table
scoropeza 59d21cb
Merge branch 'main' into feat/diagram-skill
theagenticguy 7742c33
fix(diagram-skill): align validator with skill rules, fix template an…
scoropeza 223e412
Merge branch 'main' into feat/diagram-skill
scoropeza 0febe00
Merge branch 'main' into feat/diagram-skill
scoropeza aed9aca
fix(diagram-skill): harden scripts against injection, error suppressi…
scoropeza 6ecd423
fix(diagram-skill): add nosec/nosemgrep suppression for stdlib indent…
scoropeza 2356984
fix(diagram-skill): use bare nosemgrep suppression for stdlib indent(…
scoropeza 6f51d7b
fix(diagram-skill): use full semgrep rule IDs for nosemgrep suppression
scoropeza 059308d
fix(diagram-skill): remove stdlib xml.etree.ElementTree import entirely
scoropeza 38dda38
Merge branch 'main' into feat/diagram-skill
scoropeza 3d0f77c
fix(diagram-skill): sanitize XML attributes in validator error messages
mayakost 90a8a01
Merge branch 'main' into feat/diagram-skill
mayakost 575876c
fix(deploy-on-aws): harden diagram scripts against DoS, symlink write…
scottschreckengaust dbc12d6
fix(deploy-on-aws): resolve file paths to prevent path traversal in h…
scottschreckengaust b1a1ece
fix(deploy-on-aws): use os.path.realpath() for semgrep-recognized tai…
scottschreckengaust d683870
fix(deploy-on-aws): sync Codex plugin manifest with v1.2.0 diagram sk…
mayakost f69c849
Update plugins/deploy-on-aws/skills/aws-architecture-diagram/SKILL.md
mayakost File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,57 @@ | ||
| # Deploy on AWS Plugin | ||
|
|
||
| Deploy applications to AWS with architecture recommendations, cost estimates, IaC deployment, and validated architecture diagrams. | ||
|
|
||
| ## Overview | ||
|
|
||
| This plugin provides two skills: infrastructure deployment with cost estimation, and AWS architecture diagram generation as draw.io XML with official AWS4 icons. | ||
|
|
||
| ## Skills | ||
|
|
||
| | Skill | Description | | ||
| | -------------------------- | ----------------------------------------------------------------------------------------------------- | | ||
| | `deploy` | Analyze codebases, recommend AWS services, estimate costs, and generate CDK/CloudFormation IaC | | ||
| | `aws-architecture-diagram` | Generate validated draw.io architecture diagrams with AWS4 icons, step legends, and dark mode support | | ||
|
|
||
| ## MCP Servers | ||
|
|
||
| | Server | Description | | ||
| | -------------- | ------------------------------------------------- | | ||
| | `awsiac` | AWS IaC best practices and patterns | | ||
| | `awsknowledge` | Architecture guidance and service recommendations | | ||
| | `awspricing` | Real-time AWS pricing data for cost estimation | | ||
|
|
||
| ## Installation | ||
|
|
||
| ```bash | ||
| /plugin marketplace add awslabs/agent-plugins | ||
| /plugin install deploy-on-aws@agent-plugins-for-aws | ||
| ``` | ||
|
|
||
| ## Prerequisites | ||
|
|
||
| - Python 3.9+ | ||
| - `defusedxml` — required for diagram XML validation: `pip3 install defusedxml>=0.7.1` | ||
| - AWS CLI with configured credentials (for deployment skills) | ||
| - [draw.io desktop](https://www.drawio.com/) (optional, for PNG/SVG/PDF export) | ||
|
|
||
| ## Examples | ||
|
|
||
| - "Deploy my app to AWS" | ||
| - "Estimate AWS costs for this project" | ||
| - "Generate an architecture diagram for a serverless REST API" | ||
| - "Create a sketch-mode diagram of my IoT pipeline" | ||
| - "Analyze my codebase and generate an architecture diagram" | ||
|
|
||
| ## Files | ||
|
|
||
| - `skills/deploy/SKILL.md` — Infrastructure deployment workflow | ||
| - `skills/aws-architecture-diagram/SKILL.md` — Diagram generation skill | ||
| - `skills/aws-architecture-diagram/references/` — Style guides, templates, and example diagrams | ||
| - `scripts/validate-drawio.sh` — PostToolUse hook for diagram validation | ||
| - `scripts/lib/` — Post-processing pipeline (icon colors, badge placement, legend sizing) | ||
| - `scripts/requirements.txt` — Python dependencies | ||
|
|
||
| ## License | ||
|
|
||
| Apache-2.0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,16 @@ | ||
| { | ||
| "hooks": { | ||
| "PostToolUse": [ | ||
| { | ||
| "matcher": "Edit|Write", | ||
| "hooks": [ | ||
| { | ||
| "type": "command", | ||
| "command": "${CLAUDE_PLUGIN_ROOT}/scripts/validate-drawio.sh", | ||
| "timeout": 30 | ||
| } | ||
| ] | ||
| } | ||
| ] | ||
| } | ||
| } |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.