Live typinggrammar correction + predictive ghost text, as you type
idle
ghost idle
How this behavesand where it doesn't yet meet the target
Stage 1 — rules
mode:"fast" · ~3ms p50 · dictionary + regex rules + glossary · no model callStage 2 — deep
mode:"auto" after you pause · escalates to the model for structural grammarGhost text
POST /v1/compose · stale replies discarded by request id + buffer checkGlossarycanonical form applied deterministically (
melp ai → Melp AI), never model-dependentMeasuredrules p50 3.2ms / p95 4.8ms over 620 samples · 19.4% exact vs reference alone, hence stage 2
Datasetseeded test corpus in Postgres
Loading…
Grammar by difficulty
Rephrase by tone
Samples by tenant
Top error types
Compose by prefix length
Rephraselive call against the configured model
Result appears here…
Dataset browserserved from Postgres
Glossarytenant terms layered over shared corporate vocabulary
| Term | Category | Aliases | Scope |
|---|
Batch evalfires dataset samples at the live model
Pass/fail measures glossary preservation only — whether every
must_preserve term came back byte-identical. It does not
judge rewrite quality.