Skip to content

Releases

Nora 1.3.4

Choose a tag to compare

@Lexus2016 Lexus2016 released this 05 Nov 20:56

Fixed

  • Cleanup works with Mole 1.67 and newer. Mole reworded the closing lines of mo clean ("Potential space: X · N items" and "Removed: X · N items" instead of "Items: N" and "Tracked cleanup:"). Nora read the old wording only, so every scan on Mole 1.67 or newer was refused as incomplete, and a successful cleanup would have been reported as unverified. Both wordings are read now; the new lines are shown in Nora's language.
  • Result cards no longer display Mole's terminal separator lines made of equals signs, which could wrap into an untidy extra row. The original command log is preserved.
  • A cleanup run that found nothing left to remove ("System was already clean") is shown as finished instead of "Cleanup result is unverified". Partial totals from Mole (a trailing +) keep that mark in result cards, and the item count is read from the footer line instead of any earlier "Items:" text.
  • Cleanup no longer silently loses Homebrew and large project folders when they are slow to scan. Mole's limits (20 s for Homebrew, 6 s per project folder) are raised for the cleanup preview and run, so the preview and the run see the same folders.
  • Space Map no longer lets you move protected folders to the Trash: iCloud Drive's own folders (moving one removes it from every device on the account), the data of Docker Desktop and OrbStack, system folders and your home folder. Mole's own Analyze refuses the same paths since 1.65 and 1.68, but Nora moves items itself and had no such check. A protected row shows a lock and has no checkbox; files and folders inside iCloud Drive stay yours to remove. The same rules apply to other spellings of a protected path (APFS ignores case, so /system is /System) and to iCloud Drive's Desktop folder. A link that merely points to a protected folder can still be moved: the Trash moves the link, not its target.
  • Projects: the artifact preview could end as "incomplete" because ~/_Projects took longer than Mole's 60 s scan limit, and Nora refuses to clean an incomplete preview. The scan limits are raised (measured: the same folder now reads "complete", 4.89 GB in 382 artifacts), and the run uses the same limits.

Changed

  • Cleanup shows only what you can act on. Mole's raw notes, which were worded for a terminal ("run brew cleanup --dry-run manually") and listed folders Nora never cleans (Docker, Lima, Time Machine snapshots, Android emulators), are gone from the screen; they remain in the console. A missing Full Disk Access shows one clear message with a button to open Settings, and places Mole could not check show one message with a "Scan again" button. When a rescan skips the same places again, the "Scan again" button is replaced by a plain note that those places cannot be checked on this Mac, so the button never promises a fix that cannot come. Only notes about time or availability ("timed out", "unavailable") offer a rescan; other Mole warnings stay in the console.

Виправлено

  • Очищення працює з Mole 1.67 і новішими. Mole змінив завершальні рядки mo clean («Potential space: X · N items» і «Removed: X · N items» замість «Items: N» і «Tracked cleanup:»). Nora читала лише старий запис, тому кожне сканування на Mole 1.67 і новіших відхилялося як неповне, а успішне очищення було б показано як непідтверджене. Тепер читаються обидва записи; нові рядки показуються мовою Nora.
  • Підсумкові картки більше не показують службові смуги Mole зі знаків рівності, які переносилися в зайвий рядок. Оригінальний журнал команди збережений.
  • Запуск очищення, у якому вже нічого було видаляти («System was already clean»), показується як завершений, а не як «Результат очищення не підтверджено». Неповні підсумки Mole (знак + в кінці) зберігають цей знак у підсумкових картках, а кількість елементів береться з підсумкового рядка, а не з будь-якого раніше надрукованого «Items:».
  • Очищення більше не губить мовчки Homebrew і великі теки проєктів, коли їх повільно сканувати. Ліміти Mole (20 с для Homebrew, 6 с на теку проєктів) збільшено для перегляду й запуску очищення, тож вони бачать однакові теки.
  • Карта простору більше не дозволяє перемістити в Кошик захищені теки: власні теки iCloud Drive (переміщення прибирає їх з усіх пристроїв облікового запису), дані Docker Desktop і OrbStack, системні теки та домашню теку. Власний Analyze в Mole відмовляє для тих самих шляхів з версій 1.65 і 1.68, але Nora переміщує елементи сама й такої перевірки не мала. Захищений рядок має замок і не має прапорця; файли й теки всередині iCloud Drive можна прибирати як і раніше. Ті самі правила діють для інших написань захищеного шляху (APFS не розрізняє регістр, тож /system це /System) і для теки Desktop в iCloud Drive. Посилання, що лише вказує на захищену теку, перемістити можна: до Кошика йде саме посилання, а не те, на що воно вказує.
  • Проєкти: перегляд артефактів міг завершуватися як «неповний», бо ~/_Projects сканувалась довше за ліміт Mole 60 с, а Nora відмовляється чистити неповний перегляд. Ліміти сканування збільшено (виміряно: та сама тека тепер «повна», 4,89 ГБ у 382 артефактах), запуск використовує ті самі ліміти.

