Skip to main content

Как Linkly AI защищает данные?

Что остаётся на устройстве

  • Originals остаются в исходных папках: app только читает, не копирует и не переносит
  • BM25 строится локально Tantivy, vectors — в local DB
  • Embedding model работает на устройстве; Apple Silicon использует Metal acceleration, Windows/Linux — GPU при наличии дискретной видеокарты
  • App logs только локальны и не auto-upload

Куда уходят данные чата

Это зависит от выбранной модели. Официальная облачная модель получает сообщения и фрагменты, которые Chatbot выбрал для ответа. При BYOK данные идут непосредственно указанному провайдеру. Для полностью локальной обработки используйте OpenAI-совместимый сервер в своей сети. Official model идёт через api.linkly.ai к upstream provider; direct third-party минует Linkly; Ollama/LM Studio остаётся локально. Linkly AI не загружает originals для local search. Только explicit cloud library Push отправляет выбранный набор.

Программа улучшения продукта

Anonymous report по умолчанию включён: Отключается в Settings → Data Privacy → User Experience Improvement Program; unsent in-memory events отбрасываются.

Обязательства

  • Нет third-party analytics SDK вроде Google Analytics
  • Browser history и clipboard не читаются
  • Mandatory account отсутствует; core работает offline
  • Logs уходят только при вашем явном sharing

Сколько занимает индексирование?

Три стадии: filename за секунды; full-text extraction/BM25 от минут до часов; vector embedding от минут до часов. Search доступен по завершённым слоям и не блокируется.

Что влияет на скорость

  • Count примерно линейно влияет на время; plain text быстрее PDF/OCR/media
  • Apple Silicon Metal значительно быстрее CPU embeddings; Windows/Linux используют GPU при наличии дискретной видеокарты, без неё — CPU
  • Performance mode выбирается в блоке Policy страницы Index management: Performance использует больше concurrency; Auto включает его, когда компьютер простаивает

Примерные ожидания

Прогресс (Processed / Pending / Can’t extract) виден на странице Index management главного окна; пока идёт индексирование, в нижней строке Launcher вращается значок, который тоже открывает эту страницу. Начните с сотен/тысяч, затем добавляйте больше.

Используют ли embedding и OCR встроенную или дискретную видеокарту?

В Windows и Linux используется только дискретная видеокарта; встроенная графика не участвует — на ней эти модели работают даже медленнее, чем на CPU того же компьютера, поэтому без дискретной карты используется CPU. Mac на Apple silicon использует встроенный в чип GPU.
  • Анализ макета OCR использует GPU только для PDF от 4 страниц; отдельные изображения и короткие PDF обрабатываются на CPU
  • При нескольких дискретных картах семантический индекс берёт первую в системе, а не самую ёмкую; анализ макета OCR использует карту, назначенную Linkly AI в графических настройках Windows
  • При нехватке видеопамяти, неподдерживаемом драйвере или повторяющихся ошибках GPU работа автоматически переходит на CPU, индексирование не прерывается
  • Если семантический индекс переключён на облачную модель, локальный GPU не используется. Windows и Linux на ARM пока используют только CPU
Чтобы полностью отказаться от GPU, нажмите значок состояния индекса внизу левой боковой панели главного окна, откройте Index management → вкладка Advanced → Hardware и выключите Hardware acceleration. В Windows и Linux всё перейдёт на CPU (медленнее, но стабильнее); на Mac переключатель управляет только анализом макета OCR, семантический индекс и транскрибация не меняются. Повторное включение снова пробует использовать GPU.

Почему определённый файл не находится?

Сначала ищите по filename: Файлы, тело которых не попало в индекс, перечислены по причинам во вкладке Can’t extract страницы Index management; для большинства категорий есть Retry all или повтор по одному файлу.

Значки

При наведении на значок показывается то же пояснение. Такие файлы остаются в выдаче, но без текста. Файлы с extraction failed повторяются автоматически после изменения содержимого, их также можно повторить вручную во вкладке Can’t extract.

Облачные заглушки

Linkly AI намеренно не открывает on-demand placeholders, иначе scan мог бы скачать сотни GB. В OneDrive выберите Always keep on this device, Dropbox — Make available offline, iCloud — Download Now. Следующий auto scan проиндексирует body без rebuild/re-add; restart запускает scan немедленно.

