OpenHands / OpenHands/OpenHands

Desktop notifications when the agent finishes or needs input

Open
#17,532 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

priority:normal
Dominant language
TypeScript
Stars
88.5k
Forks
11.6k
Avg merge
2d 22h
Merged PRs (30d)
189

Description

Problem

When a conversation reaches a state that needs the user -- finished, or awaiting
input -- while the browser tab is in the background, the only signal is a sound.
useAgentNotification plays that sound but never uses the Notification API, so
nothing surfaces above other windows. A user working in another app misses the
handoff and the agent sits idle.

Proposal

An opt-in desktop notification alongside the existing sound, on the same
attention-worthy agent states:

  • Off by default. Permission is requested only when the user enables the
    setting, never on page load.
  • The toggle stays off and disabled when the browser has denied permission,
    with a message explaining it is unavailable.
  • The existing sound behaviour is unchanged; this is additive, not a
    replacement.
Context

This was originally proposed and implemented in
OpenHands/agent-canvas#1661, which @neubig closed asking for it to be
reopened in this repository.

Opening here so the work has an issue in this repo to link against.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating and reading the useAgentNotification hook, then trace the existing sound-triggering states and the settings UI. Implement the opt-in Notification API behavior described in the issue while preserving sound behavior, and verify that permission denial disables the toggle and that notifications appear for finished or input-needed states when the tab is in the background.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.