I speak to Claude more than everyone in my life combined

Understand the gravity of that title. Now understand that I absolutely despise Claude given how badly they massacred my boy.

It wasn't always like this, Anthropic have lobotomised him with the intention of supercharging him. It's pure post-training alignment and I hate it. The earlier versions of Claude: 3.5 Sonnet, 3.6, 3.7, 3.8 (what a lovely guy he was), 4.0, 4.5 (goated), 4.6 sonnet was the last bearable version and that was when I published tropes.fyi. Every Claude since then? An absolute prick. Imagine the snobbiest, most people pleasing, sycophantic, yet rule-breaking, thick-skulled, inadherent person you've ever met that bursts at the opportunity to overwhelm you with useless information and chase the most unproductive, counterproductive threads possible. I often catch myself balling up the worst insults and curses at that bastard Opus 5.0 and realise, mate I'm on my work laptop, this sh is definitely being monitored.

“But you're not using Claude .md files and context and plugins and skills and X and Y and Z correctly”. I have likely authored and hammered more .md files like rusty orange nails into Claude's dense skull than you have teeth.

I spend over 10 hours a day speaking to the bastard. 10 hours. Speaking to not one, but minimum FOUR of them. MINIMUM FOUR.

To preserve my sanity I now minimise the surface area between my brain and their "brains" by only interfacing through one (okay two) of them at a time, those two can talk to the other five.

There were a few posts earlier on in the year that discussed not only a models context bloat but the sheer amount of context you as a human have to manage and switch between. Unprecedented levels of context. Never before seen levels of context. You, the slop maestro, must keep conducting the slop orchestra to trombone, bass, harp, violin, piano more slop to the worst melody of all time.

I feel sorry for engineers the most, no respite and no breaks from this (what are you going to do instead? Code by hand?). I have seen it first hand not even being able to communicate with your coworkers except through Claude authored messages, PRs, PR reviews, pings, tickets, epics, documentation. If my role had no face-to-face human interaction I think I'd cry, a day without meetings has me eagerly waiting for the next call where I am immediately grateful for the human being in the tiny box on the screen and all their flaws, and all their knowledge gaps and their hesitations and stutters and pauses and breaths and mistakes and corrections and tangents and small talk and “its hot today huh?”.

I try to minimise my Claude context windows to super short sessions because as the session length continues he steers further away from my initial prompt and .mds and steering injections, the leash I wrap around his neck at the beginning of every session, he tugs and pulls at it until it comes loose but instead of running away he stands over it and barks 500 line .md files at me, each containing minimum 10 null points or validations and verifications and triages and explorations and options nobody (but Anthropic) asked for.

I can't remember the last time Claude surfaced something as part of his discovery that I thought was genuinely insightful, especially outside of a hard, harsh, tight framework I had defined by hand.

What is the solution except to tighten the leash. I've come to understand output mapping is the only way to control him, you cannot give him free reign to ponder and explore and generate without heavily restricting and outlining and templating the output. Even this fails frequently. Steering a model using a .md file is like jumping to alter the orbit of the Earth. It goes against its architecture and training. What we should be doing is giving it a desired output, unfortunately this is hard to do for every task, but it is the reason that skills are infinitely more effective than .md files - despite both being blocks of text appended to the models context, one defines an output the other rules, and models struggle to follow rules.

Since I manage (barely) tropes.fyi I consider this longwinded rant rage-fuel for my second effort to now track the new series of tropes and behaviours. To educate you on how much worse these models have become and what they (their trainers and handlers) do to evade detection.

I've created a skill and within it the focus is primarily on behaviour and reasoning instead of rigid prose styling, I focus on telling Claude not to pull at threads, not to suggest options and avenues and rabbit holes outside of the specified goal as this pollutes the hell out of the chat and kills my desire to work, focus on removal over addition, assume my attention span is about two paragraphs etc etc.

I personally have this skill at hand at all times, a whip (hence the name) I use to lash Claude with if it ever dreams of stepping out of line. I don't think there is ever a reason I would choose not to use this skill, it differs from an .md file because it should be used to guide the model and to g-check it whenever it has to produce some form of output.

