Skill flagged — suspicious patterns detected

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

Li Sentry Check

v0.4.0

Multi-platform server inspection and health check skill. SSH into remote Linux servers using key-based authentication, run read-only inspection commands (CPU...

0· 42·0 current·0 all-time
byTerry S Fisher@43622283

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for 43622283/li-sentry-check.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Li Sentry Check" (43622283/li-sentry-check) from ClawHub.
Skill page: https://clawhub.ai/43622283/li-sentry-check
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install li-sentry-check

ClawHub CLI

Package manager switcher

npx clawhub@latest install li-sentry-check
Security Scan
Capability signals
CryptoRequires walletCan make purchasesRequires sensitive credentials
These labels describe what authority the skill may exercise. They are separate from suspicious or malicious moderation verdicts.
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
The declared purpose (SSH-based, read-only server inspection) aligns with the files and documentation: targets.yaml/checks.yaml, SSH key usage, and scripts for Node/Python implementations are expected. The skill does not request unrelated cloud credentials or unusual config paths in its metadata, which is coherent with its stated purpose.
!
Instruction Scope
SKILL.md tightly constrains runtime behavior (allowlist of commands from references/checks.yaml, key-based SSH, non-interactive BatchMode, single target). However the actual enforcement of these constraints depends on the implementation in scripts/inspect.py and scripts/inspect.mjs. Those script sources were not provided in the review excerpt, so we cannot confirm they actually implement strict allowlisting, prevent network connections other than the target, avoid reading unrelated files or environment variables, or avoid exfiltration. The SKILL.md explicitly allows reading the SSH private key at keyPath and the two references files — reading the private key is necessary for SSH but is sensitive and worth auditing in the code path that uses it.
Install Mechanism
No install spec is present (instruction-only), which means nothing is downloaded or installed automatically by the registry. This is lower-risk than remote installers. The skill does include executable scripts which will be run by the agent/platform at invocation rather than installed system-wide.
Credentials
No environment variables, special config paths, or credentials are declared in registry metadata — appropriate for an SSH-key-based inspection tool. That said, because the implementation code was not inspected here, it is unknown whether the scripts read additional environment variables or unexpected files at runtime. The declared requirement to read the SSH private key from keyPath is proportionate but is a sensitive operation that should be implemented carefully (proper file permissions, no logging of the key).
Persistence & Privilege
The skill does not request always:true and is user-invocable only; it does not claim to persistently modify agent configuration or system-wide settings. That is proportionate for this functionality.
What to consider before installing
The skill's documentation describes a reasonable read-only SSH inspection tool, but you should NOT install or run it without first auditing the implementation in scripts/inspect.py and scripts/inspect.mjs. Specifically: 1) Confirm the scripts strictly enforce the checks.yaml command allowlist and validate service/command inputs (no shell interpolation or shell=True usage). 2) Search the scripts for outgoing network activity (HTTP requests, sockets, DNS lookups) and any hard-coded remote endpoints — the SKILL.md forbids exfiltration but only code review can verify it. 3) Verify the code only reads the SSH private key for making an SSH connection and does not transmit the key or other sensitive files. 4) Check subprocess usage for shell=True, unsanitized command building, or use of user-provided values directly in commands. 5) Run the scripts in an isolated environment (container or VM) against a test server first, and confirm observed network traffic matches only the expected SSH session. 6) Ensure targets.yaml and checks.yaml contain only the hosts/commands you expect, and enforce strict filesystem permissions on your private key (chmod 600). If you cannot or will not review the script sources, treat this package as untrusted.
scripts/inspect.mjs:119
Shell command execution detected (child_process).
Patterns worth reviewing
These patterns may indicate risky behavior. Check the VirusTotal and OpenClaw results above for context-aware analysis before installing.

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

latestvk971v2cz1png8k3qgrygv6926x85j5yq
42downloads
0stars
4versions
Updated 1d ago
v0.4.0
MIT-0

li_sentry_check

Multi-platform server inspection and health check via SSH.

Security Declaration

This skill is strictly read-only and does NOT:

  • ❌ Modify any server configuration
  • ❌ Install or remove software
  • ❌ Restart or stop services
  • ❌ Write to any file on the remote server
  • ❌ Exfiltrate data to external services
  • ❌ Access local files other than: references/targets.yaml, references/checks.yaml, and the SSH private key specified in keyPath
  • ❌ Make any network connections other than SSH to the target server specified in targets.yaml
  • ❌ Execute arbitrary commands — only commands from references/checks.yaml are allowed

This skill ONLY:

  • ✅ Reads system information via predefined read-only commands
  • ✅ Generates a local Markdown/JSON report
  • ✅ Connects to ONE remote server via SSH using the key specified in targets.yaml

Overview

Read-only inspection of remote Linux hosts over SSH using a dedicated key. Collects system metrics, service status, security events, and generates a structured Markdown report with anomaly highlighting.

Platform Support

PlatformScriptRuntime
OpenClawscripts/inspect.mjsNode.js 24+
NanoBotscripts/inspect.pyPython 3.10+
Hermesscripts/inspect.pyPython 3.10+

Safety (Default Deny)

  • Only run commands defined in references/checks.yaml
  • No state-changing commands (no installs, no config edits, no restarts)
  • Only SSH key authentication (no passwords)
  • BatchMode=yes — non-interactive SSH only

Config

  • Targets: references/targets.yaml
  • Allowed checks: references/checks.yaml

How To Run

NanoBot / Hermes (Python)

python3 scripts/inspect.py --target bogon --checks daily

OpenClaw (Node.js)

node scripts/inspect.mjs --target bogon --checks daily

Options

OptionDescriptionDefault
--targetTarget name from targets.yaml(required)
--checksCheck group: basic, services, dailybasic
--formatOutput format: markdown, jsonmarkdown
--outputWrite report to file instead of stdoutstdout

Check Groups

GroupDescription
basicHardware resources: CPU, memory, disk, network
servicesService status and error logs (from targets.yaml)
dailyFull inspection: basic + services + security + logs

Extending

  1. Add target: Edit references/targets.yaml
  2. Add checks: Edit references/checks.yaml
  3. Add check group: Define new group in checks.yaml

SSH Key Setup

# Generate key pair
ssh-keygen -t rsa -b 4096 -f ~/.ssh/li_sentry_check -N ""

# Copy to remote server
ssh-copy-id -i ~/.ssh/li_sentry_check.pub inspector@<SERVER_IP>

# Test connection
ssh -i ~/.ssh/li_sentry_check inspector@<SERVER_IP>

Security Best Practices

  • Key permissions: chmod 600 ~/.ssh/li_sentry_check
  • Host verification: For production, pre-populate known_hosts instead of accept-new
  • Service names: Only alphanumeric, hyphens, underscores allowed (validated before use)
  • Command allowlist: Never modify checks.yaml with state-changing commands
  • Report handling: Reports may contain system data — do not share publicly

Report Output

Reports are generated in Markdown format with:

  • Summary section: Overall health status, anomaly count
  • Anomaly section: ⚠️ Highlighted issues requiring attention
  • Normal section: Collapsible normal check results
  • Details: Full command output for each check

Architecture

li_sentry_check/
├── SKILL.md                  # This file
├── _meta.json                # Skill metadata
├── references/
│   ├── targets.yaml          # Target server configuration
│   └── checks.yaml           # Command allowlist
└── scripts/
    ├── inspect.mjs           # Node.js implementation (OpenClaw)
    └── inspect.py            # Python implementation (NanoBot/Hermes)

Comments

Loading comments...