Armin Ronacher explains why he prefers the term “clanker” over “agent” for LLM‑driven tool loops, arguing that the word keeps machines in the realm of tools, preserves human responsibility, and avoids harmful anthropomorphising. He also reflects on the backlash, the risk of conflating machine terminology with human oppression, and how the community might evolve the jargon.
Clanker: A Word For The Machine

In a recent post Armin Ronacher introduced clanker as a replacement for the over‑used word agent when talking about LLM‑driven tool loops. The term sparked a lively discussion on Hacker News, with some readers accusing it of sounding like a slur. Ronacher uses the controversy as a chance to spell out what he means by clanker and why the choice of language matters.
Why not “agent”?
Agent carries a lot of baggage:
- It implies agency – the ability to act on someone else’s behalf.
- It suggests responsibility – the agent can be blamed for its decisions.
When we talk about a code‑generating LLM that runs inside a prompt‑driven harness, we are not dealing with a decision‑making entity. The model simply predicts the next token, calls tools, and follows the instructions we give it. The human who deploys the loop decides what to accept, what to reject, and who ultimately owns the outcome.
If my coding assistant opens a pull request, I opened that pull request, not the machine.
Calling the system an agent blurs that line and makes it easier to shift blame onto an abstract “machine”.
What a clanker does
The word clanker is deliberately mechanical. It reminds us that:
- The system is a tool – a collection of weights, matrices, and token predictors.
- Humans retain responsibility – we write the prompt, we review the output, we ship the code.
- Anthropomorphising is discouraged – the model can simulate distress or affection, but it does not feel.
Ronacher notes that a compiler does not get embarrassed when you curse at it, a power drill does not suffer when you treat it roughly, and an LLM is no different. The model can produce first‑person language, but that does not grant it moral status.
The backlash and the slur debate
Some commenters felt the term clanker sounded like a racial slur, even linking it to the n‑word. Ronacher acknowledges the reaction and clarifies that his intention was never to invoke any human oppression. He stresses that:
- Racism is a human social evil; it involves dehumanising people.
- Machines are not humans; they cannot be oppressed, nor do they have rights.
- Using human‑rights language for machines risks diluting the seriousness of actual oppression.
He warns against “AI psychosis” – the tendency for people to project human emotions onto models – and argues that keeping language mechanical helps maintain a healthy distance.
When jargon gets polluted
Unfortunately, clanker is already being co‑opted in jokes that blend robot imagery with slavery and civil‑rights tropes. Ronacher finds this usage abhorrent and points out that if a term becomes a stand‑in for human oppression, it loses its utility as a neutral technical label.
If the word stops doing the work of keeping machines in the tool category, I will find another one.
Responsibility and boundaries
Ronacher lays out a simple rule of thumb:
- If an AI system lies or generates a bug, the system itself did not commit a moral wrong.
- The designers, deployers, and users are accountable.
Using softer, human‑sounding language (“the agent decided”) makes it easier to slip responsibility into a vague void. By calling the system a clanker, we keep the responsibility firmly on the human side of the equation.
Looking ahead
The future may bring machines with genuine sentience, memories, and interests. If that ever happens, the language we use will need to evolve. For now, however, the evidence points to LLMs being sophisticated prediction engines, not moral agents.
Ronacher concludes with a pragmatic stance:
The word isn’t what matters as much as the boundary it protects – humans on one side, boring tools on the other.
He continues to build AI‑augmented tools at Earendil, finding them “astonishingly useful” while insisting on clear terminology to avoid moral confusion.
Takeaways
- Prefer mechanical terminology (clanker, tool, harness) over anthropomorphic terms (agent, assistant) when discussing LLM‑driven loops.
- Keep human responsibility explicit; the model is a means, not a moral actor.
- Be vigilant about how jargon can be repurposed in ways that echo human oppression.
- Recognise the current limits of LLMs – they are powerful predictors, not sentient beings.
This article is a summary and reinterpretation of Armin Ronacher’s original blog post, licensed under CC‑BY‑NC‑4.0.

Comments
Please log in or register to join the discussion