L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Développement · SKILL.md

openclaw-sentinel

openclaw-sentinel

Supply chain security for agent skills. Pre-install inspection, post-install scanning, obfuscation detection, and known-bad signature matching. Verify skills are safe before they touch your workspace. Free alert layer — upgrade to openclaw-sentinel-pro for quarantine, blocking, and community threat feeds.

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: openclaw-sentinel description: "Supply chain security for agent skills. Pre-install inspection, post-install scanning, obfuscation detection, and known-bad signature matching. Verify skills are safe before they touch your workspace. Free alert layer — upgrade to openclaw-sentinel-pro for quarantine, blocking, and community threat feeds." user-invocable: true metadata: {"openclaw":{"emoji":"🏰","requires":{"bins":["python3"]},"os":["darwin","linux","win32"]}}

OpenClaw Sentinel

Supply chain security scanner for agent skills. Detects obfuscated code, known-bad signatures, suspicious install behaviors, dependency confusion, and metadata inconsistencies — before and after installation.

The Problem

You install skills from the community. Any skill can contain obfuscated payloads, post-install hooks that execute arbitrary code, or supply chain attacks that modify other skills in your workspace. Existing tools verify file integrity after the fact — nothing inspects skills for supply chain risks before they run.

Need automated countermeasures? Upgrade to openclaw-sentinel-pro for quarantine, blocking, community threat feeds, SBOM generation, and continuous monitoring.

Commands

Scan Installed Skills

Deep scan of all installed skills for supply chain risks. Checks file hashes against a local threat database, detects obfuscated code patterns, suspicious install behaviors, dependency confusion, and metadata inconsistencies. Generates a risk score (0-100) per skill.

python3 {baseDir}/scripts/sentinel.py scan --workspace /path/to/workspace

Scan a Single Skill

python3 {baseDir}/scripts/sentinel.py scan openclaw-warden --workspace /path/to/workspace

Pre-Install Inspection

Scan a skill directory BEFORE copying it to your workspace. Outputs a SAFE/REVIEW/REJECT recommendation and shows exactly what binaries, network calls, and file operations the skill will perform.

python3 {baseDir}/scripts/sentinel.py inspect /path/to/skill-directory

Manage Threat Database

View current threat database statistics.

python3 {baseDir}/scripts/sentinel.py threats --workspace /path/to/workspace

Import a community-shared threat list.

python3 {baseDir}/scripts/sentinel.py threats --update-from threats.json --workspace /path/to/workspace

Quick Status

Summary of installed skills, scan history, and risk score overview.

python3 {baseDir}/scripts/sentinel.py status --workspace /path/to/workspace

Workspace Auto-Detection

If --workspace is omitted, the script tries:

  1. OPENCLAW_WORKSPACE environment variable
  2. Current directory (if AGENTS.md exists)
  3. ~/.openclaw/workspace (default)

What It Detects

CategoryPatterns
Encoded Executioneval(base64.b64decode(...)), exec(compile(...)), eval/exec with encoded strings
Dynamic Imports__import__('os').system(...), dynamic subprocess/ctypes imports
Shell Injectionsubprocess.Popen with shell=True + string concatenation, os.system()
Remote Code Execurllib/requests combined with exec/eval — download-and-run patterns
ObfuscationLines >1000 chars, high-entropy strings, minified code blocks
Install BehaviorsPost-install hooks, auto-exec in __init__.py, cross-skill file writes
Hidden FilesNon-standard dotfiles and hidden directories
Dependency ConfusionSkills shadowing popular package names, typosquatting near-matches
Metadata MismatchUndeclared binaries, undeclared env vars, invocable flag inconsistencies
Serializationpickle.loads, marshal.loads — arbitrary code execution via deserialization
Known-Bad HashesFile SHA-256 matches against local threat database

Risk Scoring

Each skill receives a score from 0-100:

ScoreLabelMeaning
0CLEANNo issues detected
1-19LOWMinor findings, likely benign
20-49MODERATEReview recommended
50-74HIGHSignificant risk, review required
75-100CRITICALSerious supply chain risk

Threat Database Format

Community-shared threat lists use this JSON format:

{
  "hashes": {
    "<sha256hex>": {"name": "...", "severity": "...", "description": "..."}
  },
  "patterns": [
    {"name": "...", "regex": "...", "severity": "..."}
  ]
}

Exit Codes

  • 0 — Clean, no issues
  • 1 — Review needed
  • 2 — Threats detected

No External Dependencies

Python standard library only. No pip install. No network calls. Everything runs locally.

Cross-Platform

Works with OpenClaw, Claude Code, Cursor, and any tool using the Agent Skills specification.

Skills enregistrées