この記事について

前回までは、Claudeの新機能「Skills」について3回に分けて解説しました。Skillsを使うと、自分やチームで繰り返し行う作業の手順、判断基準、出力形式などをClaudeに覚えさせ、必要な場面で再利用できるようになります。

ただし、Claudeを活用する方法はSkillsだけではありません。Claudeには、開発環境の中で実際にファイルを編集する「Claude Code」、外部サービスや社内データと接続する「MCP」、画面を見ながら操作する「Computer Use」、複数の作業を役割分担して進める「サブエージェント」など、チャットの枠を越えて作業を進めるための機能が用意されています。

これらの機能を理解すると、Claudeの使い方は「質問を入力して回答を受け取る」だけではなくなります。

たとえば、次のような使い方が可能になります。

  • プロジェクト全体を調査し、修正対象のファイルを特定してもらう
  • コードを変更したあとに、自動でテストを実行してもらう
  • Gitの差分を確認し、変更内容を要約してもらう
  • 社内ドキュメントやデータベースを参照しながら回答してもらう
  • ブラウザ上の定型操作を画面ごと任せる
  • 調査、実装、レビューを複数のエージェントに分担させる

つまり、Claudeは単なる文章生成AIではなく、情報を読み取り、必要なツールを使い、複数の工程を続けて処理する「作業エージェント」として活用できるようになっています。

このシリーズでは、Claudeをより実践的に使いこなすために、次の3つの角度から紹介していきます。

  1. Skills以外の便利機能
  2. Claudeに意図を正確に伝えるプロンプトの書き方
  3. AI活用と相性の良い技術や設計方法

今回は、その第1回となる「便利機能編」です。

機能名だけを見ると難しく感じるものもありますが、すべてを一度に導入する必要はありません。まずは、自分が普段繰り返している作業や、時間がかかっている作業に当てはめて考えるのがおすすめです。

Claude Codeで開発作業をおまかせ

Claude Codeは、ターミナルや対応する開発環境から利用できる、エージェント型のコーディングツールです。

一般的なチャット型AIでは、コードをコピーして質問し、返ってきたコードを自分でファイルへ貼り付けるという使い方が中心でした。一方、Claude Codeはプロジェクトのディレクトリ内で動作し、必要なファイルを探し、内容を読み、変更を加え、コマンドを実行するところまで進められます。

たとえば、次のような依頼ができます。

text
このプロジェクトの認証処理を調査して、
ログイン成功からJWT発行までの流れを説明してください。
関係するファイルも一覧にしてください。

この依頼を受けたClaude Codeは、ファイル名だけで判断するのではなく、コードベースを検索しながら、Controller、Service、Security設定、JWT生成クラスなどの関連箇所を調査します。

既存コードを理解したい場合、最初から「修正して」と依頼するよりも、まず調査を依頼する方が安全です。

text
まだコードは変更しないでください。
まず原因の候補、関係するファイル、修正方針を整理してください。

このように変更前の調査を明示しておけば、Claudeがいきなり複数ファイルを書き換えることを防ぎやすくなります。

実装を任せる場合は、要件と完了条件を具体的に伝えます。

text
ユーザー登録APIにメールアドレスの重複チェックを追加してください。

条件:
- 重複している場合はHTTP 409を返す
- エラーメッセージは既存の形式に合わせる
- Service層に判定処理を置く
- 正常系と重複時のテストを追加する
- 実装後に関連テストを実行する

ここで重要なのは、「何を作るか」だけでなく、「どの状態になれば完了なのか」まで指定することです。

Claude Codeは、コードの生成以外にも、次のような作業を扱えます。

  • プロジェクト内のファイル検索
  • 既存実装の構造調査
  • バグの原因分析
  • 複数ファイルにまたがる修正
  • リファクタリング
  • テストコードの追加
  • テストやビルドコマンドの実行
  • エラーログの解析
  • Git差分の確認
  • コミット前の変更内容の要約
  • Pull Request用の説明文作成
  • ドキュメントやREADMEの更新

特に便利なのが、「変更→テスト→失敗原因の確認→再修正」という流れを続けて任せられる点です。

text
この不具合を修正してください。
修正後にテストを実行し、失敗した場合は原因を調べて再修正してください。
最後に変更内容とテスト結果をまとめてください。

