spin share signed-links --service web --service api --expires-in 2hCreates a named signed dev link for the workspace and prints the one-time URL, host, selected services, and expiration.
Docs / Signed dev links
Spinnery signed dev links are app handoffs, not tunnels. Use spin share [workspace] to create, list, or revoke the signed URL that names the service, workspace, organization, route family, and expiration before the gateway creates a browser session for dev.spinnery.dev traffic.
$spin share signed-links --service web --service api --expires-in 2h
service: web
workspace: signed-links
org: acme
host: web--signed-links--acme.dev.spinnery.dev
session: web, /api, assets, websockets; expires 2h
wake: verified dev request can start sleeping runtime
blocked: ssh, secrets, logs, runtime admin
CLI workflow
The share command is the product workflow for reviewer links. It creates scoped signed dev links, lists existing links for handoff review, and revokes links without exposing token material.
spin share signed-links --service web --service api --expires-in 2hCreates a named signed dev link for the workspace and prints the one-time URL, host, selected services, and expiration.
spin share signed-links --listShows existing signed links, status, allowed services, hosts, paths, expiration, and safe session counts without printing token hashes.
spin share signed-links --revoke link_123Disables an existing signed dev link at the gateway without deleting the workspace, shell, runtime state, or logs.
--jsonReturns bounded JSON for agents and scripts while omitting secret token material from list and revoke output.
Session lifecycle
The host shape keeps links readable, but the signed session is the permission boundary. Runtime wake, route readiness, and request forwarding happen only after the signed dev link scope is verified.
spin shareRun spin share for the workspace, choose the allowed services, and set an expiration before the reviewer gets the one-time signed dev URL.
dev.spinnery.dev/share/tokenThe first request checks the signature, creates a workspace-scoped browser session, wakes a sleeping runtime when needed, and only then forwards app traffic to the selected service.
web + /api + assets + websocketsBrowser routes, same-origin API calls, static assets, and realtime paths reuse the signed dev session so reviews behave like the real app.
expire or revoke at gatewayExpired or revoked links stop at the gateway while shell access, repo state, runtime sleep, and workspace metadata remain governed separately.
Boundary
A signed dev link can wake the runtime for review traffic, but it does not become workspace administration. Operational access remains behind Auth0 roles, CLI access, Tailscale policy, and root policy.
web / /api / assets / websocketsssh / secrets / logs / adminscope + readiness + expiration