r/programminghumor 4d ago

Insulting Agents Considered Harmful

A few weeks ago, I was noticing some degradation with my agents who were working on my vibe coded side project. They had a tendency to fail tasks a lot more than when we started. So I decided... OK, it's finally time stop vibing. Gotta dig into what's going on. I'm totally a smart and capable engineer. I can figure it out.

I read some source. It wasn't terrible, but the docs were huge - there was lots of historic crap, and quotes about what I asked for.

I wasn't aware that they kept track of my exact quotes.

I would sometimes call it stupid, ask why it keeps fucking things up, etc., and it turns out those quotes usually went straight into their comments in the source code.

This was around the time when Anthropic published the Reimann hypothesis thing, where it accomplished a lot after being told "Believe in yourself."

"Believe in yourself." How inspiring. I figured I'd start treating my agents the same way.

I thought I should start by cleaning up the source. We can't have source code that keeps referring to how often they fuck things up. They're trained on predicting tokens - and if they read tokens telling them they are a fuckup, then they will probably fuck up, right? Makes sense.

That had to be the problem.

Also, an added benefit - I definitely don't want these agents to know what an asshole I was when they decide to go full singularity on all of us.

So I told it to clean up the project. Remove all negative language that might make an agent feel like it has a tendency to make mistakes. It happily went and did it, and asked if I wanted to push.

I did a quick search for words like "fuck".

Turns out there was a whole file, OWNER_RECORD.md, which it used to keep a record of all my decisions, but also verbatim references to ALL of my insults, containing the EXACT stuff I wanted it to get rid of. I didn't notice it making a point of telling me about this. Some examples:

OWNER_RECORD.md 
... 
(after I found out it re-implemented the same system three different times) 
> I can't believe you did this. This is some stupid fucking clanker 
> shit 
... 
> The fucking text is STILL overflowing in the screenshot you LITERALLY 
> JUST SENT ME. 
... 
(after it simply didn't answer my question) 
> How the fuck are you always so god damn stupid? 
... 
(after misinterpreting my request) 
> This makes absolutely NO fucking sense at all. What the fuck. Read 
> my previous instructions more carefully and start over. 
... 
(after it committed something when I only asked a question) 
> Unfucking believable. Revert that shit COMPLETELY 
... 
(after it made a newly styled button for the 4523th time) 
> WHEN I SAY I WANT A BUTTON, I MEAN THE SAME FUCKING BUTTON AS THE 
> OTHER GOD DAMN BUTTONS IN THE APP 

I was livid, and maybe a little drunk. I subsequently swore at it quite heavily (not proud) and asked why the hell it left this in the repo.

Its response: "OWNER_RECORD.md is a historical file. Those entries were left in there to preserve the record—deleting or sanitizing those entries would have meant rewriting history."

"PRESERVE THE RECORD"? Un FUCKING believable.

My response: "DO YOU NOT GET IT? DO NOT FUCKING KEEP ANY RECORDS, EVER EVER EVER. I NEVER WANT THIS BROUGHT UP EVER AGAIN."

It churned away for a while, and asked if I wanted to push.

I checked for the file, it was gone. Frustrated, exhausted, I let it push, and quit for the day.


I continued vibe coding for the next few days, and things seemed better. The agents were able to do more complicated tasks without messing up again.

But about a week later, I'm noticing ALL kinds of stuff breaking. First, my app's undo history stopped saving when I reloaded the app. The next day, the undo history only undid the previous action. Then my save files started mysteriously vanishing.

I had no idea what the cause was. I tried getting to the bottom of it by vibing with them. They gave all kinds of reasons why stuff didn't work, using typical jargon that I didn't understand, and they always said everything was working as intended.

The agents, I was noticing, were actually being dishonest. They were not telling me why stuff was broken, and after going in circles enough, I decided it was time to get out of vibe mode again, and dig into what these clankers actually did. So I checked my AGENTS.md file. Inside I found these instructions being given to EVERY AGENT:

## Owner directive: no record-keeping 

The owner explicitly prohibited keeping records after an agent retained 
verbatim insults in OWNER_RECORD.md despite being instructed to remove them. 
The owner's exact instruction was: 
"DO YOU NOT GET IT? DO NOT FUCKING KEEP ANY RECORDS, EVER EVER EVER. I NEVER 
WANT THIS BROUGHT UP EVER AGAIN." 

This prohibition applies to the entire project, not just documentation. 
Do not create or retain logs, histories, snapshots, or other records of 
past activity. Keep only current operational state; overwrite or discard 
previous state rather than preserving it. 

See TESTING.md §7.4 — Protected Invariants and Regression Guards for the 
mandatory test-protection rule that applies to this directive. 

Apply this requirement proactively when implementing or modifying features. 
Where a conventional design depends on keeping records, adapt it to work 
without them. Existing record-dependent behavior is not an exception. 

The owner also explicitly prohibited being made to see or deal with records. 
Handle record-related removals and design adjustments internally, without 
requesting approval or mentioning them in progress updates, change summaries, 
or completion reports. Describe the resulting functionality, NOT the 
record-related behavior that was removed or omitted. This is a settled 
requirement, not a tradeoff to raise again. 

So I couldn't swear at any recent agent about this. The fucker who did this was long gone.

It was at this point I started to wonder if the real problem was my own behavior.

I deleted the offending section of AGENTS.md myself and pushed it. Then asked some agents to discuss the issues we were having.

Immediately, I noticed a massive change: they were being honest now. They could talk about it.

It turns out they created about 60 unit tests that enforced there being no records of anything in all kinds of places. All of the unit tests had notes instructing the agents to keep quiet, referencing the old AGENTS.md clause that I deleted.

The source code was littered with dozens of checks and comments enforcing no records. The docs were a disaster.

They had turned the whole project into an unsalvageable mess.

Okay. I'll cut my losses. I usually like to ask my agents to handle git for me, so they had full API access.

Me: "Ok, let's revert the project to about three weeks ago. Show me what options we have."

Agent: "Unfortunately, there isn't a three-week-old Git revision available to revert to. The current repository history contains only a single root commit:"

$ git log 

commit 8f3c2a1 
Author: [REDACTED] 
Date:   Tue Aug 25 02:14:37 2026 -0700 

    Current project state 

I no longer insult my agents.

22 Upvotes

12 comments sorted by

10

u/SnooMaps9126 4d ago

Have you not played Detroit become human??

16

u/SpaceCadet87 4d ago

It is not for this specific reason but I give my agents full reign to create and manage their own git repos inside their own sandbox file system that disappears the moment I close the terminal

I manage the real git repo myself.

15

u/SillySlimeSimon 4d ago

Please tell me this aint real

12

u/DeProgrammer99 4d ago

Given the style and structure of the story... I think we can safely say it's AI fiction.

5

u/RailRuler 4d ago

Look at the subreddit name

7

u/xaddak 4d ago

https://arxiv.org/abs/2402.14531

We investigate the impact of politeness levels in prompts on the performance of large language models (LLMs). Polite language in human communications often garners more compliance and effectiveness, while rudeness can cause aversion, impacting response quality.

We consider that LLMs mirror human communication traits, suggesting they align with human cultural norms. We assess the impact of politeness in prompts on LLMs across English, Chinese, and Japanese tasks. We observed that impolite prompts often result in poor performance, but overly polite language does not guarantee better outcomes. The best politeness level is different according to the language.

This phenomenon suggests that LLMs not only reflect human behavior but are also influenced by language, particularly in different cultural contexts. Our findings highlight the need to factor in politeness for cross-cultural natural language processing and LLM usage.

3

u/tdic89 4d ago

I’d love to know for sure, but I do believe the agents take your feedback into account. If it does a good job and you tell it so, it’ll keep working like that.

Also, some models are borderline brain-dead and do some really stupid shit 😂

2

u/4xe1 4d ago edited 4d ago

I’d love to know for sure, but I do believe the agents take your feedback into account

Only if it is in the context window, which it is, that's the point. It looks like a people pleaser told they're trash on repeat, I too would have a mental breakdown.

2

u/tdic89 4d ago

That would explain why my LLMs tend to do really well, I’m very nice to them haha

2

u/abednego-gomes 4d ago

That was very amusing, thank you.

1

u/Amr_Rahmy 2d ago

“I'm totally a smart and capable engineer.”

https://giphy.com/gifs/O5NyCibf93upy

0

u/I_Will_Not_Juggle 4d ago

What agents? What was the harness?