"""
demand_belong_category_agent 工具包

在此注册本 Agent 专属的工具。
"""
from __future__ import annotations

from collections.abc import Callable
from typing import Any

from agents.demand_belong_category_agent.tools.demand_belong_category import (
    batch_insert_demand_belong_category,
)
from agents.demand_belong_category_agent.tools.global_tree_category import (
    query_global_tree_category,
)
from supply_agent.tools.registry import ToolRegistry

ALL_TOOLS: list[Callable[..., Any]] = [
    query_global_tree_category,
    batch_insert_demand_belong_category,
]

__all__ = [
    "ALL_TOOLS",
    "batch_insert_demand_belong_category",
    "query_global_tree_category",
    "register_all_tools",
]


def register_all_tools(registry: ToolRegistry) -> ToolRegistry:
    """将 demand_belong_category_agent 包内的所有工具注册到 ToolRegistry。"""
    return registry.from_decorated(*ALL_TOOLS)
