The tool-calling loop One question, two model calls. The model does not run the tool; it asks the harness to, then reads the result. User Agent loop the harness calls the model until it answers without asking for a tool Tools run by the harness, never by the model another tool call? the loop runs again, with everything so far tool call: calculator("2 + 3") tool result: 5 What's 2 + 3? the user's message Model call 1 reads: the question + tool definitions → asks for calculator("2 + 3") Calculator tool 2 + 3 = 5 waiting for a call Model call 2 reads: everything above + the result → answers, no tool needed It is 5. the assistant's reply