cofounder-repo-setup について
cofounder-repo-setupは、GH CLIを使ってローカルのGitリポジトリを初期化し、GitHubリモートを作成または接続するスキルです。デバイスコード認証を案内し、設定前にoriginリモートの有無を確認します。
主な機能
- 01ローカルGitリポジトリの初期化
- 02GitHubリモートの作成または接続
- 03デバイスコードによる認証
- 04既存のoriginリモートの確認
活用シーン
- 01新規プロジェクトのGit設定
- 02対応するGitHubリポジトリの作成
- 03ブラウザーを開かないGH CLI認証
- 04既存のGitHubリポジトリへの接続
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ locaweb/ cofounder --skill cofounder-repo-setupインストール後、Claude Code で/cofounder-repo-setupを入力して読み込まれたか確認します。
同梱ファイルscripts/repo-init.sh
詳細
リポジトリのセットアップ
ローカルの git リポジトリを初期化し、すべての環境で確実に動作するデバイスコード認証を使って、GH CLI で対応するリモートリポジトリを GitHub に作成します。
前提条件
最初に computer-setup スキルを実行する必要があります。このスキルによって gh と git がインストールされます。
続行するには GitHub アカウントが必要です。ユーザーがアカウントを持っていない場合は、作成方法を案内してください。
- https://github.com/ にアクセスします。
- Sign up(または、ソーシャルログインの場合は Continue with Google)をクリックします。
- 画面の案内に従い、メールアドレスを確認します。メールアドレスが確認されていないと、リポジトリの作成に失敗します。
サインアップ後に二要素認証を有効にすることをおすすめします。詳しくは、GitHub でのアカウント作成をご覧ください。
認証
デバイスコードフロー
gh auth status を実行し、ユーザーが認証済みと表示されるかどうかを確認します。
未認証の場合は、次を実行します。
GH_FORCE_TTY=1 NO_COLOR=1 GH_PROMPT_DISABLED=1 gh auth login --hostname github.com --git-protocol https --scopes "repo,read:org,workflow" > /tmp/gh-auth.log 2>&1 & sleep 3 && cat /tmp/gh-auth.log
ログファイルの出力をそのままユーザーに表示し、デバイスコード(XXXX-XXXX のような短い英数字の文字列)を探すよう案内します。これは GitHub OAuth デバイスフロー用の一時的な使い捨てデバイスコードであり、長期間有効な認証情報ではありません。ユーザーはターミナルの出力から直接コードを読み取り、自分で https://github.com/login/device に入力します。たとえば、次のように案内します。
GitHub へのログインが必要です!
上記の出力から、1 回限りのコード(形式:
XXXX-XXXX)を探してください。 ブラウザーで https://github.com/login/device を開き、コードを入力してください。
ブラウザーでの認証を完了し、完了したら確認するようユーザーに伝えます。
認証の確認
ユーザーから完了の確認を受けた後、次を実行して確認します。
gh auth status
リポジトリの初期化
セットアップ一式
初期化スクリプトを実行する前に、リモートがすでに設定されているか確認してください。
git remote get-url origin 2>/dev/null
origin がすでに設定されている場合、リポジトリの設定は完了しています。名前や公開設定をユーザーに尋ねず、初期化スクリプトも実行しないでください。
リモートが設定されていない場合は、次の情報をユーザーに尋ねます。
- リポジトリ名 — デフォルト:現在のフォルダー名。
- 公開設定 —
private(デフォルト)またはpublic。
次に初期化スクリプトを実行します。このスキルに含まれるスクリプトは scripts/repo-init.sh にあります。これは、この SKILL.md が置かれているディレクトリからの相対パスです。現在の作業ディレクトリではなく、スキル自体のディレクトリを基準に見つけて、bash で実行してください。
bash <this-skill-dir>/scripts/repo-init.sh <repo-name> [private|public]
スクリプトは次の処理を行います。
.git/が存在しない場合、ローカルの git リポジトリを初期化します。- リポジトリにコミットがない場合、空の初期コミットを作成します。
originがローカルですでに設定されている場合、リモートの作成をスキップします。- リポジトリがすでに GitHub に存在する場合、それを
originとして追加し、プッシュします。 - それ以外の場合、指定された名前と公開設定(デフォルト:
private)で GitHub リポジトリを作成し、それをoriginとして追加してプッシュします。
手動での手順
より細かく制御する必要がある場合は、各手順を個別に実行します。
# Initialize local repo
git init
# Create remote and link it (from the project directory)
gh repo create <repo-name> --private --source=. --remote=origin --push
重要事項
- リポジトリを作成する前に認証が必要です。
gh auth statusが失敗する場合は、最初に認証フローを実行してください。 gh auth loginでは--webフラグを使用しないでください。ブラウザーを開こうとするため、動作しない場合があります。デバイスコードフロー(--webを省略した場合のデフォルト)のほうが確実です。- デフォルトの公開設定は private です。 公開リポジトリを作成する前に、必ずユーザーに確認してください。
同梱リソース
スクリプト
scripts/repo-init.sh— ローカルの git リポジトリを初期化し、対応する GitHub リモートを 1 回の手順で作成します