Skip to main content

obsidian-excalidraw-cli

Create, inspect, edit and render Obsidian Excalidraw drawings through the running app's native CLI.

ソース情報

リポジトリ
zsviczian/obsidian-excalidraw-plugin
ソースの最終更新活動
2026年10月28日 05:25
検出された SKILL.md の言語
英語
スター
7,814
フォーク
526

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
obsidian-excalidraw-cli
description
Create, inspect, edit and render Obsidian Excalidraw drawings through the running app's native CLI.
Use a local terminal with Obsidian running and CLI enabled (API 1.12.2+). Always put vault="<name or ID>" before the command. Native root: obsidian-excalidraw-plugin. Start with obsidian vault="<vault>" obsidian-excalidraw-plugin:help, then :schema action=create. All results use apiVersion 1. Check ok, mutation and persistence; process exit zero alone does not prove success. Put large requests in a visible vault-relative JSON file and pass input="<file>". Inline json is for small requests. Requests in files include apiVersion:1; the native command supplies command. The in-process ea.executeCLI request also includes command. Use exact drawing paths including extensions. Never assume an active drawing. :open explicitly creates a tab and can run configured drawing scripts. Loop: :read source=live detail=elements (or detail=images to inventory) → :apply with expectedRevision and a unique requestId → check persistence=saved → :export → inspect the image file. For duplicate views use the view ID from :open or :read. Refresh after STALE_REVISION; retry BUSY with the same requestId only when refused before execution; unknown outcomes require read-back. New skeleton IDs are local labels; use returned idMap actual IDs for updates. Updates reject identity, bindings and asset internals. Every write requires requestId. Repeat the identical effective request to retrieve its receipt; different content with the same ID fails. :result requestId=<id> recovers a receipt after lost stdout. Receipts expire after 15 minutes/reload; unknown outcome requires read-back before another write. :api surface=ea name=<method> gives existing EA signatures. :api surface=lib lists the supported installed Lib reference; advanced exports remain available to scripts. :icons query=<name> discovers installed canonical Lucide names (paged); create icons / apply op=lucide insert editable native groups. groupMap maps logical icon aliases to groupId/elementIds; idMap remains single-element only. Defaults: size=96, strokeColor=#1e1e1e, roughness=1, opacity=100; optional strokeWidth is final scene units. No trusted script is required. :script requires trusted=true and an explicit existing local script file. utils.input contains args; utils.excalidrawLib is the installed runtime. Await all work; completion does not imply saved drawing. One-shot EA is cleaned up; utility prompts fail INTERACTION_REQUIRED. Trusted code can still invoke other interactive APIs: this is not a sandbox, timeout cancellation or transaction. Export names an explicit out=.svg/.png; overwrite=true is required for existing outputs. Live exports never implicitly save. Disk exports require local Vault assets; use a loaded live source or placeholders for remote assets. For cheap previews: :read detail=images, then :export imagePolicy={"default":"placeholder","rules":[{"ids":["wanted-id"],"mode":"original"}]}. This is lossless for the underlying drawing, not the preview. imageMetadata apply operations set bounded descriptive label/tags, with null clearing; request-only imagePolicy.labels does not persist. Thumbnail mode uses thumbnailMaxDimension=512 by default; only PNG/JPEG/WebP with safe preflight dimensions are decoded (24 MiB / 16 million pixels maximum). maxWidth/maxHeight/maxPixels bound output dimensions; maxArtifactBytes caps final bytes. Source revision covers originals; representationId identifies the preview. SVG width controls display size, not embedded raster payload size; use imagePolicy for that. Use :schema for exact fields, operation limits, and runnable examples. Do not edit compressed drawing Markdown directly or install another Excalidraw CLI.
GitHubで見る