Theodore HQShiny

Shiny

One-tap memory cleanup for a faster Mac.
Visit Shiny
v1.0.45Jul 14

A Lighter Edge Glow

Soft edge glow now sits even more lightly on your Mac.

  • The glow overlay only appears the moment your system is genuinely near-full, and stays completely out of the way the rest of the time. If you ever noticed another app having trouble seeing or interacting with your screen while the glow was on, this update resolves that.
v1.0.44Jul 6

A Built-In Support Hub

Getting help and sharing your ideas is now just a click away inside Shiny.

  • The Settings tab is now a dedicated Support area. Report a bug, request a feature, leave a testimonial, review the roadmap, or browse the FAQ, each one opening straight to the right place in your browser.
v1.0.43Jun 15

A Leaner Polish

This release makes Polish noticeably leaner and more reliable.

  • Polish now frees memory using only fast, lightweight system operations. If you ever saw Shiny itself using more memory or CPU than you'd expect, this update resolves that and keeps it light.
  • The background helper is more robust: every task it runs is now time-bounded so it can never get stuck, and Shiny cleans up after itself automatically in the background.
v1.0.42Jun 15

Helper Reliability

This release makes the background helper far more reliable when removing or pausing system items in Sneaky Apps.

  • Shiny now checks whether the helper can actually respond before acting, rather than relying on what macOS reports about it. This clears up cases where the helper was working but Shiny thought it wasn't (and the reverse).
  • When the helper simply needs your approval, Shiny now guides you straight to the right place in System Settings instead of repeatedly re-registering it. Previously that re-registration could reset your approval each time, leaving you stuck approving it over and over.
v1.0.41Jun 12

A Self-Healing Helper

This release makes Shiny's background helper recovery substantially more reliable in two ways:

  • Removing or pausing system-level items in the Sneaky Apps tab now repairs the background helper automatically when needed. Previously a transient helper issue could leave a warning panel stuck on screen even when the helper was already approved; the same actions are now self-healing in most cases without needing any intervention.
  • The launch-time check for the background helper is now considerably more robust. Shiny waits for the helper to come online, verifies it can actually communicate with it (rather than just trusting what macOS reports), and quietly re-registers it if anything looks off. This should significantly reduce occasional notifications asking you to reinstall the helper, particularly just after a Shiny update or a Mac restart.
  • The "Allow in the Background" approval flow has been clarified throughout the app. Instructions now refer to the exact section name in System Settings, so it's clearer where to look when approval really is needed.
  • The Reinstall button for the background helper is now always available in Settings → About, so you can give the helper a clean refresh any time without having to wait for a notification.
v1.0.40Jun 6

Only Apps You Recognise

This release sharpens the rule that decides which apps appear in the popover, so the "using the most right now" line only ever names apps you'd recognise.

  • Background system services and silent third-party updaters that ship as hidden app bundles are now correctly filtered out, so the popover no longer names them.
  • User-facing apps such as Music, Mail, Maps, Notes, Safari, Siri, and Finder continue to appear as before when they're holding memory.
v1.0.39Jun 2

VoiceOver Throughout

This release introduces a comprehensive set of accessibility improvements for VoiceOver users, including:

  • The menu-bar popover now moves screen-reader focus into it the moment it opens, so VoiceOver users can navigate straight into the panel without first locating it from the menu bar.
  • The menu-bar icon now speaks its current state out loud (for example, "Your Mac is feeling great, 22 percent under pressure"), making its meaning clear without sight of the dial.
  • Every screen across the app now reads cleanly in plain English with VoiceOver, including onboarding, licence activation, the popover, Sneaky Apps, Settings, and the crash dialog.
  • Toasts and confirmations (such as the undo window and the helper-approval prompt) now announce themselves the moment they appear, so VoiceOver users hear them even when their focus is elsewhere on the screen.
  • Each settings tab announces its name when selected, and every row, button, and control in the Sneaky Apps tab now carries a clear, app-contextual label.
  • Keyboard-shortcut rows now read out the current shortcut and explain how to record a new one.
  • Onboarding and licence-entry screens announce state changes as they happen, so VoiceOver users hear when a step completes, an activation succeeds, or an error occurs.
