mcpField
R
release-notes-generation

release-notes-generation

github.com/happy-technologies-llc開発4141 回インストール2 日前に更新
リポジトリ

release-notes-generation について

このスキルは、ServiceNow のリリース期間内の変更要求、ユーザーストーリー、欠陥を集約し、関係者向けのリリースノートを作成します。変更の分類や影響、既知の問題を記録するリリースチーム向けで、ナレッジベース記事としての公開にも対応します。

主な機能

  1. 01リリース期間内の変更集約と分類
  2. 02ストーリーと受け入れ条件の収集
  3. 03欠陥修正と根本原因の記録
  4. 04既知の問題と回避策の特定
  5. 05リリースノートの作成と公開

活用シーン

  1. 01ソフトウェアリリースやスプリントの文書作成
  2. 02関係者への修正・変更の報告
  3. 03ナレッジベース記事としての公開

MCP 対応

SN-Query-Table でリリース、変更、ストーリー、欠陥のデータを収集します。SN-Create-Record でナレッジベース記事を公開し、SN-Update-Record でリリースレコードを更新できます。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/happy-technologies-llc/happy-platform-skills --skill release-notes-generation

インストール後、Claude Code で/release-notes-generationを入力して読み込まれたか確認します。

詳細

リリースノートの生成

概要

このスキルは、対象となるリリース期間に関連する変更要求、ユーザーストーリー、障害修正のデータを集約して、包括的なリリースノートを生成します。変更内容を分類し、影響の概要と既知の問題をまとめた、関係者向けのドキュメントを作成します。

  • リリース期間内の変更要求を検索し、種類別に分類します
  • ユーザーストーリーと受け入れ条件を集約して、機能の説明を作成します
  • 根本原因と影響の説明を添えて、障害修正を収集します
  • リリース後に持ち越される既知の問題と回避策を特定します
  • 技術者と非技術者の双方に適した形式でリリースノートを生成します
  • 必要に応じて、リリースノートをナレッジベース記事として公開します

使用するタイミング: ソフトウェアリリース、スプリントの成果物、またはメンテナンス期間の準備を行い、変更内容、修正内容、注意事項を関係者に知らせる必要がある場合に使用します。

前提条件

  • ロール: itil、change_manager、release_manager、または scrum_master
  • プラグイン: com.snc.change_management(変更管理)、com.snc.sdlc.agile.2.0(Agile Development 2.0、任意)、com.glide.knowledge(ナレッジ管理、任意)
  • アクセス権: change_request、rm_story、rm_defect、rm_release、kb_knowledge、incidentに対する読み取り権限
  • 知識: リリースサイクル、変更カテゴリ、関係者の対象についての理解
  • データ: 対象のリリースに紐付けられた変更要求、および/またはストーリー/障害

手順

ステップ 1:リリース期間を特定する

リリースレコードを検索するか、日付範囲を定義してリリースの対象範囲を特定します。

MCP を使用する場合(Claude Code/Desktop):

Tool: SN-Query-Table
Parameters:
  table_name: rm_release
  query: number=[release_number]
  fields: sys_id,number,short_description,start_date,end_date,state,release_type,release_phase
  limit: 1

REST API を使用する場合:

GET /api/now/table/rm_release?sysparm_query=number=[release_number]&sysparm_fields=sys_id,number,short_description,start_date,end_date,state,release_type,release_phase&sysparm_limit=1

正式なリリースレコードがない場合は、日付範囲で期間を定義します。

  • 開始日: スプリント/リリース期間の開始日
  • 終了日: リリースのデプロイ日
ステップ 2:変更要求を収集する

リリース期間内に実施された変更要求をすべて検索します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: change_request
  query: stateINclosed,implemented,review^end_dateBETWEEN[start_date]@[end_date]
  fields: sys_id,number,short_description,description,type,category,risk,impact,cmdb_ci,assignment_group,close_notes,state
  limit: 100

REST API を使用する場合:

