versuhq/versu ? reverse-engineered prompt

Reverse engineered prompt

Build me a tool called Versu that automates versioning for a project with multiple packages or modules. It should read Conventional Commits, figure out whether each change is a patch, minor, or major release, and then update versions automatically without me doing it by hand.

I want it to work in three ways, as a reusable library, a command line tool, and a GitHub Action for CI. It should also handle dependency updates between modules, so if one package changes, anything that depends on it gets bumped too. Please generate changelogs from commit history as part of the release flow, and support prerelease versions like alpha, beta, and rc.

Make it feel ready for a monorepo, but still usable for a simple single package project. If you need to look up current docs or best practices for Conventional Commits or GitHub Actions, go ahead and check online.