Змінено

  • Очищення показує лише те, з чим можна щось зробити. Сирі примітки Mole, написані для термінала («run brew cleanup --dry-run manually») і про теки, яких Nora не чистить (Docker, Lima, знімки Time Machine, емулятори Android), прибрано з екрана; вони лишаються в консолі. Відсутній повний доступ до диска показується одним зрозумілим повідомленням із кнопкою відкрити налаштування, а місця, які Mole не зміг перевірити, — одним повідомленням із кнопкою «Сканувати ще раз». Якщо повторне сканування знову пропускає ті самі місця, кнопку «Сканувати ще раз» замінює спокійне пояснення, що ці місця на цьому Mac перевірити не вдається, тож кнопка не обіцяє виправлення, якого не буде. Повторне сканування пропонується лише для приміток про час або доступність («timed out», «unavailable»); інші попередження Mole лишаються в консолі.

Nora 1.3.3

Choose a tag to compare

@Lexus2016 Lexus2016 released this 26 Oct 08:33

Fixed

  • Installer review now shows every same-named copy as a separate row, without blank gaps, and each checkbox works independently. Previously, files sharing a name and source label reused the same row identity.
  • Installer confirmation now accepts repeated full filenames when they correspond to individually verified selected files. Changed counts, unexpected files, ambiguous truncated names and ambiguous menu rows still stop removal before confirmation.
  • Mole 1.64's explicit successful empty-installer result is now recognized instead of being reported as a failed scan.
  • App removal supports Mole 1.64's single confirmation as well as the earlier two-step flow. The matched app and full file plan are still checked before confirming; preview cancels without removing files.

Changed

  • The verified official Mole installer is pinned to 1.64.0, with its SHA-256 checked against both official raw and API downloads. Files selected in Nora's Installers section continue to go to the Trash.

Виправлено

  • Перегляд інсталяторів показує кожну однойменну копію окремим рядком, без порожніх проміжків; кожна позначка вибору працює незалежно. Раніше файли з однаковими назвою та позначкою джерела отримували спільний номер рядка.
  • Підтвердження видалення інсталяторів приймає повторні повні назви, якщо вони відповідають окремо перевіреним вибраним файлам. Інша кількість, зайві файли, неоднозначні обрізані назви й неоднозначні рядки меню й далі зупиняють видалення до підтвердження.
  • Явне повідомлення Mole 1.64 про успішне сканування без інсталяторів тепер розпізнається, замість помилки сканування.
  • Видалення програм підтримує єдине підтвердження Mole 1.64 та попередній порядок із двома запитаннями. Назва програми й повний список файлів перевіряються до підтвердження; попередній перегляд завершується скасуванням без видалення.

Змінено

  • Перевірений офіційний інсталятор Mole оновлено до 1.64.0; його SHA-256 звірено з обома офіційними способами отримання файлу. Вибрані в розділі «Інсталятори» файли й далі переміщуються до Кошика.

Nora 1.3.2

Choose a tag to compare

@Lexus2016 Lexus2016 released this 21 Oct 18:45

Changed

  • Watch Downloads no longer keeps ClamAV's virus database in memory around the clock. After 5 minutes without a download to check, Nora stops ClamAV (about 1 GB, up to 2.4 GB during the daily reload) and loads it again when the next download arrives, which takes a few seconds. The watch itself stays on, so no download is skipped, and it is still off by default.

