Connect

Connectors

Two modes — and only one of them ships today.

There are two ways behavior reaches EvalGlass, and they have very different status. Importing an export — a file you already have — is now. A live pull from a tracing platform, reached with the connect --live verb, is experimental: opt-in, deletable, off the required path. Everything below is badged per cell so neither mode borrows the other’s credibility.
Read this before any vendor name Import an export — now: export OTel / OpenInference / local JSON yourself, then connect it locally — no SDK, no network. Live connect (connect --live) — experimental: the Langfuse, Phoenix, and LangSmith adapters exist in the framework as opt-in lanes, reached with the connect --live <platform> verb, which scaffolds the lane in evalglass.yaml: credentials are env-var names (a literal secret is rejected, never echoed), data_policy defaults to unknown so egress is refused until you permit it, no provider SDK is imported, a missing extra is a clean SKIPPED, and a live pull is proposed data that cannot gate. Built in the framework; not yet in the version the plugin installs. A connector is evidence, never authority, and removing the lane changes no verdict.

Per-vendor status

Langfuse, Phoenix, and LangSmith are anchors on this one page — not separate shipped integrations:

VendorImport an exportLive pull
Langfusenow — export traces, then connect the file.experimental — reachable with connect --live; env-var-name credentials, data_policy defaults to unknown, no provider SDK, a pull is proposed and cannot gate.
Phoenixnow — export OpenInference, then connect.experimental — reachable with connect --live; env-var-name credentials, data_policy defaults to unknown, no provider SDK, a pull is proposed and cannot gate.
LangSmithnow — export traces, then connect.experimental — reachable with connect --live; env-var-name credentials, data_policy defaults to unknown, no provider SDK, a pull is proposed and cannot gate.

The import column is the shipped trace path. The live column is a set of opt-in lanes, bounded the same way every lane is — each reads a recording, observes rather than orchestrates, and a vendor object never reaches the core.

Step-by-step walkthroughs of the shipped import path — how to export and import each format, with the same now / experimental honesty: OpenTelemetry, OpenInference, Langfuse, Phoenix, and LangSmith. The per-vendor status above remains the source of truth.

Dashboard sinks

Scorecards can travel outward through an optional sink — but a sink is a destination, not a hosted product, and it can never change a verdict.

SinkStatusWhat it is
Local file exportexperimentalA read-only to_dict() publish to a local directory; a failed publish is BLOCKED and does not change the verdict. Deletable.
Hosted uploadnextA future outward sink — never “the EvalGlass dashboard,” never telemetry. Your repo stays the source of truth.
No telemetry, ever Nothing here phones home. A sink is something you opt into and point somewhere you choose; with every sink deleted, local JSON and Markdown reports are intact and the verdict is byte-identical. Current and planned status is tracked on the roadmap register.

Next steps