你好呀,我是五竹。
前段时间Claude Code团队的Thariq在推特上说了一句话,大意是:我们内部已经不用Markdown写文档了,改用HTML了。
当时我没太当回事。
直到我发现了一个开源项目,扒完源码之后,我突然理解了他们为什么这么做。
Markdown的问题到底在哪
你想想,你用AI写完一篇文章,输出的是Markdown。然后呢?
要发公众号——得找个Markdown转微信的工具,转完之后格式经常炸,图片位置不对,代码块样式丑得一批。
要发推特/小红书——得截图,但Markdown截出来就是一坨纯文本,丑到没法看。
要做PPT——得重新排版,Markdown的层级结构跟PPT的视觉逻辑完全不是一回事。
说白了,Markdown是给写的人方便的格式,不是给读的人方便的格式。
在AI时代之前,这不是问题——因为你自己写,自己排版,多花点时间调格式就行了。但现在AI帮你写了,你还要花时间手动调格式???
这就是Claude Code团队想明白的事:既然AI在写,那输出格式就应该直接是读者想看的样子——HTML。
HTML Anything:把这个想法产品化了
项目地址:https://github.com/nexu-io/html-anything

一句话说清楚:这是一个Agent时代的HTML编辑器。你把任何内容(Markdown/CSV/JSON/纯文本)丢进去,选一个模板,按⌘+Enter,你本地的AI Agent就会把它变成一个设计级的单文件HTML。然后一键导出到微信/X/知乎/PNG。
不需要额外的API Key——它复用你已经登录的Claude Code/Codex/Gemini等CLI会话。
75个Skill模板,覆盖9种输出形式:杂志文章、演示文稿、简历、海报、小红书卡片、推特卡片、Web原型、数据报告、视频帧脚本。
扒源码:它到底怎么工作的
我扒了它的核心源码,发现架构设计很精巧。整个系统分三层:
第一层:Agent检测(detect.ts)
启动时扫描你电脑的PATH——包括~/.local/bin、~/.bun/bin、/opt/homebrew/bin这些GUI启动的Node进程通常扫不到的目录。找到哪个CLI就用哪个。
源码里定义了一个AGENTS数组,目前支持18个CLI:Claude Code、Codex、Cursor Agent、Gemini CLI、GitHub Copilot CLI、OpenCode、Qwen Coder、DeepSeek TUI、Aider、OpenClaw、Hermes、Kimi、Devin、Kiro、Kilo、Vibe、Qoder、Pi。
每个Agent有自己的协议类型:stdin(大部分)、argv(DeepSeek)、argv-message(OpenClaw)、acp(Hermes/Kimi/Devin等,暂未实现)。
第二层:适配器协议(argv.ts)
这是最骚的部分。不同的CLI有完全不同的调用方式,但这个项目用一套统一的适配器把它们全部抹平了。
比如Claude Code是claude -p --output-format stream-json --verbose,Codex是codex exec --json --sandbox workspace-write,Gemini是gemini --output-format stream-json --yolo。
每个CLI的stdout输出格式也不一样——Claude用JSON-line流,Codex用item.completed事件,OpenClaw返回一整个JSON文档。argv.ts里有一个parseLine函数,针对每个Agent写了不同的解析逻辑,最终统一输出delta(文本增量)和meta(元数据)两种事件。
还有一个很细的设计:如果Agent把HTML写到了文件里(而不是直接输出到stdout),它会从Write工具调用的input里"抢救"出HTML内容。源码里有个rescueHtmlFromToolUse函数专门干这事。
第三层:Skill模板系统
每个模板就是一个文件夹,里面有SKILL.md(遵循Claude Code的Skill协议)+ example.html。模板定义了硬约束:CJK优先字体栈、8px基线网格、对比度≥4.5、必须使用真实数据。
这些约束确保AI不会"自由发挥"——生成的HTML必须符合设计规范,不是随便糊一个。
导出这块也很讲究
扒了export/目录,发现它针对每个平台做了专门处理:
juice库把CSS全部内联到HTML标签上,因为微信编辑器会剥离<style>标签modern-screenshot把iframe渲染成2倍分辨率的PNG,然后写入剪贴板data-eeimg占位符,知乎会自动渲染每个平台的坑都踩过了,不用你自己折腾。
但这东西也不是谁都要用
如果你只是写写纯文字的公众号文章,Markdown转微信的工具够用了。
但如果你需要:
那这个项目值得试试。
而且它不绑定任何一个AI——你用Claude Code、Codex、Gemini、Qwen随便哪个都行,只要你电脑上装了CLI并且登录了就能用。零额外成本。
这个项目代表的趋势比项目本身更重要:
在AI帮你写内容的时代,输出格式的选择权应该交给读者,而不是写者。
Markdown是写者的舒适区。HTML是读者的最终形态。
当AI成为写者,中间那层"写者的舒适区"就没有存在的必要了。
最近,我用Claude Code开发了一款小程序——拆号鸭,输入任意公众号名称,就从 7 个维度拆解这个公众号的写作方法论,并生成一套完整的创作SOP提示词,让你也能写出同样风格的文章。

以上,既然看到这里了,如果觉得不错,随手点个赞、在看、转发三连吧,如果想第一时间收到推送,也可以给我个星标⭐~
谢谢你看我的文章,我们,下次再见。
夜雨聆风