excalidraw
SkillDocs & knowledgeCreating diagrams and charts in Excalidraw for Obsidian. Use when user says 'сделай схему', 'нарисуй диаграмму', 'excalidraw', 'схема в obsidian', 'визуализация'.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the excalidraw skill
What this skill tells your AI
The instructions your AI receives, as published by alekseiul/sprut-agent-kit in skills/excalidraw/SKILL.md and read by ahel’s review.
name: excalidraw description: "Создание схем и диаграмм в Excalidraw для Obsidian. Use when user says 'сделай схему', 'нарисуй диаграмму', 'excalidraw', 'схема в obsidian', 'визуализация'."
Excalidraw Skill — Создание схем для Obsidian
Триггеры: "сделай схему", "нарисуй диаграмму", "excalidraw", "схема в obsidian", "визуализация"
Важно! Формат Excalidraw в Obsidian
Obsidian Excalidraw плагин использует сжатый формат compressed-json (LZ-string).
Обычный JSON в code block НЕ РАБОТАЕТ — схема откроется как текст!
Как создавать схему
Шаг 1: Использовать генератор
Запустить скрипт scripts/gen_excalidraw_v2.js как шаблон или создать новый:
node scripts/gen_excalidraw_v2.js > "obsidian/Название.excalidraw.md"
Шаг 2: Структура файла
---
excalidraw-plugin: parsed
tags: [excalidraw, тема]
---
# Excalidraw Data
## Text Elements
Текст блока 1 ^id1
Текст блока 2 ^id2
%%
## Drawing
\`\`\`compressed-json
[сжатый JSON через lz-string]
\`\`\`
%%
Шаг 3: Привязка текста к блокам (КРИТИЧНО!)
Текст ОБЯЗАТЕЛЬНО должен быть привязан к контейнеру!
На прямоугольнике:
{
"type": "rectangle",
"id": "box1",
"boundElements": [{ "type": "text", "id": "box1-text" }]
}
На тексте:
{
"type": "text",
"id": "box1-text",
"containerId": "box1"
}
Без этой связи текст НЕ отображается внутри блоков!
Скрипт-генератор
Путь: scripts/gen_excalidraw_v2.js
Использует:
lz-stringдля сжатия (npm install lz-string)- Helper функции для создания блоков с привязанным текстом
Основные функции:
// Блок с текстом внутри
createBox(id, x, y, width, height, strokeColor, bgColor, text, fontSize)
// Отдельный текст (заголовки)
createText(id, x, y, text, fontSize, color)
// Стрелка
createArrow(id, x, y, dx, dy, color)
Стиль схем для владельца
Цвета фона
- Чёрный фон:
#000000 - Тёмно-серый блок:
#111827 - Очень тёмный:
#0f0f23
Цвета акцентов
- Зелёный (успех, поток):
#22c55e/ bg#14532d - Оранжевый (warning, Gateway):
#f97316/ bg#7c2d12 - Фиолетовый (API, premium):
#a855f7/ bg#581c87 - Синий (user, channels):
#3b82f6/ bg#1e3a8a - Индиго (агент):
#4338ca/ bg#312e81 - Серый (контейнеры):
#374151/ bg#111827
Шрифты
- Заголовок: 24-28px
- Секции: 20px
- Блоки: 13-14px
- Подписи стрелок: 12px
Язык
- Всё на русском
- Понятные описания
- Эмодзи для визуальных якорей ( 👤 ⚡ 🤖 📁 🔑)
Чеклист перед созданием
- ✅ Установлен lz-string:
npm install lz-string - ✅ Используется gen_excalidraw_v2.js или аналог
- ✅ Текст привязан через containerId + boundElements
- ✅ Файл имеет расширение
.excalidraw.md - ✅ Frontmatter:
excalidraw-plugin: parsed - ✅ Секция
## Text Elementsс^idдля каждого текста - ✅ Секция
## Drawingсcompressed-json
Открытие в Obsidian
open "obsidian://open?vault=obsidian&file=Название.excalidraw"
Если открывается как текст:
- Правый клик → "Open as Excalidraw drawing"
- Или кнопка переключения режима в углу
Примеры рабочих схем
obsidian/Agent - Architecture.excalidraw.md— архитектура системыobsidian/Агенты OpenClaw.excalidraw.md— агентская система
Создано: 2026-02-03
Signals
- GitHub stars
- 64
- Forks
- 22
- Last commit
- Jun 2026
Advanced
- Catalog kind
- skill
- Gateway key
excalidraw-alekseiul- Source
- github.com/alekseiul/sprut-agent-kit