# Caller Distance Determines the Right WordPress Interface ## Claim The correct WordPress automation interface is determined by how far the caller sits from the site and how explicitly its actions must be described, not by comparing the tools head to head. <!-- atomicity: 1 idea ✓ --> ## Scope & conditions - Holds for choosing among WP-CLI, the REST API, and the Abilities API on self-hosted WordPress 6.9+ (or with the Abilities plugin backport on earlier versions). - Breaks down if a caller needs a capability no layer yet exposes, or when a custom REST route is genuinely simpler for a specific task than registering an ability. - WP-CLI requires shell access on the server and never serves off-server callers — it's excluded from consideration the moment the caller isn't already on the box. ## Evidence WP-CLI, the REST API, and the Abilities API meet callers at three different distances from the site: WP-CLI is fastest but requires shell access and stays server-local; REST reaches anywhere over HTTP but only describes data, leaving the caller to assemble and interpret requests; the Abilities API describes discrete, permission-gated actions an agent is allowed to take, which is what an autonomous or distant caller (an AI agent, an MCP client) actually needs — not just data access, but a declared, checked capability. > "The REST API describes your data, while the Abilities API describes what an agent is allowed to do with it." ## Links - [[3. Resources/Permanent Notes/Core Abilities Must Be Consumer-Neutral Primitives Not One Interface's Mirror]] — because extends: this claim is about choosing among the layers; that note is about how the Abilities layer itself should be designed once chosen. - [[3. Resources/Permanent Notes/Natural-Language Wrappers Over CLIs Trade Memorization for Verification]] — because contrasts: that note is about a different tradeoff (memorization vs. verification) inside the CLI layer specifically; this one is about choosing the layer in the first place. - [[3. Resources/Permanent Notes/Agent-Readable Data Is Becoming the Default Plugin Integration Surface]] — because applies-in: as more callers become AI agents, the caller-distance heuristic increasingly resolves toward the Abilities layer by default. - [[3. Resources/MOCs/AI & the Future of Knowledge Work MOC]] — because applies-in: this is a concrete WordPress instance of designing tooling for agent callers at varying trust and distance. - [[WordPress Platform Design MOC]] — the entry decision this MOC is organised around — which layer a caller should reach for - [[3. Resources/Permanent Notes/A Role-Limited CMS Account Does Not Limit an Agent That Also Has Shell Access]] — extended by: Limiting an agent's CMS role limits what it can do through authenticated API calls. ## Tests / falsifiers - Find a real task where the "caller distance" heuristic and a straightforward feature comparison recommend different interfaces — that would show the heuristic isn't actually doing the deciding work it claims to. - Track whether teams that adopt the layered mental model make fewer "wrong interface" or "reinvented layer" mistakes than teams that pick ad hoc. ## Maintenance - Last tended: 2026-08-16 - Next review: 2026-11-16 ## Source - [[3. Resources/Readwise/Articles/WP-CLI vs REST API vs Abilities API Choosing the Right WordPress Interface for the Job]] — states the three-layer caller-distance framework this claim generalizes from.