- 2026-06-02
- by LethaldiranMX
- Trends
- 0 Comments

Expert Insight
As WordPress 7.0 introduces native AI capabilities, this plugin offers an exceptional bridge for developers and agency teams running local development environments on Apple Silicon. By wiring the Osaurus local LLM runtime directly into the WordPress AI Client, it allows for seamless, zero-cost testing of AI-driven features without exposing sensitive client data to external APIs. This is a highly practical solution for offline development, local prototyping of Gutenberg AI blocks, and high-throughput testing where API metered costs would otherwise accumulate rapidly.
Key Strengths & Role: The plugin’s primary strength lies in its zero-configuration setup for bare-metal local environments, instantly routing wp_ai_client_prompt() calls to a local MLX-optimized engine. Because it extends the SDK’s OpenAI-compatible base classes, advanced features like streaming, structured JSON output, and tool/function calling work flawlessly out of the box. This ensures that local development closely mirrors production behavior while maintaining absolute data sovereignty and zero operational latency over the local network.
Potential Limitations & Pitfalls: Due to upstream limitations in the Osaurus runtime, this provider does not support image generation, embeddings, or text-to-speech, requiring developers to pair it with a secondary provider like OpenAI for multimodal workflows. Additionally, while bare-metal setups work out of the box, containerized environments (such as Docker, DDEV, or Lando) and remote LAN configurations require manual base URL overrides and firewall adjustments to resolve the host machine’s loopback interface correctly.
Registers Osaurus, a local Apple Silicon LLM runtime, as a provider for the WordPress AI Client.
AI Provider for Osaurus wires the Osaurus local LLM runtime into the WordPress AI Client that ships with WordPress 7.0.
After activation, any plugin that calls wp_ai_client_prompt() (Gutenberg AI features, official provider plugins, third-party code) can route prompts to Osaurus running on the same machine. Prompts never leave the local network.
Why use it
- Privacy first — prompts stay on your machine, no third-party API receives the data.
- Zero cost — no API keys, no metered requests.
- Fast — MLX-backed inference on Apple Silicon.
- OpenAI-compatible wire format — streaming, tool calls, JSON output, and chat history work out of the box.
Capabilities
- Text generation
- Chat history
- Function / tool calls
- Structured JSON output
- Streaming
Image generation, embeddings, and text-to-speech are not supported because Osaurus does not currently expose those endpoints. Pair this plugin with an image-capable provider such as the official AI Provider for OpenAI when you need images.
How it works
The plugin registers a provider with AiClient::defaultRegistry() and points it at the Osaurus HTTP server. Because Osaurus speaks the OpenAI Chat Completions wire format, the implementation extends the SDK’s OpenAI-compatible base classes — so capabilities like streaming and tool calling flow through automatically.
Configuration
The plugin resolves the Osaurus base URL in this order (first match wins):
OSAURUS_BASE_URLPHP constant defined inwp-config.php.osaurus_ai_connector_base_urloption, settable from Settings → Connectors in wp-admin.- Default:
http://127.0.0.1:1337/v1(works out of the box for bare-metal WordPress on the same Mac as Osaurus; Docker setups must override).
Pick the right URL for your setup
WordPress can run in many places — the right base URL depends on how it reaches your Mac, where Osaurus is listening.
- Bare-metal WordPress on the same Mac (MAMP, Laravel Valet, Local, WordPress Studio, native PHP):
http://127.0.0.1:1337/v1 (this is the default — no configuration needed) - Docker-based WordPress on the same Mac (DDEV, Lando, Docker Desktop):
http://host.docker.internal:1337/v1 - WordPress on a different machine on your LAN, Osaurus on your Mac:
http://:1337/v1 — make sure Osaurus is bound to a non-loopback interface and your firewall allows port 1337. - Remote Osaurus you operate (e.g. a Mac mini on Tailscale, a colocated server):
http://:1337/v1 orhttps://...if you front it with TLS.
The fastest way to confirm a URL works from the WordPress host: run curl <base-url>/models from the same shell environment WordPress runs in. A JSON list back means the connector will work.
Osaurus project home: osaurus.ai
Osaurus documentation: docs.osaurus.ai
External services
This plugin connects to an Osaurus HTTP server — a local LLM runtime that you install and run yourself on the same machine as WordPress (or on a host you operate). The plugin is useless without it: every text-generation request from the WordPress AI Client is routed to this server.
Service: Osaurus (self-hosted, local LLM runtime)
Osaurus is an open-source Apple Silicon LLM runtime that exposes an OpenAI-compatible HTTP API. It is installed and operated by the same person running WordPress — there is no third-party service operator. This plugin forwards prompts to it so WordPress can perform text generation, chat, tool calls, and structured JSON output without sending data to any cloud provider.
Project homepage and download (osaurus.ai): https://osaurus.ai
Project documentation (docs.osaurus.ai): https://docs.osaurus.ai
These URLs are referenced in the plugin’s admin UI as documentation/download links only; the plugin does not make HTTP requests to osaurus.ai or docs.osaurus.ai.
Hosts the plugin actually contacts at runtime
The plugin sends HTTP requests only to the host and port resolved (in order) from:
- The
OSAURUS_BASE_URLPHP constant (if defined inwp-config.php). - The
osaurus_ai_connector_base_urlWordPress option (set from Settings → Connectors). - The built-in default
http://127.0.0.1:1337/v1.
Two host targets are referenced by name in the plugin code as quick-pick presets and as the default:
127.0.0.1:1337— loopback on the same machine as WordPress (default). Used by bare-metal installs (Studio, MAMP, Valet, Local, native PHP).host.docker.internal:1337— Docker’s hostname for the host machine. Used by Docker-based WordPress (DDEV, Lando, Docker Desktop). Resolved by Docker, not by a public DNS server.
If the user configures a different URL, the plugin only contacts that URL. The plugin never contacts any third-party endpoint operated by the plugin author, the Osaurus project, or any other party.
What data is sent and when
- When any plugin (including WordPress core) calls
wp_ai_client_prompt()and routes through Osaurus, the plugin sends aPOSTto{base_url}/chat/completionswith: the prompt text, the conversation history you supplied, the model ID, sampling parameters (temperature, top_p, max tokens, etc.), and any tool / function declarations or JSON schemas you supplied. - When an admin opens Settings → Connectors, the plugin sends a
GET {base_url}/modelsto populate the model picker and aGET {base_root}/healthto display a connection status indicator. Both run only for users withmanage_optionsand are triggered by user actions in wp-admin. - No telemetry, analytics, or background requests are sent.
Terms of service and privacy policy
Osaurus is open-source software you self-host. There is no third-party service operator collecting your data. See the project pages linked above for the project’s terms and source. If you point the plugin at a remote Osaurus server operated by someone else (for example, a Mac mini you reach over Tailscale), the operator of that server is the data recipient and is governed by whatever terms you have with them.
