Memory leak detector
Skill a5c-ai/babysitter/library/specializations/desktop-development/skills/memory-leak-detector
Babysitter enforces obedience on agentic workforces and enables them to manage extremely complex tasks and workflows through deterministic, hallucination-free self-orchestration
npx -y skills add a5c-ai/babysitter --skill memory-leak-detectorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Detect memory leaks in desktop applications through heap analysis and object tracking
SKILL.md
2.0 KB, as published. Nobody here has run it
memory-leak-detector
Detect memory leaks in desktop applications through heap snapshot analysis, object tracking, and growth pattern detection.
Capabilities
- Capture and compare heap snapshots
- Track object allocation growth
- Identify retained objects
- Detect common leak patterns
- Generate leak reports
- Suggest fixes
Input Schema
{
"type": "object",
"properties": {
"projectPath": { "type": "string" },
"framework": { "enum": ["electron", "native", "qt"] },
"duration": { "type": "number", "default": 60 }
},
"required": ["projectPath"]
}
Detection Approach
// Heap snapshot comparison
const v8 = require('v8');
function detectLeaks(iterations = 3, intervalMs = 10000) {
const snapshots = [];
const interval = setInterval(() => {
global.gc(); // Requires --expose-gc
const snapshot = v8.getHeapStatistics();
snapshots.push(snapshot);
if (snapshots.length >= iterations) {
clearInterval(interval);
analyzeGrowth(snapshots);
}
}, intervalMs);
}
function analyzeGrowth(snapshots) {
const growth = snapshots[snapshots.length - 1].used_heap_size -
snapshots[0].used_heap_size;
console.log(`Heap growth: ${growth / 1024 / 1024} MB`);
}
Common Leak Patterns
- Event listeners not removed
- Closures holding references
- Global variable accumulation
- Timer/interval not cleared
- DOM node detachment
Related Skills
electron-memory-profilerstartup-time-profiler