Every developer knows the feeling. Your CI pipeline fails. You open the log. There are 300 lines of noise — progress bars, timestamps, test runner output — and somewhere buried in there is the one line that actually matters. I got tired of hunting for it. So I built ci-why . What it does You pipe your failed CI log into it, and it tells you: WHY the build failed (in one sentence) Which exact line caused it What to fix cat build.log | ci-why Enter fullscreen mode Exit fullscreen mode That's it. You get back something like this: ────────────────────────────────────────────────── WHY The authentication service is returning null for the token field instead of a valid token string, causing the test assertion to fail. FAILING LINE src/services/auth.test.ts:63 SUGGESTED FIX Check authService.login() in auth.ts — it's returning {"token": null} for valid credentials. The login logic needs fixing, not the test.…