Примечания к выпуску ATBClone (Release Notes)

September 13, 2026 · View on GitHub

English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Deutsch | Français | Русский | Español

Примечания к выпуску ATBClone (Release Notes)

[v1.8.0] - 2026-09-13

📢 Промо-карточка ATBCmder и бейдж [AD] в боковой панели навигации

  • Интеграция инструментов экосистемы и интерфейс:
    • Добавлена адаптивная карточка продвижения ATBCmder (https://aitobox.com/atbcmder) в свободную область боковой панели навигации.
    • Нативный дизайн macOS с полупрозрачным закругленным фоном, четкой отметкой рекламы [AD], значком приложения высокого разрешения, многоязычным подзаголовком и кнопкой открытия ссылки в браузере.
    • Полная интеграция с системой интернационализации на 9 языках: мгновенное динамическое обновление заголовка, описания и кнопки действия при смене языка в настройках.
    • Специальная функция разрешения путей к ресурсам значка ATBCmderIcon.png / .icns с надежной обработкой резервных путей.

🛡️ Сохранение примечаний к выпуску в CI/CD и усиление сборки

  • Повышение надежности автоматического релиза:
    • Исправлена ошибка, из-за которой очистка каталога dist/ в build_cli.sh удаляла файл dist/release_notes.md до его загрузки в GitHub Releases.
    • Добавлен механизм автоматического резервного копирования и восстановления примечаний к выпуску в scripts/build_release_packages.sh.
    • Реализована резервная генерация описания релиза в .github/workflows/release.yml на основе аннотаций Git-тегов и истории коммитов.

🧪 Обеспечение качества и автоматизированное тестирование

  • Расширение набора тестов:
    • Набор тестов расширен до 588 тестов со 100% успешным прохождением, включая проверку верстки карточки в боковой панели, обработки ссылок, динамической смены языка и скриптов сборки.

[v1.7.0] - 2026-09-13

🔄 Встроенная подсистема автообновления и тихой установки

  • Автоматизированное обновление приложения:
    • Реализован сервис UpdateService для автоматического опроса манифеста GitHub latest.json и выявления новых версий на основе семантического версионирования.
    • Загрузка с учетом архитектуры процессора (Apple Silicon arm64 и Intel x86_64) с потоковой передачей данных и отображением прогресса в процентах в реальном времени.
    • Автоматическая проверка контрольной суммы SHA256 загруженного DMG-файла по данным манифеста перед запуском процедуры установки.
    • Полная поддержка системных прокси-серверов (HTTP_PROXY, HTTPS_PROXY, ALL_PROXY) для надежного обновления в корпоративных и изолированных сетях.
    • Тихая установка: автоматическое монтирование DMG в изолированную временную папку, замена ATBClone.app, снятие карантинных атрибутов macOS Gatekeeper (xattr -cr) и корректное размонтирование.

⚙️ Интерактивный интерфейс обновления в настройках

  • Наглядный процесс обновления:
    • В окне SettingsView добавлена кнопка «Проверить обновления» и индикатор текущего состояния.
    • Наглядное переключение состояний: Проверка → Доступно обновление (с отображением версии и списка изменений) / Установлена актуальная версия → Загрузка (прогресс в %) → Установка → Завершено / Предложение перезапуска.
    • Информативные сообщения об ошибках при сетевых таймаутах, сбоях HTTP и несовпадении контрольных сумм.

🌐 Полная локализация на 9 языков

  • Поддержка многоязычности:
    • Локализация всех кнопок, меток статуса и диалоговых окон процесса обновления на все 9 поддерживаемых языков.

📦 Генерация манифеста релизов в CI/CD (latest.json)

  • Автоматизация метаданных:
    • Скрипт scripts/build_release_packages.sh дополнен извлечением примечаний к выпуску, расчетом SHA256 и формированием файла dist/latest.json.
    • В рабочий процесс .github/workflows/release.yml добавлена автоматическая загрузка latest.json в GitHub Releases с поддержкой повторных попыток.

🧪 Контроль качества и тестирование

  • Расширение набора тестов:
    • Тестовый набор расширен до 585 тестов со 100% успешным прохождением.

[v1.6.0] - 2026-09-13

🪟 Устранение взаимной блокировки при выходе из трея и стабилизация завершения работы

  • Надежное завершение процесса приложения:
    • Исправлена ошибка взаимной блокировки (deadlock), из-за которой приложение зависало и не завершалось при нажатии «Выход» в меню системного трея или контекстном меню Dock в свернутом состоянии.
    • В класс ATBCloneApp добавлен защитный флаг _is_exiting, предотвращающий перехват и блокировку процедуры закрытия обработчиком _on_window_close.
    • Из функции exit_application() удален преждевременный вызов set_macos_dock_visible(True), что исключило повторный вход событий в цикл Cocoa перед остановкой цикла событий.
    • Усилена надежность завершения работы как через Dock (_on_app_exit), так и через меню трея (exit_application), обеспечивая мгновенную очистку ресурсов и завершение процесса.

[v1.5.1] - 2026-09-13

💬 Встроенный рецепт для KakaoTalk

  • Нативная поддержка нескольких копий:
    • Добавлен встроенный рецепт для KakaoTalk (com.kakao.KakaoTalkMac) со стратегией жесткого клонирования Cocoa, снятием песочницы и изоляцией каталогов данных (HOME/TMPDIR).
    • Каталог встроенных рецептов расширен до 34+ приложений.
    • Уточнены границы проверки в документации (подтверждены одновременный запуск и работа уведомлений).

🚀 Автоматический рабочий процесс выпуска GitHub Actions arm64

  • Непрерывное развертывание и сборка релизов:
    • Добавлен .github/workflows/release.yml для автоматической сборки релизных артефактов при отправке тегов версий (v*).
    • Автоматическая компиляция и упаковка архива CLI (ATBCloneCli-arm64.tar.gz) и установщика GUI (ATBClone-*.dmg) с контрольными суммами SHA256.
    • Добавлен скрипт единой сборки пакетов scripts/build_release_packages.sh.
    • Исправлена ошибка bash set -u при раскрытии пустого массива в scripts/build_cli.sh и scripts/build_release_packages.sh.

🛡️ Надежность сборки GUI и устойчивость к сбоям сети

  • Автоматическое восстановление незавершенных сборок:
    • Усилена проверка целостности структуры в scripts/build_gui.sh (Python.framework, исполняемый файл ATBClone и Stub).
    • Автоматическая очистка и повторное создание поврежденных структур при нестабильном сетевом соединении.

🔒 Политика безопасности (SECURITY.md)

  • Регламент ответственного раскрытия уязвимостей:
    • Добавлен .github/SECURITY.md с описанием каналов конфиденциального сообщения об ошибках безопасности, сроков реагирования и поддерживаемых версий.

🧪 Контроль качества и расширение тестов

  • Полное покрытие:
    • Набор автоматических тестов расширен до 561 теста со 100% успешным прохождением.

[v1.5.0] - 2026-09-10

🔐 Аутентификация прокси и безопасное хранилище Keychain

  • Поддержка авторизации прокси и интеграция со связкой ключей macOS:
    • Модель ProxyConfig расширена полями username и password для поддержки авторизованных прокси SOCKS5 и HTTP.
    • Реализован модуль atbclone.core.keychain для безопасного сохранения паролей прокси в системной связке ключей macOS (Keychain Services / security CLI), предотвращая хранение открытых паролей в файлах конфигурации.
    • Добавлены параметры CLI --proxy-username и --proxy-password с интерактивным безопасным вводом пароля в командах clone, update и wizard.
    • Интеграция ввода учетных данных прокси, переключателя видимости пароля и управления Keychain в мастере создания (WizardWindow), окне редактирования (CloneEditWindow) и настройках (SettingsView).
    • Систематическое маскирование учетных данных (redact_url_credentials) в clone_inspector, выводе list в CLI и графическом интерфейсе для предотвращения утечки паролей в логи и терминал.

🛠️ Автоматическая адаптация компилятора Xcode / CLT

  • Динамическое зондирование тулчейна и привязка к SDK:
    • Реализован механизм динамического зондирования компилятора _resolve_clang_command в CloneEngine.
    • Автоматическое связывание xcrun --sdk macosx clang с активным sysroot macOS SDK, устраняющее сбои компиляции и компоновки из-за несовпадения целевой архитектуры (например, arm64e.x1-macos) в бета-версиях Xcode и Command Line Tools.

💼 Встроенный рецепт для WeCom (Enterprise WeChat)

  • Готовая поддержка нескольких экземпляров:
    • Добавлен встроенный рецепт для Enterprise WeChat / WeCom (com.tencent.WeWorkMac) с изолированным каталогом данных и перенаправлением переменных окружения.

🛡️ Усиление безопасности и защита от инъекций и удаления

  • Централизованная валидация и защита от опасных операций:
    • Модуль atbclone.validation с белым списком для Bundle ID (^[A-Za-z0-9][A-Za-z0-9._-]*$), проверкой ключей переменных окружения, параметров прокси и предотвращением атак обхода путей (Path Traversal).
    • Включение validate_assignment = True в моделях Recipe и ProxyConfig для предотвращения обхода проверок при присваивании атрибутов.
    • CloneTask.__post_init__ стал единым центральным контрольным пунктом валидации для CLI, GUI и процессов обновления.
    • Добавлен защитный барьер удаления (validate_deletion_target), блокирующий удаление системных каталогов (/System, /usr, /Library), корня $HOME, неглубоких путей и объектов, отличных от .app.
    • Принудительная установка прав доступа 0600 для файла clones.yaml.
    • Экранирование спецсимволов ($, обратные кавычки, двойные кавычки) и применение shlex.quote при генерации shell-скриптов и исходного кода C-лаунчера.

🧪 Автоматизация CI и контроль качества

  • Непрерывная интеграция и расширение тестов:
    • Добавлен рабочий процесс CI GitHub Actions (.github/workflows/test.yml) на macOS (Python 3.12).
    • Добавлен шаблон Pull Request и бейджи статуса сборки.
    • Набор автоматических тестов расширен до 554 тестов со 100% успешным прохождением.

[v1.4.0] - 2026-09-05

🪶 Изоляция нескольких копий и блокировок Feishu / Lark (Fix #7)

  • Перенаправление данных и перехват SingletonLock:
    • Специализированная библиотека libatbclone_feishu_hook.dylib для перехвата путей Cocoa и POSIX в Feishu/Lark (com.electron.lark).
    • Перехват NSSearchPathForDirectoriesInDomains направляет LarkShell, SingletonLock и SingletonSocket в изолированный каталог данных клона.
    • Автоматическое удаление CFBundleURLTypes из Info.plist для предотвращения конфликтов системных протоколов URL Scheme.
    • Изоляция строго ограничена рецептами Feishu/Lark без влияния на другие приложения.

🤖 Изоляция данных аккаунтов OpenAI ChatGPT Desktop и Codex

  • Независимые сессии входа и очистка Deep-Link:
    • Добавлен патч patch_chatgpt_isolation с внедрением libatbclone_chatgpt_hook.dylib для изоляции ChatGPT Desktop (com.openai.chat).
    • Исправлена инициализация CODEX_HOME (исключено непреднамеренное копирование ~/.codex/auth.json), гарантируя полную изоляцию токенов авторизации.
    • Удаление CFBundleURLTypes у клонов ChatGPT для предотвращения конфликтов вызова приложения по внешним ссылкам.

🧪 Тесты

  • Полное покрытие:
    • Набор тестов расширен до 485 автоматических тестов с успехом 100%.

[v1.3.0] - 2026-09-05

🔬 Проверка запаса заголовка Mach-O (Headroom Probing)

  • Статический анализ заголовка бинарного файла:
    • Добавлен метод _check_macho_injection_headroom для проверки запаса пространства между командами загрузки (sizeofcmds) и первой секцией до модификации файла.
    • Полностью исключает повреждение приложений с плотно скомпонованными заголовками Mach-O.

🎛️ Настраиваемая стратегия внедрения (auto, dylib, launcher)

  • Гибкое управление и автоматический откат:
    • Параметр injection_strategy добавлен в рецепты, CloneTask, CloneRecord, CLI (--injection-strategy) и GUI (мастер создания, редактор рецептов).
    • Автоматический режим (auto): Проверяет запас заголовка; внедряет dylib при наличии места либо плавно переключается на нативный C Launcher с предупреждением.
    • Режим dylib (dylib): Принудительно использует dylib, выбрасывая CloneError при нехватке места.
    • Режим лаунчера (launcher): Принудительно запускает нативный лаунчер C Mach-O без изменения оригинального бинарного файла.
    • Отображение фактического режима внедрения в окне деталей клона (CloneDetailWindow) и команде inspect.

📚 Обновление документации

  • Полное руководство:
    • Руководства в docs/guide/ и README дополнены описанием стратегий внедрения, архитектуры dylib и анализа заголовков Mach-O.

🧪 Тесты

  • Полное покрытие:
    • Набор тестов расширен до 479 автоматических тестов с успехом 100%.

[v1.2.1] - 2026-09-05

🧩 Инъекция dylib через @executable_path без зависимости от rpath (Fix #6)

  • Повышение надежности перехвата вызовов:
    • Переход с @rpath на прямой путь @executable_path/../Frameworks/libatbclone_env.dylib в HardCloneEngine.
    • Полное устранение зависимости от списка LC_RPATH целевого бинарного файла, предотвращающее сбои запуска dyld для приложений с нестандартным rpath (например, WeChat 4.x).
    • Автоматическое создание резервной символической ссылки в Contents/Frameworks/ld/ при наличии структуры каталогов ld.

⚙️ Автоматическая синхронизация Info.plist и промежуточных артефактов

  • Устранение расхождений в версиях:
    • В scripts/manage_version.py добавлен класс PlistVersionTarget на базе plistlib для синхронизации Info.plist (CFBundleShortVersionString и CFBundleVersion) и welcome.html.
    • В команду scripts/manage_version.py --show добавлена проверка статуса промежуточных файлов сборки и предупреждение [OUT OF SYNC].
    • Улучшен скрипт scripts/build_gui.sh для надежной синхронизации версий ресурсов установщика.

🧪 Тесты

  • Полное покрытие:
    • Набор тестов расширен до 468 автоматических тестов с успехом 100%.

[v1.2.0] - 2026-09-02

🔔 Нативная инъекция dylib для уведомлений macOS и строки меню

  • Исправление Центра уведомлений и иконок в трее (Fix #5):
    • Включение механизма перехвата через нативные библиотеки Mach-O (.dylib) в HardCloneEngine.
    • Перехват API NSUserNotificationCenter и NSStatusItem для корректного отображения баннеров уведомлений и иконок строки меню у жестких клонов.

🌓 Динамическая поддержка темной темы и визуальные улучшения

  • Отслеживание системной темы (Fix #4):
    • Динамическое отслеживание изменений оформления macOS для плавного переключения между светлой и темной темами.
  • Сетка карточек и контрастность текста:
    • Оптимизированы отступы карточек и увеличена стандартная ширина главного окна.
    • Повышена контрастность текста в окнах логов и примечаний к выпуску (соответствует стандарту WCAG 2.1 AA).

📖 Обновление документации и скриншотов

  • Актуализация путей:
    • Путь установки клонов по умолчанию в документации обновлен на ~/ATBClone/Apps.
    • Обновлены снимки экрана графического интерфейса высокого разрешения.

🧪 Тесты

  • Полное покрытие:
    • Набор тестов расширен до 462 автоматических тестов с успехом 100%.

[v1.1.1] - 2026-08-30

🧹 Автоматическая очистка устаревших версий фреймворков

  • Экономия дискового пространства и валидация подписи:
    • HardCloneEngine автоматически удаляет неактивные версии в Contents/Frameworks/*.framework/Versions/ (остающиеся после обновлений Chrome и Electron).
    • Устраняет ошибку embedded framework contains modified or invalid version при проверке кодовой подписи и экономит сотни мегабайт на каждом клоне.

🛡️ Глубокая очистка Entitlements с помощью Python plistlib

  • Безопасная атомарная экстракция и фильтрация:
    • Использование безопасных временных файлов (${TMPDIR:-/tmp}/atb_ent_XXXXXX) для извлечения прав.
    • Сочетание PlistBuddy и Python plistlib для надежного удаления ограниченных префиксов (com.apple.developer., keychain-access-groups, com.apple.security.application-groups, com.apple.security.app-sandbox).
    • Многоэтапная переподпись dylib, бинарных файлов Mach-O, фреймворков и вспомогательных процессов Helper.

🧪 Тесты

  • Полное покрытие:
    • Набор тестов расширен до 455 автоматических тестов с успехом 100%.

[v1.1.0] - 2026-08-29

🤖 Полная поддержка AI-клиентов и инструментов LLM

  • Мульти-аккаунтинг для Claude Desktop и Claude Code:
    • Автоматическая инъекция CLAUDE_CONFIG_DIR, изоляция и репликация каталогов ~/.claude и ~/.claude.json.
    • Сохранение CFBundleName для предотвращения сбоев поиска хост-приложения процессами Claude Helper.
  • Экосистема Google Antigravity и Gemini:
    • Инъекция переменных GEMINI_HOME и ANTIGRAVITY_HOME с изоляцией каталога ~/.gemini.
  • OpenAI ChatGPT и Codex CLI:
    • Инъекция CODEX_HOME и репликация каталога ~/.codex для одновременного запуска нескольких профилей.

🔑 Автоматические симлинки на Связку ключей macOS (Keychains)

  • Сохранение учетных данных и стабильность:
    • Автоматическое создание симлинка на Library/Keychains при перенаправлении HOME предотвращает сбои авторизации.

🛡️ Очистка прав AMFI и надежность подписи кода

  • Адаптация под macOS Sonoma и Sequoia:
    • Автоматическое удаление ограниченных командных прав (com.apple.application-identifier и др.) при Ad-Hoc переподписи.
    • Предотвращение принудительного завершения процессов сигналом SIGKILL механизмом AMFI.

🚀 Универсальный патчинг ProcessSingleton

  • Поддержка Electron и AI-приложений:
    • Обобщение патчинга ProcessSingleton в Mach-O и инъекция параметра --user-data-dir в рецепты AI-клиентов.

🧪 Тесты

  • Полное покрытие:
    • Набор тестов расширен до 453 автоматических тестов с успехом 100%.

[v1.0.2] - 2026-08-26

🛡️ Оптимизация отключения песочницы и стабильность Hard Clone

  • Снятие ограничений песочницы для Hard Clone (strip_sandbox: true):
    • Включение отключения песочницы для рецептов жесткого клонирования, что предотвращает конфликты прав доступа модифицированных Mach-O бандлов.
    • Улучшена конфигурация WeChat с гарантированным созданием структуры каталогов среды выполнения (Caches, Containers, Preferences).

📚 Оптимизация встроенных рецептов и документация

  • Обновление каталога рецептов:
    • Экспериментальный рецепт WeCom удален из-за фундаментальных ограничений проприетарного CEF IPC, добавлено подробное описание в руководство по устранению неполадок.
    • Обновлены рекомендации по настройке мульти-аккаунтинга и составлению пользовательских Recipe.

🧪 Тесты

  • Полное покрытие:
    • Все 443 автоматических теста успешно пройдены.

[v1.0.1] - 2026-08-26

🎨 Соответствие Apple Design HIG и улучшение интерфейса

  • Соблюдение рекомендаций macOS HIG:
    • Комплексный аудит дизайна в соответствии с Apple Human Interface Guidelines.
    • Удалены лишние эмодзи-иконки в пользу нативной типографики SF Pro и строгой визуальной иерархии.
    • Нативная подсветка Cocoa в боковой панели навигации.
    • Оптимизирован контраст светлой и темной тем по стандарту WCAG 2.1 AA.
    • Улучшены пустые состояния, тени карточек, перемещение окон и отступы.

📜 Обратный хронологический порядок логов и верстка

  • Улучшенный просмотр логов (LogsView):
    • Логи выводятся в обратном хронологическом порядке (самые свежие записи сверху) для мгновенной диагностики.
    • Сняты фиксированные ограничения ширины кнопок «Обновить» и «Обзор», предотвращая обрезание текста на разных языках.

🛡️ Надежность движка клонирования и обработка xattr

  • Права на запись и устойчивость к ошибкам атрибутов:
    • Автоматическое назначение прав на запись (chmod -R u+w) перед изменением Mach-O и подписью.
    • Устойчивая обработка очистки расширенных атрибутов (xattr -cr) на защищенных или доступных только для чтения файлах.

🧪 Тесты

  • Полное покрытие:
    • Набор тестов увеличен до 443 тестов со 100% успешным прохождением.

[v1.0.0] - 2026-08-24

🚀 Официальный релиз ATBClone 1.0.0

  • Полнофункциональная система клонирования приложений для macOS:
    • ATBClone достигает версии 1.0.0, представляя зрелое и надежное решение для мульти-аккаунтинга на macOS (Apple Silicon и Intel).
    • Два мощных механизма: Soft Clone (без расхода дискового пространства) и Hard Clone (полная изоляция данных, контейнеров и прав доступа).

🧬 Глубокий патчинг CEF и поддержка WeCom (企业微信)

  • Запуск сложных гибридных приложений:
    • Реализован патчинг Chromium Embedded Framework (CEF) для корпоративных гибридных приложений.
    • Устранены фатальные сбои GpuDataManager в процессах Helper, а Bundle ID вложенных помощников изолированы (.helper.atbclone.X).
    • Добавлены белые списки симлинков и нейтрализованы конфликты внутренних песочниц.

🛡️ Полная рекурсивная переподпись бандлов и снятие ProcessSingleton

  • Глубокая переподпись компонентов:
    • HardCloneEngine рекурсивно переподписывает все вложенные бинарные файлы, Frameworks, вспомогательные процессы, службы XPC и dylib.
    • Полное сохранение прав JIT и Hardened Runtime без засорения бандла временными файлами.
  • Патчинг ProcessSingleton на уровне фреймворка:
    • Добавлено поле patch_framework_singleton для устранения блокировок единичного запуска на уровне байтов Mach-O.

📋 Улучшенные окна свойств и нативный буфер обмена

  • Экспорт данных и выделение текста:
    • В CloneDetailWindow интегрированы многострочные текстовые поля Cocoa и NSPasteboard для удобного копирования диагностических данных.

🧪 Тесты

  • Полное покрытие:
    • Набор тестов расширен до 441 теста со 100% успешным прохождением.

[v0.9.9] - 2026-08-24

📋 Выделение текста и «Копировать все данные» в деталях клона

  • Удобное копирование параметров:
    • Включен нативный режим выделения текста Cocoa (setSelectable_) для всех меток в CloneDetailWindow.
    • Добавлена кнопка «Копировать все данные» для быстрого экспорта полного диагностического отчета клона в буфер обмена.

🎨 Нативный дизайн macOS и оптимизация отступов

  • Улучшение темы и компонентов:
    • Скорректированы цветовые токены в Theme для светлой и темной тем (BG_APP, BG_CARD, BG_HOVER, BORDER, TEXT_PRIMARY, TEXT_MUTED, ACCENT).
    • Оптимизированы скругления карточек, внутренние отступы и интервалы между виджетами.

📖 Полное руководство пользователя (docs/guide/)

  • Подробная документация:
    • Опубликованы полные руководства пользователя на английском (docs/guide/en/) и китайском (docs/guide/zh-cn/) языках.
    • Включает главы 1 (Базовые операции), 2 (Пользовательские рецепты), 3 (Архитектура и движки) и 4 (Часто задаваемые вопросы и диагностика).

🧪 Тесты

  • Расширение тестов:
    • Набор тестов увеличен до 431 автоматического теста.

[v0.9.8] - 2026-08-24

🔒 Точное извлечение Entitlements и стабильность Hard Clone

  • Сохранение прав исходного приложения:
    • Улучшен HardCloneEngine для корректного извлечения прав песочницы из бинарного файла Mach-O через codesign -d --entitlements :-.
    • Добавлена защита от генерации пустых или поврежденных файлов прав при повторной подписи.
  • Строгая изоляция контейнеров песочницы:
    • Для всех встроенных рецептов с hard clone (включая WeChat, QQ, WeWork, WPS Office, LINE, Skype, CapCut) зафиксирован параметр strip_sandbox: false.
    • Гарантирует запуск каждого клона в собственном изолированном контейнере (~/Library/Containers/<new_bundle_id>).

📚 Обновление документации

  • Синхронизация описаний:
    • Обновлены README.md и README_zh.md с актуальными спецификациями app_type, strip_sandbox и примерами работы.

🧪 Тестирование

  • Высокая надежность:
    • Все 428 автоматических тестов успешно пройдены.

[v0.9.7] - 2026-08-24

🔍 Интеллектуальное определение архитектуры и адаптация языка

  • Распознавание фреймворка приложения (app_type):
    • Добавлено поле app_type (electron, chromium, qt, flutter, native_cocoa, java, unknown) в модель Recipe.
    • AppProber.detect_app_type анализирует Frameworks, dylib и структуру JVM для определения базовой платформы.
    • Стандартизированы все 34 встроенных рецепта с явным указанием app_type и strip_sandbox.
  • Адаптивная передача языковых параметров:
    • Формирование аргументов локализации в зависимости от фреймворка (--lang= для Chromium/Electron, -AppleLanguages для Native Cocoa, -user.language для Java).

🧬 Анализ и валидация аргументов бинарных файлов Mach-O

  • Автоматический поиск аргументов каталога данных:
    • Реализован BinaryArgumentProber для сканирования строк Mach-O и обнаружения параметров каталога данных (--user-data-dir, --profile-directory, --datadir и др.) для неизвестных приложений.
  • Валидация аргументов запуска:
    • Компонент LaunchArgumentValidator исключает несовместимые флаги при создании клона.

📋 Инспекция и копирование внедренных параметров

  • Парсинг параметров клона (CloneInspector):
    • CloneInspector извлекает переменные окружения, настройки прокси, параметры локализации и аргументы запуска из бандла клона.
    • В CloneDetailWindow добавлена карточка «Внедренные параметры» с кнопкой копирования в буфер обмена.

⚙️ Расширенные настройки в редакторе рецептов

  • Графический редактор рецептов (RecipeEditWindow):
    • Поддержка выбора типа платформы, редактирования аргументов запуска, настроек прокси, переменных окружения и белого списка симлинков.

🧪 Тесты

  • Расширение тестов:
    • Набор тестов увеличен до 428 автоматических тестов.

[v0.9.6] - 2026-08-24

🖱️ Нативная сортировка по клику на заголовки таблиц Cocoa

  • Интерактивная сортировка колонок:
    • Реализован патч сортировки NSTableViewHeaderView для таблиц в CloneListView и RecipeListView.
    • Переключение между возрастанием и убыванием с отображением стрелок сортировки и двусторонней синхронизацией с панелью инструментов.
    • Сохранение выделения строк при изменении порядка сортировки.

📦 Множественный выбор и пакетные операции

  • Пакетное управление клонами (CloneListView):
    • Поддержка множественного выбора строк (multiple_select=True) и динамическое обновление кнопок панели действий.
    • Пакетное обновление и удаление клонов (с подтверждением очистки данных).
  • Пакетное удаление правил и защита (RecipeListView):
    • Удаление нескольких пользовательских правил одновременно.
    • Сценарии подтверждения: защита встроенных правил, фильтрация смешанного выбора и подтверждение удаления.
    • Блокировка интерфейса на время выполнения пакетных операций.

🛠️ Диагностика Xcode Command Line Tools в представлении Doctor

  • Проверка готовности инструментов сборки:
    • Автоматическая проверка наличия инструментов Xcode (xcode-select -p, codesign, lipo, otool, install_name_tool) с выводом рекомендаций в Doctor View.

ℹ️ Отображение метаданных в окне «О программе» macOS

  • Корректные данные в Cocoa About:
    • Правильная передача версии и авторских прав в orderFrontStandardAboutPanelWithOptions:.

🧪 Тесты

  • Расширение тестов:
    • Набор тестов увеличен до 369 автоматических тестов.

[v0.9.5] - 2026-08-23

📝 Новый компонент WrappingLabel и автоматический перенос текста

  • Многострочный перенос текста в GUI:
    • Реализован компонент WrappingLabel, устраняющий ограничения однострочного отображения Toga Cocoa.
    • Динамический пересчет высоты (cellSizeForBounds_) по ширине контейнера предотвращает растягивание окон по горизонтали при длинных путях и аргументах.
  • Оформление отчетов анализа и свойств:
    • Компонент WrappingLabel применен в ProbeView (отчет пробера, оценка совместимости), CloneDetailWindow и WizardWindow.

🧪 Изоляция тестов и состояния

  • Динамическое вычисление путей:
    • Улучшены StateManager и RecipeLoader для динамического определения путей, что обеспечивает полную изоляцию тестов от локальных данных пользователя.
  • Тесты:
    • Набор тестов увеличен до 347 автоматических тестов.

[v0.9.4] - 2026-08-23

📁 Перенос каталога данных по умолчанию в ~/ATBClone

  • Удобное управление данными:
    • Каталог по умолчанию перенесен из скрытой папки ~/.atbclone в видимый пользовательский каталог ~/ATBClone (~/ATBClone/Data/, ~/ATBClone/clones.yaml).
    • Упрощен поиск, резервное копирование и управление данными клонов в Finder и Терминале.

🏷️ Точное применение пользовательских имен клонов

  • Очистка локализованных строк:
    • Автоматическое удаление LSHasLocalizedDisplayName и очистка InfoPlist.strings в SoftCloneEngine и HardCloneEngine.
    • Гарантирует отображение заданного пользователем имени в Finder, Dock, Spotlight и Мониторинге системы.

🔄 Автоматическая регистрация в LaunchServices

  • Мгновенное обновление кэша:
    • Вызов lsregister -f после создания или обновления клона для немедленного обновления иконок и информации без перезагрузки системы.

📦 Документация и тесты

  • Синхронизация:
    • Обновление справочных материалов, интерфейса настроек и всех 341 автоматических тестов.

[v0.9.3] - 2026-08-21

🛡️ Улучшенный анализ приложений и предупреждения в мастере

  • Предварительная проверка iOS-on-Mac приложений:
    • Обновлен метод AppInspector.inspect_app для мгновенного анализа UIDeviceFamily / LSRequiresIPhoneOS при выборе или перетаскивании файла приложения.
    • В мастере создания GUI (WizardWindow) при выборе неподдерживаемого iOS-приложения сразу появляется информативное диалоговое окно, а поле ввода сбрасывается.

🍏 Корректное завершение работы в macOS и очистка Cocoa-объектов

  • Предотвращение сбоев при выходе (Crash on Exit):
    • Улучшены методы TrayService.disable() и ATBCloneApp.exit_app() для безопасного отключения таргетов и селекторов статусной строки Cocoa перед закрытием.
    • Реализован чистый выход из цикла событий Cocoa (NSApp.terminate_ / os._exit(0)), устранивший падения программы при выходе через системный трей или Cmd+Q.

📦 Тесты

  • Расширение набора тестов:
    • Набор тестов увеличен до 341 автоматического теста.

[v0.9.2] - 2026-08-21

🍏 Динамическое скрытие иконки в macOS Dock и оптимизация трея

  • Автоматическое управление иконкой в Dock:
    • Реализовано динамическое скрытие и отображение иконки в Dock с помощью политик активации AppKit (NSApplicationActivationPolicy).
    • При сворачивании или закрытии окна в системный трей иконка в Dock автоматически скрывается (NSApplicationActivationPolicyAccessory).
    • При восстановлении окна из строки меню иконка в Dock мгновенно возвращается (NSApplicationActivationPolicyRegular), а окно получает фокус.
  • Обработчик клика по иконке в Dock (Reopen Handler):
    • Добавлен метод applicationShouldHandleReopen:hasVisibleWindows: в AppDelegate для плавного открытия главного окна при клике на приложение в Dock.

📦 Оптимизация ресурсов и тесты

  • Сжатие иконок:
    • Проведена оптимизация файлов иконок (logo.icns и logo.png), уменьшившая размер дистрибутива.
  • Тесты:
    • Набор тестов увеличен до 338 автоматических тестов.

[v0.9.1] - 2026-08-21

🛡️ Обнаружение и безопасное отклонение приложений iOS-on-Mac

  • Обработка неподдерживаемых архитектур:
    • Улучшены AppProber, SoftCloneEngine и HardCloneEngine для точного распознавания приложений iOS/iPadOS, работающих на Apple Silicon (наличие папки Wrapper/ или UIDeviceFamily / LSRequiresIPhoneOS=True).
    • Корректная блокировка попыток клонирования таких приложений в CLI (atbclone clone, atbclone wizard) и GUI с выводом локализованного предупреждения (error_ios_wrapper_unsupported), предотвращающего повреждение бандлов.

🎨 Автоматическая генерация иконок в скриптах сборки

  • Динамическая сборка .icns:
    • Добавлена автоматическая компиляция .icns через sips и iconutil в скрипте scripts/build_gui.sh при создании DMG.
    • Улучшена проверка целостности ресурсов пакета.

🌐 Локализация и тесты

  • Многоязычные уведомления:
    • Полный перевод сообщения о блокировке iOS-приложений на все 9 языков.
  • Тесты:
    • Набор тестов увеличен до 336 автоматических тестов.

[v0.9.0] - 2026-08-21

🌐 Независимая изоляция языка и локали (Locale) для каждого клона

  • Пользовательский выбор языка клона (--language / --locale):
    • Поддержка запуска клонов на отдельном языке интерфейса независимо от системного языка macOS и настроек исходного приложения.
    • Добавлены параметры --language / --locale в команды atbclone clone и atbclone wizard, а также графический выбор языка в мастере и окне редактирования GUI.
    • Автоматическая передача системных настроек и переменных AppleLanguages и AppleLocale в скрипты запуска и бинарные файлы клонов.
    • Новый модуль atbclone.core.locale для обработки тегов BCP-47 и системных локалей.

🆔 Автоматическая нумерация и предотвращение конфликтов Bundle ID

  • Гарантированно уникальные идентификаторы:
    • Внедрен алгоритм AppInspector.find_next_bundle_id для проверки существующих клонов и автоматической генерации уникальных Bundle ID (com.vendor.app.atb1, atb2 и т. д.).

🍏 Восстановление окна из строки меню и управление жизненным циклом

  • Надежная активация из системного трея:
    • Исправлено отображение, деминиатюризация и фокус окна при восстановлении через меню TrayService.
    • Перехват закрытия окна (Cmd+W / красная кнопка светофора) при включенном режиме «Сворачивать в строку меню».
    • Поддержка различных кликов мыши по иконке в строке меню (левый, правый, Ctrl+клик).

⚡ Обновление клонов и очистка целевого пути

  • Атомарный процесс обновления:
    • Устранены состояния гонки при обновлении клонов за счет полной предварительной очистки целевого каталога.
    • Оптимизирована синхронизация карточек и списков в GUI.

🎨 Оптимизация интерфейса и документации

  • Визуальные улучшения:
    • Высота строк таблиц Cocoa оптимизирована до 34px, устранены проблемы с обрезкой текста в выпадающих списках.
    • README дополнен инструкциями по установке, руководством по работе с GUI и скриншотами.
  • Тесты:
    • Набор тестов увеличен до 329 автоматических тестов.

[v0.8.0] - 2026-08-20

🎨 Визуальное обновление в соответствии с macOS HIG

  • Нативный дизайн Apple и повышенная доступность:
    • Полная переработка графического интерфейса в соответствии с Apple Human Interface Guidelines (HIG): единая палитра системных цветов, иерархия шрифтов (11pt–22pt) и комфортные отступы.
    • Улучшенное отображение таблиц Cocoa через патчинг во время выполнения (patch_cocoa): высота строк увеличена до 40px, обновлены заголовки и увеличен шрифт содержимого.
    • Увеличены размеры полей ввода, выпадающих списков, переключателей, кнопок и меток в мастере, настройках и окнах редактирования.
    • Панели действий под таблицами приведены к компактному стилю панели инструментов macOS.
    • По умолчанию включен режим Таблицы (List View) во всех разделах управления.

💾 Единое управление хранилищем и автосинхронизация путей

  • Оптимизация настроек хранилища:
    • Реорганизация SettingsView: изменение корневой папки хранилища автоматически синхронизирует пути всех подкаталогов (clones.yaml, Data/, logs/, recipes/).
    • Отображение статуса доступности путей в реальном времени.

🌐 Поддержка протокола HTTPS-прокси

  • Расширенная поддержка прокси:
    • Полная поддержка схем https:// в моделях рецептов, CLI (atbclone clone, atbclone wizard) и настройках сети GUI.

📦 Улучшения сборки приложений и расширение тестов

  • Точка входа модуля и упаковка DMG:
    • Добавлен файл src/atbclone/__main__.py для прямого запуска через python -m atbclone.
    • Улучшен скрипт сборки scripts/build_gui.sh с проверкой целостности пакета приложения, ресурсов и подписи.
  • Тесты:
    • Набор тестов увеличен до 304 автоматических тестов GUI и ядра.

[v0.7.0] - 2026-08-20

🖥️ Нативное настольное приложение с графическим интерфейсом BeeWare Toga

  • Современный интерфейс в стиле Ice-Blue:
    • Выпущено полноценное нативное настольное приложение для macOS (atbclone-gui) на базе BeeWare Toga.
    • Удобная боковая панель и карточная сетка: управление клонами (ClonesView), глубокий анализ (ProbeView), рецепты (RecipesView), просмотр журналов (LogsView) и настройки (SettingsView).
    • Интерактивный визуальный мастер создания клонов с поддержкой перетаскивания файлов .app.

🍏 Системный трей в строке меню macOS и сворачивание

  • Интеграция со строкой меню (TrayService):
    • Нативная интеграция с NSStatusBar и NSStatusItem с быстрым меню (Открыть, Создать клон, Быстрый запуск, Настройки, Выход).
    • Опция «Сворачивать в строку меню» с плавным скрытием и восстановлением через селекторы Cocoa и NSWindowDelegate.

📖 Встроенный многоязычный просмотрщик примечаний к выпуску

  • Окно истории версий:
    • Доступ к истории версий прямо из панели настроек приложения.
    • Динамический переключатель на 9 языков с отображением Markdown в реальном времени.

📝 Единая система журналов операций (Unified Logger)

  • Сохранение в файл и прямой эфир событий:
    • Реализован модуль atbclone.core.logger для объединения журналов CLI и GUI (~/.atbclone/logs/atbclone.log) с потоковой трансляцией (LogBroadcastHandler).
    • Окно просмотра журналов в GUI с фильтрацией по уровням, поиском, экспортом и очисткой.

📦 Расширение каталога рецептов и тесты

  • Новые встроенные рецепты: Добавлены и обновлены рецепты для Claude Desktop (com.anthropic.claudefordesktop), Telegram (ru.keepcoder.Telegram), Cursor и других.
  • Расширенный набор тестов: Набор тестов увеличен до 299 автоматических тестов GUI и модулей ядра.

[v0.6.0] - 2026-08-19

📂 Поддержка пользовательских каталогов данных

  • Настраиваемое расположение данных клона (--data-dir):
    • Добавлена опция --data-dir для команды atbclone clone, позволяющая указывать путь к каталогу данных (например, на внешнем SSD или в рабочей папке).
    • Интеграция настройки каталога данных в интерактивный мастер (atbclone wizard).
    • Поддержка динамических переменных каталога данных в моделях рецептов и движках клонирования.

🗑️ Улучшенное удаление клонов и очистка данных (atbclone remove)

  • Управление очисткой данных при удалении:
    • Добавлен флаг --purge-data для команды atbclone remove для полного удаления приложения и связанных каталогов данных.
    • Добавлен флаг --keep-data для удаления только приложения с сохранением пользовательских данных.
    • Интерактивный диалог подтверждения с понятным выбором между сохранением и удалением данных.
    • Улучшена обработка потерянных каталогов и ошибок прав доступа.

🆔 Стандартизация Bundle ID и многоязычность

  • Единый формат генерации Bundle ID:
    • Добавлен метод AppInspector.generate_bundle_id, обеспечивающий идентичный формат Bundle ID для команд clone, wizard и update.
  • Локализация:
    • Полный перевод всех новых диалогов, запросов каталогов и сообщений на все 9 поддерживаемых языков.
  • Тесты:
    • Набор тестов увеличен до 213 автоматических тестов.

[v0.5.0] - 2026-08-19

🔐 Подпись кода Apple и нотаризация (Notarization)

  • Усиленная среда выполнения (Hardened Runtime) и официальная подпись:
    • Интеграция подписи сертификатом Apple Developer ID Application с опцией Hardened Runtime (--options runtime), временными метками и файлом разрешений JIT (scripts/entitlements.plist).
    • Новый скрипт scripts/notarize.sh для автоматической нотаризации через xcrun notarytool с использованием профилей связки ключей (--keychain-profile).
    • Поддержка флагов --sign-identity, --skip-sign и --notarize в скриптах scripts/build_cli.sh и scripts/release.sh с автоматическим переходом на ad-hoc подпись.

🚀 Жесткое клонирование Chromium и передача аргументов запуска

  • Поддержка аргументов запуска в HardCloneEngine:
    • Улучшен HardCloneEngine для динамической вставки аргументов вида --user-data-dir={{ATB_DATA_DIR}} в скрипт запуска наряду с переменными окружения.
    • Встроенные рецепты для Google Chrome, Microsoft Edge и Arc Browser переведены на стратегию hard_clone для полной изоляции App Bundle в Dock и Finder.
  • Переопределение стратегии в CLI:
    • Добавлена опция --strategy (hard_clone / soft_clone) для команды atbclone clone.

⚡ Оптимизация процессов и расширение тестов

  • Перенаправление процессов: Оптимизация скрипта запуска SoftCloneEngine с использованием стандартного exec "$@".
  • Расширенный набор тестов: Набор тестов увеличен до 199 автоматических тестов с покрытием подписи кода и нотаризации.

[v0.4.0] - 2026-08-19

🌐 Полная поддержка 9 языков для CLI и документации

  • Полная локализация интерфейса командной строки на 9 языков:
    • Модуль atbclone.core.i18n расширен для полной поддержки английского, упрощенного китайского, традиционного китайского, японского, корейского, немецкого, французского, русского и испанского языков.
    • Все команды CLI (wizard, clone, probe, list, recipe, doctor, update, remove, version) выводят локализованные подсказки, таблицы и сообщения об ошибках.
  • Многоязычные примечания к выпуску:
    • Стандартизирована документация по релизам на 9 языках в каталоге docs/release/.

🔄 Автоматизированный конвейер релизов и синхронизации версий

  • Автоматическая проверка примечаний к выпуску на 9 языках:
    • Скрипты scripts/manage_version.py и scripts/release.sh обновлены для автоматической проверки наличия записей о версии во всех 9 файлах docs/release/ReleaseNote*.md перед созданием тега.
    • Добавлена опция --check-notes для проверки полноты документации.
  • Расширенный набор тестов:
    • Набор автоматических тестов увеличен до 191 теста с полным покрытием многоязычности и процессов сборки.

[v0.3.0] - 2026-08-19

🌐 Интернационализация и многоязычная поддержка (i18n)

  • Автоматическое определение системного языка macOS:
    • Встроен модуль atbclone.core.i18n, автоматически считывающий языковые предпочтения интерфейса macOS через AppleLanguages и AppleLocale.
    • Динамическое переключение интерактивного мастера, командной строки, заголовков таблиц и сообщений об ошибках между русским, английским и китайским языками.
    • Поддержка ручного переопределения языка с помощью переменной окружения ATBCLONE_LANG (ATBCLONE_LANG=en / ATBCLONE_LANG=zh).
  • Многоязычная документация:
    • Основной файл документации на английском языке (Readme.md) и китайская версия (Readme_zh.md).
    • Примечания к выпуску на 9 языках: английском, упрощенном китайском, традиционном китайском, японском, корейском, немецком, французском, русском и испанском.

🛠️ Улучшения интерфейса командной строки и сборки

  • Локализация мастера клонирования: Полная поддержка мультиязычности в atbclone wizard (настраиваемые имена, выбор .icns и параметры прокси).
  • Автономный исполняемый файл: Пересборка ./dist/ATBCloneCli с помощью Nuitka со встроенными словарями и улучшенной совместимостью с песочницей (PYTHONNOUSERSITE=1).
  • Набор тестов: Добавлен модуль test_i18n.py, успешно пройдены все 186 автоматических тестов.

[v0.2.0] - 2026-08-18

🚀 Основные новые функции

  • Интерактивный мастер клонирования (atbclone wizard):
    • Пошаговое руководство в терминале с поддержкой перетаскивания (drag-and-drop) путей .app.
    • Автоматическая инкрементация названий клонов (например, WeChat2, WeChat3).
    • Поддержка пользовательских отображаемых имен и иконок приложений в формате .icns.
    • Интерактивная настройка выделенных сетевых прокси (HTTP и SOCKS5) с аутентификацией.
  • Интеллектуальный анализатор приложений (atbclone probe):
    • Автоматический анализ архитектуры Mach-O (arm64, x86_64, Universal), фреймворков (Electron, Flutter, Chromium, Qt, Cocoa) и прав песочницы (com.apple.security.app-sandbox).
    • Динамический подбор оптимальной стратегии (hard_clone или soft_clone) для сторонних приложений и генерация Recipe YAML.
    • Автоматический запуск анализатора в команде atbclone clone при отсутствии предустановленного рецепта.
  • Сборка единого бинарного файла:
    • Добавлен скрипт scripts/build_cli.sh для компиляции полностью автономного исполняемого файла macOS arm64 (dist/ATBCloneCli) с помощью Nuitka.

⚡ Улучшения и исправления

  • Повышение привилегий для каталога /Applications переведено на стандартный диалог авторизации osascript macOS.
  • Комплексное экранирование путей с помощью shlex.quote для защиты от пробелов и специальных символов.

[v0.1.0] - 2026-08-17

🌟 Первый официальный релиз

  • Двухдвижковая архитектура клонирования:
    • Hard Clone (Полный клон): Дублирование App Bundle, изменение Info.plist, изоляция каталогов HOME / TMPDIR, снятие песочницы и повторная ad-hoc подпись.
    • Soft Clone (Легкий клон): Легковесный загрузчик для браузеров Chromium и редакторов кода с передачей --user-data-dir.
  • Более 18 встроенных рецептов:
    • Мессенджеры: WeChat, QQ, Telegram, LINE, Slack, Discord, Skype.
    • ИИ-клиенты: ChatGPT (Codex), Gemini, Antigravity, Antigravity IDE.
    • Браузеры и редакторы: Google Chrome, Microsoft Edge, Firefox, Arc, Cursor, VS Code, Zed.
  • Команды CLI:
    • clone: Создание клона приложения с настраиваемыми параметрами.
    • list: Просмотр списка клонов в виде таблицы Rich.
    • update: Обновление клона после апдейта основного приложения с сохранением данных.
    • remove: Безопасное удаление клона.
    • recipe: Просмотр и управление рецептами.
    • doctor: Проверка инструментов системы (codesign, xcode-select, PlistBuddy).