Set Core Pin

versions/set-core-pin writes the WordPress core version pin through the WP Downgrade plugin, so update checks keep offering the version you chose instead of the latest — and an automatic update cannot quietly undo a downgrade.

Setting a pin does not move core. That is the single most important thing about this ability, and the response states it in as many words. An assistant that reported a downgrade which had not happened would be worse than no answer at all.

At a glance

Abilityversions/set-core-pin
ToolsetWP Downgrade — toolset/wp-downgrade
GroupWP Downgrade › Core Pinning
RequiresThe WP Downgrade plugin, installed and active
Capabilitymanage_options and update_core
SafetySettings write — stores one option. No files change. Requires confirm: true
RepeatableIdempotent — setting the same pin twice leaves the same state
Ships inAcrossAI Abilities Manager 0.0.45 and later

The two-step that this is step one of

A pin changes which package the WordPress update offer points at. It does not apply it. So holding core on 7.0.8 is two calls:

  1. versions/set-core-pin with version: "7.0.8" and confirm: true — nothing moves yet.
  2. core/update-wp-core with confirm: true — this applies it. Confirmation is needed because moving core backwards is a downgrade, and it is checked for PHP compatibility first.

The response’s next_step field names that second call, so an assistant does not have to infer it.

Input

NameTypeRequiredWhat it is
versionstringYesThe core version to hold, e.g. 7.0.8. Must be a release WordPress.org publishes a package for.
confirmbooleanYes, in practiceMust be true.

What comes back

NameTypeWhat it is
pinned_versionstringThe version now held.
previous_pinstringWhat the pin was before, if any.
running_versionstringWhat WordPress is still running — unchanged by this call.
core_movedbooleanAlways false. Stated explicitly rather than left to inference.
relationstringWhether the pin is older or newer than what is running.
package_urlstringThe package the pin resolves to.
next_stepstringThe call that actually applies the pin.
warningsarrayIncluding that core/reinstall-wp-core will refuse while this pin is set.

Example

Ask your assistant:

Hold WordPress on 7.0.8 — the new release breaks our booking plugin.

{
  "ability": "versions/set-core-pin",
  "parameters": {
    "version": "7.0.8",
    "confirm": true
  }
}

Worth knowing

  • Pinning the version already running is refused, because WP Downgrade ignores such a pin — it would be stored and do nothing.
  • Refused outright while WP Downgrade’s caller-supplied download URL option is enabled, because the pin would then resolve through an archive this plugin did not choose.
  • While the pin is set, core/reinstall-wp-core cannot run. The pin rewrites the update offer, so there is no offer for the running version to reinstall. Clear the pin first if you need to reinstall.
  • The target package must exist on WordPress.org. A version the directory does not publish is refused rather than pinned to nothing.

Related abilities


Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager

Browse the rest: Every ability, by category


Keep reading