Token导航 LogoToken导航TokenDH.com
研究检索敏感数据clawhub未标认证来源可访问clear审计通过

skill-security-guide技能保障指南

Agent Skill

用于辅助安全审计、权限检查、凭据风险、认证流程和常见漏洞排查。它适合让 Agent 梳理敏感配置、检查依赖风险、分析鉴权逻辑或生成安全复核清单。使用时不能把工具输出直接当最终结论,涉及密钥、令牌、用户数据或生产系统时,应先确认最小权限、脱敏方式和操作边界。

总安装

8,012

周安装

321

GitHub Stars

1

下载量

2,594
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:skill-security-guide(技能保障指南)
来源仓库:https://github.com/wszhhx/skill-security-guide
安装命令:
openclaw skills install skill-security-guide
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install skill-security-guide

简介

以“良性”评级通过 ClawHub 安全扫描的安全最佳实践指南。

  • 用于创建或审查技能时的安全标准参考,覆盖凭据风险与认证流程。
  • 通过 clawhub 安装,使用 openclaw skills install skill-security-guide 命令。
  • 需结合具体业务约束使用,保留真实权限边界与操作确认步骤。
  • 建议作为技能开发与维护过程中的安全自查清单。

SKILL.md

name
skill-security-guide
description
Security best practices guide for passing ClawHub security scans with "Benign" ratings. Use when creating or reviewing skills to ensure they meet security standards.
homepage
https://clawhub.ai/docs/security
metadata
{"clawdbot":{"emoji":"🔒","requires":{"bins":[],"env":[]},"primaryEnv":""}}

Skill Security Guide

A comprehensive guide to help your skills pass ClawHub security scans with "Benign" ratings.

Why This Matters

ClawHub performs automated security scans on all uploaded skills. Skills that don't meet security standards are marked as "Suspicious" and users are warned before installation.

Golden Rule: Metadata Format

ALWAYS use JSON format for metadata in SKILL.md:

---
name: your-skill-name
description: Your skill description
homepage: https://example.com
metadata: {"clawdbot":{"emoji":"🔧","requires":{"bins":["python"],"packages":["package-name"],"env":["ENV_VAR_1","ENV_VAR_2"]},"primaryEnv":"ENV_VAR_1"}}
---

❌ Wrong Format (YAML multi-line)

metadata:
  requires:
    bins: ["python"]
    env: ["KEY"]

✅ Correct Format (JSON single-line)

metadata: {"clawdbot":{"requires":{"bins":["python"],"env":["KEY"]}}}

Security Checklist

Before submitting your skill to ClawHub:

SKILL.md

  • [ ] Metadata is JSON single-line format
  • [ ] All required bins are declared (python, node, etc.)
  • [ ] All required env variables are declared
  • [ ] primaryEnv is set to the main credential variable
  • [ ] Clear emoji icon is specified

Code Security

  • [ ] No SSL verification disabled (no ssl.CERT_NONE)
  • [ ] No sensitive information printed in logs/output
  • [ ] Credentials read from environment variables only
  • [ ] Only access declared API endpoints

Documentation

  • [ ] Functionality description is accurate (no misleading claims)
  • [ ] Dependencies are fully declared
  • [ ] All documentation files are consistent

Common Security Issues

Issue 1: Metadata Format Error

Symptom: Security scan shows "registry summary claimed 'Required env vars: none'"

Fix: Convert YAML multi-line to JSON single-line

# ❌ Wrong
metadata:
  requires:
    env: ["KEY"]

# ✅ Correct
metadata: {"clawdbot":{"requires":{"env":["KEY"]}}}

Issue 2: SSL Verification Disabled

Symptom: Security scan mentions "insecure practices"

Fix: Remove SSL disabling code

# ❌ Wrong
ssl_context = ssl.create_default_context()
ssl_context.verify_mode = ssl.CERT_NONE

# ✅ Correct
import urllib.request
with urllib.request.urlopen(url, timeout=30) as response:
    ...

Issue 3: Sensitive Information Leak

Symptom: Security scan mentions "guidance that prints secret material"

Fix: Only check variable existence, don't display content

# ❌ Wrong
Write-Host "SecretKey: $($env:SECRET_KEY.Substring(0,10))..."

# ✅ Correct
if ($env:SECRET_KEY) { Write-Host "✅ Credentials configured" }

Issue 4: Misleading Functionality Claims

Symptom: Security scan mentions "behavioral mismatch" or "misleading claim"

Fix: Ensure documentation matches actual code behavior

# ❌ Wrong (if code doesn't actually do this)
## Features
- Automatically removes watermarks

# ✅ Correct
## Features
- Supports watermark control via API parameter

Issue 5: Documentation-Code Mismatch (Critical!)

Symptom: Security scan mentions "mismatches between the SKILL.md and the included script"

