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

# Camel.toolkits.hybrid browser toolkit.ws wrapper

<a id="camel.toolkits.hybrid_browser_toolkit.ws_wrapper" />

<a id="camel.toolkits.hybrid_browser_toolkit.ws_wrapper._create_memory_aware_error" />

## \_create\_memory\_aware\_error

```python theme={"system"}
def _create_memory_aware_error(base_msg: str):
```

<a id="camel.toolkits.hybrid_browser_toolkit.ws_wrapper.action_logger" />

## action\_logger

```python theme={"system"}
def action_logger(func):
```

Decorator to add logging to action methods.

Skips logging if already inside a high-level action to avoid
logging internal calls.

<a id="camel.toolkits.hybrid_browser_toolkit.ws_wrapper.high_level_action" />

## high\_level\_action

```python theme={"system"}
def high_level_action(func):
```

Decorator for high-level actions that should suppress low-level logging.

When a function is decorated with this, all low-level action\_logger
decorated functions called within it will skip logging. This decorator
itself will log the high-level action.

<a id="camel.toolkits.hybrid_browser_toolkit.ws_wrapper.WebSocketBrowserWrapper" />

## WebSocketBrowserWrapper

```python theme={"system"}
class WebSocketBrowserWrapper:
```

Python wrapper for the TypeScript hybrid browser
toolkit implementation using WebSocket.

<a id="camel.toolkits.hybrid_browser_toolkit.ws_wrapper.WebSocketBrowserWrapper.__init__" />

### **init**

```python theme={"system"}
def __init__(self, config: Optional[Dict[str, Any]] = None):
```

Initialize the wrapper.

**Parameters:**

* **config**: Configuration dictionary for the browser toolkit

<a id="camel.toolkits.hybrid_browser_toolkit.ws_wrapper.WebSocketBrowserWrapper._ensure_ref_prefix" />

### \_ensure\_ref\_prefix

```python theme={"system"}
def _ensure_ref_prefix(self, ref: str):
```

Ensure ref has proper prefix

<a id="camel.toolkits.hybrid_browser_toolkit.ws_wrapper.WebSocketBrowserWrapper._process_refs_in_params" />

### \_process\_refs\_in\_params

```python theme={"system"}
def _process_refs_in_params(self, params: Dict[str, Any]):
```

Process parameters to ensure all refs have 'e' prefix.
