LOOP 01messages = [task]LLM: callModel(messages)no toolCall: return reply.contenttools[name](args)for (step < maxSteps)messages.length