Original Reddit post

Staring at a 400-line Markdown file in my terminal at 11:30 PM while the baby monitor flashed red was my breaking point. We have been treating Markdown like the holy grail of agent communication for years. It made sense early on. Simple, lightweight, easy for LLMs to spit out, easy for us to read. But if you are using CC heavily right now to build actual applications, you have probably noticed the massive friction. Markdown is fine for a quick python script or a README. But when your agent starts generating massive product specs, multi-file code reviews, or complex database schemas, Markdown completely falls apart. I thought I was just hitting the limits of terminal workflows. Then I saw the post from Thariq—an engineer on the Anthropic team—talking about the ‘unreasonable effectiveness of HTML’ for agent outputs. His core argument? Stop using Markdown. Switch CC to HTML default. I honestly laughed at first. HTML? In 2026? We are going backwards to 1999 web rings. Shipped it at 2am, still broken. But then I actually tried it. Kid woke up, lost my train of thought, but here is what I found after digging into this over the weekend. It turns out, the people actually shipping fast with CC are all using HTML. Here is the fundamental problem with Markdown: it is static text pretending to be structure. When you ask CC to map out a system architecture or review a dense pull request in Markdown, you get a wall of text. You scroll. You lose context. You manually copy and paste bits into other tools to visualize them. HTML changes the relationship entirely. It is not just formatting. It is an actual workspace. When you tell CC, ‘Generate this plan as a single HTML file with inline CSS and JS’, the output is not a document anymore. It is an interactive application. You get actual tables with sortable columns. You get collapsible sections for code blocks. You get diagrams. You get live sliders to test variables. You can build a complete UI-first prototype in one single prompt. This saved me 3 hours yesterday alone. I had a messy legacy database schema I needed to refactor. Normally, I would ask CC to explain it, and I would get a huge Markdown list. I would read it, nod, and forget how it connected by tomorrow. This time, I used a new approach. I saw a dev on X build a CC skill called dbt-lineage-docs that takes dbt column-level lineage and outputs it as a single, web-server-less HTML file. No dependencies, just a local file you double-click. I adapted that idea. I told CC: ‘Map this schema, but output a single interactive HTML file with a collapsible tree view and a visual data flow.’ Thirty seconds later, I opened the file in my browser. It was a functional mini-app. I could click nodes, expand elements, and see exactly what broke if I dropped a column. It is the fastest way to verify if the agent actually understands the intended structure of the task. If the UI is broken, the logic is broken. Why does this work so well for the LLM itself? It is not just about human readability. When CC writes HTML, it is forced to organize information hierarchically. The DOM structure makes the agent explicitly define parent-child relationships, states, and layouts. In Markdown, an agent can ramble sequentially. In HTML, to build a functioning layout, the agent has to actually plan the architecture before it writes the code. It creates a stronger structural constraint, which naturally leads to fewer hallucinated logic errors. The code becomes a byproduct of the UI structure. Combine this with MCP. You can have CC read your Jira tickets or Slack messages via MCP, and instead of summarizing them in a bulleted list, you tell it to spin up a local HTML dashboard. You get a live, sortable view of your sprint, completely generated on the fly. Some folks are taking these raw HTML outputs and dropping them into Dify as zero-code apps. It is a three-piece combo that bypasses traditional frontend frameworks entirely. There is a whole ecosystem quietly shifting this way. Look at HyperFrames. People are using it alongside CC and Codex to write HTML and render videos. You describe the video, the agent generates the HTML with GSAP timelines and Tailwind styles, and it renders. It works perfectly because HTML gives the agent a rigid, spatial canvas that Markdown simply cannot provide. But let us talk about the elephant in the room: the cost. Thariq openly admitted this in his post. Switching to HTML uses 2 to 4 times more tokens. HTML is verbose. It has closing tags, inline styles, boilerplate. If you are doing this for every single prompt, your API burn rate is going to spike. I checked my usage dashboard yesterday and winced. I automate everything so I can be home by 5, but I might need to take a second job to pay for these tokens. The other massive drawback? Diffs. Reviewing a Markdown diff in the terminal is easy. You see exactly what changed. Reviewing an HTML diff? It is absolute garbage. It is unreviewable. A tiny CSS change or a restructured div makes the entire diff look like a warzone. You basically have to trust the visual output. You do not read the diff; you open the file in Chrome, click around, and say, ‘Yeah, looks good.’ That is a terrifying workflow if you are a control freak. But that is the reality of where coding agents are heading. We are moving past the prompt-in, prompt-out caveman era. The agent is becoming the operating system. If you are just using CC as a glorified autocomplete that spits out Markdown snippets, you are utilizing maybe 10 percent of what it can actually do. The syntax tax is high, and the diffs are a nightmare, but the bandwidth of information you get back to your human brain is unmatched. Markdown was for reading. HTML is for interacting. I am curious if anyone else here has fully transitioned their CC workflow to HTML. Are you just eating the token costs? How are you handling version control on massive generated HTML blocks without losing your mind over the diffs? Drop your strategies below, I need to figure out how to optimize this before my next API bill hits. 🛠️👶 submitted by /u/TroyHarry6677

Originally posted by u/TroyHarry6677 on r/ClaudeCode