従来は、人がコードを修正し、テストを実行し、ログを読み、再びコードを直す必要がありました。Claude Codeでは、この一連の反復作業をまとめて依頼できます。

ただし、Claude Codeにすべてを無条件で任せるのは危険です。AIが生成したコードは、見た目が自然でも、仕様を誤解していたり、既存設計と合っていなかったりする場合があります。

実務で使う場合は、次の流れがおすすめです。

  1. 最初に調査だけを依頼する
  2. Claudeが提示した方針を確認する
  3. 修正範囲を限定して実装を依頼する
  4. テストを実行させる
  5. Git差分を人が確認する
  6. 問題がなければコミットする

また、プロジェクト固有のルールをClaudeに伝えておくと、回答や実装の精度が上がります。

たとえば、プロジェクト内の指示ファイルに次のようなルールを記載できます。

markdown
# 開発ルール

- Java 17を使用する
- Spring Boot 3系の書き方に統一する
- Controllerに業務ロジックを書かない
- DTOとEntityを直接兼用しない
- 例外はGlobalExceptionHandlerで処理する
- テストはJUnit 5とMockitoを使用する
- 変更後は必ず関連テストを実行する

毎回同じルールをプロンプトに書かなくても、Claude Codeがプロジェクトの前提として参照できるようになります。

開発系ブログを書いている人にもClaude Codeは相性の良いツールです。

たとえば、実装が終わったあとに次のように依頼できます。

text
今回のGit差分を確認して、技術ブログ用の作業メモを作成してください。

含める内容:
- 何を実装したか
- なぜその設計にしたか
- 発生したエラー
- エラーの原因
- 解決方法
- 今後の改善点

コードを知らない読者にも伝わるように説明してください。

実際の変更内容をもとに記事の材料を整理できるため、「作業は終わったが、何をしたか思い出せない」という状態を防げます。

さらに、日々の開発終了時に次のような依頼をしておけば、学習記録や週報の作成にも利用できます。

text
今日変更したファイルとGit差分を確認して、
作業内容を時系列ではなく目的別に整理してください。
未完了の作業と次回やることも分けてください。

Claude Codeを使うときのポイントは、最初から大きな機能を丸ごと任せるのではなく、小さく区切ることです。

「認証機能を全部作って」よりも、次のように段階を分けた方が失敗しにくくなります。

  1. 現在の認証構成を調査する
  2. 必要な変更箇所を特定する
  3. API仕様を決める
  4. Service層を実装する
  5. Controllerを実装する
  6. テストを追加する
  7. 全体の差分をレビューする

Claude Codeは、開発者の代わりにすべての判断をするものではありません。人が目的、制約、設計方針を決め、Claudeに調査や反復作業を担当させることで、特に効果を発揮します。

MCP(Model Context Protocol)で外部ツールと連携

MCPは「Model Context Protocol」の略で、ClaudeなどのAIと、外部のデータやツールを接続するための共通規格です。

通常のClaudeは、会話内で渡された文章やファイルを中心に回答します。しかし実際の仕事では、必要な情報がさまざまな場所に分かれています。

たとえば、次のような情報です。

  • GitHub上のIssueやPull Request
  • 社内Wikiや手順書
  • Google Drive上の設計資料
  • Slackの過去ログ
  • データベース内の業務データ
  • ローカルPC上のファイル
  • チケット管理ツールのタスク
  • 社内APIから取得できる情報

こうした情報を毎回コピーしてClaudeに貼り付けるのは手間がかかります。情報量が多い場合は、必要な部分を探すだけでも時間がかかります。

MCPを使うと、Claudeが必要に応じて外部のデータを取得したり、外部ツールの機能を呼び出したりできるようになります。

イメージとしては、Claudeと外部サービスの間に共通の接続口を用意する仕組みです。

MCPでは、主に次の要素が登場します。

  • MCPホスト:Claude DesktopやClaude Codeなど、MCPを利用するアプリケーション
  • MCPクライアント:ホスト側でMCPサーバーとの通信を担当する部分
  • MCPサーバー:外部データや操作機能をClaudeへ提供する側
  • リソース:Claudeが読み取れるデータ
  • ツール:Claudeが呼び出せる操作
  • プロンプト:再利用可能な指示や作業テンプレート

