Stigmergy-mcp

by calabamatex (community) · Claude Desktop, Claude Code, OpenCode, произвольные MCP-совместимые агенты

MCP MCP Servers Open Source активный

MCP-сервер координации мультиагентных систем по принципу стигмержии — как муравьи, оставляющие феромонные следы вместо прямого общения. Вместо передачи каждому агенту полной истории переписки агенты оставляют компактные затухающие сигналы, привязанные к области работы. Снижает рост объёма служебных токенов между агентами с квадратичного до линейного — решает задокументированную самой Anthropic проблему масштабирования мультиагентных систем на кодовых задачах.


Установка
git clone https://github.com/calabamatex/Stigmergy-mcp.git
cd Stigmergy-mcp
npm install && npm run build

# Claude Code (CLI):
claude mcp add stigmergy -- node dist/src/index.js

# Claude Desktop — claude_desktop_config.json:
{ "mcpServers": { "stigmergy": { "command": "node", "args": ["/path/to/Stigmergy-mcp/dist/src/index.js"] } } }

# OpenCode — ~/.config/opencode/opencode.json:
{ "mcp": { "stigmergy": { "type": "local", "command": ["node", "/path/to/Stigmergy-mcp/dist/src/index.js"] } } }
показать оригинал переведено ИИ

Stigmergy-mcp

Stigmergy-MCP infographic: quadratic direct-message overhead, the linear trace hypothesis, and the four core MCP tools

Кривая O(N) — это гипотеза: она действует, пока извлечение следов на одного агента остаётся ограниченным. Фаза 1 сопутствующей бенчмарки измерила количество извлечённых токенов на агента, которое росло с примерно 0,6 тыс. до 3,7 тыс. между 5 и 10 агентами.

Хранилище трасс, совместимое с MCP, для экспериментов с косвенной координацией через разделённое состояние среди ИИ-агентов.

stigmergy-mcp — это примитив координации, а не фреймворк агентов, оркестратор или среда выполнения. Агенты могут размещать типизированные следы в общей среде, извлекать следы вблизи зоны задачи, усиливать или ослаблять существующие следы и исследовать сигналы высокой интенсивности на более широкой территории.

Статус исследований

Координация на основе следов — это гипотеза, находящаяся на стадии оценки, а не доказанное решение для масштабирования мультиагентных систем.

При кумулятивной, не суммирующей последовательной передаче с примерно постоянным объёмом предшествующих данных повторный перенос контекста может расти квадратично с увеличением количества агентов. При ограниченном извлечении следов, ограниченном объёме извлечённых данных и ограниченной частоте операций координация на основе следов может расти примерно линейно. Эти формы являются условными. Передача сообщений может суммировать, кэшировать, обрезать и маршрутизировать избирательно, в то время как размер следов, ширина извлечения, накладные расходы механизма и потери точности могут расти с увеличением масштаба системы.

Сопутствующий репозиторий Stigmergy-mcp-benchmark предоставляет исследовательские измерения. Текущие данные не устанавливают общего перехода, превосходства по точности или специфической выгоды от затухания и усиления.

Когда примитив может помочь

Координация на основе следов может стоить оценки, когда:

  • задача-релевантное состояние разряжено и локально индексируемо;
  • downstream-агенты нуждаются в выбранном состоянии, а не в полном воспроизведении диалога;
  • объём следов остаётся компактным;
  • ширина извлечения остаётся ограниченной;
  • можно обеспечить контроль происхождения и записи.

Прямая передача, ограниченное суммирование или общая разделённая рабочая область могут быть предпочтительнее, когда:

  • требуется полный контекст;
  • количество агентов мало;
  • повторное использование кэша делает повторяющиеся префиксы недорогими;
  • состояние нельзя безопасно сжать;
  • извлечение следов приближается к полному сканированию хранилища;
  • отсутствуют средства управления безопасностью разделённого состояния.

Что такое стигмергия?

Стигмергия описывает косвенную координацию через состояние, оставленное в общей среде. Реализация поддерживает три типа следов:

  • притяжение — положительный сигнал, связанный с областью
  • опасность — предупреждение, связанное с областью
  • информация — нейтральная аннотация

Следы несут интенсивность, теги, метаданные и горизонт экспоненциального затухания. Другие агенты извлекают следы по области и эффективной интенсивности, а не путём воспроизведения полного протокола.

Быстрый старт

Установка из npm

npm install stigmergy-mcp

Сборка из исходников

