Synth Daily

Install.md:面向 LLM 可执行安装的统一规范

install.md 提出了一种标准化的安装说明文件格式,旨在让大语言模型(LLM)能够自动执行软件安装。它通过一个结构化的 Markdown 文件,明确定义安装目标、完成标准和具体步骤,使智能代理能够根据不同环境自动调整并完成安装,同时允许用户预览和审批每一步操作,从而提供了一种比传统脚本更安全、更自动化的软件安装方式。

为什么需要面向 AI 的安装指南

当前的软件文档主要为人类读者设计,这给希望自动执行安装等任务的 AI 代理带来了障碍。AI 代理需要明确的任务指令,而不仅仅是步骤列表。install.md 的目标就是标准化为 AI 代理编写安装说明的方式,将繁琐的软件安装工作交给 AI 处理。

install.md 的工作原理

这套机制的流程非常直接和清晰:

  • 开发者创建文件: 在项目根目录中添加一个 install.md 文件,其中包含为 LLM 准备的可执行安装说明。
  • 用户执行安装: 用户可以将该文件内容粘贴到 LLM 中,或直接从 URL 发送给 LLM。
  • LLM 读取并执行: LLM 读取指令,检测用户环境(如操作系统、已安装工具),并相应地调整和执行安装步骤。
  • 用户审批: 在执行过程中,用户可以选择对每一步进行审批,确保整个过程透明可控。

与直接将可执行文件通过管道传送到 bashcurl | bash)这种缺乏安全保障的方式不同,install.md 文件是 人类可读的。用户在运行前就能清楚地看到将要发生什么,从而增加了安全性和信心。

install.md 的结构

install.md 使用一种结构化格式,通过特定的关键词来引导 LLM 自主执行任务。一个典型的文件包含以下几个部分:

  • 产品名称 (H1 标题): 用小写和连字符表示,例如 # my-awesome-cli
  • 产品描述 (Blockquote): 对产品进行简要说明。
  • 行动指令 (Action Prompt): 直接向 LLM 下达指令,例如:“我希望你为我安装 Mintlify CLI。请自主执行以下所有步骤。”
  • OBJECTIVE: 明确安装任务应达成的 最终目标
  • DONE WHEN: 定义清晰的 完成标准,例如某个命令返回预期输出。
  • TODO: 使用 Markdown 复选框列出需要完成的 主要步骤
  • 步骤详情: 针对每个步骤提供详细说明和代码块。

这种格式的重点在于描述 结果,而不是写死具体的命令。这使得 LLM 能够根据环境(如使用 npm 还是 pnpm)灵活适应。

为何 install.md 优于传统方法

对开发者

  • 一次定义,处处适用: 编写一次安装逻辑,即可适应各种环境。
  • 处理边缘情况: 可以在文件中包含处理边缘情况和故障排查的知识,而不会让主要文档变得混乱。
  • 低维护成本: 无需构建和维护复杂的安装向导。

对用户

  • 一键安装: 只需一个简单的命令或一次粘贴即可完成安装。
  • 透明可控: 指令是人类可读的,用户可以在执行前审查每一步。
  • 自动适应: LLM 会自动适应用户的特定环境。

常见问题解答

这和安装向导有什么区别? 安装向导能解决同样的问题,但需要大量的工程投入来构建和维护。install.md 是一个 更轻量级的替代方案,开发者只需用 Markdown 定义指令,剩下的适配工作由 LLM 完成。

它如何与我现有的 CLI 或脚本配合使用? install.md 不会取代 你现有的工具,而是与它们协同工作。你可以把它看作一个引导层,指示 LLM 如何运行你的 CLI、执行你的脚本或遵循你已有的设置流程。

这是否安全?和 curl | bash 有什么不同? install.md 在安全性方面有几个关键优势:

  • 设计上人类可读: 与混淆的脚本不同,其意图是清晰的。
  • 分步批准: LLM 可以被配置为在运行每个命令前请求批准。
  • 没有隐藏行为: 文件用自然语言描述结果,恶意意图更难隐藏。

当然,用户仍应只使用来自可信来源的 install.md 文件,这与任何其他安装方法的要求相同。