はじめに
Claude Code には Slack 連携機能があり、Slack 経由でエージェントを操作することが可能です。今回は単なるチャットだけでなく、実際の開発タスク(コードの修正や Pull Request の作成など)を Slack から指示した際にどのような挙動となるのか、その実用性を検証してみました。
利用環境
- Slack: Freeプラン
- Claude: Proプラン(個人)
- リポジトリ: GitHub (Free)
セットアップ
まずは Slack App Directory から Claude アプリをインストールします。
アプリの権限許可
インストールを進めると、アプリがアクセスできる権限の許可を求められます。
Claude Code は単なるチャットボットではなく、Slack の会話履歴を参照して動くため、ここでそれらの権限を与える必要があります。
Claude アカウントの接続
アプリをインストールしたら、Slack の App 欄にある Claude を開きます。Connect Account ボタンから Claude アカウントを連携します。
Claude Code on the web をセットアップ
Slack から Claude Code の処理をルーティングした際には、Claude Code on the web を利用して実行されるため、あらかじめ Web版を利用できる状態にしておく必要があります。
以下の公式ドキュメントのとおり、GitHub に Claude アプリをセットアップしてください。
アプリの設定
アプリのホームタブを開くと、いくつか設定をすることができます。利用する Model の設定や、Routing Mode の設定ができます。Routing Mode は Code only と Code + Chat を選択できます。
-
Code only: すべてのメンションをコード実装タスクとして扱う -
Code + Chat: メッセージの文脈から、実装タスクか通常のチャットかを自動で判断する
また、Connect to Slack Connector については、enhanced integration となっていますが、今回の利用用途では設定しなくても動きました。必要に応じてセットアップしておくと良いと思います。
チャンネルに Claude を招待
接続が完了したら、利用したいチャンネルで Claude を招待してください。
直接 @Claude のようにメンションして招待しても、/invite @Claude で招待しても OK です。
Claude アプリでできること
設定が完了した Claude アプリには、大きく分けて2つの使い方があります。
Claude とチャットする
Web版 Claude や Desktop 版 Claude のように、対話形式で質問や相談ができます。
これは従来の Slack アプリと同じような使い方です。
★Claude にコードの実装を依頼する
こちらが今回メインで利用したい機能です。
単に会話するだけでなく、Claude Code on the web で Claude Code が起動し、GitHub リポジトリにアクセスしてコードを修正したり、Pull Request を作成したりします。
具体的なユースケースとしては、バグの調査と修正やデバッグ、コードレビューと修正などに役立ちそうです。
特に Slack 上のメッセージをそのままコンテキストとして利用できることが強力に感じました。
Slackからコード修正を依頼してみる
セットアップが完了したので、実際に Slack から指示を出して、ソースの修正を行ってもらいます。
対象のリポジトリの認識
使い始める前に、Claude はどうやって対象のリポジトリを認識するのだろう?と疑問に思いました。
任意のチャンネルで @Claude にメンションして試してみます。
@Claude 実装内容について、解説してください。
すると、メッセージからはリポジトリが特定できないため、リポジトリの選択を促すメッセージが返ってきました。
リポジトリを選択すると Claude Code が起動しました。
メッセージにリポジトリを特定できるような文字列が含まれていた場合は、このリポジトリだよね?と確認してくれるようでした。
ここで Use this repo ボタンを押すと、このリポジトリで Claude Code が実行されました。Set as default for this channel オプションを選ぶと、このチャンネルのデフォルトリポジトリとして設定できるようです。
少し待つと、質問した内容の回答として、実装内容やプロジェクトの構造についてメッセージが返ってきました。
リポジトリの中身を見て、回答が生成されることを確認できますね。
コードの修正依頼
Slack でいくつかメッセージを積んだ後に、対応を依頼してみました。
message: プロジェクト構造をドキュメントに記載しておいたほうが良いと思うなぁ
message: ドキュメントとして記載するなら、README.md ファイルがいいよね。
message: あまり、詳細に書くと認識しにくくなったり、メンテナンスコストの増大につながるから、必要最低限にしたい。具体的には、domain, usecase ディレクトリくらいで良いと思う。
message: @Claude 対応をお願いします。
これらのメッセージを理解して、対応してくれたようです。しっかり、メッセージの意図を理解してくれてますね。
Pull request を作成する
対応が完了すると、作業ログを確認できる View session と、GitHub へ移動する Create PR ボタンが表示されます。 Pull request の内容はすべて自動入力されているため、あとは作成ボタンを押すだけで完了です。
Slack から issue の対応を依頼する
GitHub リポジトリにある issue の一覧を取得し、その中から特定のタスクを選んで修正を依頼してみます。
issue 一覧の取得
まずは、現在のアクティブな issue を確認します。
すると、Claude が GitHub にアクセスし、アクティブな issue 一覧を表示してくれました。
特定の issue の対応を指示
今回は #25 の unit test の実行を npm run test で実行できるようにする という対応を指定して、依頼します。
これだけで、Claude は issue の詳細(タイトルや本文)を読み取り、必要な実装を開始します。
Pull request の内容はすべて自動入力されているため、あとは作成ボタンを押すだけで完了です。
上手に使うための Tips
実際に使ってみて感じた、うまく扱うためのコツをいくつか紹介します。
会話はスレッドで行う
Claude Code とのやり取りは、基本的に Slack のスレッド内で行うのがベストプラクティスです。
同じ課題についての会話はスレッド内で行うことで、スレッド内の会話履歴を効率よくコンテキストとして認識させることができます。
詳細な実行ログは Claude Code on the web で確認する
Slack 上に表示される実行結果は、あくまで要約された内容です。
具体的にどんなコマンドを実行したのか?、テストでどんなエラーログが出たのか?といった詳細な情報を確認したい場合は、メッセージに含まれる View session ボタンをクリックして、ブラウザ上の Claude Code 画面を確認することができます。
まとめ
Slack でどのような実装にするか?このエラーの原因はここらへんかな?など、チームメンバーで議論しながら、調査・修正することがあるかと思います。その際に、議論の内容をそのままコンテキストに利用できる点が、便利に感じました。
また、なにか作ろう!と思っても、PC を開くまで億劫に感じる場合に、スマホの Slack からサクッと指示できる点は、個人的にはいいなぁと思いました。
その他、アイディアしだいで色々な使い方があるかと思いますので、ぜひ試してみてください。
参考










