I can't ask my old team lead why anymore, so I built a séance
说明与用途
当关键团队成员离开时,他们关于代码为何存在的知识会丢失。Ouija Blame 通过 git log -L 跟踪代码行,使用 Gemma 3‑4B 识别解释性段落,并引用提交、PR、评审、问题和代理会话,说明代码行存在的原因。
问题
When a key team member leaves, their knowledge about why certain code exists is lost, and tools like git blame only show the last change, not the original rationale.
结果
In a test set of 45 lines from various projects, Ouija Blame surfaced a written reason for 28/45 lines, outperforming git blame (19/45) and requiring less reading effort (67 words per line vs 268).
工作流
- Paste a GitHub link to a line or open a haunted line from the gallery
- Ouija Blame uses git log -L to trace the line back to its first commit
- Collects commit messages, PR descriptions, review comments, linked issues, and Entire prompts
- Gemma 3‑4B identifies passages that explain why the line exists
- Code verifies each quoted word against the source
- Outputs a card with what the line does, why it exists, and what to check before changing it, with numbered citations
- Ghost speaks only in quoted words; if no reason is found, it says "I never wrote down why."
证据
git blame did not help. It showed me the last person who touched the file, not the person who decided why it exists.
Ouija Blame walks the line back to the commit that first wrote it, gathers what its author and reviewers wrote (commits, the pull request, review comments, linked issues, and the prompts behind agent-written code), and the ghost answers only in their own words, each one linked.
The test: 45 real lines from Rails, Kubernetes, Home Assistant, Ansible and Istio that someone deleted as pointless, which broke something and were put back. Every method saw only history from before the deletion. The séance surfaced a written reason for 28/45 lines; the git blame message, 19/45 (+20 points, 95% CI +9 to +33).
- 记录日期: 2026-11-01T10:44:10.774Z