v1.0.38May 28

Clearer Setup State

  • Before you've finished setting up, the menu-bar icon now shows greyed out, so it's clear Shiny is there but not active yet. Clicking it takes you back to the setup screen.
  • Hovering the menu-bar icon now shows "Shiny", so it's always clear what it is.
v1.0.37May 28

Names You Actually Know

  • The popover now only ever names apps you'd recognise. If a background process is a command-line tool, a system service, or something without a real app behind it, Shiny leaves it out of the "using the most" line entirely instead of showing a technical name you wouldn't know.
v1.0.36May 28

Cleaner Popover Names

  • The popover no longer names a background process by a raw number when it can't find a friendly name for it. If Shiny can't tell you what an app actually is, it now quietly leaves it out of the "using the most" line instead of showing something like "Pid 60216".
v1.0.35May 26

Better Helper Signposting

Better signposting when the background helper needs attention.

  • When you press Polish and the helper isn't approved, the message below the pillow now has an Open Settings button that takes you straight to the right pane.
  • Hovering the Polish button when it's disabled now correctly says whether your Mac is healthy or the helper needs approval, instead of always claiming everything's fine.
  • If the helper still isn't approved after Shiny's automatic recovery on launch, a calm one-off system notification appears with an Open Settings button. Throttled to once per twenty-four hours so it never spams.
v1.0.34May 26

Truthful Polish Messages

  • Fixed a false-negative message after a Polish: "A gentle tidy. Couldn't reach the helper for a full polish." was sometimes shown even though the helper was working perfectly. It just meant the deep-polish sequence took a little longer than the popover's display budget. Polish now shows the normal success message in that case and lets the real reclaim numbers land naturally once the helper finishes.
v1.0.33May 26

Calmer Confirmations

  • The confirmation dialog shown when you Disable or Quit an important app now uses a single generic message instead of bespoke per-app text. Same protection, less performative.
  • Tidied a few stray em dashes in user-facing strings around Settings.
v1.0.32May 26

Disable and Quit on Every Row

  • Every sneaky app row now shows both a Disable and a Quit button, for visual consistency across the list. Quit appears in its full amber colour when the app is currently running, and dimmed when there's nothing to quit.
  • Disabling or quitting a known-important app (cloud sync, password manager, VPN, backup tool) now shows a brief confirmation dialog with a plain-English heads-up about what will happen. Other apps still respond instantly with no friction.
v1.0.31May 26

Undo Banner Up Top

  • The Undo banner that appears after disabling or removing a sneaky app now stays pinned to the top of the Sneaky Apps tab. Previously it was anchored to the bottom of the scrollable content, so it was hidden out of view if the list was long enough to scroll.
v1.0.30May 26

Roomier Settings

  • The Settings window is now wider so Sneaky Apps rows have room to breathe. App names, descriptions, and meta lines no longer wrap to three or four lines.
  • Fixed a bug where pressing Enable, Disable, or any other button on a row sometimes appeared to do nothing. The change was happening in the data underneath but SwiftUI wasn't being told to redraw the row. Buttons should now respond visually the instant you click them.
v1.0.29May 26

Redesigned Sneaky Apps Controls

Sneaky apps controls have been redesigned for clarity and consistency.

  • Every row now uses the same set of labelled pill buttons: Disable (or Enable on a paused row) on the left, Quit on the right when the app is currently running. The toggle and the small "open in System Settings" arrow have been replaced.
  • Buttons now respond instantly when you click them. The visual change is the first thing that happens; if any background work fails afterwards, the row reverts and a warning toast appears.
  • Disabled rows are dimmed so it's obvious at a glance which apps you've turned off. A small "Disabled" chip sits next to the app name.
v1.0.28May 26

