wp-abilities-api

Installation
SKILL.md

WordPress Abilities API

A standardized registry for plugin / theme / core functionality, designed primarily so AI agents and external tools can discover what a WordPress site can do and invoke those capabilities through a uniform contract. Each Ability has a stable identifier, JSON-Schema-typed inputs and outputs, and a required permission callback. WP_Ability::execute() validates input, checks permissions, executes, and validates output.

Pre-Abilities, the same functionality was scattered across do_action, apply_filters, custom REST routes, public PHP functions, and ad-hoc plugin APIs (each with its own conventions). The Abilities API consolidates that into one machine-readable surface.

This skill is grounded in WordPress 7.1 core behavior. Server-side Abilities shipped in WordPress 6.9; WordPress 7.0 added the client packages and WP AI Client integration. WordPress 7.1 adds unified public exposure metadata, filtered discovery, a complete execution-filter lifecycle, client-safe JSON Schema preparation, REST collection filters/pagination, and schema-aware run-input coercion. Verify version-sensitive behavior against wp-includes/abilities-api, the WP_REST_Abilities_V1_* controllers, and the abilities script modules.

When to use this skill

Trigger when ANY of the following is true:

  • Scaffolding plugin functionality that AI agents (Claude, ChatGPT, custom MCP clients) should be able to discover and invoke.
  • Designing an admin tool whose logic should be reachable from BOTH PHP code and the block editor JS without writing two parallel implementations.
  • Reviewing a plugin where you see wp_register_ability, wp_get_ability, WP_Ability, the wp_abilities_api_init action, or the @wordpress/abilities JS package.
  • Registering client-side admin operations with @wordpress/abilities, or loading server abilities into JS with @wordpress/core-abilities.
  • Passing abilities to wp_ai_client_prompt()->using_abilities() or handling WP_AI_Client_Ability_Function_Resolver.
  • Deciding whether to expose a feature as a custom REST endpoint vs an Ability.
  • Migrating an existing custom REST endpoint to the Abilities API.
Installs
1
GitHub Stars
22
First Seen
1 day ago
wp-abilities-api — lonsdale201/wp-agent-skills