MeshChatX/docs/en/tools.md

6.3 KiB

Tools and utilities

The Tools page groups mesh diagnostics and helper apps. Each tool opens its own view with a back link to the grid.

Network diagnostics

Tool Purpose
Ping Measure round-trip time to a reachable destination
RNProbe Probe whether a destination answers
RNPath Inspect the path table
RNPath-trace Trace hops toward a destination
RNStatus Read node status information
Network visualiser Graph view of topology (also in main navigation)

Use these when messages or pages fail despite interfaces showing as enabled.

File transfer and shell

Tool Purpose
RNCP Send or fetch files over Reticulum
RNS FileSync Sync a directory with peers over rns_filesync.filesync
RNSH Remote shell sessions with streamed output

RNCP progress events arrive on the WebSocket as rncp.transfer.progress. FileSync progress and peer events use filesync.sync.progress, filesync.peer.connected, filesync.peer.disconnected, filesync.file.updated, filesync.file.deleted, and filesync.error. FileSync uses the bundled rns_filesync package and keeps sync state under the active identity storage directory.

Messaging helpers

Tool Purpose
Propagation nodes Manage LXMF propagation nodes and sync
Forwarder Configure LXMF forwarding rules between aliases
Sieve filters Pattern-based inbound message filtering (beta)
Message blocklist Block known unwanted content (beta)
Paper message Create or ingest LXMF URIs and QR workflows
Bots Run subprocess LXMF bots from templates

Bot templates include echo, note, and reminder starters. They use the bundled lxmfy package.

Content and publishing

Tool Purpose
Mesh Server Host NomadNet-compatible page nodes
Micron editor Edit .mu pages locally
Documentation MeshChatX guides and Reticulum manual

Configuration editors

Tool Purpose
Reticulum config editor Edit raw Reticulum configuration
Repository server Host Python wheels for offline installs

Hardware and translation

Tool Purpose
RNode flasher Flash or update RNode firmware
Translator Translate text via Argos Translate or LibreTranslate

Translator calls respect privacy mode. When privacy mode blocks outbound HTTP, external translation endpoints are not contacted.

Debugging

Tool Purpose
Debug logs View backend debug log stream

Coming soon

The registry marks RNS Tunnel as coming soon. It does not have a route in the current release.

Relay chat server

When rrc_enabled is on, you can run a local RRC hub from relay chat server settings. Hubs announce aspect rrc.hub. Client UI lives under Relay chat in the main navigation.

Plugins

Installed plugins can add rows to Tools and Navigation through contribution manifests. Example bundled plugin: Bug Reports (com.meshchatx.mcx-bugs) for sending redacted debug logs to an mcx-bugs-v1 collector (or running a collector yourself).

Plugins are capability-gated, not fully open-ended: they cannot rewrite core MeshChatX. Supported packaged runtimes are frontend JS (Worker), optional backend WASM (wasmtime), and optional backend Python (backend.type: "python"). Install sources include ZIP archives and single-file WASM bundles with embedded plugin.json / files / optional RSG signature.

ZIP and WASM installs show a confirmation dialog with requested permissions, scanned/declared external HTTP URLs, signature status (unsigned / signed / trusted / invalid), and heuristic security findings. Invalid signatures hard-block install. You can deny individual grants and optionally trust a valid signer. After install, MeshChatX stores an integrity hash and auto-disables tampered plugins.

Optional Sideband-compatible plugins load flat *.py files from a configured directory when the master switch is enabled (danger confirm). They run in-process with full host access. Optional sibling filename.py.rsg signatures are verified over file bytes.

Sign packages with scripts/sign-plugin.py (sign|verify for -dir|-zip|-wasm|-py) using a Reticulum identity (rnid or in-process RNS.Identity). MeshChatX plugin signing uses signature file meshchatx.plugin.rsg and WASM custom sections meshchatx.plugin / meshchatx.files / meshchatx.signature.

Disable packaged plugins at startup with --disable-plugins if you need a minimal surface.

Command palette

Press the command palette shortcut (configured in settings) to jump to tools and pages without returning to the grid.

Choosing a tool

Symptom                          Tool to try first
-------------------------------- -----------------
No peers visible                 Interfaces, then RNPath
Message stuck sending            RNPath, Propagation nodes
Cannot reach Nomad page          Ping, RNProbe
Need to push a file              RNCP
Remote administration            RNSH (with care)
Want offline Python packages     Repository server

See also

  • Reticulum interfaces for transport setup
  • LXMF messaging and Nomad Network for feature-specific workflows
  • Plugins for extending MeshChatX functionality
  • Documentation for offline manuals