Enterprise
Cursor Agent: The Canvas Tool
A canvas is an interactive artifact Cursor renders next to the chat instead of a long markdown table or code block. Ask the agent for a dashboard, analysis, audit or report, and Cursor opens a standalone view laid out with sections, stats and tables that you can reopen, edit and rerun later with fresh data. Cursor saves each canvas to your workspace's canvas list, and on paid plans you can publish a shared link teammates open in the browser.
On this page
What is the Cursor canvas tool?
Canvases let Cursor create interactive artifacts that render next to the chat. Instead of scrolling through a long markdown table or code block, you get a standalone view, laid out with sections, stats and tables, that you can reopen, edit and iterate on. When you ask an agent for a dashboard, analysis, audit or report, Cursor opens the result in a canvas when that is a better fit than plain chat output.
Whether you want a canvas depends on what happens to the output after you read it. Chat output gets scrolled past. A canvas is saved into your workspace's canvas list, so it can be reopened and rerun with fresh data.
The test I use is whether anybody will want these numbers again in a month. When the answer is no, the long markdown table in the chat was already fine.
This is covered hands-on in Agent Mode Foundations — 6 short modules, free to read.
How does a canvas get created?
Cursor decides a task benefits from a visual or interactive view, or you ask for one directly, then it builds the canvas and drops a reference into the chat. The four steps below are the full loop, from creation through saving the canvas so you can rerun it later.
- 1Cursor decides your task benefits from a visual or interactive view, or you ask for one directly.
- 2Cursor builds the canvas and inserts a reference to it in your chat.
- 3You review the rendered view, switch to the source to tweak it, or ask Cursor to change it.
- 4Cursor saves the canvas so you can reopen and rerun it later with fresh data.
Each canvas appears in your workspace's canvas list, so you can jump back to past ones without rerunning them.
Cursor drives most of that loop. Step three is the part that is yours, and it decides whether what lands in the canvas list is worth reopening. Reading a rendered view properly is duller than asking for the next thing, which is probably why it gets skipped, and a canvas built on a query with the wrong date range renders exactly as well as one built on the right range. Switch to the source once before you move on.
When no canvas appears and you wanted one, ask for it directly. Step one fires on either trigger, so you never have to wait for Cursor to decide the task deserves a canvas.
How do I open a canvas?
There are three entry points, depending on whether you are reacting to a fresh response or returning to past work.
- From Cursor: when Cursor creates a canvas, a card appears at the end of the response. Click it to open.
- Command Palette: run Open Canvas from the palette, listed under View.
- Agents WindowCursor's surface listing your agent runs; open a run to read its diff and search transcripts from the command palette. Press Enter for the full definition.: open a canvas tab directly from the new tab menu in the Agents Window.
The card at the end of a response is the quickest route, and it is also the only one that assumes you are still looking at the conversation that produced the canvas. The palette command and the Agents WindowCursor's surface listing your agent runs; open a run to read its diff and search transcripts from the command palette. Press Enter for the full definition. tab do not. For work you are coming back to, then, the palette is the route that does not depend on finding the chat again.
Open Canvas, then Keep All the pending files
0:29 · narratedRead this demo as text
- Canvas is its own editor tab — not the in-window Browser. Empty means type slash canvas in chat when you want a real artifact. We are not inventing a filled table here.
- Pending file changes still need a decision. Keep All accepts the staged edits; Review walks them file by file — Canvas being empty does not skip that step.
Practice next: Practice this yourself in the hands-on module.
Simulated Cursor 3.12 (macOS, light) — beta educational reconstruction, not the real product.
The docs leave one thing open here. Cursor describes the canvas list as your workspace's, and describes the Agents WindowCursor's surface listing your agent runs; open a run to read its diff and search transcripts from the command palette. Press Enter for the full definition. as the place to work with agents across all your projects, so I cannot tell you from the documentation whether a canvas tab opened there reaches past the workspace you are in. Try it before you plan a workflow around it.
How do I share a canvas with my team?
Sharing turns an interactive artifact into a view your whole team can open. When you share a canvas, Cursor uploads a live snapshot of the view and gives you a link teammates open in the browser with the same layout, charts and tables, without rerunning the agent or digging through chat history. Use Publish from the canvas toolbar to publish or refresh a share, and browse everything your team has published from Shared Canvases on the dashboard.
Shared canvases are available on paid plans (Pro, Teams and Enterprise); free accounts cannot create shares. Because each share is team-visible, you need to be on a team, though Pro users on a team can share too. Sharing also requires a privacy mode that allows data storage: Legacy Privacy ModeCursor's setting that guarantees code data is not used for training by Cursor or its model providers, and that an admin can enforce org-wide; data-retention terms are a separate, contractual layer. Press Enter for the full definition. blocks it.
Team admins can turn shared canvases off for the organization from team settings under Shared Canvases.
Publishing uploads a live snapshot of the view, and the same Publish button both creates a share and refreshes one. Reading those two facts together, I would not promise anybody that the link updates itself. A canvas skill committed with the code is the other route, and it lets a teammate regenerate the view from a short prompt whenever they want it. Decide which of those the audience needs before you publish, because whoever wants this week's number will come back and ask.
Who can see a canvas I have not shared?
Only you. A canvas you have not published sits in your workspace's canvas list, and publishing is the step that makes it openable by anyone else on the team.
Cursor's enterprise hardening page lists published share links for shared chats and canvases under data retention and deletion, and names the dashboard as the place you delete them. Somebody, in other words, has to do that. Keeping the published set small is a habit rather than a rule Cursor states, and the moment to retire a share is when the analysis behind it has been superseded, not when a teammate notices the number looks wrong.
How do I change a canvas after it's made?
Canvases are designed to be easy to refine, and Cursor's guidance is to tell the agent what to change rather than reaching for the source first. The options below run from small text-prompt tweaks to a full revert-and-reprompt for larger reworks.
- If the layout isn't right, tell Cursor what to change instead of editing by hand.
- If the numbers look stale or off, ask Cursor to rerun the underlying query or show its work.
- For larger reworks, revert and prompt Cursor again with more details; this is usually faster than nudging through small follow-ups.
- For small tweaks, you can also manually edit the source code.
Cursor's ordering here is worth arguing with. Editing the source looks like the developer's move, since the layout is right there and you can fix the spacing yourself. Working out why the docs put describing first changed my mind. The manual edit belongs exactly where they put it, as a tool for small tweaks. A sentence describing the change can be pasted into a skill's layout instructions when the same report comes round again. A hand edit does not carry over to the next canvas.
Design ModeA way to point at an element in Cursor's built-in browser and change it directly, instead of describing it in words. Press Enter for the full definition. also runs inside canvases, so you can select and annotate the element you want changed instead of describing it in prose. The Design Mode guide covers how that works.
How do I make a canvas repeatable with skills?
Common canvas workflows can be packaged as skills so Cursor produces a consistent layout every time you ask. A canvas skill bundles four things that define both when Cursor reaches for it and what it builds.
- Trigger description
- So Cursor knows when to reach for it, like "quarterly revenue report" or "dependency audit".
- Layout instructions
- Define the sections, stats and tables the canvas should contain.
- Data sources and queries
- What Cursor should run to populate the view, such as a SQL query, API call or shell command.
- Formatting rules
- Units, date ranges or sort order.
The trigger description is the part I would start with, because it decides whether the skill fires at all. Cursor loads a skill's full instructions only once its description looks like a match for what you asked, so a vague trigger sits on top of immaculate layout instructions and nothing happens. When a canvas skill is not firing, rewrite the description before you touch the layout.
Once the skill is in place, a short prompt is enough to regenerate the canvas with fresh data, and every teammate using the skill gets the same output shape.
Frequently asked questions
When does Cursor open a canvas instead of replying in chat?
When the task benefits from a visual or interactive view, or when you ask for one directly. Cursor's docs cite dashboards, analyses, audits and reports as cases where a canvas is a better fit than a long markdown table or code block.
Can free Cursor accounts share canvases?
No. Shared canvases are available on paid plans (Pro, Teams and Enterprise); free accounts cannot create shares. Sharing also needs you to be on a team and a privacy mode that allows data storage, so Legacy Privacy Mode blocks it.
Can a teammate open a canvas I saved but never published?
Not from your canvas list. Publishing is the step that makes a canvas openable by other people, so until you use Publish from the canvas toolbar there is nothing for a teammate to open. Published links are browsable under Shared Canvases on the dashboard, and per Cursor's enterprise hardening docs that is also where you delete them.
How do I update the data in a saved canvas?
Reopen it from your workspace's canvas list and ask Cursor to rerun the underlying query, or rerun it with fresh data. Cursor saves each canvas so you can reopen and rerun later without rebuilding from scratch.
Sources & last verified
- Cursor - Agent Canvas Tool
- Cursor - Agents Window
- Cursor - Skills
- Cursor - Prompting
- Cursor - Enterprise security hardening
- Cursor changelog: Canvas Design Mode and Context Usage Report
Cursor ships frequently. Last updated July 28, 2026.
Keep reading
Rather do it than read about it? Run 11 interactive Cursor walkthroughs in a simulated editor. Free, no account needed.