Computer use with CUA
Auction-routed inference with an explicitly paired local desktop driver across the SDK, API, and web app.
Omnious computer use combines auction-routed inference with a local, explicitly paired CUA Driver. The router chooses and serves the model; the local adapter alone holds Accessibility, Screen Recording, mouse, and keyboard capability.
One capability, two surfaces
| Surface | What runs locally | What the API does |
|---|---|---|
| SDK | CuaDriverAdapter owned by the caller | Returns tool calls; never executes them |
| API | Your application's executor | Validates intent and records the tool policy |
The curated tool surface
CUA Driver has a broad low-level surface. Omnious exposes five stable facade tools so provider context stays small and maintenance capabilities cannot become model-callable accidentally.
| Tool | Intent | Behavior |
|---|---|---|
computer_health | read | Driver, platform, and permission diagnostics |
computer_list | read | Applications or windows for one process |
computer_snapshot | read | Fresh accessibility tree plus grounding screenshot |
computer_action | execute | One approved click, type, key, scroll, drag, value, cursor, or app-launch action |
computer_session | execute | Named cursor and cleanup boundary for one run |
Every window-targeted action is bracketed by a fresh pre-action snapshot and a post-action verification snapshot. Element indices are never reused across snapshots. App launch has no pre-existing window to snapshot, so the explicit approval is its verification boundary. Foreground delivery remains an escalation, not a default.
SDK
import { CuaDriverAdapter, OmniousClient } from "omnious-sdk";
const computer = new CuaDriverAdapter({
approve: async ({ action, arguments: args }) => {
// Replace with your own product approval UI.
return await showApproval({ action, args });
},
});
const omnious = new OmniousClient({
routerUrl: "https://api.omnious.xyz",
creditKey: process.env.OMNIOUS_CREDIT_KEY,
});
try {
const result = await omnious.ask("Inspect the selected app", {
model: "auto",
intent: "execute",
computer,
});
console.log(result.content);
} finally {
await computer.close();
}The approval callback is mandatory for actions: omitting it fails closed. Multimodal CUA results remain image blocks throughout Chat, Responses/Codex, and Anthropic Messages tool loops.
Permission policy
Omnious regenerates a fixed, private CUA policy before every driver process. It permits only the native calls needed by the five facade tools. Browser JavaScript execution, app killing, forced foregrounding, recording, replay, configuration changes, and dependency installers remain denied.
routing.intent: "read" or"plan" rejects computer_action before auction or payment with tool_intent_conflict.- router/src/agent/tools/computer.ts curated tool contract
- router/src/agent/tools/cuaDriver.ts local MCP adapter and fixed policy
- sdk/src/index.ts SDK integration and multimodal executors
- frontend/src/lib/computer.ts browser pairing client