Clanker: A Word for the Machine

llimllib3 pts0 comments

Clanker: A Word For The Machine | Armin Ronacher's Thoughts and Writings

Armin Ronacher's Thoughts and Writings

blog<br>archive<br>projects<br>travel<br>talks<br>about

Clanker: A Word For The Machine

written on May 26, 2026

In my last post I used the word "clanker" as an<br>alternative to "agent" quite consistently and probably excessively. That choice<br>ended up attracting a lot more attention than I expected in the Hacker News<br>comment section of that post and a number of folks had a very strong reaction:<br>to them it sounded like a slur, in one case even something adjacent to the<br>n-word.

That reaction surprised me somewhat, but it also made me realize that I should<br>write down what I mean by the word for future reference.

For me "clanker" is useful because it creates distance from the machine and that<br>is a quality which is important to me. The machine is not a person, not a<br>co-worker, not a friend, not a little spirit in the terminal. It is just a<br>machine, a tool, and nothing more.

Why Not Agent?

I dislike the word "agent" for these LLM based tool loops with a UI attached.<br>In everyday use an agent is someone who acts on behalf of someone else and it<br>has agency and more importantly: responsibility. An agent decides, represents,<br>negotiates, acts, and can be blamed. In the current AI discourse we<br>increasingly do a lot of anthropomorphizing and the term "agent" is now<br>frequently being used to put blame on an abstract machine. But the machine<br>cannot be responsible, whoever is wielding it is. If it drops your<br>database<br>it was not at fault, you were.

Agent makes the machine sound like a person with delegated authority and I do<br>not think that is healthy.

What we actually have is a language model attached to a harness, a prompt, some<br>tools, a bit of context, and a boring tool loop. Sometimes the loop is very<br>capable and it surprises us by editing code for a really long time and produce<br>genuinely amazing and even valuable outputs. But the agency is not in the model<br>or harness but in the human and in the organization that deployed it. If my<br>coding tool opens a pull request, I opened that pull request, not the machine.<br>If my machine spams someone’s issue tracker, I spammed someone’s issue tracker<br>with a machine.

In that context I like a word that sounds mechanical as it puts the thing back<br>into the category where it belongs: the category of machinery and tools.

The Machine Has No Feelings

LLMs are not sentient and we should not behave as if they might be, just in<br>case. Elevating these things to anything other than a very fascinating and<br>capable tool is problematic for a whole bunch of reasons.

Today’s machines are dumb (but truly fascinating) token predictors that emits<br>text, calls tools, and are steered by prompts and the training that went into<br>them. They can simulate distress and affection,<br>can simulate being offended, apologize and mimic all kinds of things that humans<br>would do.

A compiler does not feel humiliated when I swear at it, a car does not suffer<br>when I call it a shitbox and a power drill is not oppressed by being handled<br>roughly. An LLM is more complicated than those things, and the interactions you<br>can have with them can be truly uncanny, but a moral status does not appear just<br>because the machine can produce emit text in the first person.

I keep receiving strange emails from people because, for lack of a better<br>phrase, I am in the weights. I have been writing public code and public text<br>for long enough that models know my name, my projects, and some of the concepts<br>around them. Every so often someone writes to me with the peculiar confidence<br>that comes from a long conversation with a model that has validated and<br>amplified an idea. Sometimes the model seems to have told them that I am<br>relevant for their problem and a source of help. For historical reasons LLMs<br>used to write a lot of Flask code, and every once in a while someone interacts<br>with an LLM long enough about their Python and Flask frustrations that the LLM<br>will eventually reveal who created it which then can result in them sending me<br>an email. Increasingly also because people found my work in other ways<br>interesting and are trying to reach out for advice.

I do not want to mock these people but some of those messages are distressing<br>and I do not know how to deal with them. They show signs of what people have<br>started calling AI psychosis.

It’s why I want cold and detached language for these systems. I want to use<br>words that remind us that the thing on the other side is not a person.

Racism Is About Humans

The comparison to racism is where I think the discussion goes badly wrong<br>because racism is a human social evil. It is about humans subdividing humans,<br>assigning lesser worth to some of them, and building rules around those<br>subdivisions that can leave lasting damage for generations. Racial slurs are<br>wrong because they are a tool for dehumanizing humans.

On the other hand a machine is not human, a model is not a race and the GPU<br>cluster that is...

machine word agent because tool someone

Related Articles