
Yu Chou Teo
Government lawyer in Singapore who heads a civil advisory practice — and builds document infrastructure on nights and weekends. Self-taught across the stack, from diffing libraries to AI contract review tools, with a focus on encoding legal reasoning into reproducible workflows. Open-sourced office-word-diff, a library that solves a kernel-level problem — deterministic, word-level tracked changes in Word via the Office.js API. Thinks the real dividing line now isn’t between coders and non-coders, but between people with technical judgment and people without it.
6 Projects
Contract Playbook AI
Generate playbooks from contracts and review contracts against those playbooks — encoding the kind of structured legal reasoning typically done manually — with changes tracked in native DOCX redlines.
office-word-diff
A library that applies word-level text diffs to Microsoft Word using the Office.js API, preserving formatting with granular tracked changes. Solves a kernel-level problem: deterministic, structural document transformation.
Word AI Redliner
MS Word add-in that applies AI-generated edits as tracked changes using the office-word-diff library. Includes a taskpane UI for prompt management and connects to LLMs like Ollama — run it locally, keep your data.
superdoc-redlines
Node.js CLI tool that lets AI agents apply tracked changes and comments to DOCX files using SuperDoc’s headless mode. Uses stable block IDs for deterministic edits instead of fragile text matching, supports multi-agent merging with conflict resolution, and produces native Word revisions.
sgcite
Singapore court citation checker -- detect hallucinated cases in AI-generated legal submissions. Verifies citations against eLitigation (Singapore's case law database), detecting hallucinated authorities, mismatched case names, fabricated paragraph references, and distorted quotations.
text-provenance
Identify which source sentence a piece of text most likely originated from, using lightweight text similarity metrics. No embeddings or API calls required at runtime — just fast, deterministic string matching that works in the browser or on the server. Designed for RAG citation highlighting, contract playbook matching, plagiarism detection, source attribution, and any other text provenance task.
Featured In
- LinkedIn — Technical Judgment
An essay arguing that AI has compressed execution but not judgment — the real skill now is distinguishing genuine complexity from apparent complexity and knowing what’s worth building.
Philosophy
“AI breaks the OODA loop — output arrives faster than understanding can follow”
The orientation phase can’t scale with the act phase. Code “works” but feels wrong, and teams keep iterating because momentum replaces comprehension. That’s how you accumulate debt you can’t even describe.
“Everyone’s talking about prompting. Almost nobody’s talking about judgment.”
Business judgment — is this worth building? Technical judgment — is this actually hard or does it just look hard? Those are the top two skills. Prompting and execution are the bottom two. Most content has it backwards.
“AGPLv3 isn’t a legal virus — it’s about coupling, not use”
Developers panic about open-source licenses for the wrong reasons. Copyleft triggers on derivative works and tight coupling, not on mere use. Thoughtful architecture with clear separation makes it safe and predictable.
“Know when to vibe code and when to dig in”
Disposable work tolerates vibe coding. Serious work demands you stop regenerating, switch on your debugging cap, and actually read the code. The failure mode is letting momentum replace understanding.
