Skip to content

Feature request: desktop notification when prompt is idle #406

@timvisher-dd

Description

@timvisher-dd

When an agent turn completes and I'm not looking at the buffer, I have no way to know it's waiting for input. Claude Code now sends idle notifications by default, and I'd like agent-shell to do the same.

Proposed behavior

  • After a turn completes, start a configurable idle timer (e.g. 30s).
  • If the user interacts with the buffer before the timer fires, cancel it.
  • Otherwise, send a desktop notification. Also log to the echo area if the shell buffer is not the active buffer.
    • In GUI Emacs, send a native desktop notification.
    • In terminal Emacs, use OSC escape sequences to trigger the terminal's built-in notification feature where supported. Wrap in tmux DCS passthrough when inside tmux.
    • Fall back to an echo area message when no OS-level notification path is available.

Windows and Linux

I don't have regular access to either platform, so when the terminal is unknown the current implementation just falls back to the echo area message (no OS-level notification). Happy to accept input on what the right defaults should be there — e.g. notify-send on Linux, powershell toast notifications on Windows, etc.

Checklist

  • I agree to communicate with the author myself (not AI-generated).
  • I've read the README's Filing issues section.
  • I'm running the latest versions (fill in below).
    • agent-shell: latest main
    • acp.el: latest main
    • ACP package (e.g. claude-code-acp): latest
    • Agent CLI (e.g. claude, gemini): latest
  • For requesting new agent support, I'm including a link to the ACP-capable agent or related ACP package. N/A
  • For issues, I'm including ACP traffic (as per README). N/A

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions