- 支持平台
- Windows
- macOS
- Linux
文档工具的「肥胖症」
2025 年底,独立开发者 mgks 同时维护着十几个项目的技术文档。他喜欢写文档——解释代码思路、阐述设计决策。但他痛恨文档工具。每次需要搭建文档站点时,他都面临两难选择:用 MkDocs?输出质量好,但往纯 Node.js 的 CI/CD 流水线里塞 Python 环境像是一种污染。用 Docusaurus?功能全面,但光是 node_modules 就能撑爆磁盘,React 水合错误、复杂的 Webpack 配置——就为了渲染几段静态文字,这跟用高射炮打蚊子有什么区别。
于是他动手写了一个工具——docmd。它只有一个原则:Node.js 原生、零逻辑负担、零配置、零客户端膨胀。Markdown 进,HTML 出。
设计哲学:工具消失,内容浮现
docmd 的核心理念可以浓缩为一句话——文档工具应该消失。它不追求成为「全功能 Web 框架」,而是回归最初的朴素目标:把 Markdown 文件变成可访问的网页。一条命令,生产就绪
$ npx @docmd/core dev
✓ Found 12 markdown files
✓ Built in 340ms
✓ Search index ready
→ http://localhost:3000
内置离线搜索:告别 Algolia 依赖
静态站点最头疼的功能是搜索。大多数文档生成器要么让你接入 Algolia DocSearch(需要 API Key、云账号、网络连接),要么干脆不支持。docmd 的做法简单而彻底:构建时自动扫描全文、剥离 HTML 标签、生成高优化索引。搜索完全在用户浏览器中运行(基于 MiniSearch),无需任何外部服务。
这意味着:
- 内网文档、物理隔离环境、飞机上都能用
- 支持模糊匹配,容忍拼写错误
- 智能摘要:不仅列出页面标题,还高亮显示关键词所在的完整句子
- 快捷键 ⌘K 唤起,体验如魔法般流畅
AI 优先:不只是给人看
docmd 是目前唯一原生内置 MCP Server 的文档引擎。这不是噱头——它标志着技术文档从「人类可读」正式迈入「人类 + AI 双栖」时代。三大 AI 能力
MCP Server
通过 docmd mcp 启动,AI Agent 可通过 stdio 协议搜索、读取、验证文档内容。llms.txt 自动生成
构建时生成 llms.txt 和 llms-full.txt,为 AI 模型提供高信息密度的项目上下文,减少幻觉。Copy Context 组件
浏览器端一键复制 Markdown 或完整上下文,优化 AI Chat 场景下的文档引用体验。性能对比:瘦即是快
下面这张图清晰地展示了 docmd 与主流竞品在 JS 载荷上的差距——它不是「略小」,而是一个数量级的降维。完整对比表格
超越标准 Markdown
标准 Markdown 虽好,但文档需要更多——提示框、标签页、图表、更新日志。docmd 提供了一套原生容器语法,零 HTML 即可编排复杂布局。内置插件矩阵
取舍与权衡
任何技术选择都是权衡。docmd 放弃了什么?放弃 React 生态:docmd 无法复用 React 组件生态的灵活性和组件化能力。如果你需要高度定制交互式文档(如嵌入式 Playground、动态 API 测试面板),Docusaurus 或 VitePress 可能更合适。
但它换来了:
- 构建速度:无需 Babel/Webpack 编译链,340ms 完成构建
- 运行时性能:18KB 载荷,无虚拟 DOM diff 开销
- AI 友好度:纯净语义 HTML,llms.txt + MCP Server 原生支持
总结:谁应该用 docmd?
如果你符合以下画像,docmd 就是为你准备的:- 你是 Node.js/JavaScript 开发者,不想引入 Python 或学习 React
- 你已经有一堆 Markdown 文件,只想快速生成可访问的文档站
- 你关心性能、SEO 和 AI 抓取效率
- 你需要内网 / 离线环境下的全文搜索
- 你厌倦了为渲染静态文字配置复杂的构建管线