KLOOM
Book a demo
PLATFORM
Morphic Identity EngineImmutable Evidence APIPoint-in-Time InvestigationsAgent Identity Layer
SOLUTIONS — BY INDUSTRY
National Security & IntelFinancial Intelligence & BankingCrypto & Web3 Compliance
BY MISSION
Sanctions & SDN ScreeningAdverse Media MonitoringOSINT Subject ResolutionContinuous Due Diligence & KYC
COMPANY
CareersContact
Book a demo
Solutions/ By mission/ Adverse Media Monitoring
By mission

Monitor subjects across languages — with the source in hand.

Kloom resolves entity mentions from media corpora across scripts and languages, fires standing queries when new adverse mentions arrive for monitored subjects, and returns every alert with the source passage — not just a score.

Book a technical walkthrough
monitoring feed · 1 subject · 3 sources · standing query active
subject Tariq al-Rashid
cluster #C-8841 · query #AMQ-2291 · adverse-media corpus
1 new alert
Al-Jazeera Arabic
adverse · alert
"...طارق الراشد، الرئيس التنفيذي السابق، خضع للتحقيق..."
2026-05-18 · 03:14 UTC
merge_confidence
0.91 coherence: likely
Reuters Latin
resolved
"Tariq Al-Rashid, former CEO of Meridian Holdings, appeared..."
2026-05-15 · 11:42 UTC
merge_confidence
0.87 coherence: likely
Kommersant Cyrillic
resolved
"Тарик аль-Рашид был упомянут в контексте расследования..."
2026-05-09 · 08:03 UTC
merge_confidence
0.79 coherence: possible
mentions resolved
3
adverse
1
sources
3 scripts
01 · Where incumbent stacks break

A score without a source
is not an alert. It is noise.

Adverse media programmes break in three ways that compound until analysts stop trusting the queue entirely.

01

Transliteration dropout

A subject monitored as "Tariq Al-Rashid" is mentioned in an Arabic-language article as "طارق الراشد" and in a Russian wire as "Тарик аль-Рашид". String-match tools return zero hits on both. The adverse mention goes undetected, and the programme owner finds out from the regulator.

"Тарик аль-Рашид" → 0 results for "Tariq Al-Rashid"
02

Provenance-free alerts

A monitoring tool fires a score. What produced it? Without the source passage, mention offset, and confidence breakdown in the alert payload, an analyst cannot assess the hit, a reviewer cannot override it, and no audit trail exists for the decision that follows.

alert: { score: 0.78, source: null, passage: null }
03

Alert flood obscures signal

Monitoring a common name across a broad corpus without coherence filtering produces thousands of alerts per day, most of them for different people. Analysts learn to ignore the queue. The one genuine adverse mention arrives and goes unactioned for the same reason.

alerts_today: 3847 // reviewed: 12
02 · What Kloom provides

Four capabilities.
One actionable queue.

Subject resolution across scripts and languages

Media mentions are resolved to monitored entities across Arabic, Cyrillic, Hebrew, CJK, and Latin — without translating names at index time. Transliteration variants, partial names, and initialised forms are handled at retrieval time, preserving cross-script recall without introducing ambiguity.

Arabic · Cyrillic · Chinese · Latin original-script storage cross-script recall

Standing queries that fire on new adverse mentions

Register a standing query at onboarding for each monitored subject. As the corpus ingests new media — news wires, regulatory filings, court records — the query evaluates automatically and fires an alert only when the resolved mention matches the operator-defined query predicate and clears the coherence threshold.

standing queries auto evaluation operator-defined query

Per-mention provenance in every alert payload

Each alert ships with a pinned graph_version. Opening a session against it returns the source document, publication date, passage excerpt, passage_offset, and the per-component scores that resolved the entity. An analyst sees exactly what was said, where, and how confident the resolution was — before deciding whether to act.

source passage passage_offset confidence breakdown

Noise control via coherence threshold

Coherence filters out mentions of different people who share a common name before an alert is raised. Only mentions free of blocking evidence — wrong geography, conflicting role, mismatched dates of birth — pass the threshold and enter the analyst queue.

coherence filter blocking evidence actionable alert stream
03 · From ingest to adjudication

A new mention. An alert with the source. A decision that holds.

A standing query registered once fires automatically whenever a resolved, coherence-cleared adverse mention arrives for the monitored subject. No batch job, no polling, no re-running the workflow.

Each alert fires via webhook with its graph_version, merge_confidence, and resolving_attributes. Opening a pinned session against that graph_version returns the source passage. The analyst sees the exact text that triggered the alert, the passage_offset in the document, and the per-component scores that resolved the entity — before making any decision.

differentiation

"Per-mention provenance so a triage analyst sees the source passage — not just a score."

Day 0 query registered

Subject enrolled for monitoring

Entity "Tariq al-Rashid" resolved to cluster #C-8841. Standing query #AMQ-2291 registered against the adverse-media corpus — financial crime, regulatory enforcement, court proceedings.

query #AMQ-2291 · cluster #C-8841 · 3 corpus partitions
Day 12 ingest event

Al-Jazeera article processed

Arabic-language article ingested. Entity mention "طارق الراشد" extracted and resolved to cluster #C-8841 with merge_confidence 0.91 — via cross-script retrieval, no index-time transliteration. Operator query predicate matches "خضع للتحقيق" (subject of investigation).

merge_confidence: 0.91 · query predicate matched · Arabic script
Day 12 · +2 min standing query fires

Standing query fires — alert delivered via webhook

Query #AMQ-2291 re-evaluated against the new mention. Alert #ALT-7714 delivered via webhook: { alert_id, subscription_id, mission_id, fired_at, query_summary, graph_version: "v_20260512_0842", merge_confidence: 0.91, merge_coherence: "likely", blocking_evidence: [], resolving_attributes }.

alert #ALT-7714 · merge_confidence: 0.91 · merge_coherence: likely · no blocking evidence
Day 12 · +5 min session opened

Analyst opens pinned session

session_open called against the alert's graph_version: v_20260512_0842. Evidence call returns source document, publication date, passage excerpt, passage_offset { start: 412, end: 501 }, and source_summary. Source passage now in hand.

graph_version: v_20260512_0842 · passage_offset: { start: 412, end: 501 } · source_summary returned
Day 12 · 09:04 analyst action

Adjudication recorded with citable evidence

Analyst reviews the source passage, confirms the mention refers to the monitored subject, and records the adjudication. Decision: ESCALATE TO COMPLIANCE. The source passage and resolution evidence are attached to the decision record — permanently.

decision: ESCALATE · source passage attached · graph_version: v_20260512_0842 pinned
Platform

Relevant platform capabilities

Name Intelligence

Cross-script entity matching at query time. Names are stored in the script they arrived in; transliteration variants resolve at retrieval.

standalone library
Read the page

Evidence API

Source passage, passage offset, and per-mention evidence returned by the evidence call. Responses are stable within a pinned session.

Read the page

Morphic Identity Engine

Continuous reshaping as media evidence arrives. Cluster boundaries update as new mentions resolve — without destructive merges.

Read the page

Session-Pinned Investigations

Open an investigation with session_open against the alert's graph_version. Cluster boundaries update without destructive merges; adjudication decisions remain reproducible within retention.

Read the page
Ready when you are

Book a technical walkthrough.

A demo runs against a sample of your monitored subjects and a representative media corpus, and returns resolved adverse mentions with the source passages your analysts would see in production.

Book a demo