Communitygithub.com

juanmackie/juanskills

Generieren Sie hochwertige, tool-agnostische ASCII-Diagramme und Flussdiagramme in Codekommentaren oder Dokumentationen, basierend auf dem formalen „Design Space of ASCII Drawings“ (Hayatpur et al., 2024). Verwenden Sie dieses Skill, wenn der Benutzer darum bittet, einen Prozess, eine Datenstruktur oder eine Systemarchitektur mit Klartext zu „visualisieren“, „diagrammen“, „flussdiagrammieren“ oder „kartografieren“.

Was ist juanskills?

Dieses Skill, „ASCII Diagram Architect“, ist ein spezialisiertes Werkzeug für KI-Agenten (wie Claude Code, Cursor, Codex), um aus Benutzeranfragen hochwertige, tool-agnostische ASCII-Diagramme und Flussdiagramme zu generieren. Es eignet sich ideal zur Visualisierung von Systemarchitekturen, Datenstrukturen (z. B. Speicherlayouts, verlinkte Listen) und dynamischen Verhaltensweisen (z. B. schrittweise Logik oder Zustandsübergänge) direkt in Codekommentaren oder Dokumentationen. Das Skill folgt streng den Prinzipien des formalen „Design Space of ASCII Drawings“ (Hayatpur et al., 2024) und gewährleistet Tool-Agnostizität (lesbar in jedem Texteditor, Terminal oder Git) durch die konsequente Verwendung von Monospace-Zeichen wie `+`, `-`, `|` und Pfeilspitzen (`v`, `>`). Es definiert einen klaren Workflow: Inhaltsidentifikation (z. B. Systemarchitektur vs. Datenstruktur), Layout- und Konnektivität (Box-and-Line-Schema mit einheitlicher Flussrichtung) sowie standardisierte Box- (dreistufige Grenzen) und Verbinderformate (explizite Pfeilspitzen). Der Skill zwingt den Agenten, vor dem Rendern eine interne Dimensionierung durchzuführen, und setzt Grenzen wie die Begrenzung auf 80 Zeichen Breite und die Vermeidung nicht standardisierter Unicode-Zeichen (wie `┌`, `┐`), um maximale Kompatibilität mit Standard-IDEs und Terminals zu gewährleisten. Das mitgelieferte Beispiel zeigt, wie eine Load-Balancer-Architektur mit drei Servern in einem klaren, vertikalen Flussdiagramm dargestellt wird.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/juanmackie/juanskills/tree/HEAD/ascii-diagram-architect

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

ASCII-Diagramm-Architekt

Ein spezialisiertes Skill zum Generieren hochwertiger, tool-agnostischer ASCII-Diagramme und Flussdiagramme in Codekommentaren oder Dokumentationen, basierend auf dem formalen „Design Space of ASCII Drawings“ (Hayatpur et al., 2024).

Auslöseanweisungen

Verwenden Sie dieses Skill, wenn der Benutzer darum bittet:

  • „visualisieren“
  • „diagrammen“
  • „flussdiagrammieren“
  • „kartografieren“

einen Prozess, eine Datenstruktur oder eine Systemarchitektur mit Klartext.

Aktivieren Sie es, wenn Sie Code-Erklärungen geben, bei denen eine visuelle Darstellung der Logik oder des Speicherlayouts die Klarheit verbessern würde.

Kernprinzipien

Tool-Agnostizität

Stellen Sie sicher, dass das Diagramm streng monospace ist und in jedem grundlegenden Texteditor (IDE, Terminal, Git) lesbar ist.

Informationsnähe

Das Diagramm sollte als „visuelle Karte“ fungieren, die direkt über oder neben der Logik platziert wird, die es beschreibt.

Strukturierte Notation

Verwenden Sie konsistente Zeichensätze (+, -, |, v, >), um Grenzen und Fluss zu definieren.

Der Design-Space-Workflow

Basierend auf der Forschung von Hayatpur et al. definieren Sie die folgenden Dimensionen intern, bevor Sie rendern:

1. Inhaltsidentifikation

Bestimmen Sie, was dargestellt wird:

  • Systemarchitektur: Hochrangige Komponenten und Netzwerkverbindungen.
  • Datenstrukturen: Speicherlayouts, verlinkte Listen oder Baumknoten.
  • Dynamisches Verhalten: Schrittweise Logik oder Zustandsübergänge.

2. Layout & Konnektivität

  • Box-and-Line: Verwenden Sie +---+ für Entitäten und | oder - für Verbindungen.
  • Flussrichtung: Standardisieren Sie auf oben-nach-unten oder links-nach-rechts.
  • Ausrichtung: Stellen Sie sicher, dass alle vertikalen Striche (|) perfekt ausgerichtet sind, um die „Box“-Form beizubehalten.

Implementierungsrichtlinien

Der „Box“-Standard

Verwenden Sie immer eine 3-stufige Grenze für Entitäten, um visuelle Unterscheidbarkeit zu gewährleisten:

+-----------------------+
|      ENTITÄTSNAME     |
+-----------------------+

Der „Verbinder“-Standard

Verwenden Sie explizite Pfeilspitzen, um die Richtung anzuzeigen. Verwenden Sie keine mehrdeutigen Linien.

  • Vertikal: | gefolgt von v
  • Horizontal: --- gefolgt von >

Anmerkungen

Platzieren Sie kurze, beschreibende Texte neben Verbindern, um den Übergang oder die Logik zu erklären (z. B. "if x > 0" oder "API-Aufruf").

Beispiel-Workflow: Systemanfrage

Eingabe: „Zeig mir, wie ein Load Balancer den Datenverkehr auf drei Server verteilt.“

Ausgabe:

          [ CLIENT ANFRAGE ]
                  |
                  v
       +-----------------------+
       |     LOAD BALANCER     |
       +----------+------------+
                  |
        +---------+---------+
        |         |         |
        v         v         v
    +-------+ +-------+ +-------+
    | SRV 1 | | SRV 2 | | SRV 3 |
    +-------+ +-------+ +-------+

Einschränkungen

  1. Verwenden Sie keine nicht standardisierten Unicode-Zeichen (wie ┌ oder ┐), es sei denn, dies wird ausdrücklich angefordert, da sie in manchen Terminalumgebungen oder Legacy-Editoren zu Fehlfunktionen führen können.
  2. Behalten Sie Monospace bei: Jede Zeile muss auf Zeichenbreitenkonsistenz überprüft werden.
  3. Vermeiden Sie Komplexität: Wenn ein Diagramm mehr als 80 Zeichen Breite benötigt, brechen Sie es in „Untermodule“ auf, um sicherzustellen, dass es in Standard-IDE-Fenster passt.

Individual skills in this repo

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

Verwandte Skills