An original Swift menu-bar utility for macOS. Search, favorites, Nordic realms, and experimental icon hiding. Local-first, open source.
翻译准备中
正在加载完整 README。
查看完整 README ↗A little order. A little mischief. An original Swift/AppKit menu-bar utility for macOS, with a searchable shelf, favorites, and Nordic-inspired profiles.
Download & installation · Releases · Compatibility
0.1.0-alpha.6 is an early preview, published as a notarized pre-release. Apple Silicon; macOS 14 or later. Release checks ran on macOS 27.0.1. Alpha 6 hides icons two ways, depending on the macOS version: per icon behind a public divider on macOS 14 to 26, and per app through an undocumented Apple interface on macOS 27. On macOS 27.0.1 the owner confirmed that hiding one app left every other icon visible; the rest of the matrix is pending, see Hide icons. Earlier macOS versions, notched MacBooks, and multiple displays are not yet verified. See the explicit feature gaps below before installing.
Download the Apple Silicon DMG from Releases, open it, and drag Loki.app into Applications. Launch Loki, then click its rune icon in the menu bar. Use the expand button to open the main window.
App shortcuts do not need Accessibility. Menu extras and the hidden-icons checklist do, and on macOS 14 to 26 so does moving icons: in Menu items or Menu bar, choose Allow Accessibility and enable the installed app in System Settings. A previous development build may have a different bundle identifier and permission entry; the public release uses io.github.ChaosDeSelva.Loki.
What happens next depends on the macOS version.
macOS 14 to 26: per icon, public interfaces. Loki Command-drags each chosen icon to the left of its divider, an ordinary status item next to the rune, then checks through Accessibility that each one moved. Your pointer moves briefly and returns afterwards. Loki then widens the divider so the icons left of it go off-screen. Clock and Control Center cannot be moved; macOS pins them. Some apps may refuse the drag, and Loki reports how many icons could not be moved. Unchosen icons left of the divider are moved back to its right. This is implemented, not yet verified on macOS 14 to 26 hardware.
macOS 27: per app, one undocumented interface. Measured on macOS 27.0.1 on one Mac: synthesized Command-drags do move other apps’ icons, and Accessibility reports their positions, but widening a status item pushes icons left only while the item fits. On a 3,360-point display with app menus ending at x=509, that was up to about 1,660 points, and at that width the icon was still on screen. Any wider, macOS drops the widened item and the icons return. A normal app therefore cannot push icons off-screen on macOS 27, so the divider cannot hide anything there. Instead Loki uses Apple’s undocumented MenuBarClientCore allowlist. It is looked up while Loki runs; nothing is linked or bundled, and hiding turns itself off if the interface is missing or has changed. The allowlist works per app: choosing any icon of an app hides all of that app’s icons. Apple’s system controls and Loki itself always stay visible and are not offered. Hiding itself does not need Accessibility. Apps launched while icons are hidden stay visible, because Loki refreshes the allowlist when an app launches or quits instead of revealing everything. On macOS 27.0.1 the owner watched alpha 6 hide one app while every other icon, Loki included, stayed visible. The allowlist also includes every installed app, so apps opened while icons are hidden stay visible, and Loki steps aside while a microphone or camera is in use.
以上为 README 的开头部分。其余内容请阅读原文。 查看完整 README ↗