Real Example from hunyuan-video/3d fixes:

  • Problem: SKILL.md described response field as "Status" with value "DONE", but code checked for "SUCCESS"
  • Result: Script may not correctly parse real API responses

Fix: Ensure SKILL.md accurately describes:

  1. Response structure - Field names and nesting
  2. Status values - All possible status codes and their meanings
  3. Error handling - How errors are returned and parsed
# ❌ Wrong (SKILL.md says "Status": "DONE" but code checks wrong value)
status = result.get("Status", "")
if status == "SUCCESS":  # Mismatch with documentation!

# ✅ Correct (match documentation exactly)
status = result.get("Status") or result.get("JobStatusCode", "")
if status in ["DONE", "SUCCESS", "4"]:  # Handle all documented cases

Best Practice: Test your skill with real API responses and verify the code parses them exactly as documented in SKILL.md.

Complete Example: Benign-Rated Skill

---
name: tavily
description: AI-optimized web search via Tavily API. Returns concise, relevant results for AI agents.
homepage: https://tavily.com
metadata: {"clawdbot":{"emoji":"🔍","requires":{"bins":["node"],"env":["TAVILY_API_KEY"]},"primaryEnv":"TAVILY_API_KEY"}}
---

# Tavily Search

AI-optimized web search using Tavily API.

## Usage

node {baseDir}/scripts/search.mjs "your search query"


## Requirements

- Node.js installed
- TAVILY_API_KEY environment variable set

Get your API key at: https://tavily.com

Pre-Submission Verification

Run these checks before submitting:

# 1. Check metadata format
grep "^metadata:" SKILL.md

# 2. Check for SSL disabling
grep -r "CERT_NONE" scripts/

# 3. Check for sensitive info in docs
grep -i "secretkey\|api_key" README.md SKILL.md

# 4. Verify documentation consistency
# Ensure SKILL.md, README.md, and package.yaml all match

Case Study: Fixing hunyuan-video and hunyuan-3d

Real-world example of fixing skills from "Suspicious" to "Benign".

Initial Problems

Both skills were marked "Suspicious" with these issues:

Issuehunyuan-videohunyuan-3d
Metadata format❌ YAML multi-line❌ YAML multi-line
SSL verification❌ Disabled❌ Disabled (3 places)
Doc-code mismatch❌ Status field mismatch❌ Status value mismatch

Fixes Applied

1. Metadata Format (Both skills)

# Before ❌
metadata:
  requires:
    bins: ["python"]
    env: ["TENCENT_SECRET_ID", "TENCENT_SECRET_KEY"]

# After ✅
metadata: {"clawdbot":{"emoji":"🎬","requires":{"bins":["python"],"packages":["tencentcloud-sdk-python"],"env":["TENCENT_SECRET_ID","TENCENT_SECRET_KEY"]},"primaryEnv":"TENCENT_SECRET_ID"}}

2. SSL Verification (Both skills)

# Before ❌
ssl_context = ssl.create_default_context()
ssl_context.check_hostname = False
ssl_context.verify_mode = ssl.CERT_NONE

# After ✅
import urllib.request
with urllib.request.urlopen(url, timeout=30) as response:
    ...

3. Documentation-Code Alignment

hunyuan-3d:

  • SKILL.md said: Status: "DONE" means success
  • Code checked: status == "SUCCESS"
  • Fix: Changed code to check status == "DONE"

hunyuan-video:

  • Different APIs use different status fields
  • Fix: Unified handling to check both Status and JobStatusCode
# Before ❌ (only checked one field)
status = result.get("Status", "")
if status == "SUCCESS":

# After ✅ (handles all documented cases)
status = result.get("Status") or result.get("JobStatusCode", "")
if status in ["JobSuccess", "SUCCESS", "DONE", "4"]:
    # Success
elif status == "5" and result.get("ResultDetails") == ["Success"]:
    # Special case for stylization API

Result

After fixes:

  • ✅ Metadata: JSON format
  • ✅ SSL: Standard HTTPS
  • ✅ Documentation: Matches code behavior
  • Final Rating: "Benign" (high confidence)

Relationship with skill-creator-2

This skill is complementary to skill-creator-2:

Aspectskill-creator-2skill-security-guide
Skill structure design✅ Detailed guideNot covered
Progressive disclosure✅ Detailed guideNot covered
ClawHub security review❌ Not coveredSpecialized guide
Metadata JSON format❌ Not coveredCore content
SSL/Security best practices❌ Not coveredDetailed guide
Security checklist❌ Not coveredComplete checklist

Use both skills together:

  1. Use skill-creator-2 to design and structure your skill
  2. Use skill-security-guide to ensure it passes ClawHub security scans

License

MIT License

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

79.06%
按下载量换算2,051

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills