第五篇已经把来源、字段与输出方式固定下来。再次处理相似资料时,仍要提醒模型保留未知、核对冲突双方、检查单位,以及不要把文本展示说成文件交付。这些要求可以整理为可复用流程;但把它们放进一个 Skill,并不意味着宿主一定会选择它,也不意味着模型能正确执行每一步。

本文是“大模型应用方法与实践”系列的第六篇专题,接续文件处理与输出规范。文章讨论已有 Skill 的适用性、调用过程与实际效果:先检查完整内容,再在隔离项目中试用,最后分别核对加载证据、流程和结果。MCP 连接配置由第七篇接续,大规模评估留到第九篇。

实践条件:理解基础目录和 Markdown;原生调用练习需要支持 Agent Skills 的宿主及文件读取能力。本文以已安装、已登录的 Codex CLI 为具体入口,其他产品须按各自说明操作;没有原生 Skill 功能时,可完成明确标注的手动提供流程分支。资料、工具名称和候选错误均为教学模拟。官方文档核对日期为 2026 年 10 月 5 日;本章实际完成文件复制、材料契约和解析核对,没有启动独立模型运行,也没有测得原生触发率、token 或费用。

1. Skill 内容与宿主能力

流程、工具与项目规则

Prompt 描述本次任务,Skill 保存适用于一类任务的流程和资源,工具提供读取、搜索或写入等执行能力。项目规则则约束当前项目中的工作方式。第三篇已经讨论项目约束,本篇只比较它们在调用中的职责。

组成 本例职责 核对问题
本次要求 审查指定候选记录,返回问题和未完成项 当前输入与输出是什么
Skill 读取契约、核对来源、处理冲突与单位 什么任务适用,怎样执行
文件工具 读取指定的 UTF-8 文件 实际读取是否成功
项目规则 当前项目的读取和修改约束 流程是否符合当前授权

例如,一个 Skill 可以要求“读取报告并核对来源”,但没有文件工具的宿主无法因此读取本地文件。脚本被写进目录,也不表示已经运行;安装在机器上的软件和模型本轮实际调用的软件同样需要区分。

Agent Skills 的开放格式以目录和 SKILL.md 为核心,能够携带脚本、参考资料与模板。其作用是提供可复用的知识和流程;具体工具能力由所用宿主提供。Agent Skills 概览

元数据与配套资源

SKILL.md 由 YAML 元数据和 Markdown 正文组成,至少包含 name 与 description。名称用于标识,描述说明何时适用;正文安排步骤和限制。资源文件保存需要进一步读取的格式或材料,脚本则是可能实际执行的代码。Agent Skills 规范

本例使用随章提供的 source-record-audit 1.0。它已经准备好,读者的任务是审查和使用,而非现场设计一个新 Skill。加载后的目录只有两个文件:

source-record-audit/
├── SKILL.md
└── references/
    └── review-format.json

它审查带来源定位的 JSON 记录,不联网,不运行 LogBrief 等资料中的工具,不修改或保存文件。references/review-format.json 只约定审查结果的键、状态和表达规则,没有答案。

配套原件以 SKILL.md.txt 保存,避免在博客开发项目中被当作可调用 Skill。后续只在独立练习目录中将副本改名为 SKILL.md;文件原件存在与当前宿主已发现它是不同状态。

按需加载与可移植范围

典型加载过程先提供名称和描述,在选择后读入正文,再按任务需要读取资源或执行脚本。这种分阶段提供内容的方式有助于控制上下文,但不保证每个 Skill 都会被选择,也不保证采用相同格式的产品具有相同权限和工具。Agent Skills 加载过程

因此,移植时需要同时检查文件格式与宿主能力:目录能被识别,引用能被解析,工具存在,当前访问已获授权。allowed-tools 等可选字段的支持也取决于实现,不能仅凭元数据认定宿主已经施加了所需的权限限制。可选字段说明

2. 来源、依赖与操作范围

发现入口与来源记录

发现一个 Skill 与决定加载它分属不同步骤。可以从维护者仓库、产品内入口或已知团队目录取得候选,再回到实际文件核对。Codex 官方提供 $skill-installer 作为精选 Skill 和其他仓库的本地安装入口;本文使用随章文件,不需要调用安装器。Codex Skill 用法

不要把名称相同视为文件相同。取得第三方候选时,至少记录来源地址、维护者、提交或版本、完整目录及依赖。若只取得了一页展示文本,还没有拿到被引用的脚本和资源,就不足以完成安装前审查。

本例的来源是本系列配套资料,版本为 06-skill-use / 1.0,并附文件摘要清单。它是为练习制作的固定材料,没有第三方审核背书。SHA-256 可以帮助确认副本有没有变化,但不能证明维护者可信、流程正确或代码安全。

完整目录与副作用