Fixed

  • The Trash reminder no longer goes silent for 30 minutes after "Not now" or an emptied Trash. Something new in the Trash is offered again as soon as it is measured; only items you already waved off or had emptied stay quiet, and so does Finder's own .DS_Store.
  • "Empty Trash" cannot be clicked on a list that is already out of date. When something lands in the Trash while the reminder is open, the button waits for the rescan, so it empties the current list instead of being refused and leaving the Trash half done.
  • When cleanup finds that the Trash changed since the review, Nora shows the current list again instead of leaving the rest with no window. Items thrown away while a cleanup runs are offered when it finishes.

Змінено

  • «Стежити за Завантаженнями» більше не тримає вірусну базу ClamAV у пам'яті постійно. Після 5 хвилин без файлу для перевірки Nora зупиняє ClamAV (близько 1 ГБ, до 2,4 ГБ під час щоденного оновлення) і завантажує його знову, коли надходить наступний файл, це займає кілька секунд. Саме стеження лишається ввімкненим, тож жоден файл не пропускається, і за замовчуванням воно, як і раніше, вимкнене.

Виправлено

  • Нагадування про кошик більше не мовчить 30 хвилин після «Не зараз» чи очищення. Нове в кошику пропонується знову, щойно його виміряно; тихими лишаються лише елементи, які ви вже відхилили або очистили, а також службовий .DS_Store від Finder.
  • Кнопку «Очистити кошик» не можна натиснути на списку, який уже застарів. Якщо в кошик щось потрапило, поки нагадування відкрите, кнопка чекає на повторну перевірку, тож очищає актуальний список, а не отримує відмову й не лишає кошик напівочищеним.
  • Якщо під час очищення виявляється, що кошик змінився після перегляду, Nora знову показує актуальний список, а не лишає залишок без вікна. Те, що потрапило в кошик під час очищення, пропонується, коли воно завершиться.

Nora 1.3.1

Choose a tag to compare

@Lexus2016 Lexus2016 released this 18 Oct 10:33

Changed

  • Clicking "Empty Trash" now starts cleanup and closes the reminder immediately. The extra scan, separate confirmation, button delay and wait for a result are removed. Cleanup continues in the background using the reviewed items, with the existing filesystem checks and protection against duplicate runs.
  • Applications now has a prominent "All apps" entry on its start screen and results, with the total app count. Opening it clears an old search and the unused-app filter without losing your selection.
  • Before removing selected apps that are open, Nora lists them and asks permission to quit. Apps can ask you to save your work; an app that stays open or opens after confirmation is skipped.
  • The verified official Mole installer is pinned to 1.61.0. The compatibility audit and its limits are recorded in docs/audits/2026-10-18-mole-1.61-compat.md.

Fixed

  • Uninstall uses the application's name rather than its Homebrew package token, reads Mole 1.61's personal-data selection and [Brew] groups, and authenticates Homebrew removals when required. Settings and personal data are included in the visible review; execution still requires the exact reviewed app and file list. Unknown, truncated or changed output is rejected before removal.
  • History no longer counts dry-run estimates as space freed or completed actions. Performance recognizes Mole 1.61's disk-verification skip message.

Змінено

  • Натискання «Очистити кошик» одразу запускає очищення й закриває нагадування. Прибрано повторне сканування, окреме підтвердження, затримку кнопки та очікування результату. Очищення триває у фоні за вже показаним списком, зі збереженням перевірок файлової системи й захисту від повторного запуску.
  • На початковому екрані «Програми» та в результатах з'явився помітний перехід «Всі програми» із загальною кількістю. Перехід очищає попередній пошук і фільтр невикористовуваних програм, зберігаючи ваш вибір.
  • Перед видаленням відкритих програм Nora показує їхній список і просить дозволити завершення. Програми можуть запропонувати зберегти роботу; програма, яка залишилася відкритою або відкрилася після підтвердження, пропускається.
  • Перевірений офіційний інсталятор Mole оновлено до 1.61.0. Результати та межі перевірки сумісності описано в docs/audits/2026-10-18-mole-1.61-compat.md.

Виправлено

  • Видалення використовує назву програми замість назви пакета Homebrew, розуміє новий вибір особистих даних і групи [Brew] у Mole 1.61, а за потреби отримує права адміністратора для видалення через Homebrew. Налаштування й особисті дані включені до видимого перегляду; виконання потребує точного збігу програми та списку файлів. Невідомий, обрізаний або змінений вивід зупиняє видалення.
  • Історія більше не зараховує оцінки попереднього перегляду до звільненого місця й виконаних дій. Обслуговування розпізнає нове повідомлення Mole 1.61 про пропущену перевірку диска.

