Documentation

Everything you need to install, configure, and use OxyDance Pilot with Breakdance Builder and Oxygen Builder.

Installation

  1. 1Log in to your OxyDance Pilot dashboard at oxydancepilot.com and download the plugin ZIP file.
  2. 2In your WordPress admin, go to Plugins → Add New → Upload Plugin.
  3. 3Select the downloaded ZIP file and click Install Now.
  4. 4Activate the plugin. It will appear under the Breakdance or Oxygen menu, depending on which builder is active on your site.
Requirement: OxyDance Pilot works only with Breakdance Builder or Oxygen Builder version 6.x.
For Oxygen Builder, you also need to have the plugins Breakdance Elements for Oxygen and Breakdance Forms for Oxygen installed and active.
For Breakdance Builder, a paid Breakdance license is required — the free version is not supported.
The plugin will automatically detect which builder you are using.

License Activation

After installing the plugin, navigate to Breakdance → OxyDance Pilot (or Oxygen → OxyDance Pilot if you use Oxygen Builder) in your WordPress admin sidebar.

  1. 1Enter your license key in the format OXYD-XXXX-XXXX-XXXX-XXXX.
  2. 2Click Activate. The plugin will verify your key with our server and activate it for your site.
  3. 3You will see your plan details, including remaining uses (Free plan) or unlimited status (paid plans).
Free plan: You get 3 AI generations with no license key required and no credit card needed. After 3 uses, you can upgrade to any paid plan for unlimited generations.

Setting Up Your AI Provider

OxyDance Pilot is a Bring Your Own Key (BYOK) plugin. No AI credits are included — you connect your own API key from a supported provider and pay the provider directly for usage.

  1. 1Open the Breakdance or Oxygen builder on any page.
  2. 2Click the "Create with AI" button in the builder toolbar.
  3. 3Switch to the Settings tab in the OxyDance Pilot panel.
  4. 4Select your AI provider from the dropdown.
  5. 5Enter your API key. The key is encrypted with AES-256-CBC and stored securely on your WordPress site.
  6. 6Choose a model from the auto-populated model list.

Your API key never leaves your WordPress server. All AI requests go directly from your server to the provider — OxyDance Pilot never sees, intercepts, or stores your key or requests.

AI Providers

OxyDance Pilot supports the following AI providers out of the box:

OpenAIGPT-4o, GPT-4.1, o3, o4-mini and moreUses the Responses API
Anthropic ClaudeClaude Sonnet 4, Claude 4.5 Sonnet and more
Google GeminiGemini 2.5 Pro, Gemini 2.5 Flash and more
xAI GrokGrok 3, Grok 3 Mini and more
DeepSeekDeepSeek V3, DeepSeek R1 and moreOpenAI-compatible
OpenRouterAccess 200+ models from all providersSingle API key for multiple providers
Self-hostedAny OpenAI-compatible model you run locally

Choosing a Model

The latest list of models for an AI provider will only be loaded after you enter your API key for that provider. Once you've entered a valid API key, a refresh icon appears next to the model select, allowing you to manually update the list from the provider's API. Until you enter an API key, only AI models that have already been recorded in the database will be shown.

API Key Security

  • Keys are encrypted with AES-256-CBC using your WordPress AUTH_KEY salt as the secret.
  • Only administrators (manage_options capability) can view or change API keys.
  • Non-admin editors see masked keys (e.g. sk-pr••••••3kF9).
  • Keys never leave your WordPress server — all AI calls are made server-side via PHP cURL.

Creating Sections with AI

The core feature of OxyDance Pilot: describe what you want in plain language and receive native Breakdance or Oxygen elements ready to edit.

Writing Prompts

Simply describe the section you need. Be as specific as you like — mention colors, layout, number of columns, content type, or any design details. The plugin wraps your prompt with a system prompt that enforces production-quality output: clean HTML structure, BEM-style class naming, responsive breakpoints, and proper CSS.

Example prompt
A pricing section with 3 cards side-by-side.
Each card has a plan name, price, feature list, and CTA button.
Use a dark background with white text. The middle card
should be slightly elevated to highlight the recommended plan.

Prompt Enhancement

Click the Enhance button to expand a short prompt into a detailed design brief. The enhancement uses the same AI provider and respects your active design preset and any uploaded reference images, so the expanded prompt stays consistent with your brand.

Image References

Upload one or more reference images before generating. The plugin sends them as multimodal content to AI providers that support vision (such as GPT-4o, Claude Sonnet, and Gemini). This is useful for recreating an existing design or matching a specific style.

