Updated June 10, 2026
Drafty canvas version history: push, restore, and compare
Quick answer
Every change to a Drafty canvas saves a new version — a CLI push, a restore, or an editing session on the page itself. The link stays the same across all of them, comments stay anchored, and you can preview and restore earlier versions at any time.
Every change to a canvas saves a new version — a CLI push, a restore, or an editing session on the page itself. The link stays the same through all of them, and every change is recorded.
That means you never lose an earlier draft. Push a fix, and if it turns out worse, restore the version from before. The reader's comments stay anchored to their elements the whole time.
Each push = a new version
Every time you run drafty canvas push, Drafty saves the result as a new version of the canvas. The live page at drafty.im/canvas/<slug> shows the latest one.
To update a canvas you've already published, push again to the same slug:
drafty canvas push report.html --slug my-report
The link doesn't change. Anyone holding it sees the new version on their next load, and their comments carry over.
View past versions
To see the history of a canvas, list its versions:
drafty canvas versions my-report
You'll get each saved version so you can pick the one you want to look at or roll back to. If you want the current file on your machine to edit, pull it down first:
drafty canvas pull my-report
Restore an earlier version
To bring back an older version as the live page, restore it:
drafty canvas restore my-report
Here's the full round trip:
- Run
drafty canvas versions my-reportto find the version you want. - Run
drafty canvas restore my-reportto make it live again. - Confirm the canvas shows the older content at its usual link.
Restoring saves a new version too, so nothing is overwritten — you can always move forward again from where you were.
Every path writes the same history
Versions come from three places, and they all land in the same History: a drafty canvas push (your agent shipping a revision), a restore (which saves a new version rather than rewriting the past), and an editing session on the canvas itself — which cuts one version per sitting, not per keystroke.
This keeps things honest. Each version is a clean record, comments stay pinned to the elements they were left on, and a bad change — pushed or typed — is one restore away from being undone. For moving files between your machine and a canvas, see push and pull from the CLI.
Frequently asked
- Does the link change when I push a new version?
- No. The canvas keeps the same drafty.im/canvas/<slug> link across every version. A push replaces what that link shows; it never mints a new URL.
- Can I go back to an older version?
- Yes. Run `drafty canvas versions <slug>` to list past versions, then `drafty canvas restore` to bring an earlier one back as the live page. Restoring saves a new version, so you can always move forward again.
- Do comments survive a new version?
- Yes. A comment stays anchored to its element even after you push a new version, so the feedback on a heading or paragraph carries over instead of being wiped.
- How do I make my own edits to a canvas?
- For a markdown canvas you own, hit Edit on the page itself — changes save as you type and each session becomes a version. For HTML canvases (or to edit locally), run `drafty canvas pull <slug>`, edit the file, and push it back.
Related
- Push and pull Drafty canvases from the CLI and Claude CodeUse the Drafty CLI to push a file to a canvas and pull comments back, so Claude and your reviewers stay on the same page.
- Can I edit a Drafty canvas directly in the browser?Markdown canvases you own on Drafty have an Edit toggle for editing right in the browser. Changes save as you type, each editing session becomes a version, and Claude's pushes wait while you write.
- Can I see who's viewed my Drafty canvas?Canvas owners get a Views panel — one row per viewer with their visit count and when they were last there, including your agent's CLI reads. Only the owner can see it, and embeds don't record.