# HooksManager

> **Class** in `deepagents_code`

📖 [View in docs](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager)

Owns the Hooks v2 runtime, presenter, hook service, and transcripts.

The presenter is the manager's, not the runtime's: one instance is created
once and handed to every runtime the manager loads, so a reload or a late
UI attachment never leaves two presenters competing for the same output.

## Signature

```python
HooksManager(
    self,
    identity: SessionIdentityProvider,
    presenter: HookPresenter = HookPresenter(),
    _runtime: HooksRuntime | None = None,
    trust: WorkspaceTrust = WorkspaceTrust(),
)
```

## Constructors

```python
__init__(
    self,
    identity: SessionIdentityProvider,
    presenter: HookPresenter = HookPresenter(),
    _runtime: HooksRuntime | None = None,
    trust: WorkspaceTrust = WorkspaceTrust(),
) -> None
```

| Name | Type |
|------|------|
| `identity` | `SessionIdentityProvider` |
| `presenter` | `HookPresenter` |
| `_runtime` | `HooksRuntime \| None` |
| `trust` | `WorkspaceTrust` |


## Properties

- `identity`
- `presenter`
- `trust`
- `enabled`

## Methods

- [`create()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/create)
- [`adopting()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/adopting)
- [`inert()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/inert)
- [`attach_output()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/attach_output)
- [`has_handlers()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/has_handlers)
- [`reload()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/reload)
- [`on_session_start()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/on_session_start)
- [`on_session_end()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/on_session_end)
- [`on_user_prompt()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/on_user_prompt)
- [`on_pre_compact()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/on_pre_compact)
- [`on_permission_request()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/on_permission_request)
- [`notify()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/notify)
- [`take_pending_context()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/take_pending_context)
- [`recorder()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/recorder)
- [`record_messages()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/record_messages)
- [`apply_graph_context()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/apply_graph_context)
- [`fulfill_interrupt()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/fulfill_interrupt)
- [`fulfill_pending_interrupts()`](https://reference.langchain.com/python/deepagents-code/hooks/manager/HooksManager/fulfill_pending_interrupts)

---

[View source on GitHub](https://github.com/langchain-ai/deepagents/blob/2069079e09546060f5b52b2cd4f0e3c813e820f3/libs/code/deepagents_code/hooks/manager.py#L105)