Skip to content
tecminds

From Idea to Product: How We Built Acurio and citecheck

The build story behind Acurio and citecheck — two Swiss tools that verify academic citations with evidence, not unreliable AI detectors. An honest practitioner's account from idea to shipped product.

TTobias LüscherCo‑Founder · TecMinds2026-06-24 · 7 min read

From Idea to Product: How We Built Acurio and citecheck

A few days ago, SRF ran a story that named the exact problem we had spent months building around. The headline: "KI an Hochschulen – Schummeln Studierende mit KI? Kaum jemand kann es belegen" — students cheating with AI, and almost nobody can prove it.

That last part is the whole story. Universities suspect AI use is widespread, but the official numbers are tiny. PH Luzern counted 27 cases since the start of 2023. ZHAW reported 17 in the last two years. ETH stays in the low single digits per year. At least 11 of 31 surveyed Swiss universities use AI detectors — and the same institutions stress how unreliable those detectors are. The Berner Fachhochschule has stopped counting AI cases altogether, treating AI use as a question of competence rather than misconduct.

We read that and recognised the shape of a problem we already knew well. So this is the build story: how a frustration turned into an open-source package, and then into a product, and what we learned about chasing the wrong thing versus the right thing.

The wrong question

When we first looked at academic integrity and AI, the instinct — like everyone else's — was detection. Build a better classifier. Score a document for "AI likelihood." Catch the cheaters.

We dropped that idea fast, and the SRF article explains exactly why we were right to. Detection is a probabilistic guess about intent. It tells you a passage "looks" 78% machine-written, and then a human read of it changes the number, and an honest non-native writer gets flagged, and a careful cheater slides through. You cannot prove anything with a tool that hedges. "Kaum jemand kann es belegen" — almost nobody can prove it — is not a temporary gap that better models will close. It is baked into the approach.

The universities themselves had already moved on. The University of St. Gallen (HSG) frames it cleanly: "Der Einsatz von KI soll das Lernen unterstützen und nicht ersetzen. Entscheidender Bestandteil bleibt die akademische Eigenleistung." AI should support learning, not replace it, and the student's own academic contribution remains decisive. The University of Lausanne (UNIL) puts it more bluntly: it is fairly illusory to complete an entire degree by delegating everything to AI. The official line across Swiss higher education is transparency, oral exams, and trust, not technical detectors.

So we asked a different question. Not was this written by AI? but is this citation actually true?

The right question

A claim either is or is not supported by the source it cites. A reference either exists or it does not. Those are checkable facts. No intent, no probability, no guessing about who typed what.

This reframe is the entire foundation of what we built. It also quietly protects the honest researcher — the person who used an AI assistant in good faith and inherited a hallucinated reference or a citation that does not say what the assistant claimed. A detector treats that person as a suspect. A verifier just shows them the broken citation so they can fix it before the examiner finds it.

Once we framed it that way, we realised the problem splits cleanly into two kinds of damage AI does to citations:

  1. The fabricated source — author, title, or DOI simply invented. The reference does not exist.
  2. The real-but-wrong source — a genuine paper is cited, but it does not support the claim, or the page is wrong. The source is real; the citation is a lie.

Two different problems. We ended up building two different things.

citecheck: the open-source half

The fabricated-source problem turned out to be tractable with public infrastructure, so we built that first and made it open source.

citecheck is an npm package. You run npx citecheck <file> and it validates the references in a bibliography — .bib, .ris, or CSL-JSON, and it can extract references straight out of .docx, .txt, or .md. For each reference it confirms the thing actually exists by checking Crossref and OpenAlex, flags anything that has been retracted, and identifies which papers are open access via DOAJ.

No API keys. No signup. It runs locally, and only reference metadata ever leaves your machine to hit the public scholarly APIs. We made it open source on purpose: this layer is a public-good check, the kind of thing that should be free and inspectable, not locked behind a login.

Building it in the open also sharpened it. The constraint of "this has to be something a stranger trusts enough to run on their thesis" forces honesty about what the tool does and does not do.

Acurio: the harder, productisable half

citecheck solves the easy half. The reference exists, it is not retracted — fine. But does the cited paper actually say what your sentence claims it says? That is the subtle, expensive, genuinely hard problem, and it is where a product earns its keep.

Acurio is the Swiss tool we built for it. The flow is deliberately boring, because boring is what researchers want under deadline pressure:

  • Export your thesis as a DOCX with embedded Zotero citations.
  • Upload the source PDFs (plus BibTeX or RIS).
  • Get back a colour-coded report, one verdict per citation: supported, partially supported, or unsupported — each with a confidence score, a verbatim quote from the source, and a short rationale.

DOCX in, DOCX out. Under the hood it is a multi-LLM analysis, and when the models disagree on a citation, that disagreement triggers an overnight "second opinion" run with a larger model and tighter context. Disagreement is signal; we surface it instead of hiding it behind a single confident-sounding answer.

One thing Acurio is not: a plagiarism checker. Plagiarism is text that sits too close to the source. Acurio finds the opposite failure — claims that sit too far from the source, where the source simply does not say what you wrote. It is also not a style checker. It does one job.

It is built on Swiss data handling, FADP/DSGVO-compliant, which matters when the document is an unpublished thesis. Students at ETH Zürich, LMU München, IU Internationale Hochschule and the Berner Fachhochschule already use it. You can start free — the first 10 citations are checked at no cost — and the thesis packages are one-time, no subscription: Student CHF 19, Pro CHF 29, Lab CHF 49, Lifetime CHF 79. There is a free instant Quick-Check too, and it is powered by citecheck — the open-source layer feeding the product.

What the build taught us

Three things we keep coming back to, and they generalise well beyond citations.

Reframe before you build. The detection version of this product would have been technically impressive and fundamentally useless — a confident number that proves nothing. The verification version is less flashy and actually works, because it answers a checkable question. We see this pattern constantly when we help companies ship AI: the first framing of the problem is usually the wrong one. (We wrote more about getting agents from pilot to production here and about why so many of them fail in production.)

Open source and product are layers, not rivals. citecheck and Acurio solve two halves of one problem. The free, inspectable layer builds trust and feeds the paid layer that does the hard work. You do not have to choose.

Evidence beats probability. The SRF article is, at bottom, a story about the limits of guessing. The institutions that came out of it looking wisest were the ones that stopped trying to measure intent and started relying on transparency and verifiable work. That is the same bet we made in software.

We unpacked the SRF story and the detection-versus-verification argument in more depth on the Acurio blog: Schummeln an der Hochschule — und warum es kaum jemand nachweisen kann.


This is the kind of thing TecMinds does. We are a Zürich AI studio, and Acurio is one of three products we build and run — alongside Wield for recruiting and ZSOPilot for civil-protection training. If you have a problem that everyone is trying to solve with the flashy framing, it is often worth asking what the checkable version of the question looks like. Frequently, that is the one worth building.

acurio · Hallucinated citations? Not in your manuscript.

Citation checker for Zotero. Finds hallucinated or partially supported sources in AI‑written text. Thesis packages from CHF 19, Swiss data processing.

NEXT STEPWas this useful?