Skip to content

Allow minimizing CLI upgrade modals so upgrades run in background #257

@kessenma

Description

@kessenma

Problem

CLI upgrades (Codex, Claude, GH, OpenCode) currently show a blocking modal that prevents using the app while the upgrade runs. Both CliReinstallModal (progress bar dialog) and CliLoginModal (full-screen terminal) block the entire screen.

Since upgrades are non-interactive once started, users should be able to minimize the modal and continue working.

Proposed Solution

  • Add a minimize button (Minus icon) to both upgrade modal types
  • When minimized, show an inline progress indicator in the titlebar (top-right, next to the existing app update indicator)
  • The indicator shows: spinner + CLI name + progress percent (for reinstall) or Updating... (for terminal-based upgrades)
  • Auto-dismiss on completion with a success/error toast notification
  • Backend processes (Tauri commands, PTYs) continue running regardless of modal state

Files Affected

  • src/store/ui-store.ts - New minimizedCliUpdate state
  • src/components/titlebar/MinimizedCliUpdate.tsx - New titlebar indicator component
  • src/components/preferences/CliReinstallModal.tsx - Add minimize button
  • src/components/layout/CliUpdateModal.tsx - Wire minimize handler
  • src/components/preferences/CliLoginModal.tsx - Add minimize with PTY-safe cleanup
  • src/components/titlebar/TitleBar.tsx - Render indicator
  • docs/developer/auto-updates.md - Document the feature
  • docs/developer/notifications.md - Document titlebar indicator pattern

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions