mcpField
G
github-release

github-release

github.com/jezweb開発1.1k1.3k 回インストール3 週間前に更新
リポジトリ

github-release について

プロジェクトの公開前チェックとGitHubリリースを支援するスキルです。`gh`、`gitleaks`、Gitリモートを設定済みのメンテナー向けに、確認作業とタグ付け・公開を段階的に案内します。

主な機能

  1. 01リポジトリ内の秘密情報をスキャン
  2. 02個人的な作業ファイルを確認・削除
  3. 03ライセンス、README、除外ルールを検証
  4. 04ビルドと依存関係の監査を実行
  5. 05バージョンタグを作成して変更をプッシュ
  6. 06GitHubリリースを作成

活用シーン

  1. 01公開前にリポジトリの機密情報を点検
  2. 02プロジェクトを整えリリース要件を確認
  3. 03バージョンにタグを付けGitHubで公開

インストール

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

$npx skills add https://github.com/jezweb/claude-skills --skill github-release

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

同梱ファイルreferences/release-workflow.mdreferences/safety-checklist.md

詳細

GitHub リリース

プロジェクトをサニタイズして GitHub にリリースします。2 段階のワークフローです。まず安全性を確認し、その後タグを付けて公開します。

前提条件

  • gh CLI がインストールされ、認証済みであること(gh auth status)
  • シークレットのスキャン用に gitleaks がインストールされていること(brew install gitleaks または GitHub からダウンロード)
  • リモートが設定された Git リポジトリ

ワークフロー

フェーズ 1:サニタイズ

公開リリースの前に、以下のチェックを実行してください。問題が見つかった場合は中止します。

1. シークレットをスキャンする(ブロッカー)
gitleaks detect --no-git --source=. --verbose

シークレットが見つかった場合:中止してください。シークレットを削除し、環境変数に移してください。git log -S "secret_value" で Git 履歴を確認します。履歴に含まれている場合は、BFG Repo-Cleaner を使用してください。

gitleaks がインストールされていない場合は、手動で確認します。

# Check for .env files
find . -name ".env*" -not -path "*/node_modules/*"

# Check config files for hardcoded secrets
grep -ri "api_key\|token\|secret\|password" wrangler.toml wrangler.jsonc .dev.vars 2>/dev/null
2. 個人的なファイルを削除する

公開すべきでないセッション/計画ファイルがないか確認し、削除します。

  • SESSION.md — セッション状態
  • planning/、screenshots/ — 作業ディレクトリ
  • test-*.ts、test-*.js — ローカルテストファイル

削除するか、.gitignore に追加してください。

3. LICENSE を検証する
ls LICENSE LICENSE.md LICENSE.txt 2>/dev/null

存在しない場合は作成してください。リポジトリの公開設定を確認します(gh repo view --json visibility -q '.visibility')。公開リポジトリには MIT を使用してください。非公開リポジトリの場合は、代わりに独自ライセンスを検討してください。

4. README を検証する

README が存在し、基本的なセクションが含まれていることを確認します。

grep -i "## Install\|## Usage\|## License" README.md

セクションが不足している場合は、リリース前に追加してください。

5. .gitignore を確認する

必須のパターンが含まれていることを確認します。

grep -E "node_modules|\.env|dist/|\.dev\.vars" .gitignore
6. ビルドテスト(ブロッカーではありません)
npm run build 2>&1
7. 依存関係の監査(ブロッカーではありません)
npm audit --audit-level=high
8. サニタイズのコミットを作成する

サニタイズ中に変更を加えた場合:

git add -A
git commit -m "chore: prepare for release"
フェーズ 2:リリース
1. バージョンを決定する

現在のバージョンを package.json で確認するか、ユーザーに確認します。バージョンの先頭に v が付いていることを確認してください。

2. タグが存在しないことを確認する
git tag -l "v[version]"

すでに存在する場合は、削除して作り直すか、別のバージョンを使用するかをユーザーに確認してください。

3. リリース内容を表示する
LAST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "")
if [ -z "$LAST_TAG" ]; then
  git log --oneline --no-merges HEAD | head -20
else
  git log --oneline --no-merges ${LAST_TAG}..HEAD
fi
4. タグを作成してプッシュする
git tag -a v[version] -m "Release v[version]"
git push origin $(git branch --show-current)
git push origin --tags
5. GitHub リリースを作成する
gh release create v[version] \
  --title "Release v[version]" \
  --notes "[auto-generated from commits]"

プレリリースには --prerelease を追加します。ドラフトには --draft を追加します。

6. 報告する

ユーザーに以下を提示します。

  • リリース URL
  • 次の手順(該当する場合は npm publish、告知)

参照ファイル

内容読み込むファイル
詳細な安全性チェックreferences/safety-checklist.md
リリースの手順references/release-workflow.md

コメント