GET /api/now/table/change_request?sysparm_query=stateINclosed,implemented,review^end_dateBETWEEN[start_date]@[end_date]&sysparm_fields=sys_id,number,short_description,description,type,category,risk,impact,cmdb_ci,assignment_group,close_notes,state&sysparm_limit=100

変更を分類します。

カテゴリ件数説明
新機能5追加された新機能
機能強化12既存機能の改善
バグ修正8障害の修正
インフラストラクチャ4プラットフォーム、サーバー、またはネットワークの変更
セキュリティパッチ3セキュリティ脆弱性の修正
設定6設定またはパラメーターの変更
ステップ 3:ユーザーストーリーを収集する

Agile Development を使用している場合は、リリースに含まれる完了済みストーリーを取得します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: rm_story
  query: release=[release_sys_id]^state=closed_complete
  fields: sys_id,number,short_description,description,acceptance_criteria,story_points,sprint,product,epic
  limit: 50

REST API を使用する場合:

GET /api/now/table/rm_story?sysparm_query=release=[release_sys_id]^state=closed_complete&sysparm_fields=sys_id,number,short_description,description,acceptance_criteria,story_points,sprint,product,epic&sysparm_limit=50
ステップ 4:障害修正を収集する

このリリースで修正された障害を取得します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: rm_defect
  query: release=[release_sys_id]^state=closed_complete
  fields: sys_id,number,short_description,description,severity,found_in,fixed_in,root_cause,affected_users
  limit: 50

REST API を使用する場合:

GET /api/now/table/rm_defect?sysparm_query=release=[release_sys_id]^state=closed_complete&sysparm_fields=sys_id,number,short_description,description,severity,found_in,fixed_in,root_cause,affected_users&sysparm_limit=50
ステップ 5:既知の問題を特定する

未解決の障害や、リリース後も継続する問題を確認します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: rm_defect
  query: release=[release_sys_id]^stateNOT INclosed_complete,closed_skipped
  fields: sys_id,number,short_description,severity,workaround
  limit: 20

同様の過去のリリース後に報告された、関連するインシデントも確認します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: incident
  query: active=true^short_descriptionLIKE[release_or_product_keyword]^sys_created_onONLast 7 days@javascript:gs.daysAgoStart(7)@javascript:gs.daysAgoEnd(0)
  fields: sys_id,number,short_description,priority,state
  limit: 10
ステップ 6:リリースノートドキュメントを生成する

収集したすべてのデータを、所定の形式のリリースノートドキュメントにまとめます。

================================================================
RELEASE NOTES
================================================================
Release: [release_number] - [release_short_description]
Date: [end_date]
Version: [version_number]
Environment: [Production / Staging / UAT]

================================================================
SUMMARY
================================================================
This release includes [X] new features, [Y] enhancements,
[Z] bug fixes, and [W] infrastructure changes.

Total Changes: [total]
Total Story Points Delivered: [points]
Risk Profile: [X] High, [Y] Moderate, [Z] Low risk changes

================================================================
NEW FEATURES
================================================================

[NFT-001] [CHG/STY number] - [Short Description]
  Description: [User-friendly description of the feature]
  Impact: [Who benefits and how]
  Configuration: [Any setup required by users/admins]
  Related KB: [KB article number if applicable]

[NFT-002] ...

================================================================
ENHANCEMENTS
================================================================

[ENH-001] [CHG/STY number] - [Short Description]
  Description: [What was improved and why]
  Before: [Previous behavior]
  After: [New behavior]

[ENH-002] ...

================================================================
BUG FIXES
================================================================

[BUG-001] [DEF number] - [Short Description]
  Severity: [Critical / High / Medium / Low]
  Symptom: [What users experienced]
  Root Cause: [What caused the defect]
  Fix: [What was changed to fix it]
  Affected Users: [Scope of impact]

[BUG-002] ...

================================================================
INFRASTRUCTURE CHANGES
================================================================

[INF-001] [CHG number] - [Short Description]
  Change Type: [Standard / Normal / Emergency]
  Impact: [Expected user impact during/after change]
  Downtime: [Any planned downtime window]

