Inspiration
ChangelogGenie began as an experiment in working with an AI agent.
I wanted to test something very concrete: how far could I take a software project while working primarily from my phone, using an AI system not simply to answer questions, but as an active technical collaborator?
I did not begin with a detailed product specification. Through repeated conversations with ChatGPT, the idea gradually became a tool for turning raw Git commit history into useful changelogs.
What started as a small experiment eventually became a real public project with a CLI, a GitHub Action, validation on real repositories, documentation, releases, and an optional AI-assisted layer.
What it does
ChangelogGenie generates deterministic technical Markdown changelogs directly from Git commit history.
It works with ordinary commit messages and does not require Conventional Commits. It categorizes changes, preserves commit metadata and links, and can run either as a local CLI or directly inside a GitHub Actions workflow.
The GitHub Action is deliberately read-only: it generates the changelog but does not modify the repository, create commits, or open pull requests.
There is also an optional local AI-assisted layer that can transform a technical changelog into customer-facing release notes while attempting to avoid invented features, metrics, or business value.
How I built it
The project was developed iteratively through human–AI collaboration.
Much of the early work was done from my phone. I described what I wanted to achieve, reviewed the results, tested behavior, questioned decisions, and progressively refined the project while the AI provided technical implementation, explanations, debugging support, and code review.
As the project became more complex, we moved from a simple script to a structured CLI and GitHub Action, added automated testing and documentation, validated the output against real public repositories, and later added an optional AI transformation layer.
The project uses Python, the GitHub API, GitHub Actions, Markdown, JSON, and an optional OpenAI API integration.
Challenges I ran into
The first challenge was the working environment itself. Building and supervising a software project primarily from a phone makes file structure, debugging, repository state, and multi-step technical operations significantly harder to follow.
A second challenge was learning how to work effectively with an AI agent. Generating code was the easy part. The harder part was maintaining continuity across many iterations, understanding enough of the system to recognize when something had drifted, deciding which suggestions were appropriate, and verifying that the result actually matched the intended behavior.
There were also product-design challenges. Changelog generation sounds simple until real repositories are involved: commit messages vary widely, categories are ambiguous, date ranges matter, metadata must remain traceable, and an AI-generated business changelog must not invent information that is absent from the source.
Accomplishments that I'm proud of
ChangelogGenie progressed from a phone-based AI experiment into a usable public software project.
It now has a local CLI, a read-only GitHub Action, automated tests, documentation, public releases, and validation against real repository history.
One public validation used the outline/outline repository and generated a deterministic categorized Markdown changelog from 21 real commits within a selected date range.
I am also proud that the project preserves a clear boundary between deterministic processing and AI transformation. The technical changelog does not depend on an LLM; AI is an optional second layer rather than a hidden requirement.
What I learned
The project taught me that working with an AI agent is not the same as asking an AI to generate code.
The useful part of the collaboration emerged over time: maintaining the conceptual direction of the project, testing outputs, detecting inconsistencies, deciding when an implementation was too complex, and repeatedly narrowing the system until its behavior became predictable.
I also learned that deterministic and generative components should not automatically be mixed together. For ChangelogGenie, keeping the core changelog generation deterministic and placing AI in a separate optional layer made the architecture clearer and easier to verify.
And, practically, I learned that a phone is a surprisingly capable place to begin building software — although not always a comfortable one.
What's next for ChangelogGenie
The core project is functional and publicly available.
The next steps are less about proving that the system can work and more about improving usability, validation, and adoption: testing it across a wider variety of repositories, refining categorization, improving documentation and workflow integration, and observing which parts are genuinely useful to developers.
The optional AI-assisted layer can also be developed further, while preserving the current separation between deterministic source analysis and generative transformation.
Log in or sign up for Devpost to join the conversation.