关于 skill-card-generator
用于为现有 Agent 技能起草治理卡片的技能。它收集本地来源信息,从 JSON 渲染 Markdown 卡片并检查审核标记;仍须由人工审核。
主要功能
- 01收集技能与仓库信号
- 02构建结构化上下文 JSON
- 03使用 Jinja 渲染卡片
- 04检查未解决的审核标记
- 05限制文件与脚本访问
适用场景
- 01为技能准备治理卡片
- 02技能变更后更新卡片
- 03整理法律或安全审核材料
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ nvidia/ 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 卡片,并检查提交前是否已移除人工审核标记。
适用于以下情况:
- 已有技能目录,需要新增治理卡片。
- 技能发生更改,需要更新现有卡片。
- 技能所有者正在准备法律/安全审核材料。
请勿用于:
- 解释、列举、比较或讨论技能或技能能力。
- 创建或重写源技能本身。
- 为模型、数据集、容器或完整系统等非技能资产生成卡片。
- 签署、发布或批准技能卡片。
- 替代必要的人工法律、安全或所有者审核。
先决条件
- 已安装 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 文件,仅在需要时使用提取的文件内容。
credential_requirements仅填写两个字段:requires_api_key_or_credential和credential_types。分类依据必须来自SKILL.md中的说明性文字,而不能仅根据脚本检查结果。credential_types请使用references/style-guide.md中的受控词表。切勿包含凭据值、赋值内容或原始环境变量名称。- 每个上下文字段都遵循
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