> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Message Steering Protocol • AI Agent SDK

> MessageSteeringProtocol: Protocol for message steering during agent execution.

# MessageSteeringProtocol

> Defined in the [**protocols**](https://praison.ai/docs/sdk/reference/praisonaiagents/modules/protocols.md) module.

AI Agent

Protocol for message steering during agent execution.

This protocol enables real-time communication with agents during
long-running operations, allowing users to provide mid-execution
guidance, feedback, and course corrections.

## Methods

> [card] [queue\_message()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/MessageSteeringProtocol-queue_message.md)
>
> Queue a steering message for the agent.

> [card] [get\_pending\_messages()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/MessageSteeringProtocol-get_pending_messages.md)
>
> Get all pending steering messages.

> [card] [process\_steering()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/MessageSteeringProtocol-process_steering.md)
>
> Process any pending steering messages and update execution context.

> [card] [clear\_messages()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/MessageSteeringProtocol-clear_messages.md)
>
> Clear all pending messages.

> [card] [has\_pending\_messages()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/MessageSteeringProtocol-has_pending_messages.md)
>
> Check if there are pending steering messages.

> [card] [enabled()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/MessageSteeringProtocol-enabled.md)
>
> Whether message steering is enabled.

## Usage

```python theme={"theme":{"light":"vitesse-light","dark":"vitesse-dark"}}
class BasicMessageSteering:
        def queue_message(self, message: str, priority: int = 5) -> str:
            # Add to internal queue
            return "msg_001"
        
        def get_pending_messages(self) -> List[SteeringMessage]:
            # Return queued messages
            return []
        
        def process_steering(self, context: dict) -> bool:
            # Check for messages and update context
            return False
    
    agent = Agent(name="assistant", message_steering=BasicMessageSteering())
```

## Source

> [card] [View on GitHub](https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/agent/protocols.py#L454)
>
> `praisonaiagents/agent/protocols.py` at line 454


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.