How does Linkly AI protect user data privacy?
Linkly AI is built on a local-first architecture. Your documents, full-text index, vector index, and the embedding model itself all run on your device — nothing is uploaded to any server by default.What stays on your device
- Document originals: stay in their original folders. Linkly AI only reads them — it does not copy or relocate them.
- Full-text index (BM25): built locally with Tantivy.
- Vector index: stored in a local database.
- Embedding model: a local embedding model runs entirely on your device. Apple Silicon Macs automatically use Metal GPU acceleration.
- App logs: written to local files only — never auto-uploaded.
Where chat data goes
When the chatbot calls a large language model, where the request goes depends on the provider you choose:Local model
Linkly Official
api.linkly.ai. Requests pass through Linkly’s servers.Third-party direct
User Experience Improvement Program (telemetry)
To help us understand which features are used and how the app is running, Linkly AI sends an anonymous usage report by default:Privacy commitments
- No third-party analytics SDKs (Google Analytics, etc.).
- We do not read your browser history or clipboard.
- No mandatory account login — core features work offline.
- App logs stay on your machine. They are sent to us only if you explicitly share them.
How long does Linkly AI take to finish indexing?
Indexing time depends on the number of files, file types, machine performance, and indexing mode. Linkly AI indexes in three stages:Filename quick index (seconds)
Full-text extraction and BM25 index (minutes to hours)
Vector embedding (minutes to hours)
What affects speed
- File count: roughly linear with total time.
- File format: plain text is fastest; PDFs require page parsing.
- Machine performance: Apple Silicon Macs use Metal GPU acceleration for embeddings, which is significantly faster than CPU inference. On Windows / Linux, embedding currently runs on CPU.
- Indexing mode: pick
Performance / Balanced / Autoin Settings → Indexing. Performance mode uses higher concurrency and more CPU; Auto upgrades to Performance when the system is idle.
Rough expectations
These are order-of-magnitude estimates only — actual times vary considerably with hardware and file mix:Why can’t I find a particular file?
Start with one triage step — search for it by filename. The three possible outcomes point to three completely different problems:Four reasons
What cloud placeholders are about
iCloud Drive, OneDrive, Dropbox, Synology Drive and similar services all have a files on-demand feature (also called “online-only” or “smart sync”): the file is visible in Finder or File Explorer, but its content still lives in the cloud and is only downloaded when you double-click to open it. Linkly AI deliberately does not open these files — opening one triggers a download, which would mean a single indexing pass could pull hundreds of gigabytes of your cloud drive onto your machine, filling the disk and saturating your bandwidth. So it judges by attributes only: recognise a placeholder, skip the body, keep the filename indexed. Scans are triggered automatically on app start, on configuration changes (adding or removing folders, for example), and when a burst of file changes is detected. If you want one right now, restarting the app is the easiest way.What to do about a signature mismatch
This means the file header’s signature bytes don’t match the extension. It’s common with stub or shortcut files produced by certain sync tools, half-downloaded files from an interrupted transfer, or files whose extension was renamed by hand. Open it with the corresponding application to check — if it doesn’t open at all, Linkly AI was right to skip it; if the extension is simply wrong, correcting the extension is enough.Found by filename, no badge, but the content still isn’t searchable
No badge means the file itself is fine — it’s the content extraction step that hasn’t happened, or can’t. In order of likelihood:- The relevant extraction switch is off. Images and scanned PDFs depend on Image Text Recognition (OCR); audio and video depend on Audio transcription and Video transcription — and those last two are off by default. Check under Settings → Index.
- Its turn hasn’t come up yet. OCR and media transcription are the heaviest tasks, so a slow queue is normal. The status detail on the settings page shows what they’re currently working on.
- This particular file failed to parse. A corrupted file or an encrypted PDF, for instance. That case produces no badge — the file is simply skipped and not retried.
- A legacy
.docexported on macOS cannot be parsed yet. Files produced bytextutilor by the “Word 97” export in Pages use an internal layout that differs from Microsoft Word’s, so they are skipped for now. Re-save them as.docxin Word, or convert them to another supported format.
Index Settings
Not found even by filename
This means the file never entered the index at all. There are three common causes: 1. The folder isn’t being watched. Check under Settings → Folders that its parent directory is in the list. The first-run onboarding flow only indexes the bundled samples; your own directories have to be added by you. 2. The format isn’t on the supported list. Linkly AI uses an allowlist: only PDF, DOCX, DOC, PPTX, XLSX, CSV, EPUB, RTF, Markdown, TXT, HTML, images, audio, and video extensions are picked up. htm and avi are currently not among them — a file outside the allowlist doesn’t even get its filename registered. The full list is in the Tools Introduction. 3. It’s inside an ignored directory. The following directories, and everything below them, are skipped wholesale:- Hidden directories starting with a dot (
.git,.cache,.dropbox.cacheand so on) node_modulesand__pycache__and similar build / dependency caches- NAS sync metadata directories:
#recycle,#SynoRecycle,@eaDir(Synology),@Recycle(QNAP) - System directories:
$RECYCLE.BIN,System Volume Information
.gitignore are likewise not indexed. If your notes happen to sit in a repo’s ignored directory, move them out, or add that directory on its own under Settings → Folders.Why can’t I search what was said inside my audio and video files?
Because audio and video transcription is off by default. While it’s off, media files are still registered in the index (so filename search finds them), but what was said inside them is never transcribed. Go to Settings → Index and turn on Audio transcription and Video transcription. The app downloads the speech recognition model and then works through all your existing media files automatically — no rescan and no index rebuild required.Index Settings
Can I use the AI features on a machine without internet access (offline / intranet)?
Yes. OCR, speech transcription, and semantic search all run locally (cloud features like the AI chat and Skills installation are the exception) — the only catch is that the model files they depend on (about 870 MB) are normally downloaded on first run. On a machine with no internet access, download the installer and the official offline model pack on a connected machine, carry them over, and install step by step.Offline Installation Guide
What should I do if the Linux AppImage will not start?
Linux distributions vary widely in their base runtime libraries, desktop components, and drivers. An AppImage carries most application dependencies, but it does not replace the operating system’s glibc, C++ runtime, FUSE, or graphics drivers, so it cannot guarantee that it will run on every Linux distribution. The current Linkly AI Linux package is an x86_64 AppImage and requires glibc 2.35 or newer. Start by running these commands from the directory containing the AppImage:uname -m should print x86_64. The last command launches the app while saving terminal errors so you can match them to the cases below.
Permission denied
Permission denied
sudo; doing so can leave configuration and data files that your regular user cannot access later.FUSE, libfuse.so.2, or AppImage mount errors
FUSE, libfuse.so.2, or AppImage mount errors
GLIBC_x.y, GLIBCXX_x.y, or CXXABI_x.y not found
GLIBC_x.y, GLIBCXX_x.y, or CXXABI_x.y not found
GLIBC_x.ycomes from glibc; the current minimum is glibc 2.35.GLIBCXX_x.yandCXXABI_x.ycome from the system C++ runtime,libstdc++.
Exec format error, or uname -m is not x86_64
Exec format error, or uname -m is not x86_64
aarch64 / arm64 devices yet. Changing permissions or installing runtime libraries cannot fix an architecture mismatch.The process starts, but no window appears or it exits immediately
The process starts, but no window appears or it exits immediately
linkly-ai-linux-startup.log:The app runs, but its built-in update fails
The app runs, but its built-in update fails
~/Applications, rather than a read-only mount or a root-owned system directory:app.log, use the terminal output saved in linkly-ai-linux-startup.log instead.Where do I find the settings I need?
The settings window is split into pages by function. These are the ones people look for most:Settings → General: language, launch at login, shortcut
Settings → General: language, launch at login, shortcut
- Language: the interface display language
- Launch at Login: start Linkly AI when you log in to your system
- Silent Launch: when started at login, stay in the background instead of opening the main window — on by default, so indexing and the MCP server run without getting in your way
- Search Shortcut: the global shortcut that toggles the Launcher. Click once to re-record it, or use Reset to default. If it says the combination is already in use or reserved by the system, pick another one
- Linkly AI Space: the folder that’s indexed by default — you can open it or move it elsewhere; see Linkly AI Space
Settings → Appearance: theme, font size, Dock icon
Settings → Appearance: theme, font size, Dock icon
- Theme: Light / Dark / System
- Font Size: Small / Standard / Large, applied to both the interface and chat content
- Show Dock Icon (macOS): turn it off and the app lives only in the menu bar tray, taking up no space in the Dock
Settings → About: version, updates, data directory
Settings → About: version, updates, data directory
- Check for Updates: manually check for and download a new version; when it’s downloaded, click Restart to Update
- Join Beta Program: get beta updates and early access to new features, at the cost of possibly running into less thoroughly tested changes
- Data Directory: where the index, settings, and logs are stored — click Open to go straight there (that’s where you grab the log)
- From here you can also jump to the changelog, privacy policy, terms of service, and the CLI and Skills documentation
Settings → Shortcuts: every shortcut in one place
Settings → Shortcuts: every shortcut in one place
⌘ + / (Ctrl + / on Windows/Linux) in the Launcher opens this page directly.How do I get Linkly AI’s application runtime logs?
While running, the app automatically writes its full log to a localapp.log file (capped at 2 MB per file, with rotation). Attaching this file when you report an issue dramatically speeds up debugging. Sensitive data is already redacted.
There are two ways to grab the log:
Option 1: Open from inside the app (recommended)
This is the simplest path:Open the About page
Open the data directory
Grab app.log from the logs subfolder
logs/ subdirectory and send us app.log.Option 2: Open the data directory manually
If the app has crashed or won’t launch, open the folder directly from disk:- macOS
- Windows
- Linux
- Open Finder.
- From the menu bar, choose Go → Go to Folder… (or press ⌘ + ⇧ + G).
-
Paste this path and press Return:
-
Find
app.login that folder and send it to us.
What if the app crashes during startup?
If the app crashes immediately on launch,app.log may not have been written yet. In that case we save the crash information to a separate startup crash log linkly-ai-startup-panic.log. Find it at the path below.
- macOS
- Windows
- Linux
- Open Finder.
- From the top menu choose Go → Go to Folder… (or press ⌘ + ⇧ + G).
-
Paste the path below and press Enter:
-
Find
linkly-ai-startup-panic.login that folder and send it to us.

