mcpField
A
autoship

autoship

github.com/vercel-labs開発161706 回インストール6 週間前に更新
リポジトリ

autoship について

autoshipは、設定したリポジトリのソフトウェアリリースを自動化するコマンドラインスキルです。AIで変更を分析してchangesetの説明を作成し、プルリクエスト、バージョン更新、npm公開を進めます。

主な機能

  1. 01リポジトリの設定と一覧表示
  2. 02コミットと差分の分析
  3. 03AIによるリリース種別の提案
  4. 04changeset説明の生成
  5. 05リリース用プルリクエストの作成とマージ
  6. 06npm公開の起動

活用シーン

  1. 01対話形式でのリリース実行
  2. 02CIでのパッチリリース自動化
  3. 03バージョンPR後のnpmパッケージ公開

インストール

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

$npx skills add https://github.com/vercel-labs/autoship --skill autoship

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
ci-integration.md
commands.md
configuration.md
templates/
automated-release.sh
setup-repo.sh

詳細

autoship によるリリースの自動化

基本的なワークフロー

すべてのリリースは、次の手順で行います。

  1. 設定:autoship add <name>(初回のみ)
  2. リリース:autoship <name>(対話形式)、または autoship <name> -t patch -y(自動)

このツールは、リリースの全工程を処理します。

  • リポジトリをクローンする
  • 変更を分析し、リリースの種類(patch/minor/major)を提案する
  • AI を活用して変更内容の説明を生成する
  • 変更セットの PR を作成してマージする
  • Version Packages PR を待機してマージする
  • npm publish を実行する

要件

autoship を使用する前に、以下を確認してください。

# GitHub CLI must be authenticated
gh auth login

# API key for AI features
export AI_GATEWAY_API_KEY="your-key"

基本コマンド

# One-time setup: add a repository
autoship add myproject
# Prompts for: owner, repo name, base branch

# List configured repositories
autoship list

# Interactive release (prompts for type and message)
autoship myproject

# Automated release (no prompts)
autoship myproject -t patch -y
autoship myproject -t minor -y
autoship myproject -t major -y

# Release with custom message (skips AI generation)
autoship myproject -t patch -m "Fixed login bug" -y

コマンドのオプション

autoship [repo]                    # Interactive repo selection if omitted
  -t, --type <type>                # Release type: patch, minor, major
  -m, --message <message>          # Custom changeset description
  -y, --yes                        # Skip all confirmations
  -h, --help                       # Show help

よく使うパターン

パッチリリースを完全に自動化する
autoship myproject -t patch -y
AI の支援による対話形式のリリース
autoship myproject
# 1. AI analyzes commits since last release
# 2. AI suggests release type (patch/minor/major)
# 3. You confirm or change the type
# 4. AI generates changeset description
# 5. You review and approve
# 6. Tool handles PR creation and merging
カスタムメッセージでリリースする
autoship myproject -t minor -m "Added new authentication providers" -y
CI/CD との統合
# In GitHub Actions or CI pipeline
export AI_GATEWAY_API_KEY="${{ secrets.AI_GATEWAY_API_KEY }}"
npx autoship myproject -t patch -y

autoship の処理内容(10 ステップ)

  1. クローン - ベースブランチからリポジトリをクローンします
  2. 分析 - 最新のバージョンタグを見つけ、コミットと差分を分析します
  3. 提案 - 変更内容に基づいて、AI がリリースの種類を提案します
  4. 生成 - AI が変更セットの説明を生成します
  5. ブランチ - 変更セットファイルを含むリリースブランチを作成します
  6. PR - 変更セットのプルリクエストを作成します
  7. 待機 - CI チェックの合格を待ちます
  8. マージ - 変更セットの PR をマージします
  9. Version PR - changesets アクションによる Version Packages PR の作成を待ちます
  10. 公開 - Version Packages PR をマージして npm publish を実行します

出力形式

autoship は、各手順を明確に示す出力を提供します。

[1/10] Cloning repository from main...
  > Repository cloned
  > Package: my-package @ 1.2.3

[2/10] Creating release branch...
  > Branch created: release/patch-1706123456789

[3/10] Generating changeset...
  > Changeset created: fluffy-pants-dance.md

...

Release Complete!
The patch release has been published.

設定

設定は ~/.autoship/config.json に保存されます。

{
  "repos": {
    "myproject": {
      "owner": "vercel-labs",
      "repo": "myproject",
      "baseBranch": "main",
      "cloneUrl": "https://github.com/vercel-labs/myproject.git"
    }
  }
}

詳細ドキュメント

リファレンス使用する場面
references/commands.mdすべてのオプションを含むコマンドの完全なリファレンス
references/configuration.md設定ファイルの形式とリポジトリのセットアップ
references/ci-integration.mdGitHub Actions と CI/CD のセットアップ

すぐに使えるテンプレート

テンプレート説明
templates/automated-release.shリリースを完全に自動化するスクリプト
templates/setup-repo.sh対話なしでリポジトリをセットアップするスクリプト
./templates/automated-release.sh myproject patch
./templates/setup-repo.sh myproject vercel-labs myproject main

トラブルシューティング

「No repositories configured」

先に autoship add <name> を実行して、リポジトリを設定してください。

「Repository not found」

利用可能なリポジトリを autoship list で確認してください。名前では大文字と小文字が区別されます。

CI チェックに失敗する

このツールは、失敗したチェックを表示します。対象のリポジトリで問題を修正してから、再試行してください。

AI による生成に失敗する

AI による生成に失敗した場合、autoship は手動入力に切り替えます。AI_GATEWAY_API_KEY が設定されていることを確認してください。

コメント