with one click
release-zenn
MulmoScript から Zenn 記事を生成する。/release-script 完了後に実行。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
MulmoScript から Zenn 記事を生成する。/release-script 完了後に実行。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
| name | release-zenn |
| description | MulmoScript から Zenn 記事を生成する。/release-script 完了後に実行。 |
| allowed-tools | Read, Write, Edit, Glob, Grep, Bash, AskUserQuestion |
| argument-hint | <version> (例: 1.0.11) |
バージョン $ARGUMENTS の Zenn 記事を MulmoScript から生成する。
docs/release_notes/v$ARGUMENTS/release_v<version>_script.json が作成済みであることdocs/release_notes/v$ARGUMENTS/youtube_v$ARGUMENTS_ja.md と _en.md に YouTube URL が記録済みであることZENN_CONTENT_DIR が設定されていること(zenn-content リポジトリのパス)source .env 2>/dev/null || true
echo "${ZENN_CONTENT_DIR:?ZENN_CONTENT_DIR is not set}"
設定されていない場合は STOP してユーザーに設定を依頼する。
mulmo markdown docs/release_notes/v<version>/release_v<version>_script.json -o docs/release_notes/v<version>/output/
生成物: docs/release_notes/v<version>/output/release_v<version>_script.md
ls "$ZENN_CONTENT_DIR/articles/"*mulmocast-release*.md
最新の記事を読み込み、構造(フロントマター、:::message、見出し構成、動画リンク)をテンプレートとして使用する。
grep -A2 '## URL' docs/release_notes/v<version>/youtube_v<version>_ja.md
grep -A2 '## URL' docs/release_notes/v<version>/youtube_v<version>_en.md
URL が未登録の場合: ## URL セクションがない、または URL が空の場合は、「動画で見る」セクションにプレースホルダー((YouTube アップロード後に URL を追記))を記載して先に進む。ユーザーから URL を受け取った後に記事ファイルと YouTube メタデータファイルの両方を更新する。
mulmo markdown の出力を以下のルールで編集する(docs/mulmocast-article-guide.md 準拠):
<div style='display: flex; ...'>...</div> ブロックをすべて除去する。中の見出しの扱い:
| スライド種別 | 判別方法 | 見出しの扱い |
|---|---|---|
| タイトルスライド | # 🎉 MulmoCast v... を含む | 中の # 見出しを記事の h1 として残す |
| クロージングスライド | # Thank You! を含む | div ごと削除(ナレーションテキストのみ残す) |
| その他の markdown スライド | 上記以外 | ナレーションテキストと内容が重複する場合は div ごと削除 |
注意: 同じスライドが type: beat 参照で複数回出力される場合がある(例: タイトルスライドが2回)。重複する div はすべて削除する。
mulmo_credit.png を参照する画像行を除去する。
画像ディレクトリ名: release_v<version>_script(バージョンのドットをアンダースコアに変換)
変更前: 
変更後: 
Beat N ではなくファイル名ベースに変更する/images/release_v<version>_script/ファイル名.png 形式フロントマターの直後に以下を追加:
:::message
**この記事について**
この記事は、[MulmoCast](https://mulmocast.com)を活用して、MulmoScriptから動画とテキストを同時生成したガイドです。動画とテキストの両方で同じ内容をご覧いただけます。動画で見たい方は記事内のリンクからご覧ください。
:::
ナレーションの番号付け(「1:」「2:」「3:」等)を ## 1. 機能名 の見出しに変換し、本文側の 1: 2: 3: プレフィックスは削除する。
NG(変換漏れ):
## 1. 新しいAIモデル
1:19種類のAIモデルを新たに利用可能にしました。
OK(変換後):
## 1. 新しいAIモデル
19種類のAIモデルを新たに利用可能にしました。
過去のリリース記事でも変換漏れが発生していたので、保存前に grep -nE "^[1-9]:" <記事ファイル> を実行してプレフィックスが残っていないか確認すること。
記事末尾に YouTube リンクを追加:
## 動画で見る
**日本語版**
https://youtu.be/<JA_URL>
**英語版**
https://youtu.be/<EN_URL>
---
title: "MulmoCast v<version> リリース"
emoji: "🎉"
type: "idea"
topics: [mulmocast, <リリース固有のトピック3〜4個>]
published: true
publication_name: singularity
---
重要: cp images/*.png で全コピーしてはいけない。Markdown 一覧スライドへの構成変更などで「ソースには残っているが記事では使わない」画像が必ず混じるため、未使用画像が zenn-content 側に堆積する。記事で実際に参照されているファイルだけコピーすること。
ARTICLE="$ZENN_CONTENT_DIR/articles/<YYYY-MM-DD>-mulmocast-release_v<version>.md"
DEST="$ZENN_CONTENT_DIR/images/release_v<version>_script/"
mkdir -p "$DEST"
# 記事内の /images/release_v<version>_script/<ファイル名> 参照を抽出してコピー
grep -oE "/images/release_v<version>_script/[^)\"' ]+" "$ARTICLE" \
| awk -F/ '{print $NF}' | sort -u \
| while read name; do
cp "docs/release_notes/v<version>/images/$name" "$DEST"
done
# 確認: コピー後の DEST に未使用ファイルが残っていないか
ls "$DEST"
すでに過去リリースで未使用画像をコピーしてしまっている場合は、削除してから本ステップを再実行する。
date '+%Y-%m-%d' # ファイル名用の日付を取得
保存先: $ZENN_CONTENT_DIR/articles/<YYYY-MM-DD>-mulmocast-release_v<version>.md
バージョンのドットをアンダースコアに変換(例: 1.0.11 → v1_0_11)。
zenn-content ディレクトリでプレビューサーバーを起動する:
cd "$ZENN_CONTENT_DIR" && npx zenn preview
プレビュー URL をユーザーに伝え、ブラウザで確認してもらう:
http://localhost:8000/articles/<YYYY-MM-DD>-mulmocast-release_v<version>
ユーザーの確認が取れるまで待つ。修正依頼があれば対応する。
生成した記事のファイルパス、コピーした画像数を報告する。
ZENN_CONTENT_DIR は環境変数から取得 — ハードコード禁止mulmo markdown の出力をベースに編集 — ゼロから書かないリリースノートとX投稿ドラフトからMulmoScript(リリースノート動画用)を生成する。/release-xpost 完了後に実行。
X投稿ドラフトから Discord 向けメッセージを生成し webhook で投稿する。/release-xpost 完了後に実行。
リリースノート作成。前回リリース以降の全PRを調査し、PR要約とリリースノートを生成する。
リリースワークフロー全体をガイド。ドラフト一括作成 → リリース PR マージ → 公開アクション一括実行 → 後処理の順に進行。
QA テストスイートを作成する。Playbook の知見を活用して CDP 経由の Playwright テストを生成。
YouTube アップロード用のメタデータ(タイトル・説明文)を生成する。/release-script 完了後に実行。