olace

[ remote access ]

Files from your computer

A paired device can browse the shared folders on your computer and attach a file to a chat as if it were on the device. Your phone opens Downloads on your Mac, taps the PDF you saved this morning, and the chat has it. The file crosses the same end-to-end encrypted connection as everything else between paired devices; Olace's servers never see a folder name or a byte. If the model later reads part of an attached file during a tool turn, only the file's name and which part it reads go out; the contents stay on your devices.

Turn it on

On the computer that holds the files: Settings › Remote Access › Files for paired devices. Or, from its terminal:

olace files on

Downloads, Documents and Pictures are shared by default. Add or remove folders on the same screen, or with olace files allow <folder> and olace files remove <folder>. The list lives on the computer only; a paired device cannot change it.

On Windows and Linux nothing else is needed: the background service runs as you and reads what you can read. On Windows, these folders are wherever Windows keeps them, so a Documents folder that OneDrive backs up is the one shared. On Linux they are wherever your desktop keeps them, so a localized or moved Downloads is the one shared.

On a Mac, the first time the background service reads a folder macOS asks for permission. Allow it, and if the prompt was missed open System Settings › Privacy & Security › Files and Folders and allow olace-daemon for that folder. The settings screen tells you which folder still needs it.

A Mac can also share its Photos library: run olace files photos on while you are at the Mac, and paired devices browse it as a folder named Photos.

Attach one

On the phone or any paired device, open the attach menu in a chat and choose Files on <computer>. Browse or search the shared folders, tap a file to attach it, or press and hold to pick several. The file lands in the composer like any other attachment and is sent with the message.

Files over 10 MB are shown but cannot be attached yet. Photos (JPEG, PNG, WebP, BMP, TIFF, and HEIC from a Mac) are not held to that limit, because the computer prepares them before they travel. GIF, SVG, and AVIF cannot be attached from a computer.

The row appears in the attach menu of the phone and desktop apps once a computer is paired. It names the computer, or reads Files on Paired Devices when you have several, and it is dimmed while no paired computer is online.

Photos are prepared on the computer

A photo off a camera or a phone is far larger than a chat needs: a 12 MB frame carries detail that no screen and no model will use. So the computer does that work before anything crosses. It reads the picture, turns it the right way up, and makes the smaller copy your device would have made itself, along with a preview for the message. What travels is the prepared copy, not the original.

Three things follow from that, and they are the reason it works this way rather than sending the file and shrinking it afterwards.

Large photos just attach. The 10 MB limit above is about what crosses the connection, and a prepared photo is comfortably under it, so the size of the original stops mattering. A 40 MB scan attaches as readily as a screenshot.

Location data does not travel. Cameras write where a picture was taken into the file. Preparing it builds a new image from the pixels alone, so the location, the camera body, the timestamps and every other tag are gone before the photo leaves the computer, on every path including a HEIC converted from a Mac's photo library. Not filtered out, simply never carried over.

Your phone does less. The decoding and resizing happen once, on the machine that already has the file and is plugged in, instead of on a phone on battery.

JPEG, PNG, WebP, BMP and TIFF are prepared this way, as are HEIC and HEIF photos on a Mac. Transparency is kept where the picture has it.

GIF, SVG and AVIF are never prepared. Preparing an animation would deliver one frozen frame, which is not the picture you chose. So they cannot be attached from a computer, and the picker dims them, so you see that before you tap rather than after.

What is shared

  • Only the folders on the list, and only for reading. Nothing on a paired device can write to the computer.
  • Hidden files and folders are never shown, including files Windows marks hidden or system and names a Linux folder's .hidden file lists. A link that points outside a shared folder (a symlink, or a junction on Windows) is not followed.
  • The whole disk, the home folder itself, private folders like .ssh, and system folders like /proc cannot be added to the list.
  • Only the files you pick are transferred. Browsing sends folder listings, not contents.
  • Prepared photos are kept on the computer for a while so picking the same one twice is quick. They live in the service's own folder, readable only by you, and are deleted when you turn sharing off or take a folder off the list. olace files cache clear removes them at any time.

From the terminal

olace files                       # is sharing on, and which folders
olace files ls                    # the shared folders
olace files ls Downloads          # one folder, as a paired device sees it
olace files search report --in Documents
olace files cat Downloads/notes.txt
olace files cache clear           # delete the photos this computer has prepared

ls, search and cat go through the running service, so what they show is exactly what a paired device gets, folder permissions included.