Skip to content

Releases: immurok/app-macos

Release v1.6.0

Choose a tag to compare

@superdog9527 superdog9527 released this 04 Aug 16:37

Major update

Two-host support — pair one device with a second Mac and switch between them with a fingerprint. Requires firmware 1.7.0.

Added

  • Two-host Hosts view — a two-card layout showing both hosts, with a step-by-step second-host pairing guide (fingerprint + device button).
  • Cross-slot unpair from the Hosts card; the unpair button reveals on hover.

Fixed

  • Passwords app auto-fill now works even when focus isn't already in the password field — falls back to a downward AX scan of the front-most Passwords window (whitelist + code-signature checked, single-field hardened).
  • SSH / sudo signing and Secure Pairing no longer drop the BLE connection on macOS 27, paired with firmware 1.7.0's supervision-timeout handling.
  • Dual-host UI fixes — unpair prompts, and fingerprint/host list refresh on connect/disconnect.
  • Full es/fr/ja/pt/ru localization for the new two-host strings.

Other

  • build-deploy.sh falls back to the Xcode toolchain when xcode-select points at the Command Line Tools.

Requires firmware ≥ 1.7.0 for two-host support.

Full Changelog: v1.5.0...v1.6.0

Release v1.5.0

Choose a tag to compare

@superdog9527 superdog9527 released this 03 Aug 05:55
  • Ctrl+C now cancels a fingerprint wait in the terminal.

  • Agent authorization now makes a sound.

  • Localization is complete. Japanese, French, Spanish, Portuguese and Russian
    were each missing about half their translations, and the untranslated parts
    showed raw identifiers such as "about.logs.clear" instead of real text.

  • The imk CLI now carries the same version number as the app

Full Changelog: v1.4.7...v1.5.0

Release v1.4.7

Choose a tag to compare

@superdog9527 superdog9527 released this 30 Jul 09:50

Fix compatibility with macOS 27 beta (please also upgrade firmware to 1.6.3+)

Full Changelog: v1.4.6...v1.4.7

Release v1.4.6

Choose a tag to compare

@superdog9527 superdog9527 released this 29 Jul 09:39
  • Support 1Passord unlock
  • Support Bitwarden unlock (Chrome / Brave / Edge / Arc / Vivaldi only, Safari and Firefox not yet)

Full Changelog: v1.4.5...v1.4.6

v1.4.5

Choose a tag to compare

@superdog9527 superdog9527 released this 27 Jul 14:40

Full Changelog: v1.4.3...v1.4.5

Many UX upgrades

Full Changelog: v1.4.3...v1.4.5

Release v1.4.3

Choose a tag to compare

@superdog9527 superdog9527 released this 27 Jul 14:12
  • A new update window for both app and firmware update
  • A new user onboarding page
  • Better sudo authentication experience
image

Full Changelog: v1.4.0...v1.4.3

v1.4.0

Choose a tag to compare

@superdog9527 superdog9527 released this 08 Jul 09:58

Full Changelog: v1.3.0...v1.4.0

Full Changelog: v1.3.0...v1.4.0

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 03 Jul 04:36

Full Changelog: v1.20.0...v1.3.0

v1.20.0

Choose a tag to compare

@github-actions github-actions released this 10 Jun 12:46

v1.20.0

Hardened over-the-air (OTA) firmware updates

OTA firmware updates are now protected with asymmetric ECDSA P-256 signatures instead of a shared symmetric key. The private signing key never ships on devices or inside firmware images — only the public key is embedded — so an extracted or leaked firmware image can no longer be used to forge updates for other devices.

  • Companion app: the PAM socket relay now accepts the new 128-byte v2 (ECDSA) OTA header, alongside the legacy 96-byte format used to bring existing devices onto the new scheme.
  • Verified against flash, not the decrypted stream: firmware integrity is now checked by reading the image back from flash after it is written, so a silent flash-write failure can no longer be accepted as a valid update (brick prevention).
  • Anti-downgrade: devices on the new firmware reject legacy symmetric-key update packages.
  • Anti-rollback: a monotonic security-version floor blocks installing older firmware with known issues.
  • Reliability fixes across the on-device verify/install path (watchdog handling during signature verification, correct key/signature byte order, and a deferred post-verify flash commit).

Full Changelog: v1.20.0-beta.1...v1.20.0

v1.20.0-beta.1 — first public beta

Pre-release

Choose a tag to compare

@github-actions github-actions released this 03 Jun 07:01

immurok for macOS — first public beta 🎉

One touch. No more passwords.

immurok is a compact wireless Bluetooth fingerprint authenticator for desktop Macs (and Linux). It replaces passwords with your fingerprint for everyday actions — screen unlock, sudo, SSH/Git signing, and authorizing the commands your AI coding agent runs — with a single touch. Built for Mac mini / Studio / Pro and closed-lid MacBook setups that have no Touch ID.

⚠️ Beta. This is the first public release. It works end-to-end, but expect rough edges. Please file issues for anything you hit.

What you get

This installer is signed with a Developer ID certificate and notarized by Apple — it installs without Gatekeeper warnings.

Path Component
/Applications/immurok.app Menu-bar companion app (BLE, screen unlock, settings)
/usr/local/bin/imk CLI — wrap agent commands behind a fingerprint gate
/usr/local/lib/pam/pam_immurok.so PAM module for sudo / system authorization

The installer also wires pam_immurok into /etc/pam.d/sudo_local and /etc/pam.d/authorization.

Features

  • Screen unlock — touch the sensor while locked; no lid, no typing.
  • sudo & system authorization — approve terminal sudo and System Settings prompts by fingerprint, via a real PAM module (not password autofill).
  • SSH & Git commit signing — an on-device ECDSA P-256 key (private key never leaves the hardware) signs your SSH logins and Git commits.
  • Agent authorization gateimk run --agent -- <cmd> surfaces an on-screen prompt so a single fingerprint touch authorizes commands your AI coding agent (Claude Code, Cursor, Codex, …) runs on your behalf — sudo, git push, secret reads.

Requirements

  • macOS 13 (Ventura) or later — universal binary (Apple Silicon + Intel)
  • An immurok fingerprint device, paired over Bluetooth

Install

  1. Download immurok-1.20.0-beta.1.pkg below and run it.
  2. Open /Applications/immurok.app and grant the Accessibility permission when prompted.
  3. From the menu-bar icon → Open Settings, set your Mac login password (used to perform screen unlock).
  4. Pair your device, enroll a fingerprint, then lock the screen and touch the sensor to test.

Uninstall

Use the in-app Uninstall action (menu bar → Settings → Uninstall). It runs a signed uninstaller that removes the PAM module and unwires it from /etc/pam.d/sudo_local and /etc/pam.d/authorization, along with the app, the imk CLI, and your local data.

⚠️ Do not just rm the app. That leaves the pam_immurok lines in /etc/pam.d/* pointing at a module that no longer exists, which can break sudo and system authentication.

To uninstall manually, remove the PAM lines first, then the files:

# 1. unwire the PAM module (do this BEFORE deleting the .so)
sudo sed -i '' '/pam_immurok/d' /etc/pam.d/sudo_local /etc/pam.d/authorization
# 2. remove the module, CLI, and app
sudo rm -f /usr/local/lib/pam/pam_immurok.so /usr/local/bin/imk
sudo rm -rf /Applications/immurok.app
# 3. drop the installer receipt and your local data
sudo pkgutil --forget com.immurok.pkg
rm -rf ~/.immurok

Full Changelog: https://github.com/immurok/app-macos/commits/v1.20.0-beta.1