AVL adapters bring the same .agent companion-view contract to CMS and site-builder platforms. Each adapter should expose machine-readable page meaning without forcing agents to scrape public HTML.
CMS adapters live under plugins/, grouped by platform:
plugins/
WordPress/
Ghost/
Drupal/
Joomla/
Strapi/
Directus/
Payload/
Use the platform's public name for the folder unless the platform ecosystem has a different package convention.
Every adapter should aim to provide:
.agentcompanion URLs for public pages.agent.txtor equivalent discovery where the platform permits it.- HTML discovery from public human pages.
- Badge controls for type, colors, placement, and visibility.
- Native admin settings where possible.
- Compatibility notes for page builders, themes, or framework layers.
- Tests for rendering, serialization, and configuration.
- Packaging instructions and release artifacts.
The WordPress adapter lives in:
plugins/WordPress/
It includes:
- Main plugin:
plugins/WordPress/avl-agent-view-layer/ - Docker QA stack on port
49217. - WordPress Plugin Check integration.
- Badge settings for type, colors, placement, and framework compatibility.
- Shortcode support through
[avl_badge]. - Optional page-builder add-ons for Divi, Elementor, Beaver Builder, Gutenberg, Bricks, WPBakery, Avada/Fusion, and Oxygen/Breakdance.
- Admin readiness checks for AVL, AEO, GEO, and
llms.txt/lm.txt. - External validation link to AEOCheck.ai.
See plugins/WordPress/README.md and plugins/WordPress/page-builders/README.md.
The Ghost adapter lives in:
plugins/Ghost/
Ghost does not have the same general-purpose plugin lifecycle as WordPress for arbitrary public-route behavior. The current package is therefore structured as a lightweight AVL helper service and document renderer that can be wired to Ghost content via API/theme integration patterns.
It includes:
- TOON serialization.
- Ghost content-to-AVL document mapping.
- A small HTTP server for
.agentandagent.txtstyle responses. - Unit tests for serialization, document shape, and server behavior.
See plugins/Ghost/README.md.
WordPress page builders are treated as compatibility surfaces, not separate AVL standards.
The main WordPress plugin provides a generic [avl_badge] shortcode. Builder-specific add-ons wrap that shared badge behavior in native module/widget registration:
- Divi:
plugins/WordPress/page-builders/avl-divi-badge/ - Elementor:
plugins/WordPress/page-builders/avl-elementor-badge/ - Beaver Builder:
plugins/WordPress/page-builders/avl-beaver-badge/ - Block editor:
plugins/WordPress/page-builders/avl-block-badge/ - Bricks:
plugins/WordPress/page-builders/avl-bricks-badge/ - Bakery visual builder:
plugins/WordPress/page-builders/avl-bakery-badge/ - Avada/Fusion:
plugins/WordPress/page-builders/avl-avada-badge/ - Oxygen/Breakdance:
plugins/WordPress/page-builders/avl-oxygen-badge/
Future builder support should keep rendering centralized in the core plugin and keep builder add-ons thin.
The Drupal adapter lives in:
plugins/Drupal/avl_agent_view_layer/
It is a native Drupal module with .routing.yml routes and a controller for:
/agent.txt/llms.txt/lm.txt/.agent/{path}.agent
The MVP resolves node-backed path aliases. Production deployments should add configurable bundle allowlists, field mapping, and Drupal cache metadata.
The Joomla adapter lives in:
plugins/Joomla/plg_system_avl/
It is a Joomla system plugin with a manifest XML file, service provider, and event subscriber. The MVP responds to AVL and LM discovery routes during public site routing.
Production deployments should add richer article/category resolution through Joomla content services.
The Strapi adapter lives in:
plugins/Strapi/strapi-plugin-avl/
It is a Strapi 5 plugin MVP with public plugin routes for:
/avl/agent.txt/avl/llms.txt/avl/lm.txt/avl/.agent/avl/:contentType/:documentId.agent
Production deployments should add collection allowlists, slug/public-route mapping, and admin configuration.
The Directus adapter lives in:
plugins/Directus/directus-extension-avl/
It is a Directus endpoint extension MVP for:
/avl/agent.txt/avl/llms.txt/avl/lm.txt/avl/.agent/avl/:collection/:id.agent
Production deployments should add collection allowlists and public-route mapping.
The Payload adapter lives in:
plugins/Payload/payload-plugin-avl/
It is a Payload config plugin MVP that injects root endpoints for:
/agent.txt/llms.txt/lm.txt/.agent/:collection/:id.agent
Production deployments should add collection allowlists, auth-aware rendering, and public front-end route mapping.
Run the repo-level adapter validation suite:
npm run test:pluginsThis runs executable tests for Ghost, Strapi, Directus, and Payload, checks the Drupal/Joomla package structures, and regenerates WordPress package artifacts. Full Drupal, Joomla, and WordPress certification still requires those CMS runtimes.
- Create
plugins/<CMSName>/. - Document the platform's extension surface in that folder's
README.md. - Implement
.agentrendering and discovery using native hooks. - Add admin settings for badge type, colors, placement, and visibility when the platform supports it.
- Add tests and local runtime instructions.
- Add packaging or marketplace submission notes.
- Update
docs/agent-skills.mdand rerun the skill sync.