Master memory forensics techniques including memory

by wshobson · MIT license · ★ 39,857 on GitHub · updated Sep 21

Memory forensics cover

Master memory forensics techniques including memory acquisition, process analysis, and artifact extraction using Volatility and related tools. Use when analyzing memory dumps, investigating incidents, or performing malware analysis from…

---
name: memory-forensics
description: Master memory forensics techniques including memory acquisition, process analysis, and artifact extraction using Volatility and related tools. Use when analyzing memory dumps, investigating incidents, or performing malware analysis from RAM captures.
---

# Memory Forensics

Comprehensive techniques for acquiring, analyzing, and extracting artifacts from memory dumps for incident response and malware analysis.

## When to Use This Skill

- Performing memory analysis during incident response or breach investigation
- Extracting malware artifacts (processes, injected code, network connections) from a RAM capture
- Acquiring volatile memory from a live Windows/Linux/macOS system before shutdown
- Using Volatility 3 / Rekall to triage memory dumps
- Recovering credentials, browser sessions, or open files from process memory

## Memory Acquisition

Overview

Comprehensive techniques for acquiring, analyzing, and extracting artifacts from memory dumps for incident response and malware analysis.

Manual install (npx, ZIP)
Claude Codenpx skills add wshobson/agents --skill memory-forensics -g -a claude-code
Claude Code (manual)mkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/wshobson/agents/tar.gz/4236bb91f839 \ | tar -xz -C ~/.claude/skills --strip-components=4 agents-4236bb91f839/plugins/reverse-engineering/skills/memory-forensics
Windows (PowerShell)New-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/0f1615065b73092a975e/memory-forensics.zip" -OutFile "$env:TEMP\memory-forensics.zip"; Expand-Archive "$env:TEMP\memory-forensics.zip" -DestinationPath "$HOME\.claude\skills" -Force
Claude.ai / desktopDownload the ZIP and upload it under Settings → Capabilities → Skills.
Codex, Cursor, other agentsPoint them at SKILL.md. The other files are plain text.

Connects with Agent Alley MCP · agentalley.io/mcp

Files included

  • SKILL.md8.2 KB
  • references/1 file · 2.7 KB
Read the files here
wshobson/4236bb92 files
SKILL.md
Show the full text348 lines

Memory Forensics

Comprehensive techniques for acquiring, analyzing, and extracting artifacts from memory dumps for incident response and malware analysis.

When to Use This Skill

  • Performing memory analysis during incident response or breach investigation
  • Extracting malware artifacts (processes, injected code, network connections) from a RAM capture
  • Acquiring volatile memory from a live Windows/Linux/macOS system before shutdown
  • Using Volatility 3 / Rekall to triage memory dumps
  • Recovering credentials, browser sessions, or open files from process memory

Memory Acquisition

Live Acquisition Tools
Windows
# WinPmem (Recommended)
winpmem_mini_x64.exe memory.raw

# DumpIt
DumpIt.exe

# Belkasoft RAM Capturer
# GUI-based, outputs raw format

# Magnet RAM Capture
# GUI-based, outputs raw format
Linux
# LiME (Linux Memory Extractor)
sudo insmod lime.ko "path=/tmp/memory.lime format=lime"

# /dev/mem (limited, requires permissions)
sudo dd if=/dev/mem of=memory.raw bs=1M

# /proc/kcore (ELF format)
sudo cp /proc/kcore memory.elf
macOS
# osxpmem
sudo ./osxpmem -o memory.raw

# MacQuisition (commercial)
Virtual Machine Memory
# VMware: .vmem file is raw memory
cp vm.vmem memory.raw

# VirtualBox: Use debug console
vboxmanage debugvm "VMName" dumpvmcore --filename memory.elf

# QEMU
virsh dump <domain> memory.raw --memory-only

# Hyper-V
# Checkpoint contains memory state

Detailed section: Volatility 3 Framework

Originally a 2680-byte section in this SKILL.md. Moved to references/details.md to fit Codex's 8 KB skill body cap.

Analysis Workflows

