Notify when pi agents finish#186
Open
aserper wants to merge 2 commits into
Open
Conversation
Add an internal notification command that can keep a desktop notification alive until the user clicks or dismisses it. On click, it reuses the last-done navigation path to focus the most recently completed agent. Update the pi status extension to include the final assistant text in the notification body and spawn the notification command detached so the D-Bus connection is not torn down with the pi extension command lifecycle.
Ensure the Pi status update finishes before spawning the detached desktop notification. This keeps sidebar state persistence reliable while still allowing the long-lived notification process to outlive Pi's hook handler.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
workmux notifycommand for desktop notificationslast-donelogicNotes
notify-rustaction notifications needHint::Resident(true)plusTimeout::Neverwith mako; otherwise action-bearing notifications can disappear before they are visible/clickable.The click action intentionally reuses
last-done, so it focuses the most recently completed/waiting agent rather than carrying an exact originating pane ID in the notification payload.This branch is currently based on
main; after #184 lands, it should be rebased so the notification extension layers on top of the scoped--scope-idPi status extension.Tests
cargo build --quietcargo test --bin workmux --quiet