FabricFabric
Go Further

Sharing

Publish a Fabric Agents session to a public read-only URL. One-click share, revoke, what's included in the payload, and where the data lives.

Any session can be published to a read-only web viewer with one click. The viewer URL is self-contained — no login, no app needed to read it.

Share a session

  1. Open the session you want to share.
  2. Click the share button in the chat header (or Session menu → Share Online).
  3. Confirm. The session uploads and the share URL copies to your clipboard.

The URL looks like https://agents.fabric.pro/s/{id} where {id} is a random 18-byte URL-safe token (e.g. DRNQEiy8w2e1v5LPgKl8b). The token is unguessable — it's your share's access credential.

What the viewer shows

The viewer renders the session exactly as it appears in the app:

  • All user and assistant messages, streamed in order.
  • Tool calls, results, and inline renderings — code diffs, datatables, Mermaid diagrams, HTML previews, PDF previews, images.
  • Attachments inline where the original session had them.

Read-only: nobody can reply, re-run tools, or modify the session from the viewer. Your credentials and source tokens are never included.

What's included in the payload

The uploaded payload is the full session JSON — messages, tool calls, metadata. It does not include:

  • LLM provider API keys or OAuth tokens.
  • Source credentials (MCP bearer tokens, API keys, OAuth refresh tokens).
  • Files outside the session's own attachments.
  • Any other session in the same workspace.

File attachments referenced by the session are uploaded alongside the JSON so the viewer can display them.

Where shared sessions live

Shares live in a Cloudflare R2 bucket keyed by the share ID. There's no CDN edge caching on the payload itself — each view fetches fresh from R2 — but the viewer's static assets are cached aggressively for fast loads.

Payload format: JSON at sessions/{share-id}.json in R2. Binary attachments sit beside it under the same prefix.

Revoke a share

  • Session menu → Stop Sharing while the share is active.
  • The R2 object is deleted; subsequent visits to the URL return 404.

You can re-share a revoked session at any time — you'll get a new URL.

Update an existing share

  • Session menu → Update Share replaces the stored payload with the latest session state. The URL stays the same.

Use this after a long session when you want readers to see the latest messages without sending them a new link.

Who can see it

Anyone with the URL. The token is 18 random bytes, so guessing is infeasible — but treat the URL like a secret. Sharing it in a public place (Twitter, a blog post) makes the session public. If you want to take it back, Stop Sharing removes access immediately.

There's no per-viewer access control, password, or expiry in the current design. If you need those, keep the session private and send a PDF export instead.

Share a workspace vs a session

Sharing is scoped to a single session. If you want to share an entire workspace (sources, skills, agents, commands) with a teammate, commit the workspace folder to a repo instead — the per-file formats (SKILL.md, AGENT.md, COMMAND.md, config.json) are designed to travel.

Troubleshooting

"Failed to share" after clicking Share Online

  • Check your network — uploads go to agents.fabric.pro/s/api.
  • If you're on a corporate network, confirm outbound HTTPS is allowed to Cloudflare.

Shared link shows 404

  • Double-check the URL — characters like I / l / 1 are easy to mis-read.
  • The share may have been revoked. Contact the person who shared it.

Viewer renders messages but some attachments are missing

  • The viewer fetches attachments by share-scoped path. If an attachment upload failed mid-share, re-share to regenerate.

On this page