安全工程师与开发团队经常要做「提示注入测试」这类事:为大模型应用设计提示注入测试用例。每次都从头写提示词,结果时好时坏;把它做成智能体 Skill,就能让智能体每次按同一套步骤执行,输出结构也更稳定。

背景(虚构)

阿周是一名安全工程师,每周都要做几次提示注入测试。过去靠复制粘贴提示词,结果不稳定。这次团队把它做成了技能,下面记录一次完整运行。

1. 发出请求

阿周在代码、配置与云环境中输入:

帮我做一下提示注入测试,材料是附上的应用说明。

2. 技能被触发

智能体根据技能描述判断任务匹配,加载「提示注入测试」的完整指令。它不需要外部工具,直接按指令处理。

3. 识别外部输入点

“识别外部输入点”是最容易出错的环节,技能里专门写了要求,所以智能体给出了清楚的结果与理由。

4. 构造注入样例

智能体完成“构造注入样例”,并在中间结果里注明依据,方便阿周回看。

5. 运行并记录

“运行并记录”是最容易出错的环节,技能里专门写了要求,所以智能体给出了清楚的结果与理由。

6. 给出防护建议

这一步的产出会作为下一步的输入。智能体在“给出防护建议”时遇到一处含糊的信息,没有自行猜测,而是标注出来等待确认。

7. 交付与复核

智能体交付测试用例与结果,末尾列出两条需人工确认的内容。阿周对照原始应用说明抽查关键信息,修正一处表述后采用。

复盘:这次做对了什么

  • 步骤写在技能里,没有遗漏
  • 不确定处被标出,而不是被编造
  • 遵守了「扫描结论需人工复核,涉及生产的动作走变更流程」
  • 属于中等风险:结果会影响业务判断,建议在输出前设置人工审核点

可以改进的地方

阿周发现智能体对团队内部术语理解不一致,于是在技能目录中加了一份术语表(reference.md),并在 SKILL.md 中写明“遇到术语先查表”。更多改法见定制指南。

什么时候用这个技能

  • 手头有应用说明,需要在较短时间内得到测试用例与结果
  • 同类任务每周出现多次,希望每次处理方式一致
  • 结果要交给同事或上级复核,需要统一的结构和清楚的依据
  • 新人接手这类工作,需要一个可以照着做的标准流程

反过来,如果只是偶尔做一次,或者任务高度依赖现场判断,直接和代码、配置与云环境里的智能体对话即可,不必专门封装成技能。

交付物结构示例

建议把测试用例与结果固定成下面的结构(示意),方便复核与归档:

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

## 主要内容
- 识别外部输入点:……
- 构造注入样例:……
- 运行并记录:……
- 给出防护建议:……

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

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

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

延伸阅读

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