Myles MellorAI-first commercial & operations leader
← Work

Working tool · demo uses synthetic data

Credentials library

Drop credential documents in a folder — get a structured, searchable record of what the firm has actually done.

5
fields extracted per credential
3
file formats ingested (md · docx · pdf)
0
real client data in the demo
TypeScript · LLM structured extraction · LanceDB · OpenAI embeddings · CLI
Terminal output of the credentials library: a sector-filtered free-text search over the synthetic demo corpus returning two scored, taxonomy-labelled credentials

Professional-services firms sell on evidence: what have we done, in which sector, of what kind, where, when. And almost everywhere, that evidence lives in scattered documents — case studies, old proposals, one-pagers written by different people in different formats. When a tender lands, someone goes digging. The same credentials get re-discovered, or missed, every time.

I solved this problem manually once, at scale, in a professional-services firm: a central database of credentials and past bids, built by coordination and discipline. This tool is the AI-native rebuild of that idea — the version where the structure comes from the machine instead of from re-keying.

What it does

You drop credential documents into a folder — markdown, Word, PDF, written however they were written. At ingest, a language model reads each one and extracts the same five fields every time: sector, type of work, location, date, and a one-line description. That taxonomy is written onto the document as metadata, with the source file kept alongside.

From there, finding things works the way people actually ask:

  • "Everything we've done in hospitality that touches pricing" — a filter plus a search term
  • "All our turnaround work" — a filter on the work type
  • "Find me something like a cost reduction programme" — free-text semantic search across the full documents

And when the honest answer is nothing — a sector the firm has never worked in — it says so, rather than stretching the nearest miss to fit.

The design decision that matters

This is deliberately not presented as "a RAG". At the scale of a credentials library, the piece doing the work is the structured extraction at ingest; exact filtering needs no AI at all once the fields exist. Semantic search is included because the underlying engine — the same one behind the Knowledge Inbox OS — already had it. Knowing which part of a system earns its complexity is most of the job.

The extraction schema lives in configuration, not code. Swap the five fields for a different set and the same tool becomes a library of certifications, or compliance documents, or anything else a business accumulates as unstructured files and needs as a structured record.

Honest scope

The demo corpus shown anywhere public is entirely fictional — an invented firm with invented clients and invented numbers, across all three file formats. Extraction was spot-checked document by document, including deliberately awkward phrasing (dates written as "winter 2020/21", locations buried mid-paragraph). Where a document genuinely doesn't state a field, the tool records "unknown" instead of guessing. It's a command-line tool by choice — the interface work would be polish; the extraction and the honesty about it are the substance.