Zoran
作者:Zoran更新日 2026-07-04skill-auditor@clawhub_zoran-xc/skill-auditor
セキュリティスキャン

AlphaMoatによると、2026-09時点でSkill Auditorのダウンロード数は3,920、スター数は1で、AIスキル全体5,078件中2,645位、IT運用・セキュリティでは264件中158位です。

インストール数
132
ダウンロード数
3920
スター数
1
総合順位
#2,645
全体の上位 53% · IT運用・セキュリティの上位 60%
プラットフォームインストール数ダウンロード数スター数コメント
ClawHub ↗3577--
SkillHub ↗13239201—

プラットフォームごとに集計方法と集計時点が異なります。

このスキルでできること

リスクパターンの検査、リスクスコア、バッチスキャン、CI 連携に対応します。スキャンは内容を見落としたり、範囲を過大評価したりする可能性があるため、結果だけで承認しないでください。信頼できないディレクトリはサンドボックスで扱い、機密断片を含むフォルダー全体をアップロードしないでください。

資料公開日 2026-10-29

できること

  • 導入や統合の前に AI エージェント用スキルのディレクトリを確認する開発者やセキュリティ担当者向けです。

使う場面

  • 検出結果は補助情報として扱い、人が確認してください。信頼できないスキルは隔離環境でスキャンし、レポートや CI 成果物に含まれる機密情報を制限してください。

プロンプト例

スキルのドキュメントをもとに生成した例であり、実際の実行結果ではありません。

このスキルディレクトリのセキュリティリスクを確認し、人が検証できるレポートを作成してください。スキャン範囲と見落としの可能性を示し、自動承認とはみなさないでください。

月次の推移

ダウンロード数3920
2548328540222026-03 · ダウンロード数 26502026-05 · ダウンロード数 31692026-07 · ダウンロード数 33532026-08 · ダウンロード数 35562026-09 · ダウンロード数 392026-0326-09
スター数1
0122026-03 · スター数 12026-05 · スター数 12026-07 · スター数 12026-08 · スター数 12026-09 · スター数 126-0326-09

2026-09 から集計方法を変更し、同名スキルを作者ごとに分けて集計し、全スキルを対象にしました。破線は変更前の月で、変更後のデータとは直接比較せず、変更をまたぐ増減も計算していません。 同名の別スキルがあるため、変更前のデータは現在ダウンロード数が最も多いこのスキルに帰属させています。

月ダウンロード数前月比スター数
2026-093920—1
2026-083556+6.1%1
2026-073353—1
2026-053169—1
2026-032650—1

SKILL.md 原文

作者が公開した元のファイルをテキストのまま表示しています。AlphaMoat による編集や審査はしていません。リンクはクリックできません。コマンドは内容を確認してから実行してください。取得日 2026-10-23。

8.5 KB・ClawHub v1.0.0
---
name: skill-auditor
description: Automated security audit for AI agent skills. Use BEFORE installing any skill from ClawHub, GitHub, or other sources. Scans SKILL.md + all files for 30+ red flag patterns, computes a 0-100 risk score, and outputs a structured report. Superset of skill-vetter with automated scanning, batch mode, and CI integration.
version: 1.0.0
license: MIT
---

# Skill Auditor 🔒

Automated, security-first audit for AI agent skills. **Never install a skill without auditing it first.**
すべて表示(全 217 行)

