Tool calling makes agents useful — and makes governance mandatory.
Many modern LLM APIs support a structured “function/tool call” output where the model selects a tool name and emits JSON-like arguments.
Agent frameworks typically coordinate steps: prompt → tool call → tool result → next prompt. They don’t replace the underlying model.
Once a system can call tools (write files, hit APIs, change configs), the difference between “draft” and “approved” becomes operationally important.
If the system is going to act, require a structured plan/spec first (scope, assumptions, acceptance criteria), then a human approval step.