VectorClaw

ReviewAudited by ClawScan on May 11, 2026.

Overview

VectorClaw’s database-memory purpose is coherent, but review is needed because the visible setup and SQL wrapper mishandle MySQL credentials and some packaging metadata is inconsistent.

Review before installing. If you use it, run it only in an isolated environment, pin and verify the Docker image, avoid shared machines during setup, remove any /tmp/.mysqlclaw_creds.cnf file inside the container, and confirm that memory retention/deletion rules match your privacy expectations.

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.

What this means

Someone with local process or Docker visibility during setup could see database passwords, including the container’s MySQL root password.

Why it was flagged

The setup script supplies both the MySQL root password and the dedicated user password via command-line arguments, which can expose them through process inspection and contradicts the documented secret-handling posture.

Skill content
docker exec "$CONTAINER_NAME" mysql -u root -p"$MYSQL_ROOT_PASS" -e "..."; VERIFY=$(docker exec "$CONTAINER_NAME" mysql -u "$MYSQL_USER" -p"$MYSQL_PASSWORD" "$DB_NAME" -e "SELECT 1 as connected;"
Recommendation

Do not run setup on shared systems until it uses temporary defaults files or stdin-based credential handling for all mysql invocations and avoids putting secrets in process arguments.

What this means

A user or process with access to the container could read the dedicated database username and password after queries run.

Why it was flagged

The wrapper copies a credentials file into the MyVector container but the cleanup trap only deletes the host temp file, so the copied MySQL credentials remain in the container.

Skill content
CONTAINER_CREDS_PATH="/tmp/.mysqlclaw_creds.cnf"; docker cp "$CREDS_FILE" "$DOCKER_CONTAINER:${CONTAINER_CREDS_PATH}" ... cleanup_creds() { rm -f "$CREDS_FILE"; }
Recommendation

Remove the in-container credentials file with a trap or use a credential-passing method that does not persist secrets inside the container.

ConcernMedium Confidence
ASI02: Tool Misuse and Exploitation
What this means

A confirmed write could affect tables beyond the intended allowlist if complex SQL is allowed and the database account has access.

Why it was flagged

The write allowlist parser appears to check only the first table name it extracts. Multi-table UPDATE/DELETE/JOIN statements could involve additional tables if the database user has broader database privileges.

Skill content
TABLE_NAME=$(echo "$SQL" | grep -oiE "(INTO|UPDATE|FROM|TABLE)\s+([a-zA-Z_][a-zA-Z0-9_]*)" | ... | head -1)
Recommendation

Use table-specific MySQL grants, parse SQL with a real SQL parser, or block multi-table write syntax rather than relying on a first-table regex.

What this means

Future pulls of the same tag could run a different database image than the one originally reviewed.

Why it was flagged

The setup script runs an external container image by mutable tag rather than a pinned digest. This is purpose-aligned for a Docker-backed database, but users should be aware of the external dependency.

Skill content
ghcr.io/askdba/myvector:mysql8.4
Recommendation

Pin the Docker image by digest and verify the image source before running setup.

What this means

Stored memories may reveal personal details or influence future agent behavior if not reviewed and retained carefully.

Why it was flagged

The skill intentionally stores persistent personal, behavioral, emotional, and agent-learning records. The documentation includes consent and review rules, so this is purpose-aligned, but it is still sensitive memory behavior.

Skill content
Approved Sources: Direct Discord messages ... Observed interaction patterns ... Agent reasoning ... Review before acting — agent_learnings and rule-like memories must be reviewed before affecting future behavior
Recommendation

Use explicit consent, keep retention limits enabled, review agent_learnings before use, and test deletion/rollback procedures.

What this means

Users may not be able to tell from the registry whether the skill needs wallet or purchase authority.

Why it was flagged

The registry capability signals list wallet, crypto, and purchase-related capabilities, while the provided documentation says the skill has no external APIs, crypto, or wallets. No provided code evidence shows wallet or purchase behavior, but the mismatch is confusing.

Skill content
Capability signals: crypto; requires-wallet; can-make-purchases; requires-sensitive-credentials
Recommendation

Synchronize registry metadata with the actual skill behavior before publication.