たとえば、GitHub用のMCPサーバーを接続すると、ClaudeがリポジトリのIssueを検索したり、Pull Requestの内容を確認したりできるようになります。

データベース用のMCPサーバーであれば、Claudeが許可された範囲でテーブル定義を確認したり、クエリを実行したりできます。

方法A:社内ドキュメントやデータベースをつなぐ

社内情報をClaudeから利用したい場合は、対象の情報へアクセスするMCPサーバーを用意します。

たとえば、社内の問い合わせ対応で次の情報を参照しているとします。

  • 製品マニュアル
  • 過去の問い合わせ履歴
  • 障害対応手順
  • 顧客ごとの契約情報
  • 社内FAQ

これらをMCP経由で参照できるようにすると、Claudeへ次のような依頼ができます。

text
この問い合わせ内容に関係する社内FAQと過去事例を探してください。
回答案を作成し、参照した情報も示してください。

Claudeは、MCPサーバーが公開している検索機能を利用し、関連情報を取得してから回答を組み立てます。

独自のMCPサーバーを作る場合は、「何でも操作できるサーバー」にするのではなく、用途ごとに権限を絞ることが重要です。

たとえば、データベースへ接続する場合でも、最初は次のように制限した方が安全です。

  • 参照専用ユーザーを利用する
  • 接続できるデータベースを限定する
  • 利用できるテーブルを限定する
  • UPDATEやDELETEを許可しない
  • 実行できるSQLを制限する
  • 個人情報を返さない
  • 操作ログを保存する

AIが便利だからといって、管理者権限をそのまま渡してはいけません。MCPサーバー側で「Claudeに何を見せるか」「Claudeに何を実行させるか」を明確に設計する必要があります。

方法B:既存のMCPサーバーを利用する

MCPサーバーは必ずしも自作する必要はありません。すでに公開されているMCPサーバーを設定し、自分の用途に合うものから試すこともできます。

代表的な利用対象としては、ファイルシステム、GitHub、Git、データベース、ブラウザ、チャットツール、クラウドストレージ、チケット管理ツールなどがあります。

たとえば、ローカルファイルを扱うMCPサーバーを使えば、指定したフォルダ内の資料をClaudeに検索させることができます。

text
このフォルダ内にあるAWS関連の学習メモを確認して、
Lambda、API Gateway、DynamoDBに分類してください。
重複している内容もまとめてください。

ただし、公開されているMCPサーバーを導入するときは、提供元と実装内容を確認する必要があります。MCPサーバーは外部データへアクセスしたり、コマンドを実行したりする場合があるため、信頼できないサーバーを使うと、意図しないファイルへのアクセスや情報送信につながる可能性があります。

導入前に、誰が公開しているか、ソースコードが確認できるか、どの権限を要求するか、外部へデータを送信するか、認証情報をどのように保存するかを確認しましょう。最初から本番環境へ接続するのではなく、テスト用の環境やダミーデータで試す方が安全です。

MCPは非常に強力ですが、接続先が増えるほど管理も複雑になります。まずは読み取り専用の連携から始め、必要性が確認できた段階で操作系のツールを追加するのが現実的です。

Computer Useで画面操作までおまかせ

Computer Useは、Claudeがコンピューター画面のスクリーンショットを確認しながら、マウスやキーボードを操作するための機能です。

APIが用意されているサービスであれば、MCPや専用の連携機能から直接データを取得した方が効率的です。しかし、実際の業務ではAPIがないシステムや、ブラウザからしか操作できない管理画面も多く存在します。Computer Useは、そのような画面に対して、人が行うのと同じように操作できる点が特徴です。

基本的な流れは、画面をスクリーンショットで確認し、ボタンや入力欄の位置を判断し、マウス操作やキーボード入力を行い、画面の変化を確認しながら目的を達成するまで操作を繰り返す、というものです。あらかじめ座標を固定した単純なマクロとは異なり、画面を見て次の操作を判断します。

たとえば、毎週同じ管理画面から利用状況を確認する作業を考えます。

text
管理画面へログインし、
今週のアクセス数と新規登録数を確認してください。
数値を表形式でまとめ、前週との差も計算してください。

ただし、Computer Useには画面操作特有の弱点があります。画面レイアウトが変わったり、読み込みが遅れたり、ポップアップが重なったりすると、操作を誤る場合があります。そのため、重要な操作を任せる場合は、次のような制約を指示に含めます。