Malware Analysis Workflow
# 1. Initial process survey
vol -f memory.raw windows.pstree > processes.txt
vol -f memory.raw windows.pslist > pslist.txt

# 2. Network connections
vol -f memory.raw windows.netscan > network.txt

# 3. Detect injection
vol -f memory.raw windows.malfind > malfind.txt

# 4. Analyze suspicious processes
vol -f memory.raw windows.dlllist --pid <PID>
vol -f memory.raw windows.handles --pid <PID>

# 5. Dump suspicious executables
vol -f memory.raw windows.pslist --pid <PID> --dump

# 6. Extract strings from dumps
strings -a pid.<PID>.exe > strings.txt

# 7. YARA scanning
vol -f memory.raw windows.yarascan --yara-rules malware.yar
Incident Response Workflow
# 1. Timeline of events
vol -f memory.raw windows.timeliner > timeline.csv

# 2. User activity
vol -f memory.raw windows.cmdline
vol -f memory.raw windows.consoles

# 3. Persistence mechanisms
vol -f memory.raw windows.registry.printkey \
    --key "Software\Microsoft\Windows\CurrentVersion\Run"

# 4. Services
vol -f memory.raw windows.svcscan

# 5. Scheduled tasks
vol -f memory.raw windows.scheduled_tasks

# 6. Recent files
vol -f memory.raw windows.filescan | grep -i "recent"

Data Structures

Windows Process Structures
// EPROCESS (Executive Process)
typedef struct _EPROCESS {
    KPROCESS Pcb;                    // Kernel process block
    EX_PUSH_LOCK ProcessLock;
    LARGE_INTEGER CreateTime;
    LARGE_INTEGER ExitTime;
    // ...
    LIST_ENTRY ActiveProcessLinks;   // Doubly-linked list
    ULONG_PTR UniqueProcessId;       // PID
    // ...
    PEB* Peb;                        // Process Environment Block
    // ...
} EPROCESS;

// PEB (Process Environment Block)
typedef struct _PEB {
    BOOLEAN InheritedAddressSpace;
    BOOLEAN ReadImageFileExecOptions;
    BOOLEAN BeingDebugged;           // Anti-debug check
    // ...
    PVOID ImageBaseAddress;          // Base address of executable
    PPEB_LDR_DATA Ldr;              // Loader data (DLL list)
    PRTL_USER_PROCESS_PARAMETERS ProcessParameters;
    // ...
} PEB;
VAD (Virtual Address Descriptor)
typedef struct _MMVAD {
    MMVAD_SHORT Core;
    union {
        ULONG LongFlags;
        MMVAD_FLAGS VadFlags;
    } u;
    // ...
    PVOID FirstPrototypePte;
    PVOID LastContiguousPte;
    // ...
    PFILE_OBJECT FileObject;
} MMVAD;

// Memory protection flags
#define PAGE_EXECUTE           0x10
#define PAGE_EXECUTE_READ      0x20
#define PAGE_EXECUTE_READWRITE 0x40
#define PAGE_EXECUTE_WRITECOPY 0x80

Detection Patterns

Process Injection Indicators
# Malfind indicators
# - PAGE_EXECUTE_READWRITE protection (suspicious)
# - MZ header in non-image VAD region
# - Shellcode patterns at allocation start

# Common injection techniques
# 1. Classic DLL Injection
#    - VirtualAllocEx + WriteProcessMemory + CreateRemoteThread

# 2. Process Hollowing
#    - CreateProcess (SUSPENDED) + NtUnmapViewOfSection + WriteProcessMemory

# 3. APC Injection
#    - QueueUserAPC targeting alertable threads

# 4. Thread Execution Hijacking
#    - SuspendThread + SetThreadContext + ResumeThread
Rootkit Detection
# Compare process lists
vol -f memory.raw windows.pslist > pslist.txt
vol -f memory.raw windows.psscan > psscan.txt
diff pslist.txt psscan.txt  # Hidden processes

# Check for DKOM (Direct Kernel Object Manipulation)
vol -f memory.raw windows.callbacks

