PARAS MADAN
All writing

Latest in AI

Oh My Pi 18.12.2: Background Computer Use and Takeover Settings

Oh My Pi 18.12.2 adds a configurable foreground fallback, turn-level Escape stops and macOS input fixes, with takeover enabled by default when background input is unavailable.

Oh My Pi 18.12.2, released on October 18, changes how its coding agent handles desktop input when background control is unavailable. It adds a configurable foreground fallback and stronger interruption behaviour, making the settings important for anyone trying to keep working while an agent uses another application.

The release contains many computer-use fixes, especially on macOS. The key default is easy to miss: when a window input call cannot use its background route, the tool can retry that call by bringing the target to the foreground.

Background fallback defaults to takeover

The released computer settings define computer.backgroundFallback with two choices: takeover and refuse. The default is takeover, which permits a foreground retry when background delivery is unavailable.

On macOS, this route includes returning focus to the user's application. The setting describes plain takeover on other platforms, so the macOS focus-restoration behaviour should not be assumed to apply everywhere.

Choose refuse when preserving control of the foreground matters more than completing the action automatically. This option fails the unsupported call and also blocks the agent's own attempts to take the foreground, including explicit takeover, raising a window, activating an application and desktop input. On macOS, it also refuses menu operations that can capture the keyboard.

That makes the setting a meaningful workflow decision. A developer using a second app during an agent run may prefer a refused action that the user can review over an automatic foreground retry.

A failed input call needs to say whether anything happened

The fallback change also separates unavailable background input from a failure after input has already been sent. macOS and X11 calls that partially delivered input now report InputFailed rather than claiming that nothing was sent.

This matters because retrying a click or typed command can duplicate an action. An error after partial input should prompt a fresh observation of the application state before deciding what comes next. The error wording alone cannot establish that a workflow is safe to repeat.

The tool's instructions also stop telling the model to force a foreground retry when a background route fails. The fallback setting controls that decision instead, which gives the user a more predictable place to choose the behaviour.

Escape can stop computer use for the rest of the turn

Pressing Escape during takeover input now prevents later computer calls from that session for the remainder of the turn, until the user sends another message. This closes a practical gap where stopping one call could otherwise leave the agent free to issue another.

The release distinguishes this from background work. Escape pressed in the user's own application does not normally cancel background window input unless task control is held. The host interrupt remains available, and macOS needs the appropriate Input Monitoring permission for the physical-key stop to work.

The macOS permission reporting was corrected as part of this release. It should no longer claim a working global Escape stop when Input Monitoring is off. Check the reported capability in the actual terminal or IDE hosting the agent before relying on it during a real task.

macOS focus handling is improved, with limits to test

Several fixes address the agent taking keyboard focus unexpectedly, input reaching the wrong window and focus being returned after the user deliberately selected another application. Browser screenshots also capture background tabs in place instead of raising Chrome or switching its visible tab.

The release adds a macOS UserIntervened error when the user starts interacting with the target application. With Input Monitoring available, the agent can stop input and let the application be read again rather than continuing against an outdated view.

These are useful changes for shared desktop use, but they are release claims rather than a guarantee across every application. Test a harmless workflow with your actual window arrangement, permission settings and fallback choice before running actions that submit information or change files.

I'm Paras. I work at the intersection of AI, engineering and distribution.

I help AI founders and developer-tool teams explain agent behaviour, permission tradeoffs and technical launches in stories that build informed adoption.

Book a 30-minute call.