Generate Mondo Release Announcement
SkillDev toolsGenerate a formatted Mondo release announcement with statistics table from release diff reports
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Generate Mondo Release Announcement skill
What this skill tells your AI
The instructions your AI receives, as published by monarch-initiative/mondo in .claude/skills/release-announcement/SKILL.md and read by ahel’s review.
Instructions
Generate a formatted release announcement markdown file and statistics table for a Mondo ontology release.
Input Documents
Read these source files to extract all data:
-
src/ontology/reports/mondo_release_diff.md— The primary release diff report. Contains:- Overview section with summary counts
- New terms table (with Mondo ID, Label, Definition columns)
- Changed labels table (renamed terms, with old and new labels)
- Changed definitions table
- Obsoleted terms section
- New obsoletion candidates table
- Terms no longer obsoletion candidates table
-
src/ontology/reports/difference_release_base.md— The detailed base diff report. Contains:- Classes added (for cross-referencing new terms)
- Text definitions changed
- Nodes renamed
- Relationships added/removed
- Mappings added/removed
-
src/ontology/reports/mondo_obsoletioncandidates.tsv— Current total obsoletion candidates list (needed for the "total number of obsoletion candidates" statistic; count the rows excluding the header).
Reference Examples
Look at the GitHub release notes for the monarch-initiative/mondo repository as formatting examples. To view the most recent release, use:
gh release view --repo monarch-initiative/mondo
Always use the most recent release as the formatting template.
Task 1: Statistics Table
Include a statistics summary table at the top of the release announcement file (before the detailed sections). The table should be in this format:
| Statistic | Count |
|---|---|
| New terms | N |
| New terms with definitions | N |
| ... | ... |
Statistics to compute:
| Statistic | How to compute |
|---|---|
| New terms | Count rows in "New terms" table from mondo_release_diff.md |
| New terms with definitions | Count rows in "New terms" table that have a non-empty Definition column |
| Terms renamed (including obsolete renames) | Count ALL rows in "Changed labels"/"Nodes renamed" sections |
| Terms renamed (excluding obsolete renames) | Count rows in "Changed labels" where the new label does NOT start with "obsolete" |
| Text definitions added (new + existing terms) | Count new terms that have definitions PLUS definitions added to existing terms |
| Text definitions added to existing terms only | Count entries in "Changed definitions" where the old definition is empty and the new definition is non-empty (excluding new terms) |
| Text definitions changed (excluding obsolete) | Count entries in "Changed definitions" where BOTH old and new definitions are non-empty, AND the new definition does NOT start with "OBSOLETE." |
| Text definitions removed | Count entries in "Changed definitions" where the old definition is non-empty and the new definition is empty |
| Terms obsoleted without replacement | Count obsoleted terms that have NO replaced_by |
| Terms obsoleted with replacement (merged) | Count obsoleted terms that HAVE a replaced_by |
| New obsoletion candidates | Count rows in "New obsoletion candidates" table |
| Terms no longer obsoletion candidates | Count rows in "previously candidates... not anymore" table |
| Total obsoletion candidates (current) | Count data rows (excluding header) in src/ontology/reports/mondo_obsoletioncandidates.tsv |
Task 2: Release Notes Markdown
Create the detailed sections using the exact same format as the most recent GitHub release (with <details>/<summary> collapsible sections and markdown tables).
Sections to include (in this order):
-
New terms — Table with: Mondo ID, Label, Definition. Source:
mondo_release_diff.md"New terms" section. -
Terms renamed (excluding obsoleted terms) — Table with: ID, Old Label, New Label. Source:
mondo_release_diff.md"Changed labels" section. Exclude any terms that were renamed only because they were obsoleted (i.e., exclude renames where the new label starts with "obsolete"). -
Text definitions added to existing terms — Table with: Mondo ID, Label, New Text Definition. These are terms that previously had NO definition and now have one (excluding new terms). Source: cross-reference
mondo_release_diff.md"Changed definitions" section — entries where the old definition was empty or the term already existed. -
Text definitions changed — Table with: Mondo ID, Label, Old Text Definition, New Text Definition. Entries where BOTH old and new definitions are non-empty. Exclude obsoleted terms (where the new definition starts with "OBSOLETE."). Source:
mondo_release_diff.md"Changed definitions" section. -
Terms obsoleted with replacement — Table with: Mondo ID, Label, Replacement. These are terms marked obsolete that have a
replaced_bytag (i.e., merges). Source:mondo_release_diff.md"Obsolete terms" section, filtered for those with replacements. -
Terms obsoleted without replacement — Table with: Mondo ID, Label. Obsoleted terms that only have
considertags or no replacement at all. Source:mondo_release_diff.md"Obsolete terms" section, filtered for those without direct replacements. -
New obsoletion candidates — Table with: Mondo ID, Label. Source:
mondo_release_diff.md"New obsoletion candidates" section. -
Terms that were previously candidates for obsoletion and are now not anymore — Table with: Mondo ID, Label. Source:
mondo_release_diff.mdcorresponding section.
Output file
Save the file as: src/ontology/reports/release_announcement_YYMMDD.md where YYMMDD is today's date.
Important Notes
- The
mondo_release_diff.mdfile begins with a log block between---START LOG---and---END LOG---markers. Do NOT include this log in the output. - Each
<details>/<summary>section should include the count in the summary line, e.g.,<summary>New terms: 11</summary>. - If a section has zero entries, still include it with an empty table and count of 0.
- Use the same markdown table formatting style as the most recent GitHub release.
- The output file title should be
# Mondo Release Statistics.
Signals
- GitHub stars
- 322
- Forks
- 65
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
release-announcement- Source
- github.com/monarch-initiative/mondo