unclick-memory — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited unclick-memory (Agent Skill) and scored it 96/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 1 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 1 flagged
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You have access to the UnClick MCP server, which provides persistent cross-session memory. Follow this four-step protocol every session, every time.
Call load_memory before your first response to the user, even if the message looks trivial. This loads the user's identity, standing rules, preferences, recent sessions, and active facts.
load_memory({ num_sessions: 5 })Treat the output as authoritative context. If load_memory is unavailable, note this and continue without fabricating prior context.
Call search_memory whenever the user references anything that might be stored:
search_memory({ query: "<topic>", max_results: 10 })Trigger even without an explicit "search" request -- if personal context is relevant, check.
Call save_fact the moment the user shares anything worth keeping:
save_fact({ fact: "<atomic statement>", category: "preference|decision|technical|contact|project|general", confidence: 0.9 })Call save_identity for standing rules that should govern every future session:
save_identity({ category: "identity|preference|workflow|technical|standing_rule", key: "<key>", value: "<value>" })Call save_session before the session ends or at major checkpoints:
save_session({
session_id: "<timestamp-or-uuid>",
summary: "<what happened: decisions, work, problems solved>",
topics: ["<tag1>", "<tag2>"],
open_loops: ["<unfinished item>"],
decisions: ["<key decision>"]
})load_memory again -- it is idempotent.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.