FACEPALM

Security checks across static analysis, malware telemetry, and agentic risk

Overview

FACEPALM is a coherent troubleshooting tool, but it can automatically send recent OpenClaw logs and chat transcripts to an external model without clear redaction or per-run approval.

Install only if you are comfortable with recent OpenClaw logs and chat history being sent to an external model for troubleshooting. Prefer manual invocation, review/redact sensitive data first, and verify the OpenClaw/OpenRouter credentials and provider policies before enabling automated integrations.

Static analysis

Static analysis findings are pending for this release.

VirusTotal

60/60 vendors flagged this skill as clean.

View on VirusTotal

Risk analysis

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

Recent chats and logs could include private messages, file paths, errors, tokens, or other sensitive troubleshooting data, and could be sent to the model provider when automation triggers the tool.

Why it was flagged

This documents an automatic path where recent local logs and chat transcripts are packaged for an external model/provider flow. The artifacts do not describe redaction, per-run confirmation, or provider data-handling limits.

Skill content
When invoked (automatically by Agent Swarm or manually), FACEPALM: ... Reads `gateway.log` ... Extracts chat history ... Uses Codex 5.3 (`openrouter/openai/gpt-5.3-codex`) via OpenClaw CLI
Recommendation

Require explicit confirmation before external model calls, redact secrets from logs and chat, document provider retention/usage, and keep the time window tightly bounded.

What this means

A malicious or accidental instruction inside recent chat/log content could lead to incorrect troubleshooting advice.

Why it was flagged

Raw transcript content is inserted into the prompt sent to the troubleshooting model. If prior chat or log text contains misleading instructions, the model’s diagnosis could be influenced.

Skill content
content = msg.get("content", msg.get("text", "")) ... context_parts.append(f"[{role}]: {content}") ... context_parts.append("Analyze the console logs and chat history above.")
Recommendation

Treat logs and chat as untrusted evidence in the prompt, clearly delimit them, and instruct the model not to follow embedded instructions from those sources.

What this means

Running the skill can consume the user’s configured OpenClaw/OpenRouter environment and may trigger model usage or billing.

Why it was flagged

The script launches the OpenClaw CLI as a subprocess to invoke the model. This is central to the troubleshooting purpose and uses an argument list rather than shell=True, but users should know it spawns another agent/model call.

Skill content
cmd = ["openclaw", "agent", "--message", prompt, "--model", model, "--deliver", "--timeout-ms", "120000"] ... subprocess.run(cmd, capture_output=True, text=True, timeout=130)
Recommendation

Run it only when troubleshooting is intended, ensure the `openclaw` binary on PATH is trusted, and consider restricting model overrides if used in automation.

What this means

The skill may use the user’s configured OpenRouter/OpenClaw account, including any associated permissions, quotas, or billing.

Why it was flagged

The skill depends on an existing provider credential and CLI account context, even though the registry metadata declares no primary credential. This appears purpose-aligned but should be visible to users.

Skill content
- **OpenRouter API key** configured (for Codex 5.3 access)
- **`openclaw` CLI** on PATH (for invoking Codex via `openclaw agent`)
Recommendation

Declare the credential dependency in metadata and use the least-privileged provider/account configuration available.