If the goal is to provide a distinction between model and agent, i think the "agent system" is doing too much heavy lifting in the example here.
A useful extension to this mental framework that i use when trying to make this distinction is the application (cursor) -> which sometimes includes an orchestrator and all of the QOL stuff like resuming, checkpointing, etc. single or multiple agents (cursor agents)-> and runs a single or many agent instances (single agent in cursor)-> service api-> model.
This is to address a confusion i often see with agent being conflated with the application that we use agents in, rather than the distinction in the article which tries to unpick agent-model confusion.