Neater Rows, Clearer Warnings

  • Sneaky apps rows now line up neatly. The Quit button keeps its own fixed position next to the toggle, instead of sliding into the toggle's spot on rows that only have one or the other.
  • If a toggle or remove action quietly fails (e.g. the background helper rejected the change), Shiny now surfaces a clear warning toast with a button to open System Settings, instead of letting the toggle silently revert.
v1.0.27May 26

System-Level Control

  • Sneaky apps in the system /Library folder can now be paused directly from Shiny, instead of only the user folder. The toggle on those rows now does the same thing as the toggle on user-folder rows.
  • The Quit button now shows up on any sneaky app that's currently running, not just user-folder ones.
  • The small System Settings arrow now only appears for the apps where it's genuinely the only way to control them (apps using the modern macOS background API where the launch entry is sealed inside the app bundle).
v1.0.26May 26

A More Reliable Reinstall

  • The Reinstall button in Settings now always opens System Settings so you can finish approving the background helper, instead of silently doing nothing when macOS thinks the helper is already approved but it actually isn't running. Shiny also now pings the helper to confirm it's really alive, rather than trusting macOS's status by itself.
v1.0.25May 26

Smarter Remove

  • The "Remove" button on a system-level leftover app now does the right thing when the background helper isn't currently approved. Instead of silently failing after a few seconds, Shiny opens System Settings to the right pane, shows a warning toast asking you to approve the helper, and recovers automatically once you do.
  • Shiny's launch-time helper check now also recovers from "stuck disabled" states left behind by earlier updates, so you should never need to manually reinstall the helper from Settings again.
v1.0.24May 26

Remove, Reliably

  • Fixes "Remove" on system-level leftover apps. In 1.0.23 the row would disappear briefly and then come back a few seconds later, because the helper's safety check was comparing the wrong path and rejecting every legitimate request. Now actually moves the file.
v1.0.23May 26

Leftover Removal Improvements

  • Sneaky Apps banners now fit narrow settings windows without wrapping the title onto four lines. Title and action button share the top row; subtitle wraps cleanly underneath.
  • "Remove all" and the per-row Remove button now actually work on leftover apps whose plist lives in the system /Library folder (the common case). Removals are routed through the privileged helper, with undo still available for six seconds.
v1.0.22May 26

Sneaky Apps, Redesigned

A complete redesign of the Sneaky Apps tab.

  • Leftover detection. Sneaky apps whose parent app is gone (uninstalled, dragged to Trash) now show up in a dedicated "Leftover, safe to remove" section, with a one-click Remove button and a bulk "Remove all" banner at the top.
  • Quit now. A warm amber capsule beside the toggle on any sneaky app that's currently running, so you can quit it right now instead of waiting for next login.
  • Provenance line. Every row now tells you where it came from, how old it is, and which installer brought it onto your Mac, all in a single readable sentence.
  • Search. Type to filter the list by app name, description, or installer.
  • Undo. After pausing or removing, a small floating capsule at the bottom of the window gives you six seconds to undo with one tap.
  • New badge. Any sneaky app that appeared since the last time you visited this tab gets a small amber "New" chip so you notice silent installs.
  • Bulk action banners. Headline buttons for "Pause all updaters" and "Remove all leftover apps" sit above the list, so the obvious wins are one click away.
v1.0.21May 26

Instant Toggles

  • Tapping the toggle on a sneaky app now feels instant. The toggle flips immediately and the heavy launchctl work happens quietly in the background, instead of freezing the settings window for up to thirty seconds while macOS shuts the agent down.
v1.0.20May 24

Cleaner Culprit Names

  • Cleaner culprit names. When macOS spawns a system service on behalf of one of your apps (for example a Quick Look preview for ForkLift, or shader compilation for Photoshop), Shiny now shows just the app name you actually recognise instead of the system service plus the app in brackets.
v1.0.19May 24

A More Graceful Afterglow

