Langfuse

Feedback on your traces.

Put a real user score on your Langfuse session

You already trace every run. What is missing from the trace is the only judgement that settles an argument: whether the user was helped. This pushes that score back onto the session it belongs to, so the answer lives beside the evidence.

Install

Install

One package. It sits beside your existing tracing rather than replacing any of it.

npm install @uservane/langfuse-push

Wiring

Run the adapter on your server

import { pushPendingScores } from "@uservane/langfuse-push";

const summary = await pushPendingScores({
  uservane: {
    secretKey: process.env.USERVANE_SECRET_KEY!,
  },
  langfuse: {
    publicKey: process.env.LANGFUSE_PUBLIC_KEY!,
    secretKey: process.env.LANGFUSE_SECRET_KEY!,
  },
});

What binds to what. Scores are pushed against the sessionId they were bound to at capture, and acked once delivered, so a score is never counted twice in your trace store.

Limits

What it does not do

Worth reading before you wire it in, because both of these are things people reasonably assume and neither is true.

We never hold your Langfuse write key
The adapter runs on your server with your credentials. UserVane stores pending scores and hands them over; it does not write to your trace store on your behalf.
Only linked scores are pushed
A rating that arrived without a session is not guessed into one. It stays in UserVane as unlinked, because a score attached to the wrong trace is worse than a score that never arrived.

The number

The number you get back

Every score ships with its margin of error and the sample it came from, and a sample too thin to report is suppressed rather than printed. An agent satisfaction number off twelve responses is not a metric, and a tool that shows it to you anyway is not doing you a favour.

Free to start, no card. The SDKs are MIT and open source at github.com/uservane/uservane-js.