Open-source entity enrichment ยท v0.6.0

Enrichmentyou can audit.

Resolve people and companies without losing the source behind each field.

Layered evidence fragments connected to one resolved profile
Provider neutralBring approved search, public data, browser, or internal sources.
Evidence intactKeep URL, observation time, provider, and confidence with every claim.
Review explicitSurface conflicts and inferred claims before automated action.

Provenance first

Every field keeps its proof.

Enrichfold turns provider output into deterministic decisions while preserving what was observed, where, and when.

01

Collect claims, not mystery objects

Values arrive with typed evidence, source URLs, confidence, and provider identity.

02

Reconcile deterministically

Stable rules select a suggested value and preserve every competing claim.

03

Gate uncertain results

Conflicts and inferred claims are marked for review instead of silently passing.

04

Control research cost

Reserve provider units before execution and expose partial coverage when work is skipped or fails.

Keenable connected

Search broadly. Decide carefully.

The optional Keenable adapter discovers sources. Your mapper decides which results become claims, so search output never masquerades as verified fact.

provider.py
from enrichfold import (
    Claim, Entity, Evidence, KeenableProvider,
    ProviderSpec, ResearchEngine,
)

def map_results(entity, results):
    for item in results:
        yield Claim(
            field="summary",
            value=item["description"],
            kind="inferred",
            evidence=Evidence(
                source_url=item["url"],
                observed_at=item["acquired_at"],
                confidence=0.8,
                provider="keenable",
            ),
        )

provider = KeenableProvider(
    lambda entity: f'{entity.identifiers["domain"]} company',
    map_results,
)

result = ResearchEngine([
    ProviderSpec("keenable", provider, reserved_units=1),
]).run(Entity.company(domain="example.com"))

Get started

Add provenance to your enrichment pipeline.

Install the Python package, connect the providers you trust, and keep review decisions in your application.