Subagent Distiller

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

Overview

The skill matches its memory-distillation purpose, but it broadly copies OpenClaw conversation logs, including reset/deleted logs, into persistent files and subagent tasks without clear scoping or retention controls.

Before installing, verify the source repository, edit the scripts to use your intended OpenClaw workspace, exclude deleted/reset or sensitive sessions, review generated chunks and extraction_tasks.json before any subagent processing, and avoid enabling the recommended cron job until you are comfortable with what will be retained.

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

Private past conversations, including content the user may consider deleted or obsolete, can be copied into persistent memory-processing files.

Why it was flagged

The skill reads the main agent's session logs, including files marked reset/deleted, and writes raw conversation content into chunk JSON files before later filtering.

Skill content
SESSIONS_DIR = Path("/home/aqukin/.openclaw/agents/main/sessions") ... SESSIONS_DIR.glob('*.jsonl.deleted.*') ... 'content': content
Recommendation

Require an explicit, configurable session path; exclude deleted/reset sessions by default; add allowlists, redaction, retention limits, and a clear cleanup command for chunks/tasks/state.

What this means

Sensitive chat content may be handed to another agent context, and instructions inside old chats could influence what gets written into long-term memory.

Why it was flagged

Raw conversation slices are embedded into prompts saved as extraction tasks and intended to be processed by spawned subagents, but the artifacts do not define the subagent identity, permissions, or data boundary.

Skill content
【内容】:\n{slice_data['content']} ... 'prompt': prompt ... "主代理使用 sessions_spawn 逐个处理这些任务"
Recommendation

Treat session content as untrusted data, add prompt-injection safeguards, require user review before spawning subagents, and document which model/agent receives the task files.

What this means

After setup, new conversations may keep being captured into this memory pipeline without a per-run prompt.

Why it was flagged

The documentation recommends a persistent cron job that continues scanning and generating extraction tasks on a schedule.

Skill content
每日自动运行(推荐) ... 0 3 * * * cd ~/.openclaw/workspace/skills/subagent-distiller && python3 incremental_slice.py && python3 realtime_distill.py
Recommendation

Only enable cron after configuring scope and retention; document how to pause/disable it; prefer manual runs until the user confirms the data being collected.

What this means

Useful memory cards could be relocated if the cleanup heuristics misclassify them.

Why it was flagged

The cleanup tool can bulk move memory cards to an archive based on heuristics, but it requires an explicit --exec flag and archives rather than permanently deletes.

Skill content
shutil.move(str(card_path), str(ARCHIVE_DIR / card_path.name)) ... if len(sys.argv) > 1 and sys.argv[1] == '--exec': execute_cleanup()
Recommendation

Run the report mode first, review the proposed archive list, and back up memory/topics before using --exec.

What this means

A user following the manual install instructions could fetch the wrong code or be unable to verify the intended source.

Why it was flagged

The manual install example uses a placeholder repository while the author section names a different repository, creating a provenance inconsistency.

Skill content
git clone https://github.com/yourname/subagent-distiller.git ... **仓库**: https://github.com/openclaw/subagent-distiller
Recommendation

Install from the registry or a verified repository URL, and ensure the published source, package metadata, and documentation all match.