Skip to main content
Glama
Openly-Useful

operations-pulse

Official

Operations Pulse

Локально-ориентированный (local-first) оркестратор циклов для полезных, объяснимых операций.

Operations Pulse превращает повторяющиеся проверки в доказательства, доказательства — в долговечные тикеты, а тикеты — в проверяемую оперативную память. По умолчанию он работает без платного сервиса: Node.js, SQLite, Git, локальных файлов и локальных логов достаточно, чтобы получить полезный пульс.

Это проект Openly Useful: полезные вещи, сделанные открыто.

Используйте актуальную инструкцию по настройке, безопасную для учётных данных, на operations-pulse-five.vercel.app.

Что входит в v0.1

  • Журнал (ledger) тикетов и пульса на базе SQLite.

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

  • MCP-сервер с самоописываемыми инструментами и структурированными результатами.

  • Переносимый навык operations-pulse для Codex и совместимых агентов.

  • Необязательные определения ролей для операций, анализа сигналов, триажа и интеграций.

  • Каталог подключений и управляемая настройка, которые различают пути: бесплатные/локальные, подписочные, host OAuth, собственный хостинг (self-hosted) и собственные учётные данные.

  • Полный журнал миграций: импортированные, переписанные, связанные или исключённые записи.

Related MCP server: Project Telos

Бесплатный быстрый старт: сначала бесплатно

Требования: Node.js 24 или новее. Для базового сценария не требуется API-ключ.

npm install
npm run build
node packages/core/dist/cli.js init
node packages/core/dist/cli.js pulse run --root .
node packages/core/dist/cli.js tickets list

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

export OPERATIONS_PULSE_GITHUB_TOKEN='stored by your shell or secret manager'
node packages/core/dist/cli.js connections configure \
  --id github --mode env-token \
  --credential-env OPERATIONS_PULSE_GITHUB_TOKEN
node packages/core/dist/cli.js connections test --id github
node packages/core/dist/cli.js pulse run --root . --connections github

На локальной машине, где уже выполнен вход в GitHub CLI, альтернатива без копирования использует эту сессию только для проверки на чтение; её токен никогда не сохраняется и не выводится:

gh auth login
node packages/core/dist/cli.js connections configure --id github --mode github-cli
node packages/core/dist/cli.js connections test --id github

Браузерный выбор на apps/site генерирует эти безопасные шаги настройки. Он никогда не собирает учётные данные. OAuth хоста остаётся в собственном интерфейсе согласия хоста.

Запустите MCP-сервер через stdio:

npm run mcp

По умолчанию база данных находится в .operations-pulse/pulse.sqlite. Переопределите её с помощью OPERATIONS_PULSE_DB.

Модель безопасности

Operations Pulse работает только на чтение, если инструмент или команда явно не сообщает о записи. Запуски Pulse не создают тикеты без явного включения параметра --create-tickets (или эквивалентного аргумента MCP). Подключения отключены до настройки, учётные данные никогда не сохраняются в каталоге, а внешне видимые или платные действия требуют отдельной границы одобрения человеком.

Записи подключений содержат только идентификатор, не секретные настройки, endpoint и ссылку на переменную окружения. connections disconnect удаляет эту ссылку из локального журнала. Начальные адаптеры работают только на чтение: метаданные IMAP о количестве непрочитанных сообщений, идентичность GitHub, идентичность просмотрщика Linear, доступ к проектам Sentry и доступ к проектам PostHog. В v0.1 не поставляется ни один удалённый адаптер для выполнения изменений.

Необязательный heartbeat

Запустите ограниченный по времени heartbeat на переднем плане в любом месте, где может работать Node:

node packages/core/dist/cli.js heartbeat serve --interval-minutes 30 --root .

В macOS сначала просмотрите, затем явно установите пользовательский LaunchAgent:

node packages/core/dist/cli.js schedule plan --interval-minutes 30 --root .
node packages/core/dist/cli.js schedule install --confirm-install --interval-minutes 30 --root .

Планировщик никогда не устанавливается инструментом MCP, ответом модели или загрузкой страницы. Для удаления требуется команда schedule uninstall --confirm-uninstall.

