「行为场景编写」是开发与测试工程师的高频任务。它的输入通常是需求描述,期望得到的是行为场景文件。这类有固定流程、又需要一点判断力的工作,很适合封装成智能体 Skill。

很多人纠结一开始要不要把技能写得很完整。答案是:先极简,再按需升级。下面对比「行为场景编写」的两种写法。

极简版:五行就够

你负责行为场景编写。
输入:需求描述。
步骤:识别角色与目标;拆分场景;写出前置条件、操作与预期;检查覆盖。
输出:行为场景文件。
信息不足先提问,不要编造。

适合个人临时使用、验证流程是否合理。缺点是输出格式不够稳定,边界情况处理不一致。

进阶版:完整技能包

.claude/skills/bdd-scenarios/
├── SKILL.md
└── reference.md      # 可选:团队规范、模板等长资料,按需加载

进阶版在极简版基础上增加:

  • 精确的 description,确保自动触发
  • 固定的输出结构与“需人工确认”清单
  • 约束段落(权限、领域规矩、不可逆操作)
  • 参考资料(团队规范、范例),按需加载
  • tests/ 测试样例

对比

维度极简版进阶版
编写时间几分钟一到两小时
输出稳定性一般较好
边界处理依赖模型自觉有明确规则
团队共享不方便可评审、可版本化
适用个人试用日常高频、多人使用

什么时候该升级

  • 每周使用超过几次
  • 输出要给别人看或进入正式流程
  • 已经发现两次以上同类错误
  • 风险较低,但输出仍需快速过目再使用

升级时参考SKILL.md 写法,并用测试用例验证。

交付物结构示例

建议把行为场景文件固定成下面的结构(示意),方便复核与归档:

## 结论
一句话说明最重要的发现或结果

## 主要内容
- 识别角色与目标:……
- 拆分场景:……
- 写出前置条件、操作与预期:……
- 检查覆盖:……

## 依据
- 引用输入中的具体位置或数据

## 需人工确认
- ……(没有则写“无”)

结构固定之后,复核的人只要先看“结论”和“需人工确认”两部分,就能快速判断结果能否使用。

平台选择建议

同一个「行为场景编写」技能可以落在不同平台上,选择时主要看你在哪里工作、要不要执行代码、要不要接外部系统:

  • Claude Code Skill:Claude Code 的 Agent Skills 以文件夹为单位:一个 SKILL.md(YAML 头写 name 与 description)加上可选的脚本和参考资料。智能体平时只看到 description。详见Claude Code Skill 版
  • GitHub Copilot 指令与提示文件:GitHub Copilot 支持仓库级自定义指令文件 .github/copilot-instructions.md。详见GitHub Copilot 指令与提示文件 版
  • OpenAI Agents SDK:OpenAI Agents SDK 是一个轻量的智能体开发框架。详见OpenAI Agents SDK 版

这个技能纯指令型,不需要额外脚本或外部连接,复制到大多数平台都能用,可据此排除不支持相应能力的平台。

智能体与人的分工

技能不是把工作全部交出去,而是把重复、机械的部分交给智能体,人把住判断和责任:

步骤智能体负责人负责
识别角色与目标按指令完成并给出依据抽查关键处,确认无误
拆分场景按指令完成并给出依据抽查关键处,确认无误
写出前置条件、操作与预期按指令完成并给出依据抽查关键处,确认无误
检查覆盖按指令完成并给出依据抽查关键处,确认无误
最终交付整理行为场景文件决定是否采用、是否对外

风险较低,但输出仍需快速过目再使用。

延伸阅读

说明:文中的配置、代码与目录结构均为示意,用于说明思路;各平台的入口、字段名与能力会更新,落地前请以对应官方文档为准。示例中的数据与场景为虚构,不代表真实案例。