How Generation Works

Understanding the full generation pipeline helps with troubleshooting and explains why your API key, generated content, and prompts are fully private:

Your promptWordPress REST APIPHP cURL to AI providerSSE stream back to browserHTML / CSS / JS extractedConverter serviceNative builder elementsPasted into editor
  • Step 1–3: Your prompt is sent via your WordPress REST API to a PHP handler, which uses cURL to stream the request directly to your chosen AI provider. Your API key is decrypted on the server and included in the request header.
  • Step 4–5: The AI response is streamed back to your browser in real-time via Server-Sent Events (SSE). As tokens arrive, the plugin extracts clean HTML, CSS, and JavaScript from the output.
  • Step 6–8: The extracted code is sent to our converter service, which transforms it into native Breakdance or Oxygen builder elements. The elements are then automatically pasted into your active editor.

HTML / CSS / JS Converter

The converter lets you transform any HTML, CSS, and JavaScript code into native Breakdance or Oxygen builder elements — no AI required.

Manual Conversion

  1. 1Open the OxyDance Pilot panel in the builder and switch to the Convert tab.
  2. 2Paste your HTML into the HTML field. Optionally add CSS and JavaScript in their respective fields.
  3. 3Click Convert. The plugin sends your code to the converter service.
  4. 4The resulting native builder elements are automatically inserted into your active page.

Design Presets

Design presets let you define reusable brand guidelines that the AI follows when generating sections.

Creating a Preset

In the Settings tab of the OxyDance Pilot panel, scroll to Design Presets and click Add Preset. You can configure:

  • Name — A label for easy identification (e.g. "Brand Dark", "Client X").
  • Colors — Primary, secondary, accent, background, and text colors.
  • Fonts — Heading and body font families.
  • Spacing — Default section padding and element gap values.
  • Custom instructions — Free-text rules the AI should follow (e.g. "always use rounded corners", "avoid stock photo language").
  • Breakpoints — Custom responsive breakpoint values.

Using a Preset

Before generating, select a preset from the dropdown in the Create tab. The preset rules are automatically injected into the system prompt, so the AI produces output that matches your brand colors, typography, and design conventions.

Presets are stored in your WordPress database and only administrators can create, edit, or delete them. Editors can select and use existing presets when generating.

Generation History

Every AI generation is saved to your WordPress database, associated with the user who created it.

  • View history — Switch to the History tab to see all past generations. Each entry shows the prompt, date, provider, model, and token usage.
  • Restore — Click a history entry to reload the prompt and output. You can then re-convert and insert it into any page.
  • Delete — Remove individual history entries you no longer need.
  • Token tracking — Each entry records input and output token counts, helping you track API costs across providers and models.

History is stored in your own WordPress database (wp_oxydance_history table). We never have access to your history or generated content.

Self-Hosted AI

OxyDance Pilot supports connecting to your own AI inference server instead of a cloud provider. This gives you full control over your AI infrastructure — useful for privacy, compliance, cost optimization, or running open-source models.

What Is Self-Hosted AI?

Instead of sending requests to a cloud provider like OpenAI or Anthropic, you run your own AI model server on your infrastructure (or a private cloud) and point OxyDance Pilot at it. Any server that exposes an OpenAI-compatible chat completions endpoint will work.

Compatible Servers

The following self-hosted AI servers are known to work with OxyDance Pilot:

OllamaMost popular for local development
http://your-server:11434/v1/chat/completions
vLLMHigh-performance production serving
http://your-server:8000/v1/chat/completions
LM StudioDesktop app with server mode
http://your-server:1234/v1/chat/completions
LocalAIDrop-in OpenAI replacement
http://your-server:8080/v1/chat/completions
JanFree desktop app with built-in server
http://your-server:1337/v1/chat/completions
llama.cppLightweight C/C++ inference server
http://your-server:8080/v1/chat/completions
text-generation-webuiRun with --api flag
http://your-server:5000/v1/chat/completions
GPT4AllDesktop app with local server mode
http://your-server:4891/v1/chat/completions
KoboldCppGGUF model runner with web UI
http://your-server:5001/v1/chat/completions
Any OpenAI-compatible API gatewayCustom proxy or gateway
https://your-gateway.com/v1/chat/completions

