Repo Requiem: I Built an Obituary Writer for Abandoned Repositories
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine . What I Built Last October I published a small Puppeteer plugin called cloudflare-clearance-plugin . It took three days, eight commits, and one README. Then I stopped. A year later the repository is still there: three branches, zero tags, 362 days of silence. I used to think of it as dead code. This…
This report details the creation of Repo Requiem, a command-line tool designed to create obituaries for abandoned software repositories. The author, ItzmeJan, published a small Puppeteer plugin in October last year and published it on GitHub but then abandoned it, leaving the repository with three branches, zero tags, and 362 days of silence.
Repo Requiem addresses this issue by reading the history of a local git repository and using an open-weight model to write an obituary. The obituary contains an epitaph, a short eulogy, cause of death, last words, and what the project left behind. The tool is deliberately small, with no need for a dashboard since the dead do not require one. The resulting Markdown output is in the repository as sample-obituary.md.
The tool was built in four steps, with only one step involving AI. The first step is to collect facts using git commands such as git log, git shortlog, git branch, git tag, and the README. These commands provide information such as the first and last commit, contributors, open branches, deleted files, and the most touched files.
The second step is to guess a cause of death using plain rules. The tool determines the cause of death based on the number of contributors and the length of time the repository was inactive. For example, a repository with only one contributor and a year of inactivity results in a cause of death labeled "maintainer exhaustion," while a three-day project that never returned is labeled "a weekend that got away."
The third step is to ask Gemma, an open-weight model served by Ollama, to write five fields: epitaph, obituary, cause_of_death, last_words, and survived_by. These fields are provided as JSON, and the model is instructed not to invent people, dates, or events, and not to call the project a failure.
Finally, the tool renders the Markdown output, which includes an ASCII tombstone, the eulogy, and an autopsy table with the real numbers. This allows the reader to see what the writing was based on. If Ollama is not running, the tool provides instructions on how to start it instead of displaying a stack trace. The tool was tested against a throwaway git repository, with tests for deleted-file detection, heuristics, JSON extraction, and rendering. There were no network, model, or fixture dependencies in the testing.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.