MoonshotAI / MoonshotAI/kimi-code

TUI 输入框不随历史滚动常驻,查阅长对话时频繁打断心流

Open
#2,712 1 comment 6 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
TypeScript
Stars
7.5k
Forks
1.2k
Avg merge
11h 53m
Merged PRs (30d)
350

Description

What feature would you like to see?

问题描述

在 Kimi Code TUI 中,当向上滚动查看较早的对话历史、代码输出或 agent 推理过程时,底部的输入框会随滚动离开视野。这导致一个很割裂的工作流:

  1. 向上滚动查看上下文 / 之前的推理 / 代码 diff
  2. 产生一个想法或问题想记下来
  3. 必须一路滚回底部才能找到输入框
  4. 输入完再滚上去找刚才看到的位置
  5. 反复如此,非常容易打断思路

这在长会话中尤其痛苦,尤其是 agent 输出了大量推理或多文件 diff 时。

当前行为

  • 向上滚动时,底部输入区不固定,随内容一起滚走
  • 没有快捷方式在保持滚动位置的同时输入
  • 查阅和记录被迫变成两个独立的、来回切换的动作

期望行为

  • 输入框应始终锚定在视图底部(或提供常驻输入条),即使上方内容在滚动

  • 参考实现:

    • OpenCode 的分屏布局(上方历史 + 下方固定输入)
    • Claude Code 的 TUI 行为
    • 常见 Web 聊天界面(Slack、Discord 等)
  • 可选:提供一个快捷键快速聚焦输入框而不丢失滚动位置(例如 i/

环境

  • OS:Windows 11(macOS/Linux 应该同样受影响)
  • Kimi Code 版本:0.27.0+(多个版本均观察到)
  • 终端:Windows Terminal / VS Code 集成终端

建议的解决方案(按优先级)

  1. 固定输入栏:始终保留底部 1-2 行给输入提示,即使上方内容滚动。
  2. 浮动输入切换:快捷键(如 Ctrl+I)弹出覆盖层输入框,不改变当前滚动位置。
  3. 侧边速记模式:提供一个专门的侧边区域记录临时想法,之后可一键送入主对话。

补充说明

这是我在长时间编码会话中遇到的 #1 UX 痛点。每次"滚下去→输入→滚上去→找刚才的位置"的心智开销,显著降低了深度工作的连贯性。

Additional information

No response

Contributor guide

Open the contributing guide

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

No source files, tests, or entry points are named. Start by locating the TUI layout and the components handling conversation scrolling and input focus; done means the input remains available at the bottom while older content stays at its current scroll position, with any chosen focus shortcut preserving that position.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
cli, design
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.