Study 01 / 02
Prompt Intelligence Studio
Scoring a prompt without sending it anywhere.
Problem
A prompt's quality is invisible until the model's answer already reflects it — by then a request has been spent. It isn't obvious in advance which of the things a good prompt needs (a clear goal, context, constraints, structure, an output format, a way to check the result) was actually missing.
Decision
Score locally, by default. Instead of routing every prompt through an API to grade it, the core scoring path is a deterministic, dependency-free function. It reads for verbs, headings, lists, constraint language and verification phrasing, and produces the same score for the same prompt every time, for free, with nothing sent anywhere. A separate BYOK mode exists for a model-assisted rewrite, and only that mode touches the network — using a key the visitor supplies that never leaves the browser.
Implementation
The module has zero runtime imports (one import is types-only and fully erasable), no React coupling, no browser APIs and no network calls — it's a pure function over a string. That portability turned out to matter beyond the product itself: this portfolio's hero runs the same scoring path client-side, extracted and pinned against fixture output, to demonstrate the product instead of describing it.
Result
Two prompts asking for the same thing score very differently under the seven categories — a loosely specified request scores 29/100 with six issues flagged, while a structured version of the same request scores 89/100 with none. The gap is the argument, made in one comparison.
- 203
- tests across the full PIS suite
- 16
- of those, on the local analyser alone
- 7
- scoring categories