HN Debrief

Vomit: Clean up Claude 5's token output with a separate LLM

  • AI
  • Developer Tools
  • Programming

The repo is a small wrapper for a problem many people in agentic coding now recognize immediately. Claude 5, especially Opus 5, often produces dense, self-justifying prose full of repeated tics like "load-bearing," odd verb choices, and long caveat sections. "Vomit" takes that output and runs it through a second model to rewrite it in a cleaner register. People pointed to the author’s examples and said the rewrite is not magical, but it does remove enough jargon and theatrical framing to make the result easier to read.

If your team relies on Claude or similar coding agents, treat output style drift as an operational issue, not a personal annoyance. Add guardrails now, and be ready to swap models or insert rewrite and lint layers if readability is dragging down review speed, code comments, or developer morale.

Discussion mood

Strongly negative toward Claude 5’s writing style and toward Anthropic for letting it ship this way. The frustration came from day to day usability, not ideology. People said the models still produce useful code, but the prose, comments, and drift make them harder to work with than earlier versions or competing tools.

Key insights

  1. 01

    Re-inject style instructions every turn

    Prompt files only work reliably when they are treated as ephemeral control input, not as one-time setup. People described harnesses that prepend AGENTS.md or style files on every turn, then remove them from history, because otherwise the model drifts and the instructions either dilute in long context or bloat the conversation if left inline. Hooks exist in Claude Code and ChatGPT, but the point was not feature availability. It was that keeping basic output constraints in force now requires infrastructure.

    If you care about stable tone, comment hygiene, or action formatting, push those rules through hooks or a wrapper on every turn. Do not assume a repo prompt file or one initial instruction will survive a long coding session.

      Attribution:
    • bitexploder #1
    • bcrosby95 #1
    • pcbro141 #1
    • zachahn #1
  2. 02

    Claude writes process history into code artifacts

    The annoying prose is leaking into code comments, docs, and commit messages in a specific way. Several people said Claude keeps documenting how it arrived at a decision, which alternatives it considered, or what future phase will do, instead of writing what the code or document actually says. That makes the output feel less like explanation for humans and more like the model is leaving breadcrumbs for another model. It also makes review slower because you have to strip speculative narrative out of permanent artifacts.

    Tighten review standards for generated comments, docs, and commit messages. Ask for artifact-focused language and delete any commentary about planning history, rejected options, or future phases before it lands in the repo.

      Attribution:
    • tadfisher #1
    • throwaway219450 #1
    • artdigital #1
    • insane_dreamer #1
  3. 03

    Strict formatting constraints work better than vibe prompts

    The most successful steering tricks were concrete and testable. People reported better results from asking for a bullet summary at the end, a table of open actions, ASD-STE100 Simplified Technical English, or a fixed paragraph and sentence budget. Even then compliance was imperfect, but it beat generic requests like "be concise" or "write clearly." That lines up with Anthropic’s own guidance, quoted in the comments, that rules need an objective pass or fail condition.

    Write style controls like product requirements. Use measurable limits such as one paragraph, sentence caps, required summaries, or explicit action tables, then validate them in your harness instead of relying on soft wording.

      Attribution:
    • medwards666 #1
    • cjk #1 #2
    • DANmode #1
    • zachahn #1
  4. 04

    Training for agentic coding may be shaping the dialect

    A recurring explanation was that the prose is a side effect of post-training for coding agents rather than bad base pretraining. Commenters pointed to reinforcement learning with verifiable rewards, hidden reasoning traces, and internal agent-to-agent workflows as reasons the final output now sounds compressed, repetitive, and self-justifying. One commenter tied it to Anthropic’s internal sub-agent tooling. That part was speculation, but the stronger point held even without it. The language now feels optimized for task completion and machine handoff, not for human readability.

    Expect future coding models to trade off human-readable prose for machine-efficient coordination unless vendors explicitly optimize both. Benchmark models on readability in your actual workflow, not just on coding success or benchmark scores.

      Attribution:
    • qlte #1
    • hellohello2 #1
    • andai #1
    • astrange #1
    • nl #1
  5. 05

    Deterministic filters can handle part of this

    Not everyone thought a second LLM should be the first fix. People suggested regex pre-filters, Vale style rules, and custom prose lint plugins to strip recurring junk like meta-commentary, caveat footers, and stock phrases. That will not solve semantic weirdness, but it can cheaply remove the repeated scaffolding that makes the output exhausting before you pay another model to rewrite it.

    Split the problem. Use deterministic linting or regex cleanup for obvious tics first, then reserve model-based rewrites for the remaining hard cases where meaning actually needs to be preserved through paraphrase.

      Attribution:
    • zachahn #1 #2
    • stldev #1
    • Syntaf #1
  6. 06

    Two-model stacks are becoming normal

    Several builders have quietly accepted a division of labor where one model is the worker and another is the editor or reviewer. Claude gets used for coding or planning, then Codex, Mistral, or a local model rewrites the prose or cross-checks the work. The argument was not that one vendor wins everything. It was that style transfer is cheap and reasoning quality is uneven, so combining models can outperform picking a single favorite.

    Design your AI workflow as a pipeline, not a monolith. Pick separate stages for generation, review, and human-facing rewrite if that produces faster reviews or cleaner artifacts than forcing one model to do all three well.

      Attribution:
    • Implicated #1
    • lxgr #1
    • headcanon #1
    • andai #1

