umple-diagram-generator

Generate diagrams (state machines, class diagrams) from natural language requirements using Umple. Use when user requests: (1) State machine diagrams (2) UML class diagrams (3) Diagram generation from text descriptions, (4) Any mention of Umple diagram generation, (5) Visual representation of states, transitions, events, classes, or relationships. Outputs SVG diagrams with organized folder structure.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "umple-diagram-generator" with this command: npx skills add umple/umple-skills/umple-umple-skills-umple-diagram-generator

Umple Diagram Generator Skill

Overview

Generate an Umple .ump model from requirements and render it to SVG (Umple + Graphviz).

Supported diagram types

TypeUmple generatorRead before writing Umple
state-machineGvStateDiagramreferences/state-machine-guidance.md
class-diagramGvClassDiagramreferences/class-diagram-guidance.md

Script

Entry point: scripts/main.ts (run with Bun via npx -y bun).

Quick start

# Folder mode: organized output with all files (.ump, .gv, .svg)
npx -y bun ${SKILL_DIR}/scripts/main.ts --input model.ump --output ./diagrams --name "light-controller"

# Exact path mode: save SVG to specific file path
npx -y bun ${SKILL_DIR}/scripts/main.ts --input model.ump --output ./my-diagram.svg

# Class diagram with custom name
npx -y bun ${SKILL_DIR}/scripts/main.ts --input model.ump --output ./diagrams --name "user-system" --type class-diagram

Replace ${SKILL_DIR} with the absolute path to this skill directory.

Script options

OptionDescription
-i, --input <path>Input .ump file (required)
-o, --output <path>Output path: directory for folder mode, or .svg file for exact path (required)
-n, --name <name>Diagram name for folder mode (optional, triggers folder mode)
-t, --type <type>Diagram type: state-machine (default), class-diagram
-s, --suboption <opt>GvStateDiagram suboption (repeatable)
--jsonJSON output with details
-h, --helpShow help

Output modes

Folder Mode (when --name is specified or --output is a directory):

  • Creates organized folder with timestamped name
  • Includes all files: .ump (source), .gv (graphviz), .svg (diagram)

Folder naming:

  • With --name: <sanitized-name>_<timestamp>/
  • Without --name: <diagram-type>_<timestamp>/

Example:

diagrams/
└── light-controller_20260121_183045/
    ├── model.ump
    ├── model.gv
    └── model.svg

Exact Path Mode (when --output ends with .svg):

  • Saves only the SVG file to the exact specified path
  • Useful when user specifies a specific output location

Example:

npx -y bun ${SKILL_DIR}/scripts/main.ts --input model.ump --output /path/to/my-diagram.svg
# Result: /path/to/my-diagram.svg (only SVG, no folder created)

Exit codes

CodeMeaning
0Success
1Missing dependencies (umple or dot)
2Umple validation/compilation failed
3SVG generation failed or unsupported diagram type

Workflow

  1. Pre-flight: verify deps
    • command -v umple
    • command -v dot If missing, stop and ask the user to install them.
  2. Clarify only what you must
    • State machine: initial state, events, finals, guards/actions
    • Class diagram: entities, attributes, relationships, multiplicities
  3. Write Umple
    • Read the relevant guidance file (table above) before writing.
  4. Render
    • Prefer folder mode unless the user explicitly provides an .svg output path.
  5. Validate
    • On failure: fix Umple and retry up to 3 times.

Repair loop

If rendering fails: read script output, apply a focused fix, re-run the same command.

Output contract

  1. Diagram type
  2. Generated Umple (single umple block)
  3. Exact command run
  4. Output paths (folder + SVG, or exact SVG path)

Guardrails

  • Prefer a smaller valid Umple model over guessing syntax.
  • Use exact path mode only when the user provides an .svg path.
  • Do not install system dependencies.
  • Keep actions/guards minimal (no secrets, no I/O).

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

umple-diagram-generator

No summary provided by upstream source.

Repository SourceNeeds Review
General

test_skill

import json import tkinter as tk from tkinter import messagebox, simpledialog

Archived SourceRecently Updated
General

neo

Browse websites, read web pages, interact with web apps, call website APIs, and automate web tasks. Use Neo when: user asks to check a website, read a web page, post on social media (Twitter/X), interact with any web app, look up information on a specific site, scrape data from websites, automate browser tasks, or when you need to call any website's API. Keywords: website, web page, browse, URL, http, API, twitter, tweet, post, scrape, web app, open site, check site, read page, social media, online service.

Archived SourceRecently Updated
General

image-gen

Generate AI images from text prompts. Triggers on: "生成图片", "画一张", "AI图", "generate image", "配图", "create picture", "draw", "visualize", "generate an image".

Archived SourceRecently Updated