Back to projects

Work Tool · AI

Customer Story Intelligence Pipeline

Internal Tool
Screenshot of Customer Story Intelligence Pipeline

Screenshot shows sanitized example data, not real customer or employee information.

A dashboard and companion CLI that turn raw field anecdotes from Unity's Partner Relations team into polished, leadership-ready narratives. Uses a streaming LLM pipeline to draft copy and a rubric-driven LLM-as-judge step to flag quality gaps before anything reaches an executive audience.

Architecture

Two loosely coupled pieces: a React dashboard for tracking which anecdotes have been used, and a separate CLI/browser tool that turns a raw anecdote into a polished, scored narrative.

Step 1

Source spreadsheet

Partner Relations Managers log raw anecdotes in a shared CSV, parsed client-side.

Step 2

Shared status dashboard

A React + Vite dashboard renders the list with filters by region and status, syncing 'used' state through a small serverless function backed by Redis so the whole team sees the same state.

Step 3

Streaming narrative draft

A companion CLI/browser tool sends a raw anecdote to Claude via the Anthropic SDK with streaming responses, drafting a narrative, slide bullets, and speaker notes in real time.

Step 4

LLM-as-judge scoring

A markdown-defined, five-dimension rubric is run back through Claude to flag quality gaps before a story reaches leadership, with one dimension acting as a hard gate.

Key decisions

  • Kept the tracking dashboard and the drafting tool separate, since they serve very different audiences: the whole team vs. whoever is finalizing a story for leadership.
  • Used a lightweight key-value store for shared state instead of a full database, since the only thing that needs to sync is a status flag per story.
  • Built the scoring rubric as a reviewable markdown framework rather than hidden prompt logic, so managers can see and challenge the scoring criteria.

Tech stack

ReactViteTailwindAnthropic SDKStreamingLLM-as-judge