この投稿は、私、伊東美沙貴(AISHA株式会社)がClaude認定資格(CCA)取得に向けて学習した記録です。
今日はIntroduction to Claude Coworkを60分ほど学習します。
ここに書いていることは私が読んで理解したことのメモ書きです。
(翻訳や意図を間違えている場合があります)
参考URL: Claude Code 101
結果:修了しました (May 3, 2026)
What is Claude Code?
Claude Codeはファイル、ターミナル、コードベース全体に直接アクセス可能。
コードをコピーせずにすぐに直接エージェント機能を使える。
エージェントとは、目標を達成するためにアクションできるツールで、外部または他のAIエージェントと連携が可能。
また、ウェブ検索も可能。最新のAPIリファレンスも取得可能。
Claude Codeには3つの特長がある。
- コンテキストウィンドウ:クロードの作業記憶領域。たくさん収容できるが一度には入らない
- 許可を求める:コマンドを実行したり変更する前にユーザーに許可を求める
- 間違える:完璧ではない。意図を誤解したり過剰に設計する場合がある
コンテキストウィンドウがいっぱいになった時、小さくできるか自動的に判断をする。
プランモードでは読み取り専用ツールを使用、開始前に行動計画を作成する。
権限を与える前は慎重に。
Claude Desktopとターミナルの違い
機能はターミナルに最初にリリースされる。デスクトップ版は他のタスクを処理している間、後ろでClaudeを実行させるのに最適。Claude Code on the web は、GitHub リポジトリを通じてプロジェクトをリモートで作業したい場合に良い。
Claude Codeの安全性を高めるために
許可を毎回求めてくる時、自動承認モードと都度許可がある。それらはタブキーで選択できる。
プランモードは読み取り専用ツール。複雑な変更や安全を必要とする作業の時におすすめ。
Claudeがなぜそう考えたのか、理解してから許可することができる。
プロンプトはできる限り具体的に、目的達成のために書く。
Claude Codeの流れ
Explore(探索) → Plan (計画) → Code (コーディング) → Commit (コミット)
プランモードはファイルを直接編集できずファイルを読むだけ。
Claudeはアプローチを考え、行動計画をしたり、コードを書く前に探索が可能。
テストも可能でテスト結果を示してくれる。
Claudeが何度も同じところでミスする場合は、claude.mdファイルを作成し、保存するように依頼をする。
- ExploreはClaudeにコンテキストを提供
- Planは、行動計画を作成
- Codeは、クロードとのやりとり(コーディング)
- Commitは、プッシュを支援し、次の行動を開始
Context Management in Claude Code
プロンプトを入力する度にコンテキストウィンドウに情報を持つ。
これを可能な限り最適化することがとても重要。制限に近づくと、自動的に圧縮処理をする。
ただし、以前の会話の詳細が失われることがある。
- /compact コマンドで手動で圧縮も可能
- 作業スペースを整理したい時に有効
- 以前に作業した内容を覚えたい時
- 忘れたいときは、/clear 全てを削除して最初からやりなおせる
- コンテキストのサイズを確認するときは /context
作業が完了したときは、/clearをする。
他のセッションでも覚えてほしいものには、claude.mdファイルに記述をする。
何を行いたいのか具体的にClaudeに指示をすること。
MCPサーバーは使用しない場合、デフォルトで使用可能なものはOFFにすること。
(全てのツールをコンテキストに読み込んでしまうため)
SkillsはMCPサーバーと同じように機能するが、事前にコンテキストをロードするわけではない。
サブエージェント
サブエージェントははメインエージェントと並行して実行されるが、完全に個別のコンテキストウィンドウを持つ。
答えが必要なタスクだけ、サブで行い、メインは要約を入れてプライマリコンテキストを綺麗に保つこと。
PRをプッシュする前にサブエージェントで変更を確認する。
プライマリコンテキストとは別の視点で実行されるため、偏見がない。
サブエージェントをコードレビュアーとして作成する場合は、読み取り専用ツールに限定する。
クロードがコードを書き、クロードがレビューをする。レビュアーは問題にチェックをするのみの役割にすること。
/commit-push-pr スキルとは
Claude Codeで使えるコマンド。通常なら通常なら手動で行う以下の3ステップを一発で自動化する。
git commit→ 変更をコミットgit push→ リモートにプッシュgh pr create→ GitHub上でPR(プルリクエスト)を作成
さらに、CLAUDE.mdにSlack MCPサーバーの設定とチャンネルが記載されていれば、作成したPRのリンクをSlackに自動投稿もしてくれる。
セッションリンク(–from-pr)とは
Claude Codeのセッション(作業文脈)をPRに紐付けておく機能です。
例:claude –from-pr 123
これを実行すると、PR #123を作った時点の作業の続きから再開できまる。
たとえば「あのPRどこまで何やってたっけ…」とならずに、文脈を保ったまま作業再開できるということです。
CLAUDE.mdファイルとは
Claude Codeのファイルの中で最も有用なファイル。
プロジェクトに関する永続的なメモリを持つことができる。
プロジェクト内にClaudeが参照したいファイルがある場合は、ファイルパスに@を使用する。
モデルを継続的に修正する箇所を把握できるようにするには、CLAUDE.mdを使用せずにプロジェクトを開始すること。
これによりCLAUDE.mdはコンパクトに保たれ、必要な情報のみをもってくれる。
サブエージェントとは?
サブエージェントとは、Claude Codeがタスクを委任できるアシスタント。
コンテキストウィンドウをそれぞれに保存し、1つのプロジェクトを行う。
エージェントを作る方法で簡単な方法は、クロードに生成してもらうこと、「/agents」で作成をする。
「新しいエージェントを作成」→目的やアクセスできるツールを選択
- exploreサブエージェント:コードベースを高速に検索
- Planサブエージェント:プランを愛知時する前にコードの調査や分析をする
サブエージェントはさらにカスタマイズ可能。
スキルとは?
同じ行動をスキルとして教えておくマークダウンのこと。
エージェントスキルは、より正確・かつ効率的に業務を遂行するための指示やスプリクト、リソースなどのフォルダのこと。
Claude CodeにSKILL.mdファイルが含まれている。
説明文でスキルを使うかどうか決定する際の基準としている。
スキルは必要に応じて、好きな場所に保存可能。
個人のスキルはホームディレクトリのclaude/skillsに保存され、全てのプロジェクトで共有される。
例えば会社のブランドガイドライン、推奨フォント、ウェブデザインで使用する色など、チームとして標準で使用するものを掲載する。
スキルは特定のタスクに使用される専門知識、チームが従うコードレビュー基準、好みの回答形式などで力を発揮する。
もしも何度も同じことをClaudeに言っているようなら、それはスキルにする方が良い。
MCPとは?
MCPとは、Model Context Protocol(モデルコンテキストプロトコル)。
Claude Codeが外部ツールやソースにアクセスする際の標準的な言葉(プロトコル)。
質問をするとClaudeはどのツールを使うべきか自動的に判断をする。
特定の問題の詳細を取り込むことができる。
MCPサーバーは2種類ある。
- HTTPサーバーは、リモートサービス用
サービスプロバイダによってホストされていて、 - STDIOサーバーは、マシン上でホストされている
mcpコマンド:MCPサーバーを管理するコマンド
ステータスを確認したり使用したくないサーバーを無効にすることができる。
MCPサーバーのスコープ
3つの方法で設定可能。1つ目は現在取り組んでいるプロジェクトでのみ利用可能であること。
2つ目は、ユーザーにとって全てのプロジェクトで利用可能であること、3つ目は、MCP.jsonファイルを使用し、それをバージョン管理システムに繋げる。
MCPサーバーは例え使用していなくても、ツールを定義するコンテキストウィンドウに追加するので、使用していない時は無効にすること。
MCPがコンテキストウィンドウの10%を超えると、Claude Codeは自動的にツール検索モードになり、必要に応じて使うツールを探す。(これは無駄な作業)
Hook(フック)とは
フックを使うと、Claude Codeで特定のコマンドを実行できるようになる。
Hookを使うと、Claude Codeの動作を決定的に制御することができるようになる。
例えばタスクを完了した際の通知の送信などを行える。
最も一般的なフックは、編集後に自動的にフォーマットすること。
必ず毎回実行する必要がある処理は、プロンプトに記述せずにHookを使う。
Hookの使い方
Hookのポイントは次の5つがある。
- PreToolUse:ツール使用・前
- PostToolUse:ツール使用・後
- UserPromptSubmit:プロンプト送信時
- Stop:応答終了時
- 通知:Notification
Hookの終了コード
は、Hookが実行された後、次はどうするかをClaudeに伝えるコード。
- 終了コード 0 =「進んでOK」
- 終了コード 2 =「止まれ・ブロック」
- 終了コード 0・2以外 =「エラーだけど続行」
フックはsettting.jsonファイルで設定をする。