Skill vs Rule · 三级加载 · SKILL.md 规范 · 六步创建 Runbook · Mac 7×24 实战
总在 Cursor 里重复粘贴同一段「发布 PR + 跑测试 + 改 CHANGELOG」长提示词?Agent Skill 把复杂流程沉淀成可复用操作手册,配合 Rule 的分工与三级渐进加载,让 Agent 在 2026 年更像带 SOP 的同事而非一次性聊天。本文面向反复写复杂 Prompt 的开发者:对比 Skill vs Rule、讲清 SKILL.md 结构与 agentskills.io 生态(社区技能 31000+)、给出六步 Runbook创建第一个 Skill,并说明 Mac Mini M4 月租 如何支撑 7×24 Agent 与 Skill 复利。
2024–2025 年的「AI 编程助手」本质是会话式补全:你每次把上下文、约束、步骤重新讲一遍。2026 年的 Cursor Agent(2.4 起强化 Skills)则走向任务闭环:读仓库、改多文件、调工具、按团队规范交付——这要求知识不只活在聊天记录里,而要外置为可版本化的 Skill 包。
Agent Skill 是放在 .cursor/skills/ 或用户级 ~/.cursor/skills/ 的文件夹:核心是 SKILL.md(YAML frontmatter + Markdown 正文),可附带 scripts/、references/、模板与检查清单。Agent 在发现阶段只读 name 与 description;匹配任务后再激活全文,并按需加载附属文件——避免把 50 页 Runbook 一次性塞进 Context。
若你已在用 .cursor/rules 写「禁止注释」「必须用 pnpm」,那是全局护栏;当同一套「发版 + Code Review + 更新文档」流程每周重复三次,继续加长 Rule 会让每次对话都多付 token,且难以在同事间共享。Skill 解决的是流程复用,Rule 解决的是行为边界——下文第二节用表对照。
长 Prompt 无法版本化:优秀提示词散落在 Notion / 飞书,Agent 读不到;改一处全员不同步。
上下文膨胀:把整份 Runbook 贴进对话,挤占代码与 diff 空间,长任务中途被截断。
触发不稳定:没有结构化的 description「路由句」,Agent 不知道何时该打开哪本手册。
无法渐进披露:大段脚本与 API 文档常驻 Context,简单子任务也付全款 token。
团队不可复用:个人 Chat 里的成功经验无法像 Git 分支一样 review、合并、回滚。
Rule 像交规贴在挡风玻璃上;Skill 像随车维修手册——不到故障点不必翻完全册。
Cursor Rules(.cursor/rules/*.mdc 或项目 Rules)在会话建立时按配置始终或按 glob 注入,适合编码风格、安全红线、仓库结构约定。Agent Skills 遵循 agentskills.io 开放标准(2025 起多家工具互认),默认按需三级加载,适合多步工作流、领域知识与可执行脚本。
| 维度 | Rule | Agent Skill |
|---|---|---|
| 加载时机 | 会话开始或匹配文件路径时注入 | 发现 → 激活 → 按需读 references/scripts |
| 典型场景 | 禁止注释、提交规范、框架选型 | 发 PR、部署检查、领域 API 对接、/slash 工作流 |
| 上下文占用 | 常驻,条数过多会持续占用 | 未触发时仅 metadata;触发后渐进展开 |
| 类比 | 员工手册 / 合规条款 | 岗位 SOP + 工具箱(脚本、模板、外链文档) |
references/ 按需读取。scripts/validate.sh 由 Agent 在沙箱调用,结果回写对话。社区已有 create-hook、create-rule、babysit(PR 合并与 CI)、split-to-prs 等官方/半官方 Skill;与 MCP 的关系是:MCP 连外部系统,Skill 教 Agent何时、按什么顺序使用那些工具——二者叠加而非互斥。
以下在 Cursor 2.4+ 验证:可用内置 /create-skill 对话生成骨架,再按团队规范收束。目标是把「你第三次才写对的 Prompt」变成仓库里可 review 的文件夹。
在 Agent 对话输入 /create-skill:描述任务类型、触发语、输入输出与禁忌;让 Agent 生成初版 SKILL.md 与目录树。
选定作用域:项目级 .cursor/skills/<skill-name>/ 随 Git 共享;个人级 ~/.cursor/skills/ 放跨仓库习惯(注意勿提交密钥)。
写好 frontmatter 的 description:这是路由键而非摘要——写「USE when user asks to …」「DO NOT use for …」,帮发现阶段精确匹配。
正文用渐进披露:核心步骤留在 SKILL.md;长文档、OpenAPI、样例 JSON 放进 references/,脚本放进 scripts/。
测试触发:用 3 条正例 prompt(应激活)与 2 条反例(不应激活)在新会话验证;观察 Context 是否只加载必要文件。
迁移旧资产: lengthy Rules 或一次性 Commands 可用 /migrate-to-skills(或手动拆分),把流程型内容迁入 Skill,Rule 只留简短红线。
--- name: release-pr-runbook description: USE when the user asks to open a release PR, ship a version bump, or run the pre-merge checklist. DO NOT use for hotfix without changelog or for dependency-only bumps. --- # Release PR Runbook ## Gather - Read package.json version and recent git tags. - List open PRs targeting main. ## Act - Bump version per semver. - Update CHANGELOG.md with user-facing bullets. ## Verify - Run test suite and lint. - Confirm CI green before requesting review.
| 路径 / 字段 | 作用 |
|---|---|
SKILL.md | 必需;frontmatter + 主 Runbook(建议 < 500 行) |
name | 小写连字符 ID,与文件夹名一致 |
description | 触发路由句;含 USE when / DO NOT |
scripts/ | 可执行校验、生成器;Agent 按需调用 |
references/ | 长文档、API 说明;激活后再读 |
assets/ | 模板、示意图、示例配置(可选) |
Cursor 对 Skills 的实现与 agentskills.io 一致,可概括为三级,直接决定 token 账单与稳定性:
发现(Discovery):启动或扫描时只加载各 Skill 的 name + description(约数十 token/Skill),形成「可用手册目录」。
激活(Activation):用户意图或关键词匹配后,注入完整 SKILL.md 正文(通常数百到一两千 token)。
按需(On-demand):正文中的链接指向 references/*.md 或调用 scripts/* 时才加载/执行,避免「一本大书每次全开」。
设计 Skill 时把决策树写在正文前部(先判断场景 A/B),把厚资料下沉到 references。若某脚本输出很大,在 Skill 里要求 Agent 只摘要关键行写入回复,而不是整段贴回 Context。
提示:description 写得像营销摘要会导致误触发;写得像路由规则(条件 + 排除)才能发挥 L1 的价值。官方 create-skill 流程会反复追问触发语——值得花时间。
高质量 Skill 遵守四条工程原则:description 当路由、渐进披露、单一职责(一个 Skill 一类任务)、gather-act-verify 三段式正文。避免与 Rule 重复——Rule 写「必须写测试」,Skill 写「如何为本仓库跑集成测试并解读失败日志」。
| Skill / 方向 | 适用场景 | 要点 |
|---|---|---|
| Prompt Lookup | 优化重复 Prompt、对照社区模板 | 减少自创轮子,对齐描述格式 |
| React Best Practices | 组件库、RSC、性能与 a11y | 把 Vercel/团队规范外置为手册 |
| babysit / PR skill | PR 评论、CI 红灯、合并冲突 | 与 GitHub CLI、CI 日志联动 |
| create-rule / create-skill | 治理 Cursor 配置本身 | 元 Skill,帮团队统一脚手架 |
| sdk | Cursor SDK / Agent API 集成 | 后端或流水线里程序化调 Agent |
| loop | 定时巡检、cron 式 Agent | 需稳定宿主 7×24,见第六节 |
SKILL.md 为核心。/create-skill、/migrate-to-skills 纳入默认工作流。description 定位为路由谓词而非文章摘要——官方文档与 create-skill 引导均强调此点。注意:不要把密钥、客户 PII 写进 description(L1 常驻可见)。脚本用环境变量;references/ 可 gitignore 敏感附录,在 Skill 正文说明获取方式。
技能生态不再锁死在单一 IDE:agentskills.io 提供规范、校验思路与索引入口,团队可把内部 Skill 子模块化发布(类似内部 npm)。对个人开发者,更现实的路径是:从社区 fork 一个接近的 Skill → 改 description 与 references/ → 在 PR 里 review diff。
当 Skill 从「写代码辅助」延伸到7×24 自动化——例如 /loop 定时扫仓、Telegram/Slack 里触发 /mac-quote 类报价流程、或 Cursor SDK 在服务端长期跑 Agent——宿主选型变成 Skill 能否复利的关键:
~/.cursor/skills 当「组织记忆」长期养大的团队。典型落地:在月租 Mac 上固定项目 clone + Skills 仓库 submodule,用 Hook 在 merge 后自动跑 scripts/verify.sh;IM Bot 只负责投递意图,重活在 Mac 上按 Skill 执行——这与Hermes Gateway 7×24、持久记忆同属「Agent 当基础设施」思路,只是 Cursor Skills 更贴近日常 IDE 工作流。
笔记本与低价 VPS 能完成Skill 编写与单次验证,却在合盖休眠、缺少 macOS 原生自动化路径、以及长期守护 ~/.cursor 状态上削弱 7×24 体验;纯 API Skill 虽可放云端,一旦 Runbook 依赖本机脚本、钥匙串或 Apple 生态工具,迁移成本会陡增。对要把 Agent Skill 当「常驻同事」、让触发曲线与 token 节省跨周累积的团队,VpsMesh Mac Mini M4 云端租赁把 uptime、远程 KVM 与固定月租打包成可预期 OpEx——比反复重装更省时间。套餐见 Mac Mini M4 租赁价格,部署问题见 帮助中心,在线下单见 订购页。
MCP(Model Context Protocol) 是连接外部世界的能力层:数据库、GitHub API、浏览器、内部微服务,通过 Server 暴露 tools/resources。Agent Skill 不替代 MCP,而是 Markdown 操作手册:规定什么任务先 gather 什么、再调哪些 MCP 工具、如何 verify。类比:MCP 是插座与线缆,Skill 是设备说明书上的开机流程。
凡「每次写代码都要遵守」的短规则放 Rule(如禁止注释、必须用指定包管理器)。凡「偶尔要做、步骤多、需要脚本与附录」的流程放 Skill。经验法则:同一长 Prompt 第三次出现时,应 /create-skill 沉淀;Rule 总条数宜少,避免 L0 会话就被占满。可用 /migrate-to-skills 把臃肿 Rule 里的流程段迁出。
不必须。纯云端 API、无 macOS 依赖的 Skill 可在 Linux VPS 上由 Cursor CLI / SDK 调度。若 Skill 含 Apple 生态自动化、本机 Keychain、或你希望 ~/.cursor/skills 与 Gateway 一样 7×24 不被合盖打断,Mac Mini M4 月租更省心。建议先租 1 个月验证触发与 token 曲线,套餐见 Mac Mini M4 租赁价格,下单见 订购页。