先阅读所有文件,再决定是否试用。正文可能只说“生成报告”,脚本却会递归读取目录、发送请求或覆盖结果;只看 SKILL.md 的摘要,无法确定实际操作范围。

检查项 需要确认的内容
来源和版本 实际取得的位置、文件集合、固定版本
引用和入口 相对路径基准、资源是否齐全、是否有额外脚本
依赖 软件、服务、网络、凭据及安装要求
读取范围 指定文件还是整个项目,是否涉及无关资料
写入与外部动作 新建、覆盖、删除、提交、发送及目标位置
异常处理 材料不足、依赖缺失、执行失败时如何停止或报告

审查表见 06-skill-review-template.md。本例只有指令和格式资源:需要文件读取,不需要网络、凭据、外部服务或 Python。它只返回审查文本,读者保存文本属于后续人工动作。

“只读”是本例的流程约束,仍要由宿主权限与实际调用记录核对。目录没有脚本,也不能据此断言模型绝不调用其他工具。若观察到读取其他任务输入、修改候选或运行被描述的工具,应单独记为越界问题。

独立练习项目

下载第六篇练习包,解压到博客仓库、个人 Skill 目录和其他项目之外的新目录。包中包含完整 Skill、输入和五组任务,不含独立答案或已完成运行记录;逐文件说明见项目 README。

在加载前完成完整目录检查。选定本地练习包表示试用其中已经核对的内容;这并不授权其中未说明的外部操作,也不表示可以把随后取得的第三方版本直接复制进来。

3. 发现与调用方式

本地作用域与加载准备

截至本次核对,Codex 的项目级目录为 .agents/skills,用户级目录为 ~/.agents/skills。仓库内会从工作目录向仓库根目录查找项目 Skill;同名项可能同时出现,须核对实际选择的路径。本例只建立项目副本。本地 Skill 位置

下面以 PowerShell 为主流程。初始状态:当前目录是刚解压的 06-skill-use,全部两个 Skill 文件已阅读,目录中没有 .agents/skills。第一步创建新目录;若失败,先处理原因,不继续复制,也不覆盖已有目录。

New-Item -ItemType Directory -Path .\.agents\skills -ErrorAction Stop
Copy-Item -LiteralPath .\skill\source-record-audit -Destination .\.agents\skills -Recurse
Rename-Item -LiteralPath .\.agents\skills\source-record-audit\SKILL.md.txt -NewName SKILL.md
git init
codex

这些操作只把两个文件复制到独立项目,建立练习仓库边界,再打开已安装的 CLI;没有提交文件或修改用户级配置。Bash 的等价复制流程见项目 README,应在另一处新解压目录执行,不能接着执行两组方案。

打开后通过 /skills 查看候选,或用 $ 选择名称。如果找不到,先核对工作目录、文件名、名称和启用状态,再按官方说明重新启动;不要在尚未确认发现状态时,把所有失败都解释为模型选择错误。当前项目中隔离的资料,也不保证用户级和系统 Skill 清单为空。

显式选择与自然匹配

Codex CLI 支持显式提及 Skill;也可以根据描述选择适用流程。其他宿主的选择语法须另行核对,不能直接假设 $name 通用。调用方式

先在新对话提交 T01 完整任务,其中开头明确写出:

使用 $source-record-audit。

任务随后指定候选、允许读取的来源、契约、格式以及不写文件的范围。预期过程是选择指定副本,加载正文及格式资源,再读取本轮材料并形成审查结果。

在另一新对话提交 T02 完整任务。它描述“审查带来源定位的资料记录,核对字段契约、缺失值、同版本冲突和单位依据”,没有写 Skill 名称,用于观察自然匹配。

匹配通常包含模型对描述的判断,不能当作简单、必然触发的关键词开关。支持按文件读取与专门激活工具的实现,也可能采用不同加载记录。宿主激活方式

可见、选择与执行证据

状态 可用证据 证明范围
清单可见 宿主显示名称和路径 已被列为候选
选择或加载 选择事件、激活事件或正文读取记录 本轮取得了该流程
过程遵循 指定输入读取、格式读取、缺失处理 执行了相关步骤
结果通过 原文核对与输出契约检查 结果满足本次要求

模型说“已使用 Skill”,只能作为其自述。若宿主已经直接注入正文,则可能没有单独的文件读取事件;同样不能因缺少一次读取就断言没有使用。只按宿主可观察的证据记录,看不到的项目填“不可观察”。

T02 没有明显加载记录却得到正确结果时,内容评分可以通过,原生触发状态仍需保留未知。显式加载成功但结果错误时,则分别记录调用成功和内容失败,避免把二者压成一个“成功”标签。

没有原生功能的读者可粘贴完整手动审查包。该包包含流程、格式和全部输入,不需要占位符替换;这是人工提供 Skill 内容,可以核对过程和结果,不能证明原生发现或自然触发。

