guide-recap について
CHANGELOG.md の項目から、リリース告知や週次更新のソーシャル投稿案を作るスキルです。注目する変更を選び、LinkedIn、Twitter/X、newsletter、Slack 向けにフランス語と英語で生成します。
主な機能
- 01バージョンまたは期間を指定して読み込み
- 02変更項目を関連度順に評価
- 034 種類の投稿形式を生成
- 04フランス語と英語に対応
- 05切り口と対象読者を対話形式で選択
- 06投稿案をファイルに保存可能
活用シーン
- 01リリース後の投稿を準備
- 021 週間の変更点をまとめる
- 03リリースノートから newsletter を作成
- 04バージョンごとの Slack 更新を作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ florianbruniaux/ claude-code-ultimate-guide --skill guide-recapインストール後、Claude Code で/guide-recapを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/linkedin-template.mdnewsletter-template.mdslack-template.mdtwitter-template.mdexamples/version-output.mdweek-output.mdreferences/changelog-parsing-rules.mdcontent-transformation.mdtone-guidelines.md詳細
ガイドの概要
CHANGELOG.md のエントリーからソーシャルメディアのコンテンツを生成します。デフォルトでは 8 件の出力(4 つの形式 × 2 つの言語)を作成します。
使用するタイミング
/releaseを実行して、ソーシャルメディア向けの告知を作成した後- 複数のリリースをまとめるため、週ごとに
- LinkedIn、Twitter/X、ニュースレター、Slack に投稿する前
使い方
/guide-recap latest # Latest released version
/guide-recap v3.20.5 # Specific version
/guide-recap week # Current week (Monday to today)
/guide-recap week 2026-01-27 # Specific week (Monday to Sunday)
フラグ
| フラグ | 効果 | デフォルト |
|---|---|---|
--interactive | ガイドモード:切り口、対象読者、注目点を選択します | オフ(自動で下書きを作成) |
--format=X | 単一の形式:linkedin、twitter、newsletter、slack | 4 つすべての形式 |
--lang=X | 単一の言語:fr、en | フランス語と英語の両方 |
--save | 出力を claudedocs/social-posts/ に保存します | 表示のみ |
--force | メンテナンス項目のみの場合でも生成します | スコアが低い項目はスキップ |
ワークフロー(7 ステップ)
ステップ 1:入力を解析する
モードを判定するために $ARGUMENTS を解析します。
| 入力 | モード | 対象 |
|---|---|---|
latest | 単一バージョン | [Unreleased] の後にある最初の ## [X.Y.Z] |
vX.Y.Z または X.Y.Z | 単一バージョン | バージョンの完全一致 |
week | 週の期間 | 今週の月曜日 -> 今日 |
week YYYY-MM-DD | 週の期間 | 指定日の月曜日 -> 翌日曜日 |
引数がない場合、または無効な引数の場合は、使い方を表示して終了します。
ステップ 2:CHANGELOG のエントリーを抽出する
プロジェクトのルートから CHANGELOG.md を読み込みます。
単一バージョン:
## [{version}]に一致する行を見つけます- 次の
## [行までのすべての内容を抽出します ### Added、### Changed、### Fixedセクションを解析します
週の期間:
- 日付が期間内にあるすべての
## [X.Y.Z] - YYYY-MM-DDエントリーを収集します - 該当するすべてのバージョンから、すべてのセクションを解析します
エラー:バージョンが見つかりません -> 直近 5 件のバージョンを一覧表示し、latest を提案します。
エラー:週の期間にエントリーがありません -> 最後のリリース日を表示し、そのバージョンを提案します。
ステップ 3:エントリーを分類する
各トップレベルのエントリー(### の下にある第 1 階層の箇条書き)にカテゴリを割り当てます。
| カテゴリ | 重み | 判定方法 |
|---|---|---|
NEW_CONTENT | 3 | 新しいファイル、新しいセクション、新しい図、新しいクイズ問題 |
GROWTH_METRIC | 2 | 行数の増加、項目数の変化 |
RESEARCH | 1 | リソースの評価、外部ソースの統合 |
FIX | 1 | ### Fixed 内の修正 |
MAINTENANCE | 0 | README の更新、バッジの同期、ランディングページの同期、件数の更新 |
詳しい分類ルールについては、references/changelog-parsing-rules.md を参照してください。
ステップ 4:ユーザー価値に変換する
references/content-transformation.md のマッピングを適用します。
- 技術的な表現 -> ユーザーにとってのメリット
- 具体的な数値を抽出
- 名前の挙がっている情報源を明記
- 関連するエントリーをまとめる
references/tone-guidelines.md の DO/DON'T チェックリストに照らして検証します。
ステップ 4b:インタラクティブモード(--interactive のみ)
--interactive フラグが設定されている場合は、ステップ 4 と 5 の間に次の手順を挿入します。
-
スコア付きの注目候補を表示します。
Highlights (by score): [14] 4 new ASCII diagrams (16 -> 20) [NEW_CONTENT] [ 9] 30 new quiz questions (227 -> 257) [NEW_CONTENT] [ 6] Docker sandbox isolation guide [NEW_CONTENT] [ 1] README updated [MAINTENANCE] -
切り口を尋ねます。
- 自動(最もスコアの高い項目をフックにする)
- フックにする項目をユーザーが選択
- カスタムの切り口(ユーザーがテーマを指定)
-
対象読者を尋ねます。
devs(技術的な詳しさを重視)tech-leads(影響を重視)general(わかりやすい表現)all(デフォルト、バランス重視)
-
主な注目点を尋ねます。
- 自動(スコアが最も高い項目)
- ユーザーがリストから選択
-
選択内容を確認し、ステップ 5 に進みます。
ステップ 5:スコアを算出して選択する
各エントリーのスコアを算出します。
score = (category_weight * 3)
+ (has_number * 2)
+ (named_source * 1)
+ (new_file * 1)
+ (min(impact_files, 3))
+ (breaking * 2)
スコア上位 3~4 件のエントリーを選択します。最も高いスコアの項目をフックの文言にします。
すべてのスコアが 3 未満の場合:「このバージョンではソーシャルメディア向けコンテンツは推奨されません。生成するには --force を使用してください。」と出力して終了します(--force が指定されている場合を除く)。
ステップ 6:コンテンツを生成する
リクエストされた各形式(デフォルト:4 種類すべて)と言語(デフォルト:両方)について、次の手順を実行します。
assets/から対応するテンプレートを読み込みます- スコア付けして変換したエントリーを使って、テンプレートのフィールドを埋めます
- tone-guidelines.md の品質チェックリストを適用します
リンク:
| 形式 | リンク先 |
|---|---|
| ランディングサイトの URL | |
| GitHub リポジトリの URL | |
| Newsletter | 両方(ランディングサイト + GitHub) |
| Slack | GitHub リポジトリの URL |
URL:
- ランディングサイト:
https://florianbruniaux.github.io/Codex-ultimate-guide-landing/ - GitHub:
https://github.com/FlorianBruniaux/Codex-ultimate-guide
ステップ 7:出力する
生成した各投稿を、形式と言語を示すラベル付きのフェンス付きコードブロックで表示します。
## LinkedIn (FR)
```text
[content]
`` `
## LinkedIn (EN)
```text
[content]
`` `
## Twitter/X (FR)
```text
[content]
`` `
...
--save フラグが指定されている場合:すべての出力を、バージョンの場合は claudedocs/social-posts/YYYY-MM-DD-vX.Y.Z.md に、週の場合は claudedocs/social-posts/YYYY-MM-DD-week.md に書き込みます。claudedocs/social-posts/ ディレクトリが存在しない場合は作成します。
エラー処理
| エラー | 応答 |
|---|---|
| 引数がない | 使用方法ブロックを表示 |
| 無効な引数 | 例を含む使用方法ブロックを表示 |
| バージョンが見つからない | 直近 5 件のバージョンを表示し、latest を提案 |
| 対象の週にエントリーがない | 最後のリリースの日付を表示し、バージョンを提案 |
| すべてのエントリーが MAINTENANCE(スコア 0) | 「ソーシャルコンテンツは推奨されません。上書きするには --force を使用してください。」 |
| CHANGELOG.md が見つからない | 「CHANGELOG.md がプロジェクトルートに見つかりません。」 |
参照ファイル
references/tone-guidelines.md- DO/DON'T ルール、絵文字の使用数、言葉遣いreferences/changelog-parsing-rules.md- CHANGELOG の形式、抽出、スコアリングアルゴリズムreferences/content-transformation.md- 技術的な内容からユーザー価値へのマッピング(30 件以上)assets/linkedin-template.md- 約 1300 文字、フック + 箇条書き + CTA + ハッシュタグassets/twitter-template.md- 280 文字の単独投稿または 2~3 件のツイートスレッドassets/newsletter-template.md- 約 500 語、構成されたセクションassets/slack-template.md- コンパクトで、絵文字を多用した Slack 形式examples/version-output.md- v3.20.5 の出力例全体examples/week-output.md- 2026-01-27 の週の出力例全体
ヒント
/releaseの直後に/guide-recap latestを実行して、ソーシャル投稿を準備します- スコアリングを把握するため、最初の数回は
--interactiveを使用します - 特定の出力を 1 つだけ必要とする場合は、
--format=linkedin --lang=frを使用します --saveの出力はclaudedocs/の規約により Git の追跡対象外です- 投稿前に内容を確認し、個別に調整してください(これらは下書きであり、最終稿ではありません)