sikuli-go provides app/window/process APIs through AppController.
NewAppController()Open(name, args, opts)Focus(name, opts)Close(name, opts)IsRunning(name, opts)ListWindows(name, opts)App actions flow through core.AppRequest with strict validation:
darwin builds use a concrete backend for open/focus/close/is-running/list-windows.linux builds use a concrete command-driven backend for open/focus/close/is-running/list-windows.windows builds use a concrete PowerShell-driven backend for open/focus/close/is-running/list-windows.ErrBackendUnsupported through the public API.This keeps app/window contracts stable while enabling incremental cross-platform backend expansion.