A simple Windows window organizer for a cleaner taskbar and calmer workspace.
One installer. No Python, pip, or Git required.
ShelfyGAI helps you hide selected application windows, pin important windows above others, and restore everything safely when you need it again. It is designed as a productivity utility, not a background monitoring tool.
ShelfyGAI is local-first:
- no telemetry
- no ads
- no account system
- no cloud sync
- no background service installed without user action
- settings and logs stay under
%APPDATA%\ShelfyGAI
For normal users, use the offline Windows installer:
Download ShelfyGAI-Setup-v0.1.0.exe
After installation, ShelfyGAI appears in the Start Menu and creates a desktop shortcut by default.
- Hide selected windows.
- Hide windows from the Windows taskbar.
- Hide windows from Alt+Tab when supported by the target window.
- Restore one window, the latest hidden window, or everything safely.
- Pin windows above other windows.
- Create groups for organized window workflows.
- Use one compact overlay hub near the taskbar tray area for hidden-window groups.
- Expand groups inside the hub and open, restore, or bring hidden windows forward.
- Optionally replace the hub with smaller per-group overlay markers.
- Control notification behavior, including a silent mode for non-critical messages.
- Switch the app interface between English and Russian.
- Keep settings, logs, and recovery state locally.
Screenshots are intentionally not embedded until real release images are ready. This avoids a wall of broken placeholders and keeps the project page clean.
Planned screenshot slots are documented in docs/assets/screenshots/README.md.
- Download
ShelfyGAI-Setup-v0.1.0.exefrom the release page. - Run the installer.
- Choose Install for me only unless you need a machine-wide install.
- Open ShelfyGAI from the Start Menu or desktop shortcut.
The installer:
- does not require Python
- does not require Git
- creates a Start Menu shortcut
- creates a desktop shortcut by default
- installs a normal Windows uninstaller
- does not enable startup by default
- preserves user settings in
%APPDATA%\ShelfyGAI
Requirements:
- Windows 10 or Windows 11
- Python 3.11 or newer
py -3.11 -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -e .
python -m shelfygaiDevelopment checks:
python -m pip install -e ".[dev]"
python -m ruff check .
python -m pytestBuild the standalone application folder:
python -m pip install -e ".[build]"
.\scripts\build_exe.ps1 -CleanExpected output:
dist\ShelfyGAI\ShelfyGAI.exe
Build the user installer:
.\scripts\build_installer.ps1 -SkipExeBuildExpected output:
dist\installer\ShelfyGAI-Setup-v0.1.0.exe
More build notes:
ShelfyGAI enumerates normal top-level Windows application windows and lets the user choose what to do with a selected window.
When a window is hidden, ShelfyGAI stores the original extended window style
before changing anything. Hide options are applied with reversible Windows style
updates and SetWindowPos(..., SWP_FRAMECHANGED). On restore, ShelfyGAI writes
the exact original style back.
The two reliable cases are documented clearly:
- hiding from both taskbar and Alt+Tab removes
WS_EX_APPWINDOWand addsWS_EX_TOOLWINDOW - hiding from taskbar only avoids
WS_EX_TOOLWINDOW, so the window should stay visible in Alt+Tab, but some apps may remain on the taskbar
Alt+Tab-only hiding is best effort because Windows does not expose a fully reliable style for every app that removes only Alt+Tab while preserving taskbar behavior. Tray icon hiding is stored as a preference only; ShelfyGAI does not use unsafe shell injection, Explorer restarts, or registry hacks to remove third-party notification area icons.
Pinning uses SetWindowPos(hwnd, HWND_TOPMOST, ...). Unpinning uses
HWND_NOTOPMOST, and ShelfyGAI unpins currently pinned windows on exit by
default.
Overlay groups use normal ShelfyGAI-owned helper windows. By default ShelfyGAI shows one compact hub button near the taskbar tray area. Clicking it opens a small flyout where groups can be expanded and hidden windows can be opened, restored, or brought forward. Individual per-group markers can be enabled when preferred. These helpers provide a safe group representation without modifying Explorer or the Windows shell.
ShelfyGAI is designed to keep windows recoverable:
- it does not close target apps when hiding windows
- it avoids managing its own windows
- it avoids Windows taskbar shell windows and Start Menu surfaces
- it stores recovery state while windows are hidden
- it can restore hidden windows on normal exit
- it ignores stale window handles after restart
If something looks wrong, open ShelfyGAI and use Restore all.
ShelfyGAI notifications are configurable from Settings > Notifications. Users can disable all non-critical notifications, tray balloons, overlay messages, restore messages, and pin/unpin messages. Silent mode suppresses non-critical tray balloons, popup toasts, overlay status messages, and temporary status banners.
Critical safety messages can still appear, including crash recovery, failed restore, and fatal Windows API errors.
- Tray icon hiding is limited and may not work for third-party apps. In the alpha, ShelfyGAI does not perform unsafe tray icon removal.
- Taskbar-only and Alt+Tab-only hiding are constrained by Windows shell behavior. If a combination cannot be guaranteed, ShelfyGAI warns before applying it.
- Some apps recreate windows and may reappear in the taskbar or Alt+Tab.
- Admin or elevated windows may require running ShelfyGAI as administrator.
- Native Windows taskbar folders are not implemented because they require unsafe shell-level modifications.
- ShelfyGAI overlay hub and markers are safe app-owned helper windows, not native Windows taskbar folders.
- Some custom window frameworks may not respond to standard Windows style changes.
- Window handles are valid only for the current Windows session.
- Alpha builds may be unsigned, so Windows SmartScreen may show a warning.
ShelfyGAI stores data locally:
- settings:
%APPDATA%\ShelfyGAI\settings.json - logs:
%APPDATA%\ShelfyGAI\logs\ - recovery state:
%APPDATA%\ShelfyGAI\recovery.json
The app does not collect analytics, sync data, or require an account.
See docs/ROADMAP.md.
Contributions are welcome. Please read CONTRIBUTING.md before opening a pull request.
Project expectations:
- keep ShelfyGAI simple and local-first
- keep restore and recovery behavior safe
- avoid surprise background behavior
- keep Windows-specific code isolated behind platform adapters
- add tests for settings, hidden-window behavior, pinning, recovery, and guardrails
ShelfyGAI is released under the MIT License. See LICENSE.