org-memory

ReviewAudited by ClawScan on May 10, 2026.

Overview

The skill’s memory features are mostly aligned with its purpose, but it deserves review because its file-writing helper can escape the intended memory folder if given a crafted filename.

Install only if you want the agent to keep long-term org-based memory. Use a trusted org CLI binary, review the memory directory periodically, and prefer a version that validates file paths so writes cannot leave the configured agent-memory workspace.

Findings (5)

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 prompt or agent action could create or modify org files outside the dedicated agent-memory folder.

Why it was flagged

The registered add tools accept an optional filename and the argument builder joins it to the memory directory without validating that the final path remains inside that directory. A value such as '../outside.org' could direct the org CLI to write outside the intended workspace.

Skill content
file?: string; ... const filePath = join(cfg.dir, params.file ?? cfg.inboxFile);
Recommendation

Validate and normalize filenames before passing them to org; reject absolute paths and any path that resolves outside ORG_MEMORY_DIR.

What this means

The skill can run the local org CLI on the user's machine.

Why it was flagged

The skill runs the external org binary. This is disclosed and central to the purpose, and execFile is safer than shell execution, but the configured ORG_CLI_BIN must be trusted.

Skill content
execFile(bin, args, { timeout: timeoutMs }, (err, stdout, stderr) => {
Recommendation

Install org from a trusted source and keep ORG_CLI_BIN pointed only at the intended binary.

What this means

Security depends partly on the separately installed org CLI binary.

Why it was flagged

The skill requires a separately downloaded org CLI binary. That dependency is expected for the integration, but the artifact does not pin a specific release in the install instruction.

Skill content
"requires":{"bins":["org"] ... "install":[{"kind":"download","label":"Download from GitHub releases: https://github.com/dcprevere/org-cli/releases"}]
Recommendation

Use a verified release of org-cli and avoid substituting an untrusted binary.

What this means

Facts or instructions written into the memory files may affect later conversations.

Why it was flagged

The plugin automatically loads persistent memory.org and daily note files into the agent's session context. This is the stated purpose, but stored content can influence future sessions.

Skill content
api.on("before_agent_start", async () => { ... readOrgFile(join(cfg.dir, "memory.org"), MAX_FILE_BYTES) ... readOrgFile(join(cfg.dir, "daily", `${today}.org`), MAX_FILE_BYTES)
Recommendation

Review the memory files periodically and avoid storing secrets or untrusted instructions there.

What this means

If migration is run, the user's default memory behavior may change across future sessions.

Why it was flagged

The optional migration can modify OpenClaw configuration and disable the default memory plugin, which affects future sessions. The artifact clearly says this must be user-initiated.

Skill content
Writes: $ORG_MEMORY_DIR/memory.org, $ORG_MEMORY_DIR/daily/*.org, ~/.openclaw/openclaw.json ... Never start migration automatically. Only proceed if the user explicitly requests it.
Recommendation

Only run migration after backing up OpenClaw configuration and confirming the intended memory setup.