
kin v0.7.20
Семантический контроль версий на основе графов для кода, написанного ИИ. Отслеживает сущности и связи вместо файловых диффов, обеспечивая анализ радиуса поражения, теневой обзор слияний и контекст агента на базе MCP для заслуживающего доверия программного обеспечения, сгенерированного ИИ.
Новая основа для кода.
Kin — это графовый репозиторий кода для людей и ИИ-агентов. Он хранит исходный код, зафиксированные связи между кодом и версионированную историю как состояние репозитория. Граф — это модель репозитория, а не поисковый индекс, поддерживаемый рядом с другим репозиторием.
Функции, типы и связи между ними — это данные, которые вы коммитите, ветвите и сливаете. Точный исходный код сохраняется байт в байт, а проекции файловой системы позволяют поддерживаемым инструментам продолжать работать с обычными файлами.
Публичная бета. Попробуйте Kin на реальном проекте, который вы хорошо знаете. Ожидайте шероховатостей.
Быстрый старт · Документация · Демо в браузере
Звезда помогает другим людям найти Kin, а Discussions — это место, куда можно прийти с вопросом о нём.
Посмотрите, что связано
Прежде чем менять общую функцию, что ещё стоит проверить? Kin позволяет найти её зафиксированных вызывающих и исследовать связанный код. CLI и MCP-сервер обращаются к одному и тому же графу, так что вы и ваш агент можете работать с одной и той же записью.
Записано на подготовленном графе ripgrep на e89fff89ac9af12e8d4ce9d5fd07beb408ca730f. Исходные артефакты запуска не публичны. Это иллюстрирует рабочий процесс, а не показатель производительности.
Используйте его из Claude Code, Codex или Cursor
Для Claude Code:
/plugin marketplace add firelock-ai/kin
/plugin install kin@kin
Для Codex добавьте маркетплейс и установите плагин, или позвольте kin setup --intent agent прописать MCP-сервер в ~/.codex/config.toml за вас.
Для Cursor добавьте MCP-сервер вручную; точный фрагмент смотрите в plugins/kin-cursor.
После установки выполните kin init . в свежем клоне проекта, который вы хорошо знаете; навык kin-setup проведёт вас через всё остальное.
Kin не публикуется на crates.io. Крейт kin там — это не связанный с ним проект.
Быстрый старт
Начните со свежего полного клона проекта, который вы хорошо знаете. kin init читает вашу историю Git, не изменяя её и ваши отслеживаемые файлы. Он добавляет каталог .kin и одну строку в .git/info/exclude. Импорт охватывает каждый коммит, достижимый из ваших веток и тегов, поэтому время, память и диск растут с историей, а не с размером рабочей копии. Перед запуском kin init проверяет память и свободное место на диске и останавливается с числами, когда уже может сказать, что машине не хватает ресурсов. Неглубокие клоны, подмодули и Git LFS не поддерживаются, а хуки Git, разреженная рабочая копия или незавершённый merge или rebase также останавливают импорт. kin init называет исправление для каждого случая, а свежий клон позволяет избежать большинства из них.
1. Установка
На macOS, Linux и WSL2 одна команда устанавливает Kin и подключает найденные им инструменты ИИ-кодинга. Требуется Node.js 20 или новее:
npx -y @kinlab/kin setup
На машине без Node вместо этого запустите установщик. get.kinlab.ai и get.kinlab.dev отдают один и тот же скрипт:
curl -fsSL https://get.kinlab.dev/install | sh
В любом случае перезагрузите оболочку отдельной командой, потому что установка помещает kin в ~/.kin/bin и добавляет этот каталог в профиль вашей оболочки для новых сессий:
exec "$SHELL" -l
На нативном Windows x64 установите из PowerShell с помощью irm https://get.kinlab.dev/install.ps1 | iex. Он устанавливает CLI kin и не подключает инструменты ИИ-кодинга, потому что WSL2 остаётся рекомендуемым путём на Windows. Раздел про Windows в Ограничениях беты описывает, что там работает. Нативная сборка для Windows ARM64 не публикуется. На машине с ARM64 запустите эту строку из x64 PowerShell, чтобы установить сборку x86_64 под эмуляцией, или используйте WSL2. Установщик добавляет kin в ваш пользовательский PATH, поэтому вместо exec "$SHELL" -l откройте новое окно PowerShell перед следующим шагом.
О других установщиках или устранении неполадок см. полное руководство по быстрому старту.
2. Инициализация репозитория
В новой командной строке клонируйте репозиторий с помощью Kin:
kin clone https://github.com/pallets/itsdangerous
Или инициализируйте тот, что у вас уже есть, заменив путь ниже:
cd /path/to/your/repository &&
kin init . &&
kin overview &&
kin status
Обе команды заканчиваются следующей командой для запуска — вопросом kin refs о функции в этом репозитории. Они также подключают к нему Codex CLI и Grok CLI, если вы разрешили это при настройке, потому что эти клиенты хранят одну запись, называющую репозиторий.
В Windows PowerShell 5.1 нет &&, поэтому на нативном Windows запускайте те же команды по одной и останавливайтесь, если одна из них завершится ошибкой:
cd C:\path\to\your\repository
kin init .
kin overview
kin status
kin overview показывает сущности, импортированные Kin. kin status показывает, что было принято, и состояние рабочего дерева относительно этого. kin graph status сообщает о живом графе запросов и покрытии демона. Незакоммиченные и неотслеживаемые изменения не являются частью импортированной истории Git; kin init сообщает, что он пропустил.
3. Задайте вопрос, который можно проверить
Поищите то, о чём вы уже знаете, что оно есть в коде:
kin locate "<something you already know is in this repository>"
Замените ExactEntityName ниже на символ из результата:
kin refs ExactEntityName
kin trace ExactEntityName
kin impact ExactEntityName
refs возвращает зафиксированные ссылки, trace добавляет близкий контекст, а impact исследует потенциальные последствия через граф. Сверьте результаты с исходным кодом.
4. Ваши инструменты ИИ-кодинга и семантический поиск
kin setup уже спросил перед подключением найденных им инструментов ИИ-кодинга и подключил их, если вы сказали да. Отдельного шага связывания нет. После установки другого инструмента снова запустите kin setup, а kin setup status покажет, что подключено. На Windows подключайте ИИ-инструменты внутри WSL2.
Семантический поиск работает на локальной модели размером около 523 МБ, и настройка спрашивает перед тем, как что-либо скачивать. Если вы сказали нет, или kin init сообщает, что поисковый индекс ждёт модель, эта команда скачает её и построит индекс:
kin embed