Technology

Rules decide. Models explain. Nothing is confused about its job.

The architecture exists to answer one question convincingly: when this platform tells an operator something is wrong, can that claim be reproduced? Everything below follows from insisting the answer is yes.

INGESTOCPP gatewayBootNotificationMeterValuesStatusNotificationLive WebSocket per charge pointPERSISTTelemetry storeSessionsConnector stateSampled readingsPostgreSQL, region of your choiceDECIDERule engineVersioned thresholdsInputs recordedNo model involvedReproducible months laterEXPLAINAgent layerTriage proseSeverity rankingCost accountedCannot set stateACTOperator consoleAlert queueRemote commandsCopilotBack over the live socketRemote start · unlock · reset · status request

A message from a charge point to an operator, and the command path back.

OCPP 1.6J gateway

Chargers connect over WebSocket and speak the protocol they already ship with. The gateway handles boot notifications, heartbeats, meter values, status notifications and transactions, and holds the live socket open for remote commands travelling the other way.

Deterministic rule engine

Detection is a versioned rule evaluated against recorded inputs — pack temperature ceilings, thermal ramp rates, connector faults, offline transitions. No model participates. An alert raised today can be replayed and defended a year from now.

Governed agent layer

Six purpose-scoped agents: battery diagnostics, safety triage, station health, service advisor, fleet copilot and inspection vision. Each has a declared model, a recorded prompt, and every invocation persisted with latency, tokens and cost.

Query catalogue, not free SQL

The copilot selects from a fixed catalogue of reviewed, parameterised queries. The model chooses which one and fills the parameters; it never composes SQL. Every number on screen traces to a query you can read.

Every model call is accounted for

Agent runs are persisted with their subject, resolved model, latency, token count and estimated cost. Model spend is an operational line item, not a surprise on an invoice.

Configured agents and their resolved models

Deployment

ConcernApproach
ProtocolOCPP 1.6J over WebSocket. OCPP 2.0.1 on the roadmap.
Data storePostgreSQL. No proprietary storage engine.
HostingYour cloud account or ours; region of your choice.
TenancyTelemetry is not pooled across customers.
IntegrationRuns alongside an existing CPMS. Billing, tariffs and roaming stay where they are.
RollbackAn evaluation changes the charger's backend URL and nothing else.