================================================================
SECURITY UPDATES
================================================================

[SEC-001] [CHG number] - [Short Description]
  Severity: [Critical / High / Medium / Low]
  CVE: [CVE number if applicable]
  Impact: [What was vulnerable and what was fixed]

================================================================
KNOWN ISSUES
================================================================

[KI-001] [DEF number] - [Short Description]
  Severity: [severity]
  Workaround: [Temporary workaround if available]
  Expected Fix: [Target release for fix]

================================================================
UPGRADE NOTES
================================================================
- [Any manual steps required after deployment]
- [Configuration changes needed]
- [Cache clears, restarts, or reindexing required]
- [Backward compatibility notes]

================================================================
ROLLBACK PLAN
================================================================
In case of critical issues:
- [Rollback procedure summary]
- Contact: [Release manager contact]
- Decision deadline: [Time by which rollback decision must be made]
ステップ 7:リリースノートを公開する

必要に応じて、リリースノートをナレッジベース記事として公開します。

MCP を使用する場合:

Tool: SN-Create-Record
Parameters:
  table_name: kb_knowledge
  data:
    short_description: "Release Notes - [release_number] - [date]"
    text: "[generated release notes]"
    kb_knowledge_base: [knowledge_base_sys_id]
    kb_category: Release Notes
    workflow_state: draft
    valid_to: ""

REST API を使用する場合:

POST /api/now/table/kb_knowledge
Content-Type: application/json

{
  "short_description": "Release Notes - [release_number] - [date]",
  "text": "[generated release notes]",
  "kb_knowledge_base": "[knowledge_base_sys_id]",
  "kb_category": "Release Notes",
  "workflow_state": "draft"
}
ステップ 8:関係者に通知する

リリースノートの配布について、リリースレコードに記録します。

MCP を使用する場合:

Tool: SN-Update-Record
Parameters:
  table_name: rm_release
  sys_id: [release_sys_id]
  data:
    work_notes: "Release notes generated and published as KB article [KB_number]. Distribution: Technical teams, Change Advisory Board, Service Desk, End-user communications."

ツールの使用方法

ツール目的使用するタイミング
SN-Query-Table変更、ストーリー、障害、リリースデータを取得する中核となるデータ収集
SN-Natural-Language-Search自然言語で関連項目を検索する補足的な検索
SN-Create-Recordリリースノートを KB 記事として公開するドキュメント作成
SN-Update-Recordリリースレコードのノートのステータスを更新する追跡と監査
SN-Add-Work-Notesドキュメントの生成プロセスを記録する監査証跡
SN-Get-Table-Schemaテーブル構造を調べるセットアップとフィールドの確認

ベストプラクティス

  1. 早めに作成し、頻繁に見直す -- 直前ではなく、変更の実装と並行してリリースノートの草案を作成します
  2. 読者に合わせて書く -- エンジニアには技術的な詳細を、ステークホルダーにはビジネスへの影響を伝えます
  3. 論理的に分類する -- チームやチケット番号ではなく、種類(機能、修正、インフラストラクチャ)ごとに分類します
  4. 既知の問題を必ず記載する -- ステークホルダーは透明性を信頼します。既知の問題を隠すと信頼が損なわれます
  5. ナレッジベースの記事にリンクする -- セットアップやトレーニングが必要な機能について、詳細なドキュメントを参照します
  6. ノートをバージョン管理する -- 草案作成後にリリース内容が変更された場合は、ノートを更新してバージョンを付けます
  7. ロールバック情報を含める -- すべてのリリースに、文書化されたロールバック計画を用意します
  8. データ収集を自動化する -- 変更の詳細を手作業で収集すると、エラーが発生しやすく、時間もかかります
  9. 変更担当者に確認してもらう -- 各変更の担当者に、自分のセクションの正確性を確認してもらいます
  10. 一貫した方法でアーカイブする -- 過去の記録として参照できるよう、リリースノートを標準の場所(ナレッジベース、リリース記録)に保存します

