# neo4j-import-skill

Скилл для загрузки CSV, JSON и Parquet в Neo4j: подбирает метод под размер датасета, разбирает типы и проверяет результат после импорта.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 858 установок · ★ 116
- Автор: neo4j-contrib
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/neo4j-contrib/neo4j-skills/tree/HEAD/neo4j-import-skill/SKILL.md
- Обновлён: 2026-10-21
- HTML: https://affpapa.org/nevibecode/skills/neo4j-import-skill

## Что делает

Скилл закрывает импорт структурированных данных в Neo4j. Он помогает выбрать между онлайн-загрузкой через `LOAD CSV` и `CALL IN TRANSACTIONS` и офлайн-импортом `neo4j-admin database import full`, когда датасет большой и базу можно остановить. Внутри есть таблица выбора метода, шаблоны Cypher для узлов и связей, разбор `ON ERROR` режимов и работа с `apoc.load.csv`, `apoc.load.json`, `apoc.periodic.iterate`.

Порядок шагов жёсткий: сначала ограничения уникальности, потом данные. Ограничения создают индекс, которым пользуется `MERGE` при загрузке, а дополнительные индексы строятся уже после импорта — иначе каждая запись во время загрузки замедляется без пользы. В чек-листе перед стартом: проверить `apoc.version()`, убедиться, что целевая база `PRIMARY`, посчитать строки в файле и перекодировать его в UTF-8.

Пустые строки в CSV сохраняются как `""`, а не как `null`, поэтому для преобразования нужен `nullIf()`. Функции `toInteger()` и `toFloat()` на `null` падают — в примерах скилла стоят `toIntegerOrNull()` и `toFloatOrNull()`. На Aura доступны только `https://`-адреса, `file:///` там не работает, а `neo4j-admin import` применим только к self-managed установкам.

Скилл не берётся за неструктурированные документы, PDF и векторные чанки — для этого есть `neo4j-document-import-skill`. Живые записи из приложения через `MERGE`/`CREATE` — тоже не его тема.

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add neo4j-contrib/neo4j-skills --skill neo4j-import-skill -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/neo4j-import-skill/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/neo4j-import-skill/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add neo4j-contrib/neo4j-skills --skill neo4j-import-skill -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/neo4j-import-skill/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add neo4j-contrib/neo4j-skills --skill neo4j-import-skill -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/neo4j-import-skill/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install neo4j-contrib/neo4j-skills neo4j-import-skill
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/neo4j-import-skill/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add neo4j-contrib/neo4j-skills --skill neo4j-import-skill -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/neo4j-contrib/neo4j-skills --path neo4j-import-skill
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/neo4j-import-skill/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add neo4j-contrib/neo4j-skills --skill neo4j-import-skill -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/neo4j-contrib/neo4j-skills/tree/HEAD/neo4j-import-skill/SKILL.md

## Когда брать
- загрузить CSV в Neo4j и не получить дубликатов
- выбрать между онлайн-импортом и офлайн-загрузкой большого датасета
- перенести таблицы из SQL в граф
- настроить пакетную загрузку через `CALL IN TRANSACTIONS`
- проверить, что импорт прошёл целиком

## Примеры запросов агенту
- Загрузи `persons.csv` в Neo4j через `LOAD CSV` с `CALL IN TRANSACTIONS`
- Какой метод импорта выбрать для 20 млн строк в self-managed Neo4j?
- Проверь, что все узлы и связи из `knows.csv` загрузились

## Похожие
- [xlsx](https://affpapa.org/nevibecode/skills/xlsx.md) — скилл · 187223 установки
- [google-agents-cli-observability](https://affpapa.org/nevibecode/skills/google-agents-cli-observability.md) — скилл · 511300 установок
- [caveman-evidence-review](https://affpapa.org/nevibecode/skills/caveman-evidence-review.md) — скилл · 104500 установок
- [migration](https://affpapa.org/nevibecode/skills/migration.md) — скилл · 103900 установок
- [performance-optimization](https://affpapa.org/nevibecode/skills/performance-optimization.md) — скилл · 65200 установок
- [supabase](https://affpapa.org/nevibecode/skills/supabase.md) — скилл · 8 установок

Из того же набора: [neo4j-contrib/neo4j-skills](https://affpapa.org/nevibecode/by/neo4j-contrib/neo4j-skills.md) — 28 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

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