A more graceful afterglow.

  • When you press Polish, the menu-bar dial now drops to a couple of soft mint bars (instead of going empty), and then slowly creeps back over the next five minutes to reflect your Mac's real pressure. No abrupt return, no empty dial, just a gentle thawing back to the truth.
v1.0.18May 24

A Longer, Calmer Afterglow

A longer, calmer afterglow.

  • When you press Polish, the menu-bar icon now stays in its calm state (mint colour, fewer ticks) for a full minute, instead of fading back after about ten seconds. The popover still shows the truthful current state if you reopen it during that minute, so you can act on real pressure if you want to.
v1.0.17May 19

A More Powerful Polish

A more powerful Polish, and a more honest number to show for it.

  • Polish now does more in a single press: flushes file buffers, sweeps the cache twice, and politely asks your other apps to release whatever they can spare in between. Expect noticeably bigger reclaim on a busy Mac.
  • The "% lighter" number now reflects the work more honestly. It counts the cache pages we used to miss, takes the reading fresh from the system (not from a stale snapshot), and compares the freed memory to what was actually in use, instead of to your total RAM.
  • Polish no longer skips its deep work for quiet sounds like notification dings or paused video tabs. It still respects real music and calls.
v1.0.16May 18

Calm Crash Reporting

  • If Shiny ever crashes, the next time you open it you'll see a calm dialog explaining what happened. You can read the full report, send it to support with one click, or dismiss it. Nothing leaves your Mac unless you choose to send it.
v1.0.15May 18

Easier to Read in Dark Mode

  • Menu bar dial is easier to read in dark mode. The empty ticks now sit at the same brightness as the system menu bar icons next to them (moon, globe, etc.) instead of fading into the background.
v1.0.14May 17

First Run, Rebuilt

A complete rebuild of the first-run experience.

  • Onboarding and license entry now live in a proper window instead of the menu-bar popover. Switch to Mail or your browser to grab your license key, switch back, paste. The window stays put.
  • Welcome screen is calmer: one explainer row about the background helper, single primary action, no clipped buttons.
  • Helper install flow now has named states ("Welcome", "Waiting for approval", "All set up", "Almost there") so you always know where you are.
  • License screen rebuilt to match the rest of the app - monospaced key field, inline hint about the Polar email, clear self-serve recovery if you hit the 3-Mac activation limit.
  • New "You're all set" screen with a single Start using Shiny button when everything's wired up.
v1.0.13May 16

Shortcut Row Polish

  • Fixed the "Press a combination…" pill in the global-hotkey row - it was wrapping onto two lines, now sits cleanly on one.
v1.0.12May 16

Final Pre-Launch Polish

Final pre-launch polish.

  • Auto-polish now respects what you're listening to. If music, a video, or a call is playing when the periodic check fires, the deep purge skips so your audio stays smooth.
  • If you decline notification permission, the "Gentle nudges" toggle in Settings now correctly shows off - no more silent toggle on a denied permission.
  • Spelling normalised to "License" across Settings - was inconsistently "Licence" in one tab.
v1.0.11May 16

Launch-Readiness Pass

Launch-readiness pass - a batch of small fixes that smooth out the first 60 seconds of a brand-new install.

  • Notification permission is now requested after you finish onboarding, not the moment Shiny launches. No more macOS dialog hijacking your first impression.
  • If your licence key has reached its 3-Mac limit, you'll see a clear message with a link to manage your activations - no more cryptic server errors.
  • Sparkle no longer shows an update prompt seconds into your first launch. It still checks hourly in the background once you're set up.
  • The helper install button in onboarding now properly waits for the system to register before re-enabling - no more flicker, no accidental double-installs.
  • Accessibility labels on the Polish button, the Settings cog, and every toggle in Settings - VoiceOver users get a real description instead of just "button".
  • Removed an internal diagnostics view from the release binary.
v1.0.10May 16

