forked from cleveragents/cleveragents-core
2863b5d1e1
Implements the first-run experience for the TUI as specified in the specification's 'First-Run Experience' section (§ TUI Architecture). On first launch (no personas configured), a centered ActorSelectionOverlay widget is displayed guiding the user to select an actor. The overlay supports keyboard navigation (j/k), fuzzy search (/), and confirmation (enter). Selecting an actor creates a default persona and dismisses the overlay. Changes: - Add src/cleveragents/tui/first_run.py: is_first_run() detection helper and create_default_persona_for_actor() setup helper - Add src/cleveragents/tui/widgets/actor_selection_overlay.py: ActorSelectionOverlay widget with show/hide/navigate/search/confirm API and render_actor_selection() pure rendering function - Update src/cleveragents/tui/app.py: integrate first-run check in on_mount(), yield ActorSelectionOverlay in compose(), add _complete_first_run() method - Update src/cleveragents/tui/widgets/__init__.py: export ActorSelectionOverlay - Add features/tui_first_run.feature + features/steps/tui_first_run_steps.py: comprehensive Behave BDD tests covering all public API paths ISSUES CLOSED: #1007