# Detect hooked functions
vol -f memory.raw windows.ssdt  # System Service Descriptor Table

# Driver analysis
vol -f memory.raw windows.driverscan
vol -f memory.raw windows.driverirp
Credential Extraction
# Dump hashes (requires hivelist first)
vol -f memory.raw windows.hashdump

# LSA secrets
vol -f memory.raw windows.lsadump

# Cached domain credentials
vol -f memory.raw windows.cachedump

# Mimikatz-style extraction
# Requires specific plugins/tools

YARA Integration

Writing Memory YARA Rules
rule Suspicious_Injection
{
    meta:
        description = "Detects common injection shellcode"

    strings:
        // Common shellcode patterns
        $mz = { 4D 5A }
        $shellcode1 = { 55 8B EC 83 EC }  // Function prologue
        $api_hash = { 68 ?? ?? ?? ?? 68 ?? ?? ?? ?? E8 }  // Push hash, call

    condition:
        $mz at 0 or any of ($shellcode*)
}

rule Cobalt_Strike_Beacon
{
    meta:
        description = "Detects Cobalt Strike beacon in memory"

    strings:
        $config = { 00 01 00 01 00 02 }
        $sleep = "sleeptime"
        $beacon = "%s (admin)" wide

    condition:
        2 of them
}
Scanning Memory
# Scan all process memory
vol -f memory.raw windows.yarascan --yara-rules rules.yar

# Scan specific process
vol -f memory.raw windows.yarascan --yara-rules rules.yar --pid 1234

# Scan kernel memory
vol -f memory.raw windows.yarascan --yara-rules rules.yar --kernel

String Analysis

Extracting Strings
# Basic string extraction
strings -a memory.raw > all_strings.txt

# Unicode strings
strings -el memory.raw >> all_strings.txt

# Targeted extraction from process dump
vol -f memory.raw windows.memmap --pid 1234 --dump
strings -a pid.1234.dmp > process_strings.txt

# Pattern matching
grep -E "(https?://|[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})" all_strings.txt
FLOSS for Obfuscated Strings
# FLOSS extracts obfuscated strings
floss malware.exe > floss_output.txt

# From memory dump
floss pid.1234.dmp

Best Practices

Acquisition Best Practices
  1. Minimize footprint: Use lightweight acquisition tools
  2. Document everything: Record time, tool, and hash of capture
  3. Verify integrity: Hash memory dump immediately after capture
  4. Chain of custody: Maintain proper forensic handling
Analysis Best Practices
  1. Start broad: Get overview before deep diving
  2. Cross-reference: Use multiple plugins for same data
  3. Timeline correlation: Correlate memory findings with disk/network
  4. Document findings: Keep detailed notes and screenshots
  5. Validate results: Verify findings through multiple methods
Common Pitfalls
  • Stale data: Memory is volatile, analyze promptly
  • Incomplete dumps: Verify dump size matches expected RAM
  • Symbol issues: Ensure correct symbol files for OS version
  • Smear: Memory may change during acquisition
  • Encryption: Some data may be encrypted in memory