Settings Polish

  • Fixed the quit-confirmation row: long app names like "Raycast Beta" no longer squash the Cancel and Quit buttons into garbled text. The title truncates instead.
  • Settings → About: the helper section now shows a calm "Installed and ready" status when everything's fine, instead of always showing a Reinstall button that looked like something needed doing.
  • Settings → About: shortened the "Check for updates" subtitle so it fits on one line.
  • Settings → Community: dropped the Roadmap row; the Give Feedback link is the place to share what's next.
  • Small cleanup to the maker credit.
v1.0.9May 16

Fresh Readings After Polish

  • Fixed: the "Now, your Mac has room to breathe" success text could get stuck on screen if you kept the popover open after Polish. It now gently fades back to a fresh reading.
v1.0.8May 14

An Honest Pressure Ring

  • The pressure ring is now honest about how your Mac actually feels, not how full a snapshot of memory looks. It tracks rates of latency-causing events - page-ins, swap-ins, decompressions, CPU contention, thermal throttling - instead of how many GB happen to be compressed. On Apple Silicon a Mac can sit at 50% compressed and feel completely smooth; the old algorithm flagged that as critical, the new one doesn't.
  • Net effect: the ring stays calm when your Mac feels calm, and lights up only when there's something you're actually about to feel.
v1.0.7May 14

About Tab Tidy-Up

  • Settings → About: cleaner description on the "Check for updates" row.
  • Removed the redundant "What's new" external link - the roadmap link covers it.
v1.0.6May 14

Quieter, Smarter Housekeeping

  • "Polish Now" from a notification banner now respects audio-aware behaviour - no more music stutters if you tap the nudge while listening to something.
  • Shiny now self-heals a stale background helper on launch instead of waiting for you to find the Reinstall button in Settings.
  • Quieter quit: removed a duplicate "resume suspended apps" round-trip at quit time.
  • Lots of internal cleanups behind the scenes - bounded the activation-history dictionary, moved a blocking subprocess off the main thread pool, and refactored the Polish ceremony into smaller pieces so future improvements are safer to land.
v1.0.5Apr 28

Meet Polish

  • The big button is now Polish - a calmer, more on-brand verb than "Clear" for what Shiny actually does. Settings, menu bar, and notifications match.
  • "Polishing your Mac…" / "Nothing to polish. Enjoy the calm." / "Time to polish it." - copy throughout now reads as one consistent voice.
v1.0.4Apr 28

Readable Process Names

  • Fixed garbled process names (e.g. "@��") appearing in the "using the most right now" sentence. macOS truncates process names at 16 bytes, which can split multi-byte characters mid-byte; Shiny now detects the broken decode and falls back to the proper app name.
v1.0.3Apr 28

Smarter Audio Detection

  • Smarter audio detection: Clear now actually samples the system output for ~150ms before deciding whether to skip the deep purge. Previously, paused players could trip the "audio is playing" check because macOS keeps the audio device open after pause; now we know whether sound is genuinely coming out of the speakers.
  • If you pause music and press Clear, you'll now get the full purge with the % lighter number - no more false "gentle tidy".
v1.0.2Apr 28

Audio-Aware Clearing

  • Clear is now audio-aware: when something's playing through your speakers, Shiny holds off the deep memory purge so your music, video, or call doesn't stutter. The popover still unwinds and the menu bar still flashes - just the heavy step skips.
  • The post-clear sentence tells you when this happened, so the smaller "% lighter" number isn't a surprise.
v1.0.1Apr 28

Honest Ring, Snappier Clear

  • The pressure ring is now honest about heavy memory compression - no more "Healthy" when your Mac actually feels slow.
  • Clear stays snappy even if the background helper hangs: the popover always unwinds in about three seconds.
  • Edge glow follows your active screen across display changes - plug, unplug, rotate, Sidecar.
  • New "Reinstall helper" button under Settings → About if the helper ever gets stuck.
  • Several quiet hardening fixes around licensing, helper trust, and Keychain availability after a FileVault reboot.
v1.0.0Apr 27

Initial Release

  • Initial release.