# HTML Logger for Langroid Task System

## Summary
Added a new HTML logger that creates self-contained HTML files with collapsible log entries, providing an interactive way to navigate complex multi-agent conversations. The logger includes automatic refresh capabilities and persistent UI state management.

## Key Features
- **Self-contained HTML output**: Complete HTML files with embedded CSS and JavaScript
- **Collapsible entries**: Interactive expand/collapse for better navigation
- **Visual hierarchy**: Color-coded entities (USER, LLM, AGENT, SYSTEM)
- **Auto-refresh**: Pages refresh every 2 seconds to show new log entries
- **State persistence**: UI states preserved across refreshes using localStorage
- **Smart headers**: Two-line headers showing entity info and content preview
- **Tool display**: Collapsible tool sections with parameters and results

## Visual Design
- Dark theme with monospace font for consistency with terminal output
- Golden/amber header (#d4a017) with timestamp and log filename
- Color scheme:
  - USER: Blue (#00bfff)
  - LLM: Green (#00ff00)
  - AGENT: Orange (#ff9500)
  - SYSTEM: Gray (#888)
- Opacity-based importance indicators (1.0 for important, 0.4 for faded)

## Technical Implementation
- New `HTMLLogger` class in `langroid/utils/html_logger.py`
- Integration with existing task logging system via `init_loggers()`
- Configuration via `TaskConfig(enable_html_logging=True)`
- Automatic clickable file:// link generation at task start
- Proper HTML escaping for security
- Efficient streaming writes with flush() for immediate updates

## Testing
- Comprehensive test suite in `tests/main/test_html_logger.py`
- Tests for HTML generation, escaping, and task integration
- All existing tests pass with modifications