An agent is a combination of prompt that defines the intended outcome, along with tools, mcp , a2a connections thata usually run/orchestrated using Agent faremework
Simple explanation
An agent is a system where an LLM (the brain) and a framework (the hands) work together in a loop to solve problems.
When you ask a question, the framework doesn't understand it—it just passes everything to the LLM.
The LLM thinks about what to do next and tells the framework either "use this tool with this input" or "here's the final answer."
If the LLM chooses a tool, the framework executes it (like running a database query), gets the result, and sends everything back to the LLM along with the full conversation history.
The LLM then decides the next step based on what happened. This loop continues—LLM decides, framework executes, LLM sees results, LLM decides again—until the LLM determines it has enough information to provide a final answer.
The framework is just a messenger and executor with no intelligence, while the LLM does all the reasoning, planning, and decision-making at every step.
Agent Frameworks
The orchestration logic that manages the loop between the LLM and tools is implemented by different frameworks like Strands, LangChain, LangGraph, CrewAI, AutoGen, and Amazon Bedrock Agents. Each framework provides its own implementation of how to coordinate the conversation, execute tools, and manage the agent loop, but they all follow the same core pattern: the framework acts as the orchestrator while the LLM makes all the decisions.
Framework (Compute) = Orchestrator with NO intelligence
Formats prompts
Executes tools
Manages the loop
LLM = The brain that decides everything
"Should I use a tool or answer?"
"Which tool should I use?"
"What input should I give the tool?"
The Loop:
Framework → LLM: "Here's the situation, what next?"
LLM → Framework: "Use tool X with input Y" OR "Here's the final answer"
Framework → Tool: Executes the tool
Framework → LLM: "Tool returned Z, what next?"
Repeat until LLM says "Final Answer: ..."
Stop Signals:
LLM returns "Final Answer: ..." (success)
Max iterations reached (failure)
Error occurs (failure)
The LLM sees the entire conversation history each time, so it knows what it tried before and what results it got!
just as spring based applications run in a servlet container like Tomcat , which is deployed on some machine to run as a service .
So these agent framework need to run in some container and machine , Agent Core Runtime service gives that managed container where these framework live