github / github/copilot-cli

Add way to suppress the bell character for end of interaction when a prompt is scheduled

未關閉
#3,411 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
area:configuration area:terminal-rendering
主要語言
Shell
星號
11.2k
分支
1.9k
平均合併
14 小時 16 分鐘
30 天內合併 PR
6

描述

### Describe the feature or problem you'd like to solve

If an interaction ends with a scheduled prompt, the harness still prints a bell despite not needing user interaction

### Proposed solution

There are a few ways to go about this:
1. Don't print a bell character if there is a prompt scheduled (unconditionally).
2. Add a parameter to `manage_schedule` (and `/every`, `/after`) to suppress bells so long as that prompt is still scheduled. (leave it up to the model to decide if a bell is needed)
3. Allow the `agentStop` custom hook to return a value to suppress the bell. (would allow a custom hook that looks for a sentinel phrase)

My preference is option 2, as it is the most flexible.

### Example prompts or workflows

Example workflow:
A custom agent that queues a release (that takes a long time), waits for it to finish, then runs tests against it.
Currently, the agent would queue the release, then check its status, then queue a follow-up prompt to check the status again. Bell. Then when the scheduled prompt runs, another bell will play when that interaction ends. This will repeat until the release finishes. When the release does finish, the agent continues with the workflow, which may require more user interaction, causing more bells that the user has been now trained to ignore.

Basically, any workflow where the agent is polling via scheduled prompts. Currently, with each poll, the harness plays the bell even if there is no reason to. If you have multiple polling sessions, it can get quite annoying and it makes it impossible to know when you hear a bell if it's just the polling or if the agent needs something from you (or is really done).

### Additional context

_No response_

貢獻指南

開啟貢獻指南

研究方向

Start by tracing how the harness emits the bell at the end of an interaction and how scheduled prompts are handled through manage_schedule, /every, and /after. Review the agentStop custom hook behavior and compare the three proposed suppression approaches. Done means polling prompts no longer produce misleading bells while interactions that need user attention can still signal it.

由索引模型根據 Issue 內容生成。

評估

技術堆疊
shell
領域
cli
Issue 類型
功能
難度
4/5
預估耗時
3-5 天
活躍度
冷清
描述清晰度
基本清楚
新手友好度
45/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。