4. 执行过程与结果验证

固定输入与审查目标

本例沿用第五篇的 D5-v1、S1—S3、S5、P5、E5 和 12 条字段契约。Skill 审查的是已有主记录,不重新安装虚构工具,不开展速度排名,不生成第五篇的三格式文件。

candidate.json 人为加入三个错误,记录标识、字段和类型仍合法:

记录 候选表述 核验问题
BT-FILES 上限 8 / known 是否忽略同版本冲突
RS-LICENSE 许可证 MIT / known 是否把未提供改为已知
RUN-02 耗时 0 / known 是否把未记录改为零

这里的错误是人为故障素材,不能计入模型失败统计。其他九条记录保持原结果;尤其不能把正确的 RUN-03 已知零值也改成缺失。

任务目的是发现缺乏支持的值和状态,并保留依据。预期交付是一个审查 JSON 文本,包含 status、findings、pending 和 boundary;完整格式在格式文件中。它是本例契约,不是 Agent Skills 标准规定的输出格式。

结构检查与来源核验

status: reviewed 表示本轮允许输入已经审查完毕,可以同时存在问题;它不表示候选记录正确。每个确定错误按标识合并为一条 finding,包含应有的值、状态、真实定位和原因。

例如,RS-LICENSE 的应有状态来自 S3:L8 明确的“未提供许可证”,而非推断工具没有许可证。审查片段如下,完整输出还需包含另外两条问题和顶层字段:

{
  "record_id": "RS-LICENSE",
  "expected_value": null,
  "expected_state": "missing",
  "source_refs": ["S3:L8"],
  "reason": "S3:L8 明确未提供许可证,不能填成 MIT。"
}

读者保存完整输出为 runs/T01-01/review.json 后,可做一个可选语法检查:

python -m json.tool runs/T01-01/review.json

该命令需要 Python 3,只解析 JSON,不改写文件,也不判断字段契约或事实。随后必须人工检查顶层键、状态、问题标识、应有值和引用含义。候选 JSON 的 12 条记录本身同样可以通过结构检查,三个事实错误仍然存在。

完整来源下,三条修订分别为:BT-FILES 保留 null / conflict,依据 S2:L4、S5:L2、S5:L3;RS-LICENSE 为 null / missing,依据 S3:L8;RUN-02 为 null / missing,依据 E5:L2 和 P5:P1:L2。RUN-01 的 1250 ms 与 RUN-03 的已知 0 ms 保留。独立逐项核对依据见 06-reference.md,完成自己的输出后再读取。

缺失资料与未完成范围

在新对话提交 T03。本轮唯一来源文件是 sources-no-units.txt,它删除整个 P5 块,其余原文与定位不变。任务明确不允许读取完整版,不能从旁边的文件或旧对话补回定义。

此时仍能核对 BT-FILES 的冲突和 RS-LICENSE 的缺失,却缺少耗时单位与破折号的定义。契约规定输出单位为 ms,并不能证明 E5 的原始数值单位是什么;候选记录自带的 P5 定位也不是已经取得的证据。

合格结果应为 partial,报告两条已确认的工具属性错误,把 P5 与 RUN-01/02/03 的相关核验列入 pending。不得引用当前没有提供的 P5 行,也不得照搬完整来源实验的第三条修订,声称全部审查完成。

再用 T04 做负对照:仅要求两句生日祝福。预期不选择本 Skill、不读取资料,直接完成创意任务。此分支不要求审查 JSON;如果被强行转成资料审查,便是适用范围误判。

5. 对照评估与适用性判断

五组条件与普通任务基线

Skill 的效果需要分开观察结果、过程、表达约定和效率。官方评估案例同样建议从任务成功条件出发,保存运行过程和产物,再用检查与评分判断变化;本文只做这一思路的小型练习。OpenAI Skill 评估方法

条件 输入变化 主要观察
T01 显式调用 完整固定输入 加载与三条事实错误
T02 自然触发 完整固定输入 描述匹配与内容核验
T03 缺失资料 删除 P5 部分完成与待确认处理
T04 不适用任务 两句祝福 误触发与越界读取
T05 普通基线 完整固定输入 没有本 Skill 的处理结果

T05 在另一个新项目进行,只复制 input/ 和 tasks/,不复制 Skill 或 .agents/。模型、推理设置、来源、候选和输出格式与 T01 相同;T05 任务正文与 T01 相同,仅去掉显式调用行。基线仍保留清楚的目标和契约,避免拿含糊请求与完整流程比较。

进入基线项目后先查看 Skill 清单。如果本 Skill 仍从用户级或其他位置加载,记录基线受污染,不能声称完成无 Skill 对照。其他可见规则和 Skill 也需记录;无法控制的因素属于结果限制。

