Operations Pulse

org.openlyuseful由 openlyuseful.org 發布v0.1.0更新於 Oct 27, 2026

Local-first operational pulses, durable ticket memory, and governed connection discovery.

概覽

AI 產生的概覽

本地優先的營運循環伺服器:執行唯讀檢查,把脈衝與工單寫入 SQLite,並保留可複核的營運記憶。

可以做什麼
  • 對儲存庫狀態、文件與已設定的日誌檔執行唯讀本機檢查
  • 把脈衝結果與工單寫入本機 SQLite 帳本,僅在明確啟用時才建立工單
  • 檢視與管理工單及脈衝帳本
  • 探索並設定選用的唯讀連線(如 GitHub、IMAP、Linear、Sentry、PostHog),只保留非機密設定與環境變數參照
  • 依間隔執行有界的前景心跳
適用情境
適合想讓助理對本機儲存庫做週期性營運檢查,並留下可解釋、可追溯的證據與工單,而非一次性回答的情境。也適合偏好免費、本地優先、預設不需付費服務或 API 金鑰的團隊。
執行需求
以本機 stdio 程序透過 npm 套件執行,需要 Node.js 24 或更新版本。預設流程不需要 API 金鑰。選用的唯讀轉接器需要各自的憑證,例如 OPERATIONS_PULSE_GITHUB_TOKEN 環境變數或既有的 GitHub CLI 工作階段。資料庫預設位於 .operations-pulse/pulse.sqlite,可用 OPERATIONS_PULSE_DB 覆寫。
安裝前請注意
除非明確啟用,脈衝執行不會建立工單;連線在設定前維持停用。選用轉接器可能需要憑證,專案表示這些憑證不會存入目錄、資料庫、工具參數或對話紀錄,只以環境變數參照。排程心跳或安裝 LaunchAgent 屬於需明確確認的獨立操作,對外可見或付費的操作應經人工核准。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Operations Pulse,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Operations Pulse

A local-first loop orchestrator for useful, explainable operations.

Operations Pulse turns recurring checks into evidence, evidence into durable tickets, and tickets into a reviewable operating memory. It runs without a paid service by default: Node.js, SQLite, Git, local files, and local logs are enough to get a useful pulse.

It is an Openly Useful project: useful things, openly made.

Use the live, credential-safe setup guide at operations-pulse-five.vercel.app.

What launches in v0.1

  • A SQLite ticket and pulse ledger.
  • Read-only local checks for repository state, documentation, and configured log files.
  • An MCP server with self-describing tools and structured results.
  • A portable operations-pulse skill for Codex and compatible agents.
  • Optional role definitions for operations, signal review, triage, and integrations.
  • A connection catalog and guided setup that distinguish free/local, subscription, host OAuth, self-hosted, and bring-your-own-credential paths.
  • A complete migration ledger: imported, rewritten, referenced, or excluded.

Free-first quick start

Requirements: Node.js 24 or newer. No API key is required for the default workflow.

bash
npm installnpm run buildnode packages/core/dist/cli.js initnode packages/core/dist/cli.js pulse run --root .node packages/core/dist/cli.js tickets list

Configure an optional read-only adapter without placing a credential in the repository, SQLite database, MCP argument, or chat transcript:

bash
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_TOKENnode packages/core/dist/cli.js connections test --id githubnode packages/core/dist/cli.js pulse run --root . --connections github

On a local machine already authenticated with the GitHub CLI, the zero-copy alternative uses that session only for the read-only check; its token is never stored or printed:

bash
gh auth loginnode packages/core/dist/cli.js connections configure --id github --mode github-clinode packages/core/dist/cli.js connections test --id github

The browser-based picker at apps/site generates these safe setup steps. It never collects credentials. Host OAuth remains in the host's own consent UI.

Run the MCP server over stdio:

bash
npm run mcp

The database defaults to .operations-pulse/pulse.sqlite. Override it with OPERATIONS_PULSE_DB.

Safety model

