Skip to content

Releases: 777genius/agent-notifications

v1.41.0

Choose a tag to compare

@github-actions github-actions released this 30 Aug 23:02

New Features

Optional session label in notification titles (#134)

New desktop.showSessionLabel setting (default true, so nothing changes for existing installs). Set it to false to drop the [name id] session label from titles and give the branch/folder subtitle the space.

Alacritty click-to-focus on Linux (#121)

Alacritty deliberately sets no TERM_PROGRAM, so clicking a notification used to do nothing. Detection now keys off ALACRITTY_WINDOW_ID and the click raises the right window.

Bug Fixes

Windows: no more console flash, right window across projects (#118, #120)

Toast clicks are now handled by a GUI-subsystem sibling binary (claude-notifications-windows-amd64-focus.exe), so no console window flashes on click. When one process owns several windows (like Windows Terminal's monarch), the window whose title matches the project folder is preferred.

Ghostty: no more jumping to an arbitrary tab (#115, #117)

The cwd fallback selects a tab only when exactly one matches; ambiguous cases fall back to window-level focus instead of switching to a random same-directory tab.

Bootstrap: no more reinstall loop on "unknown" plugin versions (#132, #133)

When Claude Code records the installed version as unknown or empty, bootstrap now verifies the manifest at the recorded install path instead of endlessly reinstalling. Real version mismatches still fail closed.


馃摝 Installation 路 馃攧 Updating

Full Changelog: v1.40.1...v1.41.0

v1.40.1

Choose a tag to compare

@github-actions github-actions released this 16 Jul 23:47

Bug Fixes

Plugin paths resolve without CLAUDE_PLUGIN_ROOT (#107, #109)

Configuration defaults now use the detected plugin root when the environment variable is missing. Partial status overrides keep omitted defaults, explicit empty sounds remain disabled, and literal dollar signs in paths are preserved.

macOS 12 compatibility

All Darwin binaries now target and verify macOS 12.0 instead of inheriting the GitHub runner version.

Windows terminal reliability

Terminal bell ancestor discovery now stops cleanly on cyclic process snapshots, and installer errors consistently direct Windows users to Git Bash.

CI/CD

Release metadata is validated before builds, every platform artifact is smoke-tested before publication, Swift notifier tests run in CI, and GitHub Actions plus Go coverage were updated to current versions.

Documentation and maintenance

Audio backend documentation now matches the implementation, and the bug-report template no longer uses GitHub's reserved None dropdown entry (#110).


馃摝 Installation 路 馃攧 Updating

Full Changelog: v1.40.0...v1.40.1

v1.40.0

Choose a tag to compare

@github-actions github-actions released this 22 Jun 20:23

Highlights

Windows click-to-focus and terminal bell (#36, #94)

Windows notifications can now bring the originating terminal session back into focus, and terminal bell delivery can ring the originating Windows Terminal tab when supported.

Focus-aware and delayed desktop notifications (#93)

Added notifyOnlyWhenUnfocused and notifyDelaySeconds so desktop notifications can wait, re-check focus, and skip notifications only when the current Claude Code session is already focused. Webhook delivery is unaffected.

Bug Fixes

Windows bootstrap no longer silently installs Linux binaries from WSL (#98)

The bootstrap and binary installer now detect WSL, stop before touching plugin or download state, and tell Windows users to rerun from Git Bash. Intentional WSL installs can opt in with CLAUDE_NOTIFICATIONS_ALLOW_WSL=1.

Hook event detection is safer (#97)

Subagent stops are now detected from the Claude hook event type instead of inferring from transcript_path, avoiding unsafe misclassification in edge cases.


馃摝 Installation 路 馃攧 Updating

Full Changelog: v1.39.4...v1.40.0

v1.39.4

Choose a tag to compare

@github-actions github-actions released this 13 Jun 14:09

Bug Fixes

Windows toast and sound reliability (#90, #91)

Windows notifications now keep playing the configured sound even when the toast backend returns a doc.LoadXml(tmpl) false-positive. The Windows beeep path also pins the OS thread around the WinRT/COM call and downgrades successful PowerShell fallback errors to warnings instead of failed desktop notifications.

Konsole click-to-focus on KDE (#92)

Konsole detection now uses KONSOLE_VERSION and KONSOLE_DBUS_SESSION, so Linux focus helpers search for the correct konsole window class on KDE and Wayland.

Verification

  • Ubuntu CI, macOS CI, and Windows CI passed on the release commit.
  • Release workflow built Go binaries for macOS, Linux, and Windows.
  • ClaudeNotifier.app.zip was built and uploaded with the release assets.
  • Release binary smoke tests passed on Ubuntu, macOS, and Windows runners.

Contributors

Thanks @professor-k and @Loveshy1 for the focused fixes in this release.


馃摝 Installation 路 馃攧 Updating

Full Changelog: v1.39.3...v1.39.4

v1.39.3

Choose a tag to compare

@github-actions github-actions released this 28 May 14:55

Bug Fixes

Linux GNOME/Wayland click-to-focus reliability (#89)

GNOME focus now uses reverse-domain WM class/app IDs for Wayland-native terminals such as Ghostty and WezTerm, fixing notification clicks that could fail to raise the terminal window.

WezTerm exact pane focus on Linux (#89)

Notification clicks now carry WezTerm pane/socket hints from the hook process, raise the matching WezTerm window, then switch to the exact pane. Inherited WEZTERM_* variables are ignored for non-WezTerm focus targets to avoid focusing the wrong app.


馃摝 Installation 路 馃攧 Updating

Full Changelog: v1.39.2...v1.39.3

v1.39.2

Choose a tag to compare

@github-actions github-actions released this 27 May 14:29

Fixed

  • Windows Stop hooks no longer corrupt non-ASCII JSON payloads. Windows hook generation now uses direct exec-form .exe hooks with args instead of PowerShell or Git Bash shell pipelines, fixing #87.
  • Bundled plugin hooks now use argument-vector execution by default, and installer validation rejects Windows hook configs that still route through shell commands, wrappers, .bat or .cmd shims, or $input pipes.
  • Tmux terminal bell fallback now uses the pane tty when /dev/tty is unavailable (#86).

Verification

  • Ubuntu CI, macOS CI, and Windows CI passed on 099aeee.
  • Release workflow built all binaries, published checksums.txt, and smoke-tested Linux, macOS, and Windows release binaries.

Full Changelog: v1.39.1...v1.39.2

v1.39.1

Choose a tag to compare

@github-actions github-actions released this 10 May 15:05

Bug Fixes

macOS notifications no longer steal focus (#82)

ClaudeNotifier.app now launches through open -g, so showing a notification does not briefly bring the notifier app to the foreground before any click handling.

Plugin setup commands stay out of model context (#83)

Setup and configuration slash commands are still manually available from the slash menu, but opt out of model invocation metadata to reduce prompt context overhead after setup.

馃摝 Installation 路 馃攧 Updating

Full Changelog: v1.39.0...v1.39.1

v1.39.0

Choose a tag to compare

@github-actions github-actions released this 06 May 11:20

New Features

Discord native embeds

Discord webhook notifications now render structured native embeds with author, fields, and footer data.

Windows PowerShell hook generation (#78)

Added claude-notifications windows-hooks so Windows installs can generate Claude hook config that calls the native .exe through PowerShell.

Ghostty click-to-focus targeting (#78)

Improved macOS Ghostty click-to-focus so notifications can target and remember a specific terminal instance more accurately.

Bug Fixes

Windows hooks no longer depend on Git Bash (#79, #80)

The installer now rewrites PreToolUse, Notification, Stop, SubagentStop, and TeammateIdle hooks to call the Windows .exe directly through PowerShell with an absolute path. This avoids silent hook-wrapper.sh launch failures on Windows 10/11 and preserves lazy update behavior for direct .exe hooks.

Discord embed robustness

Discord webhook rendering now skips empty embed fields and clamps overlong author names before sending payloads.

Maintenance

Status config cleanup

Removed the legacy Ghostty keywords field from generated status configuration and aligned architecture documentation.

Contributors

Thanks to @taige for the Discord embed and status config contributions.

馃摝 Installation 路 馃攧 Updating

Full Changelog: v1.38.0...v1.39.0

v1.38.0

Choose a tag to compare

@github-actions github-actions released this 21 Apr 11:32

Full Changelog: v1.37.0...v1.38.0

v1.37.0

Choose a tag to compare

@github-actions github-actions released this 15 Apr 06:50

Added

Webhook payload templates

Custom webhook bodies can now reference richer runtime fields such as session metadata, git context, cwd-derived values, and rendered notification content. This makes Slack, Lark, and custom webhook integrations much easier to shape without patching the plugin.

Fixed

Installer download verification

Release asset validation is stricter and safer before replacing installed binaries, which reduces the risk of corrupted or suspicious downloads being applied during updates.

Ghostty exact tab focus (#72)

Click-to-focus now tries Ghostty's native AppleScript terminal focus first, so notification clicks can switch to the correct tab instead of only raising the window. If Automation is unavailable or the exact terminal cannot be resolved, it safely falls back to the previous AXDocument window-level path.


馃攧 Updating

Full Changelog: v1.36.7...v1.37.0