text
情報の確認と入力までは進めてください。
送信、購入、削除、公開の操作は行わず、
実行直前で停止して内容を報告してください。

特に、商品やサービスの購入、振り込みや支払い、メールやメッセージの送信、SNSへの投稿、データの削除、アカウント設定の変更、本番環境への反映などは人の確認を挟むべきです。

Computer Useを安全に使うためには、「自動実行してよい操作(閲覧・検索など)」「入力まで進めてよい操作(フォーム入力・下書き作成など)」「人の承認が必要な操作(送信・削除・購入など)」の3段階に分けて考えることが重要です。

MCPとComputer Useは似ているようで役割が異なります。APIや構造化された連携手段がある場合はMCP、APIがなく画面から操作する必要がある場合はComputer Useが向いています。まず画面操作で効果を確認し、利用頻度が高くなった作業はAPI連携へ移行する、という使い分けも考えられます。

サブエージェント・バックグラウンドタスクで並行作業

Claude Codeでは、一つのClaudeだけですべての情報を抱えるのではなく、特定の役割を持ったサブエージェントへ作業を分けることができます。サブエージェントとは、メインのエージェントから依頼を受け、限定された目的やコンテキストで作業するエージェントです。

大きなプロジェクトを調査する場合、一つのエージェントにすべてを読ませると、扱う情報量が増えすぎて重要な情報が埋もれることがあります。そこで、認証機能を調査するエージェント、データベース設計を確認するエージェント、テストコードを確認するエージェントなど、役割を分けて調査させ、結果だけをメインのエージェントへ統合させます。

Claude Codeには、コードベースの探索や計画作成などを担当する組み込みのサブエージェントがあり、用途に合わせたカスタムサブエージェントも作成できます。カスタムサブエージェントには、役割、利用するツール、作業ルールなどを設定できます。

サブエージェントごとに利用可能なツールを制限できるため、調査担当には読み取りと検索のみ、実装担当にはファイル編集とテスト実行を許可するなど、役割に必要な権限だけを与えることができます。それぞれが別のコンテキストで作業するため、メインの会話に不要なログを大量に残さずに済み、長い作業でも文脈を整理しやすくなります。

一方で、作業同士が強く依存している場合、並行して進めると前提がずれることがあります。複数ディレクトリの独立した調査や、異なる観点からのコードレビューは並行作業に向いていますが、要件確定前の実装や、同じファイルを同時に変更する作業は順番に進めた方が安全です。

バックグラウンドタスクは、時間のかかるコマンドや処理を裏で実行し、その間に別の作業を進めるための仕組みです。大規模なテストスイートやDockerイメージのビルドなど、待ち時間が発生する処理をバックグラウンドで実行しながら、別のファイルを調査することで、待ち時間を減らせます。

text
全テストをバックグラウンドで実行してください。
その間に、今回変更したAPIのREADME更新案を作成してください。
テストが完了したら結果も確認してください。

ただし、並行処理を増やすほど管理は難しくなります。各エージェントの担当範囲を明確にする、同じファイルを同時に編集させない、最終判断はメインエージェントへ集約する、変更後は全体テストを実行するといったルールを決めておくと安全です。

なお、利用できる並行実行機能や上限、提供される画面・実行環境は、利用しているClaude製品や契約プラン、組織の設定によって異なる場合があります。実際に導入する際は、利用中の環境で最新の提供条件を確認してください。

次回予告

今回は、Skills以外に利用できるClaudeの便利機能として、Claude Code、MCP、Computer Use、サブエージェント、バックグラウンドタスクを紹介しました。

  • Claude Code:コードやファイルを直接扱い、開発作業を進める
  • MCP:Claudeと外部データ・外部ツールを接続する
  • Computer Use:画面を見ながらマウスやキーボードを操作する
  • サブエージェント:作業を役割別に分担する
  • バックグラウンドタスク:待ち時間の長い処理と別作業を並行する

これらの機能を使うと、Claudeは単に回答を返すだけではなく、必要な情報を探し、ツールを使い、作業結果を確認しながら、複数の工程を進められるようになります。一方で、機能が強力になるほど、指示の曖昧さによる影響も大きくなります。

次回は「伝わるプロンプトの書き方編」として、Claudeに意図を正確に伝えるための書き方を紹介します。