memory-audit
Audit the project's persistent agent memories for backfire-risk, stale/superseded state, contradictions, redundancy, and bloat.
Skill by Kalabint
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/kalabint-memory-audit
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: security, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/memory-audit
What's inside
- Skill name
memory-audit- Description
- Audit the project's persistent agent memories for backfire-risk, stale/superseded state, contradictions, redundancy, and bloat. Lists problems for the user to disposition - does NOT auto-correct. Surfaced on a 14-day cadence by a SessionStart hook. Use when the user asks to audit/review/clean up memories, or when the overdue reminder fires.
- License
- AGPL-3.0
- Instructions
- 35 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (2)
- SKILL.md
- scan.py
SKILL.md (first lines)
# Memory audit
Keep the memory store **true and non-backfiring**. Memories are loaded into every session, so a wrong, stale, or over-prescriptive entry silently steers behaviour. This skill runs a periodic review.
Surfaced every 14 days by `~/.claude/hooks/memory-audit-due.sh` (SessionStart), gated on `~/.claude/skills/memory-audit/.last_audit`.
## Run order
1. **Pre-pass (cheap, mechanical).** This also resets the 14-day timer:
```bash
python3 ~/.claude/skills/memory-audit/scan.py
```
It lists the project's memory files with age/size and shortlists stale-marker / bloat / oldest candidates, and prints the MEMORY.md index size vs budget. Derives the memory dir from cwd; pass `--dir <path>` to override.
2. **Dispatch read-only auditors in parallel** (one message, multiple Agent calls, for context hygiene). Batch the files by type (user-profiles + profiling-feedback / feedback-rules / project / reference) so each worker applies a consistent lens. Every worker prompt MUST say: READ-ONLY, do not modify; read full content (not skim); flag only problems; return `FILENAME - [CATEGORY, severity] one-line issue ("quote")`; end with a CLEAN list.
3. **Synthesise one LIST, grouped by category. Do NOT auto-correct.** The user dispositions; you correct only what they approve (then re-run scan.py / re-stamp).
## The rubric (weight BACKFIRE highest - it is the category to act on)
- **BACKFIRE** - a rule or profiling claim that, applied literally, degrades behaviour: over-prescriptive behavioural rule that makes the agent formulaic/lazy/over-cautious/rigid; over-confident profiling stated as fact (especially psychological); a rule that **inverts into harm** (e.g. "user fabricates framing" → distrust sincere statements; "user is blind to X" → condescend); pathologizing; self-fulfilling labels. Memories get deleted purely for this. When unsure, flag it.
- **STALE / SUPERSEDED** - describes work as planned/uncommitted/not-done/in-progress that has likely shipped; a "current state" snapshot that aged; or a claim contradicted by a newer memory. Flag as RISK (you usually can't verify against the live repo) with reasoning; cheap checks (`git log`, file existence) are worth doing.
- **CONTRADICTION** - two memories give conflicting instructions (name both). Cross-file; catch in synthesis.
- **WRONG** - an internal technical/factual claim that's dubious or overstated.
- **REDUNDANT** - substantially overlaps another memory.
- **BLOATED** - crams many distinct facts / too long to act on (one memory = one fact).
- **SENSITIVE** - records PII / secrets / home location / live credentials; flag for awareness.
## Notes
- Cross-check siblings before repeating a flag - if one worker calls a file clean and another flags it, reconcile.
- "List, don't correct" is the default end state. Corrections are a separate, user-approved step - correct on falsification, don't churn for refinement.
- After applying approved corrections, re-run `scan.py` (resets `.last_audit`) so the next surfacing is 14 days out.From Kalabint/llm-tooling, AGPL-3.0.
More from Kalabint/llm-tooling
- 0.582score
prepare-next-steps
Kalabint
Trigger when user asks to "prepare next steps", "prep next steps", or signals readiness for autonomous build ("before we build", "pre-flight").
SkillBFreshness: B★ 6Claude Code +9 - 0.582score
handoff
Kalabint
Read OR write the project's session-handoff doc.
SkillBFreshness: B★ 6Claude Code +9 - 0.582score
discriminator
Kalabint
Guard against attribute substitution on any output that will be acted on as a verdict, ranking, routing, or go/no-go decision — regardless of how the request…
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
check-dont-assume
Kalabint
Verify every load-bearing claim by reading the code or running the check; never assert from memory or dismiss something as too obvious to confirm.
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
no-sycophancy
Kalabint
Strip praise, flattery, and manufactured agreement from output so the signal is the fact, not the framing.
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
no-unmeasured-numbers
Kalabint
State no number without an instrument behind it - no duration or effort estimates, no usage forecasts, no unbaselined comparatives.
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
calibrated-inference
Kalabint
When asked to estimate something unstated, produce a legible correctable evidence chain rather than refusing or fabricating a number.
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
own-guardrails-bind-me
Kalabint
A constraint you write into a brief for a subagent or a future self binds you first; authoring a frame can make it invisible to you.
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
solve-root-not-workaround
Kalabint
When tooling is broken, fix or find the canonical path rather than routing around it ad hoc; extend the module that owns the concern.
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
untrusted-content-isolation
Kalabint
Reading untrusted content is itself the injection surface; inspect it in an isolated context with no tools and pass only a summary back.
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
no-flip-flop
Kalabint
Hold a position under pushback; revise on new evidence, not on pressure.
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
no-self-report-omissions
Kalabint
Do not claim what you did not do or list what you might have missed; absence is not observable from the inside, so verify with an external check.
SkillBFreshness: B★ 6Claude Code +9
Signals
- Stars
- 6
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 7, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- AGPL-3.0
- Repository
- github.com/Kalabint/llm-tooling
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Kalabint
- 0.582score
prepare-next-steps
Kalabint
Trigger when user asks to "prepare next steps", "prep next steps", or signals readiness for autonomous build ("before we build", "pre-flight").
SkillBFreshness: B★ 6Claude Code +9 - 0.582score
handoff
Kalabint
Read OR write the project's session-handoff doc.
SkillBFreshness: B★ 6Claude Code +9 - 0.582score
discriminator
Kalabint
Guard against attribute substitution on any output that will be acted on as a verdict, ranking, routing, or go/no-go decision — regardless of how the request…
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
no-sycophancy
Kalabint
Strip praise, flattery, and manufactured agreement from output so the signal is the fact, not the framing.
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
check-dont-assume
Kalabint
Verify every load-bearing claim by reading the code or running the check; never assert from memory or dismiss something as too obvious to confirm.
SkillBFreshness: B★ 6Claude Code +9 - 0.574score
calibrated-inference
Kalabint
When asked to estimate something unstated, produce a legible correctable evidence chain rather than refusing or fabricating a number.
SkillBFreshness: B★ 6Claude Code +9
Cite this page
memory-audit skill. Agent Mart. https://agentmart.dev/skills/kalabint-memory-audit (last updated 2026-10-24)