anthropics / anthropics/claude-code

[FEATURE] Debounce consecutive short messages into one turn (chat-style input in claude.ai/code and mobile)

Đang mở
#92,676 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
area:claude-code-web area:ui enhancement platform:web
Ngôn ngữ chính
Python
Star
145k
Fork
23.1k
Chỉ số merge pull request
Chỉ số pull request đang chờ

Mô tả

### Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)

### Problem Statement
People who chat from a phone write the way they do on WhatsApp: one thought split across several short bubbles sent a few seconds apart. Claude Code treats every bubble as a complete turn and starts a full reply to each one. A fragment like "stay here and" gets answered on its own, the next fragment "tell me as it goes" gets a second, unrelated answer, and the conversation derails. It also burns a full model run on every fragment, so it is both worse and more expensive than waiting.

Related but distinct from #92482 (quote-reply): that one is about pointing at an earlier message; this one is about how consecutive new messages are grouped.

### Proposed Solution
A short input debounce in claude.ai/code and the mobile app (and optionally in Remote Control sessions generally):
- when a new message arrives within a small window after the previous one (for example 2 to 3 seconds, configurable), hold the turn and merge the messages into one user turn, in order;
- if the composer shows the user is still typing, keep holding until they stop or until a hard cap (for example 10 seconds) is reached;
- render the merged bubbles as they were sent, but pass them to the model as one turn;
- a per-session setting to turn it off for users who want strict one-message-one-reply behavior.
The existing behavior in Remote Control (prompts sent mid-turn are queued and delivered together) already does something close to this when a reply is in flight; the request is to apply the same grouping before a reply starts.

### Alternative Solutions
- Writing the whole thought in one bubble (works, but it is not how people type on a phone).
- Teaching the model to treat a short follow-up as a continuation of the previous message (helps, but it cannot recover once a separate reply has already been generated).
- Every mainstream chat client (WhatsApp, Telegram, Slack) lets the recipient answer a burst of messages as one unit; here the recipient is forced to answer each bubble.

### Priority
Medium - Would be very helpful

### Feature Category
Other (claude.ai/code web client and mobile app; Remote Control)

### Use Case Example
1. Long session on the desktop app, continued from the phone through Remote Control.
2. I type "ok, I think I get it, let's see how it goes" and send, then two seconds later "stay here and tell me as we go".
3. Today: the first bubble gets a closing reply, the second gets "what do you want me to tell you?", because it was read as a new request.
4. With a debounce: both bubbles reach the model as one turn and get one answer that reads them together.

### Additional Context
Claude Code 2.1.241, desktop app (Code tab) plus Remote Control from the mobile app. Observed repeatedly in a conversational (non-coding) session, where fragmented input is the norm.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Start by tracing message delivery in claude.ai/code, the mobile app, and Remote Control, focusing on pre-reply grouping and the existing mid-turn queueing behavior. Confirm how debounce timing, typing detection, a hard cap, merged model turns, preserved bubble rendering, and a per-session opt-out would fit; done means consecutive messages receive one reply without changing their displayed bubbles.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Lĩnh vực
backend, frontend, mobile
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.