Работа с папкой ai-agent
При обновлениях программы требуется обновлять инструкции для AI-agent.
Для автоматизации этого процесса в программе предусмотрено копирование папки.
В настройках десктопного TSLab (вкладка «Пути») добавлен блок «Рабочая папка для ИИ-агентов»:
Путь к папке. По умолчанию Документы\TSLab 3.0\ai-agent. Выбирается через «...», есть кнопка сброса.
Проверка пути. Ошибка показывается, если путь не полный, указывает на файл, находится в каталоге программы или к нему нет доступа на чтение и запись. Также ошибка, если в каталоге программы нет папки ai-agent.
Флажок «Обновлять автоматически после обновления программы». По умолчанию выключен. Сохранить настройки с включённым флажком и неправильным путём нельзя.
Кнопка «Обновить сейчас» копирует принудительно и показывает, сколько файлов скопировано, удалено и осталось без изменений.

Кнопка «Открыть папку».
Как работает копирование
Источник — папка ai-agent рядом с запущенным exe. Путь к установке не зашит.
В рабочей папке хранится файл .tslab-ai-agent.json со списком разложенных файлов и их контрольными суммами (SHA-256).
Файлы из поставки перезаписываются. Файлы, которые исчезли из поставки, удаляются, но только если пользователь их не менял; изменённые остаются. Пустые папки после удаления убираются.
Файлы пользователя, например проекты в tmp, не затрагиваются.
Если при копировании была ошибка, при следующем запуске копирование повторяется.
Автообновление
Выполняет сама программа при старте, в фоне и без прав администратора. Лаунчер TSLab.exe не менялся: при обновлении он работает с правами администратора, а файлы, созданные так в папке пользователя, принадлежали бы администраторам.
Срабатывает после любого способа обновления: ночная сборка, релиз, ручная установка.
Если содержимое ai-agent с прошлого раза не менялось, копирование пропускается, и в лог пишется, что проверка была. Поэтому правки пользователя в файлах поставки затираются только после реального обновления программы.