Three drafts, one review
Generate changelog, blog, and social text; inspect source identities; copy or export Markdown, HTML, or JSON. Export your draft to continue editing in your preferred writing tool.
Release writing with the source in sight
The lead story
Select a repository and date range. GitHerald drafts a changelog, blog post, and social copy from commits and merged PRs, then keeps the source identities beside the result. Review the work before you publish a changelog.
For a local instance
Run the GitHerald package with a private data directory, connect your own GitHub OAuth App, and choose an AI provider. Sign in from the same loopback address you register with GitHub. Drafts stay reviewable until you choose to publish a changelog.
SHA-256 checksum · Installation guide
Before you begin
Use Node 26.8.1 on Linux x64 with GLIBC 2.34+ and GLIBCXX 3.4.29+. Download the archive and checksum, then follow its bundled README. You also need a GitHub OAuth App; generating drafts calls your configured AI provider and may incur charges.
From the extracted package directory, initialize an absolute data path. Reuse that path on every run; init preserves existing config and database files.
Set your GitHub client ID and secret plus one AI provider key in the private app.env. Register http://127.0.0.1:5550/api/auth/github/callback as the GitHub callback.
The check probes the bundled native SQLite dependency without starting a server. Start binds the app to 127.0.0.1:5550.
In the extracted package directory
GITHERALD_DATA_DIR="$HOME/.local/share/githerald"
node bin/githerald.mjs init --data-dir "$GITHERALD_DATA_DIR"
# Add GitHub and AI provider credentials to app.env
node bin/githerald.mjs check --data-dir "$GITHERALD_DATA_DIR"
node bin/githerald.mjs start --data-dir "$GITHERALD_DATA_DIR"The process
Sign in with GitHub, choose a repository and date range. GitHerald reads commits and merged pull requests.
A configured AI provider drafts a changelog, a release blog post, and social copy in one run.
The signed-in draft shows the commit and PR identities used for generation, with verified GitHub links when available.
Copy or export any draft. A separate Publish action creates a changelog page, RSS feed, and embed view on the running instance.
The release desk
Every draft has a route back to the activity that shaped it. You choose which words to copy or export, and publishing remains a separate decision.
Generate changelog, blog, and social text; inspect source identities; copy or export Markdown, HTML, or JSON. Export your draft to continue editing in your preferred writing tool.
Publish creates a changelog page, RSS feed, and embed view on your running instance. With local setup, those routes stay on the loopback address. Blog and social copy remain drafts for manual use.
GitHerald includes commits and merged PRs within both selected UTC dates. If an activity scan exceeds 1,000 records or GitHub fails on a page, generation stops before saving a partial draft.
The local package binds to loopback and keeps its SQLite data and credentials in your chosen private directory. Sharing a changelog on the Internet requires a separately configured deployment.