Manage shares
A link you sent last month needs to die, or you need to know which links are still alive and who is holding your builds. This page is the share lifecycle after the minting.
The local record
Every share minted from a project is appended to .extension.dev/shared-previews.json inside that project. The file is gitignored, is never rewritten, and exists for one reason: the revokeUrl is the only handle that pulls a link back, and losing a chat transcript should not mean losing the ability to revoke.
Listing
extension_shares lists every share the token can see, live and dead, with each previewUrl, zipUrl, revokeUrl, createdAt, expiresAt, and revokedAt. A dead link is still listed, which is what makes "why does this link not work" answerable.
Shares come in three groups:
| Group | Meaning |
|---|---|
| Project | Owned by a project; any workspace member may revoke |
| Personal | Owned by you alone; only you may revoke |
| Unknown | Visible to the token but attributable to neither |
Pass projectPath and the listing reconciles the platform's answer with the project's own record:
| State | Meaning |
|---|---|
remoteOnly | Shared from another machine; absent from this checkout's record |
localOnly | Recorded here; nothing behind it on the platform any more |
remoteOnly rows are the ones to read when auditing what is out there: they are live links this checkout never minted. localOnly rows are safe to forget; the platform already did.
The console lists the same shares at /shares.
Revoking
extension_shares with action: "revoke" takes the artifactId or any URL of the share pasted in. The link you sent someone is enough to pull it back. Equivalently, DELETE the revokeUrl directly, or revoke from the console's Shares list.
WARNING
Revocation burns the link: the id is never recycled, the link cannot be restored or pointed at a different build later, and re-sharing mints a new address. Revocation limits future access; it does not recall copies already downloaded. Treat any build that shipped in a link as disclosed.
When it fails
- The link you want dead is in no listing: it was minted by a token you do not hold. Find the checkout that shared it and read its
shared-previews.json. - Revoke refuses on a personal share: only the person who minted it may revoke it. Project shares are the ones any workspace member can kill.
- The listing shows
localOnlyfor a link someone says still works: they are looking at a cached page. The platform has already deleted the build.
Next
- Share an unpublished build for review for minting the links this page manages
- Access tokens for what a token can see and revoke
