Skip to content

Release Note Automation

Do you spend 2—3 hours per release digging through Git logs to manually write release notes? Missing a Breaking Change that triggers user issues, and inconsistent documentation accumulating as each author uses a different format — everyone has experienced this at least once.

This tutorial solves that problem. By combining Claude Code custom Commands with .NET 10 file-based apps, you can build a system where a single line — /release-note v1.2.0 — automatically generates professional release notes. You will analyze the automation system currently in operation in the real open-source project Functorium and learn systematically through a 5-phase workflow.

LevelAudienceRecommended Scope
BeginnerDevelopers who know basic C# syntax and want to get started with CLI tool developmentParts 0—1
IntermediateDevelopers interested in workflow automation and script developmentAll of Parts 2—3
AdvancedDevelopers interested in Claude Code customization and advanced automationParts 4—5 + Appendix

After completing this tutorial, you will be able to:

  1. Author and use Claude Code custom Commands
  2. Develop CLI scripts with .NET 10 file-based apps
  3. Handle professional CLI argument processing with System.CommandLine
  4. Build rich console UIs with Spectre.Console

Start by understanding why release notes matter and get a big-picture view of how the automation system works.

Install and configure .NET 10 SDK, Claude Code, and Git to prepare your hands-on environment.

Learn how to create custom Commands in Claude Code and analyze the internal structure of the release note generation Command.

ChTopicKey Learning
1What Is a Custom Command?Understanding the Command concept
2Command Syntax and StructureSyntax and authoring guide
3release-note.md Detailed AnalysisRelease note Command
4commit.md IntroductionCommit Command

Analyze the 5-phase workflow for release note generation in detail. From environment validation to final verification, examine what input each phase receives and what output it produces.

ChTopicKey Learning
0Workflow Overview5-Phase overall overview
1Phase 1: Environment ValidationDirectory, file verification
2Phase 2: Data CollectionGit logs, change history
3Phase 3: Commit AnalysisCommit classification, grouping
4Phase 4: Document AuthoringTemplate-based generation
5Phase 5: ValidationOutput file validation

Dive into the internals of C# scripts and templates written as .NET 10 file-based apps. Covers processing CLI arguments with System.CommandLine and building rich console UIs with Spectre.Console.

ChTopicKey Learning
1.NET 10 File-Based AppsIntroduction to file-based apps
2System.CommandLineCLI argument processing
3Spectre.ConsoleConsole UI implementation
4AnalyzeAllComponents.csComponent analysis script
5ExtractApiChanges.csAPI change extraction
6ApiGenerator.csAPI generator
7TEMPLATE.md StructureTemplate structure
8component-priority.jsonComponent configuration
9Output File FormatsOutput formats

Based on everything you have learned, generate release notes yourself and write your own automation scripts.

ChTopicKey Learning
1Generating Your First Release NoteFirst hands-on exercise
2Writing Your Own ScriptCustom scripts
3Troubleshooting GuideTroubleshooting
4Quick ReferenceQuick reference

The core of the automation system is a 5-phase pipeline. When a user runs the /release-note v1.2.0 command, the process progresses sequentially from environment validation through data collection, commit analysis, document authoring, and final verification. Each phase takes the output of the previous phase as input, and clear success criteria are defined so you can immediately identify where a problem occurred.

PhaseStageKey Tasks
1Environment ValidationDirectory structure, required file verification
2Data CollectionGit commit logs, file change history collection
3Commit AnalysisCommit classification, component-level grouping
4Document AuthoringTemplate-based release note generation
5ValidationOutput file validation, format verification

TechnologyVersionPurpose
.NET10.0File-based app execution environment
System.CommandLine2.0.1CLI argument processing
Spectre.Console0.54.0Console UI (tables, panels, spinners)
PublicApiGenerator11.5.4Public API extraction
Claude Code-AI-powered CLI tool

  • .NET 10.0 SDK (Preview or release version)
  • Claude Code CLI
  • Git
  • Visual Studio 2022 or VS Code + C# extension

All example code for this tutorial can be found in the Functorium project:

Terminal window
git clone https://github.com/hhko/Functorium.git
cd Functorium

Claude custom Commands are located in .claude/commands/, C# scripts in .release-notes/scripts/, and per-phase detailed documentation in .release-notes/scripts/docs/. For the complete project folder structure, see 0.3 Project Structure Introduction.


This tutorial was written based on real-world experience developing the release note automation system in the Functorium project.