Abilities API

In this article

Roadmap

  • Focus: WordPress 6.9:
    • Minimal capabilities to be included #
    • Documentation updates #
    • Milestones: WordPress 6.9 [pre] / WordPress 6.9
    • Other capabilities within AI pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party #
  • Later:
    • Add more capabilities.
    • Milestone: Later

Milestones

Repo

Abilities API

Posts

Releases #

0.2.0

Link / Changelog

  • Refactor the usage of $properties param to $args to align with WordPress usage by @gziolo in #59
  • Add HEAD method support for performance optimization by @Ref34t in #71
  • Fix $input type hint in WP_Ability by @gziolo in #61
  • chore: update dev-deps to latest by @justlevine in #72
  • fix: use link_header instead of add_link for pagination responses by @emdashcodes in #81
  • Update CONTRIBUTING.md by @akkspros in #80
  • Docs: REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. Reference by @gziolo in #77
  • Add execute actions to the abilityAbility A registered, self-documenting unit of WordPress functionality that can be discovered and invoked through multiple contexts (REST API, Command Palette, MCP). Includes authorization and input/output specifications. object by @gziolo in #56
  • dev: Bump the PHPStan testing to PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. https://www.php.net/manual/en/preface.php. 8.4 by @johnbillion in #82
  • feat!: make permission_callback arg required by @justlevine in #73
  • Add client-side package for Abilities APIAbilities API A core WordPress API (introduced in 6.9) that creates a central registry of capabilities, making WordPress functions discoverable and accessible to AI agents, automation tools, and developers. Transforms WordPress from isolated functions into a unified system. by @emdashcodes in #60
  • dev: add register_ability_args filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. [Proposal] by @justlevine in #74
  • docs: Fix the variable name by @mrabbani in #92
  • Fix has_permission() return type inconsistency (Issue #67) by @Ref34t in #76
  • Docs/semantic headings by @jonathanbossenger in #96
  • Rename check_permission() to check_permissions() on WP_Ability by @gziolo in #94
  • Fix backwards compatibility with WP_REST_Request APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. by @budzanowski in #98
  • Prepare the branch for v0.2.0 release by @gziolo in #90
  • Include JS build files in the Composer package in v0.2.0 release by @gziolo in #100
0.1.1

Link / Changelog

Initial Release

Link / Changelog

  • Implement server-side registry for Abilities API by @gziolo in #3
  • chore: scaffold plugin entrypoint and tooling by @justlevine in #4
  • Add REST API controllers for Abilities API by @emdashcodes in #6
  • chore: php remediations by @justlevine in #11
  • Adjust directory structure to align with WP coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. by @gziolo in #12
  • ci: fix lint trigger on test GH workflow by @justlevine in #17
  • tools(phpcsPHP Code Sniffer PHP Code Sniffer, a popular tool for analyzing code quality. The WordPress Coding Standards rely on PHPCS.): remove conflicting TypeHint rules from PHPCS ruleset. by @justlevine in #15
  • chore: align reqs with WP6.9 merge target by @justlevine in #18
  • dev: use $request->get_params() in REST controllers by @justlevine in #22
  • Chore: Fix coding standard issues reported on wordpress-develop by @gziolo in #25
  • ci: fixes and cleanup by @justlevine in #26
  • code quality: add PHPStan array shape for ability $properties by @justlevine in #20
  • dev: use WP_Abilities_Registry::$instance instead of adding a new global by @justlevine in #19
  • dev!: return WP_Error from WP_Ability methods by @justlevine in #23
  • Adding initial developer documentation by @jonathanbossenger in #10
  • Update readme with links to documenation by @jonathanbossenger in #27
  • Add LICENSE.md file by @gziolo in #29
  • ci: build zip file for GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ release by @justlevine in #24
  • Refactor error handling in REST API run controller by @gziolo in #31
  • Chore: Run lint:php:fix on test files by @gziolo in #36
  • Remove ignoreErrors from PHPStan by @gziolo in #40
  • Update an example in Introduction & Overview document by @jonathanbossenger in #43
  • dev!: require string $name for registration by @justlevine in #21
  • Update 3.registering-abilities.md by @mujuonly in #46
  • Add code quality improvements to code comments by @gziolo in #47
  • Chore: Configure the composer package for publishing by @gziolo in #35
  • docs: add installation steps for release by @justlevine in #48

WordPress Community Gains New Superpower with the Launch of the Abilities API Plugin

A new open-source plugin is redefining how WordPress sites, plugins, and external systems work together. The WordPress Abilities API Plugin introduces a standardized way to register and discover site functionality, making WordPress more interoperable, secure, and ready for the AI era.

With Abilities API, discrete, well-defined units of functionality plugins, themes, and AI agents can easily understand and interact with what a site can do. This innovation opens the door to more seamless automation, smarter AI integrations, and stronger collaboration across the WordPress ecosystem.

Our goal was to make WordPress functionality more discoverable, secure, and future-proof. By providing a common language for plugins, themes, and AI tools to interact, we’re giving developers and site owners a powerful new foundation for innovation.

Why It Matters

  • For Developers: A unified, JSONJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. Schema–based standard to expose and validate plugin capabilities.
  • For Site Owners: More secure and reliable automation with permission-based controls.
  • For AI & Automation: Machine-readable abilities that AI agents can use to intelligently perform site tasks.

The Abilities API Plugin is freely available to the open-source community and designed for immediate adoption. Any plugin or theme can now register its own Abilities, creating an ecosystem where WordPress functionality is not only extensibleExtensible This is the ability to add additional functionality to the code. Plugins extend the WordPress core software. but also universally discoverable.

Developers and site owners can download the plugin today and start shaping the next era of WordPress innovation.

s
search
c
compose new post
r
reply
e
edit
t
go to top
j
go to the next post or comment
k
go to the previous post or comment
o
toggle comment visibility
esc
cancel edit post or comment