# session-crosslink

Привязывает сессию агента к HEAD-коммиту каждого репозитория с Entire, если работа шла вне того репозитория, который должен её записать.

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

## Что делает

Бывает так: агент запущен из папки уровнем выше, или из репозитория без Entire, или из одного репозитория, а правки ушли в другой. Тогда сессия нигде не записана. Скилл находит её и прикрепляет к HEAD-коммиту каждого затронутого репозитория с включённым Entire.

Сначала он разрешает id сессии: пробует `entire session current --json` в текущей папке, потом в соседнем репозитории с Entire, а если не вышло — читает транскрипт рантайма. Для Claude это файлы в `~/.claude/projects/<encoded-cwd>/<session-id>.jsonl`, для Codex — каталог `$CODEX_HOME/sessions/`. Дальше собирает список затронутых репозиториев из вашего сообщения, соседних папок и истории правок, проверяет каждый через `entire status --json` и считает, что именно произойдёт.

Перед записью скилл показывает таблицу: репозиторий, HEAD-коммит, действие и checkpoint. Только после подтверждения выполняется `entire session attach` — и обязательно из папки нужного репозитория, потому что CLI определяет репозиторий по cwd. Нужен `entire` 0.6.2 или новее. Учтите: attach правит HEAD, поэтому локальная ветка в каждом затронутом репозитории разойдётся с удалённой. Если по ней открыт пул-реквест, обновлять придётся через `git push --force-with-lease` — это повод проверить ветки перед запуском.

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add entireio/skills --skill session-crosslink -a claude-code
```

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

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add entireio/skills --skill session-crosslink -a codex
```

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

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add entireio/skills --skill session-crosslink -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install entireio/skills session-crosslink
```

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

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add entireio/skills --skill session-crosslink -a gemini-cli
```

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

### Windsurf (Devin Desktop)

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

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add entireio/skills --skill session-crosslink -a opencode
```

### Claude.ai

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

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

## Когда брать
- привязать сессию агента к коммитам репозитория, из которого её не запускали
- найти id сессии, когда Entire её не записал
- собрать список репозиториев, затронутых за одну сессию
- посмотреть, что изменит attach, до самой записи
- переиспользовать существующий checkpoint вместо создания нового

## Примеры запросов агенту
- Привяжи эту сессию к репозиториям, которые я правил: foo и bar api
- Сессия запускалась из родительской папки, найди затронутые репозитории с Entire и покажи превью
- Покажи таблицу с действиями по attach, потом прикрепи сессию

## Похожие
- [session-handoff](https://affpapa.org/nevibecode/skills/softaworks-session-handoff.md) — скилл · 4200 установок
- [session-wrap](https://affpapa.org/nevibecode/skills/session-wrap.md) — скилл · 1300 установок
- [project-session-manager](https://affpapa.org/nevibecode/skills/project-session-manager.md) — скилл · 866 установок
- [session-history](https://affpapa.org/nevibecode/skills/session-history.md) — скилл · 13900 установок
- [nemo-rl-session-memory](https://affpapa.org/nevibecode/skills/nemo-rl-session-memory.md) — скилл · 2000 установок
- [git-workflow-and-versioning](https://affpapa.org/nevibecode/skills/git-workflow-and-versioning.md) — скилл · 59500 установок

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

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

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