トラブルシューティング

「リリース期間に該当する変更要求が見つかりません」

原因: 変更の end_date が設定されていないか、別の日付フィールドを使用している可能性があります 解決方法: 代わりに close_date または work_end で検索してみてください。また、日付範囲ではなく release フィールドを使って、変更がリリース記録に関連付けられているかどうかも確認してください。

「ストーリーのリリースフィールドが設定されていません」

原因: Agile Development の統合が、ストーリーとリリースを関連付けるように設定されていない可能性があります 解決方法: 代わりに、スプリントの日付を使ってストーリーを検索します。sprint.end_date BETWEEN [start] AND [end] を指定してください。または、プロダクトと状態で検索します。

「リリースノートに含める変更が多すぎます」

原因: リリース期間が長いか、環境内で多くの変更が行われています 解決方法: リスクレベル(低リスクの標準変更を除外)またはアプリケーションの対象範囲で絞り込みます。顧客向けの変更を優先し、内部変更やインフラストラクチャの変更は要約します。

「欠陥の root_cause フィールドが空です」

原因: 開発者が欠陥の解決時に根本原因分析を入力していません 解決方法: 文脈を把握するために、欠陥の説明と close_notes を確認します。root_cause が空の場合は、プロセス改善項目として記録します。

例

例 1:スプリントのリリースノート

リリース: REL0023456 - スプリント 42 のリリース(2026-03-15 から 2026-03-29)

生成されたノート:

  • 3 件の新機能:セルフサービスポータルの再設計、モバイルアプリのプッシュ通知、ベンダーポータルの SSO
  • 5 件の機能強化:検索パフォーマンスの改善、承認メールテンプレートの更新、ダッシュボードの読み込み時間の最適化、CSV 一括インポートの検証、レポートの PDF エクスポート
  • 4 件のバグ修正:ログインタイムアウトの問題(重大)、カレンダーの日付選択で発生する 1 日のずれ(中)、レポートのページネーションエラー(中)、通知の重複抑制(低)
  • 1 件の既知の問題:PDF エクスポートで 50 行を超える表がまれに途中で切れる(回避策:CSV にエクスポート)
例 2:緊急パッチのリリースノート

リリース: REL0023457 - 緊急セキュリティパッチ(2026-03-18)

生成されたノート:

  • 1 件のセキュリティ更新:CVE-2026-1234 - フォーム送信ハンドラーのクロスサイトスクリプティング脆弱性(重大)
  • 新機能:0 件
  • 1 件のインフラストラクチャ変更:パッチ適用まで、攻撃パターンをブロックするための WAF ルール更新
  • ロールバック計画:2 時間以内に WAF ルールを元に戻し、以前のアプリケーションバージョンを適用
例 3:大規模なプラットフォームアップグレードのリリースノート

リリース: REL0023458 - プラットフォームアップグレード v3.0(2026-03-22)

生成されたノート:

  • 3 つのモジュールにまたがる 8 件の新機能
  • パフォーマンスと UX の改善を含む 15 件の機能強化
  • 重大度「重大」のもの 2 件を含む 12 件のバグ修正
  • データベースの移行とキャッシュアーキテクチャの更新を含む 3 件のインフラストラクチャ変更
  • 回避策を文書化した 5 件の既知の問題
  • アップグレードに関する注意事項:4 時間のメンテナンス時間、データベースのバックアップが必要、デプロイ後にキャッシュをクリア、すべてのユーザーが再認証する必要があります

関連スキル

  • itsm/change-management - 変更リクエストのライフサイクル管理
  • spm/agile-story-generation - 次のスプリント向けのストーリーを生成する
  • knowledge/article-generation - リリース内容から KB 記事を作成する
  • spm/acceptance-criteria - ストーリーの受け入れ基準を定義する
  • itsm/suggested-steps - リリースが原因で発生したインシデントの解決手順
  • spm/planning-summarization - スプリントとリリース計画の要約

コメント