Back to skill
Skillv0.1.0
ClawScan security
scenique-context-frame · ClawHub's context-aware review of the artifact, metadata, and declared behavior.
Scanner verdict
SuspiciousMar 11, 2026, 10:33 AM
- Verdict
- suspicious
- Confidence
- medium
- Model
- gpt-5-mini
- Summary
- The skill's code mostly matches its stated purpose, but it silently writes to a hard-coded root workspace path (/root/.openclaw/workspace/context_frames_pending.json) that is not documented in SKILL.md and is unexpected for a lightweight demo, so review is recommended before installing.
- Guidance
- This skill appears to do what it says (naive topic-switch detection and context-frame management) and does not perform network calls or require credentials, but it writes an undocumented file to /root/.openclaw/workspace/context_frames_pending.json. Before installing or running it in a production agent, ask the maintainer to: (1) explain and document why the skill writes to that path, (2) make the path configurable (e.g., via an env var or agent-provided workspace API), or (3) change it to a clearly scoped, non-root workspace location. Run the skill in a sandbox first, inspect the created JSON, and ensure file permissions and ownership are appropriate. If you cannot get those assurances, avoid installing it on systems where writing to /root or an agent workspace is sensitive.
Review Dimensions
- Purpose & Capability
- concernThe name/description (detect topic switches and manage Context Frames) aligns with the code (context_sim.py implements simple heuristics and frame management). However, the skill writes a JSON file to a hard-coded path under /root/.openclaw/workspace/context_frames_pending.json when switching frames — this filesystem interaction was not documented in SKILL.md nor declared in required config paths and appears disproportionate for a demo/instruction-only skill.
- Instruction Scope
- concernSKILL.md instructs running preload.py (and mentions a demo simulate mode) and does not disclose any filesystem side effects. The runtime code, however, attempts to read/append/write a JSON file at /root/.openclaw/workspace/context_frames_pending.json inside a try/except block. This is an undocumented I/O action that the agent will perform if the code runs and the environment permits it.
- Install Mechanism
- okNo install spec or remote downloads are present; the skill is delivered as local Python files (preload.py and context_sim.py) and runs locally. There are no external package pulls or network-based installers in the manifest.
- Credentials
- noteThe skill declares no required environment variables or credentials, which is consistent with the contained code (no network calls or secrets use). However, the hard-coded filesystem path under /root implies it expects access to a specific workspace location; that expectation should be documented or made configurable rather than baked in.
- Persistence & Privilege
- okThe skill is not marked always:true and does not modify other skills' configuration. Its only persistence is the local write to a workspace file under /root/.openclaw, which is limited in scope but should be treated cautiously because it's not documented.
