What UserVane is
UserVane captures honest product feedback at the moment it matters, and keeps the measurement honest enough to put in front of leadership.
There are two surfaces, one product:
- Agent-native capture for teams shipping agents on the Vercel AI SDK. You declare when the user’s task is actually resolved (
resolveTask). UserVane shows a respectful inline ask, correlates the rating to the samesessionIdyou set on your Langfuse traces, and (optionally) your server pushes auservane.satisfactionsession score into Langfuse. UserVane never holds your Langfuse key. - Classic in-product widget for NPS, CSAT, CES, and PMF inside a web app. Three lines of SDK, server-issued show-tokens, never re-prompt after an answer.
Both surfaces share the same integrity model: single-use show-tokens signed server-side, server-authoritative suppression, and issue-time caps so real answers are never discarded after the interruption.
Who this is for
Section titled “Who this is for”- Agent developers who already trace with Langfuse and cannot answer “is the agent any good?” with user satisfaction tied to the session.
- PMs who need a number they can defend (segment, denominator, small-N honesty), not a vanity metric.
- Product teams replacing or complementing tools like Delighted with an embed that respects respondents.
Start here
Section titled “Start here”| Path | When |
|---|---|
| Quickstart (agent-native) | You ship a chat / agent on Vercel AI SDK |
| Quickstart (classic widget) | You want the in-product survey widget |
| Keys | You need publishable vs secret clarity first |
What we do not document
Section titled “What we do not document”This site covers shipped packages and routes only:
@uservane/browser,@uservane/react,@uservane/vercel-ai(+/server),@uservane/langfuse-push- Edge API paths under
/v1/sdk/*,/v1/dismissals,/v1/privacy/*
Adapters that are not built, deferred agent tools, and unverified dashboard surfaces are omitted on purpose. If a method is not in the TypeDoc reference, it is not a public contract.
Integrity in one paragraph
Section titled “Integrity in one paragraph”The publishable key is world-readable by design. Forgery is stopped by the show-token: a short-lived, single-use HMAC issued by UserVane, bound to survey + respondent (and, on the agent path, to sessionId). Submit without a valid unused token fails. Caps and quiet periods are decided when the token is issued, never by throwing away a tokened answer.