Borrowing it
Nothing to install: this file belongs to fatihkan/badi. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/fatihkan/badi/main/.claude/commands/changelog.mdgit clone --depth 1 https://github.com/fatihkan/badiWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/fatihkan/badi/changelog)<a href="https://agentmods.dev/commands/fatihkan/badi/changelog"><img src="https://agentmods.dev/badge/commands/fatihkan/badi/changelog.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.01066 |
| Opus 5 | $0.00000 | $0.00533 |
| Sonnet 5 | $0.00000 | $0.00213 |
| Haiku 4.5 | $0.00000 | $0.00107 |
Grade A, and why
changelog scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 153 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Automatic changelog generation. Produces a structured changelog from commit history.
Badi CLI Command (v1.6+)
For quick generation:
badi changelog # Preview from the latest tag to HEAD
badi changelog --from v1.0.0 # From a specific tag
badi changelog --write --version 1.6.0 # Write to CHANGELOG.md
The CLI groups automatically by conventional commit types. The manual steps below are for complex cases (non-conventional commits, breaking-change marking, etc.).
Required Tools
- Bash (git log, git tag, git diff)
- Read (the existing CHANGELOG.md)
- Write (creating/updating the changelog file)
- Grep (commit message search)
Format Standard
This command uses the Keep-a-Changelog (keepachangelog.com) format. Conventional Commits messages (feat:, fix:, breaking:, etc.) are categorized automatically.
Step 1: Define the Version Range
1a: Find the Latest Tag
- Find the latest tag with
git tag --sort=-version:refname - If no tag exists, use the first commit as the starting point
- Ask the user for a custom range (optional)
1b: Range Validation
- Start point: [last tag] or [given commit]
- End point: HEAD (or a given commit)
- Show the total commit count in the range
- Offer a preview with
git log [start]..HEAD --oneline
Step 2: Parse the Commit Messages
2a: Get the Commit List
- Run
git log [range] --format="%H|%s|%an|%ad" --date=short - Per commit collect: hash, message, author, date
- Separate merge commits (include or exclude on request)
2b: Conventional Commits Parsing
Recognize these prefixes:
feat:orfeature:-> Featuresfix:orbugfix:-> Fixesbreaking:orBREAKING CHANGE:-> Breaking Changesrefactor:-> Refactoringdocs:-> Documentationperf:-> Performancetest:-> Testschore:orci:-> Maintenance
2c: Non-Conventional Messages
- Classify unprefixed commits by their content
- If unclassifiable, add to the "Other" category
- Offer to ask the user about ambiguous commits
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 153 lines · 0 tokens per session scan A 6bfbe59a9f46
changelog is a command published in the GitHub repository fatihkan/badi (7 stars, last pushed yesterday), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,066 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
land-and-deploy
Merge PR, wait for CI, verify deploy, run canary — the complete landing pipeline.
plan-execute
Execute a validated plan: worktree isolation, TDD scaffolding, level-based parallel agents, quality gate with smoke test, PR creation and merge. Handles everything through to merged PR.
release-notes
Generate release notes in multiple formats from git commits.
ship
Comprehensive pre-deployment verification to ensure release readiness.
catchup
Restore context after /clear by summarizing recent work and project state.
commit
Generate a conventional commit message for staged changes.