# memorydetective

MCP-сервер для поиска циклов удержания и проблем производительности в iOS. Анализирует .memgraph, .trace и MetricKit-пayloads из чата агента.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 14
- Автор: carloshpdoc
- Лицензия: Apache-2.0 · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/carloshpdoc/memorydetective
- Обновлён: 2026-05-25
- HTML: https://affpapa.org/nevibecode/mcp/memorydetective

## Что делает

memorydetective подключает агента к инструментам диагностики iOS. Он читает `.memgraph`, ищет ROOT CYCLE, сопоставляет циклы с типичными паттернами SwiftUI и Combine и предлагает краткое направление для исправления. Для трассировок доступны `inspectTrace`, `summarizeTrace`, анализ памяти, энергопотребления и сетевой активности.

Сервер также принимает Apple MetricKit `.mxdiagnostic` от сборок TestFlight и App Store: группирует падения, находит участки зависаний и показывает исключения CPU или диска. Через `recordViaInstrumentsApp` можно запустить запись в Instruments.app и передать сохранённый `.trace` на анализ. Для работы нужен Node.js версии `20` или выше. На macOS 26.x запись через `xctrace` для симуляторов ломается, поэтому нужен обходной путь через Instruments.app или физическое устройство. Физический iOS требует Xcode.

## Требования
- Нужно: Node.js (команды через npx)

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add memorydetective -- npx -y memorydetective
```

### Codex

**Командой платформы**
```bash
codex mcp add memorydetective -- npx -y memorydetective
```

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "memorydetective": {
            "command": "npx",
            "args": [
                "-y",
                "memorydetective"
            ]
        }
    }
}
```

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "memorydetective": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "memorydetective"
            ]
        }
    }
}
```

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add memorydetective npx -y memorydetective
```

## Когда брать
- находить циклы удержания в `.memgraph`
- разбирать `.trace` после записи профиля
- сопоставлять утечки с паттернами SwiftUI и Combine
- группировать падения из MetricKit
- проверять регрессии памяти и производительности iOS

## Примеры запросов агенту
- Найди циклы удержания в файле `App.memgraph` и объясни возможные причины.
- Разбери `Profile.trace`, выдели проблемы с памятью и предложи следующий шаг.
- Проанализируй payload `diagnostic.mxdiagnostic` и сгруппируй падения по типу исключения.

## Похожие
- [swiftui-performance](https://affpapa.org/nevibecode/skills/swiftui-performance.md) — скилл · 4600 установок
- [swiftui-performance-audit](https://affpapa.org/nevibecode/skills/swiftui-performance-audit.md) — скилл · 109 установок
- [android-profiler](https://affpapa.org/nevibecode/skills/android-profiler.md) — скилл · 1000 установок
- [ios-memgraph-analysis](https://affpapa.org/nevibecode/skills/ios-memgraph-analysis.md) — скилл · 1200 установок
- [ios-memgraph-leaks](https://affpapa.org/nevibecode/skills/ios-memgraph-leaks.md) — скилл · 1054 установки
- [optimize-memory-usage](https://affpapa.org/nevibecode/commands/optimize-memory-usage.md) — команда · 476 установок

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
