{
  "version": 1,
  "groups": [
    {
      "id": "workflow",
      "label": "Routing and collaboration"
    },
    {
      "id": "behavior",
      "label": "Behavior and process"
    },
    {
      "id": "architecture",
      "label": "Software and system structure"
    },
    {
      "id": "conceptual",
      "label": "Conceptual and planning"
    },
    {
      "id": "data",
      "label": "Data visualization"
    },
    {
      "id": "technical",
      "label": "Technical and hardware"
    }
  ],
  "skills": [
    {
      "id": "diagramming",
      "label": "Choose a diagram",
      "group": "workflow",
      "role": "router",
      "question": "Which visual story best answers the reader's question?",
      "useCases": [
        "Route a diagram request by meaning",
        "Choose a renderer after choosing the story"
      ],
      "avoidWhen": [
        "The user already selected a semantic diagram type"
      ],
      "name": "diagramming",
      "description": "Choose the semantic diagram story first, then select a diagram.zip renderer and produce a clear, reviewable diagram.",
      "userInvokableOnly": false,
      "path": "/skills/diagramming/SKILL.md"
    },
    {
      "id": "diagram-workshop",
      "label": "Diagram workshop",
      "group": "workflow",
      "role": "workflow",
      "question": "What should we discover together before committing to a diagram?",
      "useCases": [
        "Facilitate an explicit, user-led diagram design session"
      ],
      "avoidWhen": [
        "A focused request can be handled directly"
      ],
      "name": "diagram-workshop",
      "description": "Work with me to discover the right diagram question, audience, scope, and level of detail before making a diagram.",
      "userInvokableOnly": true,
      "path": "/skills/diagram-workshop/SKILL.md"
    },
    {
      "id": "diagram-review",
      "label": "Review a diagram",
      "group": "workflow",
      "role": "Does the diagram tell its intended story accurately and accessibly?",
      "question": [
        "Review semantics, readability, fidelity, and accessibility"
      ],
      "useCases": [
        "The request is only to choose a diagram family"
      ],
      "name": "diagram-review",
      "description": "Review a proposed diagram for semantic fit, evidence, readability, accessibility, and renderer or standards limitations; recommend precise revisions.",
      "userInvokableOnly": false,
      "path": "/skills/diagram-review/SKILL.md"
    },
    {
      "id": "flowchart",
      "label": "Flowchart",
      "group": "behavior",
      "role": "diagram",
      "question": "What path does work follow through steps and decisions?",
      "useCases": [
        "Procedures",
        "Algorithms",
        "Decision-heavy workflows"
      ],
      "avoidWhen": [
        "Time-ordered interactions need lifelines",
        "Formal business semantics require BPMN"
      ],
      "name": "flowchart",
      "description": "Choose a flowchart when the user needs a readable decision or process path with a clear start, sequence, branch, merge, or end.",
      "userInvokableOnly": false,
      "path": "/skills/flowchart/SKILL.md"
    },
    {
      "id": "sequence-diagram",
      "label": "Sequence diagram",
      "group": "behavior",
      "role": "diagram",
      "question": "Who communicates with whom, and in what order?",
      "useCases": [
        "API calls",
        "Runtime collaborations",
        "Request and response flows"
      ],
      "avoidWhen": [
        "The main story is static structure"
      ],
      "name": "sequence-diagram",
      "description": "Choose a sequence diagram when the user needs to explain ordered messages, calls, responses, or time-dependent collaboration between participants.",
      "userInvokableOnly": false,
      "path": "/skills/sequence-diagram/SKILL.md"
    },
    {
      "id": "state-machine-diagram",
      "label": "State machine diagram",
      "group": "behavior",
      "role": "diagram",
      "question": "Which events cause an entity to change state?",
      "useCases": [
        "Lifecycle rules",
        "Protocol states",
        "UI state transitions"
      ],
      "avoidWhen": [
        "The story is a sequence of work rather than persistent state"
      ],
      "name": "state-machine-diagram",
      "description": "Choose a state-machine diagram when an entity's permitted states, event-triggered transitions, guards, and entry or exit behavior are the central story.",
      "userInvokableOnly": false,
      "path": "/skills/state-machine-diagram/SKILL.md"
    },
    {
      "id": "activity-diagram",
      "label": "Activity diagram",
      "group": "behavior",
      "role": "diagram",
      "question": "How does work flow across actions, branches, and owners?",
      "useCases": [
        "Concurrent workflows",
        "Swimlane processes",
        "UML behavioral modeling"
      ],
      "avoidWhen": [
        "The process requires executable BPMN semantics"
      ],
      "name": "activity-diagram",
      "description": "Choose an activity diagram when the user needs to explain workflow logic, parallel work, decisions, joins, and responsibility across actions.",
      "userInvokableOnly": false,
      "path": "/skills/activity-diagram/SKILL.md"
    },
    {
      "id": "bpmn-process",
      "label": "BPMN process",
      "group": "behavior",
      "role": "diagram",
      "question": "How does a formal business process coordinate work, events, and participants?",
      "useCases": [
        "Auditable business processes",
        "Message flows",
        "Exception and event handling"
      ],
      "avoidWhen": [
        "A lightweight explanatory flow is sufficient"
      ],
      "name": "bpmn-process",
      "description": "Choose BPMN when the user needs a formal business-process model with events, tasks, gateways, pools, lanes, and message or sequence flows.",
      "userInvokableOnly": false,
      "path": "/skills/bpmn-process/SKILL.md"
    },
    {
      "id": "use-case-diagram",
      "label": "Use-case diagram",
      "group": "behavior",
      "role": "diagram",
      "question": "Which actors pursue which goals through the system?",
      "useCases": [
        "Scope conversations",
        "Actor goals",
        "System boundary discussions"
      ],
      "avoidWhen": [
        "Detailed interaction order or internal design is required"
      ],
      "name": "use-case-diagram",
      "description": "Use when the user needs to explain who can achieve which externally visible goals with a system, including actors, system boundaries, and goal relationships.",
      "userInvokableOnly": false,
      "path": "/skills/use-case-diagram/SKILL.md"
    },
    {
      "id": "data-flow-diagram",
      "label": "Data-flow diagram",
      "group": "behavior",
      "role": "diagram",
      "question": "Where does data originate, move, transform, and rest?",
      "useCases": [
        "Information flows",
        "Trust-boundary analysis",
        "Data-processing overviews"
      ],
      "avoidWhen": [
        "Control flow or message timing is the main concern"
      ],
      "name": "data-flow-diagram",
      "description": "Use when the user needs to show where information originates, how processes transform it, where stores retain it, and which external entities exchange it.",
      "userInvokableOnly": false,
      "path": "/skills/data-flow-diagram/SKILL.md"
    },
    {
      "id": "timeline",
      "label": "Timeline",
      "group": "behavior",
      "role": "diagram",
      "question": "What happened, or will happen, in chronological order?",
      "useCases": [
        "Milestones",
        "Historical narratives",
        "Release evolution"
      ],
      "avoidWhen": [
        "Durations and dependencies drive the story"
      ],
      "name": "timeline",
      "description": "Use when the user needs to communicate events or milestones in chronological order, with dates, intervals, eras, or parallel tracks.",
      "userInvokableOnly": false,
      "path": "/skills/timeline/SKILL.md"
    },
    {
      "id": "gantt-chart",
      "label": "Gantt chart",
      "group": "behavior",
      "role": "diagram",
      "question": "When do tasks occur, overlap, and depend on each other?",
      "useCases": [
        "Project schedules",
        "Critical dependencies",
        "Delivery planning"
      ],
      "avoidWhen": [
        "Only milestone chronology is needed"
      ],
      "name": "gantt-chart",
      "description": "Use when the user needs a time-scaled schedule showing tasks, durations, dependencies, milestones, and progress across teams or workstreams.",
      "userInvokableOnly": false,
      "path": "/skills/gantt-chart/SKILL.md"
    },
    {
      "id": "user-journey-map",
      "label": "User journey map",
      "group": "behavior",
      "role": "diagram",
      "question": "What does a person experience across stages of a goal?",
      "useCases": [
        "Experience mapping",
        "Touchpoints",
        "Pain points and opportunities"
      ],
      "avoidWhen": [
        "The request is for system behavior without a user-experience lens"
      ],
      "name": "user-journey-map",
      "description": "Use when the user needs to understand a person’s experience across stages, touchpoints, actions, thoughts, emotions, pain points, and opportunities.",
      "userInvokableOnly": false,
      "path": "/skills/user-journey-map/SKILL.md"
    },
    {
      "id": "choose-architecture-diagram",
      "label": "Choose an architecture diagram",
      "group": "architecture",
      "role": "router",
      "question": "Which abstraction level and viewpoint will answer the architecture question?",
      "useCases": [
        "Route among landscape, context, container, component, dynamic, and deployment views"
      ],
      "avoidWhen": [
        "The user already selected an architecture view"
      ],
      "name": "choose-architecture-diagram",
      "description": "Choose the smallest architecture view that answers the stakeholder's question, then route it to a suitable diagram source.",
      "userInvokableOnly": false,
      "path": "/skills/choose-architecture-diagram/SKILL.md"
    },
    {
      "id": "system-landscape-diagram",
      "label": "System landscape diagram",
      "group": "architecture",
      "role": "diagram",
      "question": "How do systems and people relate across an organization or domain?",
      "useCases": [
        "Enterprise system portfolios",
        "Cross-system dependencies",
        "Ownership context"
      ],
      "avoidWhen": [
        "The focus is one system and its immediate environment"
      ],
      "name": "system-landscape-diagram",
      "description": "Show the systems and people across an organization or domain, emphasizing ownership and meaningful dependencies.",
      "userInvokableOnly": false,
      "path": "/skills/system-landscape-diagram/SKILL.md"
    },
    {
      "id": "system-context-diagram",
      "label": "System context diagram",
      "group": "architecture",
      "role": "diagram",
      "question": "How does one system interact with people and external systems?",
      "useCases": [
        "C4 system context",
        "Scope and boundary communication"
      ],
      "avoidWhen": [
        "Internal applications or deployable units must be shown"
      ],
      "name": "system-context-diagram",
      "description": "Explain one system in its environment by showing its users, external systems, and the relationships that matter.",
      "userInvokableOnly": false,
      "path": "/skills/system-context-diagram/SKILL.md"
    },
    {
      "id": "container-diagram",
      "label": "Container diagram",
      "group": "architecture",
      "role": "diagram",
      "question": "What deployable or runnable units make up the system?",
      "useCases": [
        "C4 containers",
        "Technology responsibilities",
        "Inter-container communication"
      ],
      "avoidWhen": [
        "Code-level components or infrastructure instances are the focus"
      ],
      "name": "container-diagram",
      "description": "Show the major deployable or runtime containers inside one software system and how they collaborate.",
      "userInvokableOnly": false,
      "path": "/skills/container-diagram/SKILL.md"
    },
    {
      "id": "component-diagram",
      "label": "Component diagram",
      "group": "architecture",
      "role": "diagram",
      "question": "Which components collaborate inside a container or subsystem?",
      "useCases": [
        "C4 components",
        "UML components",
        "Module responsibility"
      ],
      "avoidWhen": [
        "Only system-level scope is needed"
      ],
      "name": "component-diagram",
      "description": "Create a component-level view of software structure, interfaces, and dependencies when the audience needs implementation boundaries rather than deployment topology.",
      "userInvokableOnly": false,
      "path": "/skills/component-diagram/SKILL.md"
    },
    {
      "id": "architecture-dynamic-diagram",
      "label": "Architecture dynamic diagram",
      "group": "architecture",
      "role": "diagram",
      "question": "How do architecture elements collaborate for one scenario?",
      "useCases": [
        "C4 dynamic views",
        "Cross-boundary runtime stories"
      ],
      "avoidWhen": [
        "A reusable protocol sequence needs detailed lifelines"
      ],
      "name": "architecture-dynamic-diagram",
      "description": "Explain an architecture scenario over time by showing participating components, messages, and state changes for one concrete use case.",
      "userInvokableOnly": false,
      "path": "/skills/architecture-dynamic-diagram/SKILL.md"
    },
    {
      "id": "deployment-diagram",
      "label": "Deployment diagram",
      "group": "architecture",
      "role": "diagram",
      "question": "Where do software instances run, and how are they connected?",
      "useCases": [
        "Runtime topology",
        "Infrastructure mapping",
        "C4 or UML deployment views"
      ],
      "avoidWhen": [
        "Logical structure without runtime placement is enough"
      ],
      "name": "deployment-diagram",
      "description": "Show where software artifacts run, which infrastructure nodes host them, and how runtime communication crosses environments or trust boundaries.",
      "userInvokableOnly": false,
      "path": "/skills/deployment-diagram/SKILL.md"
    },
    {
      "id": "block-diagram",
      "label": "Block diagram",
      "group": "architecture",
      "role": "diagram",
      "question": "What are the major functional blocks and their interfaces?",
      "useCases": [
        "Functional decomposition",
        "System overviews",
        "Signal or responsibility boundaries"
      ],
      "avoidWhen": [
        "A stricter domain notation is required"
      ],
      "name": "block-diagram",
      "description": "Arrange labeled blocks and relationships to communicate system decomposition, signal or data paths, and high-level structure without committing to a specialized formal notation.",
      "userInvokableOnly": false,
      "path": "/skills/block-diagram/SKILL.md"
    },
    {
      "id": "class-diagram",
      "label": "Class diagram",
      "group": "architecture",
      "role": "diagram",
      "question": "What types exist and how are their structures related?",
      "useCases": [
        "Domain models",
        "Object-oriented design",
        "Static type relationships"
      ],
      "avoidWhen": [
        "The main story concerns data persistence tables"
      ],
      "name": "class-diagram",
      "description": "Create or review class diagrams that explain types, responsibilities, contracts, and structural relationships in an object-oriented or domain model.",
      "userInvokableOnly": false,
      "path": "/skills/class-diagram/SKILL.md"
    },
    {
      "id": "entity-relationship-diagram",
      "label": "Entity-relationship diagram",
      "group": "architecture",
      "role": "diagram",
      "question": "Which data entities exist and how are they related?",
      "useCases": [
        "Conceptual data models",
        "Relational schemas",
        "Cardinality review"
      ],
      "avoidWhen": [
        "Runtime object behavior is the focus"
      ],
      "name": "entity-relationship-diagram",
      "description": "Model persistent data with entities, attributes, keys, relationships, cardinality, optionality, and integrity boundaries using an entity-relationship diagram.",
      "userInvokableOnly": false,
      "path": "/skills/entity-relationship-diagram/SKILL.md"
    },
    {
      "id": "dependency-graph",
      "label": "Dependency graph",
      "group": "architecture",
      "role": "diagram",
      "question": "What depends on what, and where are cycles or critical paths?",
      "useCases": [
        "Package dependencies",
        "Build graphs",
        "Service dependencies"
      ],
      "avoidWhen": [
        "Ordered interactions or physical topology are central"
      ],
      "name": "dependency-graph",
      "description": "Show dependencies between packages, modules, services, artifacts, or concepts when the important story is coupling, direction, reachability, or change impact.",
      "userInvokableOnly": false,
      "path": "/skills/dependency-graph/SKILL.md"
    },
    {
      "id": "network-topology",
      "label": "Network topology",
      "group": "architecture",
      "role": "diagram",
      "question": "Which network zones, devices, and links connect?",
      "useCases": [
        "Logical networks",
        "Addressed segments",
        "Connectivity and trust boundaries"
      ],
      "avoidWhen": [
        "Application behavior rather than connectivity is the focus"
      ],
      "name": "network-topology",
      "description": "Document physical or logical networks with nodes, interfaces, links, segments, addressing, trust zones, and traffic boundaries.",
      "userInvokableOnly": false,
      "path": "/skills/network-topology/SKILL.md"
    },
    {
      "id": "mind-map",
      "label": "Mind map",
      "group": "conceptual",
      "role": "diagram",
      "question": "What ideas radiate from one central topic?",
      "useCases": [
        "Brainstorming",
        "Early exploration",
        "Topic decomposition"
      ],
      "avoidWhen": [
        "Relationships need explicit semantic labels"
      ],
      "name": "mind-map",
      "description": "Use when the user needs to explore one central topic through associative branches, capture brainstorming, or organize an unconstrained idea space before choosing a structure.",
      "userInvokableOnly": false,
      "path": "/skills/mind-map/SKILL.md"
    },
    {
      "id": "concept-map",
      "label": "Concept map",
      "group": "conceptual",
      "role": "diagram",
      "question": "Which concepts relate, and what do those relationships mean?",
      "useCases": [
        "Knowledge models",
        "Explanatory relationship networks"
      ],
      "avoidWhen": [
        "A single-root hierarchy is sufficient"
      ],
      "name": "concept-map",
      "description": "Use when the user needs to explain concepts and the labeled relationships between them, especially definitions, dependencies, evidence, or cross-domain connections.",
      "userInvokableOnly": false,
      "path": "/skills/concept-map/SKILL.md"
    },
    {
      "id": "hierarchy-diagram",
      "label": "Hierarchy diagram",
      "group": "conceptual",
      "role": "diagram",
      "question": "How is a set organized into parent-child levels?",
      "useCases": [
        "Trees",
        "Organization charts",
        "Work breakdown structures"
      ],
      "avoidWhen": [
        "Many-to-many relationships carry the meaning"
      ],
      "name": "hierarchy-diagram",
      "description": "Use when the user needs a ranked, nested, or reporting structure such as a taxonomy, organization chart, tree, or work breakdown structure.",
      "userInvokableOnly": false,
      "path": "/skills/hierarchy-diagram/SKILL.md"
    },
    {
      "id": "decision-tree",
      "label": "Decision tree",
      "group": "conceptual",
      "role": "diagram",
      "question": "Which choices or tests lead to which outcomes?",
      "useCases": [
        "Decision guidance",
        "Classification logic",
        "Scenario branching"
      ],
      "avoidWhen": [
        "The goal is to depict an operational process with loops"
      ],
      "name": "decision-tree",
      "description": "Use when the user needs to show a sequence of choices, branching rules, outcomes, or diagnostic paths.",
      "userInvokableOnly": false,
      "path": "/skills/decision-tree/SKILL.md"
    },
    {
      "id": "matrix-diagram",
      "label": "Matrix diagram",
      "group": "conceptual",
      "role": "diagram",
      "question": "How do items compare across two dimensions?",
      "useCases": [
        "Quadrants",
        "Responsibility matrices",
        "Pairwise relationship grids"
      ],
      "avoidWhen": [
        "Geometric set overlap or time is the main encoding"
      ],
      "name": "matrix-diagram",
      "description": "Use when the user needs to compare two dimensions, expose a portfolio or prioritization space, or show a many-to-many relationship in a grid or quadrant.",
      "userInvokableOnly": false,
      "path": "/skills/matrix-diagram/SKILL.md"
    },
    {
      "id": "set-diagram",
      "label": "Set diagram",
      "group": "conceptual",
      "role": "diagram",
      "question": "How do categories overlap or contain one another?",
      "useCases": [
        "Venn diagrams",
        "Euler diagrams",
        "Set relationships"
      ],
      "avoidWhen": [
        "Exact quantities or many sets must be compared"
      ],
      "name": "set-diagram",
      "description": "Use when the user needs to show membership, overlap, exclusion, union, intersection, or nested categories with sets.",
      "userInvokableOnly": false,
      "path": "/skills/set-diagram/SKILL.md"
    },
    {
      "id": "choose-data-visualization",
      "label": "Choose a data visualization",
      "group": "data",
      "role": "router",
      "question": "Which visual encoding best supports the analytical task and data?",
      "useCases": [
        "Comparison",
        "Trend",
        "Distribution",
        "Relationship",
        "Composition",
        "Flow",
        "Geography"
      ],
      "avoidWhen": [
        "The request is a conceptual diagram rather than a quantitative display"
      ],
      "name": "choose-data-visualization",
      "description": "Choose and design a data visualization when the user has data, a comparison, trend, distribution, relationship, flow, or geographic question but has not yet chosen a chart form. Use the simplest honest encoding, explain the story, and route the result to Vega or Vega-Lite when appropriate.",
      "userInvokableOnly": false,
      "path": "/skills/choose-data-visualization/SKILL.md"
    },
    {
      "id": "protocol-layout-diagram",
      "label": "Protocol layout diagram",
      "group": "technical",
      "role": "diagram",
      "question": "How are bits or bytes allocated within a protocol record?",
      "useCases": [
        "Packet headers",
        "Binary formats",
        "Byte-field documentation"
      ],
      "avoidWhen": [
        "Message ordering or state transitions are the focus"
      ],
      "name": "protocol-layout-diagram",
      "description": "Use when a diagram must explain the bit, byte, or word layout of a protocol message, file header, register, or binary record.",
      "userInvokableOnly": false,
      "path": "/skills/protocol-layout-diagram/SKILL.md"
    },
    {
      "id": "digital-timing-diagram",
      "label": "Digital timing diagram",
      "group": "technical",
      "role": "diagram",
      "question": "How do digital signals change relative to time and each other?",
      "useCases": [
        "Clocked logic",
        "Bus transactions",
        "Signal constraints"
      ],
      "avoidWhen": [
        "The request is for an analog waveform plot"
      ],
      "name": "digital-timing-diagram",
      "description": "Use when a diagram must show digital signals changing over time, including clocked interfaces, bus transactions, handshakes, setup/hold relationships, or waveform protocols.",
      "userInvokableOnly": false,
      "path": "/skills/digital-timing-diagram/SKILL.md"
    },
    {
      "id": "rack-diagram",
      "label": "Rack diagram",
      "group": "technical",
      "role": "diagram",
      "question": "Which equipment occupies each rack unit?",
      "useCases": [
        "Capacity planning",
        "Datacenter documentation",
        "Equipment placement"
      ],
      "avoidWhen": [
        "Logical network connectivity is the primary story"
      ],
      "name": "rack-diagram",
      "description": "Use when documenting equipment placement in a cabinet or rack, including rack units, device identity, power, network uplinks, and physical capacity.",
      "userInvokableOnly": false,
      "path": "/skills/rack-diagram/SKILL.md"
    },
    {
      "id": "wiring-harness-diagram",
      "label": "Wiring harness diagram",
      "group": "technical",
      "role": "diagram",
      "question": "How do connectors, conductors, and terminations map?",
      "useCases": [
        "Harness assembly",
        "Pin-to-pin connectivity",
        "Cable documentation"
      ],
      "avoidWhen": [
        "Circuit behavior or board-level electronics are the focus"
      ],
      "name": "wiring-harness-diagram",
      "description": "Use when the user needs to document wires, cables, connectors, splices, branches, pin mappings, or harness manufacturing/service information.",
      "userInvokableOnly": false,
      "path": "/skills/wiring-harness-diagram/SKILL.md"
    },
    {
      "id": "hdl-component-diagram",
      "label": "HDL component diagram",
      "group": "technical",
      "role": "diagram",
      "question": "How do HDL modules, ports, and signal paths connect?",
      "useCases": [
        "RTL hierarchy",
        "Module interfaces",
        "Hardware design review"
      ],
      "avoidWhen": [
        "Gate-level timing or physical wiring is the focus"
      ],
      "name": "hdl-component-diagram",
      "description": "Use when the user needs a hardware-design view of HDL entities, modules, interfaces, ports, parameters, clocks, resets, and hierarchy.",
      "userInvokableOnly": false,
      "path": "/skills/hdl-component-diagram/SKILL.md"
    },
    {
      "id": "circuit-diagram",
      "label": "Circuit diagram",
      "group": "technical",
      "role": "diagram",
      "question": "Which electronic components connect into a circuit?",
      "useCases": [
        "Schematic communication",
        "Electrical connectivity",
        "Circuit explanation"
      ],
      "avoidWhen": [
        "Physical harness routing or enclosure placement is needed"
      ],
      "name": "circuit-diagram",
      "description": "Use when the user needs an electrical or electronic schematic showing components, nets, reference designators, power, signal flow, and test points.",
      "userInvokableOnly": false,
      "path": "/skills/circuit-diagram/SKILL.md"
    },
    {
      "id": "technical-illustration",
      "label": "Technical illustration",
      "group": "technical",
      "role": "diagram",
      "question": "Which spatial or mechanical relationships must the reader see?",
      "useCases": [
        "Exploded views",
        "Annotated assemblies",
        "Physical instructions"
      ],
      "avoidWhen": [
        "Abstract relationships can be communicated more precisely with a diagram notation"
      ],
      "name": "technical-illustration",
      "description": "Use when the user needs an explanatory technical figure showing parts, assemblies, operation, dimensions, callouts, or a controlled visual sequence.",
      "userInvokableOnly": false,
      "path": "/skills/technical-illustration/SKILL.md"
    }
  ],
  "standards": [
    {
      "id": "bpmn-2.0.2",
      "name": "OMG BPMN 2.0.2",
      "status": "source-supported",
      "relatedSkills": [
        "bpmn-process"
      ],
      "note": "The BPMN renderer accepts BPMN 2.0 XML and diagram interchange data. Treat rendering as separate from complete semantic validation.",
      "source": "https://www.omg.org/spec/BPMN/2.0.2/"
    },
    {
      "id": "uml-2.5.1",
      "name": "OMG UML 2.5.1",
      "status": "visual-subset",
      "relatedSkills": [
        "use-case-diagram",
        "sequence-diagram",
        "state-machine-diagram",
        "activity-diagram",
        "class-diagram",
        "component-diagram",
        "deployment-diagram"
      ],
      "note": "PlantUML and other renderers cover useful UML views, but diagram.zip does not validate the complete metamodel or import and export UML XMI and UMLDI.",
      "source": "https://www.omg.org/spec/UML/2.5.1/",
      "integration": {
        "reward": "medium",
        "effort": "large",
        "scope": "UML XMI/UMLDI import, model validation, profile handling, and round-trip fidelity"
      }
    },
    {
      "id": "iso-5807-1985",
      "name": "ISO 5807:1985",
      "status": "visual-conventions",
      "relatedSkills": [
        "flowchart"
      ],
      "note": "General renderers can apply its flowchart conventions, but diagram.zip does not validate symbol or path conformance.",
      "source": "https://www.iso.org/standard/11955.html"
    },
    {
      "id": "rfc-2360",
      "name": "RFC 2360 packet diagram conventions",
      "status": "visual-conventions",
      "relatedSkills": [
        "protocol-layout-diagram"
      ],
      "note": "PacketDiag and Bytefield can express layouts that follow the conventions, but protocol-specific validation is not built in.",
      "source": "https://www.rfc-editor.org/rfc/rfc2360.html#section-3.3"
    },
    {
      "id": "dmn-1.5",
      "name": "OMG DMN 1.5",
      "status": "unsupported",
      "relatedSkills": [
        "decision-tree"
      ],
      "note": "Informal decision trees are supported. Decision requirements diagrams, DMN XML interchange, and FEEL evaluation are not.",
      "source": "https://www.omg.org/spec/DMN/1.5/",
      "integration": {
        "reward": "high",
        "effort": "medium-to-large",
        "scope": "DMN XML parser, decision requirements rendering, validation, and optional FEEL evaluation"
      }
    },
    {
      "id": "archimate-3.2",
      "name": "The Open Group ArchiMate 3.2",
      "status": "unsupported",
      "relatedSkills": [
        "choose-architecture-diagram",
        "system-landscape-diagram",
        "system-context-diagram",
        "container-diagram"
      ],
      "note": "Generic architecture pictures are supported, but ArchiMate viewpoints, notation rules, and model exchange are not.",
      "source": "https://www.opengroup.org/archimate-licensed-downloads",
      "integration": {
        "reward": "high",
        "effort": "large",
        "scope": "Licensed notation assets, ArchiMate 3.x model exchange, viewpoint rules, and conformance testing"
      }
    },
    {
      "id": "sysml-2.0",
      "name": "OMG SysML 2.0",
      "status": "unsupported",
      "relatedSkills": [
        "choose-architecture-diagram",
        "block-diagram",
        "component-diagram",
        "hierarchy-diagram"
      ],
      "note": "Generic blocks and relationships are supported, but SysML language semantics, textual notation, model interchange, and view validation are not.",
      "source": "https://www.omg.org/spec/SysML/2.0/",
      "integration": {
        "reward": "high",
        "effort": "very-large",
        "scope": "SysML textual or JSON parsing, KerML/SysML semantics, libraries, view generation, and conformance"
      }
    },
    {
      "id": "iec-60617-2026-db",
      "name": "IEC 60617:2026 DB",
      "status": "unsupported",
      "relatedSkills": [
        "circuit-diagram",
        "wiring-harness-diagram"
      ],
      "note": "General renderers can draw circuits and harnesses, but diagram.zip has no licensed IEC symbol library or symbol validation.",
      "source": "https://webstore.iec.ch/en/publication/2723",
      "integration": {
        "reward": "medium",
        "effort": "large",
        "scope": "Symbol licensing, searchable assets, semantic ports and nets, document rules, and conformance boundaries"
      }
    }
  ]
}
