Imported from Toqsick/my-agent-tools (
library/note-taking/obsidian-canvas-factory/SKILL.md). Install upstream withnpx skills add Toqsick/my-agent-tools --skill obsidian-canvas-factory. Copyright stays with the author (MIT).
Obsidian Canvas Factory
Overview
Obsidian-Canvas-Dateien (.canvas) sind JSON-basierte Dokumente, die visuelle Notizen-Netzwerke, Flussdiagramme oder Gruppen-Strukturen darstellen. Dieser Skill liefert ein deterministisches Regelwerk zur Erzeugung valider Canvas-Dateien, um visuelle Dashboards oder Layouts im Vault anzulegen.
When to Use
- Trigger: Du willst eine visuelle Karte einer Multi-Agenten-Architektur (z.B. Queen-Bee-Schnittstellen) erstellen.
- Trigger: Du willst komplexe Zusammenhänge (z.B. Hardware-Layouts, Cron-Verbindungen oder Wissensgraphen) grafisch abbilden.
- Trigger: Du willst Wiki-Link-Embeds zentraler Quell-Notizen mit erklärenden Text-Nodes anordnen.
- Nicht verwenden für: Einfache Textnotizen (nutze Standard-Markdown) oder Diagramme, die Obsidian nicht nativ rendern kann (z.B. komplexe UML-Klassendiagramme — dafür ist Mermaid-Syntax besser geeignet).
JSON Specification & Template
Jede .canvas Datei besteht aus einem JSON-Objekt mit zwei primären Arrays: nodes (Inhalts-Elemente) und edges (Verbindungskanten).
{
"nodes": [
{
"id": "a1b2c3d400010001",
"type": "text",
"text": "# Titel\n\nBeschreibung",
"x": -500,
"y": -300,
"width": 350,
"height": 180,
"color": "1"
},
{
"id": "a1b2c3d400020001",
"type": "file",
"file": "05 Ressourcen/Subagent-Patterns - Delegation & Routing.md",
"x": -300,
"y": 100,
"width": 400,
"height": 500,
"color": "6"
}
],
"edges": [
{
"id": "e1b2c3d40001edge1",
"fromNode": "a1b2c3d400010001",
"fromSide": "right",
"toNode": "a1b2c3d400020001",
"toSide": "left",
"color": "1"
}
]
}
Implementation Steps
- Planung: Definiere die Liste aller Nodes (Typen:
textfür freien Text oderfilefür bestehende Notizen) und deren relative Positionen im Koordinatensystem. - ID-Vergabe: Erzeuge eindeutige, 16-stellige Hex-Strings für alle Nodes (z.B.
a1b2c3d400010001) und Edges. - JSON schreiben: Schreibe die Datei mit dem
write_fileTool nach08 Anhaenge/Excalidraw/<Name>.canvas. Achte auf absolut fehlerfreies JSON (keine schwebenden Kommas). - Verifizierung: Validiere das JSON-Format und verlinke das Canvas im MOC-Home oder Dashboard.
Common Pitfalls
- Ungültige Node-IDs: Obsidian verlangt exakt 16-stellige Hexadezimal-IDs (ohne
0xPrefix). Kürzere oder längere IDs führen zu Fehlern beim Rendern. - Falsche Pfadangabe bei
file: Pfade für Datei-Nodes müssen absolut zum Vault-Root angegeben werden (z.B.05 Ressourcen/Subagent-Patterns.md), niemals relativ mit./oder~/und ohne führende Slashes. - Pixel- statt Grid-Koordinaten: Die Positionen
xundysowie Dimensionenwidthundheightsind reine Pixel-Koordinaten (Vorschlag:x: -500bis500für den Startbereich).
Verification Checklist
- Datei liegt unter
08 Anhaenge/Excalidraw/<name>.canvasvor - JSON ist valide (
jq empty <file>.canvaswirft keinen Fehler) - Alle IDs sind exakt 16 Hex-Stellen lang
- Dateipfade in
file-Nodes enthalten keine Slashes am Anfang oder relative Suffixe - Canvas-File ist über
![[<canvas-name>]]oder[[<canvas-name>]]im Dashboard oder MOC verlinkt
Verbindet zu
- [[MOC - Obsidian-Vault]] — Vault-Mechanik-Hub
- [[Patterns & Workflows - Innovationsraum]] — Pattern-Synthese
- [[00 Knowledge Graph]] — Graph-Visualisierung
- [[MOC - Home]] — Canvas-Inventar