airi/packages/plugin-protocol
2026-03-12 01:48:21 +08:00
..
src chore(server-runtime,plugin-protocol): adjust healthy check policy, added multiple module check events 2026-03-10 02:40:23 +08:00
package.json release: v0.9.0-alpha.14 2026-03-12 01:48:21 +08:00
README.md feat(plugin-protocol,server-shared): new package 2026-02-08 03:44:04 +08:00
tsconfig.json feat(plugin-protocol,server-shared): new package 2026-02-08 03:44:04 +08:00
tsdown.config.ts feat(plugin-protocol,server-shared): new package 2026-02-08 03:44:04 +08:00

@proj-airi/plugin-protocol

Shared protocol contracts for plugin-module communication in Project AIRI.

What it does

  • Defines websocket event names and payload types for module/plugin orchestration.
  • Exposes Eventa event definitions bound to protocol event names.
  • Provides shared transport/event utility types used by server and plugin runtimes.

How to use

import type { WebSocketEvent, WebSocketEventOf, WebSocketEvents } from '@proj-airi/plugin-protocol/types'

import { moduleAnnounce, moduleAuthenticate } from '@proj-airi/plugin-protocol/types'

When to use

  • You need canonical protocol contracts for plugin <-> host communication.
  • You need event name stability and matching payload definitions across runtimes.

When not to use

  • You only need higher-level runtime client APIs from SDK packages.
  • You are implementing app-only UI state that is not part of plugin/server transport contracts.

License

MIT