Configuration

  1. 1Open the builder and click "Create with AI" to open the OxyDance Pilot panel.
  2. 2Go to the Settings tab and select "Self-hosted" as your AI provider.
  3. 3Enter the full endpoint URL of your AI server (see the compatible servers table above for examples).
  4. 4If your server requires authentication, enter the API key. This is optional — many local servers don't require a key.
  5. 5Enter the model name your server exposes (e.g. "llama3.1", "mistral-7b", "codestral").
  6. 6Save settings and start generating.

Endpoint URL

The plugin sends requests to the exact URL you enter — nothing is auto-appended or modified. You must provide the full path to your server's chat completions endpoint.

Most OpenAI-compatible servers use the /v1/chat/completions path. Check your server's documentation for the correct endpoint.

Example endpoint URLs
# Ollama (default port 11434)
http://your-server:11434/v1/chat/completions

# LM Studio (default port 1234)
http://your-server:1234/v1/chat/completions

# vLLM (default port 8000)
http://your-server:8000/v1/chat/completions

# llama.cpp / LocalAI (default port 8080)
http://your-server:8080/v1/chat/completions

# Jan (default port 1337)
http://your-server:1337/v1/chat/completions

How Self-Hosted Requests Work

Your promptWordPress PHP servercURL to your AI serverSSE stream responseHTML / CSS / JS extractedConverter serviceNative builder elements

Self-hosted AI uses the exact same streaming mechanism as cloud providers. Your WordPress server makes a cURL request to your AI server, streams tokens back via Server-Sent Events, and the output follows the same extraction and conversion pipeline.

Security Considerations

To prevent Server-Side Request Forgery (SSRF) attacks, the plugin validates your endpoint URL when saving settings. The following are blocked:

  • Localhost addresses localhost, 0.0.0.0, [::1]
  • Cloud metadata endpoints 169.254.169.254, metadata.google.internal
  • Private IP ranges — All RFC 1918 and reserved IP address ranges
  • Non-HTTP(S) schemes — Only http:// and https:// are allowed
Important: If your AI server runs on the same machine or private network as your WordPress installation, you need to ensure the endpoint URL uses a publicly resolvable hostname or IP address that does not fall within blocked ranges. Use your server's public IP or a domain name that resolves to it.

Token Limits

Unlike cloud providers where the plugin sets a max_tokens parameter based on the model, self-hosted requests do not include a max token limit. Your server uses its own default context window and output length settings.

API Key

The API key field is optional for self-hosted servers. Many local servers (like Ollama) don't require authentication. If your server does require a Bearer token, enter it in the API key field — it will be encrypted and stored exactly the same way as cloud provider keys.

Permissions

OxyDance Pilot uses WordPress capabilities to control access:

Editors and Authors edit_posts

Use AI generation and prompt enhancement

View generation history (their own entries)

Use the HTML / CSS / JS converter

View provider settings (API keys are masked)

Select and use existing design presets

View license status

Administrators manage_options

Everything above, plus:

Change AI provider and model selection

Add, update, or remove API keys

Configure self-hosted endpoint URL

Create, edit, and delete design presets

Activate and deactivate license keys

Troubleshooting

Common issues and how to resolve them:

"No API key configured" error
Open the Settings tab in the OxyDance Pilot panel and enter your API key for the selected provider. Only administrators can change API keys.
Self-hosted URL rejected
The SSRF protection blocks localhost, private IPs, and metadata endpoints. Use a publicly resolvable hostname or IP address for your self-hosted server. If your server is on the same machine, bind it to a public-facing IP.
"No generations remaining" (Free plan)
The Free plan includes 3 AI generations. Upgrade to any paid plan for unlimited use. You can manage your subscription from the OxyDance Pilot dashboard.
Converter returns 403 error
This means your license key is invalid, expired, or not activated for this site. Go to Breakdance/Oxygen → OxyDance Pilot in your admin panel and verify your license status.
Generation times out
AI generation allows up to 10 minutes per request. If your request is timing out, try simplifying your prompt, using a faster model, or checking that your AI provider is not experiencing downtime.
Elements don't appear after generation
Make sure you have an active page open in the builder before generating. The plugin inserts elements via the builder's clipboard — it needs an active editing session to paste into.
API keys not saving
Only WordPress administrators (users with manage_options capability) can save API keys. If you're logged in as an Editor, ask your administrator to configure the keys.
Self-hosted streaming not working
Ensure your AI server supports SSE (Server-Sent Events) streaming with an OpenAI-compatible response format. Check that your server is reachable from your WordPress host and that any firewalls allow the connection.

Still need help?

If your issue isn't covered here, we're happy to help directly.

Contact support