Nora 1.3.0

Choose a tag to compare

@Lexus2016 Lexus2016 released this 17 Oct 18:44

A safety audit of every module, and a reminder for the Trash. The audit's main change is that Nora now refuses to act, instead of guessing, when Mole's output or a file's state cannot be trusted: an incomplete or stale preview, an unreadable protection list or a failed save no longer leads to a removal or to a "done" screen.

Added

  • Trash reminders. While Nora is running it notices new files in your home Trash (~/.Trash; external disks are not looked at) and offers a review in a small panel. Settings has a switch for the reminders, and "Review home Trash…" in Nora's menu works with them off. The reminder never deletes anything: after the review, "Delete permanently" is a separate step with its own confirmation that says it cannot be undone, and its button stays inert for the first moments after it appears, so the second click of a double-click on "Empty Trash…" cannot reach it. Only the items you reviewed are removed; files that reach the Trash later are left alone, and if the Trash changed since the review you review it again. Stopping part-way leaves what was already deleted deleted. If an interruption leaves items set aside, deletion stays blocked until Nora has restored them. The result counts the entries removed, not freed space: the size shown is a logical size and can differ from the disk space returned. After a successful deletion the panel closes by itself after a few seconds; any other result (stopped, changed, failed, needs recovery) stays until you dismiss it.
  • The repository now runs the MoleKit and app tests on GitHub for every push to main.

Changed

  • Decorative glass animation is bounded: at most 24 frames a second, a smaller swing (up to 18°) and fewer layers on the busy hero, with a lighter shadow and a tinted edge. It stops completely while the window is inactive or hidden and when Reduce Motion is on.
  • The console opens on the last command of the current module, with a History picker, pause and "jump to latest"; scrolling by hand stops following the output, and a shortened log says so.
  • The README states the limits of the checks: Cleanup and Projects use Mole commands that rescan rather than run a fixed list of paths, so a file that appears after the check can still be affected. See docs/audits/2026-10-17-remediation.uk.md.

Fixed

  • Cleanup, Projects and Installers previews are rejected, not shown, when the list is incomplete, older than the last scan, has duplicate or ambiguous rows, or is empty without Mole saying so. An Installers scan that exits with an error no longer reads as "no installers". A file name with two spaces in a row is no longer cut short, and the final confirmation is sent only after the whole prompt has arrived and matches your selection exactly.
  • Cleanup no longer reports the size of a preview as space freed; without a report from Mole the result says it is unverified. Projects, Installers and Performance no longer promise space they did not measure.
  • Review shows every warning Mole gave, and the Full Disk Access explanation stays available.
  • If restoring the protection list fails, Nora shows it with a Retry button and blocks the next run. When something else changed the protection file meanwhile, both versions are kept and you are asked to reconcile them. If the defaults cannot be read, Protection cannot be edited over them, and a failed save is rolled back.
  • Smart Care and Cleanup no longer show a stale scan or results after Start over or a new scan, and Done returns to Smart Care when you came from there. Clean, Run and Remove stay visible but disabled with the reason, the found size is kept apart from the selected size, and error tiles have Retry. Opening the console no longer hides the action button.
  • Space Map no longer counts a folder and its contents twice, and refuses a stale or failed load. Tools checks Touch ID setup by its exit status and shows errors. Uninstall confirms the app and its helpers are gone, a malformed Homebrew reply is rejected, and updates that were blocked or stopped are not counted as done.
  • Security: a failed launchctl status check stops the action, and a quarantine that unloaded an agent but could not move it says so. Notices from manual database updates now show in Settings.
  • History shows a loading state and, when Mole fails, an error with Retry instead of an empty dashboard. Checking the latest Mole release shows the failure with Retry. Commands from Tools, Security, History and Space Map are logged under their own module, so "see console" no longer opens an empty log.
  • "Update Mole" is named for what it does, and a successful exit is no longer presented as proof that a new version is installed.
  • Space Map's Start over no longer takes Command-[ from Back, and Performance's Run is disabled when there is nothing to do.
  • Checkboxes in Space Map and Security, the external-drive picker and the selected sidebar item now have accessible names and traits.

Nora 1.2.1

Choose a tag to compare

@Lexus2016 Lexus2016 released this 15 Oct 10:04

