技能卡生成器Skill "skill-card-generator"

为现有智能体技能生成或更新治理技能卡。通过收集技能资产信号、构建上下文JSON、渲染Markdown卡片,并校验人工审查标记是否移除,确保技能文档合规且可用于法律/安全审查。关键词:技能卡生成、技能治理、文档化、可信AI、合规审查、NVIDIA。

技能治理 0 次安装 0 次浏览 更新于 9/7/2026
名称 “skill-card-generator”
描述 “仅用于为指定的现有智能体技能目录生成或更新治理技能卡。请勿用于解释、列出、比较或讨论技能能力。”
开源协议 CC-BY-4.0 AND Apache-2.0 compatibility: “任何可以运行Python脚本并写入文件的智能体” metadata:
作者 “Trustworthy AI Projects trustworthyaiprojects@nvidia.com” tags: - skill-card - governance - documentation - trustworthy-ai domain: documentation permissions: file_read: - “target_skill_directory” - “references/” - “scripts/” file_write: - “target_skill_directory” - “/tmp/” shell: allowed_scripts: - “scripts/discover_assets.py” - “scripts/render_card.py” - “scripts/validate_submission.py”

生成技能卡

要分析的技能目录:$ARGUMENTS

目的

为现有智能体技能创建一份草稿性质的 NVIDIA 治理技能卡。该技能会收集源信号,引导智能体构建基于事实的 JSON 上下文,渲染出确定性的 Markdown 卡片,并检查在提交前是否已移除人工审查标记。

在以下情况下使用:

  • 已存在某个技能目录并需要新的治理卡。
  • 某个变更后的技能需要刷新其现有卡片。
  • 技能所有者正在准备法律/安全审查材料。

请勿用于:

  • 解释、列出、比较或讨论技能及其能力。
  • 创建或重写源技能本身。
  • 为模型、数据集、容器或完整系统等非技能资产生成卡片。
  • 签署、发布或批准技能卡。
  • 替代人工法律、安全或所有者审查。

前提条件

  • 具备 Python 3。
  • 在运行 render_card.py 之前,已安装 jinja2
  • 目标路径是包含 SKILL.mdskill.md 的技能目录。
  • 智能体能够写入临时上下文 JSON 文件与渲染后的卡片输出。
  • 运行时权限允许从 target_skill_directory 以及本技能的 references/scripts/ 目录读取;仅能写入目标技能目录或 /tmp/;且仅可执行下方列出的三个脚本。

操作步骤

  1. 首先,在运行任何脚本之前,完整阅读本 SKILL.md
  2. $ARGUMENTS 解析目标技能目录;如果省略,则使用当前工作目录。
  3. 保持在声明的权限范围内。不要读取 .env、凭据文件、隐藏身份验证文件夹或无关仓库文件;不要写入目标技能目录或 /tmp/ 以外的路径。
  4. 对目标运行 scripts/discover_assets.py。优先使用结构化信号摘要;如果输出被截断,仅读取目标文件或小段摘录。
  5. 先从结构化信号摘要构建上下文 JSON,仅在需要时再从提取的文件内容中补充。
  6. 只填入两个字段:requires_api_key_or_credentialcredential_types 来填充 credential_requirements。分类应基于 SKILL.md 中的文字说明,而非仅脚本检查。对于 credential_types,使用 references/style-guide.md 中的受控词汇表。绝不包含凭据值、赋值或原始环境变量名。
  7. 每个上下文字段都要遵循 references/style-guide.md。只有当没有来源支持真实值时,才使用 HUMAN-REQUIRED
  8. 使用 scripts/render_card.py 渲染卡片,并在继续之前修复任何架构错误。
  9. 人工审查卡片,移除已解析的 VERIFY 和 SELECT 标记,然后运行 scripts/validate_submission.py
  10. 完成前,确认渲染后的卡片中没有未渲染的 {{ ... }}{% ... %} 模板片段。

可用脚本

脚本 用途 参数
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 - 预提交标记验证器