Windows(WSL2)でClaude Code GitHub ActionsをProプランで使ってみた
こんにちは、ゲームソリューション部のsoraです。
今回は、Windows(WSL2)でClaude Code GitHub ActionsをProプランで使ってみたことについて書いていきます。
APIキー利用でなくProプランで利用可能かがわからなかったのと、WSL2で試している記事が見当たらなかったため、以下の公式ページを参考に試していきます。
前提
- WSL2のインストールや設定などが済んでいること
- Claude Codeのインストールが済んでいること
Claude Code GitHub Actionsの導入
Claude Code GitHub Actionsを利用する上で、gh
コマンド(GitHub CLI)が必要なためインストールします。
sudo apt update
# ghのインストール
sudo apt install gh
# ログイン
gh auth login
? What account do you want to log into? GitHub.com
? What is your preferred protocol for Git operations on this host? HTTPS
? Authenticate Git with your GitHub credentials? Yes
? How would you like to authenticate GitHub CLI? Paste an authentication token
Tip: you can generate a Personal Access Token here https://github.com/settings/tokens
The minimum required scopes are 'repo', 'read:org', 'workflow'.
? Paste your authentication token: **************************
- gh config set -h github.com git_protocol https
✓ Configured git protocol
! Authentication credentials saved in plain text
✓ Logged in as soranoena
次に、以下コマンドでGitHubへClaudeアプリをインストールします。
claude /install-github-app
と一行で入力して実行することも可能です。
claude
/install-github-app
claude
コマンドを実行したディレクトリがGitHubで管理されている場合は、そのリポジトリに対してClaudeアプリをインストールするか、他のリポジトリにインストールするかを選択します。
現在のリポジトリへインストールしたいため、そのままEnterキーを押します。
そうするとGitHubの画面が開くため、Claudeアプリをインストールします。
次にGitHubワークフローを作成します。
今回の動作確認では片方しか使用しませんが、今後両方使用する可能性があるためチェックはそのままでEnterキーを押します。
最後にGitHubにてClaudeを利用するための認証を行います。
Macを使用していれば、この後の画面とコマンドライン側の指示に従って進めることで、Claude Code GitHub Actionsが利用できます。
ただし、WSL2においては、ここでコマンドラインに表示されたURLをコピーして、Windows側のブラウザに貼り付けて認証を進めるのですが、ブラウザ上の認証が終わってもコマンドライン上で認証コードを入力する画面に遷移せず、認証コードの入力ができませんでした。
WSL2とWindows間のポート転送設定周りを疑いましたが、以下issueにあるようにClaude Code側のバグのようです。
(v1.0.51現在)WSL2利用時の対処
先ほど記載した通りのバグがあり、進めることができません。
issueを読んでそちらに記載の対処方法で進めることで、使うことができたため、手順を記載します。
注意: 以下の手順は暫定的な方法です。今後のバージョンでは修正される可能性があります。
先ほどの手順において、ブラウザ側で表示された認証コードをコピーしておきます。
その後、一度Claude Codeを終了して、再度以下コマンドを実行して認証方法の選択まで進めます。
claude
/install-github-app
ここでサブスクリプションではなくAPIキーでの利用を選択して、先ほどコピーした認証コードを入力することで、認証が完了して先に進むことができます。
しかし、この状態ではGitHub Actionsで存在しないAPIキーを利用することになりエラーが出るため、シークレットとデフォルトで生成されたGitHub ActionsのコードのAPI部分を次のように修正します。
まずはシークレットの作成です。
GitHubの対象リポジトリで、Settings
からSecrets and variables>Actions
のRepository secrets
にて、追加されているANTHROPIC_API_KEY
を削除します。
次に、New repository secret
から以下を作成します。
- Key:
CLAUDE_CODE_OAUTH_TOKEN
- Value:
{claude setup-tokenコマンドで取得したsk-の値}
次にymlファイルの修正をします。
.github/workflows/
にある2つのファイルにて以下のように修正します。
# 変更前
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
# 変更後
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
動作確認
動作確認のために、適当なissueを作成して、@claude
をつけてtestファイルを生成するようにコメントしてみました。
するとActionsが自動で動いて、testファイルを作成してプルリクエストされていることが確認できました。
参考
最後に
今回は、Windows(WSL2)でClaude Code GitHub ActionsをProプランで使ってみたことを記事にしました。
どなたかの参考になると幸いです。