An OpenVoiceOS utterance transformer plugin that cancels an utterance when the user says a cancel/nevermind phrase at the end.
Example: "Hey Mycroft, can you tell me the weather in… ugh, nevermind that" → utterance is dropped, no skill fires.
pip install ovos-utterance-plugin-cancelThe plugin runs before skill matching. It checks whether the utterance tail matches any phrase from locale/<lang>/cancel.intent. On a match, it returns an empty utterance list with context {"canceled": True, "cancel_word": "<phrase>"}.
Language selection is automatic via langcodes.closest_match. Phrases support bracket-expansion syntax (e.g. cancel (it|that)).
ca-ES · da-DK · de-DE · en-US · es-ES · fr-FR · gl-ES · it-IT · nl-NL · pt-BR · pt-PT
To add a language, create ovos_utterance_plugin_cancel/locale/<lang>/cancel.intent with one phrase per line.
This plugin is enabled by default in ovos-config alongside the other standard utterance transformers:
"utterance_transformers": {
"ovos-utterance-normalizer": {},
"ovos-utterance-plugin-cancel": {},
"ovos-utterance-corrections-plugin": {}
}To disable it, add "enable": false to your config:
"utterance_transformers": {
"ovos-utterance-plugin-cancel": {"enable": false}
}git clone https://github.com/OpenVoiceOS/ovos-utterance-plugin-cancel
cd ovos-utterance-plugin-cancel
uv pip install -e ".[dev]"
uv run pytest test/ -v --cov=ovos_utterance_plugin_cancel