.claude/skills/onboard-datasource/SKILL.md
Create a new data source connection skill for a genealogy archive or database. Investigates the source to find the fastest access method (API > curl > URL fetch > browser automation), documents the search workflow, and produces a ready-to-use skill file. Use this skill when: "onboard a new data source", "add X as a source", "create a skill for X archive", "/onboard-datasource", or when research requires an archive that has no existing skill in .claude/skills/. Also trigger proactively when during hardening or research you encounter a relevant archive with no matching skill — don't wait for the user to ask, just onboard it.
npx skillsauth add rdeknijf/ai-genealogy-kit onboard-datasourceInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create a data source connection skill for a genealogy archive or record
database. Produces a .claude/skills/<source-name>.md that any future
session can use.
Always investigate alternatives before resorting to browser automation:
curl or Python httpx/requests.WebFetch or curl, parse the HTML.Check if a skill already exists: look in .claude/skills/ and
research/DATA_SOURCES.md. If the source is listed in DATA_SOURCES.md
but has no skill, that's your starting point. If neither exists, you're
starting fresh.
Check in order — stop as soon as one works:
a. Public API — look for /api/, /v1/, swagger/openapi docs.
Search the web for "<archive name>" API. Check if it runs on a
known platform (Memorix Maior, Picturae, MAIS Flexis, Axiell) that
has documented APIs.
b. OAI-PMH / SRU / SPARQL — try <base>/oai/, <base>/sru/,
<base>/sparql/. Many Dutch archives serve A2A XML via OAI-PMH.
c. Predictable search URLs — do a search in the browser, check if URL query params reproduce the results when fetched directly.
d. Hidden XHR/fetch calls — monitor network during a search. Many "dynamic" sites call a JSON API behind the UI.
e. Playwright — last resort. Document the browser workflow following
the format of existing skills (see wiewaswie.md, openarchieven.md).
Create .claude/skills/<source-name>.md. Use an existing skill as your
model — wiewaswie.md for browser-based, or whichever is closest to the
access method you found. Every skill needs:
**Confidence:** Tier B — official civil registry record from [archive]
Add the new source to research/DATA_SOURCES.md if not already listed.
Run a real search and confirm it produces usable results.
Lowercase kebab-case: scotlandspeople.md, nationaal-archief.md.
Once the skill works, consider whether it could benefit from
/improve-datasource — especially if you had to fall back to Playwright
and suspect an API might exist but couldn't find it in the initial
investigation.
tools
Search Dutch civil registry records (births, marriages, deaths) on WieWasWie.nl via direct JSON API calls, with Open Archives API as a secondary source and Playwright browser automation as fallback. Use this skill whenever you need to look up or verify a person in Dutch civil records, check a birth/marriage/death date against official archives, or find parents/spouses from indexed Burgerlijke Stand records. Triggers on: "look up on wiewaswie", "check the birth record", "find the marriage certificate", "verify this date in the civil registry", "/wiewaswie", or any request to search Dutch genealogical records for a specific person. Also use when comparing GEDCOM data against official sources or when a Tier B verification is needed.
development
Search the VOC Opvarenden database for Dutch East India Company crew records (1699-1794). Uses the Nationaal Archief HUB3 API — 853,785 indexed entries with rich detail: name, origin, rank, ship, fate (died/returned/deserted), service dates, VOC chamber, and links to original scans. Use this skill when: "search VOC records", "VOC crew", "VOC opvarenden", "sailed to Batavia", "Dutch East India Company", "VOC soldier", "VOC sailor", "/voc-opvarenden", or when looking for ancestors who may have sailed with the VOC. Also use when checking Daniel Pieterse Knijf (1704, Woerden) or any Knijf/Knijff VOC connections. No login required.
tools
Generate a scan verification page for the user to review AI-extracted genealogy findings against actual document scans. The user clicks through records, confirms or rejects each one, and confirmed records become Tier A evidence in FINDINGS.md. Use this skill when: "verify scans", "show me what needs verifying", "review pending scans", "scan verification", "/verify-scans", or when the user wants to upgrade research findings from Tier C/D to Tier A by visually confirming document scans. Also use after a research session that produced scan-backed findings that need human confirmation.
tools
Search indexed person records at Streekarchief Midden-Holland (samh.nl) via the Memorix Genealogy REST API. No browser automation needed — returns structured JSON in ~50ms per query. Based in Gouda, covers municipalities: Gouda, Haastrecht, Schoonhoven, Waddinxveen, Noord-Waddinxveen, Moerkapelle, Moordrecht, Ammerstol, Broek, Vlist, and surrounding areas in the Midden-Holland region of South Holland. 3M+ person records with DTB (doop/trouw/begraven), BS (geboorte/huwelijk/overlijden), and Inschrijvingaktes. 36 Knijf results found, including Gijsbert de Knijf records in Gouda and van der Knijf in Waddinxveen. Scans available for most records. Triggers on: "search Gouda archive", "Streekarchief Midden-Holland", "SAMH", "Haastrecht records", "Schoonhoven records", "/streekarchief-midden-holland", or any genealogy research in the Gouda/Midden-Holland area. No login required. Parallelizable — run multiple queries simultaneously.