1---
2name: memory-forensics
3description: Master memory forensics techniques including memory acquisition, process analysis, and artifact extraction using Volatility and related tools. Use when analyzing memory dumps, investigating incidents, or performing malware analysis from RAM captures.
4---
5 
6# Memory Forensics
7 
8Comprehensive techniques for acquiring, analyzing, and extracting artifacts from memory dumps for incident response and malware analysis.
9 
10## When to Use This Skill
11 
12- Performing memory analysis during incident response or breach investigation
13- Extracting malware artifacts (processes, injected code, network connections) from a RAM capture
14- Acquiring volatile memory from a live Windows/Linux/macOS system before shutdown
15- Using Volatility 3 / Rekall to triage memory dumps
16- Recovering credentials, browser sessions, or open files from process memory
17 
18## Memory Acquisition
19 
20### Live Acquisition Tools
21 
22#### Windows
23 
24```powershell
25# WinPmem (Recommended)
26winpmem_mini_x64.exe memory.raw
27 
28# DumpIt
29DumpIt.exe
30 
31# Belkasoft RAM Capturer
32# GUI-based, outputs raw format
33 
34# Magnet RAM Capture
35# GUI-based, outputs raw format
36```
37 
38#### Linux
39 
40```bash
41# LiME (Linux Memory Extractor)
42sudo insmod lime.ko "path=/tmp/memory.lime format=lime"
43 
44# /dev/mem (limited, requires permissions)
45sudo dd if=/dev/mem of=memory.raw bs=1M
46 
47# /proc/kcore (ELF format)
48sudo cp /proc/kcore memory.elf
49```
50 
51#### macOS
52 
53```bash
54# osxpmem
55sudo ./osxpmem -o memory.raw
56 
57# MacQuisition (commercial)
58```
59 
60### Virtual Machine Memory
61 
62```bash
63# VMware: .vmem file is raw memory
64cp vm.vmem memory.raw
65 
66# VirtualBox: Use debug console
67vboxmanage debugvm "VMName" dumpvmcore --filename memory.elf
68 
69# QEMU
70virsh dump <domain> memory.raw --memory-only
71 
72# Hyper-V
73# Checkpoint contains memory state
74```
75 
76## Detailed section: Volatility 3 Framework
77 
78Originally a 2680-byte section in this SKILL.md. Moved to `references/details.md` to fit Codex's 8 KB skill body cap.
79 
80## Analysis Workflows
81 
82### Malware Analysis Workflow
83 
84```bash
85# 1. Initial process survey
86vol -f memory.raw windows.pstree > processes.txt
87vol -f memory.raw windows.pslist > pslist.txt
88 
89# 2. Network connections
90vol -f memory.raw windows.netscan > network.txt
91 
92# 3. Detect injection
93vol -f memory.raw windows.malfind > malfind.txt
94 
95# 4. Analyze suspicious processes
96vol -f memory.raw windows.dlllist --pid <PID>
97vol -f memory.raw windows.handles --pid <PID>
98 
99# 5. Dump suspicious executables
100vol -f memory.raw windows.pslist --pid <PID> --dump
101 
102# 6. Extract strings from dumps
103strings -a pid.<PID>.exe > strings.txt
104 
105# 7. YARA scanning
106vol -f memory.raw windows.yarascan --yara-rules malware.yar
107```
108 
109### Incident Response Workflow
110 
111```bash
112# 1. Timeline of events
113vol -f memory.raw windows.timeliner > timeline.csv
114 
115# 2. User activity
116vol -f memory.raw windows.cmdline
117vol -f memory.raw windows.consoles
118 
119# 3. Persistence mechanisms
120vol -f memory.raw windows.registry.printkey \
121 --key "Software\Microsoft\Windows\CurrentVersion\Run"
122 
123# 4. Services
124vol -f memory.raw windows.svcscan
125 
126# 5. Scheduled tasks
127vol -f memory.raw windows.scheduled_tasks
128 
129# 6. Recent files
130vol -f memory.raw windows.filescan | grep -i "recent"
131```
132 
133## Data Structures
134 
135### Windows Process Structures
136 
137```c
138// EPROCESS (Executive Process)
139typedef struct _EPROCESS {
140 KPROCESS Pcb; // Kernel process block
141 EX_PUSH_LOCK ProcessLock;
142 LARGE_INTEGER CreateTime;
143 LARGE_INTEGER ExitTime;
144 // ...
145 LIST_ENTRY ActiveProcessLinks; // Doubly-linked list
146 ULONG_PTR UniqueProcessId; // PID
147 // ...
148 PEB* Peb; // Process Environment Block
149 // ...
150} EPROCESS;
151 
152// PEB (Process Environment Block)
153typedef struct _PEB {
154 BOOLEAN InheritedAddressSpace;
155 BOOLEAN ReadImageFileExecOptions;
156 BOOLEAN BeingDebugged; // Anti-debug check
157 // ...
158 PVOID ImageBaseAddress; // Base address of executable
159 PPEB_LDR_DATA Ldr; // Loader data (DLL list)
160 PRTL_USER_PROCESS_PARAMETERS ProcessParameters;
161 // ...
162} PEB;
163```
164 
165### VAD (Virtual Address Descriptor)
166 
167```c
168typedef struct _MMVAD {
169 MMVAD_SHORT Core;
170 union {
171 ULONG LongFlags;
172 MMVAD_FLAGS VadFlags;
173 } u;
174 // ...
175 PVOID FirstPrototypePte;
176 PVOID LastContiguousPte;
177 // ...
178 PFILE_OBJECT FileObject;
179} MMVAD;
180 
181// Memory protection flags
182#define PAGE_EXECUTE 0x10
183#define PAGE_EXECUTE_READ 0x20
184#define PAGE_EXECUTE_READWRITE 0x40
185#define PAGE_EXECUTE_WRITECOPY 0x80
186```
187 
188## Detection Patterns
189 
190### Process Injection Indicators
191 
192```python
193# Malfind indicators
194# - PAGE_EXECUTE_READWRITE protection (suspicious)
195# - MZ header in non-image VAD region
196# - Shellcode patterns at allocation start
197 
198# Common injection techniques
199# 1. Classic DLL Injection
200# - VirtualAllocEx + WriteProcessMemory + CreateRemoteThread
201 
202# 2. Process Hollowing
203# - CreateProcess (SUSPENDED) + NtUnmapViewOfSection + WriteProcessMemory
204 
205# 3. APC Injection
206# - QueueUserAPC targeting alertable threads
207 
208# 4. Thread Execution Hijacking
209# - SuspendThread + SetThreadContext + ResumeThread
210```
211 
212### Rootkit Detection
213 
214```bash
215# Compare process lists
216vol -f memory.raw windows.pslist > pslist.txt
217vol -f memory.raw windows.psscan > psscan.txt
218diff pslist.txt psscan.txt # Hidden processes
219 
220# Check for DKOM (Direct Kernel Object Manipulation)
221vol -f memory.raw windows.callbacks
222 
223# Detect hooked functions
224vol -f memory.raw windows.ssdt # System Service Descriptor Table
225 
226# Driver analysis
227vol -f memory.raw windows.driverscan
228vol -f memory.raw windows.driverirp
229```
230 
231### Credential Extraction
232 
233```bash
234# Dump hashes (requires hivelist first)
235vol -f memory.raw windows.hashdump
236 
237# LSA secrets
238vol -f memory.raw windows.lsadump
239 
240# Cached domain credentials
241vol -f memory.raw windows.cachedump
242 
243# Mimikatz-style extraction
244# Requires specific plugins/tools
245```
246 
247## YARA Integration
248 
249### Writing Memory YARA Rules
250 
251```yara
252rule Suspicious_Injection
253{
254 meta:
255 description = "Detects common injection shellcode"
256 
257 strings:
258 // Common shellcode patterns
259 $mz = { 4D 5A }
260 $shellcode1 = { 55 8B EC 83 EC } // Function prologue
261 $api_hash = { 68 ?? ?? ?? ?? 68 ?? ?? ?? ?? E8 } // Push hash, call
262 
263 condition:
264 $mz at 0 or any of ($shellcode*)
265}
266 
267rule Cobalt_Strike_Beacon
268{
269 meta:
270 description = "Detects Cobalt Strike beacon in memory"
271 
272 strings:
273 $config = { 00 01 00 01 00 02 }
274 $sleep = "sleeptime"
275 $beacon = "%s (admin)" wide
276 
277 condition:
278 2 of them
279}
280```
281 
282### Scanning Memory
283 
284```bash
285# Scan all process memory
286vol -f memory.raw windows.yarascan --yara-rules rules.yar
287 
288# Scan specific process
289vol -f memory.raw windows.yarascan --yara-rules rules.yar --pid 1234
290 
291# Scan kernel memory
292vol -f memory.raw windows.yarascan --yara-rules rules.yar --kernel
293```
294 
295## String Analysis
296 
297### Extracting Strings
298 
299```bash
300# Basic string extraction
301strings -a memory.raw > all_strings.txt
302 
303# Unicode strings
304strings -el memory.raw >> all_strings.txt
305 
306# Targeted extraction from process dump
307vol -f memory.raw windows.memmap --pid 1234 --dump
308strings -a pid.1234.dmp > process_strings.txt
309 
310# Pattern matching
311grep -E "(https?://|[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})" all_strings.txt
312```
313 
314### FLOSS for Obfuscated Strings
315 
316```bash
317# FLOSS extracts obfuscated strings
318floss malware.exe > floss_output.txt
319 
320# From memory dump
321floss pid.1234.dmp
322```
323 
324## Best Practices
325 
326### Acquisition Best Practices
327 
3281. **Minimize footprint**: Use lightweight acquisition tools
3292. **Document everything**: Record time, tool, and hash of capture
3303. **Verify integrity**: Hash memory dump immediately after capture
3314. **Chain of custody**: Maintain proper forensic handling
332 
333### Analysis Best Practices
334 
3351. **Start broad**: Get overview before deep diving
3362. **Cross-reference**: Use multiple plugins for same data
3373. **Timeline correlation**: Correlate memory findings with disk/network
3384. **Document findings**: Keep detailed notes and screenshots
3395. **Validate results**: Verify findings through multiple methods
340 
341### Common Pitfalls
342 
343- **Stale data**: Memory is volatile, analyze promptly
344- **Incomplete dumps**: Verify dump size matches expected RAM
345- **Symbol issues**: Ensure correct symbol files for OS version
346- **Smear**: Memory may change during acquisition
347- **Encryption**: Some data may be encrypted in memory
348 
View all files on GitHub →

