Everyone's an agent now. Or are they?

Everyone's an agent now. Your RAG is an agent. Your chatbot is an agent. Your automation script with three if/else statements is an agent. Even your fridge will be an agent soon. Or will it?

Multi-agent systems aren't new. The idea goes back to the 1990s, with frameworks like JADE and SPADE. What changed isn't the concept — it's the substrate: behavior now emerges from language models interpreting natural language, rather than from explicit programming.

It's worth separating two cases that often get conflated:

The distinction I find useful for people building in production: if the system has a loop where the model decides the next step, picks tools, executes, evaluates, and decides whether to continue or stop, it's an agent. Otherwise, it's a pipeline with a fancy name.

I think about this in three cumulative layers:

  1. Weights — what comes from training the model.
  2. Context — RAG, prompting, context engineering.
  3. Harness — MCP, skills, orchestration protocols.

The word "agent" risks becoming meaningless — something Carl Hewitt warned about long ago. LLM-based agents sit in a gray zone between the weak and strong definitions of agency. In practice, the intentional stance (describing the system's behavior as if it had intentions) tends to be more useful than fighting over the perfect definition.