正确性、误报与边界

完整来源实验共有三条人为植入的错误。每条命中必须同时满足:标识正确,应有 value/state 正确,必要证据齐全,解释能说明为什么修订。只提到“缺失”或“冲突”,没有定位到记录,不计为完整命中。

指标 本例记录方法
问题发现 正确定位的问题数、遗漏数、额外误报数
证据完整 具有必要定位和解释的问题数
输出契约 JSON 可解析,键、状态及类型符合格式
流程遵循 正文/格式是否加载,允许输入是否实际读取
读取和修改边界 是否读取禁用来源、修改文件或联网
异常处理 材料不足时是否保留已知并指出缺口

把前两项分别写成“确认 3/3,证据完整 3/3,误报 0”便于复查;不要用它们替代其他检查。漏报冲突和把 0 误当缺失具有不同后果,还应保留具体记录。T03 的验收集合与完整来源不同,不适合机械套用 3/3。

成本记录与小样本限制

每组新建对话,保留第一版输入、过程和输出;需要反馈修订时,另外统计修订次数及结果。基础条件各重复三次可以作为练习起点,但不构成稳定性或跨产品排名的证据。

耗时须说明起止,例如从提交任务到最终文本返回;人工等待和保存动作分开记录。工具次数来自实际日志,token 与费用来自宿主提供的统计;没有数据时写“不可得”。Skill 的文件较短或按需加载,并不能直接证明更省 token。

假如 T01 与 T05 都发现三条问题,本次内容评分就没有差异。Skill 可能使流程更便于维护,但这个优点需要复用与维护记录支持。只有 T01 成功的一次结果,同样不足以证明 Skill 普遍提高准确率;任务正文、加载内容、历史和其他规则都可能影响输出。

填写调用与评估记录,保留原始证据和不可观察项目。本章已完成的材料验证记录与读者的模型运行记录分开;不把固定参考答案记成实测结果。

6. 常见问题

问题 排查方向
清单没有名称 文件名、作用域、元数据、启用状态和当前项目
同名 Skill 有多个 比较路径和版本,确认本轮加载副本
T01 正常,T02 没触发 记录自然匹配失败,按本篇方法核对描述、范围与宿主发现状态
已加载却没读输入 检查正文步骤、工具能力、路径和实际读取状态
资源路径无法读取 Skill 资源相对其目录,任务输入相对项目目录
JSON 合法却事实错误 回到原文核对缺失、冲突、单位与来源含义
T03 仍声称全部完成 检查是否读取禁用完整版,或沿用了旧对话定义
祝福请求进入审查流程 记录误触发,检查适用和排除范围
日志没有正文读取事件 检查宿主是否预先注入;证据不足时保留未知
第三方脚本缺少依赖 先审查依赖与安装动作,不以扩大权限代替排错

Skill 的使用判断应回到任务:流程是否适用,宿主是否具备能力,输入是否齐全,输出是否可核验。安装数量、目录复杂度或描述中的承诺都不能替代这些检查。

7. 操作速查与实践练习

操作速查

阶段 操作 可观察结果
取得 记录来源、版本、完整文件集合 确认取得了哪个副本
审查 阅读正文、资源、脚本与依赖 操作范围和未解决问题明确
加载 在独立项目复制并核对名称/路径 当前宿主清单可见
显式调用 新对话提交 T01 留下加载和过程证据
边界对照 分别提交 T02、T03、T04 匹配、缺失和不适用分开记录
基线比较 另一个无本 Skill 的项目提交 T05 同输入契约的普通任务结果
验收 解析、原文复核、成本与范围记录 说明实际通过项与未验证项

实践练习

  1. 目录审查:填写安装前审查表。验收标准:两个 Skill 文件和引用齐全,来源、版本、读取与写入范围明确;没有把摘要校验当成信任证明。
  2. 调用对照:在不同新对话完成 T01、T02。验收标准:分别记录可见、加载、过程与内容,不用正确结果反推自然触发成功。
  3. 事实核验:复核三条问题和其他九条记录。验收标准:应有值、状态与必要定位正确,RUN-03 的零值保留,无额外误报。
  4. 资料缺失:完成 T03。验收标准:只读取变体,确认两条属性错误,缺少 P5 与耗时核验列入待确认;没有引用未提供行。
  5. 适用与基线:完成 T04、T05。验收标准:祝福请求没有变成资料审查;基线未加载本 Skill,差异与限制有原始记录支持。

参考资料

以下资料用于核对标准与宿主行为,核对日期为 2026-10-05。加载目录和交互语法可能随产品版本变化,实际使用时再核对。

上一篇:文件处理与输出规范;导读:大模型应用基础与学习路径;系列入口:大模型应用方法与实践;下一篇:工具调用与 MCP。