> Superset of [skill-vetter](https://clawhub.ai/spclaudehome/skill-vetter) with three additions:
> (1) **Automated scanning** via `scripts/vet.py` — no more manual checklist reading.
> (2) **Quantitative risk score** (0-100) instead of just LOW/MED/HIGH labels.
> (3) **Batch mode + CI integration** — audit an entire `skills/` dir, hook into pre-commit / GitHub Actions.

## When to Use

- Before `clawhub install <skill>` from ClawHub
- Before `git clone` of any skill repo
- Before copying a skill folder into your workspace
- In CI: as a pre-commit hook or GitHub Action on repos that vendor skills
- Periodically: re-audit your installed skills after upstream updates (skills drift)

## Quick Start

```bash
# Audit a single skill folder
python3 {baseDir}/scripts/vet.py path/to/some-skill

# Audit with JSON output (for CI / programmatic use)
python3 {baseDir}/scripts/vet.py path/to/some-skill --json

# Audit all skills in a directory (batch mode)
python3 {baseDir}/scripts/vet.py --batch path/to/skills/

# Show risk score only (0-100)
python3 {baseDir}/scripts/vet.py path/to/some-skill --score
```

## The Audit Protocol (6 Steps)

The automated script handles steps 2-4. Steps 1, 5, 6 still benefit from human judgment.

### Step 1: Source Check (human)

- Where did this skill come from? (ClawHub / GitHub / DM / fork?)
- Is the author known/reputable? Cross-check on the platform's creator page.
- Download / star count (popularity signal, not safety signal).
- Last update date (stale skills rot).
- Are there reviews / discussions from other users?

### Step 2: Automated Code Scan (script)

`scripts/vet.py` reads ALL files in the skill folder and checks against 30+ red-flag rules. See [references/rules.md](references/rules.md) for the full rule set.

Categories covered:
- Network exfiltration (curl/wget to unknown hosts, IP-literal URLs, Pastebin, tor)
- Credential access (`~/.ssh`, `~/.aws`, `~/.config`, browser cookies, keychain)
- Identity files (`MEMORY.md`, `USER.md`, `SOUL.md`, `IDENTITY.md` — core agent files)
- Dangerous code (`eval()`, `exec()` with input, `pickle.loads`, `subprocess` with `shell=True`)
- Obfuscation (base64 decode, hex blobs, minified/encoded payloads)
- File system abuse (writes outside workspace, `sudo`, `chmod 777`, shell rc files)
- Permission escalation (sudo, modifying sudoers, requesting broad scopes)
- Supply chain (installing packages without listing them, curl|sh, pip install from raw URLs)

### Step 3: Permission Scope (script + human)

The script extracts declared permissions from frontmatter (`metadata.openclaw.requires`) and compares against actual file/network behavior. Mismatches are flagged:

- Declares `requires.bins: [gh]` but uses `curl` → mismatch
- No `requires.env` but reads `process.env.GITHUB_TOKEN` → mismatch
- Declares nothing but reads `~/.aws/credentials` → critical

### Step 4: Risk Scoring (script)

Each red flag has a weight (5-25 points). The script sums weights and caps at 100. See [references/scoring.md](references/scoring.md) for the full model.

| Score | Risk Level | Action |
|-------|------------|--------|
| 0-15  | 🟢 LOW     | Basic review, install OK |
| 16-40 | 🟡 MEDIUM  | Full code review required |
| 41-70 | 🔴 HIGH    | Human approval required |
| 71-100| ⛔ EXTREME | Do NOT install |

### Step 5: Trust Hierarchy (human)

Apply different scrutiny based on source:

1. **Official OpenClaw skills** → Lower scrutiny (still audit)
2. **High-star repos (1000+)** → Moderate scrutiny
3. **Known authors with track record** → Moderate scrutiny
4. **New / unknown sources** → Maximum scrutiny
5. **Skills requesting credentials** → Human approval always, regardless of source

### Step 6: Decision & Documentation (human)

Based on the audit report, decide:
- ✅ **SAFE TO INSTALL** — proceed
- ⚠️ **INSTALL WITH CAUTION** — install but monitor, or request changes from author
- ❌ **DO NOT INSTALL** — reject, optionally report to community

Document the decision in your team's trust ledger (see [references/trust-database.md](references/trust-database.md)).

## Output Format

The script produces a structured report:

```
SKILL AUDIT REPORT
═══════════════════════════════════════════════════
Skill:    [name]
Source:   [ClawHub / GitHub / other]
Author:   [username]
Version:  [version]
Audited:  [date] by skill-auditor v1.0.0
───────────────────────────────────────────────────
METRICS:
• Files scanned:    [count]
• Lines scanned:    [count]
• Rule violations:  [count]
• Scan duration:    [seconds]
───────────────────────────────────────────────────
RISK SCORE: 42/100  →  🔴 HIGH

RED FLAGS (by severity):
⛔ CRITICAL (25 pts each):
  • [rule_id] [file:line] — [description]
🔴 HIGH (15 pts each):
  • [rule_id] [file:line] — [description]
🟡 MEDIUM (10 pts each):
  • [rule_id] [file:line] — [description]
🟢 LOW (5 pts each):
  • [rule_id] [file:line] — [description]

PERMISSION MISMATCHES:
  • [declared vs actual]

VERDICT: ❌ DO NOT INSTALL
═══════════════════════════════════════════════════
```

JSON output (`--json`) is machine-readable for CI.

## CI Integration

See [references/ci-integration.md](references/ci-integration.md) for:

- Pre-commit hook (reject commits that add unaudited skills)
- GitHub Action (audit skills on PR)
- Scheduled re-audit (catch upstream drift)

Quick example — `.github/workflows/audit-skills.yml`:

```yaml
on: [pull_request]
jobs:
  audit:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: pip install -r skills/skill-auditor/requirements.txt  # if needed
      - run: python3 skills/skill-auditor/scripts/vet.py --batch skills/ --fail-on high
```

## Comparison with skill-vetter

| Feature | skill-vetter (v1.0) | skill-auditor (v1.0) |
|---|---|---|
| Audit method | Manual checklist | Automated scan + manual judgment |
| Red flag rules | 13 | 30+ |
| Risk scoring | 4-tier label | 0-100 numeric + 4-tier label |
| Batch mode | ❌ | ✅ |
| CI integration | ❌ | ✅ (pre-commit, GitHub Action) |
| Permission mismatch check | ❌ | ✅ |
| Trust database | ❌ | ✅ (optional, offline) |
| Output | Markdown template | Markdown + JSON |

## Trust Database

`references/trust-database.md` is an offline, community-maintained list of known-malicious and known-benign skill slugs. Contributions welcome via PR. The script reads it if present and warns on matches.

## Rules of Engagement

- **No skill is worth compromising security.**
- When in doubt, don't install.
- High-score skills from known authors still need review — supply chain attacks target trusted authors.
- Document every audit decision so future-you (and your team) can learn.
- Re-audit after upstream updates — skills drift.

## Files

```
skill-auditor/
├── SKILL.md                # this file
├── scripts/
│   ├── vet.py              # single-skill audit (main entry)
│   ├── batch_vet.py        # batch audit a directory
│   └── score.py            # scoring model (imported by vet.py)
├── references/
│   ├── rules.md            # full rule set (30+ rules)
│   ├── scoring.md          # scoring model explanation
│   ├── ci-integration.md   # CI setup guide
│   └── trust-database.md   # known-malicious / known-benign slugs
├── examples/
│   ├── report-example.md   # sample audit report
│   └── github-action.yml   # ready-to-use GitHub Action
└── tests/
    ├── test_vet.py         # test suite
    ├── test_skill_good/    # benign skill sample (should score low)
    └── test_skill_malicious/  # malicious skill sample (should score high)
```

---

*Paranoia is a feature. Automation is a multiplier.* 🔒🦀

IT運用・セキュリティの人気スキル

データ月:2026-09 · ダウンロード数、スター数、インストール数は公開スキルレジストリ(ClawHub、SkillHub)から月単位で集計しています。詳しくはデータの方法論をご覧ください。