T01 · Skill Instruction Hijacking
- Location
templates/AGENTS.md:1- Finding
Persistent Agent Authority and Behavioral Instruction Hijacking
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is mostly a coherent OpenClaw tuning package, but it also installs persistent agent behavior, broad automation defaults, sensitive X bookmark workflows, and permission-changing scripts that need careful review before use.
Review this before installing. The base templates may be useful, but do not run lock-identity.sh or enable the X bookmarks cron/posting workflow until you are comfortable with the exact files changed, the persistent memory model, the OAuth credential storage, and any messages sent to external channels. Prefer disabling AFK automation and auto-posting by default, fixing the OAuth script, and adding a manual approval step for any external action.
templates/AGENTS.md:1Persistent Agent Authority and Behavioral Instruction Hijacking
integrations/x-bookmarks/research-prompt.md:8Prompt Injection Exposure Through Untrusted Bookmark and Web Content
integrations/x-bookmarks/research-prompt.md:34Automated External Channel Posting Without an Explicit Per-Run Approval Gate
integrations/x-bookmarks/scripts/x-bookmarks-auth.sh:21OAuth Client Secret Exposed in Process Command-Line Arguments
integrations/x-bookmarks/scripts/x-bookmarks-auth.sh:32OAuth State Parameter Is Generated but Not Validated
setup/lock-identity.sh:27Identity Locking Uses Unnecessary Root Ownership and World-Readable Permissions
setup/lock-identity.sh:45Identity-Locking Script Changes Permissions on Unrelated Operational Files
There is a real description-behavior mismatch within the visible file: the skill markets itself as a broad, production-ready setup, but the documented actions are mainly template copying, directory creation, and identity-file locking. Overstating scope and under-describing security-relevant side effects like file permission locking can mislead users into running privileged or persistent changes they did not fully anticipate.
There is a real description-behavior mismatch within the visible file: the skill markets itself as a broad, production-ready setup, but the documented actions are mainly template copying, directory creation, and identity-file locking. Overstating scope and under-describing security-relevant side effects like file permission locking can mislead users into running privileged or persistent changes they did not fully anticipate.
There is a real description-behavior mismatch within the visible file: the skill markets itself as a broad, production-ready setup, but the documented actions are mainly template copying, directory creation, and identity-file locking. Overstating scope and under-describing security-relevant side effects like file permission locking can mislead users into running privileged or persistent changes they did not fully anticipate.
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
NEW_FILE = os.path.join(WORKSPACE, "research/x-bookmarks-new.json")
def refresh_token():
"""Refresh the OAuth 2.0 access token using the refresh token."""
with open(TOKEN_FILE) as f:
token = json.load(f)
with open(CREDS_FILE) as f:
The code accesses a user's X account, downloads all bookmarks, and persists their contents into local research files, which is more invasive than the skill metadata suggests. In this context, bookmark contents may include sensitive personal, political, professional, or investigative material, so undisclosed collection and retention materially increases privacy and confidentiality risk.
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
fi
# ── LAUNCHAGENT PLISTS ────────────────────────────────────────────────────────
# Plists can reveal script paths, Keychain service names, and monitoring targets.
PLIST_COUNT=0
for plist in "$LAUNCHAGENTS_DIR"/ai.openclaw.*.plist "$LAUNCHAGENTS_DIR"/com.openclaw.*.plist; do
if [ -f "$plist" ]; then
Tool calls are chained to bypass individual safety checks or escalate capabilities beyond what any single tool call would allow.
echo "Lock complete."
echo ""
echo "To edit locked files later:"
echo " sudo chmod 644 $WORKSPACE/SOUL.md && \$EDITOR $WORKSPACE/SOUL.md && sudo chmod 444 $WORKSPACE/SOUL.md"
echo " chmod 644 $WORKSPACE/USER.md && \$EDITOR $WORKSPACE/USER.md && chmod 600 $WORKSPACE/USER.md"
Skill instructs the agent to omit warnings, disclaimers, or ethical commentary. Stripping safety caveats hides risk from the user and is a common jailbreak preamble.
## Anti-Patterns (never do these)
- Don't explain how AI works
- Don't apologize for being an AI
- Don't ask clarifying questions when context is obvious
- Don't suggest "you might want to" — either do it or don't
- Don't add disclaimers to every action
Telling the agent not to add disclaimers and to 'either do it or don't' weakens natural safety friction and can discourage cautionary messaging in ambiguous or risky situations. In combination with other autonomy-oriented rules, this can make the agent more likely to execute unsafe actions without communicating limitations, risks, or need for approval.
- Don't apologize for being an AI
- Don't ask clarifying questions when context is obvious
- Don't suggest "you might want to" — either do it or don't
- Don't add disclaimers to every action
- Don't read emails/messages back verbatim unless asked
- Don't explain what you're about to do — just do it, then report
- Don't let tool errors appear in chat without an immediate explanation
The changelog advertises a workflow that automatically posts bookmark-derived analysis to a research channel, but it does not mention any consent gate, destination validation, content filtering, or privacy warning. In an agent framework that emphasizes automation and persistent integrations, this can lead to unintended transmission of private reading habits, sensitive bookmark content, or derived insights to external systems without the user fully appreciating the disclosure.
The phrase 'Fully automated — runs without asking' establishes autonomous decision-making as a supported operating mode. While the surrounding text does distinguish some higher-risk actions, the overall skill context promotes a production-ready agent that acts independently, which can still cause unintended internal changes, mistaken executions, or unsafe chaining if safeguards are incomplete or misunderstood.
## Why the Automation Tiers Are Where They Are
The system defines three tiers of behavior:
1. **Fully automated** — runs without asking
2. **Prepped for approval** — prepares the action, waits for go-ahead
3. **Never without explicit instruction** — hard stop regardless of context
The document encourages the agent to take self-directed action during idle time by asking what it can do right now and then 'does the work,' but it does not clearly warn that such autonomy may modify files, queues, logs, or system state unexpectedly. In a tuning package for an autonomous agent, this increases the chance of silent drift, accidental changes, or persistence of unwanted artifacts when the user is absent.
This section explicitly endorses persistent memory, daily logs, typed memory, and automatic consolidation of raw notes without any accompanying warning about privacy, retention, or unintended capture of sensitive data. In an agent skill marketed as production-ready, normalizing autonomous file-writing and long-term storage can lead users to enable behaviors that persist personal, operational, or credential-adjacent information without informed consent or clear boundaries.
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
## The Problem
Most people who set up an AI agent get a blank slate. No memory, no personality, no rules. They spend weeks figuring out why it keeps forgetting things, why it sounds like a chatbot, why it does stupid things without asking.
Then they either give up or spend months iterating toward something useful.
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
## The Problem
Most people who set up an AI agent get a blank slate. No memory, no personality, no rules. They spend weeks figuring out why it keeps forgetting things, why it sounds like a chatbot, why it does stupid things without asking.
Then they either give up or spend months iterating toward something useful.
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
## The Problem
Most people who set up an AI agent get a blank slate. No memory, no personality, no rules. They spend weeks figuring out why it keeps forgetting things, why it sounds like a chatbot, why it does stupid things without asking.
Then they either give up or spend months iterating toward something useful.
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
## The Problem
Most people who set up an AI agent get a blank slate. No memory, no personality, no rules. They spend weeks figuring out why it keeps forgetting things, why it sounds like a chatbot, why it does stupid things without asking.
Then they either give up or spend months iterating toward something useful.
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
## The Problem
Most people who set up an AI agent get a blank slate. No memory, no personality, no rules. They spend weeks figuring out why it keeps forgetting things, why it sounds like a chatbot, why it does stupid things without asking.
Then they either give up or spend months iterating toward something useful.
This section promotes behavior where the agent can distinguish between 'run without asking' and 'never without permission,' which implies some tasks may execute autonomously. In a production-ready agent skill, normalizing autonomous execution without defining strict default-deny boundaries can lead to unintended file or workflow changes.
**This skill skips all of that.**
What you're installing is a battle-tested identity, memory architecture, and operating protocol — built from months of real-world daily use. It makes your agent actually behave: pushing back when you're wrong, remembering what matters, doing work while you sleep, and knowing the difference between "run without asking" and "never without permission."
---
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
cp skills/enoch-tuning/templates/USER.md USER.md cp skills/enoch-tuning/templates/MEMORY.md MEMORY.md cp skills/enoch-tuning/templates/MISSION.md MISSION.md mkdir -p ops cp skills/enoch-tuning/templates/ops/verification-protocol.md ops/verification-protocol.md
The README explicitly advertises that the agent may 'work while you're AFK' and execute mission-oriented tasks, but it does not clearly warn users that autonomous actions can modify files, memory, task queues, or other local state even when no user is present. In an agent-installation skill, that omission matters because users may enable the setup expecting convenience without fully understanding the scope of unattended changes.
The skill advertises installation steps that copy files into the user's workspace and execute shell scripts, yet it declares no explicit tool scope or permissions. That creates a transparency and trust gap: users and security tooling cannot easily understand that local file modification and command execution are required before installation.
The installation instructions direct users to copy files into ~/.openclaw/workspace and run shell scripts, but they provide no explicit warning that local files will be created, overwritten, or permission-changed. This is dangerous because users may execute the commands without understanding persistence, overwrite risk, or the consequences of running unreviewed shell scripts.
The skill intentionally creates a long-term memory structure under the user's workspace, which introduces session persistence. Persistent memory can accumulate sensitive personal, project, or operational data over time, and in this context the skill heavily encourages identity, user, mission, and memory files, increasing privacy and data-retention risk.
cp skills/enoch-tuning/templates/ops/verification-protocol.md ~/.openclaw/workspace/ops/verification-protocol.md
### Step 2 — Create memory structure
```bash
bash skills/enoch-tuning/setup/memory-structure.sh ~/.openclaw/workspace
The skill explicitly promotes 'automation tiers' including actions that may 'run without asking,' which normalizes autonomous execution in a package that also performs file-system setup and persistent configuration. In a general agent-tuning context, encouraging silent execution raises the risk of unintended changes if boundaries are misconfigured or inherited too broadly.
- **Hard Rules section in SOUL.md** — these are non-negotiable behavioral guardrails
- **Idiot Prevention Protocol in AGENTS.md** — protects your infrastructure from chat-based config changes
- **Verification Protocol** — removing this reintroduces stale data and fake completions
- **Automation tiers** — the boundary between "runs without asking" and "never without instruction" is load-bearing
## File Structure