ghost_window
Manage windows across visible and hidden desktops. List, focus, anchor, minimize, restore, close, or launch apps without disrupting the user's current focus.
Instructions
Window management across the user's desktop AND Ghost's hidden desktops. op=list: every window (name, pid, hwnd, focused, state, surface=user|hidden) plus the current anchor. op=focus: under the default background policy this ANCHORS the window and does NOT raise it (the anchored verbs drive it without focus); only an operator-unlocked prefer_background/foreground policy raises it. op=anchor: name= sets the anchor, clear=true clears it, no args reports it. op=state: maximize|minimize|restore|close (name+state); under the background policy these never activate the window, so the user's focus stays put (restore is how a minimized window becomes actionable). op=launch: start exe - under the background policy the app starts on a hidden desktop, never on your screen, and is anchored (see target.surface in the response).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| op | No | Operation (default list) | |
| exe | No | Executable path or command line (op=launch) | |
| name | No | Window title substring (op=focus|anchor|state). Also accepted as alias for 'exe' on op=launch. | |
| clear | No | op=anchor: forget the current anchor | |
| state | No | op=state. On Linux only 'close' is available (via the window's own accessible action); maximize/minimize/restore report Unsupported. | |
| include_hidden | No | op=list: also list windows that have vanished (not visible, not minimised - state=hidden); op=state state=restore on one of them shows it again without activating it |