33 lines
1.8 KiB
Markdown
33 lines
1.8 KiB
Markdown
# Protomux channel catalog (Bare OS)
|
|
|
|
**Version:** 1.0.0 (document revision; bump when aliases or wire names change.)
|
|
|
|
## Primary data plane
|
|
|
|
| Channel name | Purpose | Notes |
|
|
|--------------|---------|--------|
|
|
| `bare-os-v1` | Hyperdrive replication + seed RPCs | Topic from `topicKey()` in `bare-os-protocol`; see [handbook ch.3](../../handbook/03-protocol-and-disk.md). |
|
|
|
|
## Auxiliary channels (paired on the same mux)
|
|
|
|
Same Hyperswarm connection as `bare-os-v1`; gated by env / capability bits.
|
|
|
|
| Channel name | Purpose | Env gate |
|
|
|--------------|---------|----------|
|
|
| `bare-os-app-v1` | Namespaced app RPC buffers | `BARE_OS_PROTOMUX_APP_CHANNEL` |
|
|
| `bare-os-cap-v1` | Capability/datagram experiments | `BARE_OS_PROTOMUX_CAP_CHANNEL` |
|
|
| `bare-os-chat-v1` | Global swarm chat messaging | Default on; disable with **`BARE_OS_PROTOMUX_CHAT_CHANNEL=0`** / **`false`** / **`off`** / **`no`** |
|
|
|
|
See `PROTOCOL_CHAT_CHANNEL_NAME`, `setupBareOsChatChannel`, and `lib/chat-messages.js` in **`bare-os-protocol`**.
|
|
|
|
## Alias registry
|
|
|
|
Runtime merges env-driven aliases with the in-process registry (`createBareOsProtomuxAliasRegistry` in [`packages/bare-os-booter/lib/bare-os-protomux-alias-registry.js`](../../packages/bare-os-booter/lib/bare-os-protomux-alias-registry.js)). Snapshot JSON is exposed as **`/proc/bare_os/protomux.json`** and **`/proc/bare_os_protomux_wire`**.
|
|
|
|
## Related Holepunch packages
|
|
|
|
- [`protomux`](https://github.com/holepunchto/protomux) — multiplexer core.
|
|
- [`protomux-rpc-client-pool`](https://github.com/holepunchto/protomux-rpc-client-pool) — pooled RPC clients (operator hints on capability word 8+).
|
|
|
|
When adding a new first-class channel, update this file, the alias registry defaults (if any), and [`docs/reference/kernel-extensions.md`](./kernel-extensions.md).
|