---
title: Shareable page links (Copy link to this page)
---
# Shareable page links (Copy link to this page)

## What it is

Omniscio lets you copy a `https://` link to a specific app page — the Inbox, a top-level panel, a settings pane — and send it to a teammate. When they open it, Omniscio navigates them straight to that page on their own machine.

A shareable page link is a **navigation-only** shortcut, not a content share. It tells the recipient's Omniscio to open a particular well-known page. The link carries **no user data** — it opens the recipient's own app to their own view of that page, exactly as if they had clicked there themselves. There is nothing private in the URL; you can paste it into Slack, email, or Team Chat without concern.

This is distinct from [Session Sharing](artifact-sharing.md) and [Share Files / Artifacts](share-artifacts.md), which publish a snapshot of actual content (a conversation, a file, a chart) as a read-only web page. A page link publishes only a navigation target.

## Where to find it

On any shareable page — the Inbox, a top-level panel, or a settings pane — use **Copy link to this page** in the title-bar toolbar, or press its keyboard shortcut (rebindable in Settings → Keyboard Shortcuts).

## How it behaves

### How to copy a page link

While you are on a shareable page — the Inbox, a top-level panel, or a **settings pane** — use the **"Copy link to this page"** control in the title-bar toolbar, or press its keyboard shortcut (**Ctrl+Shift+C** by default, rebindable in Settings → Keyboard Shortcuts). Omniscio copies the public `https://shares.omniscio.com/open/<pageId>` link to your clipboard, ready to paste. The control appears only while the current page is shareable; on any other page it stays hidden.

### Which pages are shareable

Only **universal** pages — views that exist and mean the same thing for every Omniscio user — are in the shareable set:

- **The Inbox** (`inbox`).
- **Top-level panels** — Playbooks, Agent Status Board, Archive, Writer, Help (`playbooks`, `agent-status-board`, `archive`, `writer`, `help`).
- **Every shipped, user-facing settings pane** — each addressable as `settings-<section>` (e.g. `settings-appearance`, `settings-cli-control`, `settings-notifications`). Gated or internal-only settings sections are excluded, since they are not present for every user.

The full, exact list (each page's `id` + `label`) is always available from the `GET /pages` control-server endpoint. Ids are stable and append-only.

**Why private content is excluded.** Sessions, KMS notes, mind maps, and similar items exist only in the account that created them — a session id in your database does not exist in a colleague's database. Sending a link to one would open a dead page for the recipient. The shareable-page system restricts the set to pages whose id resolves identically for every user, so a link always works.

### What the recipient experiences

| Recipient has… | What happens |
|---|---|
| Omniscio desktop app installed | The link opens Omniscio directly to that page via the `omniscio://page/<id>` custom-protocol handler. |
| No Omniscio app | The link opens a lightweight web landing page at `https://shares.omniscio.com/open/<id>` that offers an **Open in Omniscio** button and a get-the-app link. Nothing else is shown. |

Either way, the recipient ends up on their own install looking at their own data — the link is strictly a navigation hint, not a door into your account.

### Public URL shape

```
https://shares.omniscio.com/open/<pageId>
```

Where `<pageId>` is one of the stable, append-only ids in the table above (e.g. `inbox`, `settings-appearance`). The interstitial at that path bridges to `omniscio://page/<id>` for app users.

## For agents

### Agent and CLI access

Agents can enumerate shareable pages and build links via two read-only control-server endpoints:

- **`GET /pages`** — returns the full list of shareable pages, each with its `id`, `label`, and both link forms (`appUrl` = `omniscio://page/<id>`, `webUrl` = the public `https://` link).
- **`GET /pages/:id/link`** — returns `{ id, label, appUrl, webUrl }` for a single page id, or `404` for an unknown id.

Both endpoints require the standard bearer token and are read-only — they only return metadata, they never navigate or mutate anything.

### Under the hood (for agents with repo access)

- **Source of truth**: [`src/shared/shareable-pages.ts`](../../src/shared/shareable-pages.ts) is the one canonical registry for the curated page set, the `omniscio://page/<id>` deep-link builder (`buildShareablePageAppUrl`), and the public URL builder (`buildShareablePageWebUrl`).
- **Public URL**: `buildShareablePageWebUrl(id)` returns `https://${PRIMARY_SHARE_HOSTING_DOMAIN}/open/${id}` or `null` for an unknown id.
- **Custom protocol**: the `omniscio://page/<id>` scheme is handled by the app's deep-link router; it resolves the id against `SHAREABLE_PAGES` and dispatches via the same gating-aware navigation paths the rest of the app uses (inbox path, `dispatchOpenView` for top-level views, `openSetting` for settings queries).
- **Id stability contract**: page ids are a **public contract** — lowercase alphanumeric plus hyphens, stable, append-only. An already-shared link must continue to work. To rename a page, change only its `label`; never reuse or rename an `id`.
- **Safety**: an unrecognised `omniscio://page/<x>` is a safe no-op; the resolver only acts on exact matches against the curated list, so a crafted link can open nothing but can never spawn a session or mutate state.

## Related

This is a different mechanism from publishing a file as a public link — the Share Artifacts page covers that family — and the Shares view is where published links are listed. The same link shape is what the app itself follows when it opens a page for you.
