release
プロジェクトのリリースを管理します。changelogの検証、gitフックのインストール、リリースの実行を行います。ユーザーが「/release」「release 1.0.5」「cut a release」などと入力した場合や、リリースプロセスについて質問した際に使用します。モデルによる自動呼び出しは行われません。
description の原文を見る
Manage releases for this project. Validates changelog, installs git hooks, and cuts releases. Use when user says "/release", "release 1.0.5", "cut a release", or asks about the release process. NOT auto-invoked by the model.
SKILL.md 本文
リリース
リリースをカット、変更ログを検証、git フックがインストールされていることを確認します。
使い方
/release 1.0.5 または /release patch (現在のバージョンからパッチを更新)
プロセス
ユーザーが /release <version> をトリガーした場合:
-
コンテキストを集める —
skills/release/scripts/release-context.sh <version>を実行します。 git フックをサイレントインストールし、必要な情報をすべて出力します:バージョン情報、 作業ディレクトリのステータス、最後のリリース以降のコミット、変更されたファイル、現在の[Unreleased]コンテンツ、スタイル参照用の前回のリリースエントリ。 -
未完了の作業をコミット — コンテキストにこのリリースに属するステージング、変更、 または未追跡ファイルが示されている場合は、まずそれらをコミットします。/commit スキルを使用するか、 適切にフォーマットされたコミットを直接作成します。
-
変更ログを書く —
[Unreleased]が空の場合は、コンテキスト出力のコミットとファイル変更を使用して 今すぐ書きます。下記の変更ログ標準に従ってください。コミット後、必要に応じてコンテキストスクリプトを再実行します。 -
リリースをカット —
scripts/release.sh <version>を実行します。これにより[Unreleased]→[X.Y.Z] - dateに改名され、新しい[Unreleased]が挿入され、package.jsonが更新され、コミットしてタグ付けされます。 -
最終変更ログを表示 —
scripts/extract-changelog.sh <version>を使用して 完全な[Unreleased]とマイナーシリーズのロールアップを出力します。 プッシュする前にユーザーに確認を求めます。 -
プッシュ — 明示的な確認後、
git push origin main --tagsを実行します。 -
CI を監視 — プッシュ後、バックグラウンド dispatch で publish ワークフローを監視するデスパッチを開始します。 dispatch モードで
interactive_shellを使用して:gh run watch $(gh run list --workflow=publish.yml --limit=1 --json databaseId --jq '.[0].databaseId') --exit-statusCI が完了したときエージェントに通知され、結果を報告する必要があります。
-
依存関係の更新をチェック — リリースをカットする前に、
sqlite-vec(およびプラットフォームパッケージ)、node-llama-cpp、better-sqlite3の更新を確認します。pnpm outdatedを実行し、 これらのパッケージで利用可能な更新を報告します。更新がある場合は、それらをピン留めして (^の範囲なし)、続行する前にテストを再実行します。
ステップが失敗した場合は停止して説明してください。強制プッシュや検証をスキップしないでください。
依存関係ポリシー
すべての依存関係は正確なバージョンにピン留めする必要があります (^ または ~ の範囲なし)。
ロックファイルは再現可能なインストールを保証します。依存関係を追加または更新するときは、
常に正確なバージョン文字列を使用してください (例: "^3.18.1" ではなく "3.18.1")。
変更ログ標準
変更ログは CHANGELOG.md に記載され、Keep a Changelog の規約に従います。
見出しの形式
## [Unreleased]— リリース間の エントリを蓄積## [X.Y.Z] - YYYY-MM-DD— リリース済みバージョン
リリースエントリの構造
各バージョンエントリは 2 つの部分に分かれています:
1. ハイライト (オプション、散文 1~4 文)
バージョン見出しの直後、### セクションの前。エレベーターピッチ -
30 秒で誰かに何を伝えるか? 重大なリリースにのみ使用; 小さなパッチの場合はスキップしてください。
## [1.1.0] - 2026-03-01
QMD は Node.js と Bun の両方で実行でき、並列コンテキストを通じて最大 2.7 倍高速な再ランキングが可能です。
GPU 自動検出は信頼できない `gpu: "auto"` を明示的な CUDA/Metal/Vulkan プローブに置き換えます。
2. 詳細な変更ログ (### Changes と ### Fixes)
### Changes
- Runtime: support Node.js (>=22) alongside Bun. The `qmd` wrapper
auto-detects a suitable install via PATH. #149 (thanks @igrigorik)
- Performance: parallel embedding & reranking — up to 2.7x faster on
multi-core machines.
### Fixes
- Prevent VRAM waste from duplicate context creation during concurrent
`embedBatch` calls. #152 (thanks @jkrems)
作成のガイドライン
- 理由だけでなく、内容も説明してください。 変更ログはユーザー向けです。
- 数字を含めてください。 「2.7 倍高速」、「17 倍少ないメモリ」。
- テーマ別にグループ化してください。ファイル別ではなく。 「パフォーマンス」ではなく「llm.ts への変更」。
- すべてのコミットをリストしないでください。 関連する変更を集約してください。
- 貢献者にクレジットを与えてください: 外部 PR の場合、箇条書きの最後に
#NNN (thanks @username)を付けてください。 リポジトリ所有者にクレジットを与える必要はありません。
含めない内容
- ユーザーに見える影響のない内部リファクタリング
- 依存関係の更新 (ユーザー向けバグ修正の場合を除く)
- CI/ツーリング変更 (リリース成果物に影響する場合を除く)
- テスト追加 (言及する価値のある修正を検証する場合を除く)
GitHub リリースノート
各 GitHub リリースは、x.x.0 に遡る マイナーシリーズ の完全な変更ログを含みます。
scripts/extract-changelog.sh スクリプトがこれを処理し、publish ワークフロー (publish.yml)
がそれを呼び出して GitHub リリースに入力します。
Git フック
pre-push フック (scripts/pre-push) は以下の場合を除き、v* タグプッシュをブロックします:
package.jsonバージョンがタグと一致しているCHANGELOG.mdにバージョンの## [X.Y.Z] - dateエントリがある- GitHub で CI が合格した (非対話型シェルで警告、ターミナルでブロック)
フックはコンテキストスクリプトによってサイレントにインストールされます。
skills/release/scripts/install-hooks.sh を使用して手動でインストールするか、
bun install (prepare スクリプト) を使用して自動的にインストールできます。
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
Source: https://github.com/tobi/qmd / ライセンス: MIT
関連スキル
agent-browser
AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。
anyskill
AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。
engram
AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。
skyvern
AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。
pinchbench
PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。
openui
OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。