Quick start
Clone lensai-integration, make build / up / smoke, open Grafana. Honest path to first dashboard.
The runnable path today is LensAI: clone the integration repo, build and start the stack, run smoke, open Grafana. About ten minutes on a machine with Docker.
Unified stack (recommended for Inferix console + closed loop)
Clone the inferix orchestrator repo with sibling product repos in one workspace, then run the canonical entrypoint from the workspace root:
# workspace layout: inferix/, inferix-lensai-streaming/, inferix-ui/, …
./run-inferix.sh --full # build + start full profile
./run-inferix.sh --full --smoke # optional E2E smoke after startup- Console: http://localhost:3003
- Grafana (LensAI): http://localhost:3000
- Script source of truth:
inferix/run-inferix.sh(workspace rootrun-inferix.shdelegates to the same compose files)
Legacy LensAI-only quickstart below remains valid for Grafana-first exploration.
1 · Clone lensai-integration
Primary path uses lensai-integration. Streaming and eBPF sources live in sibling repos linked from the suite map.
git clone https://github.com/AkshantVats/lensai-integration.git
cd lensai-integration- lensai-integration — unified Compose quickstart (this path)
- infra-ai-streaming — Rust ingest, Go consumer, distributed-flagd, Helm
- inferix — suite overview and product repo map
2 · Build, up, smoke
make build # builds app images from source (~5 min first run)
make up # starts Redpanda, ClickHouse, ingest, flagd, Grafana, …
make smoke # POSTs a synthetic event; exits 0 when ClickHouse has itSmoke hits ingest on :8080, waits for the consumer flush, then queries ClickHouse. Override hosts with INGEST_HOST / INGEST_PORT / CH_HOST if needed — see the integration README.
3 · Open Grafana
Open http://localhost:3000 (admin / admin). The LensAI — Overview dashboard auto-provisions.
- Ingest HTTP —
:8080(events into the pipeline) - distributed-flagd —
:8081(HTTP) /:50051(gRPC) - Grafana —
:3000 - Prometheus —
:9090
Port 3000
Grafana in the LensAI stack binds :3000. If that port is taken on your laptop (another site), change the Compose mapping — do not confuse this with the marketing + docs Next server (npm run dev on :3001).
What you just ran
eBPF tracer (mock by default) → Rust ingest (HTTP)
→ Redpanda → Go consumer → ClickHouse → Grafana
↕
distributed-flagd (etcd-backed)Real eBPF needs Linux 5.8+ and CAP_BPF — set EBPF_MOCK=false and uncomment privileged mounts in the Compose file. Not supported on macOS/Windows.
Deeper deploy (Compose profiles, Helm, k3d): Install & self-host. Maturity of every product: Status & maturity.
Design target / not shipped — unified control plane
Design target / not shipped A single ghcr.io/…/inferix image, listen on :4000, and suite-wide /v1/chat/completions are design targets — not a shipped binary today. Do not treat them as install facts. Engineering design lives in product repos (e.g. infra-ai-streaming DESIGN.md, TraceForge DESIGN.md). See Architecture.
Docs-only connect note (future / target): when a control-plane ingress ships, clients would point an OpenAI-compatible SDK base_url at that API. That path is not runnable from this quickstart.