Function calling assumes somebody exposed an API for the thing you want to do.
An enormous amount of software never did, and never will.
Internal tools, legacy desktop applications and third-party portals often offer only a user interface.
Computer use gives a model that interface directly, as a screen it can see and act on.
The loop is simple to describe: take a screenshot, decide, act, and take another screenshot.
Actions are the ordinary ones, clicking at coordinates, typing text, scrolling, and pressing keys.
The hard part is grounding: turning a described target into the pixel position of the right button.
Models trained for this predict coordinates from the image, and accuracy there is what limits reliability.
Browser automation is the more constrained cousin, acting on the page structure rather than pixels.
That is faster and much more stable, and it should be preferred whenever a browser is enough.
Every version of this is slow: each step costs a screenshot, a model call and an interface delay.
It is also fragile, since a layout change can invalidate everything the agent learned about a screen.
The security profile is the most serious consideration and is often underweighted.
An agent driving a real desktop can read anything on screen and click anything it can see.
Prompt injection from a web page becomes an instruction to a thing with hands, so isolate it and watch it.