# MessageStore

> **Class** in `deepagents_cli`

📖 [View in docs](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore)

Manages message data and widget window for virtualization.

This class stores all messages as data and manages a sliding window
of widgets that are actually mounted in the DOM.

## Signature

```python
MessageStore(
    self,
)
```

## Constructors

```python
__init__(
    self,
) -> None
```


## Properties

- `WINDOW_SIZE`
- `HYDRATE_BUFFER`
- `total_count`
- `visible_count`
- `has_messages_above`
- `has_messages_below`

## Methods

- [`append()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/append)
- [`bulk_load()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/bulk_load)
- [`get_message()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/get_message)
- [`get_message_at_index()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/get_message_at_index)
- [`update_message()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/update_message)
- [`set_active_message()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/set_active_message)
- [`is_active()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/is_active)
- [`window_exceeded()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/window_exceeded)
- [`get_messages_to_prune()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/get_messages_to_prune)
- [`mark_pruned()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/mark_pruned)
- [`get_messages_to_hydrate()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/get_messages_to_hydrate)
- [`mark_hydrated()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/mark_hydrated)
- [`should_hydrate_above()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/should_hydrate_above)
- [`should_prune_below()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/should_prune_below)
- [`clear()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/clear)
- [`get_visible_range()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/get_visible_range)
- [`get_all_messages()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/get_all_messages)
- [`get_visible_messages()`](https://reference.langchain.com/python/deepagents-cli/widgets/message_store/MessageStore/get_visible_messages)

---

[View source on GitHub](https://github.com/langchain-ai/deepagents/blob/0b13f3e0e2726fdb7bbe1e0cf88dac76dbd43b01/libs/cli/deepagents_cli/widgets/message_store.py#L394)