Communitygithub.com

ChaoChuan05/Agent-Skills

Create, refine, or review system analysis and software architecture diagrams from requirements or code, including UML, ERD, DFD, C4, BPMN, and workflows. Use for diagram selection, notation checks, cross-diagram consistency, and editable Draw.io deliverables.

What is Agent-Skills?

Agent-Skills is a Claude Code agent skill that create, refine, or review system analysis and software architecture diagrams from requirements or code, including UML, ERD, DFD, C4, BPMN, and workflows. Use for diagram selection, notation checks, cross-diagram consistency, and editable Draw.io deliverables.

Works with~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ChaoChuan05/Agent-Skills/tree/HEAD/skill/system-design

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

System design

Create the smallest set of views that answers the user's question. Prefer editable .drawio for formal diagrams; honor requested notation, format, course rubric, and existing files. A valid XML file is not proof of a correct model.

Workflow

  1. Establish the audience, system boundary, question, scenario, and abstraction level. Read supplied requirements/schema/code and any rubric. Record uncertain cardinalities, permissions, lifecycle rules, and external interfaces as assumptions; ask only when they materially change the answer. Do not invent infrastructure or mandatory relationships.
  2. Choose views using the routing table below. Read only the relevant references plus diagram-validation.md. Distinguish current-state evidence from proposed design. Keep a small glossary with stable concept IDs when multiple diagrams share concepts.
  3. Build a semantic inventory before placing shapes: participants/elements, relationships with direction and endpoint meaning, constraints, and requirement IDs. For a DFD, add a flow dictionary and decomposition boundary signatures; for a data model, identify keys and dependencies.
  4. Follow the diagram-specific drawing procedure. Set notation explicitly (e.g. UML 2, Crow's Foot, Gane–Sarson; context then level-0). Separate semantic rules from recommended layout choices. Resolve conflicting sources as described in sources.md.
  5. For Draw.io, read drawio-rendering.md and layout.md. Create native shapes and connectors with stable IDs, using an XML serializer. Copy a relevant example only after replacing its domain facts. For other formats read fallbacks.md.
  6. Run python3 <skill-dir>/scripts/validate_drawio.py <file-or-directory>. Repair reported structural errors. Use the semantic and cross-view checklists: the script cannot prove UML, DFD, ERD, or BPMN correctness.
  7. Open/import in diagrams.net or export using an available Draw.io renderer. Inspect every page for labels, arrow ends, clipping, containment and crossings; adjust and inspect again. If no renderer works, deliver the editable source and explicitly report rendering as unverified. Do not call XML parsing an openability test.
  8. Deliver source files, useful previews, and a brief verification/assumption note. State exactly which checks ran. Preserve existing manual layout and unrelated pages during edits; refresh stale previews.

Reference routing

User's questionRead
UML choice / notation baselineuml.md
Actors and user goalsuse-case.md
Domain or software structureclass-diagram.md
One scenario across collaboratorssequence-diagram.md
Workflow, branches, concurrencyactivity-diagram.md
One entity's event-driven lifecyclestate-machine.md
Instances, links, modules, runtime placementstructural-views.md
Communication, timing, interaction overviewadvanced-interactions.md
Entities, relationships, relational schemaerd.md, normalization.md
Data movement and decompositiondfd.md, context-diagram.md
Architecture levelsc4-model.md
Business collaboration/processbpmn.md
Simple procedure or responsibility handoffsflowchart-swimlane.md
Output generation / polishingdrawio-rendering.md, layout.md, fallbacks.md
Review / multi-view consistencydiagram-validation.md
Source provenance / editions / limitationssources.md

Output convention

Honor the user path. Otherwise use docs/diagrams/<system>-<view>.drawio, with matching .svg or .png previews when possible. Use <system>-assumptions.md for nontrivial assumptions and <system>-validation.md for multi-view audits. Keep temporary exports outside final deliverables. Use separate files for independently maintained views, or named pages for a coordinated set. Never silently replace a requested formal notation with a generic flowchart.

Non-negotiable checks

  • Model facts must come from evidence or labeled assumptions.
  • Check endpoint semantics; an arrow pointing the wrong way can remain syntactically valid.
  • A DFD arrow carries data; UML/BPMN control flow carries execution meaning.
  • Do not infer lifecycle ownership from a foreign key or a vague “has-a” phrase.
  • Review relevant shared concepts; do not require identical contents across views of different scope.
  • Keep drawings editable; an image embedded in a .drawio file is not a native diagram.

Examples and executable checks are in examples/ and scripts/. Package-specific testing evidence is in TEST-REPORT.md.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

ChaoChuan05/Agent-Skills

Diagnose bugs and failures through reproduction, connected-flow evidence, and root-cause testing; recommend or apply the smallest authorized fix. Also handles explicit behavior-preserving refactoring and structural repair. Use for broken behavior, unexplained errors, or requested refactors; broad quality review and release verification belong to qa-tester.

ChaoChuan05/Agent-Skills

Turn a requested feature, change, or established fix into a repository-grounded implementation plan before coding. Use for implementation sequencing, affected-file and contract analysis, migration risks, and test acceptance planning. Planning does not authorize implementation; unexplained failures belong to debug-and-refactor and architectural modeling to system-design when needed.

ChaoChuan05/Agent-Skills

Test whether software satisfies its requirements. Use for QA reviews, acceptance testing, requirements traceability, test plans, exploratory testing, API/database/UI checks, defect reproduction, regression, fix verification and release readiness. Compare expected and actual behavior with evidence; existing passing tests alone are insufficient. Apply implementation fixes only when the user's task authorizes them.

ChaoChuan05/Agent-Skills

Create, audit, or maintain implementation-grounded developer documentation for software repositories. Use for README, onboarding, setup, configuration, architecture, API reference, deployment runbooks, troubleshooting, undocumented environment variables, and stale documentation. Inspect code and verify procedures; do not use for marketing copy or implementation changes alone.

Related Skills