← Back to PRs

#7794: fix(tui): refresh session info periodically to reflect config changes

by GuoxiangZu open 2026-02-03 06:31 View on GitHub →
stale
When users change the model via `openclaw configure`, the TUI status bar now updates within 30 seconds instead of requiring a message to be sent. This adds a periodic refresh of session info every 30 seconds while connected and idle, so config changes (like model updates) are reflected in the TUI footer without manual intervention. <!-- greptile_comment --> <h2>Greptile Overview</h2> <h3>Greptile Summary</h3> This PR adds a periodic refresh of session info in the TUI while connected and idle, so footer/model-related status reflects config changes without requiring a new message. It also introduces a lightweight “search/filter” prompt when model selection lists are large, and extends the wizard prompter types with an optional `searchSelect` API for future use. Overall, the changes fit cleanly into existing TUI lifecycle hooks (`onConnected`/`onDisconnected`) and the model-picker’s existing filtering pipeline (allowlist, provider filtering, hidden router models). <h3>Confidence Score: 4/5</h3> - This PR is generally safe to merge; the main risks are minor lifecycle/cleanup edge cases and some duplicated filtering logic. - The functional change (30s interval refresh gated on connected+idle) is straightforward and localized. Review found no obvious correctness regressions in normal operation, but there is a small shutdown/cleanup edge case for the interval and some maintainability risk from duplicating filter-restoration logic in the model picker. - src/tui/tui.ts (interval cleanup paths), src/commands/model-picker.ts (search fallback/filter restoration logic) <!-- greptile_other_comments_section --> <sub>(3/5) Reply to the agent's comments like "Can you suggest a fix for this @greptileai?" or ask follow-up questions!</sub> **Context used:** - Context from `dashboard` - CLAUDE.md ([source](https://app.greptile.com/review/custom-context?memory=fd949e91-5c3a-4ab5-90a1-cbe184fd6ce8)) - Context from `dashboard` - AGENTS.md ([source](https://app.greptile.com/review/custom-context?memory=0d0c8278-ef8e-4d6c-ab21-f5527e322f13)) <!-- /greptile_comment -->

Most Similar PRs