Несовпадение подписи

Signature bytes не совпадают с extension: sync stub, half-download или ручное rename. Откройте в соответствующем app; если extension неверен, исправьте. Transient IO/permission error не маркируется mismatch, чтобы реальный файл не был permanently rejected.

Файл находится по имени, но содержимое не ищется

По порядку: выключен Text recognition (OCR) для images/scanned PDFs или Audio transcription / Video transcription (по умолчанию off) — проверьте раздел Management страницы Index management; тяжёлая queue OCR/транскрибации ещё идёт — там же видно, какой файл обрабатывается сейчас. Отдельный случай: устаревший .doc, экспортированный на macOS через textutil или «Word 97» в Pages, пока не разбирается из-за другой внутренней раскладки файла — пересохраните его как .docx в Word.

Файл не находится даже по имени

  1. Parent directory не watched: проверьте в Library главного окна и при необходимости добавьте её через Add folder в левой колонке
  2. Extension не allowlist: поддерживаются PDF, DOCX, DOC, PPTX, XLSX, CSV, EPUB, RTF, MD/MDX, TXT, HTML, images, audio/video; htm, avi пока даже filename не регистрируют
  3. В игнорируемом каталоге: скрытые dot-folders, node_modules, __pycache__, #recycle, #SynoRecycle, @eaDir, @Recycle, $RECYCLE.BIN, System Volume Information
В Git repo также соблюдается .gitignore. Добавьте ignored notes отдельно через Library → Add folder или перенесите.

Можно добавить файлы с NAS?

Да. Сначала смонтируйте общую папку NAS в системе, затем добавьте её в библиотеку как обычную локальную папку:
  • Windows: «Подключить сетевой диск» в Проводнике (например, Z:\) или сетевой путь вида \\NAS-name\share
  • macOS: Finder → «Переход → Подключение к серверу», smb://NAS-address/share; после монтирования папка находится в /Volumes
  • Linux: сетевые расположения системы или mount для общих ресурсов SMB / NFS
