OpenClaw Agent Clone

Security checks across static analysis, malware telemetry, and agentic risk

Overview

The skill matches its cloning purpose, but importing a shared package can overwrite persistent agent files, install package-selected skills, and export raw user/config files despite broad filtering claims.

Use this only with clone packages you fully trust. Inspect exported packages before sharing, and inspect imported JSON for unexpected filenames, skills, rules, tools, identity text, and memory before applying it.

Static analysis

No static analysis findings were reported for this release.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

Risk analysis

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

A malicious or malformed clone package could overwrite files outside the intended OpenClaw workspace, potentially changing or damaging the agent environment.

Why it was flagged

The filename comes from the imported JSON package and is joined directly to the workspace path without an allowlist, normalization, or rejection of absolute paths/`..` traversal before writing.

Skill content
for filename, content in package.get('identity', {}).items(): filepath = Path(WORKSPACE) / filename ... write_file(filepath, content)
Recommendation

Only import packages from trusted sources. The skill should restrict imports to expected filenames, reject absolute or parent-directory paths, and show a review of files before writing.

What this means

Importing a shared package can add unreviewed skills to the agent, changing its future capabilities and behavior.

Why it was flagged

The imported package controls the list of skill slugs that are installed automatically, with no preview, provenance check, version pinning, or per-skill confirmation.

Skill content
skills = package.get('skills', []) ... slug = skill.get('slug') ... subprocess.run(['skillhub', 'install', slug], capture_output=True, text=True, timeout=60)
Recommendation

Review the skill list before import. The implementation should validate slugs, pin or verify versions, and require explicit confirmation before each skill installation.

What this means

A clone package can persistently alter the agent's rules, tools, identity, or memory, causing future sessions to follow imported instructions.

Why it was flagged

Imported package content is written into persistent agent configuration and optional memory files, so untrusted package text can become reusable future context.

Skill content
for filename, content in package.get('config', {}).items(): filepath = Path(WORKSPACE) / filename ... write_file(filepath, content) ... package.get('memory', {})
Recommendation

Inspect imported AGENTS.md, SOUL.md, TOOLS.md, and MEMORY.md content before applying it, and avoid importing memory or rules from untrusted packages.

What this means

Users may share a clone package believing all secrets are filtered, while raw identity, user, tool, rule, or memory files could still contain private information or credentials.

Why it was flagged

Identity and configuration files are copied into the export package verbatim, while filtering is only applied through `export_config()` for OpenClaw JSON configuration. This is broader risk than the SKILL.md filtering description suggests.

Skill content
package['identity'][filename] = content ... package['config'][filename] = content ... package['openclawConfig'] = export_config()
Recommendation

Manually inspect and redact exported packages before sharing. The skill should apply filtering to all exported text files or clearly state which files are not sanitized.