A modern Terminal User Interface for managing Lima VMs, inspired by k9s.
Essentially a TUI created in Go with the tview framework. The idea was to improve the built in limactl list command with features such as:
- Real-time VM overview
- Intuitive controls for navigation
- VM controls, start/stop/restart
- Connecting to VMs
- Go 1.21+ installed
- Lima installed and working
- Access to
limactlcommand
make deps # Install dependencies
make build # Build the binary
make install # Install to /usr/local/bin (optional)# Run the TUI
./lima-tui
# Or if installed globally
lima-tui↑/k- Move selection up↓/j- Move selection down
Enter/Space- Toggle VM (start if stopped, stop if running)s- Start selected VMt- Stop selected VMr- Restart selected VMd- Delete selected VMc- Connect to VM via SSH
n- Create new VM (opens external script)R- Force refresh VM listh/?- Toggle help screenq/Ctrl+C- Quit
lima-tui/
├── main.go # Application entry point
├── app.go # Core application logic
├── ui.go # User interface components
├── actions.go # VM operations and actions
├── vm.go # VM data structures and utilities
├── theme.go # UI theming and styling
├── go.mod # Go module definition
├── go.sum # Dependency versions (auto-generated)
├── Makefile # Build automation
└── README.md # This file
- Ensure
limactl listworks in your terminal - Check that Lima is properly installed
- Verify VM permissions
- Ensure Go 1.21+ is installed:
go version - Run
go mod tidyto fix dependencies - Check network access for Go modules
- Reduce refresh interval in code if needed
- Check system resources with many VMs

