home-assistant/core · error · HomeAssistantError

Built-in conversation agent does not support starting conver

Error message

Built-in conversation agent does not support starting conversations

What it means

Raised by AssistSatelliteEntity._async_announce when the resolved pipeline's conversation_engine is the Home Assistant built-in agent (conversation.HOME_ASSISTANT_AGENT). The built-in agent cannot carry on free-form conversations, so announcing with start_conversation semantics (waiting for a spoken reply) is rejected upfront.

Source

Thrown at homeassistant/components/assist_satellite/entity.py:276

        """Start a conversation from the satellite.

        If start_media_id is not provided, message is synthesized to
        audio with the selected pipeline.

        If start_media_id is provided, it is played directly. It is possible
        to omit the message and the satellite will not show any text.

        If preannounce is True, a sound is played before the start message or media.
        If preannounce_media_id is provided, it overrides the default sound.

        Calls async_start_conversation.
        """
        await self._cancel_running_pipeline()

        # The Home Assistant built-in agent doesn't support conversations.
        pipeline = async_get_pipeline(self.hass, self._resolve_pipeline())
        if pipeline.conversation_engine == conversation.HOME_ASSISTANT_AGENT:
            raise HomeAssistantError(
                "Built-in conversation agent does not support starting conversations"
            )

        if start_message is None:
            start_message = ""

        announcement = await self._resolve_announcement_media_id(
            start_message,
            start_media_id,
            preannounce_media_id=preannounce_media_id if preannounce else None,
        )

        if self._is_announcing:
            raise SatelliteBusyError

        self._is_announcing = True
        self._set_state(AssistSatelliteState.RESPONDING)

View on GitHub (pinned to 58a3fdb3ea)

Solutions

  1. Set the pipeline's conversation engine to a capable agent (e.g. a supported cloud/Local LLM agent) in Settings > Voice assistants
  2. Point the satellite entity at a pipeline that uses such an agent (pipeline_name option / preferred pipeline)
  3. Update or create the pipeline with conversation_engine set to a non-builtin agent before calling start_conversation

Example fix

# before (default pipeline uses HOME_ASSISTANT_AGENT)
await entity.async_start_conversation(start_message="Hi, what's next?")

# after: select a pipeline with a conversation-capable agent
from homeassistant.components.conversation import async_create_default_agent  # illustrative
# ensure the pipeline passed to async_get_pipeline uses e.g. an Ollama/OpenAI agent
await entity.async_start_conversation(start_message="Hi, what's next?")
Defensive patterns

Strategy: validation

Validate before calling

from homeassistant.components import conversation
from homeassistant.components.assist_pipeline import async_get_pipeline
pipeline = async_get_pipeline(hass, entity._resolve_pipeline())
if pipeline.conversation_engine == conversation.HOME_ASSISTANT_AGENT:
    raise UnsupportedAgent("Select a pipeline with a conversation-capable agent")

Try / catch

try:
    await entity.async_start_conversation(start_message="...")
except HomeAssistantError as err:
    if "Built-in conversation agent" in str(err):
        # switch pipeline / fall back to plain announce
        await entity.async_internal_announce(...)
    else:
        raise

Prevention

When it happens

Trigger: Calling async_start_conversation (directly or via a pipeline preference) while the selected pipeline uses the 'Home Assistant agent' conversation engine; the entity's preferred pipeline falls back to the default pipeline whose engine is the built-in agent.

Common situations: Default pipeline left on the built-in conversation agent; user selected a preferred pipeline that was edited to use the built-in agent; satellite integration testing announce-conversation against a fresh install.

Related errors


AI-assisted analysis of home-assistant/core@58a3fdb3ea (2026-08-14). Data as JSON: /api/errors/99ab6872f5f4c05a. Report an issue: GitHub.