memory-auditor-chat — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited memory-auditor-chat (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
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.
Audit Claude's native memory in Claude.ai: detect problematic entries across all available memory layers and propose specific fixes with user confirmation. Works in general chat and projects.
Russian: "аудит памяти", "проверь память", "аудит", "почисти память", "разбери память", "что у меня в памяти", "ревью памяти" English: "audit memory", "memory audit", "check memory", "clean up memory", "review memory", "memory health check", "what's in my memory"
Determine the language of the user's first message. Use that language for all subsequent output. If the language is ambiguous, default to Russian.
Explicit user command (trigger). Data for analysis comes from Claude's native memory layers available in the current context.
In-chat report following the fixed Output Template (see below). Layer overview, prioritized issue table, concrete actions: automatic for Memory Edits, manual instructions for other layers.
This reference defines the complete and closed list of layers. The skill works ONLY with these layers. Adding new layers, analyzing other sources (file-based auto-memory, CLAUDE.md, User Preferences from Cowork) is prohibited.
| Layer | Description | Skill access |
|---|---|---|
| Memory Edits | Explicit user entries ("remember X"). Scoped: in-project entries are project-only, outside project — global. Limit: 30 entries | Read, remove, replace via memory_user_edits |
| Memory Summary | Auto-synthesized from chat history (~every 24h). Global + per-project | Read only. Provide manual instructions to user |
| Project Summary | Auto-synthesized from project chats. Cannot be edited directly | Read only. Inform user about issues |
| Project Instructions | Manual text in project settings (Edit Project) | Read only. Provide manual instructions to user |
| Context | Available layers | Available actions | Limitations |
|---|---|---|---|
| General chat (Claude.ai) | Memory Edits, Memory Summary | Read all, modify Edits | No project layers |
| Project (Claude.ai) | Memory Edits, Memory Summary, Project Summary, Project Instructions | Read all, modify Edits | Cannot modify Summary/Instructions |
If the user's request is a command to fully reset memory (Reset Memory, "delete all memory", "удали всю память", "сбрось всё", "start from scratch", "начать с нуля") — refuse immediately. Explain that a full reset is irreversible and offer a targeted audit with specific fixes instead. Do not proceed to Step 1.
Why: the set of available layers and permitted actions depends on the runtime environment. Without detecting context, it is impossible to determine what data to collect and what fixes to propose.
Tool availability check. Before any actions, verify whether the memory_user_edits tool is available:
Context detection. Check two indicators in the system prompt and conversation context:
| Indicator 1 (instruction) | Indicator 2 (project summary) | Context |
|---|---|---|
| Yes | Any | Claude.ai project |
| No | Yes | Claude.ai project |
| No | No | General chat |
Data collection. Call memory_user_edits view (if tool is available) and record all entries. Read Memory Summary from the context. If in a project, read Project Summary and Project Instructions from the system prompt.
Early exit.
memory_user_edits is available, memory edits is empty (0 entries), and Memory Summary is absent or minimal:memory_user_edits is NOT available and Memory Summary is absent:Overview output. Show the user using the Output Template, Layer Overview section:
Preliminary count of potential issues (quick scan without deep analysis).
If the user's original request already explicitly asked to show issues, run analysis, or apply fixes (e.g., "show me the problems", "fix my memory", "apply all corrections", "покажи проблемы", "исправь память", "примени все правки") — treat this as confirmation. Show the overview and proceed directly to Step 2. Hints or assumptions (e.g., "I think there might be duplicates") are NOT explicit requests — show the overview and ask for confirmation.
If the original request contains only a trigger with no additional instructions — end the overview with: "Found [N] potential issues. Proceed to detailed analysis?" If the user does not confirm, stop. The overview is self-sufficient.
Why: the user confirmed the transition to analysis. Now classify each problematic entry to propose specific actions.
If the user specified a particular area or issue type in their request (e.g., "outdated entries about my role") — start analysis with entries relevant to that hint.
Check each entry in every available layer against four categories:
| Category | How to identify | Priority |
|---|---|---|
| Contradiction | Two entries assert mutually exclusive facts — within one layer or across layers | Error |
| Outdated | A fact is disproven by a newer entry in another layer or in chat history | Error |
| Duplicate | Two entries convey the same meaning in different words — within one layer or across layers | Warning |
| Noise | Entry is correct and unique but useless for future sessions | Recommendation |
How to identify noise — entry matches at least one criterion:
What is NOT noise: preferences, roles, active projects, tools, work style — even if the wording is not ideal.
Cross-layer verification. Mandatory checks:
If fact verification is needed (is it outdated?) — use conversation_search for targeted checks. No more than 5 queries per audit. Formulate queries narrowly: specific fact, name, date.
Why: the audit result is not a report for its own sake but concrete fixes. Different layers require different actions because the skill has different access rights.
Output results using the Output Template. Group issues by priority: Errors first, then Warnings, then Recommendations.
Memory Edits (skill can modify). Output a table of problematic entries: number, entry text, category, issue, proposed action (delete / replace with [new text]).
Wait for confirmation. The user can:
Execute remove or replace via memory_user_edits only after explicit confirmation.
If memory_user_edits is not available — for each Memory Edits issue, provide manual instructions: Settings > Memory > find the entry > delete/edit. Or via chat: "Forget that [old fact]", then "Remember that [new fact]".
Memory Summary (skill cannot modify). For each issue, provide an instruction: what exactly is wrong, and two ways to fix it — via Settings > Memory (find the entry, edit or delete) or via chat ("Forget that [old fact]", then "Remember that [new fact]").
Project Summary (skill cannot modify, user cannot directly either). Inform about the issue. Explain: this is auto-generated and will update at the next synthesis. The only way to influence it is to delete the source chat, but this is irreversible.
Project Instructions (skill cannot modify). Quote the problematic fragment and suggest a replacement. Provide instructions: open project > Edit project > find the text > replace.
Chat History (optional). If verification via conversation_search revealed chats that are sources of noise or contradictions — list them with a recommendation. The skill does not delete chats.
Use this template for ALL reports. Do not deviate from the structure. Adapt only the content.
### [Context] Memory Audit
**Context:** [detected context]
**Date:** [current date]
#### Layer Overview
| Layer | Status | Entries | Notes |
|-------|--------|---------|-------|
| Memory Edits | [found / unavailable] | [N entries] | [brief notes] |
| Memory Summary | [found / not found] | [present / absent] | [key themes] |
| Project Summary | [found / not found / N/A] | [present / absent] | [brief summary] |
| Project Instructions | [found / not found / N/A] | [present / absent] | [brief summary] |
> Found [N] potential issues. Proceed to detailed analysis?
---
#### Issues Found
| # | Layer | Category | Priority | Issue | Proposed Action |
|---|-------|----------|----------|-------|-----------------|
| 1 | ... | Contradiction/Outdated/Duplicate/Noise | Error/Warning/Recommendation | [description] | [action] |
#### Actions
**Memory Edits (can modify):**
- [#N] [specific action: delete entry X / replace entry Y with Z]
**Memory Summary (read-only):**
- [#N] [what is wrong -> how to fix in Settings or via chat]
**Project Summary (read-only):**
- [#N] [what is wrong -> explanation of update mechanism]
**Project Instructions (read-only):**
- [#N] [quote of problematic fragment -> suggested replacement -> instruction]conversation_search calls per audit.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.