Nora now uses far less CPU when none of it is on screen. In 1.2.0 a closed or hidden window could keep it at up to a third of a CPU core in the background; the same situations now measure under 1%.

Added

  • The quick menu's Processor tile shows the CPU temperature with the same coloured dot as the menu bar (green below 70 °C, orange from 70 °C, red from 90 °C), whether or not the menu bar shows it; the tooltip gives the value in degrees. It is read every 3 seconds, only while the menu is open.

Fixed

  • After the quick menu had been opened once, Nora kept drawing it in the background on every status sample and kept Mole's status stream running, even with every window closed: about 14% of a CPU core plus 1% for the stream, all the time. The menu now exists only while it is open, and the stream stops 10 seconds after it closes. The list of apps by memory is read every 3 seconds while the menu is open, not on every redraw.
  • System Status kept Mole's status stream and its live readings (nettop, lsof, the chip's sensors) running while its window was minimised, covered or on another Space, and redrew every card on every sample: with the window on another Space that took about 13% of Nora's main thread. They now run only while the window is on screen and resume when it comes back.
  • Spinners (in cards, next to a busy module in the sidebar and on the round button) redrew the whole window at the display's refresh rate, and went on when the window was minimised or on another Space. A spinner left turning in a hidden window could keep Nora at up to 38% of a core. Spinners now turn at up to 30 frames a second and stop while their window is not on screen; the same case measures under 1%.
  • With CPU or memory figures in the menu bar, Mole's status stream runs all the time, and System Status, Space Map or History left as the last screen in the closed window redrew on every sample: 23% of a core with nothing on screen. Samples now reach a screen only while it is on screen; the menu bar title reads them directly. The same state measures 0.7%.
  • With the main window closed, the round button's mouse monitors went on waking Nora for mouse moves in every other app. They now stop when the window closes and come back when it is on screen again.
  • The quick menu showed a cache of zero as "Zero KB" (in Ukrainian "Нуль КБ"); every size of zero now reads as a number, "0 KB".

Nora 1.2.0

Choose a tag to compare

@Lexus2016 Lexus2016 released this 15 Oct 07:42

Added

  • Settings → General → Menu bar can show the CPU temperature next to the Nora icon, with a coloured dot for how hot it runs: green below 70 °C, orange from 70 °C, red from 90 °C. Off by default; the tooltip gives the value in degrees, or says when no current reading is available. When the chip's sensors give no CPU temperature, Nora reads it from Mole and keeps that stream running while the setting is on.

Changed

  • Updating an app that is open no longer fails with "Quit it and try again". Update now asks first, then quits the open apps the way their own Quit command does, so each one can ask to save your work, updates them and opens them again. An app that stays open, for example because you cancelled its save dialog, is skipped and named in the result, and an app you open while the update runs is left alone. Every app Nora quit comes back, even when a later one refuses to close.

