ContextLattice

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.

  1. Клонируйте репозиторий и перейдите в директорию:
    git clone git@github.com:sheawinkler/ContextLattice.git && cd ContextLattice
  2. Скопируйте файл с переменными окружения:
    cp .env.example .env
  3. Запустите выбранный стек одной командой:
    gmake quickstart
    Система попросит выбрать профиль выполнения (lite или advanced).
  4. Проверьте, что сервер запущен:
    curl -fsS http://127.0.0.1:8075/health | jq
    Вы должны получить JSON с состоянием сервера.
  5. Настройте ваш MCP-клиент. Для Streamable HTTP укажите адрес шлюза. Пример для Claude Desktop:
    { "mcpServers": { "context-lattice": { "url": "http://127.0.0.1:8075/mcp" } } }
    Уточните путь к MCP-эндпоинту в документации шлюза, если он отличается.
  6. Перезапустите клиент.

Примеры запросов

  • «Покажи последние 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-клиенты.

Поделиться