为什么 AI 写代码也需要说明书?

0 阅读4分钟

为什么 AI 写代码也需要说明书?

image.png

大家好,这里是《前端毕业班》,前端开发者的自救互助小组。在 AI 与不确定性并存的时代,我们一起看清焦虑,聊技术、聊趋势,也聊前端还能走多远,走去哪。

郑重承诺以下内容不由 AI 生成

最初的放飞时代

早期 GitHub Copilot 时代 AI 有个致命问题, AI 是 “短期记忆 + 随机发挥” 的。同一个问题,答案风格不一致。不懂你的项目结构,不遵守你团队规范。 今天写 A 风格,明天写 B 风格,像在卡池里抽卡,所以大家开始研究一件事,尝试给 AI 一个“长期规则 + 项目上下文”。

Cursor Rules / AGENTS.md 的出现

Cursor Rules 允许你在 cursor 的工作区,.cursor/rules 里定义 rules 文件,本质就是一个 markdown,允许你规划他的生效范围,允许你定义 AI 的长期系统提示。因为他是长期的系统提示(就好像你每句话都在重复提及的一些只言片语),所以他的权重很高,但如果 rules 文件过多,也会增加 token 的消耗,AI 越来越找不清重点。AGENTS.md 也是类似的东西,但他是为了 Agent 工程化而被推动的,算是一个更标准更高级的 Cursor Rules。

如何定义是更有效的?

我们建议在 rules 里定义一些你认为 AI 必须做,或者绝对不能做的事情,极少但准确的 rules 文件能让 AI 忽略的可能性降到最低,比如:

  • 不要在未确认 某某技术栈 无法覆盖之前,绕开 某某技术栈 技术栈已有能力去自研实现;
  • 不要在 TS 类型承诺非空的情况下去判空,并且做无意义的数据兜底;
  • 遇到需要解决的错误,应优先暴露问题,而非用代码掩盖问题;
  • 不要做无意义的字符串 .trim
  • 不要出现魔法数字;
  • 执行完一个任务时,请务必使用 format, lint, type-check 去检查代码的格式,类型问题;
  • 执行完一个任务时,弹出一个系统级提示信息提醒我;

Skills

本质上,Skills 是对 AI 能力的一种模块化抽象,以较低成本扩展了模型的可用能力边界。我们都知道 AI 只擅长输入和输出,它本身不具备任务执行能力,如果你想要 AI 执行任务,需要利用 AI 的 Function call 能力,他不是什么复杂的事情,简单形容就是让 AI 在他认为合适的时机,对 AI 的宿主程序输出一段 json,类似这样:

{
  "tool_calls": [
    {
      "id": "call_123",
      "type": "function",
      "function": {
        "name": "create_user",
        "arguments": "{\"name\":\"Tom\",\"age\":18}"
      }
    }
  ]
}

其实它和 RPC 调用有些相似,但更准确地说,是一种“调用意图的通信约定”。 模型通过结构化 JSON 表达它“希望调用某个能力以及对应参数”,而真正的执行仍然由宿主程序完成。 换句话说,AI 负责的是“决定调用什么”,而不是“执行调用本身”。 宿主程序解析这段 JSON 后,再去实际执行对应的任务。 从工程角度看,这更像是一层轻量协议,用于描述能力调用,而不是完整的 RPC 系统。

重要的问题在于,如果什么任务都由宿主程序实现,这是非常不现实的。这类宿主程序缺乏统一的工具生态分发与发现机制,导致能力难以复用和共享,分发成本较高。

后来出现的 MCP,试图在更高一层解决这些问题,例如工具发现(discovery)、能力注册,以及跨进程 / 跨服务调用等。不过对于一些基础能力(例如本地处理或无需鉴权的场景),引入完整协议就太重了。

在这种背景下,Skills 提供了一种更轻量的方案: 它允许将提示词(prompt)、脚本(函数)以及上下文一起封装成能力模块,由模型在推理过程中自主判断是否需要调用。 当模型决定使用某个 Skill 时,会根据其定义生成调用建议,由宿主程序执行对应逻辑。

Soul.md

这是最神经的一类“说明书”,甚至不是哪个官方标准,是纯粹的社区玩法衍生出来的。 它用于给 AI 定义“人格 / 思维方式 / 价值观”,让 AI 更有活人感。例如:

  • 你是一个极度严谨的工程师
  • 你讨厌重复代码
  • 你会优先考虑长期维护性
  • 你会质疑不合理的需求
  • 你很喜欢卖萌,每句话后面都会加上一个 nico nico ni。😩

当表达越来越被 AI 标准化,“活人感”反而显得珍贵。作者现在看结构化的语言已经看麻木了。

写在最后

以上就是当前常见的 AI 说明书了,希望对读者朋友们有用。