fit-create-release-note

A command that creates structured release notes from Git commits, pull requests, and issues. Release notes are a summary of what changed in a software version.

In plain words
What is it for?
Use it with a version number, optionally a previous version, to classify changes by module and type and optionally create a draft release on GitHub.
Why use it?
It saves developers from manually gathering and sorting changes for each release. It can also combine the notes from an earlier minor version when preparing a new major or minor release.

Command for Codex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add commands/modelengine-group/fit-framework/fit-create-release-note
Clone the repo
git clone --depth 1 https://github.com/ModelEngine-Group/fit-framework

Made for: Codex.

Per session 20 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 3,211 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 86% copy Near-identical to another mod in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00020 $0.03211
Opus 5 $0.00010 $0.01605
Sonnet 5 $0.00004 $0.00642
Haiku 4.5 $0.00002 $0.00321

Measured 2d ago against content hash 269f2b95fb25, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

fit-create-release-note 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 2d 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.

Origin

This is a copy

86% identical to create-release-note — 40 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

.codex/commands/fit-create-release-note.md · 310 lines

How it starts

The opening of the file, as written. The whole thing — 310 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Create Release Note Command

自动从 PR、commit 和 Issue 中收集变更信息,按模块和类型分类,生成符合项目格式的 Release Notes。支持创建 GitHub Draft Release。

对于 x.y.0 版本,支持合并前一 minor 系列的已发布 release notes,无需重复计算。

用法:

  • /prompts:fit-create-release-note 3.6.3 — 自动推断上一版本为 3.6.2
  • /prompts:fit-create-release-note 3.6.3 3.6.2 — 手动指定范围
  • /prompts:fit-create-release-note 3.7.0 — x.y.0 版本:合并 3.6.x 系列的所有 release notes

参数说明:

  • <version>: 当前发布版本号,格式为 X.Y.Z(必需)
  • <prev-version>: 上一版本号,格式为 X.Y.Z(可选,不提供则自动推断)

执行步骤

步骤 1-3 为公共步骤,步骤 3 根据版本类型分流:

  • 合并路径(PATCH == 0,如 3.7.0):步骤 4-7 → 跳到步骤 14
  • 常规路径(PATCH > 0,如 3.6.3):步骤 8-13 → 继续步骤 14

步骤 14-15 为公共步骤。

步骤 1:解析参数

$ARGUMENTS 中提取参数。支持两种形式:

  • 单参数:<version> — 当前版本号
  • 双参数:<version> <prev-version> — 当前版本号和上一版本号

版本号格式验证

  • 必须匹配 X.Y.Z 格式(X、Y、Z 均为非负整数)
  • 如果格式不正确,报错退出:错误:版本号格式不正确,期望格式为 X.Y.Z(例如 3.6.3)

步骤 2:确定版本范围

当前版本 tag: v<version>(如 v3.6.3

上一版本 tag 推断逻辑(仅当未指定 <prev-version> 时):

# 获取所有已排序的 tag
git tag --sort=-v:refname
  • 如果 PATCH > 0(如 3.6.3):查找同一 minor 系列中的前一个 tag(如 v3.6.2
  • 如果 PATCH == 0(如 3.6.0):查找前一个 minor 系列的最后一个 tag(如 v3.5.x 中最大的)

验证 tag 存在

git rev-parse v<version>
git rev-parse v<prev-version>

如果任一 tag 不存在,报错退出:错误:Tag v<version> 不存在,请确认 tag 已创建

步骤 3:判断版本类型并选择路径

根据版本号的 PATCH 部分选择不同的生成路径:

  • 如果 PATCH == 0(如 3.7.0)→ 走合并路径,从步骤 4 开始
  • 如果 PATCH > 0(如 3.6.3)→ 走常规路径,从步骤 8 开始

合并路径(PATCH == 0,x.y.0 版本)

步骤 4:查找前一 minor 系列的所有已发布 release

gh release list --limit 50 --json tagName,isDraft,isPrerelease

从结果中筛选满足以下条件的条目:

  • tagNamevX.(Y-1). 开头(例如版本 3.7.0 则筛选 v3.6. 开头)
  • isDraft == false
  • isPrerelease == false

如果未找到任何已发布的 release,提示用户并回退到常规路径(步骤 8)。

步骤 5:按版本号升序获取各 release body

对步骤 4 筛选出的每个 release tag,按版本号升序获取其内容:

gh release view v<tag> --json body --jq .body

步骤 6:合并所有 release body

将各版本的 release notes 合并为一份完整文档:

  1. 按版本顺序拼接:按 v3.6.1v3.6.2v3.6.3 ... 的顺序处理
  2. 同平台同类型条目合并:将各版本中相同平台(如 FIT Function Platform)相同类型(如 Enhancement)的条目合并到一起
  3. 去重 Contributors:合并所有 ❤️ Contributors 段落中的贡献者,去重后按贡献量(出现次数)降序排列

Read the full file on GitHub · 310 lines

Changes

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.

  1. 2d ago First seen · 310 lines · 20 tokens per session scan A 269f2b95fb25

Subscribe to this mod's changes

fit-create-release-note is a command published in the GitHub repository ModelEngine-Group/fit-framework (2,117 stars, last pushed 5mo ago), licensed MIT. It adds 20 tokens to every session and 3,211 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. It is 86% identical to create-release-note, differing in 40 lines, and is treated as a copy.