Use “Change the view” to switch structure, typeface and page frame.
SELECTED WORK / 2 PROJECTS
What I built. What I am still checking.
Where it is used, why it is designed this way, and evidence you can check. Introduced by the problem, not by a list of technologies. Every entry uses the same fields.
Enlarge
The guideline, exam guide and supplementary list behind the English-score certificate, with each document's role. Arrows show reference relations, not "submit all three".Public demo using saved samples. See each caption for the action and capture date.
PROJECT 01 / RAG / DOCUMENT RETRIEVAL
J-Grad Admission RAG
Turns graduate-admission guidelines into applicant guidance that cites the official page
Advisers at a study-abroad school re-check the same facts across shared and program-specific guidelines; handing it to an LLM loses the source.
My part & AI
Three principles were fixed at the start: facts and decisions live in code and the AI only puts them into words; "unknown" never becomes "no"; relations between documents are human-checked before use. Requirements, acceptance and course changes were mine; most code was written by Codex / Claude Code and verified by me against real data and regression tests.
Verification & limits
End-to-end runs on the real PDF, a regression gate on a fixed benchmark, browser acceptance on desktop and mobile. CI does not re-measure the model each run — the docs say so.
What I would change
Two things. The foundation was over-built, so a screen a user could walk through end to end came late; next time, a narrow but complete path first. And the process was too heavy for two schools and a few dozen users: seventeen decision records were written, seven were worth keeping. Next time, only decisions I never want to re-argue get a record.
A checkable number
Recall@10 0.8852 · MRR 0.8323 saved evaluation, 42 fixed queries, 391-entry KB (2026-09-24): how often the right evidence appears in the top 10 results, not answer accuracy
App screen from a TTS / fictional-document run; no recordings of people, no personal data (2026-10-28).Screens and video come from TTS audio or public fictional documents. Third-party trials and native-speaker review have not been conducted.
PROJECT 02 / JAPANESE LEARNING / CLAUDE SKILL + GPU
Japanese Speaking Coach
A Windows app for the moment you are mid-conversation in Japanese: furigana subtitles and replies you can say as they are; the recommended reply leads with its conclusion and can answer from your own course documents with a citation
In development (phase 2: subtitles, replies, document answers and review working) · 2026-10 →
01Read the subtitles — furigana only on the hard kanji
02Say the ⭐ reply as it is, starting from its bold conclusion
03Check answers drawn from your course documents, with their source
Inspect history and saved output separately from the main demonstration.
History and lookup
TTS 音声による再生・個人情報なし(2026-10-25、commit 3ba4bea)
Problem
Chinese speakers in Japan (N4–N2) cannot answer a clerk's keigo or a colleague's slang within seconds; textbooks that explain first do not help.
My part & AI
I designed the output format, the five-step politeness rule behind the ⭐ pick and the LLM-judge evaluation; Claude Code implemented the Skill and the subtitle app.
Verification & limits
Numbers come from TTS audio and text evaluations (speed n=10, replies 20 sentences × 2, 8 fictional document questions). The author used it on real videos and an 89-minute online class and fixed what broke (D-013–D-041). The latest version has not yet been checked in a real conversation; no third-party trial or native review yet.
What I would change
While another agent worked on it, optimising one metric ("never invent facts") filled the replies with blanks like 【参加できます/参加できません】, so they could no longer be said, and the evaluation measured a different prompt path from the real app. Next time: measure sayability with every change, on the same path as the real app.
A checkable number
2.21 s · 102/102 · 328 tests last subtitle to reply suggestions p50 2.21 s (p95 2.50), speech recognition p50 0.25 s (RTX 5060, 10 TTS sentences); replies sayable as they are 102/102 (20 sentences × 2); 328 unit tests
Stack
Claude Skillfaster-whisper (large-v3-turbo)CUDAMeCab / fugashiDeepSeek APItkinterAnki export