April 27, 2026

Ability Framework Migration to Per-Processor Scope

The tool scope (ALWAYS_AVAILABLE / DISCOVERABLE) has been moved from the Ability ABC to each MessageProcessor subclass

The tool scope (ALWAYS_AVAILABLE / DISCOVERABLE) has been moved from the Ability ABC to each MessageProcessor subclass. Each processor now declares two ClassVars: ALWAYS_AVAILABLE and DISCOVERABLE.

  • Tool scope moved from Ability ABC to each MessageProcessor subclass.

  • AbilityRegistry is trimmed to only provide get(name) + all().

  • abilities.sqlite is indexed for every ability, with discovery scoping enforced at query time.