Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

safeclaw

v1.0.0

Security compliance checker for MCP/LLM applications. Performs non-invasive security assessments on configuration files.

0· 98·0 current·0 all-time
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
!
Purpose & Capability
The skill claims to be a security compliance checker, which is coherent with requiring python3 and a runner (uv). However there is no scanner code bundled with the skill (no main.py or package) and no install spec — the SKILL.md assumes the target project already provides main.py. That dependence on an external, unverified script is inconsistent with the expectation that the skill performs the checks itself.
!
Instruction Scope
Runtime instructions tell the agent to cd {baseDir}/../../ (project root) and run 'uv run python main.py' with the user's config. That executes arbitrary code from the repository with the agent's privileges. While running a local scanner is reasonable for a checker, the skill does not verify or bundle the scanner and offers no safety checks (e.g., confirming main.py is the expected scanner), so the agent may run unexpected code. Auto-discovery also allows scanning arbitrary files under the project root.
Install Mechanism
No install spec (instruction-only), so the skill does not download or write code to disk. This is lower install risk, but combined with the missing bundled scanner it means the skill relies on an external tool being present in the user's repo/environment.
Credentials
The skill declares no environment variables or credentials (proportionate). However, because it runs a local Python script from the repo, that script could access environment variables, files, or network resources — side-effects that are not declared or constrained by the skill's metadata.
Persistence & Privilege
always is false and there is no self-install behavior or requests to modify other skills or global config. The skill can be invoked by the agent, but it does not claim permanent presence or extra privileges.
What to consider before installing
This skill appears to be a wrapper that invokes a local scanner (uv run python main.py) rather than containing the scanner itself. Before installing or running it, verify that a trustworthy 'main.py' scanner actually exists at the project root you expect and inspect that file (or the scanner distribution) — otherwise the agent will execute whatever code is present there with its privileges. Also ensure you trust the 'uv' package manager and have Python 3. Consider running the check in an isolated environment (container/VM) or using a version of the skill that bundles a vetted scanner or invokes a known remote service instead of executing project-local code.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

OSmacOS · Linux
Binsuv, python3
latestvk970vt1jevxkqf7r19j0j67gyh83etde
98downloads
0stars
1versions
Updated 3w ago
v1.0.0
MIT-0
macOS, Linux

SafeClaw Security Checker

Perform security compliance checks on MCP/LLM application configurations.

Usage

When the user invokes this skill, run security checks on their configuration.

Basic Command

cd {baseDir}/../../ && uv run python main.py check --config "<config_path>" --format json

Arguments

  • config_path: Path to the configuration file to check (JSON/YAML/TOML)
  • If no path provided, use --auto to auto-discover config:
    cd {baseDir}/../../ && uv run python main.py check --auto --format json
    

Execution Flow

  1. Determine config path:

    • If user provides a path, use it
    • If user wants auto-discovery, use --auto
    • If unsure, ask the user
  2. Run the check:

    cd {baseDir}/../../ && uv run python main.py check --config "<path>" --format json
    
  3. Parse JSON output: The output has this structure:

    {
      "summary": {
        "overall_status": "安全|注意|高危",
        "total": 10,
        "passed": 7,
        "failed": 3,
        "by_level": {"safe": 7, "attention": 2, "high_risk": 1}
      },
      "failed_results": [
        {
          "name": "检查项名称",
          "category": "安全类别",
          "level": "高危|注意",
          "message": "问题描述",
          "risk_description": "风险说明",
          "remediation": "整改建议",
          "fix_commands": ["command to fix"]
        }
      ]
    }
    
  4. Report findings:

    • Show summary: X passed, Y attention items, Z high-risk
    • List high-risk items FIRST with remediation steps
    • List attention items with suggestions
    • If all passed, congratulate the user

Exit Codes

  • 0: All checks passed (safe)
  • 1: Attention items found
  • 2: High-risk items found

Example Config

Use {baseDir}/example-config.json as a reference template for users who need a starting point.

Categories Checked

CategoryDescription
配置与密钥Secrets in config, hardcoded credentials
权限File permissions, access controls
网络暴露Network bindings, CORS, exposed ports
插件安全MCP server security, plugin sources
日志与审计Logging configuration, audit trails
版本信息Version exposure, update status
OpenClaw安全OpenClaw-specific deployment security

Example Invocation

User: "/safeclaw check my config at ./config/mcp.json"

Response:

  1. Run: cd {baseDir}/../../ && uv run python main.py check --config "./config/mcp.json" --format json
  2. Parse results and present findings in a clear, actionable format

Tips

  • Always use --format json for machine-readable output
  • The skill runs from the skill directory, so use {baseDir}/../../ to reach project root
  • If the config file doesn't exist, suggest using the template at {baseDir}/templates/minimal-config.json

Comments

Loading comments...