5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Codeへのタスク依頼、レビュー修正依頼をGitHub上だけで完結できるようにした

5
Last updated at Posted at 2026-02-14

この記事は何

以前、Claude CodeのPluginを使ったカスタムコマンドによる並列開発ワークフローについて記事を書きました。

この記事では、create-plan(現在はcreate-issue)、exec-issuefix-review-pointという3つのカスタムコマンドを使い、複数のタスクを並列に処理する開発フローを紹介しました。

ただ、exec-issuefix-review-pointの実行はすべてローカルのターミナルから手動で行う必要があり、タスクが増えてくると、いちいちターミナルでコマンドを叩くのが面倒に感じる場面が出てきました。
レビューが終わったことに気づかないでいると、レビューの修正をさせるのにもラグが発生してしまいます。

そこで、GitHub上でラベルを付けるだけで自動的にワークフローが走るCLIツール「claude-task-worker」を作りました。

claude-task-workerとは

claude-task-workerは、GitHub IssueやPRを定期的にポーリングし、特定のラベルを検知するとClaude CLIにタスク処理を委譲するCLIツールです。

このツールは僕が作成した以下のプラグインをインストールしている環境用に実装しています。

これにより、開発者はGitHub上でラベルを付けるだけで、exec-issuefix-review-pointというスキルが自動的に実行されるようになります。ターミナルでコマンドを叩く必要がなくなり、よりシームレスな並列開発が実現できます。
また、GitHub上で操作をするだけでClaude Codeに処理を行わせることができるため、出先でスマホなどでもタスクを依頼することができます。

exec-issue, fix-review-pointについては以下をご覧ください。(既存のコードではskillsに移管しています)

ワークフローの変化

Before: すべて手動実行

以前のワークフローでは、3つのステップすべてをローカルのClaude Codeから手動で実行していました。

  1. /create-issue でGitHub Issueを作成
  2. /exec-issue <issue番号> で実装・テスト・PR作成
  3. /fix-review-point <ブランチ名> でレビューコメントへの対応

タスクごとにターミナルでコマンドを実行する必要があり、並列で処理するにはターミナルを複数開いて管理する手間がありました。

After: ラベルを付けるだけで自動実行

claude-task-workerを導入した後のワークフローでは、create-issue以外の操作はGitHub上で完結します。

  1. /create-issue でGitHub Issueを作成(ここだけローカルで実行)
  2. Issueにdev-readyラベルを付ける → exec-issueが自動実行される
  3. PRにレビューコメントを書く → ラベルに応じてfix-review-pointが自動実行される

ローカルでやることはcreate-issueによるタスクの作成だけになり、それ以降はGitHub上の操作だけでワークフローが進行します。

なぜ Claude Code on the Webを使わないのか

Claude Codeにはブラウザ上で動作する「Claude Code on the Web」も存在します。これを使えばローカル環境がなくてもタスクを実行できるのですが、今回はあえてローカルでClaude Codeを動かす方式を選びました。

理由の1つは、Claude Code on the Webではプラグインや各種設定がリポジトリ単位になるという点です。ghコマンドの認証なども同様で、ローカルにある設定をそのまま使えないケースがあります。

また、僕の場合はローカルマシン上で動作する前提のskillsも用意しているため、できるだけローカル上でClaude Codeを使いたいという事情もありました。

Claude Code on the WebからSSHでローカルマシンに接続できるようになったという話もありますが、ローカルマシンへのSSH接続を可能にするには制約も多く、設定のハードルがあります。それよりも、GitHub上のラベルをトリガーにしたシンプルなPubSub形式のワークフローのほうが、導入も運用もシンプルに済むと判断しました。

各機能の詳細

exec-issue

dev-readyラベルが付いた、自分にアサインされたIssueを定期的に監視します。該当するIssueが見つかると、以下の処理が自動的に実行されます。

  1. dev-readyラベルを削除し、in-progressラベルを追加
  2. claude -p /exec-issue <issue番号> を非同期で実行

つまり、Issueを作成してdev-readyラベルを付けるだけで、実装からPR作成までが自動で進みます。

claude-task-worker exec-issue

fix-review-point

PRに未解決のレビューコメントがあり、かつin-progressラベルが付いていないPRを定期的に監視します。該当するPRが見つかると、以下の処理が自動的に実行されます。

  1. in-progressラベルを追加
  2. claude -p /fix-review-point <ブランチ名> を非同期で実行

レビューコメントを書いてResolveせずに残しておけば、自動的にAIが修正を行ってくれます。

ここで、レビュー修正の実行モードとして2つのラベルを用意しています。

  • fix-onetime: 1回のイテレーションのみ実行する。レビューコメントに対して1度だけ修正を行う
  • fix-repeat: イテレーションをループさせる。AIによるレビュー対応を繰り返し、修正→レビュー→修正のサイクルを自動で回したい場合に使う

たとえば、軽微な修正であればfix-onetimeで十分ですが、複雑な修正でAIに何度か試行錯誤してほしい場合はfix-repeatを使うといった使い分けができます。

https://github.com/getty104/claude-code-marketplace で提供している/fix-review-pointは、タスクの終了後にレビューコメントを全てResolveし、/gemini reviewというコメントを行います。
https://developers.google.com/gemini-code-assist/docs/review-github-code?hl=ja を導入しておけば自動でAIレビューが走るため、fix-repeatをラベルとしてつけるとAIレビューがつくたびに修正が自動で入るようになります。

claude-task-worker fix-review-point

both

exec-issuefix-review-pointの両方を同時にポーリングするモードです。実際の運用では基本的にこのモードで起動しておき、IssueとPRの両方を監視し続けます。

claude-task-worker both

実際の運用フロー

実際の運用では、以下のような流れになります。

  1. ローカルのClaude Codeで/create-issueを実行し、実装タスクをGitHub Issueとして作成する
  2. 作成されたIssueにdev-readyラベルを付ける
  3. claude-task-workerがIssueを検知し、自動的に実装を開始する
  4. 実装が完了するとPRが作成される
  5. PRをレビューし、修正が必要な箇所にコメントを残す
  6. PRにfix-onetimeまたはfix-repeatラベルを付ける
  7. 未解決のコメントがあるPRをclaude-task-workerが検知し、自動的に修正を行う
  8. 修正内容を確認し、問題なければマージする

このフローを複数のIssueに対して並列で回せるので、開発のスループットが大きく向上します。

最後に

claude-task-workerを作ったことで、Claude Codeを使った並列開発ワークフローがかなり快適になりました。ローカルでやることはcreate-issueでタスクを定義するだけで、あとはGitHub上でラベルを付けるだけでワークフローが進行していきます。

AIによる開発の自動化に興味がある方は、ぜひ試してみてください。

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?