
ContextLattice
sheawinklerApache-2.0
110 звёзд7 форков
ContextLattice решает проблему фрагментации памяти в агентных системах. Обычно каждый агент или сценарий хранит контекст в своей изолированной среде. ContextLattice предлагает единый слой памяти, доступный по единому MCP-контракту. Разработчики получают унифицированный API для чтения и записи контекста, а агенты — доступ к долговременной памяти.
Сервер работает по принципу local-first. Данные не покидают вашу инфраструктуру. Это важно для команд, которые работают с конфиденциальной информацией и не могут доверять её облачным провайдерам. В основе архитектуры — Go и Rust. Они обрабатывают быстрый приём запросов и высоконагруженные операции извлечения. Для лёгких сценариев достаточно модуля topic_rollups, для продакшна подключается Qdrant или pgvector.
Характеристики
Общее
- СтатусСообщество
- Разработчикsheawinkler
- ЛицензияApache-2.0
Технологии
- ЯзыкиGo
- Транспортstreamable-http
Описание
Возможности
- Единый MCP-контракт для записи и чтения памяти и контекста AI-агентов.
- Каскадное извлечение данных: сначала быстрый ответ, при необходимости — глубокий поиск.
- Гарантированная доставка запросов по каналам хранения (durable fanout).
- Отказоустойчивая политика: при сбое одного канала возвращает данные из другого.
- Автоматический выбор провайдера инференса в зависимости от окружения (ORCH_INFER_PROVIDER=auto).
- Работа с векторными базами данных: Qdrant для продакшна, pgvector для SQL-сценариев, topic_rollups для лёгких случаев.
- Облегчённая сборка в одном контейнере (Dockerfile.hf-lite) для быстрого запуска без зависимостей.
- Два режима запуска: публичный локальный lite (topic_rollups + qdrant) и полный стек (advanced).
- HTTP-шлюз (gateway-go) принимает запросы от любых MCP- и HTTP-клиентов.
Как подключить
Установка ContextLattice рассчитана на разработчиков, знакомых с Docker и Make.
- Клонируйте репозиторий и перейдите в директорию:
git clone git@github.com:sheawinkler/ContextLattice.git && cd ContextLattice - Скопируйте файл с переменными окружения:
cp .env.example .env - Запустите выбранный стек одной командой:
gmake quickstart
Система попросит выбрать профиль выполнения (lite или advanced). - Проверьте, что сервер запущен:
curl -fsS http://127.0.0.1:8075/health | jq
Вы должны получить JSON с состоянием сервера. - Настройте ваш MCP-клиент. Для Streamable HTTP укажите адрес шлюза. Пример для Claude Desktop:
{ "mcpServers": { "context-lattice": { "url": "http://127.0.0.1:8075/mcp" } } }
Уточните путь к MCP-эндпоинту в документации шлюза, если он отличается. - Перезапустите клиент.
Примеры запросов
- «Покажи последние 10 записей контекста AI-агента.»
- «Сохрани текущий контекст сессии с тегом production_deploy.»
- «Выполни каскадный поиск: найди данные о пользователе user_123. Если быстрого ответа недостаточно, выполни глубокий поиск в Qdrant.»
- «Создай новую задачу для агента: "Проверить статусы всех микросервисов".»
Технические детали
- Язык разработки: Go (gateway-go, основные службы), Rust (высоконагруженные каналы), Python (архивная версия оркестратора).
- Транспорт: Streamable HTTP.
- Лицензия: BSL 1.1.
- Развёртывание: Docker Compose (gmake quickstart).
- Векторные базы: Qdrant, pgvector, topic_rollups.
- Совместимость: любые MCP-клиенты и HTTP-клиенты.