Skip to content

[Design/Feature]: Navigate Task Chat by user messages #94

Description

@OldKrab

Problem

Long Task Chats make it difficult to return to an earlier user message. Scrolling provides no overview of where authored messages are located and no quick way to jump between them.

Codex Desktop demonstrates one possible interaction with a compact position rail and message preview. OpenAIDE should support the same user outcome, but the interaction and presentation must be designed for OpenAIDE rather than copied.

Desired outcome

A user can quickly understand where their messages occur in the current Task Chat and navigate to a chosen message.

Design and implementation scope

  • Design an OpenAIDE-native navigation model for user-authored messages. A compact rail, sequential controls, or another approach may be selected during the design work.
  • Keep the control quiet and consistent with the existing Task Chat, VS Code density, themes, and focus behavior.
  • Do not obscure Chat content, the native scrollbar, or the Composer.
  • Define behavior for keyboard use, narrow/mobile layouts, long messages, the current message position, and Chats whose older history has not yet been loaded.
  • Implement the selected interaction after its behavior and placement are agreed.

Acceptance criteria

  • Users can navigate from the current Chat position to an earlier or later user-authored message without manually scanning the entire Chat.
  • The destination message receives a clear, temporary orientation cue after navigation.
  • Agent messages and tool activity do not become navigation anchors unless the chosen design explicitly calls for them.
  • The interaction works with mouse, touch where presented, and keyboard where presented.
  • The design remains usable in desktop and constrained Task Chat layouts without covering content or introducing horizontal overflow.
  • Relevant interaction and responsive regression coverage is added.

Reference

The attached Codex Desktop screenshot is a behavioral reference only, not a visual specification.

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