Npcink Abilities Toolkit gives your WordPress site a safe toolbox for AI clients: an AI assistant or host product can read articles, media, comments, menus, and site diagnostics, and prepare reviewed suggestions for tags, excerpts, and media metadata.
Every write-like ability is a preview by default. A real change only happens after your host product approves the commit, and the approval decision and the audit trail stay with the host, never with this plugin.
After activation, open Tools -> AI Ability Set to see at a glance what AI clients can do on this site: which abilities are available, which are read-only, and which would require approval from a host product before anything changes. The page is built for site operators first.
For developers and host runtimes, the plugin also provides ability registration helpers, category helpers, schema normalization, annotation normalization, REST discovery values, and optional canonical projection for Npcink AI when Npcink AI is installed.
It can be used by any WordPress plugin or client that consumes the WordPress Abilities API. Npcink AI is one optional consumer, not the owner of this plugin.
The plugin does not run AI models, execute workflows, route prompts, contact model providers, manage billing or quotas, own MCP governance, or approve final WordPress writes.
Read-only host composition recipe metadata may document how hosts can compose abilities, but those records do not run queues, schedule jobs, execute workflows, or create a second registry. Host composition recipe metadata is available through read-only helpers and Abilities API discovery abilities for hosts that need catalog discovery without execution ownership.
Bundled starter locale files are limited to translations intentionally maintained in this repository. Incomplete bundled locale packs are removed until they can be maintained as complete starter translations.
WordPress.org directory translations are managed separately through
translate.wordpress.org/GlotPress and are not runtime authority owned by this plugin.
0.5.12
User-experience and operator-guidance release from the 2026-10 end-user audit: no ability contract, schema, response-shape, or behavior changes to abilities. The bundled troubleshooting guide now opens with a no-command-line section for site operators and documents how to turn ability packages on or off with a copy-paste snippet, and the admin ability package list links to that guidance. A disabled safe-check button now explains that its ability is not registered instead of greying out silently, and the raw check response and raw discovery outputs gained Copy response buttons for support handoff. All admin help links share one filterable documentation base (npcink_abilities_toolkit_docs_base_url) so sites with unreliable GitHub access can point them at a mirror they maintain. Three new admin strings ship in all seven bundled locales, and this readme's description now leads with what the plugin gives you before boundary language.
0.5.11
Security and performance hardening release from the 2026-10 audit: no ability contract, schema, or response-shape changes. Publishing reports enforce per-post edit permission, anonymous frontend pageviews skip built-in ability registration and catalog fingerprinting (faster pageviews, no behavior change on admin, REST, cron, or CLI), the runtime contract endpoint serves from a bounded cache, media file paths are validated segment-by-segment on both read and write sides, every registered ability re-checks its capability before its callback runs, and site operators get a health warning when a host integration allows commits unconditionally. Uninstall now keeps the shared legacy media replacement history by default; set the npcink_abilities_toolkit_uninstall_preserve_media_history filter to false to restore the old delete behavior.
0.5.10
Documentation-follow-up release: records the article-publish-preflight
closed-loop host proof, corrects the preflight proof failure attribution,
and keeps the 0.5.9 code base unchanged so the conventional release tag
can point at the current candidate head.
0.5.9
- User-experience localization and onboarding release: no ability contract, schema, or behavior changes; ability ids and response shapes are identical to 0.5.8.
- Workflow scenario cards now follow the site language. Recipe titles and task examples are localized at render time while the discovery payloads stay untranslated contract data.
- A one-time welcome notice after activation links to the ability status page and clears once the page has been visited or the notice dismissed.
- The admin page heading now matches the "AI Ability Set" menu label, overview attention notes link troubleshooting guidance, connection values explain which endpoints need an authenticated admin session, and catalog filter selects apply immediately.
- Uninstalling now also removes per-admin notice state (welcome and health notice dismissals).
- Bundled locales gained the workflow scenario strings and two admin strings at full template parity; a guard test keeps the hand-maintained scenario template entries from being dropped by regeneration.
0.5.8
- Maintenance and repository-health release: no ability contract, schema, or behavior changes; ability ids and response shapes are identical to 0.5.7.
- Split the largest media read module into smaller trait files with byte-for-byte purity proofs and test-suite ownership assertions, keeping the class surface unchanged while making future media reads easier to review.
- Added automated debt ratchets: file-size ceilings on source modules, a repository-wide static-analysis total that only moves downward at release time, and a conservation rule so relocated static-analysis findings are never misread as new debt.
- Removed provably dead null-coalescing fallbacks in read paths (runtime-identical) while deliberately keeping the defensive fallbacks on filterable WordPress surfaces and partial-object inputs.
- Streamlined the development workflow: a fast ~25-second iteration test tier, a mechanical post-merge steady-state check, an archived documentation library with an evergreen index, and Dependabot maintenance pull requests that are no longer blocked by the human-oriented PR body contract.
0.5.7
- Shipped the user-experience hardening batch: direct post-meta write abilities now invalidate the bounded read cache instead of serving stale reports, admin health notices fail loud when ability registration is unavailable or the catalog is empty, and uninstall removes media replacement history and the plugin backups directory behind explicit preserve filters.
- Hardened the runtime contract endpoint:
ability_catalog_available now reflects the live Abilities API route, and the contract response serves a quoted sha256 ETag with a filterable Cache-Control (default private, no-cache) plus empty 304 responses for matching If-None-Match polls.
- Improved the admin surface: a read-only ability packages overview section, explicit empty states, copy-button failure fallback, request buttons that disable while running, and translated page title registration.
- Kept the packaged plugin error-free for Plugin Check by routing the uninstall backup-tree file deletion through the WordPress file API.
- Backfilled the bundled locales de_DE, es_ES, fr_FR, ja, ko_KR, and pt_BR to full template parity and refreshed the translation template to 0.5.7.
0.5.6
- Fixed
rename-media-file commits, which previously failed after copying and discarded the copied file, and corrected expired-backup cleanup history timing.
- Restructured the admin tools page into two audience tabs: a one-screen Overview for site owners and task-based sub navigation for developers.
- Added five machine-readable workflow recipes (article-production, media-seo-handoff, media-governance-scan, site-operations-scan, diagnostics-triage) with replay-fixture locks.
- Documented the host-agnostic Host Approval Contract for governing write and destructive commits.
- Added ability response-shape registration and scope-semantics contract drift gates.
- Backfilled the bundled zh_CN locale to full parity.
0.5.5
- Isolate the packaged Plugin Check regression test from inherited local WordPress CLI runtime settings.
0.5.4
- Added bounded media backup retention cleanup and preserved exact-manifest batch backups until explicit operator confirmation.
- Aligned cleanup cron registration with the enabled write package and cleared it during uninstall.
- Required semantic body evidence for internal-link candidates and kept final application in the visible editor.
- Added canonical media fingerprints and replacement lineage to governed media operations.
0.5.3
- Corrected the minimum WordPress version to 6.9 and added a real minimum-version release smoke.
- Made Toolkit the canonical owner of reusable static workflow definitions without adding workflow runtime state.
- Replaced the raw ability-count gate with representative contract assertions and documented WordPress Core convergence rules.
- Made write and destructive callbacks fail safe unless commit intent is explicit and host-governed.
- Restricted post-meta reads to explicit non-sensitive keys and required host allowlists for setting patch targets.
- Validated remote media before uploads, removed the obsolete in-memory fallback, and redacted reversible setting fragments.
- Added internal autoloading, lazy package construction, and a cold-bootstrap performance budget.
- Removed the incomplete bundled Traditional Chinese starter locale until it can be maintained as a complete pack.
0.5.2
- Added read-only review artifacts for image candidates, internal link candidates, taxonomy suggestions, and comment reply suggestions.
- Kept candidate review helpers suggestion-only and host-governed; they do not create proposals, approve work, execute writes, or contact external providers.
- Expanded acceptance contracts and first-party pack documentation for the new handoff artifacts.
0.5.1
- Added Composer dependency advisory audit to the default local and CI source gate.
- Aligned CI and PHPStan with the package PHP 8.0 runtime floor.
- Published the canonical public GitHub repository and documented the post-publication gate baseline.
- Upgraded GitHub Actions checkout to the Node 24-compatible
actions/checkout@v5.
0.5.0
- Improved the admin page as a connection and discovery surface with clearer package status, catalog navigation, copyable REST endpoints, and two bounded read-only checks.
- Added bundled translation templates and starter locale packs for the admin connection/discovery surface, API ability labels/descriptions, and common runtime error messages.
- Removed development demo ability controls from the admin page and kept showcase, model-call, write, and workflow execution outside this package surface.
- Renamed nonproduction cleanup abilities and media cleanup inputs to avoid public
test terminology in released ability ids and schema fields.
- Added taxonomy assignment proposal support and strengthened Core consumer handoff checks for harvested workflow surfaces.
- Hardened media replacement and Cloud derivative adoption previews so approved replacements can repair exact post-content media URLs, including old intermediate-size URLs.
- Documented the foundation-layer testing strategy and default local source gate.
0.4.0
- Added read-only host composition recipe metadata discovery abilities and public PHP helpers.
- Added Core governance handoff documentation, a catalog snapshot fixture, a permission matrix, and a schema boundary audit.
- Hardened write-like contracts with
requires_approval, explicit dry-run and commit defaults, and bounded idempotency keys.
- Expanded REST verification coverage for governance metadata and schemas.
- Added a consumer example for preparing Core proposal payloads from discovered ability contracts.
0.3.0
- Added package and sub-pack filters so hosts can keep a full catalog by default or opt into a light
core_wordpress_read profile.
- Kept public third-party helpers read-only/write-proposal oriented and documented that final commit authorization belongs to the host runtime.
- Made Npcink AI catalog projection thin by default and added a projection-row filter for host-owned policy expansion.
- Established
npcink-abilities-toolkit/* as the canonical id namespace for abilities owned by this plugin.
- Added explicit read/comment sub-pack maps as the split point for future source-file extraction.
- Verified Npcink AI catalog compatibility against a WordPress site.
0.2.0
- Stabilized the public helper contract and ability metadata rules.
- Documented host-governed write/destructive semantics and the Npcink AI integration boundary.
- Added first-party ability pack grouping and 0.2 candidate verification evidence.
- Strengthened lightweight tests for schema controls, Npcink catalog projection, provider defaults, and invalid ability ids.
- Verified WordPress REST coverage and Npcink AI consumer split-boundary checks.
0.1.0
- Initial standalone release.
- Added migrated WordPress read abilities, deterministic comment helpers, host-governed write/destructive abilities, and standalone redacted WordPress diagnostics.