Strong +1 on this. To Colin’s question — Shared Canvases are great for the in-Cursor team workflow, but a PDF/PNG export covers a fundamentally different set of recipients and use cases that links can’t:
Stakeholders who aren’t Cursor users. I work in a large enterprise where canvases get used as research deliverables, architecture reviews, and decision artefacts. The people who need to read them — engineering managers, security, procurement, executives, external auditors — don’t have Cursor licences and won’t be getting them. A shared link is a dead end for that audience; a PDF lands in an email or a Confluence attachment.
Cross-team and external sharing. The current Shared Canvases scope is intra-team only. For anything that needs to leave the team boundary (cross-org review, vendor conversations, compliance evidence, board materials), a portable file is the only viable artefact.
Records of record. PDFs are versioned, dated, archivable artefacts that fit existing governance systems (Confluence, SharePoint, document management, regulatory submissions). Shared links are mutable and tied to Cursor’s availability; that’s the wrong shape for an evidentiary or compliance record.
Offline / air-gapped consumption. Plenty of enterprise environments don’t allow employees to authenticate into third-party SaaS dashboards from every device. A file does.
Programmatic export from agent runs. This is the bigger unlock. The useCanvasAction({type: "exportCanvas"}) half of the OP’s proposal would let agents generate a canvas as part of a pipeline and ship the rendered artefact alongside the run — research summaries, post-incident reports, weekly metrics decks. Today the agent has to be told “now also re-render this canvas as HTML and shell out to headless Chrome” every single time, which is fragile and lossy compared to letting Cursor render its own runtime.
Concrete recent example from our side: an agent produced a canvas comparing LiteLLM and 11 alternative LLM gateways for an internal architecture decision. The audience is enterprise IT architects and a security review board — none of whom are in our Cursor workspace. Shared Canvases couldn’t deliver to them; we ended up exporting via the window.print() devtools trick, which works but is not a workflow we can ask non-technical authors to repeat.
Both halves of the OP (UI menu + useCanvasAction export) would close the loop. UI export is the immediate value; the SDK action is what lets agent-authored canvases participate in automated pipelines.
Yes, this post was vibe texted with cursor 
Sven