R2-D2
Dashboard
Node Red
Restreaming
The Force
UpdatedNever
v1.0.0

Overview

Loading…
R2-D2
Dashboard
Node Red
Restreaming
The Force
UpdatedNever
v1.0.0
DDroidspeak / Docs
Operator handbook
Droidspeak
What is R2-D2?
Runtime architectureAuth — Keycloak migration plan
FleetRestreamingGalaxy MapThe RepublicTemple ArchivesSTANAG 4817The Force
Tech StackNext.js 15 + React 19Tailwind v4ZustandTanStack Table + DataViewhls.jsLow-latency playerreagraphoglreact-grid-layoutMonacoScalar API Referencefumadocs
Cluster InfraTrailBaseReductStoreRestreamer (datarhei/core)TBMQKeycloakLonghornkube-vipIngress (Caddy + nginx-ingress + Traefik)Netbird
Operator QA Runbook
Install — RKE2Install — Dokploy
Contributor guideRelease Notes
Components

STANAG 4817

The 4817 archive console embed and the HIBW ingress/egress that bridges ISR and the NATO mesh.

STANAG 4817 is the NATO interoperability standard for ISR task messaging. R-2D2 speaks it in two places: an embedded archive console you can open from the dashboard, and a pair of HIBW (High-Information-Bandwidth) API routes that translate 4817 envelopes to and from the fleet's Collection Requirements.

The console is the human surface; the HIBW routes are the machine surface. Together they let a Collection Requirement created inside R-2D2 leave as a 4817 message — and let a partner node's 4817 task land back as a CR, feedback, or a dissemination-stage advance.

The embedded console

The 4817 tab lives under Temple Archives in the sidebar. It is a full-bleed iframe of the console at https://4817.r2d2.office.ilab.zone/, plus a quick-link that opens the same URL in a new tab.

SettingValue
Route/temple-archives/4817
Default embed URLhttps://4817.r2d2.office.ilab.zone/
OverrideNEXT_PUBLIC_ARCHIVES_4817_URL

When the env var is unset the page shows an "embed pending" placeholder rather than a broken frame, so a deployment without the console still renders cleanly.

The HIBW API

HIBW messages are an envelope: a header (who/what/when) plus a per-message-type body. R-2D2 enforces the envelope shape but does not implement the full 4817 wire codec — that lives in the Loom domain layer, and the routes are the structural contract that lets any CR round-trip through it later.

Both routes are documented in the API Reference under the isr tag.

Ingress — POST /api/isr/hibw/in

Validates the envelope header and dispatches by message_type:

message_typeEffect on ingress
MessageTypeEnum_TASK_ADMINCreate / update a Collection Requirement
MessageTypeEnum_TASK_FEEDBACKAppend analyst feedback to a CR
MessageTypeEnum_TASK_RESULTAdvance the CR's TCPED stage to dissemination

Any other recognized message type is accepted but dead-lettered — it returns 202 with handled: false and ingresses without a domain mapping. Unknown types are rejected with 400. The header's message_id is optional on the wire; the parser mints one when it's absent so downstream consumers can always rely on it.

Egress — POST /api/isr/hibw/out

Takes a { "cr_id": "..." }, resolves the CR from the unified store, and returns an outbound MessageTypeEnum_TASK_ADMIN envelope. The transport that actually carries it (Zenoh, Loom, MQTT, or TBMQ) is wired downstream — this route just produces the envelope.

Envelope shape

{
  "header": {
    "message_id": "…",          // optional inbound; minted if absent
    "message_type": "MessageTypeEnum_TASK_ADMIN",
    "source": "node-guid",
    "version": "0.3.0-rc2",
    "time_sent": "2026-06-01T00:00:00Z",
    "classification": "NU",     // optional
    "releasability": ["NATO"]   // optional
  },
  "body": { /* per message_type */ }
}

How it fits together

partner node ──4817 HIBW──▶ POST /api/isr/hibw/in ──▶ CR / feedback / TCPED advance
                                                              │
operator-created CR ──▶ POST /api/isr/hibw/out ──4817 HIBW──▶ transport (Zenoh/Loom/MQTT/TBMQ)

The ISR records on either side — Collection Requirements, CRLs, RFIs — are the same ones the Imp Intel ISR console renders and the Threepio assistant can summarize. 4817 is the wire format that lets those records cross the boundary to other nodes.

Related

  • Temple Archives — where the 4817 console embed lives.
  • API Reference — the isr tag covers both HIBW routes.

Temple Archives

The telemetry archive — Farsight, the feed registry, the MQTT topic map.

The Force

Embedded operational apps — HoloChron, COP, Probe, HoloNet, Rift Gates — surfaced as iframes inside the dashboard.

On this page

The embedded consoleThe HIBW APIIngress — POST /api/isr/hibw/inEgress — POST /api/isr/hibw/outEnvelope shapeHow it fits togetherRelated