delx-memory is a single-user, local-first key/value store exposed over MCP. It is intended to be opened by AI agents running on the same machine as the user. The threat model is:
- In scope: an over-eager agent silently writing the user's OAuth tokens, API keys, refresh tokens, or session cookies into shared local memory where another agent could read them.
- In scope: an agent on the same machine quietly mutating memory the user did not ask to change.
- Out of scope: physical access to the host. Other root-level users on the same machine. Backups copied off-host. Network-level attackers (no network exposure by default — stdio only).
- Credential-shape refusal. Keys matching
oauth|token|secret|password|cookie|refresh|api[_-]?key|bearer|credential|session[_-]?idare refused. String values matching JWT /Bearer …/sk_live_…/xoxb-…/github_pat_…/ghp_…/ OpenAIsk-…/ AWSAKIA…/Authorization:header shapes are refused. Nested objects are walked recursively. - Mutation gating. Every mutating tool (
memory_set,memory_forget,memory_forget_by_tag,memory_export) requiresexplicit_user_intent: true. An agent that decides on its own to mutate must show its work — the user can see the flag in the tool call. - File permissions. Directory created at
0700, file at0600(best effort on non-POSIX filesystems). - No network by default. stdio transport only unless the user opts in with
--httporDELX_MEMORY_TRANSPORT=http. HTTP mode binds to127.0.0.1and uses a strict CORS origin. - No telemetry, no phone-home. The package never makes a network request other than what the user explicitly does over the HTTP transport.
- Other users on the same machine can read the file. Standard Unix permissions block group/world reads, but root and
sudo-capable users can still read it. Use full-disk encryption if you need protection at that level. - TTL is best-effort. Expired rows are deleted lazily on next read.
VACUUMis not automatic, so freed pages may persist on disk. - Per-value cap is 64 KB. This is a tripwire to discourage misuse as a blob store, not a security boundary.
Email support@delx.ai with subject delx-memory security:. Please do not open a public GitHub issue for security reports. Coordinated disclosure preferred — we will respond within 7 days.
This project uses semver. Security fixes will be released as patch versions and noted in CHANGELOG.md.