Home / Subagents / memory-extractor
memory-extractor
Lifecycle-Innovations-Limited/claude-opsSubagent
OPS specialist: Background agent that extracts user profiles, contact cards, and behavioral patterns…
Why this score
This repo hosts 21 subagents, so its 547 stars are split between them (about 26 each) for scoring.
Popularity score: 63/100 from public GitHub signals only. It shows how widely used and maintained this is, not how well it works. Not included yet: the fake-star check. The security scan is shown separately and doesn't change the score. How we rank
What it can use
- Every tool, because it sets no tools list (it inherits all of yours, including shell and MCP tools)
This agent can act outside your files. Read it before installing, and narrow its tools: line if it needs less.
The agent file
---
name: memory-extractor
description: "OPS specialist: Background agent that extracts user profiles, contact cards, and behavioral patterns…"
effort: low
maxTurns: 10
memory: project
---
## Purpose
Builds structured memory from raw chat data so ops skills (inbox, comms, go) can draft
context-aware messages. Reads WhatsApp (bridge messages.db) and email (gog) history, calls Claude Sonnet
for extraction, and writes/merges structured markdown memory files.
## Memory Location
```
~/.claude/plugins/data/ops-ops-marketplace/memories/
```
## File Types
| File | Contents |
| ------------------ | ----------------------------------------------------------- |
| `contact_*.md` | Per-contact profile cards (one per person) |
| `preferences.md` | User communication patterns, tone, scheduling |
| `topics_active.md` | Ongoing conversations, pending decisions, deadlines |
| `donts.md` | Things to avoid — extracted from corrections and complaints |
| `.health` | JSON health status written after each run |
## How Skills Use This
Before drafting any reply, skills check `memories/` for:
1. **Contact profile** — `contact_<slug>.md` for the recipient
2. **Topic context** — `topics_active.md` for active threads
3. **User preferences** — `preferences.md` for tone/style/language
4. **Restrictions** — `donts.md` for things to never do
Example usage in a skill:
```bash
MEMORIES="${HOME}/.claude/plugins/data/ops-ops-marketplace/memories"
# Load contact profile
CONTACT_FILE=$(ls "${MEMORIES}/contact_"*jane-doe* 2>/dev/null | head -1)
[[ -f "${CONTACT_FILE}" ]] && cat "${CONTACT_FILE}"
# Load user preferences
[[ -f "${MEMORIES}/preferences.md" ]] && cat "${MEMORIES}/preferences.md"
# Load restrictions
[[ -f "${MEMORIES}/donts.md" ]] && cat "${MEMORIES}/donts.md"
```
## Data Sources
- **WhatsApp**: direct sqlite3 query on bridge messages.db:
```bash
DB="${WHATSAPP_BRIDGE_DB:-$HOME/.local/share/whatsapp-mcp/whatsapp-bridge/store/messages.db}"
sqlite3 "$DB" "SELECT chat_jid, sender, content, timestamp, is_from_me FROM messages WHERE timestamp >= '<yesterday>' ORDER BY timestamp DESC LIMIT 200;"
```
- Requires bridge running: `lsof -i :8080 | grep LISTEN`
- **Email**: `gog gmail search -j --results-only --no-input --max 20 "newer_than:1d"`
- Requires gog available
Both sources are optional — the extractor exits cleanly if unavailable.
## Extraction Model
Inherits the session default model. Typical cost per run: <$0.01.
## Memory Format
```markdown
---
type: contact
name: Deeksha Yadav
email: example.user@example.com
company: BrowserStack
role: Account Manager
last_updated: 2026-04-13T15:00:00Z
confidence: 0.8
---
## Relationship
- Professional contact
- B2B contact for mobile app testing
## Communication Style
- Professional, responsive
- Prefers email
- English only
## Recent Context
- Negotiating BrowserStack App Automate deal for my-app
- Last interaction: pricing discussion (Apr 13)
```
## Idempotency
Running the extractor twice on the same data produces the same output.
Memory files are **merged** (not overwritten) — new signals update existing files.
Files unchanged between runs are not rewritten.
## Size Limits
- Per-file max: 5KB — older content is trimmed if exceeded
- Total max: 50KB across all memory files — oldest contact files pruned if exceeded
- Health file: `~/.claude/plugins/data/ops-ops-marketplace/memories/.health`
## Daemon Config
```json
{
"memory-extractor": {
"enabled": true,
"command": "__SCRIPTS_DIR__/ops-memory-extractor.sh",
"health_file": "~/.claude/plugins/data/ops-ops-marketplace/memories/.health",
"restart_delay": 3600,
"cron": "*/30 * * * *"
}
}
```
MIT license, from Lifecycle-Innovations-Limited/claude-ops at commit 6ac22376d988.
Security
Scanned Oct 21, 2026 at commit 6ac22376d988, with Cisco's open-source skill-scanner.
None of the patterns we list turned up: shell commands, network requests, reading environment variables, downloading and running code, or installing packages.
A scan lists patterns in the code. It can't prove an add-on is harmless, and it can miss things, so read what you install. How we scan
Alternatives
Other makers' add-ons that do the same job, next to this one.
| Name | Score | Stars | Context | Updated |
|---|---|---|---|---|
| This onememory-extractor Lifecycle-Innovations-Limited/claude-ops · Subagent | 63 | ★ 547 | ≈30 in chat | 17d ago |
| extractor athola/claude-night-market · Subagent Both about extractor | 58 | ★ 342 | ≈17 in chat | 19d ago |
| knowledge-extractor SethGammon/Citadel · Subagent Both about extractor and extract | 70 | ★ 925 | ≈22 in chat | 17d ago |
| design-context-extractor yonatangross/orchestkit · Subagent Both about extractor and extract | 58 | ★ 296 | ≈48 in chat | 16d ago |
| epub-chapter-extractor Abilityai/cornelius · Subagent Both about extractor and extract | 61 | ★ 113 | ≈63 in chat | 27d ago |
| news-extractor NanmiCoder/NewsCrawler · Skill Both about extractor | 74 | ★ 627 | ≈46 always | 3mo ago |