The NorthStar dashboard is a Next.js 14 application that connects directly to the same Supabase project as your SDK. It provides a real-time window into every trace, session, and LLM call your agents produce — along with tools for managing prompt versions, running evaluations against datasets, and configuring alert rules and webhook endpoints.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/sidmanale643/northstar/llms.txt
Use this file to discover all available pages before exploring further.
Feature overview
Trace Viewer
Inspect individual agent runs with a DAG graph view of span relationships, a chronological span timeline, per-span input/output content, error details, and a full cost and token usage breakdown across all LLM calls in the run.
Sessions
Browse all agent sessions with filtering by date, status, project, and environment. Click into any session to see every run it contains and drill down to individual spans and events.
Prompts
Manage versioned prompt templates stored server-side. View the full version history for each prompt, switch between labeled versions (e.g.
production, staging), compare versions side-by-side with a diff view, and test compiled templates in the built-in playground.Evals
Browse eval datasets, launch eval runs against a dataset using deterministic graders or LLM judges, and review per-case grade breakdowns. Scores are stored back into the database and visible alongside the traces that generated them.
Settings
Manage project API keys, configure project-scoped provider keys for eval LLM judges (OpenAI, Anthropic, OpenRouter, and other LiteLLM-compatible providers), define webhook endpoints, and configure alert rules for error rate, P95 latency, and token budget thresholds.
Local development setup
The dashboard is a standalone Next.js app in thedashboard/ directory. It uses pnpm as its package manager.
Open
.env.local and set all required variables (see the Environment variables section below).The dashboard will be available at http://localhost:3000.
Environment variables
The dashboard reads the following environment variables at runtime. All are required unless noted.| Variable | Required | Description |
|---|---|---|
NEXT_PUBLIC_SUPABASE_URL | ✅ | The public API URL of your Supabase project, e.g. https://<project-ref>.supabase.co. |
NEXT_PUBLIC_SUPABASE_ANON_KEY | ✅ | The anon public key from your Supabase project settings. Used by the browser client for authenticated dashboard sessions. |
SUPABASE_SERVICE_ROLE_KEY | ✅ | The service_role secret key. Used by server-side Next.js routes to access the private schema tables that hold trace data. |
DASHBOARD_API_KEY | ✅ | An API key used to authenticate dashboard server-side API routes. |
NORTHSTAR_DEMO_BACKEND_PROJECT_ID | — | Optional Supabase project reference for a read-only demo dataset shown on the landing page. |
PROVIDER_KEYS_ENCRYPTION_KEY | — | A 32-byte base64 symmetric key used to encrypt project-scoped provider keys before storing them in the database. Required if you want to use LLM judges in eval runs. Generate with openssl rand -base64 32. |
NEXT_PUBLIC_ prefixed variables are embedded into the browser bundle at build time. Do not put secrets in NEXT_PUBLIC_ variables.Generating PROVIDER_KEYS_ENCRYPTION_KEY
PROVIDER_KEYS_ENCRYPTION_KEY in both .env.local (for local development) and your production deployment environment.
Prompt playground
The Prompts section of the dashboard includes a built-in playground that lets you test any saved prompt version against live models without writing code. Select a prompt, choose a version or label, fill in any template variables (Jinja{{ variable }} or Python {variable} syntax), choose a provider and model from your configured provider keys, and run the completion directly from the browser.
The playground uses the project-scoped provider keys stored in Settings → Provider Keys. Add at least one provider key before using the playground.
Alert rules and webhooks
The Settings section of the dashboard lets you define alert rules scoped to a project. Three rule kinds are supported:| Kind | Description |
|---|---|
error_rate | Fires when the fraction of errored runs exceeds the configured threshold. |
latency_p95 | Fires when the P95 run latency exceeds the configured threshold (in milliseconds). |
token_budget | Fires when token usage in a window exceeds the configured threshold. |
active or paused.
Connecting to your Supabase project
The dashboard connects to the same Supabase project used by the SDK. TheNEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_ANON_KEY values are used for dashboard user authentication, while SUPABASE_SERVICE_ROLE_KEY is used in Next.js Server Components and API routes to query the private schema tables that hold your trace data.
There is no separate database or data sync step — traces written by the SDK are immediately visible in the dashboard.