WinShell is a terminal-based TUI for macOS that presents common system and networking commands in a Windows-like style. It is intended for NWES and general school lab work where students already know ipconfig, tracert, or systeminfo, but are working on macOS.
The app does not try to clone PowerShell. It provides a simplified Windows-flavored interface, translates supported commands to macOS tooling, and formats the output so it is easier to read in class.
- Textual TUI with header, scrollable output history, command line, and footer shortcuts
- Windows-style command parser with aliases and friendly error messages
- macOS adapters for common networking and system inspection commands
- Public-IP geolocation with map-ready coordinates and links
- LAN neighbor discovery with IP, MAC, interface, and reverse-DNS context
- Local/target device inspection with architecture and adapter summaries
- CMD mode and PowerShell mode prompt switch
- Command history with arrow keys
- Tab completion for supported commands
- Transcript export to a text file
ipconfigipconfig /allping <host>tracert <host>netstatarp -anslookup <host>hostnamewhoamisysteminfogeoip <ip-or-host>neighborsdeviceinfo [ip-or-host]clshelpexit
WinShell-specific additions:
mode cmdmode powershellexport winshell-output.txt
cd /Users/gabriel/.openclaw/workspace/winshell
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txtOr install as a package:
pip install -e .python3 -m winshellOr, after editable installation:
winshellipconfig
ipconfig /all
ping example.com
tracert example.com
nslookup openai.com
geoip 8.8.8.8
neighbors
deviceinfo localhost
arp -a
netstat
systeminfo
mode cmd
export lesson-output.txt
ipconfigandipconfig /allare formatted from macOS networking tools such asifconfig,route,networksetup, andscutil.geoipuses a public geolocation API at runtime for public IP addresses and prints coordinates plus Apple Maps / Google Maps / OpenStreetMap links.neighborsuses the local ARP cache, so it is most useful after the Mac has recently talked to devices on the LAN.deviceinfoshows local architecture and adapter data directly; remote device architecture is intentionally reported as unknown unless there is a reliable local source.- If a command syntax is recognized but not implemented, WinShell shows:
Command not supported yet in WinShell. - If a command is unknown, WinShell shows a Windows-like error:
'<command>' is not recognized as an internal or supported WinShell command.
See docs/mockup.md for a text mock of the interface.