㊙️

macでClaude code actionをmaxプランで利用する

に公開

さっそく手順

Claude maxによるログイン

claude codeを起動する

/status

を入力し、claude max accountであることを確認

Account • /login
  L Login Method: Claude Max Account
  L Email: ***

ここでログインできていない人は、/loginからclaude maxにログインすること

github applicationのインストール

/install-github-app

を入力するとブラウザでgithubにアクセスするので、サインインし、installする
コンソール側ではapi keyが求められるが、無視してenterを連打する
この時、インストールされませんでしたという文言が出るが、スルーします

claudeトークンを取得

keychainを起動し、claudeと検索。
Claude Code-credentialsが表示されるので、右クリックし、パスワードをクリップボードに保存を選択し、メモ帳なんかに貼り付けておく

設定

[設定] > [シークレットと変数] > [アクション] を押下し、

new repository secretから

以下の環境変数と先ほどメモに貼り付けた値をそれぞれペアで入力する

  • CLAUDE_ACCESS_TOKEN
  • CLAUDE_REFRESH_TOKEN
  • CLAUDE_EXPIRES_AT

ワークフローの作成

以下を該当のリポジトリに追加してpushする

name: Claude PR Assistant

on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]
  issues:
    types: [opened, assigned]
  pull_request_review:
    types: [submitted]

jobs:
  claude-code-action:
    if: |
      (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
      (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||
      (github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude')) ||
      (github.event_name == 'issues' && contains(github.event.issue.body, '@claude'))
    runs-on: ubuntu-latest
    permissions:
      contents: read
      pull-requests: read
      issues: read
      id-token: write
    steps:
      - name: Checkout repository
        uses: actions/checkout@v4
        with:
          fetch-depth: 1

      - name: Run Claude PR Action
        uses: grll/claude-code-action@beta
        with:
          use_oauth: true
          claude_access_token: ${{ secrets.CLAUDE_ACCESS_TOKEN }}
          claude_refresh_token: ${{ secrets.CLAUDE_REFRESH_TOKEN }}
          claude_expires_at: ${{ secrets.CLAUDE_EXPIRES_AT }}
          
          timeout_minutes: "60"

動作確認

issueやPRで@claudeを呼び出してコメントするだけです!
上のコードではissueの作成権限が与えられておらず、コメントしてくれるだけでした...
ここら辺の権限周りも深掘り隊ところ!

そもそも規約は大丈夫なのか?

こちらの情報によると一般的な個人利用程度なら大丈夫だそう
https://x.com/ni_ch/status/1928221679546945574

Discussion