关于 skill-card-generator
skill-card-generator 用于为现有 Agent skill 起草 NVIDIA 治理卡片,面向准备治理或法律、安全审查材料的技能所有者。它通过信号提取、结构化上下文、模板渲染和标记验证生成待人工审阅的卡片。
主要功能
- 01提取技能文件与仓库信号
- 02构建结构化上下文 JSON
- 03使用 Jinja 模板渲染卡片
- 04验证未解决的审查标记
- 05限定文件读写与脚本权限
适用场景
- 01为现有技能创建治理卡片
- 02刷新已变更技能的卡片
- 03准备 NVCARPS 或法律、安全审查材料
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ promptingcompany/ nv-skills --skill skill-card-generator安装后在 Claude Code 中输入/skill-card-generator确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
BENCHMARK.mdSkill Card Generator CardSkill Card Generator Licenseskill-card.mdskill.oms.sigevals/evals.jsonreferences/skill-card.md.j2style-guide.mdreferences/catalog/limitations.jsonrisks.jsonscripts/discover_assets.pyrender_card.pyvalidate_submission.py详细介绍
生成技能卡片
要分析的技能目录:$ARGUMENTS
用途
为现有 Agent 技能创建一份 NVIDIA 治理技能卡片草稿。该技能会收集源信号,引导 Agent 构建有依据的 JSON 上下文,生成确定性的 Markdown 卡片,并检查提交前是否已移除人工审核标记。
适用于:
- 技能目录已存在,需要创建新的治理卡片。
- 技能有所更改,需要更新其现有卡片。
- 技能负责人正在准备 NVCARPS 或法律/安全审核材料。
请勿用于:
- 解释、列出、比较或讨论技能及其功能。
- 创建或重写源技能本身。
- 为模型、数据集、容器或完整系统等非技能资产生成卡片。
- 签署、发布或批准技能卡片。
- 替代必要的人工法律、安全或负责人审核。
前提条件
- 已安装 Python 3。
- 运行
render_card.py前已安装jinja2。 - 目标路径是包含
SKILL.md或skill.md的技能目录。 - Agent 能够写入临时上下文 JSON 文件和渲染后的卡片输出。
- 运行时权限允许读取
target_skill_directory以及此技能的references/和scripts/,仅允许写入目标技能目录或/tmp/,且仅允许为下方列出的三个脚本执行 shell 命令。
说明
- 首先,在运行任何脚本之前,完整阅读此
SKILL.md。 - 根据
$ARGUMENTS确定目标技能目录;如果未提供,则使用当前工作目录。 - 遵守声明的权限范围。不要读取
.env、凭据文件、隐藏的身份验证文件夹或无关的仓库文件;不要写入目标技能目录或/tmp/之外的位置。 - 对目标运行
scripts/discover_assets.py。首先使用结构化信号摘要;如果输出被截断,只读取指定文件或少量摘录。 - 首先根据结构化信号摘要构建上下文 JSON 文件,仅在需要时再使用提取的文件内容。
- 对每个上下文字段,遵循
references/style-guide.md。只有在没有任何来源能够支持真实值时,才使用HUMAN-REQUIRED。 - 使用
scripts/render_card.py渲染卡片,并在继续之前修复所有架构错误。 - 手动检查卡片,移除已解决的 VERIFY 和 SELECT 标记,然后运行
scripts/validate_submission.py。 - 完成前,确认渲染后的卡片不含尚未渲染的
{{ ... }}或{% ... %}模板片段。
可用脚本
| 脚本 | 用途 | 参数 |
|---|---|---|
scripts/discover_assets.py | 将技能文件、仓库信号、风格指南和模板提取到一份发现报告中。 | <skill_directory> |
scripts/render_card.py | 验证上下文 JSON,并使用 Jinja 模板渲染技能卡片。 | --context <context.json> --template <skill-card.md.j2> --out <output.md> |
scripts/validate_submission.py | 如果渲染后的卡片仍包含 VERIFY 或 SELECT 审核标记,则报错。 | <rendered-card.md> |
示例
发现目标技能的信号:
run_script("scripts/discover_assets.py", args=["/path/to/target-skill"])
根据已完成的上下文渲染卡片:
run_script(
"scripts/render_card.py",
args=[
"--context", "/tmp/target-skill-context.json",
"--template", "references/skill-card.md.j2",
"--out", "/path/to/target-skill/target-skill-card.md"
]
)
提交前验证已审核的卡片:
run_script("scripts/validate_submission.py", args=["/path/to/target-skill/target-skill-card.md"])
局限
- 生成的卡片是草稿,必须由人工负责人审核。
- 发现范围仅限于本地文件,以及从目标路径可见的仓库元数据。
- 渲染器会验证所需的上下文结构,但不会验证字段值在法律或安全方面是否正确。
- 预设的局限和风险目录只是起点;请移除不适用的条目。
故障排查
| 错误 | 原因 | 解决方案 |
|---|---|---|
directory not found | 目标路径有误,或未挂载到工作区。 | 使用技能目录的绝对路径重新运行发现流程。 |
jinja2 not installed | 缺少渲染器依赖项。 | 安装 jinja2,然后重新运行 render_card.py。 |
Context validation failed | 缺少必填字段,或字段类型不正确。 | 参考 references/style-guide.md 修正上下文 JSON。 |
| 未解决标记错误 | 审核后仍残留 VERIFY 或 SELECT 标记。 | 确认每个标记字段,精简目录条目,然后重新运行 validate_submission.py。 |
此技能中的文件
SKILL.md- 本文件(用于编排)references/style-guide.md- 各上下文字段的指南references/skill-card.md.j2- 精确的卡片布局references/Skill Card Generator License.txt- 此技能包的许可文本references/catalog/limitations.json- 预设的技术限制目录references/catalog/risks.json- 预设的风险管理目录scripts/discover_assets.py- 发现和信号提取scripts/render_card.py- 带上下文验证的 Jinja 渲染器scripts/validate_submission.py- 提交前标记验证器
评论
支持 Markdown