Skip to content

Releases: WordPress/ai

1.4.0

Choose a tag to compare

@jeffpaul jeffpaul released this 05 Oct 19:52
e44ed49

Added

  • When comment moderation is run, calculate a value score, providing a relevance signal (0–1) for each comment based on how substantive and on-topic it is relative to the post it was left on. Show this score in a new column on the comment screen (#681).
  • New experiment, Markdown Feeds, that creates markdown feeds at /feed/markdown/ (available in every feed context) and of individual posts and pages via ?output_format=markdown (#855).
  • User-triggered retry for Content Translation if it fails (#941).
  • Limit comment moderation bulk analysis queue size (#972).
  • Storage and CRUD layer for embedding vectors (new wpai_embeddings table) that can be used to recording the provider and model alongside every vector (#976).
  • 9 new default target languages to the Content Translation experiment (#986).
  • Guideline categories support to the Content Translation Ability (#987).
  • New Vector_Math and Vector_Ranker classes, allowing users to run similarity and ranking queries against vectors (#993).
  • Loading indicator for type-ahead suggestion requests (#1029).
  • Integrate Alt Text Generation with the Image block’s decorative setting (#1031).

Changed

  • Bump minimum supported WordPress version to 7.0.3 (#1001).
  • Display specific taxonomy labels in Content Classification notice error messages instead of generic terminology (#916).
  • Show a notice and disable title translation when the post title is too short (#967).
  • Update to the latest version of the embedding code from the
    PHP AI Client (#975).
  • Our generate_embeddings helper function now requires a
    specific embedding model. Pass model (a model ID or a ModelInterface
    instance) and, for a model ID, the provider that offers it. This is a
    breaking change for anyone that happened to start using this function (#975).
  • Update Settings vertical ellipsis icon to tool icon (#1001).
  • The core/read-content and core/read-users abilities are renamed to core/content-query and core/users-query. The old names keep working as deprecated aliases for now (#1002).
  • Use gpt-image-2.5-flare as our default OpenAI image generation model (#1023).
  • The core/read-settings ability has been renamed to core/settings-get. The old name keeps working as a deprecated alias for now (#1087).

Deprecated

  • The ai/get-post-details ability. Use the single-post mode of core/content-query instead (#1002).

Removed

  • Unnecessary URL validation that is now handled by WordPress core (#1011).
  • The Enable AI header toggle from the AI settings page (#985).

Fixed

  • Ensure focus moves to the Accept button when content generation completes in the Content Resizing modal (#917).
  • Increase the default request timeout from 5 seconds to 30 seconds when Core revalidates API keys. If this validation request times out, Core will delete the API key so this is an attempt to fix that (#947).
  • Cached the active SEO plugin detection - with a TTL and immediate invalidation on any plugin activation/deactivation - so meta description meta-key lookups no longer re-scan active plugins on every request (#973).
  • Improves the Content Translation loading animation to preserve existing text and background colors (#977).
  • Settings page failing to render on Gutenberg 23.9+ after @wordpress/dataviews was removed from the private-apis allowlist (#989).
  • Ensure our guidelines integration reads published guideline rows from the wp_knowledge post type instead of the removed wp_guideline so those work with the latest version of Gutenberg. We don't migrate data from the old post type and taxonomy to the new so anyone that had previously set guidelines in an older version of Gutenberg will need to re-add those (#988).
  • Import core's prefixed PSR EventDispatcher in the vendored EmbeddingBuilder (#1005).
  • Reserve space for type-ahead text generation when caret is at the end (#1008).
  • Updated the settings page container min-height so that it spans the full viewport height (#1013).
  • Fix focus style on collapsible card by updating the @wordpress/dataviews package to latest version (#1035).
  • AI Request Logs now records HTTP error responses (4xx/5xx) from providers as error with the status code and message, instead of success; Gemini text generation requests are no longer mislabeled as Metadata (#1040).
  • Hide the "Suggest Reply" button when the inline comment form is in Quick Edit mode (#1049).
  • Editorial Notes only reviewing template blocks when "Show template" mode is enabled in the block editor (#1053).
  • Insert the generated summary into the post content when Show template is enabled (#1055).
  • Aligned the focus styles of Content Classification suggestion pills with the core Button component (#1060).
  • Connector Approvals no longer blocks core's connector key check by attributing it to the provider plugin or to Gutenberg (#1070).
  • Abilities Explorer no longer crashes when an ability's input property lists several types (#1073).
  • Preserve HTML entities and text between shortcodes when normalizing content, while still encoding entity-encoded tags (#1077).
  • Prevent options.php validation error when saving general settings with abilities active (#1080).
  • Ensure post titles, the site tagline and excerpts no longer contain HTML entities in the markdown feeds (#1086).
  • Ensure markdown feeds don't 404 when the rewrite rules were rebuilt without the feed in place (#1110).

Security

  • Ensure we check for the moderate_comments capability before we allow bulk comment moderation and then check for the edit_comment capability for each individual comment that is being moderated (GHSA-pjw7-q94g-4q34).
  • Harden the Playground preview publishing workflow to derive pull request and commit metadata from the triggering workflow run (#978).
  • Harden JSON data parsing on admin screen (#991).

Developer

  • Credits updates (#959).
  • Update plugin screenshots (#960).
  • Update documentation (#969, #990, #1057, #1078, #1082, #1088).
  • Add multisite PHPUnit coverage to CI (#974).
  • Stop measuring vendored SDK code as this plugin's test coverage (#1007).
  • Added unit test coverage for Admin\Deactivation, Admin\Upgrades\Abstract_Upgrade, Logging\AI_Request_Log_Page, Logging\AI_Request_Log_Schema, and Logging\Logging_Integration (#1022, #1033, #1038, #1051, #1056).
  • Update the Playground artifact helper to v4 (#1043).
  • Updated minimum Node.js version to 24.18 and npm to 11.16, matching WordPress Core and Gutenberg (#1067).
  • Shard the E2E suite across three CI jobs and cache node_modules (#1076).
  • Bump brace-expansion from 2.1.2 to 2.1.7, brace-expansion from 1.1.16 to 1.1.21, brace-expansion from 5.0.9 to 5.0.12, brace-expansion from 2.1.4 to 2.1.7 and brace-expansion from 5.0.7 to 5.0.12 (#1097).
  • Bump codecov/codecov-action from 7.0.0 to 7.1.1 (#1039).
  • Bump colord from 2.9.3 to 2.10.0 (#1093).
  • Bump `...
Read more

1.3.0

Choose a tag to compare

@jeffpaul jeffpaul released this 18 Aug 21:04
fc115ba

Added

  • New Experiment: Content Translation; translates Paragraph and Heading blocks—and optionally the post title—into a selected language directly from the post editor (#747).
  • New Experiment: Slug Generation; suggest SEO-friendly permalinks that can be set as the slug (#897, #932).
  • New Experiment: Custom Abilities. Gates the plugin's custom WordPress Abilities (ai/get-post-details, ai/get-post-terms, core/read-settings, core/read-users, core/read-content) behind a single opt-in toggle, so enabling it exposes all of them at once via the Abilities API. Note for anyone that is using these Abilities, you'll need to enable this new experiment first for those to be available (#881).
  • New Developer Tool: Import/Export functionality for non-sensitive AI settings (#734).
  • Cleanup plugin data when the plugin is deleted (#692).
  • AI-specific Site Health integration and status tests (#734).
  • New filters, wpai_content_classification_available_terms, wpai_content_classification_min_confidence and wpai_content_classification_candidate_pool_size, to allow more control over Content Classification (#633).
  • Prompt template extension points, making it easy for others to filter prompts and prompt builders (#770).
  • Brought the embedding code over from the PHP AI Client and load that conditionally so those using the AI plugin can start to take advantage of embedding generation (#892, #946).
  • Public WordPress\AI\log_ai_request() API so MCP servers and ability consumers can record requests in the AI Request Log (#914).

Changed

  • Updated all meta keys to use the wpai_ prefix instead of just ai_. Note this changes the prefix on the ai_generated, ai_generated_summary and ai_note meta so if you are directly using those, update to using the wpai_ names (#867).
  • Updated preferred models to more recent ones for the three default providers (#913).
  • Bump WordPress tested-up-to version 7.1 (#934).
  • Improve the relevance of category and tag suggestions produced by the
    Content Classification experiment (#633).
  • Editorial Updates now links to the visual revisions screen when reviewing refined content, falling back to the classic revisions screen when visual revisions are unavailable (#861).
  • Reordered setting experiments list; grouped linked experiments and sorted editor experiments alphabetically (#871).
  • Improved keyboard focus handling when generating, accepting, or dismissing classification suggestions (#873).
  • The Abilities Explorer provider filter dropdown now includes custom providers, and the overview statistics count abilities by origin so custom-provider abilities remain in their Core/Plugins/Theme bucket (#884).
  • Set focus to the generated title textarea when generating a title (#901).
  • The core/read-users ability now returns collections ordered by display name, A to Z (#948).

Deprecated

  • The AI_Service class and the get_ai_service() helper introduced in 0.2.1 will be removed in the next major release. Neither is used anywhere in the plugin; experiments and abilities call wp_ai_client_prompt() directly (#905).
  • Filter wpai_meta_description_result_temperature is no longer being used and will be removed in the next release (#913).

Removed

  • No longer set custom temperature values on any of our requests (#913).

Fixed

  • The AI Request Log REST endpoint now registers its operation filter parameter, so it appears in the REST schema and a non-string value returns a 400 instead of causing a fatal error (#758).
  • Inline reply textarea not receiving focus after generating a suggested reply (#877).
  • Meta Description suggestions applied on pages and custom post types were lost on save when Yoast SEO was active (#886).
  • Improved accessibility and keyboard usability for the request logs provider/model details (#889).
  • Improved keyboard and focus handling for the Suggest Reply tone dropdown (#907).
  • Synchronized generating state across the inline and modal excerpt generation buttons (#908).
  • Ensure caller detection in the encryption experiment properly matches the calling plugin, not the host plugin (#909).
  • Synchronized loading state between the sidebar and block toolbar regenerate summary buttons (#912).
  • Preserve inline HTML when resizing content (#915).
  • Bulk actions no longer re-run when sorting or paginating the list after the action completes (#928).
  • Apply editorial updates to blocks that store editable text in the value attribute (#930).

Security

  • Ensure any content we render from the LLM or content we send to the LLM is properly sanitized (#950).
  • Add proper nonce check prior to bulk alt text and summarization generation (GHSA-hfp9-55vw-ccjc).
  • When passing a custom image URL to the Alt Text Generation Ability, ensure that URL is public, that it points to an allowed image type and that the final URL we download matches the initial one we verify (GHSA-v2wx-9j88-4rqq).

Developer

  • New filter, wpai_bulk_action_max_items, allowing you to control how many items are processed in a single bulk action (GHSA-hfp9-55vw-ccjc).
  • New filters, wpai_alt_text_allowed_image_mime_types``, wpai_alt_text_image_download_timeout and wpai_alt_text_image_max_download_bytes, that allow more fine-grained control when a custom image URL is passed to the Alt Text Generation Ability (GHSA-v2wx-9j88-4rqq).
  • Removed unnecessary any casts to improve TypeScript type safety (#878).
  • Update plugin screenshots (#882).
  • Documented the Key Encryption threat model: what encrypting API keys at rest does and does not protect against, and why the caller-supplied plugin context is a namespace-collision guard rather than an isolation boundary between plugins (#909).
  • The secrets_accessed and secrets_{$operation} actions now receive a backtrace-derived detected_plugin alongside the caller-asserted plugin value, so audit consumers can attribute operations and flag a mismatch (#909).
  • Ensure our IPv4-in-IPv6 address check works for PHP <8.3 (#952).
  • Bump actions/checkout from 7.0.0 to 7.0.1 (#894).
  • Bump actions/setup-node from 6.4.0 to 7.0.0 (#894).
  • Bump automattic/vipwpcs from 3.0.1 to 3.1.0 (#919).
  • Bump concurrently from 10.0.3 to 10.0.4 (#902).
  • Bump fast-uri from 3.1.3 to 3.1.5 (#904, #927).
  • Bump fast-xml-parser from 5.10.0 to 5.10.1 (#903).
  • Bump ip-address from 10.2.0 to 10.5.0 (#925).
  • Bump phpstan/phpstan from 2.2.5 to 2.2.8 (#910, #936).
  • Bump phpstan/phpstan-deprecation-rules from 2.0.4 to 2.0.5 (#910).
  • Bump phpstan/phpstan-phpunit from 2.0.17 to 2.0.18 (#879).
  • Bump @playwright/test from 1.61.1 to 1.62.1 (#920).
  • Bump postcss from 8.5.19 to 8.5.26 (#926).
  • Bump shell-quote from 1.8.4 to 1.9.0 (#902).
  • Bump softprops/action-gh-release from 3.0.1 to 3.0.2 (#894).
  • Bump @wordpress/admin-ui from 2.4.0 to 2.7.0 (#880, #896, #921).
  • Bump @wordpress/build from 0.18.0 to 0.20.0 ([#895](https://github.com...
Read more

1.2.0

Choose a tag to compare

@jeffpaul jeffpaul released this 14 Jul 20:12
a5fc8f6

Added

  • New Experiment: Suggest Reply; gives comment moderators a quick way to generate a reply to a comment through the admin (#724).
  • New "Advanced settings" option in Developer Tools to show/hide additional configuration options for features and experiments (#842).
  • Bulk "Generate AI Summary" action to the posts and pages list table, enabling summary generation for multiple posts at once (#650).
  • New core/read-content Ability with secure single-post and query modes (including include and opt-in fields) to enable read-only content access (#739).
  • New core/read-users Ability that retrieves a single user by ID, email, login, or nicename, or a filtered and paginated users collection, with sensitive fields opt-in and permission-gated (#774).
  • An inline admin notice when Connector Approvals are enabled and no AI connectors are yet approved, prompting admins to approve the AI plugin for use (#830).
  • Introduce new wp_ai_client_default_request_timeout filter to make the default request timeout configurable. Use this for the image generation request timeout (#862).

Changed

  • Content Summary block detection now checks within nested blocks (#810).
  • Move all existing configuration options into a new "Advanced settings" section which is hidden by default (#842).

Fixed

  • Focus restoration after AI setting saves (#812).
  • Added descriptive alt text to AI Home feature card images for improved screen reader accessibility (#819).
  • Prevent Type-Ahead assets from loading on the front end (#820).
  • Dismissing a type-ahead suggestion with escape should not trigger a new suggestion request (#840).
  • Type-ahead ghost text placement and stale suggestions overlapping empty-block placeholders (#847).
  • MutationObserver crash when editor iframe body isn't ready when using Title Generation (#849).
  • Respect an explicit show_in_abilities value on curated settings, and leave the flag to WordPress core once core declares it (#852).
  • Register initial settings before core/read-settings snapshots them (#856).

Developer

  • Increased test timeout from 20m to 30m (#811).
  • Updated Excerpt Generation E2E selectors to use Playwright user-facing attributes (#813).
  • Fix feature request issue template formatting (#814).
  • Update type-ahead E2E selectors to use Playwright user-facing attributes (#817).
  • Update Alt Text Generation E2E selectors to use Playwright user-facing attributes (#828).
  • Pin NPM package versions and update dev-dependencies (#831).
  • Updated and added screenshots/casts (#838).
  • Updated Meta Description E2E selectors to use Playwright user-facing attributes (#843).
  • Updated Connector Approvals E2E selectors to use Playwright user-facing attributes (#850).
  • Register core ability categories once in the bootstrap test file (#854).
  • Added docs on becoming a Maintainer (#857).
  • Updated Content Classification E2E selectors to use Playwright user-facing attributes (#859).
  • Standardize E2E snackbar locators to use data-test-id (#860).
  • Bump actions/cache from 5.0.5 to 6.1.0 (#821).
  • Bump phpstan/phpstan-phpunit from 2.0.16 to 2.0.17 and phpstan/phpstan from 2.2.2 to 2.2.5 (#836).
  • Bump @wordpress/admin-ui from 2.0.0 to 2.4.0 and @wordpress/ui from 0.12.0 to 0.15.1 (#837).
GitHub-generated release notes

New Contributors

Full Changelog: 1.1.0...1.2.0.
View all items closed in the milestone.

1.1.0

Choose a tag to compare

@jeffpaul jeffpaul released this 01 Jul 00:07
0f43e3c

Added

  • New Experiment: Type Ahead; automatically suggests ghost text at the end of paragraphs, can be manually triggered within a paragraph (#151, #776).
  • New Experiment: Key Encryption; encrypts AI Connector API keys before storing them in the database (#560).
  • Ensure all Features that rely on utilizing content are disabled until minimum content thresholds are met (#581).
  • New core/read-settings Ability (#691, #806).
  • New wpai_has_image_generation_support filter that allows 3rd parties to claim support for Image Generation, for example if authenticating without an API key (#748).
  • New setting to choose if guest comments should be moderated or not, defaulting to yes (#751).
  • Explicit save button to developer settings panel, requiring a user to click save before the Provider and Model settings are saved (#761).
  • Documentation callouts that the plugin has targeted support for the Block Editor only (#766).

Changed

  • Note prompting the user to save after running Editorial Notes (#682).
  • Use __next40pxDefaultSize for buttons consistently (#702).
  • Skip Comment Analysis and Moderation when comment has already been flagged as spam/trash (#743).
  • Replace developer mode settings CSS with Stack component (#785).
  • Use character-based count instead of word-based to determine when features are available to use (#802).
  • Use Notice component to display warnings within experiment modals (#803).
  • Added success snackbar when saving or resetting developer settings (#807).

Fixed

  • Add wordCountType to check for user's locale and update to count character or words when detecting minimum content length (#581).
  • Restrict Content Resizing to REST-exposed post types when a post ID is provided (#658).
  • Only show Editorial Updates button when pending Notes are linked to current blocks (#682).
  • Hide developer settings on stable Features when AI is disabled (#737).
  • Improve readability of Ability Explorer schema output by preventing unicode escaping for non‑ASCII characters (#740).
  • The "Last 30 Days" summary period in the AI Requests Logs page now uses a fixed 30-day window so the summary cards and logs table cover the same span (#753).
  • Developer Tools popover overlapping the WP admin bar (#756).
  • Persistence of suggested terms when running the Content Classification experiment (#769).
  • Restored term suggestion pills to their original positions if the backend term assignment API fails, resolving stale state race conditions (#772).
  • Preserve omitted runAbility() input so ability schema defaults can apply when abilities are invoked without input (#775).
  • Ensure scalar input schemas are allowed in the Abilities Explorer validation (#787).
  • Standardize the Title Generation button text (#790).
  • Scope the Editorial Note generation loading spinner only to the block currently being reviewed (#794).
  • Snackbar notifications no longer overlap the settings content; they are pinned to the bottom-left of the content area (#801).

Developer

  • Skip push-triggered CI workflows on forks (#722).
  • Remove any type assertions from notices store dispatches (#725).
  • Fix link to AI plugin roadmap view on the GitHub Project board (#742).
  • Updated Content Summarization E2E selectors to use Playwright user-facing attributes (#762).
  • Updated Title Generation and Editorial Notes E2E selectors to use Playwright user-facing attributes (#773).
  • Extracts repeated inline Developer Tools menu interactions for E2E tests into reusable utility functions (#786).
  • Update Issue templates (#796, #804).
  • Playground PR link now redirects users to /wp-admin/admin.php?page=ai-wp-admin (#797).
  • Bump phpstan/phpstan from 2.2.1 to 2.2.2 and phpstan/php-8-stubs from 0.4.35 to 0.4.36 (#744).
  • Bumps shivammathur/setup-php from 2.37.1 to 2.37.2 and codecov/codecov-action from 6.0.1 to 7.0.0 (#745).
  • Bump @wordpress/build from 0.16.0 to 0.16.1 (#754).
  • Bump wp-phpunit/wp-phpunit from 6.9.4 to 7.0.0 (#779).
  • Bump actions/checkout from 6.0.3 to 7.0.0 and softprops/action-gh-release from 3.0.0 to 3.0.1 (#780).
GitHub-generated release notes
  • Check REST visibility for content resizing posts by @yusufhay in #658
  • Fix[Editorial Notes]: Clarify Editorial Notes save flow and hide stale updates action by @yogeshbhutkar in #682
  • UI: Use __next40pxDefaultSize for buttons consistently by @yogeshbhutkar in #702
  • Fix: Load wp-dataviews translations on the AI Request Log page by @i-anubhav-anand in #723
  • Code Quality: Remove any type assertions from notices store dispatches by @yogeshbhutkar in #725
  • Fix: locale-aware (words/characters) minimum content length across AI content experiments by @hbhalodia in #581
  • Hide visual card developer settings when AI is disabled by @ekamran in #737
  • Fix Persian/RTL characters display in Ability Explorer schemas by @kabookhypnosis in #740
  • Update GitHub Project Board link in README by @jeffpaul in #742
  • fix(deps-dev): bump the composer-dev-minor-patch group with 2 updates by @dependabot[bot] in #744
  • chore(ci): bump the github-actions-updates group with 2 updates by @dependabot[bot] in #745
  • fix: Developer Tools popover overlapping the WP admin bar by @Infinite-Null in #756
  • AI Request Logs: use a fixed 30-day window for the "Last 30 Days" summary period by @i-anubhav-anand in #753
  • Skip Comment Moderation Analysis if marked as spam/trash by @Intenzi in #743
  • Comment Moderation Exp: Add toggle to enable/disable guest comments automatic moderation by @Intenzi in #751
  • Add a core/settings ability by @jorgefilipecosta in #691
  • Update @wordpress/build dev dependency from 0.16.0 to 0.16.1 by @prasadkarmalkar in #754
  • E2E[Content Summarization]: Prefer user-facing attributes by @yogeshbhutkar in #762
  • Add editor support to readmes by @jeffpaul in #766
  • Persist Suggested Tags, Categories in Content Classification experiment by @Intenzi in #769
  • Fix[Image Generation]: Detect support for connectors that authenticate without an API key (e.g. OAuth) by @diarmuidie in #748
  • Add save button to developer settings panel (Provider/Model selectors) by @Infinite-Null in #761
  • Add Type Ahead experiment by @Jameswlepage in #151
  • chore(ci): bump the github-actions-updates group with 2 updates by @dependabot[bot] in #780
  • fix(deps-dev): bump wp-phpunit/wp-phpunit from 6.9.4 to 7.0.0 by @dependabot[bot] in #779
  • E2E[Title Generation|Editorial Notes]: Prefer user-facing attributes by @yogeshbhutkar in #773
  • Ensure the Type Ahead experiment supports provider/model overrides and Guidelines by @dkotter in #776
  • Code Quality: Extract model selection helpers for E2E tests by @Infinite-Null in #786
  • Convert feature request to YML format by @jeffpaul in #796
  • Settings: replace CSS with Stack component by @simison in #785
  • ci: skip push-triggered checks on for...
Read more

1.0.2

Choose a tag to compare

@jeffpaul jeffpaul released this 16 Jun 18:27
e2a60fc

Added

  • Manual refresh button to the AI Request Logs table header (#687).
  • New ai_generated param on our Image Import Ability to set if the imported image was AI generated or not (GHSA-42mg-ffvx-4xff).

Changed

  • Ensure Editorial Notes and Editorial Updates controls stay grouped together in the post editor sidebar (#605).
  • Use explicit UTF-8 encoding for generated Meta Description character counts (#655).
  • Return a consistent decorative flag from Alt Text Generation results (#659).
  • Show an error message immediately in the Image Generation UI when there's no AI Connector in place that supports image generation (#679).
  • Use a neutral icon for disabled Features and Experiments in the AI Status widget (#720).

Fixed

  • Abilities Explorer schema validation (#612).
  • Alt Text Generation button becomes unresponsive after using Next/Previous in the media modal (#631).
  • Add descriptive accessible labels to approval matrix toggle controls (#637).
  • Added accessible labels to the Provider and Category filter dropdowns on the Abilities Explorer page (#642).
  • Lost focus after generating a Title (#644).
  • Lost focus when generating Alt Text in Image block inspector controls (#645).
  • Lost focus when toggling the Connector Approval state (#646).
  • Lost focus after generating Images (#647).
  • Added an accessible label to the ability test payload textarea in the Abilities Explorer (#649).
  • Excerpt generation post context payload (#651).
  • Clear out the Meta Description suggestion when the modal closes (#653).
  • Lost focus after running Content Resizing actions (#663).
  • Column reordering and hiding in the AI Request Logs table now persists instead of resetting to the default (#669).
  • Summary statistics showing zero for short time periods on non-UTC MySQL servers (#671).
  • UI inconsistency on AI Request Logs page (#676).
  • Ensure thinking tokens are counted in AI Request Logs (#680).
  • Ensure the Ability schemas and outputs are valid JSON Schema for strict REST and MCP consumers (#688).
  • Title Generation button disappears after toggling off "Show template" (#694).
  • Prevent accidental interactions and stale feedback in the Meta Description Generation modal and improve focus handling (#696).
  • Ensure focus isn't lost after generating an Excerpt inline (#698).
  • AI Request Logs: "Copy Log ID" gives no feedback when copied (#700).
  • AI Request Logs: main header overlapping table header (#705).
  • Allow users to clear an applied Meta Description while preventing whitespace-only descriptions (#706).
  • Rename unforwarded MaskCanvas component function to InnerMaskCanvas to avoid duplicate declarations (#713).

Security

  • Remove the meta param from our Image Import Ability (GHSA-42mg-ffvx-4xff).
  • Check the current user's capabilities and the comment type before setting an Editorial Note (GHSA-j7hg-vqpw-f98f).

Developer

  • Clarify AI Connector provider setup documentation (#638).
  • Add @WordPress/ai-maintainers team (#677).
  • Removes the ready_for_review pull request event from the Test and Plugin Check GitHub Actions workflows (#703).
  • Bump tmp from 0.2.5 to 0.2.7 (#630).
  • Bump phpstan/php-8-stubs from 0.4.34 to 0.4.35 (#635).
  • Bump phpstan/phpstan from 2.1.54 to 2.2.1 (#635, #672).
  • Bump codecov/codecov-action from 6.0.0 to 6.0.1 (#636).
  • Bump WordPress/action-wp-playground-pr-preview to latest version (#673).
  • Bump actions/checkout from 6.0.2 to 6.0.3 (#707).
  • Bump wordpress/plugin-check-action from v1.1.6 to v1.1.7 (#726).
  • Update NPM dev-depependencies (#712).
GitHub-generated release notes
  • fix(deps): bump tmp from 0.2.5 to 0.2.7 by @dependabot[bot] in #630
  • Fix[Alt Generation]: Generate button becomes unresponsive after using Next/Previous in media modal by @yogeshbhutkar in #631
  • chore(ci): bump codecov/codecov-action from 6.0.0 to 6.0.1 in the github-actions-updates group by @dependabot[bot] in #636
  • fix(deps-dev): bump the composer-dev-minor-patch group with 2 updates by @dependabot[bot] in #635
  • Group Editorial Notes and Updates controls in editor sidebar by @macayu17 in #605
  • Fix: Add accessible labels to filter select elements in Abilities Expâ€Ķ by @Trushiv04 in #642
  • Fix: a11y: Add focus button back to generate/regenerate button on alt text generation by @hbhalodia in #645
  • Fix: a11y: Connector Approval Matrix input toggle button by @hbhalodia in #646
  • Fix Abilities Explorer schema constraint validation by @ekamran in #612
  • Fix: a11y Add focus again to Generate Title button on modal close by @hbhalodia in #644
  • Fix: Add accessible labels to ToggleControl in Connector Approvals matrix by @ishitaj34 in #637
  • Fix: Add accessible label to ability test payload textarea in Abilitiâ€Ķ by @Trushiv04 in #649
  • Fix excerpt generation post context payload by @ekamran in #651
  • Return decorative flag for generated alt text by @yusufhay in #659
  • Fix canceled meta description suggestion state by @ekamran in #653
  • fix(deps-dev): bump phpstan/phpstan from 2.1.55 to 2.2.1 in the composer-dev-minor-patch group by @dependabot[bot] in #672
  • chore(ci): bump WordPress/action-wp-playground-pr-preview from c8607529dac8d2bf9a1e8493865fc97cd1c3c87b to 5e92f5e3c80d06126f22e83e4bb21221fbbd3e7f in the github-actions-updates group by @dependabot[bot] in #673
  • Fix meta description UTF-8 character count by @yusufhay in #655
  • AI Request Logs: column “move left / move right” has no effect by @Trushiv04 in #669
  • Fix: UI: AI Request Logs: page background inconsistent with other admin screens and DataView border radius clipped by @hbhalodia in #676
  • Add maintainers section to README by @jeffpaul in #677
  • Fix: Summary counters show zero for “Last Hour” when requests are recent in AI Request Logs by @prasadkarmalkar in #671
  • [Image Gen]: Improve focus handling in image generation flows by @yogeshbhutkar in #647
  • Fix: AI Request Logging: token count understated for thinking models (thoughtsTokenCount ignored) by @prasadkarmalkar in #680
  • Add refresh button to AI Request Logs table header by @prasadkarmalkar in #687
  • [Content Resizing]: Fix focus loss when regenerating content resizing suggestions by @yogeshbhutkar in #663
  • Update output schema for get-post-terms ability and sanitize image_url in Alt_Text_Generation by @the-hercules in #688
  • Fix: Title Generation: toolbar button disappears after toggling "Show template" off (normal editing mode), until reload by @hbhalodia in #694
  • Clarify AI Connector provider setup by @ekamran in #638
  • Fix[Meta Description]: Improve Copy and Focus Behavior by @yogeshbhutkar in #696
  • Fix[Excerpt]: Preserve Focus During Generate and Regenerate Actions by @Infinite-Null in #698
  • Gate image gene...
Read more

1.0.1

Choose a tag to compare

@jeffpaul jeffpaul released this 27 May 22:09
a0ed736

Added

  • New helper functions that are used to determine if we have valid AI Connector credentials (#603).
  • New helper methods, is_globally_enabled and is_individually_enabled to help tell if a feature is enabled individually or if features are globally enabled (#604).

Changed

  • Removed the description from the Abilities listing within the Abilities Explorer (#592).
  • Filter Guideline queries by the guideline type content (#593).
  • Use the new has_connector_authentication instead of is_connector_configured to avoid unnecessary API requests (#603).

Removed

  • Deprecated __nextHasNoMarginBottom prop (#609).

Fixed

  • Utilize a new is_connector_configured function to properly determine if a connector is configured, whether via an API key, constant or ENV var (#537).
  • "Generate Editorial Note" button appearing in the block settings menu during post revisions (#591).
  • If the Connector Approvals experiment is turned on, ensure we don't over-aggressively block functionality in the AI plugin that isn't actually making requests, like Request Logging (#595).
  • Better matching of the originating code when the Connector Approvals experiment is on (#595).
  • Focus loss issues when interacting with Purge actions in the Request Logs experiments page (#599).
  • Disable the "Purge All" button when no logs are available to purge (#599).
  • AI Status feature checklist properly shows if an individual feature is enabled even if globally features are disabled (#604).
  • Ensure focus isn't lost when buttons enter disabled state during Alt Text Generation, Content Classification, Content Summarization, Excerpt Generation, Featured Image Generation, and Title Generation (#608, #611).
  • Settings page strings, which are enqueued as script modules, are now localized at runtime (#613).
  • Connector Approvals "Dismiss" button failing for pending requests whose key contains a slash (#615).
  • Hide empty provider capabilities section in the dashboard widget (#616).
  • Playground and test configs now target the latest WordPress release instead of the beta release (#626).
  • Connector Approvals notice no longer overlaps the page header on the AI Request Logs screen (#628).

Developer

  • Corrected installation instructions in readme (#620).
  • Bump @wordpress/build from 0.13.0 to 0.14.0 (#606).
  • Bump @wordpress/scripts from 32.1.0 to 32.2.0 (#606).
GitHub-generated release notes
  • Fix AI credentials detection by @LukasFritzeDev in #537
  • Filter Guidelines service queries by content guideline type by @gziolo in #593
  • [Request Logs]: Fix focus loss on interaction with Purge Actions by @yogeshbhutkar in #599
  • Fix: Hide "Generate Editorial Note" option in Revisions mode by @prasadkarmalkar in #591
  • Fix readme connector setup wording by @1d0u in #620
  • Better connector approval matching by @dkotter in #595
  • Fix connector approval dismiss for keys containing slashes by @t-hamano in #615
  • Localize wp-build script module strings on the settings page by @t-hamano in #613
  • Code Quality: Remove deprecated __nextHasNoMarginBottom prop by @yogeshbhutkar in #609
  • Fix: Focus loss when generation buttons enter disabled state by @ishitaj34 in #611
  • Hide empty provider capabilities section by @ekamran in #616
  • Fix: Abilities Explorer: Descriptions are excessively trimmed depending on the language by @hbhalodia in #592
  • Fix AI Status feature checklist state by @ekamran in #604
  • fix(deps-dev): bump the npm-dev-minor-patch group with 2 updates by @dependabot[bot] in #606
  • Change our AI connector check from looking at configuration to looking at if authentication is set by @dkotter in #603
  • Fix: Focus loss when button goes to disabled state by @hbhalodia in #608
  • fix: add inline class to connector approval admin notice for proper lâ€Ķ by @Malayt04 in #628
  • Fix WordPress 7.0 preview and test configs by @mehul0810 in #626
  • Release/1.0.1 by @jeffpaul in #629

New Contributors

Full Changelog: 1.0.0...1.0.1.
View all items closed in the milestone.

1.0.0

Choose a tag to compare

@jeffpaul jeffpaul released this 19 May 22:29
57846e1

Added

  • New Experiment: Request Logging that provides observability for all AI operations (#437).
  • New Experiment: Connector Approvals that allows administrators the ability to determine which plugins can access which AI connectors (#467).
  • Integrate Alt Text generation into the experimental media editor (#446).
  • Sorting and filtering in Comments screen by Toxicity and/or Sentiment (#518).
  • Toxicity and Sentiment labelling in admin dashboard for comments (#518).

Changed

  • Disable the Summarization button until content reaches a certain length (#492).
  • Refined image generation loading state (#512).
  • Featured image button now hides when image is already set (#512).
  • When no AI provider is configured and a feature is triggered, show actionable guidance directing users to configure an AI Connector (#523).
  • Update Meta Description loading state and remove duplicate heading in modal (#527).
  • Rename "Review Notes" experiment to "Editorial Notes" and "Refine from Notes" experiment to "Editorial Updates" (#528).
  • Keep comments without moderation metadata visible when sorting by Comment Moderation columns (#538).
  • Updated plugin banner and icons (#546).
  • Show a notice when a user has chosen a provider that no longer exists (#552).
  • When no provider is configured, show an error notice instead of an admin notice for alt text generation (#561).
  • Standardize error message text (#562).
  • Abilities Explorer page heading (#585).

Fixed

  • Ensure we properly use the new client-side Abilities API (#482).
  • Keep keyboard focus on the Provider select when resetting per-feature developer settings to default (#532).
  • Deduplicate provider API requests on the settings page when developer mode is toggled on (#542).
  • Update the Playground Preview workflow to use pluginData instead of pluginZipFile (#548).
  • Empty space shown for Model field when saved provider no longer exists in developer settings (#552).
  • Prevent analyzing newly inserted comments when no provider is configured (#554).
  • Ensure the meta description modal doesn't open if no provider is configured (#558).
  • False error for alt text generation on decorative images in media library (#559).
  • Show a failed badge when comment analysis fails (#568).
  • Correct RTL rendering of directional icons, runtime-set styles, and inline styles in the admin UI (#573).
  • Add notice to standalone image generation when there is no provider connected (#575).
  • Ensure we show a more specific error message when no valid AI connector is in place and we try to generate a featured image (#576).
  • Improve keyboard focus visibility for suggested term actions in content classification (#580).
  • User-facing text in several experiments is now fully translatable, and JS-side translations are loaded at runtime (#582).
  • Make title generation and content classification UI react to current editor state (#584).
  • Ensure global AI enabled options are migrated properly (#586).

Developer

  • Various documentation updates (#475, #501, #540, #550, #569).
  • Add an .npmrc config file (#535).
  • Add a 7 day cooldown period for GitHub Action updates triggered by Dependabot (#553).
  • Bump phpstan/phpstan from 2.1.51 to 2.1.54 (#524).
  • Bump @wordpress/build from 0.12.0 to 0.13.0 (#525).
  • Bump @wordpress/scripts from 32.0.0 to 32.1.0 (#525).
  • Bump dealerdirect/phpcodesniffer-composer-installer from 1.2.0 to 1.2.1 (#555).
  • Bump shivammathur/setup-php from 2.37.0 to 2.37.1 (#556).
  • Bump actions/dependency-review-action from 4.9.0 to 5.0.0 (#556).
  • Bump wordpress/plugin-check-action from 1.1.5 to 1.1.6 (#556).
GitHub-generated release notes
  • fix(deps-dev): bump phpstan/phpstan from 2.1.51 to 2.1.54 in the composer-dev-minor-patch group by @dependabot[bot] in #524
  • fix: refine image generation loading state and hide button when image set by @zeus2611 in #512
  • Enhance Summarization feature: add minimum content length filter and disable button for short content by @coderGtm in #492
  • Fix meta description loading state by @Deepam02 in #527
  • Keep focus on Provider select after Reset to default by @t-hamano in #532
  • Add sorting and filtering plus additional labelling to Comment Moderation by @Intenzi in #518
  • Rebuild the package-lock.json file by @dkotter in #533
  • fix(deps-dev): bump the npm-dev-minor-patch group across 1 directory with 2 updates by @dependabot[bot] in #525
  • Add an .npmrc config file by @dkotter in #535
  • Fix: Redundant API requests for providers on settings page when multiple features share the same capability by @hbhalodia in #542
  • Fix comment moderation sorting with missing meta by @ekamran in #538
  • Gracefully handle missing AI provider configuration by @Takshil-Kunadia in #523
  • Fix: Update PR Playground Preview workflow: Replace deprecated pluginZipFile with pluginData by @hbhalodia in #548
  • Docs: Fix: Inconsistent tabs spacing in docs/DEVELOPER_GUIDE.md file by @hbhalodia in #550
  • Docs: Update CONTRIBUTING.md to Include node and npm version requirement detail by @hbhalodia in #540
  • Fix automatic comment moderation without provider by @ekamran in #554
  • fix(deps-dev): bump dealerdirect/phpcodesniffer-composer-installer from 1.2.0 to 1.2.1 in the composer-dev-minor-patch group by @dependabot[bot] in #555
  • chore(ci): bump the github-actions-updates group with 3 updates by @dependabot[bot] in #556
  • Add a default cooldown of 7 days for GitHub Action updates by @dkotter in #553
  • Fix meta description no-provider modal by @ekamran in #558
  • Fix Alt-Text generation on decorative images resulting in false error message in Media Lib by @Intenzi in #559
  • Fix: Bug: Empty space shown for Model field when saved provider no longer exists by @hbhalodia in #552
  • Fix bulk alt text no-provider notice by @ekamran in #561
  • Normalize generation error notice messages by @ekamran in #562
  • docs: add and refine experiment documentation by @henryperkins in #501
  • Add missing experiment documentation pages and cross-links by @dilipom13 in #475
  • Add dev guide link to readme by @jeffpaul in #569
  • Fix failed comment moderation badge rendering by @ekamran in #568
  • [Feature][PoC]: Issue 325 | Experimental Media Editor | AI Alt Text by @TylerB24890 in #446
  • Fix JS translation loading and make all text translatable by @t-hamano in #582
  • Fix featured image no-provider notice by @ekamran in #576
  • Fix: Bug: Missing No-Provider UX Handling for Standalone Media Image Generation by @hbhalodia in #575
  • refactor: rename Review Notes → Editorial Notes, Refine from Notes → Editorial Updates by @zeus2611 in #528
  • fix(a11y): improve focus vis...
Read more

0.9.0

Choose a tag to compare

@jeffpaul jeffpaul released this 07 May 20:48
4498f98

Added

  • New Experiment: Comment Moderation to automatically moderate comments based on toxicity detection and sentiment analysis (#155, #516).
  • New Experiment: Content Resizing to shorten, expand, or rephrase selected block content (#331).
  • Developer Mode settings page toggle to set the desired provider and model per feature (#486).
  • WP-CLI command, wp ai alt-text generate, for bulk alt text generation (#436).
  • Basic styles for the Content Summary block (#510).

Changed

  • Compress the AI settings page by moving the global AI toggle into the header with an infotip (#455).
  • Update AI settings page to use @wordpress/ui components and related UI adjustments (#472, #488, #490, #491, #505, #519).
  • AI-generated images are now saved with descriptive, slugified filenames derived from the post title or prompt instead of ai-generated-image-<timestamp> (#471).
  • For image generation, set guidelines as part of the prompt instead of system instructions (#497).
  • Update the Content Summary experiment to render the summary in a Group variation block instead of a Paragraph variation block (#510).

Fixed

  • Standards compliance switch from the custom $builder->is_text_generation_supported() method with the abstract ensure_text_generation_supported() method (#465).
  • Ability schema JSON viewer now stays LTR under RTL admin languages (#485).
  • Ensure the Generate Image button doesn't render in contexts that aren't valid (#489).
  • Localize several user-facing fallback error strings in image-generation and summarization flows (#500).

Security

  • Bump serialize-javascript from 6.0.2 to 7.0.5 (#503).
  • Bump postcss from 8.5.10 to 8.5.14 (#503).
  • Bump minimatch from 3.0.8 to 3.1.4 (#503).

Developer

  • Ignore /.wp-env.test.override.json so local test-only wp-env overrides stay untracked (#484).
  • Add E2E coverage for Dashboard Widgets (#498).
  • Add custom experiment reference documentation for developers extending the plugin (#499).
  • Add squash merge commit approach to developer guide (#504, #511, #521).
  • Bump phpstan/phpstan from 2.1.46 to 2.1.51 (#468, #493).
  • Bump actions/setup-node from 6.3.0 to 6.4.0 (#469).
GitHub-generated release notes
  • chore(ci): bump actions/setup-node from 6.3.0 to 6.4.0 in the github-actions-updates group by @dependabot[bot] in #469
  • fix(deps-dev): bump phpstan/phpstan from 2.1.46 to 2.1.49 in the composer-dev-minor-patch group by @dependabot[bot] in #468
  • [Fix]: Meta Description Experiment | ensure_text_generation_supported by @TylerB24890 in #465
  • New filter in the status dashboard widget to set configured status by @dkotter in #473
  • Compress AI settings page above-the-fold by @Adi-ty in #455
  • Ignore .wp-env.test.override.json by @t-hamano in #484
  • Force LTR for ability schema JSON viewer by @t-hamano in #485
  • Settings: use _n() instead of __() for numerical updates by @simison in #491
  • Settings: use notice from @wordpress/ui by @simison in #490
  • Update Admin UI package to latest, and use new visual prop by @simison in #488
  • [Feature]: Issue 300 | Content Resizing by @TylerB24890 in #331
  • fix(deps-dev): bump phpstan/phpstan from 2.1.49 to 2.1.51 in the composer-dev-minor-patch group by @dependabot[bot] in #493
  • Add custom experiment reference docs by @yusufhay in #499
  • Add squash merge strategy to docs by @jeffpaul in #504
  • Add E2E coverage for dashboard widgets by @ekamran in #498
  • Fix untranslated error strings by @yusufhay in #500
  • Switch to more specific hooks to render the Generate Image buttons to avoid conflicts by @dkotter in #489
  • Update/ai image filename context by @saarnilauri in #471
  • Update/merge docs by @jeffpaul in #511
  • Settings: simplify feature toggles by @simison in #505
  • Add Comment Moderation experiment by @Jameswlepage in #155
  • Update showcase image-generation webp asset by @simison in #519
  • Update settings page to use @wordpress/ui components by @simison in #472
  • More flexibility in the Content Summarization experiment by @dkotter in #510
  • Add a new public method to the Comment_Analysis class that is used to analyze a comment by @dkotter in #516
  • Add developer settings mode with the ability to set desired provider and model per feature by @dkotter in #486
  • Add WP-CLI command for bulk alt text generation by @adamsilverstein in #436
  • Fix dependabot alerts by @dkotter in #503
  • Revise squash merge commit title and description guidelines by @jeffpaul in #521
  • Release/0.9.0 by @jeffpaul in #522

New Contributors

Full Changelog: 0.8.0...0.9.0.
View all items closed in the milestone.

0.8.0

Choose a tag to compare

@jeffpaul jeffpaul released this 23 Apr 20:37
f46690c

Added

  • New Experiment: Refine from Notes, automatically apply editorial notes to content (#289).
  • AI Status and AI Capabilities dashboard widgets, plus framework for registering new dashboard widgets (#311).
  • Integrates Gutenberg's Guidelines allowing abilities to respect site-wide editorial standards (#359).
  • Check wp_supports_ai() before initializing experiments (#268).
  • Admin redirect from the old ai page to the new ai-wp-admin page (#424).
  • Set the new gpt-image-2 model for our preferred model list (#456).

Changed

  • Promote Image Generation from an Experiment to a Feature (#418).
  • Title Generation now utilizes a modal for editing and regeneration before applying changes to the Post Title (#290).
  • Update feature descriptions to include AI provider model supports (#377).
  • Update button loading states to match the standard loading pattern (#382, #389, #396,#433, #449).
  • Refactor Main bootstrap class (#404).
  • Allow bulk enabling/disabling Experiments in groups (#422).
  • Improve visual hierarchy on the AI settings page so card titles are more prominent than the toggle labels (#431).
  • Reduce the context we send when running Review Notes to decrease the amount of tokens used (#434).
  • Refactor strpos to str_starts_with and str_contains (#438).
  • Render Review Notes only on post types that support editor.notes (#444).
  • Improve accessibility of the Meta Description modal: inline "Copied!" confirmation on the copy button and accessibleWhenDisabled on disabled controls (#445).
  • Refactor Asset_Loader class and add error checking when dependencies are missing (#458).

Removed

  • Remove references to DALL·E image models (#414).

Fixed

  • Excerpt and Title generation no longer include conversational preambles, wrapper quotes, markdown, or meta-commentary when using smaller language models (#440).
  • Defer failed Requirements messages until translation functions are available (#453).

Developer

  • Align testing docs with current test setup (#393).
  • Add dependabot.yml config file with cooldowns and groupings (#405).
  • Bump actions/checkout from 5.0.0 to 6.0.2 (#407).
  • Bump shivammathur/setup-php from 2.35.4 to 2.37.0 (#407).
  • Bump actions/setup-node from 5.0.0 to 6.3.0 (#407).
  • Bump ramsey/composer-install from 3.1.1 to 4.0.0 (#407).
  • Bump actions/upload-artifact from 4.6.2 to 7.0.1 (#407, #442).
  • Bump actions/dependency-review-action from 4.8.2 to 4.9.0 (#407).
  • Bump actions/github-script from 7.0.1 to 8.0.0 (#407).
  • Bump actions/cache from 4.2.4 to 5.0.5 (#407, #442).
  • Bump actions/github-script from 8.0.0 to 9.0.0 (#415).
  • Update blueprint.json to use WordPress beta version (#423).
  • Bump basic-ftp from 5.2.1 to 5.2.2 (#426).
  • Update PR template sections (#429).
  • Ensure our JS lint script excludes the build-scripts directory (#432).
  • Bump softprops/action-gh-release from 2.6.1 to 3.0.0 (#442).
  • Update all NPM dependencies and migrate configs (#447).
  • Add npm run format, and apply repo-wide formatting (#463).
GitHub-generated release notes
  • ci: add dependabot.yml for updates by @justlevine in #405
  • chore(ci): bump the github-actions-updates group with 11 updates by @dependabot[bot] in #407
  • Remove references to DALL·E image models by @dkotter in #414
  • chore(ci): bump actions/github-script from 8.0.0 to 9.0.0 in the github-actions-updates group by @dependabot[bot] in #415
  • Update the "Generate Excerpt" button to indicate when excerpt generation is in progress. by @iamdharmesh in #389
  • Update experiments description to include AI provider model supports by @theskinnyghost in #377
  • Allow bulk enabling/disabling experiments in groups by @theskinnyghost in #422
  • refactor: cleanup Main bootstrap class by @justlevine in #404
  • update to use WP beta so WPORG live preview utilizes WP 7.0 by @jeffpaul in #423
  • Add an admin redirect from the old ai page to the new ai-wp-admin page by @dkotter in #424
  • fix(deps): bump basic-ftp from 5.2.1 to 5.2.2 by @dependabot[bot] in #426
  • Update PR template sections by @jeffpaul in #429
  • Add visual-card presentation for featured experiments by @jorgefilipecosta in #417
  • Promote Image Generation from an Experiment to a Feature by @dkotter in #418
  • Update the summarization button when summarization is happening by @dkotter in #382
  • Ensure our lint command excludes the build-scripts directory by @dkotter in #432
  • make AI settings page headers prominent by @CacheMeOwside in #431
  • Update the "alt text loading state" button to indicate when Alter generation is in progress. by @Rajat1192 in #396
  • fix: Generate Button UX for title generation by @Takshil-Kunadia in #433
  • Implement Refine from Notes batch processing and progress indicator by @zeus2611 in #289
  • Align testing docs with current test setup by @ekamran in #393
  • chore(ci): bump the github-actions-updates group with 3 updates by @dependabot[bot] in #442
  • Fix: System prompts for Guardrailing Excerpt & Title by @Takshil-Kunadia in #440
  • Review Notes and Refine Notes: Add post type support check by @t-hamano in #444
  • Refactor string checks to use str_starts_with and str_contains functions by @Soean in #438
  • fix: update references of Re-generate to Regenerate by @Adi-ty in #449
  • Reduce token usage when running Review Notes by @dkotter in #434
  • Add some basic dashboard widgets by @dkotter in #311
  • feat: check wp_supports_ai() before initializing experiments by @justlevine in #268
  • fix: defer failed Requirement messages until translation functions are available by @justlevine in #453
  • Improve a11y of Meta Description modal controls by @t-hamano in #445
  • chore: update all NPM deps and migrate configs by @justlevine in #447
  • Feature/content guidelines by @saarnilauri in #359
  • refactor!: cleanup Asset_Loader and add error checking by @justlevine in #458
  • Add support for the new gpt-image-2 model by @dkotter in #456
  • UX iteration for the title generation experiment by @juanfra in #290
  • chore: use npm run format for repo-wide Prettier by @justlevine in #463
  • Release/0.8.0 by @jeffpaul in #466

New Contributors

Read more

0.7.0

Choose a tag to compare

@jeffpaul jeffpaul released this 09 Apr 20:39
c52171d

Added

  • New Experiment: Content Classification to generate taxonomy terms based on post content (#313).
  • New Experiment: SEO Descriptions that provides AI-generated meta description support (#318).
  • Added a bulk "Generate Alt Text" action to Media Library to generate alt text for multiple images at once (#330).
  • Added Category filtering to the Abilities table to improve organization and discoverability (#355).
  • Added extensibility hooks for customizing system instructions, and post context during AI operations (#304).
  • Added a new wpai_has_ai_credentials filter to allow 3rd parties to modify the credential detection logic, for instance to support non-API-key connectors to report their configured status (#337).

Changed

  • Adjust Alt Text Generation to better align with the W3C Alt Text decision tree guidance (#374).
  • Updated AI settings page leveraging modern wp-build DataForm route (#340, #376).
  • Revised Feature and Experiment Lifecycle and other documentation updates (#326, #329).
  • Update some of our system instructions to prompt the LLM to return content in the same language as the original content they were given (#357).
  • Updated end-to-end tests to resolve flaky failures and account for markup changes in the Connectors screen (#360).
  • Updated preferred models to more recent ones for the three default providers (#361).
  • Updated provider compatibility checks to use the AI Client's built-in is_supported_* methods for improved validation and error reporting (#362).
  • Updated the PR preview workflow to use a preferred WordPress version for improved consistency during testing (#366).
  • Switch to using a Button component instead of a ToolbarButton component within the Title Generation Experiment when in normal editing mode (non-template mode) (#375).

Removed

  • Unneeded function_exists checks (#378).

Fixed

  • Improved error messages when Image Generation or Editing fails due to incompatible providers (#332).
  • Fixed an issue where Title Generation could fail when using the Anthropic provider (#341).
  • Invalid schema type in the summarization ability that prevented proper execution in some environments (#347).
  • Fixed an issue where the Generate Alt Text button could appear when an Image block was not selected, particularly when working with Patterns (#356).
  • Fixed an issue where repeated calls to load system instructions could return empty content (#358).
  • Fixed an issue where retrieving post content did not always return the most recently edited version (#367).

Developer

  • Bump flatted from 3.3.3 to 3.4.2 (#328).
  • Bump lodash-es from 4.17.23 to 4.18.1 (#369).
  • Bump lodash from 4.17.23 to 4.18.1 (#370).
  • Bump node-forge from 1.3.3 to 1.4.0 (#371).
  • Bump picomatch from 2.3.1 to 2.3.2 and from 4.0.3 to 4.0.4 (#372).
  • Bump yaml from 1.10.2 to 1.10.3 and from 2.8.2 to 2.8.3 (#373).
  • Updates Composer & NPM to their latest (semver-comptible) versions (#401).

New Contributors

Full Changelog: 0.6.0...0.7.0.
View all items closed in the milestone.