Skip to call content
HeapFile Link

Room Waiting · Not connected

HeapFile Link call
Not signed in
A remote participant is controlling this computer

No active remote controller.

You are sharing your screen Whole-desktop input is not confined to one window. Stop sharing to end it.

Step 1 of 4 · Sign in

Create a room to start a call

Choose Create a room. You are asked to sign in first, and your room is created right after. Opened an invitation link instead? Sign in and you join straight away.

Audio + screen sharing · optional camera · up to 3 people

Start a call. Share your screen.

Create a room, send the link, and talk. Show your screen whenever you need to. It runs in your browser, your camera stays off unless you turn it on, and the call goes directly between the people in it.

Check your setup

Pick your microphone and speaker. Nothing is sent anywhere until you are in the call.

Browser call, AI meeting notes and text replies work here. Live captions and optional speech depend on this browser. Local models, AI computer control and native features require installed HeapFile.

  • Create a room — you become the host and get a link to send. You are asked to sign in first if you have not.
  • Join invitation — use this after opening a link someone sent you.
  • Check microphone and speakers — a private test before you call. Nothing is sent anywhere.

Sign in to continue.

  1. Sign inSo the people you call can see who you are.
  2. Create or joinStart a room, or open the link someone sent you.
  3. Invite and admitSend your link. The host lets each person in.
  4. Talk and shareUnmute to talk, Share to show your screen.

Private by design. The call goes directly between the people in it, and each connection is checked automatically with signed device keys. There is nothing for you to do. Account and display names are only claims, not proof of identity.

Reconnecting…

Pre-call audio check

Starting the check turns on microphone capture locally so you can see its level. Nothing is sent to a call or uploaded. Stop or close the check to turn capture off.

Microphone permission has not been requested.

Choosing a microphone or speaker applies right away and is remembered for your calls. The check below is optional.

Microphone is off.

Invite someone

Copy this link and send it to the person you want to talk to. They open it, sign in, and wait for you to let them in.

Anyone with this expiring link can sign in and request to join. You must admit them before they participate. The link does not permit capture or control. Rooms support up to three people total, including the host.

Your mail app opens a draft with recipients in BCC. HeapFile does not send or store recipient addresses.

Confirm AI agent pairing

The identified provider will be able to send signed, bounded control requests. Each controlled computer still requires its own local approval.

Keyboard shortcuts

M
Toggle mute
Space (hold)
Push to talk while muted
S
Start / stop screen share
V
Turn camera on / off
F
Full screen for a shared screen (Esc exits)
P
Toggle participants panel
C
Toggle chat panel
I
Open invitation (host)
E
Leave call (asks to confirm)
?
Show this list
Esc
Close the open panel or dialog

How HeapFile Link works

Private audio and screen-share calls for up to three people. You talk, you can show your screen, and your camera is optional and off until you turn it on.

  1. Sign in with your HeapFile account.
  2. Create a room — or open a link someone sent you and sign in; you join straight away.
  3. Invite and admit — the host sends the link and clicks Admit for each person.
  4. Talk and share — unmute, and use Share to show your screen.
Is my call private?

Yes. Audio and screen sharing go directly between the people in the call, and Link checks each connection automatically with signed device keys before anything is shared. There is nothing to read out or confirm. If you would rather check a code with someone yourself, there is an optional switch under Advanced.

Why is Share greyed out?

Sharing turns on a moment after the other person connects, and only one person presents at a time. If you are not the presenter, the host can make you the presenter from the People panel.

Is there a camera?

Yes, and it is optional. Your camera stays off until you choose Camera in the control bar. Under More you can blur your background, replace it with a picture, or pick a look. Your video goes only to the people in the call.

How do I invite someone?

Hosts: choose Invite in the control bar, copy the link and send it. When the person arrives, an Admit banner appears at the top of your call.

How do I leave or end the call?

Choose Leave to go and let the call continue for others, or End (host) to close the room for everyone. The keyboard shortcut is E.

Can an AI assistant use Link for me?

Yes. Every control has a plain name and a stable data-lk-action hook, and the page publishes a machine-readable guide. Anything that approves access, such as admitting a person or confirming codes, stays a human decision.

HeapFile Link — operating guide

HeapFile Link is a browser call page for up to three people with audio, screen sharing and an optional camera that is off by default. Every control has a stable data-lk-action attribute and an accessible name; prefer that attribute over text or position. The current phase is document.body.dataset.lkPhase and the same information as JSON is returned by window.heapFileLinkHelp.state(). The full machine-readable manifest is in script#lk-agent-manifest.

  1. Phase signed-out: activate [data-lk-action="create-room"], which starts account sign-in and then creates the room; the human completes the sign-in. If the page URL carries an invitation, activate [data-lk-action="sign-in"] first.
  2. Phase ready: activate [data-lk-action="create-room"] to host a call. If the page URL carries an invitation (phase invited), activate [data-lk-action="join-invitation"] instead.
  3. As host, activate [data-lk-action="create-invitation"] (or invite) and read the link from #invite-url. Give it to the person you want to call. When someone is waiting (phase host-admit), tell the human host; admitting is [data-lk-action="admit-member"] and is a human decision.
  4. Phase verify-codes appears only when the person opted into High-security verify or asked to compare codes themselves: the human must compare each short code with each peer over another channel. Read the codes from #verification-code and relay them to the human. Do not activate [data-lk-action="confirm-codes-match"] unless the human states that the codes matched.
  5. Phase live: [data-lk-action="toggle-mic"] has aria-pressed="true" when the microphone is muted. [data-lk-action="share-screen"] shows your screen and is enabled only for the current presenter; [data-lk-action="stop-share"] ends it. [data-lk-action="toggle-camera"] turns the optional camera on or off; aria-pressed="true" means the camera is ON, and it is the human's decision.
  6. Finish with [data-lk-action="leave-call"] (guest) or [data-lk-action="end-room"] (host, ends the room for everyone).

Status text for people lives in #lk-guide-title and #lk-guide-text. Low-level state remains in #status, #room-message, #room-state and #transport-state.