Затем в Library главного окна нажмите Add folder в левой колонке и выберите смонтированную папку. Такая папка получает метку External.
  • Отключение NAS не удаляет проиндексированное. Папка помечается Offline, приложение проверяет её каждые 15 минут и после восстановления связи сканирует заново
  • Изменения с других компьютеров могут замечаться не сразу: система не всегда сообщает об изменениях на сетевых ресурсах, особенно в macOS и Linux; пропущенное подхватится при следующем запуске Linkly AI
  • Первое индексирование медленнее, чем с локального диска — зависит от сети и скорости чтения NAS
  • Корзины и каталоги миниатюр Synology/QNAP (#recycle, @eaDir и т. п.) пропускаются автоматически

Почему нельзя искать речь в аудио и видео?

Расшифровка по умолчанию выключена. Включите Audio transcription и Video transcription в разделе Management страницы Index management. Существующие файлы будут обработаны автоматически; повторно добавлять папку не нужно.

Как ограничить диалог одним документом?

Два способа:
  • Начать с документа: выберите файл в Library и нажмите Chat with this file на панели над ним или в контекстном меню; оно есть и у результатов Find. Создаётся новый диалог с файлом в поле ввода. Так же работают папки и библиотеки (Chat with this folder, Chat with this library)
  • @ в поле ввода: в поле Ask введите @ и часть имени файла, затем выберите его
Выбор действует только на текущее сообщение: после отправки поле очищается, и если в уточняющем вопросе не указать файл снова через @, ИИ ищет по всей базе и может сослаться на другие документы. Кроме того, это лишь подсказка ИИ, а не жёсткое ограничение области поиска. Чтобы весь диалог касался только одного документа:
  1. Указывайте файл через @ в каждом уточняющем вопросе
  2. Пишите в вопросе: «Отвечай только по этому документу; если в нём этого нет, так и скажи»
Файл должен быть уже проиндексирован. Вложения в диалог загружать нельзя — сначала добавьте файл в библиотеку.

Сколько файлов вмещает облачная библиотека? Считается ли размер?

Считается число файлов, а не их размер; общего лимита объёма нет: В облако отправляются не исходные файлы, а извлечённый из них текст (для аудио и видео — расшифровка), структура и данные для поиска, поэтому PDF на сотни МБ и текстовый файл на несколько КБ считаются одинаково — как один файл. При достижении лимита:
  • если Push сделает число файлов больше лимита, он не выполняется целиком, и приложение показывает Library file limit reached
  • Push, который только изменяет или удаляет существующие файлы, не ограничивается
  • уже загруженные файлы сохраняются и не блокируются
Если извлечённый текст одного документа больше 10 МБ, облако не строит для него поисковый индекс. Подробнее о квотах: Облачные библиотеки.

Можно работать без интернета?

Да. OCR, ASR и semantic local, но модели по умолчанию скачиваются из сети: около 890 MB моделей семантического поиска и OCR — при первом запуске, около 161 MB модели распознавания речи — после включения расшифровки аудио и видео. Заранее перенесите installer и official model pack по offline guide. Cloud Chatbot, account, cloud libraries и updates без сети недоступны.

Linux AppImage не запускается

Выполните chmod и не запускайте через sudo, иначе config/data могут стать недоступны regular user.
Используйте только официальный репозиторий дистрибутива: Ubuntu 22.04/Debian 12 sudo apt install libfuse2; Ubuntu 24.04+ libfuse2t64; Fedora sudo dnf install fuse-libs; Arch sudo pacman -S fuse2; openSUSE sudo zypper install fuse libfuse2. Временно: ./LinklyAI-*.AppImage --appimage-extract-and-run; это не исправляет несовместимость GLIBC, CPU или драйверов.
Обновите official packages и distribution. Минимум glibc 2.35. Не заменяйте /lib/.../libc.so.6, не копируйте runtime из другой distro и не смешивайте repos/LD_LIBRARY_PATH — можно сломать OS.
AppImage есть для x86_64 (_amd64) и arm64 (_aarch64); скачайте ту, что соответствует uname -m.
Обновите system/graphics drivers; сохраните terminal log. При повторе приложите cat /etc/os-release, uname -a, echo "session=$XDG_SESSION_TYPE desktop=$XDG_CURRENT_DESKTOP". Не закрепляйте случайные WebKit/GTK env vars из интернета.
AppImage должен лежать в writable user directory, например ~/Applications, а не read-only/root-owned mount.
Если app.log ещё не создан, используйте startup terminal output.

Есть версия для Linux-сервера или Docker?

Пока нет, она в подготовке. Если у вас есть идеи, потребности или желание попробовать раньше других — свяжитесь с нами. А пока можно установить на сервер или в контейнер Linkly AI CLI и обращаться к Linkly AI Desktop на другом компьютере по LAN или удалённо — см. следующий раздел.

Как обратиться через CLI к Linkly AI на другом компьютере?

Linkly AI CLI по умолчанию подключается только к Linkly AI на этом компьютере. Для другого компьютера есть два способа, оба требуют CLI 1.0.0 или новее (версия — linkly --version, обновление — linkly self-update).
Когда оба компьютера в одной сети.
1

Включите LAN-доступ на целевом компьютере

Нажмите значок Agent внизу левой боковой панели главного окна и откройте Agent usage. В разделе Management включите Allow LAN access; Allow local access тоже должен оставаться включённым. При первом включении токен создаётся автоматически.
2

Скопируйте адрес и токен

На той же странице в разделе Integration нажмите View MCP connection settings и скопируйте из раздела LAN адрес (вида http://192.168.1.10:60606/mcp) и токен.
3

Сохраните подключение на компьютере с CLI

Выполните сами, в своём терминале, а не через ИИ-помощника:
Достаточно одного раза: в новых терминалах и сессиях агента токен вводить не нужно.
4

Добавляйте --lan

Проверить подключение: linkly doctor --lan.
  • CLI хранит только одно LAN-подключение: повторный set-key --lan перезаписывает прежнее. Для временного доступа к другому компьютеру добавьте к команде --endpoint <адрес> --token <токен> — так ничего не сохраняется
  • Сохранённые подключения лежат в ~/.linkly/credentials.json
  • LAN-доступ включайте только в доверенной сети — дома или в офисе. Не вставляйте токен ни в какой диалог с ИИ: содержимое диалога отправляется поставщику модели и сохраняется в истории чата. При утечке токена или если он попал в диалог, перегенерируйте его в View MCP connection settings: старый сразу перестанет работать
  • Агенты, использующие CLI через Skills (например, Claude Code), тоже автоматически берут сохранённое подключение; нужны CLI 1.0.0 и Skills 0.9.0 или новее

Где находятся нужные настройки?

Settings открываются через значок аккаунта в левом нижнем углу главного окна → Settings или ⌘ + , (Windows/Linux — Ctrl + ,). General также содержит язык, Launch at Login, включённый по умолчанию Silent Launch, Space и App Data (данные приложения можно перенести на другой диск: приложение перезапустится и перенесёт их, см. Как перенести данные приложения на другой диск). Appearance — тема, размер шрифта и Dock icon macOS. About — Check for Updates, restart и Beta. Shortcuts — глобальные сочетания Search (Launcher) и Main window (их можно перезаписать, Restore Default или Clear; если сочетание занято или зарезервировано системой, выберите другое) и список всех сочетаний; ⌘/Ctrl + / в Launcher открывает этот список. Pause Indexing находится не в Settings: кнопка Pause на первой карточке блока Status страницы Index management или пункт меню по правому клику на значке в трее.

Можно изменить расположение Linkly AI Space?

Да. Linkly AI Space — папка по умолчанию для заметок, клипов и других материалов:
  1. Откройте Settings → General и найдите строку Linkly AI Space
  2. Нажмите кнопку-иконку Change справа и Continue в диалоге подтверждения
  3. Выберите папку: Linkly AI создаст в ней папку LinklyAI как новое пространство. Если выбранная папка уже называется LinklyAI, используется она сама
Изменение не переносит существующие файлы: старые остаются на месте и продолжают индексироваться, а новые заметки и клипы сохраняются в новом месте. Старые файлы переносите вручную. Чтобы вернуться к исходному расположению, нажмите Restore Default рядом.
Если при изменении появляется That’s a system folder., вы меняете строку ниже — App Data, а не Linkly AI Space. Данные приложения нельзя размещать в системных каталогах вроде Windows; выберите обычную папку (см. следующий раздел).

Как перенести данные приложения на другой диск?

App Data — папка, где Linkly AI хранит базу данных, индекс, локальные модели, настройки и журналы; при большом объёме материалов это несколько ГБ. По умолчанию она на системном диске и не совпадает с каталогом установки: даже если программа установлена на диск D, данные остаются в расположении по умолчанию. Если на системном диске мало места, всю папку можно перенести на другой диск в настройках. Linkly AI Space — отдельная настройка и вместе с ней не переносится.

Перенос

1

Откройте настройку App Data

Settings → General, строка App Data.
2

Выберите новое место

Нажмите кнопку Change справа (значок папки с карандашом), в диалоге — Change and restart, затем выберите папку. Linkly AI создаст в ней LinklyAI\ai.linkly.desktop: например, при выборе D:\Linkly AI Data данные окажутся в D:\Linkly AI Data\LinklyAI\ai.linkly.desktop.
3

Дождитесь завершения

После перезапуска окно прогресса последовательно копирует данные, проверяет копию и переключается на новое место, затем приложение перезапускается само. При большом объёме это занимает несколько минут — не закрывайте окно и не выключайте компьютер.
4

Проверьте результат

В Settings → General → App Data должен отображаться новый путь, а рядом — фактический размер данных.
Новое место должно соответствовать условиям, иначе будет показана причина:
  • это папка, а не корень диска (например, не D:\)
  • не системный каталог (например, Windows), не сетевой диск и не общая папка
  • не пересекается с Linkly AI Space или любой отслеживаемой папкой и не находится внутри текущего каталога App Data
  • свободного места не меньше 1,1 размера текущих данных
  • в папке ещё нет непустого LinklyAI\ai.linkly.desktop
  • во время загрузки моделей перенос недоступен — дождитесь её окончания

Почему на старом месте осталась папка?

После переноса данные на старом месте удаляются, а вместо них остаётся одноимённая ссылка на новое место (в Windows — junction, в macOS и Linux — символическая ссылка). При каждом запуске Linkly AI находит данные через неё, поэтому её нужно сохранить.
  • Ссылка не занимает места. «Свойства» в Проводнике показывают тот же размер, что и у нового места, потому что система учитывает данные, на которые указывает ссылка. Проверить освобождение места можно по свободному месту системного диска в «Этот компьютер» — оно должно вырасти на размер данных приложения
  • Ссылка и новое место выглядят одинаково — содержимое, размер и время изменения меняются синхронно, потому что через ссылку вы видите те же данные, а не две синхронизируемые копии
  • В Windows %LOCALAPPDATA%\ai.linkly.desktop содержит кэш интерфейса, он не переносится и после удаления создаётся заново
Не удаляйте ссылку на старом месте и не удаляйте файлы внутри неё. Удаляя файлы внутри, вы удаляете реальные данные на новом месте. Если удалить саму ссылку, при следующем запуске Linkly AI поведёт себя как после новой установки: снова скачает модели и построит индекс с нуля, а данные на новом месте больше не будут использоваться.
Если после удаления Linkly AI ещё не запускался, восстановите ссылку командой (подставьте свой новый путь):
  • Windows (командная строка):
  • macOS (Терминал):
  • Linux (терминал):
Если приложение уже запускалось, на старом месте появился новый пустой каталог данных. Прекратите работу и свяжитесь с нами для восстановления.
  • Вернуть на место по умолчанию: в строке App Data нажмите Restore Default (значок круговой стрелки). Linkly AI перезапустится и скопирует данные обратно — на системном диске должно хватать места; пользовательское расположение очищается только после завершения копирования.
  • Перенести на другой диск: снова нажмите Change и выполните шаги выше.
Нет. Пока копия на новом месте не проверена и приложение не запустилось с неё, исходные данные остаются нетронутыми. После прерывания (например, отключения питания или принудительного завершения) при следующем запуске появится окно восстановления: Retry продолжает перенос, Cancel the change and keep the previous location отменяет его. Если справиться не удаётся, нажмите Open log и пришлите журнал нам.
Можно, но перед каждым запуском Linkly AI диск должен быть подключён. Без него при запуске появится Your app data folder can’t be reached; подключите диск и нажмите Retry. Не рекомендуем размещать данные на часто отключаемом съёмном диске.
Если при удалении в Windows отметить удаление данных приложения, перенесённые на новое место данные тоже будут удалены. Если вы хотите переустановить программу и сохранить данные, не отмечайте этот пункт: после переустановки Linkly AI сам найдёт прежние данные через ссылку.

Где найти журналы приложения?

Через приложение

Откройте Settings → General → App Data → Open, затем logs/app.log. Прямой кнопки Application Logs нет. Файл capped/rotated при 10 MB; sensitive data redacted.

Вручную

Linux можно открыть xdg-open ~/.local/share/ai.linkly.desktop/logs или скопировать на Desktop. Просмотрите local paths/identifiers перед sharing.

Если приложение падает при запуске

Сбой до создания app.log записывается в файл startup-panic-<номер>.json в диагностическом каталоге linkly-ai-diagnostics. При следующем запуске Linkly AI покажет Linkly AI didn’t shut down properly, и эти сведения попадут в диагностический отчёт: кратко опишите, что вы делали перед сбоем, и нажмите Send report. Если приложение падает при каждом запуске и окно не появляется, найдите файл вручную:
  • macOS: ~/Library/Application Support/linkly-ai-diagnostics/ — файлы .json, начинающиеся с startup-panic-
  • Windows: %LOCALAPPDATA%\linkly-ai-diagnostics\ (не %APPDATA%)
  • Linux: cp ~/.local/share/linkly-ai-diagnostics/startup-panic-*.json ~/Desktop/
Файл создаётся только при startup crash и автоматически удаляется после следующего нормального запуска, когда попадает в отчёт. Если отсутствует, приложите screenshot и OS version. Не удаляйте data/index; сначала backup и минимальный log fragment в сообщество.