ClawVault
Analysis
ClawVault is a coherent memory tool, but it deserves careful review because it installs and runs persistent hook code that automatically reads, writes, and reuses agent session memory.
Findings (6)
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.
Checks for instructions or behavior that redirect the agent, misuse tools, execute unexpected code, cascade across systems, exploit user trust, or continue outside the intended task.
npm install -g clawvault@latest ... npm install -g github:tobi/qmd
The setup uses global, unpinned package installs, including a GitHub package, for tooling that later runs as an OpenClaw hook; the registry install metadata is also absent, weakening provenance and version containment.
On heartbeat: Runs cheap threshold checks and observes active sessions when needed ... On weekly cron: Runs `clawvault reflect` every Sunday midnight (UTC)
The hook is designed to keep operating across gateway lifecycle events and scheduled cron, creating observations/reflections and other memory updates after it is enabled.
import { execFileSync } from 'child_process'; ... SECURITY: Uses execFileSync (no shell) to prevent command injectionThe hook executes local CLI commands; the provided code indicates no-shell execution, which reduces injection risk, but command execution remains a sensitive capability.
Checks whether tool use, credentials, dependencies, identity, account access, or inter-agent boundaries are broader than the stated purpose.
`GEMINI_API_KEY` — used by `observe` for LLM compression (optional, only if using observe features)
The optional API key is purpose-aligned for Gemini compression, but it grants provider access and potential billable usage.
Checks for exposed credentials, poisoned memory or context, unclear communication boundaries, or sensitive data that could leave the user's control.
Injects up to 4 relevant context bullets into session messages
Vault memory is retrieved and inserted into future agent context, so stale or poisoned stored content can influence later tasks.
`observe --compress` makes LLM API calls (Gemini Flash by default) to compress session transcripts into observations
When observe compression is used, session transcript content may be sent to an external LLM provider.