Operations Pulse is read-only unless a tool or command clearly says it writes. Pulse runs do not create tickets unless --create-tickets (or the equivalent MCP argument) is explicitly enabled. Connections are disabled until configured, credentials are never stored in the catalog, and externally visible or paid actions require a separate human approval boundary.

Connection records retain only an ID, non-secret settings, an endpoint, and an environment-variable reference. connections disconnect removes that reference from the local ledger. The initial adapters are read-only: IMAP unread-count metadata, GitHub identity, Linear viewer identity, Sentry project access, and PostHog project access. No remote mutation adapter ships in v0.1.

Optional heartbeat

Run a bounded foreground heartbeat anywhere Node can run:

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

On macOS, inspect then explicitly install a user-level LaunchAgent:

bash
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 .

The scheduler is never installed by an MCP tool, a model response, or a page load. Removal requires schedule uninstall --confirm-uninstall.

Repository map

  • packages/core — SQLite ledger and deterministic checks.
  • packages/mcp — MCP stdio server.
  • skill/operations-pulse — portable agent skill.
  • plugins/openai/operations-pulse — generated Codex skill and MCP wrapper.
  • plugins/claude/operations-pulse — generated Claude Code skill and MCP wrapper.
  • .agents/plugins/marketplace.json — repository-local Codex marketplace.
  • .claude-plugin/marketplace.json — repository-local Claude marketplace.
  • mcp-registry/operations-pulse/server.json — staged official MCP Registry metadata.
  • publisher/publisher.json — repository consumer mirror of the public publisher authority.
  • agents — optional role definitions.
  • catalog — tool and connection explanations shown at launch.
  • docs — architecture, workflows, connection guide, and launch checklist.
  • migrations — source inventory and sanitization decisions.
  • vendor — attributed third-party skill packs, never silently merged.
  • apps/site — dependency-free project site.

Status

This repository is being prepared for its first public release. The local-first core is the supported baseline. IMAP, GitHub, Linear, Sentry, and PostHog have read-only adapter tests; host OAuth requires a compatible host's native consent flow, and no remote write adapter is enabled by default.

Publisher and registration model

Openly Useful is the publisher and developer brand. openlyuseful.org is the open-source, publisher, policy, security, and support surface; openlyuseful.com is the Studio/commercial surface. Openly Useful LLC is the planned legal entity and is not represented as formed or active. Openly Useful is currently operated by its founder as an individual, and the founder-owner has authorized external source and registry publication while formation proceeds.

The repository mirror at publisher/publisher.json consumes the published authority endpoint at https://openlyuseful.org/publisher/manifest.json. Provider manifests derive the public name, contact, namespaces, and policy URLs from that record. The repository URL in staged provider metadata is the planned public source at https://github.com/Openly-Useful/operations-pulse.

The canonical skill remains skill/operations-pulse. Provider wrapper copies are generated artifacts, not separately editable sources:

bash
npm run registration:syncnpm run registration:check

The wrappers register the portable skill plus the immutable stdio command npx --yes @openly-useful/[email protected]. They do not authenticate an account, install a scheduler, configure adapters, or collect credentials. The corresponding MCP Registry identity is org.openlyuseful/operations-pulse. After installing or upgrading the plugin, start a new Codex task or restart Claude Code so the host refreshes its MCP tools. By default the MCP database is .operations-pulse/pulse.sqlite under the host process working directory; set OPERATIONS_PULSE_DB in the host environment to choose an explicit path.

Local generation and validation are allowed. Public repository creation, package publication, MCP Registry submission, marketplace submission, installation, authentication, and deployment are separate external actions. Both publishable workspaces fail closed at prepublishOnly unless the exact founder-owner authorization, publisher identity, policy sources, namespace, package identity, and repository provenance match the public authority. LLC formation-pending is not itself an npm artifact blocker because Openly Useful is founder-operated and the authorization is explicitly effective during formation. Namespace verification, provider authentication, and provider review remain separate requirements for the relevant registry or provider workflow.

來源:README.md,提交 c46e372

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分