Карта репозитория

  • packages/core — журнал (ledger) на SQLite и детерминированные проверки.

  • packages/mcp — MCP-сервер через stdio.

  • skill/operations-pulse — переносимый навык агента.

  • plugins/openai/operations-pulse — сгенерированный навык Codex и обёртка MCP.

  • plugins/claude/operations-pulse — сгенерированный навык Claude Code и обёртка MCP.

  • .agents/plugins/marketplace.json — локальный в репозитории маркетплейс Codex.

  • .claude-plugin/marketplace.json — локальный в репозитории маркетплейс Claude.

  • mcp-registry/operations-pulse/server.json — подготовленные официальные метаданные реестра MCP.

  • publisher/publisher.json — зеркало публичного источника издателя для потребителей репозитория.

  • agents — необязательные определения ролей.

  • catalog — описания инструментов и подключений, показываемые при запуске.

  • docs — архитектура, рабочие процессы, руководство по подключению и чек-лист запуска.

  • migrations — инвентаризация источников и решения по очистке.

  • vendor — сторонние наборы навыков с указанием авторства, никогда не объединяемые молча.

  • apps/site — сайт проекта без зависимостей.

Статус

Этот репозиторий готовится к публикации первой версии. Поддерживаемой базовой версией является локально-ориентированное ядро. Для IMAP, GitHub, Linear, Sentry и PostHog есть тесты адаптеров только на чтение; host OAuth требует нативного потока согласия соответствующего хоста, и ни один удалённый адаптер записи по умолчанию не включён.

Модель издателя и регистрации

Openly Useful — это бренд издателя и разработчика. openlyuseful.org — площадка для открытого кода, сведений об издателе, политиках, безопасности и поддержке; openlyuseful.com — площадка Studio и коммерческая. Openly Useful LLC — это планируемое юридическое лицо, которое не указывается как зарегистрированное или действующее. В настоящий момент Openly Useful управляется своим основателем как физическим лицом, и основатель-владелец разрешил внешнюю публикацию исходного кода и запись в реестры, пока продолжается процесс регистрации.

Зеркало в publisher/publisher.json обращается к опубликованному источнику авторитета по адресу https://openlyuseful.org/publisher/manifest.json. Манифесты провайдеров получают из этой записи публичное имя, контакт, пространства имён и адреса политик. URL репозитория в подготовленных метаданных провайдера — это планируемый публичный исходный код по адресу https://github.com/Openly-Useful/operations-pulse.

Каноническим остаётся навык skill/operations-pulse. Копии обёрток провайдеров — это сгенерированные артефакты, а не отдельные редактируемые источники:

npm run registration:sync
npm run registration:check

Обёртки регистрируют переносимый навык и каноническую команду stdio npx --yes @openly-useful/operations-pulse-mcp@0.1.0. Они не аутентифицируют аккаунт, не устанавливают планировщик, не настраивают адаптеры и не собирают учётные данные. Соответствующая идентификация в реестре MCP — org.openlyuseful/operations-pulse. После установки или обновления плагина начните новую задачу в Codex или перезапустите Claude Code, чтобы хост обновил свои инструменты MCP. По умолчанию база данных MCP находится в .operations-pulse/pulse.sqlite в рабочем каталоге процесса хоста; задайте OPERATIONS_PULSE_DB в окружении хоста, чтобы выбрать явный путь.

Локальная генерация и проверка разрешены. Публичное создание репозитория, публикация пакета, отправка в реестр MCP, маркетплейс MCP, установка, аутентификация и развёртывание — это отдельные внешние действия. Оба опубликованных пакета блокируют публикацию на этапе prepublishOnly, если точная авторизация основателя-владельца, идентичность издателя, источники политик, пространство имён, идентичность пакета и происхождение репозитория не совпадают с публичным источником авторитета. Незавершённое создание LLC само по себе не блокирует публикацию npm-артефакта, потому что Openly Useful управляется основателем, а авторизация явно действует в период регистрации. Проверка пространства имён, аутентификация провайдера и рецензирование провайдера остаются отдельными требованиями для соответствующего реестра или процесса провайдера.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Local-first MCP tools for AI-assisted work receipts, workspace maps, routing ledgers, measured verdicts, and shared state verification across the five Project Telos flagships.
    50
    40 npm
    4
    Functional Source , Version 1.1, ALv2 Future
  • A
    license
    Not graded
    quality
    F
    maintenance
    Local-first, auditable memory for AI agents. Provides durable context for MCP hosts with SQLite storage, CLI, and MCP tools for memory management.
    2
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Local-first, MCP-first cross-agent cognitive asset layer that enables agents to store, retrieve, govern, and migrate memory, roles, and verified skills as portable assets via MCP tools and SQLite.
    1
    Apache 2.0