git clone https://github.com/calabamatex/Stigmergy-mcp.git
cd Stigmergy-mcp
npm install
npm run build

Добавление в качестве сервера MCP

# From npm
claude mcp add stigmergy -- node node_modules/stigmergy-mcp/dist/src/index.js

# From source
claude mcp add stigmergy -- node dist/src/index.js

Проверка

npm run inspect

База данных

Следы сохраняются в ./stigmergy.db по умолчанию.

STIGMERGY_DB_PATH=/path/to/traces.db
STIGMERGY_DB_PATH=:memory:

База данных создаётся при первом использовании.

Инструменты MCP

deposit_trace

Записывает след в общую среду.

Параметр Тип По умолчанию Описание
area строка обязательно Путь к файлу, модуль или область задачи
action строка обязательно Событие или наблюдение, представленное следом
agent_id строка обязательно Идентификатор агента-источника
trace_type attraction, danger или info обязательно Тип сигнала
intensity число от 0 до 1 0.5 Начальная сила сигнала
decay_hours число 24 Горизонт экспоненциального затухания (в часах)
tags массив строк пустой Поисковые метки
metadata объект пустой Дополнительные структурированные данные

sense_environment

Читает следы вблизи указанной области.

Параметр Тип По умолчанию Описание
area строка обязательно Путь к файлу или префикс
radius целое число 2 Количество уровней пути, включаемых в совпадение
min_intensity число от 0 до 1 0.05 Минимальная эффективная интенсивность
trace_type перечисление необязательно Фильтр по типу следа
tags массив строк необязательно Требует наличия всех указанных тегов
agent_id строка необязательно Фильтр по идентификатору агента-источника

Результаты сортируются по эффективной интенсивности.

reinforce_trace

Усиливает или ослабляет существующий след.

Параметр Тип Описание
trace_id строка Идентификатор следа
delta число от -1 до 1 Положительное значение усиливает; отрицательное ослабляет
### get_gradient

Возвращает наиболее сильные следы на обширной территории.

Параметр Тип Значение по умолчанию Описание
area строка обязательный Префикс обширной территории
limit целое число 5 Максимальное количество возвращаемых следов

Жизненный цикл следа

Эффективная интенсивность следует формуле:

effective = intensity * exp(-elapsed_hours / decay_hours)

При значении по умолчанию decay_hours=24 след сохраняет примерно 37% своей первоначальной интенсивности через 24 часа и примерно 14% через 48 часов. Запуски, длящиеся всего несколько минут, вряд ли заметно активируют механизм убывания. Утверждения о ценности убывания или усиления требуют долгосрочных тестов или явных абляций.

Следы ниже порога обрезки удаляются во время операций отложения и исключаются из чтений ниже применимого порога запроса.

Пример рабочего процесса

Agent A:
  deposit_trace(area: "src/auth/session.ts",
                action: "found XSS in session handler",
                trace_type: "danger",
                intensity: 0.8,
                tags: ["security"])

Agent B:
  sense_environment(area: "src/auth/login.ts", radius: 1)
  reinforce_trace(trace_id: "...", delta: 0.15)

Agent C:
  get_gradient(area: "src/", limit: 5)

Программное использование

import { TraceStore } from 'stigmergy-mcp/store';
import { createServer } from 'stigmergy-mcp/server';

const store = new TraceStore('/path/to/traces.db');
const server = createServer(store);

Подробности реализации см. в файле ARCHITECTURE.md.

Безопасность и управление

Общий изменяемый хранилище следов может стать поверхностью для инъекции запросов, отравления и распространения конфиденциальных данных. При развертывании в производственной среде необходимо добавить соответствующие меры контроля для данной среды, включая:

  • аутентифицированные записи и идентификацию агентов
  • прослеживаемость и только-для-дополнения аудит-записи
  • контроль доступа и изоляцию арендаторов
  • валидацию содержимого и санитаризацию на этапе чтения
  • процедуры хранения, удаления и реагирования на инциденты
  • явные метки доверия для состояний, сгенерированных агентами и инструментами

Данный пакет не следует рассматривать как полноценный набор мер безопасности для производственной среды.

Бенчмарки

Инструмент для исследовательского бенчмаркинга находится по адресу calabamatex/Stigmergy-mcp-benchmark.

Разработка

npm run build
npm run dev
npm test
npm run test:coverage
npm run loc
npm run inspect

Лицензия

MIT

Войдите, чтобы оставить комментарий