holo4-35b-a3b, holo4-27b) and Holo3.1 (holo3-1-35b-a3b) support this format, so OpenAI-compatible agent frameworks work as is. Pick an output format shows which model takes which. The rest of Core concepts applies here too, including its common pitfalls.
Declare tools
Pass schemas intools and set tool_choice="required" so the model acts every step. Do not put tool-format examples in the system prompt: the model renders calls in its native format from tools, and a conflicting example degrades quality.
Loop
Each call inmessage.tool_calls has a unique id, a function.name, and a JSON string in function.arguments. Plug in your own SYSTEM_PROMPT, observation() (the <observation> message from Core concepts), and execute(name, args).
tools.