CLI
The same rendering pipeline as the extension and the MCP server, as shell commands. Render a figure source to SVG or PNG, validate sources in CI, list formats, or host the MCP server — with output byte-for-byte identical to what quarto render produces.
Install
Nothing to install with npx:
npx livefigures --helpOr use the copy that ships inside the extension — every project that ran quarto add already has it:
node _extensions/seandavi/livefigures/cli.mjs --helpNode ≥ 18 is the only requirement, same as the extension.
Commands
# render a source file (format inferred from the extension)
livefigures render figures/arch.excalidraw -o arch.png
livefigures render figures/deps.dot -o deps.svg
# render from stdin
echo 'digraph { a -> b }' | livefigures render - --format graphviz > g.svg
# check sources without producing output — exit 1 + the exact
# quarto render error on a bad source
livefigures validate figures/*.dot figures/*.vl.json
# what can I write?
livefigures formats
livefigures formats --json
# host the MCP server (stdio)
livefigures mcpRender options mirror the extension: --theme light|dark, --background transparent|scene (Excalidraw/Vega only), --scale <n> for PNG.
Validate figures in CI
validate exits non-zero on the first bad source, so a one-line CI step keeps broken figures out of main:
- name: Validate figure sources
run: npx -y livefigures validate figures/*See also
- MCP server — the same tools, callable by your agent, with images the agent can see.
- Agent skill — teach an agent when and how to use all of this.