communication-mqtt

PassAudited by VirusTotal on May 12, 2026.

Overview

Type: OpenClaw Skill Name: communication-mqtt Version: 1.0.1 The skill is classified as suspicious due to two main indicators. First, the `SKILL.md` file contains a direct instruction (`cat ~/.openclaw/openclaw.json`) for the AI agent to execute a shell command to read a potentially sensitive configuration file for self-identification. While its stated purpose is benign, this is a clear prompt injection vector for file access. Second, the `scripts/publish.py` script constructs an MQTT message payload that includes a `channel` field containing a `bash` command template (`openclaw --agent {agent_id} --message "message_here"`). Although this command is not executed by the current skill and is published to a local MQTT broker, it represents a risky capability that could be abused for prompt injection or command injection against other agents if they blindly process such messages.

Findings (0)

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

Installing the skill may require fetching Python packages from the user's configured package index.

Why it was flagged

The skill directs users to install unpinned Python packages and has no install spec or lockfile in the provided artifacts. The dependencies are expected for MQTT/Typer scripts, but users should be aware of the package-source trust decision.

Skill content
pip install paho-mqtt typer
Recommendation

Install from a trusted environment, consider pinning package versions, and review dependency sources if using this in a sensitive setup.

What this means

Agent roles, activities, timestamps, and contact instructions may remain visible to later broker subscribers and could become stale or misleading.

Why it was flagged

Published intro and status messages are retained by the MQTT broker, creating persistent shared state that may remain available after the publishing command exits.

Skill content
RETAIN = True
...
retain=RETAIN
Recommendation

Do not publish sensitive activity details, use a trusted broker, and clear retained MQTT messages or disable retention if persistence is not desired.

What this means

Another local process or broker client could publish spoofed intro/status messages that the skill prints as received agent information.

Why it was flagged

The skill communicates through MQTT topics without any authentication, sender verification, or message integrity checks in the provided code. This is purpose-aligned for local agent messaging, but broker messages may come from any client with broker access.

Skill content
BROKER = "localhost"
...
return f"agents/{agent_id}/{kind}" if agent_id else f"agents/+/{kind}"
Recommendation

Use only a trusted local broker, treat received messages as untrusted, and add broker authentication or sender validation before relying on messages for decisions.