Soft-delete memories by adding/removing the forget tag, or hard-delete outdated memories
From aidenpx claudepluginhub jmylchreest/aide --plugin aideThis skill is limited to using the following tools:
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Guides implementation of event-driven hooks in Claude Code plugins using prompt-based validation and bash commands for PreToolUse, Stop, and session events.
Recommended model tier: balanced (sonnet) - this skill performs straightforward operations
Manage outdated, incorrect, or obsolete memories by soft-deleting (tagging with forget) or hard-deleting them.
Memories tagged with forget are excluded by default from search, list, and context injection. They remain in the database and can be recovered.
./.aide/bin/aide memory tag <MEMORY_ID> --add=forget
Permanently removes a memory from the database. Use when the memory is clearly wrong or contains sensitive data.
./.aide/bin/aide memory delete <MEMORY_ID>
Remove the forget tag to restore a soft-deleted memory.
./.aide/bin/aide memory tag <MEMORY_ID> --remove=forget
When the user wants to forget, correct, or supersede a memory:
Search for the memory to identify its ID:
# Search by content keywords
./.aide/bin/aide memory search "<keywords>" --full --limit=10
# If the memory might already be forgotten, include all
./.aide/bin/aide memory list --all
Before deleting or forgetting, show the user what was found and confirm which memories to act on. Display the memory ID, content, and tags.
Choose based on the situation:
| Situation | Action | Command |
|---|---|---|
| Memory is outdated but was once true | Soft delete (forget) | aide memory tag <ID> --add=forget |
| Memory is factually wrong | Hard delete | aide memory delete <ID> |
| Memory is resolved (issue fixed) | Soft delete + optionally add resolution | See "Superseding" below |
| Memory contains sensitive data | Hard delete | aide memory delete <ID> |
| Memory was accidentally forgotten | Unforget | aide memory tag <ID> --remove=forget |
If the memory is being superseded (not just deleted), add a new corrected memory without the forget tag:
# 1. Forget the old memory
./.aide/bin/aide memory tag <OLD_ID> --add=forget
# 2. Add the corrected memory (NO forget tag) — include scope + provenance tags
./.aide/bin/aide memory add --category=<category> --tags=<relevant,tags>,project:<name>,session:${AIDE_SESSION_ID},source:discovered "<corrected content>"
Confirm the memory is no longer visible in normal searches:
# Should NOT appear in normal search
./.aide/bin/aide memory search "<keywords>"
# Should appear with --all flag
./.aide/bin/aide memory list --all
This is the most common mistake. Adding a new memory tagged forget does nothing useful:
forget tag)Wrong:
# BAD - creates a hidden memory, leaves the original untouched
aide memory add --tags="forget,some-topic" "RESOLVED: the old issue is fixed"
Correct:
# GOOD - forget the original, add a visible replacement
aide memory tag <ORIGINAL_ID> --add=forget
aide memory add --tags="some-topic" "RESOLVED: the old issue is fixed"
Always search first to find the exact memory ID. Memory IDs are ULIDs (e.g., 01KJ3X7GMQET613WMPT7JT8GYD).
Always show the user what will be affected and get confirmation before acting, especially for hard deletes.
To forget multiple related memories:
# Search for all related memories
./.aide/bin/aide memory search "<topic>" --full --limit=50
# Forget each one (after user confirmation)
./.aide/bin/aide memory tag <ID1> --add=forget
./.aide/bin/aide memory tag <ID2> --add=forget
To clear ALL memories (destructive, requires explicit user request):
./.aide/bin/aide memory clear
# 1. Find the memory
./.aide/bin/aide memory search "ESM imports" --full
# 2. Show user and confirm
# "Found memory 01KJ... about ESM imports requiring .js extensions. Delete this?"
# 3. Soft delete
./.aide/bin/aide memory tag 01KJ3XVFXBFTKKH1M500N6R5 --add=forget
# 1. Find the old memory
./.aide/bin/aide memory search "JWT auth" --full
# 2. Forget the old one
./.aide/bin/aide memory tag <OLD_ID> --add=forget
# 3. Add the corrected one
./.aide/bin/aide memory add --category=decision --tags=auth,sessions,project:myapp,session:${AIDE_SESSION_ID},source:discovered "Auth strategy changed from JWT to server-side sessions with Redis store"
# 1. Find forgotten memories
./.aide/bin/aide memory list --all
# 2. Unforget it
./.aide/bin/aide memory tag <ID> --remove=forget
If aide memory tag fails:
--all flag to include forgotten memories.# Workaround: get memory content, delete, re-add with forget tag
./.aide/bin/aide memory list --all # Find the memory content
./.aide/bin/aide memory delete <ID>
./.aide/bin/aide memory add --category=<cat> --tags=<existing-tags>,forget "<content>"
When adding replacement memories (Step 4 above), always:
source: tag — Use source:discovered for corrected facts, source:user if the user provided the correctionproject:<name>,session:<id> (get project name from git remote or directory; session ID from $AIDE_SESSION_ID or $CLAUDE_SESSION_ID)memorise skill for the full verification workflow.scope:global unless storing a user preferenceAfter forgetting a memory, verify:
# Memory should NOT appear here
./.aide/bin/aide memory search "<term>"
# Memory SHOULD appear here (with forget tag)
./.aide/bin/aide memory list --all