Skip to content

Conversation

@rbren
Copy link
Contributor

@rbren rbren commented Oct 30, 2025

Summary

This PR fixes several UI issues in the conversation list and conversation details sections:

Issues Fixed

  1. Conversation list vertical cutoff - The conversation list was being cut off due to a restrictive max-height of 384px
  2. Status always showing "unknown" - The status field was not properly mapped from the API response's agent_status field
  3. Agent name always showing "Unknown Agent" - The component was looking for agent.name but the API schema uses agent.kind

Changes Made

UI Fixes

  • Increased conversation list max-height from max-h-96 (384px) to max-h-[600px] for better visibility
  • Fixed status field mapping by adding status field to ConversationInfo interface and mapping from agent_status
  • Fixed agent name display by updating getAgentName function to use agent.kind as primary field with agent.name as fallback

API Schema Updates

  • Updated AgentBase interface to use kind: string as primary field (matching API schema) with name?: string as optional fallback
  • Enhanced AgentExecutionStatus enum to include missing status values:
    • WAITING_FOR_CONFIRMATION = 'waiting_for_confirmation'
    • STUCK = 'stuck'
  • Updated status styling with appropriate colors and icons for new status values

Component Updates

  • Updated agent creation in createConversation to use kind: 'Agent' instead of name: 'CodeActAgent'
  • Enhanced status display with proper color coding and icons for all status types
  • Fixed serverStatus.ts to use new AgentBase interface structure

Testing

  • ✅ TypeScript compilation passes without errors
  • ✅ Example app builds successfully
  • ✅ All changes maintain backward compatibility where possible

Files Changed

  • src/types/base.ts - Updated AgentBase interface and AgentExecutionStatus enum
  • src/models/conversation.ts - Added status field mapping
  • example/src/components/ConversationManager.tsx - Fixed UI issues and updated agent handling
  • example/src/utils/serverStatus.ts - Updated to use new AgentBase interface

These changes ensure the conversation list displays properly with correct status information and agent names, improving the overall user experience.

@rbren can click here to continue refining the PR

- Fix conversation list vertical cutoff by increasing max-height from 384px to 600px
- Fix status field mapping from agent_status to status in ConversationInfo interface
- Fix agent name display by using agent.kind instead of agent.name for Agent-Output schema
- Update AgentExecutionStatus enum to match API schema (add waiting_for_confirmation and stuck)
- Update status color classes and icons for new status values
- Update AgentBase interface to use kind as primary field with name as fallback

Co-authored-by: openhands <openhands@all-hands.dev>
- Remove agent name display from conversation list items
- Remove agent name from conversation details section
- Remove unused getAgentName function
- Clean up UI to focus on more relevant information

Co-authored-by: openhands <openhands@all-hands.dev>
- Add text-left class to conversation content container
- Ensures all conversation details (ID, Created date, Status) are left-aligned
- Improves visual consistency and readability

Co-authored-by: openhands <openhands@all-hands.dev>
- Remove duplicate 'Agent Status' field from conversation details
- Consolidate to single 'Status' field that shows agent_status
- Update all status refresh logic to use unified status field
- Remove unused agentStatus from ConversationData interface
- Clean up unused AgentExecutionStatus import
- Eliminates confusing duplicate status information in UI

Co-authored-by: openhands <openhands@all-hands.dev>
@rbren rbren marked this pull request as ready for review October 30, 2025 16:38
@rbren rbren merged commit 6960987 into main Oct 30, 2025
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants