File size: 279 Bytes
cc15101
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
import re

TOOL_PATTERN = re.compile(r'\[([A-Z]+):\s*(.*?)\]', re.DOTALL)


def extract_tool_call(text):
    """Return (tool_name, args_string) or None."""
    m = TOOL_PATTERN.search(text)
    if m:
        return m.group(1).lower(), m.group(2).strip()
    return None