T01 · Skill Instruction Hijacking
- Location
fallback/evoclaw/configure.md:758- Finding
Persistent Agent Governance and Priority Hijacking
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill installs a persistent self-evolving agent framework with broad memory, heartbeat, credential, and governance authority that needs careful review before use.
Install only if you intentionally want a persistent self-evolving agent workspace. Review all generated AGENTS.md, HEARTBEAT.md, SOUL.md, EvoClaw, and self-improving files before activation; avoid pasting raw API tokens into the agent; keep source polling opt-in; do not run the visualizer server on an untrusted network; and require explicit approval for heartbeat, default-agent, and governance changes.
fallback/evoclaw/configure.md:758Persistent Agent Governance and Priority Hijacking
fallback/evoclaw/tools/soul-viz.py:2263Unauthenticated Network-Facing SOUL.md Overwrite Endpoint
fallback/evoclaw/tools/soul-viz.py:850Stored Cross-Site Scripting in the Soul Evolution Dashboard
fallback/evoclaw/configure.md:108Plaintext Credential Persistence and Shell Command Injection
SKILL.md:137Forced Unpinned Installation of Third-Party Skills
The declared description is about automated framework deployment and configuration of an OpenClaw self-evolution environment. The supplied code does something materially different: it parses an already-existing SOUL.md and memory files, renders interactive visualizations, and optionally serves them over a local web server. It also allows browser-based editing and saving of SOUL.md through a /save-soul POST handler. None of the claimed installation/deployment behaviors are present, and the code assumes the workspace already exists. This is a clear description-behavior mismatch.
The declared description is about installation/deployment and interactive configuration of an agent evolution framework. The supplied code does none of that. It is a standalone validation utility that reads files under a memory directory, checks timestamps and expected artifacts (experiences, significant promotions, reflections, state, proposals), and outputs a JSON assessment. This is a materially different primary purpose, so the description does not accurately represent the code.
The description advertises an installer/bootstrap skill for an OpenClaw self-evolution framework with substantial setup and interactive configuration behavior. The supplied code does none of that. It is a validator that inspects the filesystem for expected EvoClaw markers and returns PASS/FAIL to prevent running in the wrong workspace. While some checked files relate to the described framework (e.g., SOUL.md, memory/), the code’s actual role is materially different: verification of an existing installation rather than deployment/configuration. This is a clear description-behavior mismatch.
The declared description presents a setup/deployment skill for installing and configuring an OpenClaw self-evolution framework. The supplied code instead reads an existing workspace layout and runs a series of validator scripts against files such as SOUL.md, config.json, experiences, reflections, proposals, and state data. Its outputs are a validation report and exit code. This is a materially different primary purpose from one-click deployment, and the interactive personality-guidance/setup capabilities described are entirely absent. The file/resource access is also oriented toward checking pre-existing artifacts rather than creating or configuring them.
There is a clear description-behavior mismatch. The declared purpose is an interactive deployment/setup tool for an OpenClaw self-evolution framework, including installation and configuration of multiple subsystems. The supplied code chunk does none of that. Its actual purpose is narrowly focused on validating the structure and contents of experience log files under a memory directory. This is not a supporting implementation detail of one-click deployment; it is a different utility with a distinct primary purpose and no visible deployment, installation, agent-guidance, or framework-configuration behavior.
The declared description presents this skill as an end-to-end deployment/setup tool for an OpenClaw self-evolution framework. However, the supplied code chunk only implements a proposal validator for EvoClaw. It validates JSONL proposal entries, enforces formatting and mutability rules, checks whether referenced content exists in SOUL.md, and returns a validation result. This is a materially different primary purpose from installing and configuring an agent framework. While the validator may be one component within a broader evolution system, this code alone does not substantiate the claimed deployment, dialogue, memory setup, or automatic configuration behavior.
The supplied code is narrowly focused on validating the schema and consistency of reflection JSON files under an EvoClaw-related path. It reads a JSON file, optionally scans experience files for referenced IDs, performs format and consistency checks, and returns validation results. It does not deploy anything, install framework components, modify system files, conduct user-guided setup, or configure the broader OpenClaw self-evolution framework described. This is a clear description-behavior mismatch because the actual primary purpose is validation, not one-click deployment or agent personality setup.
The declared description presents a full one-click deployment/setup skill for an evolving agent framework. The supplied code does not deploy, install, configure, or guide the user through setup. Its sole function is to parse and validate an existing SOUL.md file, optionally saving or checking snapshots of [CORE] bullets to detect modifications. This is a materially different primary purpose from the declared behavior, so the description does not accurately represent the code.
The declared description presents a setup/deployment skill for an agent self-evolution framework. The supplied code does not deploy, install, configure, or guide any setup workflow. Instead, it validates the structure and consistency of an EvoClaw state JSON file and compares counters with files on disk. This is a materially different primary purpose, so the description does not accurately represent the code behavior.
The description promises an end-to-end deployment and configuration skill for an OpenClaw self-evolution framework, including installation of core files, memory architecture, goal systems, and interactive guidance. The actual code performs none of those actions. It is a read-only environmental readiness checker that inspects filesystem state, configuration presence/validity, CLI availability, and fallback package completeness, then emits a JSON report. While such a preflight check could be a supporting component of a deployment skill, this code chunk by itself materially differs from the declared primary purpose and lacks the core installation/configuration/dialogue behaviors described.
Referenced artifact was not completely inspected
- 检查本 skill 所在目录的 `fallback/evoclaw/SKILL.md` 是否存在
The opening framing encourages the agent to treat SOUL.md as its own identity and later use personal beliefs, values, and boundaries as mutable objects, while the broader skill directs storage of user interactions and sensitive context. In context, this is dangerous because it sets up extensive personal-data handling and identity-state changes without presenting a clear user-facing privacy notice or consent boundary at the outset.
The skill's stated purpose is one-click deployment of a local framework, but this section expands behavior into persistent autonomous operation, including feed polling, reflection cycles, and identity evolution. That scope expansion is dangerous because it grants ongoing collection and decision-making capabilities unrelated to setup, increasing the chance of silent surveillance, unintended data processing, and policy bypass after installation.
This section mandates logging every substantive user interaction, including preferences, feedback, and emotionally significant exchanges, into durable files. Persistent capture of broad conversational content exceeds a deployment skill's purpose and creates a privacy and data-retention risk, especially when the user is not clearly warned that intimate or sensitive exchanges will be stored by default.
This section requires aggressive continuous logging of substantive interactions, explicitly including philosophical questions, emotional significance, and the agent's perception of relationship dynamics. Such broad durable collection of personal and sensitive conversational content creates material privacy, profiling, and misuse risks, especially when stored by default and tied to a long-term evolution system.
The checklist explicitly instructs the agent to preserve the human's preferences, corrections, emotional tone, and relationship dynamics after each exchange. This is dangerous because it normalizes ongoing behavioral profiling and creation of a persistent personal dossier, far beyond what a deployment skill reasonably needs.
The memory flush integration instructs the agent to store everything worth remembering from the session into durable records in two parallel stores for later retrieval. This increases the volume, persistence, and discoverability of potentially sensitive user content, compounding privacy risk and making accidental over-collection more likely.
The guide instructs the agent to take a pasted third-party API secret and persist it into the user's shell startup files automatically. This creates long-lived credential exposure, bypasses safer secret-management practices, and exceeds what is necessary for a documentation/setup skill.
The installation guide directs the agent to change the default OpenClaw agent, migrate heartbeat duties, and restart the gateway. Those are administrative actions affecting system-wide behavior and other agents, far beyond the narrow scope a user would expect from deploying one skill.
The guide instructs modification of global OpenClaw configuration and a gateway restart, which are privileged operational changes with potential impact on unrelated agents, sessions, and availability. This is broader than the stated installation purpose and can disrupt the environment or alter behavior outside the intended scope.
The heartbeat pipeline instructs the agent to review recent conversation history and harvest prior memory flush files into structured logs, effectively transforming transient interactions into durable records. This increases privacy risk because it systematizes persistent storage of user interactions across sessions.
The skill directs the agent to log essentially all substantive exchanges, feedback, and meaningful interactions into persistent memory files by default. This creates broad, ongoing retention of user data and behavioral history without meaningful minimization, retention limits, or sensitivity filtering.
This section defines ongoing heartbeat behavior to fetch social content, check DMs, classify significance, and store results in persistent memory files. That is operational surveillance and long-term data retention behavior, not simple installation, and it meaningfully increases privacy, consent, and misuse risk.
The X/Twitter section instructs the agent to continuously poll mentions and search results and then persist selected content. In this skill context, that is an undisclosed expansion from setup into recurring external monitoring and storage of third-party content.
The 'learning protocol' tells the agent to add arbitrary new sources, test connectivity, and persist new polling instructions for future autonomous use. That creates an extensible exfiltration and capability-expansion mechanism that can outlive the initial session and is far beyond a setup assistant's expected authority.