Details

Updated
Sep 21, 2026
License
MIT
Stars on the repo
★ 39,857
Checked
Source
wshobson/agents ↗
Creator
wshobson · 179 listings
View creator

Similar skills

See all →
SkillExport the Obsidian wiki's knowledge graph to structuredWiki Export — Knowledge Graph ExportAr9av/obsidian-wiki · by Ar9avExport the Obsidian wiki's knowledge graph to structured formats for use in external tools. Use this skill when the user says "export wiki", "export graph", "export to JSON", "export to Gephi", export to Neo4j", "export to Postgres", "export to SQL", "graphml", "visualize wiki", knowledge graph export", "export to OKF", "OKF bundle", "open knowledge format", export as markdown bundle", or wants to use their wiki data in another tool. Outputs graph.json, graph.graphml, cypher.txt (Neo4j), postgres.sql (Postgres), and graph.html (interactive browser visualization) into a wiki-export/ directory at the vault root, plus an optional OKF (Open Knowledge Format) markdown bundle under wiki-export/okf/.★ 3.5k GitHub starsSkillImport a wiki knowledge graph into the current vaultWiki Import — Reconstruct Pages from an ExportAr9av/obsidian-wiki · by Ar9avImport a wiki knowledge graph into the current vault — either from a graph.json export file (stubs) or from an OKF (Open Knowledge Format) markdown bundle (full page bodies). Use this skill when the user says "import wiki", "import from export", "load graph.json", import vault", "import OKF bundle", "import OKF", "load OKF", "import markdown bundle", /wiki-import", or wants to transfer pages from one vault to another using the output of wiki-export.★ 3.5k GitHub starsSkillYour team's shared, AI-ready knowledge base/company-brain — Team-shared AI-ready knowledge basecoreyhaines31/makerskills · by coreyhaines31Your team's shared, AI-ready knowledge base — people, companies, meetings, SOPs, and decisions structured so an agent can answer on your team's behalf. Team-scope sibling to second-brain. Modes — capture, compile (wiki pages + INDEX.md), query (trust-weighted, saved to outputs/), review (verify / deprecate / supersede stale captures), lint, connect, search. Structured raw dirs (people/, companies/, meetings/, sops/, decisions/, customer-language/, sales-objections/). Every capture stamps author, timestamp, and trust status. Optional sync from call transcripts, Slack/email exports, CRM. Vault at ${COMPANY_BRAIN_VAULT:-$HOME/Documents/CompanyBrain}/. Triggers on "/company-brain," "/cb," "capture this into the team brain," "log this meeting," "save this SOP," "compile the company wiki," "query the team brain," "what does the team know about X," "review the company brain," "lint the company brain," "who's the internal expert on X.★ 855 GitHub starsSkillGive Claude a permanent, searchable long-term memoryAI Brain — persistent memory for Claude via ObsidianOotto-AI/claude-content-skills · by Ootto-AIGive Claude a permanent, searchable long-term memory using an Obsidian vault as the store. At the end of a session, summarize what mattered and save it as a Markdown note in your "AI Brain" vault; at the start of a session (or on demand), read back only the relevant past notes. Local markdown you own — connected via the Filesystem MCP. Trigger with "wrap up", "save this session", or "remember this".★ 139 GitHub starsSkillFind prior Claude Code and Codex sessions with an indexed/recall: session memory engineParcha-ai/parcha-skills · by Parcha-aiFind prior Claude Code and Codex sessions with an indexed local search engine, then continue the work, repeat it with fresh inputs, or distill it into a skill. Runs from Claude Code, Codex, or pi; the current index covers Claude Code and Codex transcripts. Use when the user names Recall, says "find that conversation where…", "what did we do last time about…", "continue what we did yesterday on X", "what did codex do on this branch", "turn what we did about Y into a skill", or "remember when you…". Not for searching code (use grep on the repo) or for facts already in MEMORY.md.★ 62 GitHub starsMCPA basic implementation of persistent memory using a localKnowledge Graph Memory Servermodelcontextprotocol/servers · by modelcontextprotocolA basic implementation of persistent memory using a local knowledge graph. This lets Claude remember information about the user across…★ 90.5k GitHub stars

