System Overview
The B3IQ component map across host agent, setup wizard, control plane, protocol explorer, and contracts.
B3IQ is a local-first inference node stack with a hosted control plane and protocol accountability layer. The local node must work without cloud enrollment. Managed and network features build on top of that local baseline.
Components
| Component | Runtime | Responsibility |
|---|---|---|
| Host Agent | Go service | Local identity, inventory, setup APIs, runtime probes, model jobs, local auth, API keys, receipts, heartbeats |
| Setup Wizard | React/Vite static app | Browser UI served by the host agent at /setup |
| Control Plane | Cloudflare Worker + D1 | Enrollment, node inventory, heartbeats, commands, receipts, billing, public network APIs |
| Protocol Explorer | Cloudflare Worker static assets | Public b3iq.org site, install scripts, network status, model and node views |
| Contracts | Solidity + scripts | Base registry primitives and B3 mainnet payout settlement pilot contracts |
Local Flow
Initialize host state
The host agent creates local config, identity, setup token state, runtime records, and local service state.
Serve setup
The setup wizard opens from the host agent at /setup/ and calls local APIs.
Claim ownership
The operator creates the local owner account, reviews hardware, configures runtime/model posture, and creates scoped local API keys.
Use local inference
Local clients call /v1/models and /v1/chat/completions through
b3iq_local_ credentials.
Managed Flow
Managed enrollment avoids inbound firewall setup. The node signs outbound heartbeats and polls for commands over HTTPS.
Public Protocol Flow
b3iq.org reads public-safe network data from the control plane. It can show
route readiness, model classes, public node status, receipt summaries, settlement
metadata, and payout batch state. It must not expose prompts, outputs, API keys,
customer IDs, exact private routes, raw tunnel details, local URLs, or raw TEE
material.
State Boundaries
| State | Location | Notes |
|---|---|---|
| Node config | B3IQ home config.json | Node ID, identity, setup token state, runtime config, local setup state |
| Local app state | state.db next to config | Jobs, audit events, receipts, users, sessions, API keys, support grants |
| Control-plane state | Cloudflare D1 | Enrolled nodes, commands, heartbeats, receipts, private job metadata, billing rows |
| Public chain state | Base and B3 mainnet | Stake, registry state, public commitments, payout proof logs |
| Generated downloads | b3iq.org static assets | Install scripts, release metadata, public GUI pilot artifacts |
Design Principles
- Local-first must work without cloud enrollment.
- Managed and network features should not require inbound firewall or router setup.
- Host-agent actions are narrow and explicit, not arbitrary shell access.
- Browser code should not hold infrastructure credentials.
- Onchain and public surfaces carry commitments and summaries, not private payloads.
