function
tool
beam_agents.tools.registry.tool
tool(func: 'Callable[..., object] | None' = None, *, name: 'str | None' = None, description: 'str | None' = None, side_effect: 'bool' = False) -> 'Tool | Callable[[Callable[..., object]], Tool]'Docstring
Register a callable as a Tool. Usable bare (@tool) or parameterized
(@tool(name=..., side_effect=True)). name defaults to func.__name__;
description defaults to func.__doc__ (or "" if there is none).