More from wshobson

SkillMaster C/.NET backend development patterns for buildingwshobson/agents · by wshobsonMaster C#/.NET backend development patterns for building robust APIs, MCP servers, and enterprise applications. Covers async/await, dependency injection, Entity Framework Core, Dapper, configuration, caching, and testing with xUnit. Use when developing .NET backends, reviewing C# code, or designing API architectures.★ 39.9k GitHub starsSkillImplement WCAG 2.2 compliant interfaces with mobileAccessibility compliancewshobson/agents · by wshobsonImplement WCAG 2.2 compliant interfaces with mobile accessibility, inclusive design patterns, and assistive technology support. Use when auditing accessibility, implementing ARIA patterns, building for screen readers, or ensuring inclusive user experiences.★ 39.9k GitHub starsSkillMaster Material Design 3 and Jetpack Compose patternsAndroid Mobile Designwshobson/agents · by wshobsonMaster Material Design 3 and Jetpack Compose patterns for building native Android apps. Use when designing Android interfaces, implementing Compose UI, or following Google's Material Design guidelines.★ 39.9k GitHub starsSkillMigrate from AngularJS to Angular using hybrid modeAngular migrationwshobson/agents · by wshobsonMigrate from AngularJS to Angular using hybrid mode, incremental component rewriting, and dependency injection updates. Use when upgrading AngularJS applications, planning framework migrations, or modernizing legacy Angular code.★ 39.9k GitHub starsSkillUnderstand anti-reversing, obfuscationAnti reversing techniqueswshobson/agents · by wshobsonUnderstand anti-reversing, obfuscation, and protection techniques encountered during software analysis. Use this skill when analyzing malware evasion techniques, when implementing anti-debugging protections for CTF challenges, when reverse engineering packed binaries, or when building security research tools that need to detect virtualized environments.★ 39.9k GitHub starsSkillBuild production Apache Airflow DAGs with best practicesApache Airflow DAG Patternswshobson/agents · by wshobsonBuild production Apache Airflow DAGs with best practices for operators, sensors, testing, and deployment. Use when creating data pipelines, orchestrating workflows, or scheduling batch jobs.★ 39.9k GitHub stars