【Claude Codeチャレンジ日誌1】WSL + Claude Code + GitHub 自動プッシュ環境構築手順書
最近、Claude Code入門したら感動しすぎてはまったので、いろいろチャレンジした内容を日誌にしていこうかと思います。
まずは、Claude code上からgithubに自動Pushしたくなったので環境構築したときの手順を整理してみました。
参考になれば幸いです。
概要
Windows WSL環境でClaude Codeを使い、自然言語の指示だけでGitHubへの自動プッシュを実現する手順書です。
最終目標: 「このディレクトリをGitリポジトリとして初期化して、GitHubに新しいリポジトリを作成してプッシュしてください」という指示だけで、すべて自動実行される環境を構築します。
前提条件
- Windows 10/11 with WSL2 (Ubuntu)
- Claude Code がインストール済み
- Node.js, npm がインストール済み
- GitHubアカウント
- Claude Max または Anthropic Console アカウント
ステップ 1: Git ユーザー設定(事前準備)
1.1. Gitユーザー情報の設定
SSH鍵生成や認証の前に、Gitのユーザー情報を設定します。これにより、後でコミット時のエラーを防げます。
# GitHubユーザー名の設定(あなたのGitHubアカウント名)
git config --global user.name "<ユーザ名>"
# メールアドレスの設定(GitHubアカウントのメールアドレス)
git config --global user.email "your_email@example.com"
# または、プライバシー保護のためGitHubのno-replyメールアドレスを使用
git config --global user.email "<ユーザ名>@users.noreply.github.com"
1.2. 設定の確認
# 設定されたユーザー情報を確認
git config --global --list | grep user
# 期待される出力:
# user.name=<ユーザ名>
# user.email=your_email@example.com
ステップ 2: SSH鍵の生成(GitHub CLI使用)
2.1. GitHub CLI でSSH鍵の自動生成
gh auth login
2.2. 初期設定での選択
? What account do you want to log into? GitHub.com
? What is your preferred protocol for Git operations on this host? SSH
? Generate a new SSH key to add to your GitHub account? Yes
? Enter a passphrase for your new SSH key (Optional) [パスフレーズ入力またはEnter]
? Title for your SSH key: GitHub CLI
? How would you like to authenticate GitHub CLI?
ここで一旦ストップ! 認証方法選択の前に、生成されたSSH鍵をGitHubサイトで手動登録します。
2.3. 生成されたSSH鍵の確認
# 生成された公開鍵の内容を表示
cat ~/.ssh/id_ed25519.pub
# 出力例(この内容をコピー):
# ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx your_email@example.com
2.4. WSLでクリップボードコピー
# Windowsクリップボードにコピー
cat ~/.ssh/id_ed25519.pub | clip.exe
ステップ 3: GitHubサイトでSSH鍵の登録
3.1. GitHubのSSH設定ページにアクセス
https://github.com/settings/ssh
3.2. SSH鍵の追加
- 「New SSH key」をクリック
-
設定内容:
-
Title:
WSL Ubuntu - GitHub CLI
-
Key type:
Authentication Key
- Key: ステップ2.3でコピーした公開鍵(ssh-ed25519で始まる内容)を貼り付け
-
Title:
- 「Add SSH key」をクリック
ステップ 4: Personal Access Token の作成
4.1. トークン作成ページにアクセス
https://github.com/settings/tokens
4.2. 新しいトークンを作成
- 「Generate new token」→「Generate new token (classic)」
-
設定内容:
-
Note:
GitHub CLI - WSL
-
Expiration:
90 days
-
必須スコープ:
✅ repo (Full control of private repositories) ✅ read:org (Read org and team membership) ✅ admin:public_key (Fully manage public keys) ✅ workflow (Update GitHub Action workflows) ✅ gist (Create gists)
-
Note:
- 「Generate token」をクリック
-
重要: トークン(
ghp_xxxxx...
)をコピーして保存
ステップ 5: GitHub CLI 認証の完了
5.1. 中断していた認証プロセスの継続
ステップ2で中断していたgh auth login
に戻ります:
? How would you like to authenticate GitHub CLI? Paste an authentication token
「Paste an authentication token」を選択
5.2. トークンの貼り付け
? Paste your authentication token: [ステップ4.2でコピーしたトークンを貼り付け]
5.3. 認証成功の確認
成功すると以下のような表示が出ます:
✓ Authentication complete.
- gh config set -h github.com git_protocol ssh
✓ Configured git protocol
✓ SSH key already existed on your GitHub account: /home/[username]/.ssh/id_ed25519.pub
✓ Logged in as [あなたのGitHubユーザー名]
この時点で完了しているもの:
- Gitユーザー設定 ✅
- SSH鍵ペア(秘密鍵・公開鍵)の生成 ✅
- 公開鍵のGitHubアカウントへの手動登録 ✅
- Personal Access Tokenの作成 ✅
- GitHub CLI認証の完了 ✅
ステップ 6: 設定の確認とテスト
6.1. GitHub CLI認証状態の確認
gh auth status
# 期待される出力:
# github.com
# ✓ Logged in to github.com as [username] (~/.config/gh/hosts.yml)
# ✓ Git operations for github.com configured to use ssh protocol.
# ✓ Token: ghp_************************************
# ✓ Token scopes: admin:public_key, gist, read:org, repo, workflow
ステップ 7: Claude Code の起動と認証
7.1. Claude Code の起動
# Claude Codeを起動
claude
ステップ 8: 実際の使用例(成功実績)
8.1. 基本的な自然言語指示
プロジェクトディレクトリで以下のような指示を出すだけで、すべて自動実行されます:
claude
# Claude Code内で以下の指示:
> このディレクトリをGitリポジトリとして初期化して、GitHubに新しいリポジトリを作成してプッシュしてください
8.2. Claude Code が自動実行する内容
実際の実行ログから、以下の処理が自動で行われることが確認されています:
-
Git リポジトリの初期化:
git init
-
ユーザー設定は既に完了済み:
ステップ1で事前に設定したため、「Author identity unknown」エラーは発生しません ✅ -
初期コミットの作成:
git add -A && git commit -m "Initial commit"
-
GitHubリポジトリの作成:
gh repo create [folder-name] --public
-
SSH接続の問題解決:
ssh-keyscan github.com >> ~/.ssh/known_hosts
-
リモート追加とプッシュ:
git remote add origin git@github.com:[username]/[repo-name].git git push -u origin master
実証済みのエラー解決能力
実際の使用で以下のエラーが発生しても、Claude Code が自動で解決することが確認できました:
自動解決されるエラー例
-
SSH Host Key 未認証:
ssh-keyscan
で自動解決 ✅ - リモートURL の不整合: HTTPS ↔ SSH の自動切り替え ✅
- リポジトリ名の重複: 既存リポジトリの確認と適切な処理 ✅
事前設定により回避されるエラー
- Git ユーザー設定不備: ステップ1で事前設定済みのため発生しない ✅
重要な改善点: ステップ1でGitユーザー設定を事前に行うことで、「Author identity unknown」エラーを完全に回避可能。
成功確認チェックリスト
以下がすべて ✅ になれば完全セットアップ完了です:
- Gitユーザー設定が完了している(user.name, user.email)
- SSH鍵がGitHubに登録されている
-
gh auth status
が成功する -
claude
コマンドでClaude Codeが起動する - 自然言語指示でGitHubプッシュが成功する
まとめ
この手順により、以下が実現できます:
✅ 完全な自然言語操作: 技術的なコマンドを覚える必要なし
✅ 自動エラー解決: SSH認証エラーなども自動で修正
✅ GitHubワークフロー自動化: リポジトリ作成からプッシュまで一貫して自動実行
✅ 高度な機能: プルリクエスト、ブランチ管理、Issue対応も自然言語で操作可能
Discussion