Fixed

  • Cleanup and Projects could remove an item you unticked when its name was one Mole's protection list does not accept, such as a folder with .. in its name or a name ending in a space. Nora now asks Mole, after writing the protection and before the run, whether every unticked path really is protected; if one is not, nothing runs and the result names it.
  • Cleanup hid a category when Mole could not measure its size, while its items stayed ticked and were cleaned. Every category with items now shows, with "Size unknown" where Mole gave no size. Rows Mole marks with an item count or as counted under another row are read correctly, and are no longer counted twice.
  • Cleanup checks again right before every run, not only when something is unticked, so junk that appeared after the review is protected even when everything stays ticked. With system caches included, that check and the clean run in one authenticated session, so the check sees exactly what the run will see; before, it ran without administrator rights and could miss new system items.
  • Stop and Quit now wait for every helper a Mole command started without a terminal, not only the command itself: a helper that ignores the stop signal is killed after 2 seconds, and Nora restores Mole's protection list only once all of them are gone. Quitting Nora waits for such helpers too.
  • A Full security scan no longer scans Nora's own quarantine and virus database: a quarantined file came back as a new finding, and quarantining it again split its entry so one Restore no longer put it back. A file already in quarantine can no longer be quarantined again.
  • When yara failed on one folder, the XProtect matches it had already found in other folders were dropped, and a failure that printed output still counted as a clean run. Matches are now kept as each folder finishes, and the card says when some folders could not be checked.
  • A file named meta.json could not be quarantined. Quarantined files are now kept in a payload folder of their entry; older entries are still listed and restored.
  • Smart Care no longer runs a step whose review has nothing ticked (or found nothing): it shows "nothing to do" instead of starting the command and reporting a failure. Cleanup, Projects and Installers also refuse an empty selection themselves.
  • History counts failed maintenance tasks apart from failed files, so a failed optimize no longer shows as "Failed 0"; each recent session with failures says how many.
  • Tools → External drive shows why a preview or a clean failed (the error Mole printed), instead of an empty card. A failed clean says that some files may already be removed.
  • Installing Mole from Nora gives up on a download that stalls (30 s to connect, under 1 KB/s for 10 s, 5 minutes in all), and the install can be stopped; a stopped download never reaches the installer.
  • Watch Downloads now knows a file by its version, not its name: a file deleted and downloaded again under the same name, or replaced, is checked again. Before, a reused name was never checked after the first time.
  • Watch Downloads no longer looks active after ClamAV stopped. Nora restarts it (up to three times in ten minutes, then turns the watch off and says why), and a download clamdscan could not check is named in Settings and checked again after the restart instead of passing as clean.
  • Security's launch item review now checks what Apple's script interpreters (sh, zsh, osascript, python3 and others) are told to run: a launch agent that pipes a download into a shell, decodes base64, or runs a script from a temporary, shared or hidden folder is flagged even though /bin/sh itself is signed by Apple. Other Apple-signed programs are still not flagged.
  • Smart Care's Scan waits for a module that is already scanning instead of starting it a second time; the first scan could otherwise finish later and overwrite the module's state, even during a run. Stop during Scan stops only the scans Smart Care started, and Stop during Run only the step it started, so a module you run on its own screen goes on.
  • Handing a downloaded app over to Homebrew is now a checked transaction. The old copy is set aside in Nora's own folder (journaled and synced first), not straight in the Trash; after brew install Nora reads the new bundle and keeps it only if it has the same bundle ID and is not older; only then does the old copy go to the Trash. Otherwise whatever Homebrew left goes to the Trash and the old copy goes back. A quit or crash mid-install is finished the same way on the next start, and a damaged journal stops the update instead of being ignored. The result shows the version actually installed.
  • When Nora puts the old copy back after a failed handover, it also removes the record Homebrew made of the app during that install (its Caskroom folder goes to the Trash), so a later brew upgrade does not replace the copy you kept. brew uninstall is not used for this: it would run the cask's uninstall steps against the restored app.
  • An app whose bundle belongs to root, as Google Chrome's does when its own updater installed it, gets Open instead of the Homebrew handover: Nora cannot move such a bundle aside, so the handover could only fail.
  • An app that installs its own downloaded update as it quits (Sparkle, Squirrel's ShipIt) now counts as updated when Nora quits it for an update, instead of failing with "It changed since the scan". Nora reopens quit apps only once their bundle has stopped changing, and tries once more if the app is not running a few seconds later; the screen says "Opening the apps again" meanwhile. When macOS does not let Nora move an app aside, the result says so in words and points to App Management, instead of showing a file error.
  • Right before an app is handed over, Nora reads it and its Homebrew entry again: an app that updated itself since the scan, or a cask that changed, is skipped with "Scan again".
  • An app is matched to a Homebrew cask only by its exact bundle ID, not by an ID that merely starts the same way, and by the name the cask really installs: a cask that renames its app (for example CleanMyMac_5.app installed as CleanMyMac.app) no longer matches the downloaded copy.
  • Versions with letters compare only with their own kind: 2.0rc1 no longer counts as newer than 2.0, and an app's own feed that gives only build numbers is not weighed against Homebrew's marketing version.
  • The menu bar title and the quick menu show only current numbers: when Mole's status stream stops or goes quiet for 15 seconds they show dashes (and the quick menu the reason) instead of the last values.

Nora 1.1.0

Choose a tag to compare

@Lexus2016 Lexus2016 released this 14 Oct 17:38

Nora 1.1.0 finds updates for the apps you installed yourself, not only Homebrew apps, and the section icons now match the pictures in each scene.

Added

  • Applications now finds updates for apps you installed from a DMG or a zip, not only for Homebrew apps. Nora reads each app's own update feed and Homebrew's public app list, and matches an app to that list only when both its name and its bundle ID agree. If Homebrew can take the app over, Update moves the old copy to the Trash, installs the new version with brew install --cask and puts the old copy back if the install fails, or the next time Nora starts if it was quit in the middle. From then on Homebrew keeps the app up to date. Other apps get an Open button, and their own updater installs the new version.
  • Settings → Credits names ClamAV (Cisco Talos), YARA (VirusTotal) and Sparkle next to Mole, in English, Ukrainian and Russian.
  • Settings → Credits has a Third-party licenses button that opens the bundled license texts.
  • Stop in every operation that can end safely: Cleanup, Projects and Installers runs, Smart Care's Run, the Applications removal and updates and Security's quarantine (these two finish the item in progress first), brew install and the virus database download, and the external drive clean.
  • The ClamAV database update shows that it is downloading.

Changed

  • Menu and scene icons match: each section's icon in the sidebar and the menu bar draws the same object as its scene. New glass objects for Cleanup (a trash can instead of a star with a white ball), Applications (four app tiles instead of a tile with a trash can, so it no longer looks like Cleanup), Projects (a clean </>), Performance (a bolt instead of a shield), History (a clock with a back arrow) and Tools (a wrench and a screwdriver instead of a gear).
  • The app icon's glass vessel is 20% smaller, with more white around it.
  • Tools → Remove Mole shows an app-removal icon instead of the trash can, which now belongs to Cleanup.
  • Homebrew updates run one app at a time, so Stop can wait for the app in progress.
  • The Applications scan now goes online: it downloads Homebrew's public app list from formulae.brew.sh and reads the update feeds of apps installed from a download. Every request is shown in the console.

Fixed

  • Review buttons on a glass object (Smart Care tiles and the large result cards) have a darker backing, so their text stays readable over a bright object.
  • When two sections worked at once, such as Cleanup and Applications updates, each showed the other's current item. Every section now shows only its own command's output.
  • A stopped command no longer shows as running forever in the console, and a stopped brew install no longer counts as a success.
  • The app now ships Sparkle's MIT license and the external licenses it includes (ThirdPartyNotices.txt). 1.0.0 bundled Sparkle without them.

Install

Download Nora-1.1.0.dmg below, open it and drag Nora to Applications. If you have 1.0.0, Nora offers this update itself.

Requires macOS 14 Sonoma or later, Apple silicon or Intel. Signed with a Developer ID and notarized by Apple.

Nora is an independent project and is not affiliated with or endorsed by Mole. ClamAV is developed by Cisco Talos and is a registered trademark of Cisco Systems, Inc.; Nora does not bundle it and runs the copy you install with Homebrew. YARA by VirusTotal runs Apple's XProtect rules. Updates are delivered by Sparkle.

Nora 1.0.0

Choose a tag to compare

@Lexus2016 Lexus2016 released this 14 Oct 09:18

The first public release of Nora, a native macOS app for the Mole command-line tool.

Highlights

  • Smart Care: one scan for junk, maintenance, build folders and installers. Run does every ticked task in turn.
  • Every Mole module in one window: Cleanup, Applications, Performance, Space Map, System Status, Projects, Installers, History, Protection and Tools.
  • Security: launch items and their signatures, Apple's XProtect rules and a ClamAV antivirus scan, with quarantine and one click back.
  • Review before anything is deleted. Unticked items are really kept, and Nora checks Mole's own confirmation against your choice before it agrees.
  • Menu bar quick menu (⌥⌘N) with live stats and quick jumps.
  • Installs and updates Mole for you. Nora updates itself with Sparkle.
  • Multilingual: the interface follows your Mac's language.

Requirements

  • macOS 14 Sonoma or later, Apple silicon or Intel. Signed with a Developer ID and notarized by Apple.
  • Mole 1.55 or later. Nora installs it if it is missing.

Install

Download Nora-1.0.0.dmg below, open it and drag Nora to Applications.

Known limits

  • Mole removes build folders by rescanning rather than from a list, so a folder created in the seconds before removal is not protected.
  • Installers are matched by name, folder and size, because Mole's menu shows no full path.
  • Not included yet: a read-only MCP server for AI agents and a ⌘K command palette.

Nora is an independent project and is not affiliated with or endorsed by Mole. ClamAV is developed by Cisco Talos and is a registered trademark of Cisco Systems, Inc.; Nora does not bundle it and runs the copy you install with Homebrew. YARA by VirusTotal runs Apple's XProtect rules. Updates are delivered by Sparkle.