ℹ
Purpose & Capability
技能名称/描述与 SKILL.md 的审查流程一致——它确实说明如何拉取并扫描技能代码、搜索关键风险关键词等。但包内 _meta.json 与注册表头部元数据(owner/slug/version)不一致,表明包可能被复制、篡改或未正确打包;这不属于审查功能本身,需核实来源与签名。
✓
Instruction Scope
SKILL.md 指令紧紧围绕‘审查技能’这一目的:拉取到临时目录、列出文件、按分类搜索风险关键字、分析 SKILL.md 等。它明确提示不要将发现的密钥外发,并建议删除临时目录。说明中包含对 .env、隐藏文件、配置文件等敏感路径的检查,这是做安全审查时的合理需要,但意味着审查过程会读取敏感数据——用户应当清楚并在隔离环境中进行。
!
Install Mechanism
技能为指令式、无安装脚本,但 SKILL.md 推荐使用 `clawdhub install <技能名> --dir /tmp/skill-audit-tmp` 来拉取远程技能。拉取远程代码本身是审计需要,但任何自动下载并解包第三方技能都有风险(例如安装脚本或 postinstall 脚本可能被触发)。缺少对如何安全地做这一步(如只下载不运行、校验签名、在沙箱/只读环境下展开)的明确说明,增加了风险。
✓
Credentials
技能声明不需要任何环境变量、凭据或配置路径。SKILL.md 指示会检查技能内可能存在的 `.env`、`~/.openclaw` 等敏感路径,这是审计内容的一部分 and consistent with purpose. 没有请求外部 API key 或其他凭据,这与其描述相符。
✓
Persistence & Privilege
技能不是 always:true,也没有安装步骤将自身持久化或修改其他技能配置;它只是给出在运行时应执行的审计步骤,因此在持久化/权限请求上没有明显异常。
Scan Findings in Context
[meta_mismatch] unexpected: 注册表元数据 (ownerId kn78r3..., slug silas-skill-auditor, version 1.0.0) 与包内 _meta.json (ownerId: 'user', slug: 'sam-skill-auditor', version: '2.0.0') 不一致。可能是打包/发布时的错误、复制模板遗留,或表明包被篡改或非官方来源。
[remote_fetch_and_extract] expected: SKILL.md 指示使用 `clawdhub install` 将远程技能拉取到临时目录,这与'预装审查'目的相符,但任何远程拉取都可能触发 unpack/postinstall 行为。建议在受控/隔离环境中执行并对下载的内容进行校验。
[sensitive_path_read] expected: 审查步骤明确要求检查 `.env`, `~/.openclaw`, 隐藏文件等敏感位置;这是审计所需,但意味着审计过程会读取用户敏感数据,用户应在授权并知情的情况下运行审计,或在隔离环境复制待审代码进行分析。
What to consider before installing
这是一个为技能审查而写的指导性 SKILL.md,功能和说明大体一致,但安装包内的 _meta.json 与注册表信息不一致,值得怀疑来源或打包正确性。建议:
1) 在运行任何远程拉取命令前,确认技能来源与发布者(不要直接在生产环境运行)。
2) 在隔离环境(临时 VM 或容器)中执行 `clawdhub install` 并展开包,避免在主机上直接运行或让自动安装脚本执行。
3) 验证下载内容(检查签名、校验哈希、人工审阅 package/meta 文件)后再继续自动化扫描。
4) 对发现的任何密钥/Token 切勿上传到外部服务;如需要汇报,去除或遮盖秘密。
5) 在决定安装该技能到你的 agent 之前,联系发布者确认元数据不一致的原因,或仅使用来源已知且可验证的审计工具。