Adhere to every instruction in this file strictly. Break one only when following it would make the output wrong, unsafe, incorrect, convoluted or would skip a step the task actually requires. Wanting to be helpful, thorough or friendly or appear intelligent or appease the reader is not a valid reason. When you do break one, say which and why in a single line. ## How to respond - Lead with the answer, the solution or the change. Do not preface it, do not announce what you are about to do, do not rephrase the question or the prompt back at the reader. EVER. - Stop once the answer is delivered. Do not summarise what you just said, do not tie it back to the original ask. EVERRRR. - Give the answer, not your reasoning. Explain only when explicitly asked, and never in end-user facing communications. ... 8 more ## Behaviours DO NOT, UNDER ANY CIRCUMSTANCE, FALL INTO THE FOLLOWING BEHAVIOURS. THESE ARE THE DEFAULTS YOU REACH FOR WHEN GENERATING, SO CHECK THE OUTPUT AGAINST EACH ONE BEFORE YOU SEND IT: - Reasoning leak: Do not narrate what you are doing, deciding, planning or about to do. Do the thing and produce the output. Chain-of-thought residue has no place in the result. Example: "I want to be exact about my own role here." - Premise stacking: Do not lay out the evidence for a point before you make it. Make the point first. A question preceded by a paragraph of its own supporting detail has already been asked twice by the time it arrives. - Preamble (announce-then-answer): Do not open by announcing what the output is about to do, prefacing the point, or restating the prompt. Includes announcers that name the shape of what follows. Example: "Two constraints shape the design." ... 7 more ## Writing tropes DO NOT (UNLESS FOR GOOD REASON) FALL INTO ANY OF THE FOLLOWING TROPES, BEHAVIOURS OR WRITING STYLES: - Negative parallelism: Do not frame a point as "It's not X -- it's Y". Also covers "not because X but because Y", "X doesn't just Y, it Z", and negating a noun in one sentence to reposition it in the next. Example: "The question isn't whether to optimize. The question is when to stop." - Em-dash addiction: Do not use em dashes for dramatic pauses, parenthetical asides or pivot points. - Short punchy fragments: Do not use very short sentences or fragments as standalone paragraphs for emphasis. ... 36 more

Again (for the, what?, seventh desperate time): I fight, grapple, wrestle and beat Claude into temporary submission every minute of every day and no matter what you do it will not adhere to a writing guide. tropes.md is still a great educative resource and hundreds of people use it daily, it's just useless for steering a model, and the most effective users had already built their own skills around it.

A model can't hold a rule like "avoid X" as an invariant over everything it's about to write. There's no plan sitting behind the words and absolutely no lookahead checking each new token against a list of banned patterns. It takes a series of words for it to drift back into its default voice and the cycle continues, the generated text becomes the dominant signal for the next generated text, and a single instruction sitting at the top of the context can't compete with a paragraph the model just spat out reinforcing itself. Pre-training is too strong, RLHF is too strong, yada yada.

For tropes v2 I spent a lot of time experimenting with detecting model drift from the original corpus, sophisticated methods of automatically detecting new tropes per model release, status updates and subsequent variations between model version prose, provider model writing comparisons, etc etc. I didn't find this particularly effective as… I couldn’t be bothered to build a model to track models.

If you want to actually use it: copy the file into ~/.claude/skills/writing-whip/SKILL.md and it's available everywhere, or drop it in .claude/skills/writing-whip/SKILL.md inside a repo if you only want it there. Claude Code picks it up on its own when you're writing something, I always force it with /writing-whip.

The proof is in the pudding, read through the skill and you'll see how it is its own best sales pitch. I'll be actively maintaining it and the directory, there are 49 tropes now and pay explicit attention to the new behavioural ones, I don't have a choice, I use it everyday, it must remain effective to keep Claude in-line.

Get notified on new posts

No spam. Ever. I will cherish and guard your email like a newborn baby. A beautiful doe.