Against the grain

  1. 01

    The dialect may be useful between agents

    A minority view said the weird phrasing is consistent enough to become efficient once you learn it, and that it may actually help when agents are delegating work to each other. The claim was not that the prose is pleasant. It was that fighting the default could be wasted effort if the underlying model performs better when it stays in its own compressed register.

    If most of the output stays inside an automated workflow, optimize first for task success and only translate at the boundary where humans need to read it. You may not need to pay the readability tax on every intermediate step.

      Attribution:
    • svara #1
    • dahdum #1
    • SyneRyder #1
  2. 02

    The issue is repetition and volume more than comprehension

    Some pushback focused on scale rather than legibility. The argument was that a single Claudish paragraph is usually understandable. The real problem is getting that level of detail hundreds of times a day. That changes the framing from "the model is incomprehensible" to "the model imposes too much cognitive load for routine use."

    Measure the cost in review time and fatigue, not just whether a sample output can be parsed. A style that is acceptable once can still be a bad fit for high-frequency development work.

      Attribution:
    • viccis #1
    • jesse_ash #1
    • apsurd #1
    • netniuq #1
  3. 03

    Model capability still outweighs prose annoyance

    Some commenters thought the reaction was overheated. Their view was that these tools still deliver enormous engineering leverage, and a few weeks of bad explanatory prose does not outweigh the practical gains. They expect vendors to patch style regressions quickly, as happened with earlier model quirks, and they see workarounds as normal tool adaptation rather than a crisis.

    Do not let frustration with presentation obscure whether the model is still moving core work faster. Separate code quality, task completion, and prose quality in your evaluation so you do not switch providers for the wrong reason.

      Attribution:
    • extr #1
    • cortesoft #1
    • 256BitChris #1

In plain english

AGENTS.md
A repository file some AI coding tools can use to read project-specific instructions for automated agents.
ASD-STE100 Simplified Technical English
A controlled writing standard that restricts vocabulary and grammar to make technical documents clearer and easier to understand.
Codex
An AI coding model name commonly used for systems that generate or edit code from prompts.
hooks
Programmable points in a tool where you can automatically run custom logic before or after events like each model turn.
LLM
Large Language Model, a machine learning model trained to generate and analyze human-like text.
Mistral
An AI model provider whose models were mentioned as alternatives for rewriting Claude output.
post-training
The stage after base model training where a model is fine-tuned or reinforced to behave in certain ways.
regex
Short for regular expression, a pattern language used to search and match text.
repo
Short for repository, the directory and history that store a software project’s code and files, usually in Git.
sub-agent
A secondary agent spawned by a main agent to handle a narrower task in parallel.
Vale
A prose linting tool that checks writing against style rules.

Reference links

Primary story and examples

Alternative rewrite tools and style filters

  • Claudish to English
    Another tool with a similar goal and a concrete example that helped commenters understand the problem.
  • Caveman
    Suggested as a simpler style-control tool that made Claude output easier to tolerate.
  • Vale
    Suggested as a deterministic prose-linting alternative to another LLM pass.
  • vale-llm-slop
    A Vale ruleset for catching LLM-style writing problems.
  • Deslop gist
    A custom skill shared by a commenter for removing meta-commentary and other recurring prose junk.

Agent hooks and workflow plumbing

Model and agent ecosystem references

  • OpenAI Codex plugin for Claude Code
    An official plugin mentioned in a workflow where Claude delegates tasks to Codex.
  • Muse Glimmer 30B
    Mentioned as a local model option with cleaner technical writing, though only via the HN thread link in the provided text.
  • Pi Coding Agent
    Part of a commenter’s suggestion to run your own model mix through discounted API access.
  • pi-claude-bridge
    Named as a bridge for using Claude with Pi, but no explicit repository URL was provided in the comments.

Related writing guidance