Back to skill

Security audit

Personality Switcher

Security checks across malware telemetry and agentic risk

Overview

The skill mostly matches its stated purpose, but some personality commands are not safely confined to the personalities folder and could delete or alter broader OpenClaw workspace files with crafted names.

Review before installing. Only use this skill if you accept persistent changes to assistant identity files and Telegram-accessible personality commands. A safer version should validate delete, rename, and switch names before resolving paths and should refuse names like dot-dot or paths containing slashes; until then, avoid installing it in workspaces where accidental or remote command input could damage important OpenClaw files.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Rogue AgentSelf-Modification, Session Persistence
  • Behavioral ASTexec() Call, eval() Call, Dynamic Import
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
Findings (9)

Lp3

Medium
Category
MCP Least Privilege
Confidence
91% confidence
Finding
The skill clearly describes reading and writing files across the workspace, including SOUL.md, IDENTITY.md, HEARTBEAT.md, backups, and state files, yet no permissions are declared. Undeclared file access reduces transparency and prevents informed consent, especially because the writes are persistent and affect core agent configuration.

Tp4

High
Category
MCP Tool Poisoning
Confidence
95% confidence
Finding
The public description understates behavior while the skill documentation indicates broader side effects, including rename/delete operations, persistent heartbeat restoration, and static analysis notes indicating edits to Telegram command configuration and uninstall metadata. Description-behavior mismatches are dangerous because they hide privileged or persistent actions from users and reviewers, making abuse or accidental system changes easier to smuggle in.

Context-Inappropriate Capability

Medium
Confidence
96% confidence
Finding
The install script invokes a Telegram command registration helper even though the skill description is focused on local personality switching and persistence. Adding external command surfaces expands the skill's control plane and can create unexpected remote-triggerable behavior that users were not clearly informed about.

Description-Behavior Mismatch

Medium
Confidence
98% confidence
Finding
The installer modifies the global HEARTBEAT.md file and injects a recurring restoration command, creating a persistence mechanism that survives session boundaries and may execute repeatedly. Undisclosed persistence is dangerous because it changes trusted automation behavior and can be abused to reapply state or run additional logic without fresh user approval.

Missing User Warnings

Medium
Confidence
84% confidence
Finding
The skill documents permanent deletion of personalities, but the warning language is weak and may lead users to overestimate recoverability because other sections emphasize backups and rollback. Destructive actions against persisted state are risky when recovery guarantees are limited or not clearly scoped to deleted personality folders.

Missing User Warnings

Medium
Confidence
88% confidence
Finding
The installation flow states that HEARTBEAT.md is modified so restoration runs automatically on every heartbeat, which creates persistent execution behavior beyond the immediate session. Silent or weakly disclosed persistence mechanisms are dangerous because they continue altering workspace state over time and can be hard for users to notice or remove.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
Automatically editing HEARTBEAT.md introduces persistent automation without a user-facing warning or approval step. In the context of a skill that restores personalities across compaction and sessions, this makes the behavior more dangerous because it deliberately hooks into a recurring execution path and can continue influencing future sessions.

Missing User Warnings

Low
Confidence
87% confidence
Finding
Running a Python subprocess during installation is an execution of additional code not visible in this file, and it occurs without notice or consent. Although this is common in installers, it is still a security concern because it extends trust to another script that may perform networked or privileged side effects such as Telegram registration.

Session Persistence

Medium
Category
Rogue Agent
Content
BACKUPS_DIR="${PERSONALITIES_DIR}/backups"
HEARTBEAT_FILE="${WORKSPACE}/HEARTBEAT.md"

# Create personalities and backups directories
mkdir -p "$PERSONALITIES_DIR"
mkdir -p "$BACKUPS_DIR"
Confidence
91% confidence
Finding
Create personalities and backups directories mkdir -p "$PERSONALITIES_DIR" mkdir -p "$BACKUPS_DIR" # Initialize default personality # Always create/recreate the default personality folder mkdir -p "$

VirusTotal

64/64 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.