All skills
agents365-ai avatar

/plantuml-skill

@72ee04b

Use when user requests diagrams, flowcharts, sequence diagrams, class diagrams, component diagrams, ER diagrams, architecture charts, or visualizations — including generating a diagram from existing source code, or rendering/extracting PlantUML embedded in a Markdown file to images (e.g. preparing docs for Confluence/Notion). Also use proactively when explaining systems with 3+ components, APIs, data flows, or class hierarchies. Generates .puml files and exports to PNG/SVG via Kroki API (no local install required).

Use this Skill: https://skilld.dev/gh/agents365-ai/365-skills/plantuml-skill

This session only. Nothing lands on disk.

referencesfrom-source-code.md

≈570 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Generating Diagrams from Existing Source Code

Use when the user points at real code and asks for a diagram of it — "class diagram of this module", "sequence diagram for this request handler", "component map of the repo", "ER diagram from these models".

Core rule: read the code, don't guess. Open the files, extract the real entities and relationships, and draw only what is actually there — mark anything inferred. Then render + validate via the normal Workflow Step 4–5 loop.

Pick the diagram type from the code shape

What you're looking at Diagram Map to PlantUML
Classes / structs / interfaces Class each type → class; fields & methods → members; extends → --|>; implements → ..|>; a held field → *-- / -->
One request / handler / call path Sequence each object or service → participant; each call → ->; each return → -->
Modules / packages / imports Component each module → component or package; each import/dependency → -->
ORM models / SQL DDL ER each table or model → entity; columns → attributes; foreign keys → crow's-foot relations
A status enum + transition functions State each status → a state; each transition → a labeled edge

Steps

  1. Read the relevant files with the file/search tools — never infer structure from file names alone.
  2. Extract entities + relationships into a short list and sanity-check it against the code before drawing.
  3. Emit .puml from that list, preserving the real identifiers. Keep member signatures concise (drop method bodies).
  4. Scope large inputs — one module/package per diagram. Split rather than cram (see large-diagram-patterns thinking); a 40-class god-diagram helps no one.
  5. Render + validate — Workflow Step 4–5.

Example — Python classes → class diagram

class Animal:
    def speak(self): ...

class Dog(Animal):
    def fetch(self): ...

class Owner:
    def __init__(self):
        self.pets: list[Animal] = []

→

@startuml
!theme plain
abstract class Animal {
  +speak()
}
class Dog {
  +fetch()
}
class Owner {
  +pets : List<Animal>
}
Animal <|-- Dog
Owner "1" o-- "*" Animal : owns
@enduml

Source: SKILL.md on GitHub

No alerts16d3 checks · Risk SAFE
  • Gen Agent Trust Hub16d

    This skill facilitates the generation and rendering of PlantUML diagrams using the Kroki API or local tools. It is transparent about data transmission to external services and provides instructions for local setup. The primary security considerations involve the ingestion of untrusted data from source files and the use of administrative commands for dependency installation.

  • Socket16d

    No alerts

  • Snyk16d

    Risk: LOW · No issues

Signed by skilld at 72ee04b. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 11 hours ago.

Activeupdated 3 weeks ago
homepage
https://github.com/Agents365-ai/365-skills
platforms
[
  "macos",
  "linux",
  "windows"
]
Other metadata
compatibility
Requires curl on PATH (pre-installed on macOS/Linux/Windows Git Bash). Default renderer is the public Kroki API at https://kroki.io; can also point to a local Kroki Docker instance, or fall back to a local PlantUML jar + Java + Graphviz.
metadata
{
  "openclaw": {
    "requires": {
      "bins": [
        "curl"
      ]
    },
    "emoji": "🧩",
    "os": [
      "darwin",
      "linux",
      "win32"
    ]
  },
  "hermes": {
    "tags": [
      "plantuml",
      "diagram",
      "flowchart",
      "sequence",
      "class",
      "uml",
      "architecture",
      "kroki"
    ],
    "category": "design",
    "requires_tools": [
      "curl"
    ],
    "related_skills": [
      "drawio",
      "mermaid",
      "excalidraw",
      "tldraw"
    ]
  },
  "author": "Agents365-ai",
  "version": "1.5.0"
}

README badge

README badge for agents365-ai/365-skills/plantuml-skill