
Pin
- 66 installs
- 62.5k repo stars
- Updated August 5, 2026
- mem0ai/mem0
Helps with ai & agent building tasks during AI-assisted development.
About
pin is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.
- pin
- AI & Agent Building
- AI-coding skill
Pin by the numbers
- 66 all-time installs (skills.sh)
- +12 installs in the week ending Aug 4, 2026 (Skillselion tracking)
- Ranked #6,006 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/mem0ai/mem0 --skill pinAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 66 |
|---|---|
| repo stars | ★ 62.5k |
| Last updated | August 5, 2026 |
| Repository | mem0ai/mem0 ↗ |
What it does
Helps with ai & agent building tasks during AI-assisted development.
Files
Mem0 Pin
Pin a memory to mark it as high-priority and protect from pruning.
Execution
Step 1: Find the memory
The user provides either a search query or memory ID.
If memory ID:
- Call
get_memorywith the ID.
If search query:
- Call
search_memorieswith the query,filters={"AND": [{"user_id": "<id>"}, {"app_id": "<pid>"}]},top_k=5. - Show numbered list with content previews.
- Ask: "Which memory to pin? Enter a number."
Step 2: Read current content
Call get_memory with the selected memory ID. Store:
original_text— the memory's text contentoriginal_metadata— the existingmetadatadict
Step 3: Pin it
The MCP update_memory tool only accepts memory_id, text, and source — it does not accept a metadata parameter. To pin, append a pin marker to the text:
pinned_text = "[PINNED] " + original_text if not original_text.startswith("[PINNED]") else original_text
update_memory(memory_id=<selected_id>, text=pinned_text)For new memories (user wants to pin text that isn't stored yet): 1. Call add_memory with:
text="[PINNED] <the user's text>"user_id=<active_user_id>app_id=<active_project_id>metadata={"pinned": true, "type": "decision", "confidence": 1.0}infer=False
2. The response contains event_id. Call get_event_status(event_id=<event_id>) once to retrieve the memory ID, then confirm.
Step 4: Confirm
Pinned: "<memory content, first 80 chars>"
Memory ID: <id>Append ... only if content exceeds 80 characters.
Unpin
If the user says "unpin": 1. Call get_memory to read current content. 2. Remove the pin marker from the text:
unpinned_text = original_text.removeprefix("[PINNED] ")
update_memory(memory_id=<id>, text=unpinned_text)3. Print: Unpinned: "<content>..."