T09 · Insecure Skill Coding Practices
- Location
scripts/claw-roam.sh:43- Finding
Indiscriminate Git staging can expose sensitive workspace data
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This appears to be a real workspace sync tool, but it can upload private OpenClaw memory, logs, skills, and configuration to a Git remote too broadly.
Review this carefully before installing. Use only a private, access-controlled Git remote, add a strict `.gitignore` or allowlist before first push, inspect staged files before every upload, and avoid the cron auto-push example unless you are comfortable with private workspace data being uploaded automatically. If any secret is pushed, deleting it later is not enough because Git history may retain it.
scripts/claw-roam.sh:43Indiscriminate Git staging can expose sensitive workspace data
SKILL.md:224Recommended cron persistence performs recurring unreviewed data uploads
YARA rule matched a known malware signature (reverse shell, backdoor, ransomware, C2 framework, or info stealer).
resolved conflicts"
git checkout --theirs git add -A && git commit -m "merge: resolved conflicts"
## Simple Workflow: Local Primary + VPS Backup
For simpler setups without branches:
### Daily Usage (Local Mac)
Just use OpenClaw normally. Before shutdown:
```bash
claw-roam push "end of day sync"
Or let it auto-push via cron:
# Add to crontab
*/10 * * * * cd ~/.openclaw/workspace && git add -A && git commit -m "auto: $(date)" && git push
claw-roam pushclaw-roam pullclaw-roam pushclaw-roam pullSynced (preserved across machines):
SOUL.md - Your agent's personalityMEMORY.md - Long-term memoryThe skill explicitly encourages syncing the entire OpenClaw workspace to a remote Git repository but does not provide a prominent warning that the workspace contains highly sensitive data such as memory, conversation logs, personality, skills, tokens, and operational context. Users may unknowingly upload private or credential-bearing files to third-party Git hosting, causing confidentiality loss and long-term persistence of sensitive data in commit history.
The setup flow directs users to initialize a repository in the workspace and commit everything, which can create durable session and state persistence across machines. In this skill's context, that persistence includes agent memory and context, increasing the chance that sensitive data is replicated, retained, and exposed beyond the original machine.
git remote add origin
2. **Create initial commit**:
```bash
git add -A
git commit -m "initial"
The documentation explicitly states that memory files, conversation logs, skills, and context files are synchronized to a remote Git repository. This directs broad disclosure of user-provided and potentially secret data, and because Git preserves historical snapshots, accidental exposure can be durable even after later deletion.
The file is primarily written in English but includes Chinese instructional phrases such as '获取其他机器的最新内容' and '让其他机器能获取' in the middle of operational guidance. This introduces a language-specific requirement without user opt-in or justification, which is a natural-language policy concern.
No suspicious patterns detected.