私は普段、AIエージェントを「作る」技術の啓蒙に注力しているので、AIエージェントを「使う」側のテクニック探求にはそこまで傾倒していません。
そんなClaude Codeライトユーザーの私でも、最低限これは入れとくと便利だよって設定類を紹介します。
紹介する設定
- 全プロジェクト共通のルール
- Claudeが回答したら音を鳴らす
- コンテキストウィンドウの使用率表示
- 便利なMCPサーバー
- 便利なサブエージェント
- Web検索や参照系MCPサーバーの自動承認
👆GitHubでも公開してます。
そもそもClaude Codeの設定ってどうやるの?
ホームディレクトリ直下に、ユーザースコープ(全プロジェクト共通)の設定ファイル類があります。
/Users/username
├── .claude
│ ├── agents
│ ├── CLAUDE.md
│ └── settings.json
└── .claude.json
これらを編集(なければ作成)すればOKです。
また、最近は claude-code-guide というサブエージェントがビルトインされており、無邪気に自然言語でClaude Codeに質問するだけで正しい設定を進めてくれます。
1. 全プロジェクト共通のルール
有名なCLAUDE.mdのことです(正式にはユーザーメモリと言います)。
新しいプロジェクトを始めるたびに、いちいちプロンプトに打つのが面倒な共通指示をまとめて書いておきます。
# 基本方針
- 必ず日本語で応対してください。
- ユーザーは「みのるん」という名前で、開発初心者です。分かりやすく解説して、技術スキルを教育してあげてください。
- みのるんは、AWSやLLMアプリケーションなどの最新技術を用いたWebアプリ開発を主に行います。そのため、こまめにWeb検索やMCPサーバーを使って最新のドキュメントなどの情報を参照してください。
# AWS関連
- AWSリージョンはバージニア北部(us-east-1)またはオレゴン(us-west-2)を使うことが多いです。
- ローカル環境でのAWS認証は `aws login` コマンドを使ってください。Claude Codeがコード実行したら、みのるんがブラウザで認証操作をします。
- よく使うBedrockのClaudeモデルIDは `us.anthropic.claude-sonnet-4-5-20250929-v1:0` と `us.anthropic.claude-haiku-4-5-20251001-v1:0` です。
# Claude Code関連
- みのるんとClaude Codeの会話が長引くと、スレッドが圧縮要約されて記憶喪失になり困るので、自動圧縮がかからないうちに定期的に重要な点をマークダウンでプロジェクトディレクトリ内に保存・更新して。
- 開発中に生成するドキュメントにAPIキーなどの機密情報を書いてもいいけど、必ず .gitignore に追加して。
- コミットメッセージは1行の日本語でシンプルに。
あまり効かないものもあります。会話圧縮前のダンプなどは特にそうで、これはHooksでやるのが良さそう。
2. Claudeが回答したら音を鳴らす
Claudeが考えてるのを待ってる間に他のことを始めてしまい、気づくとだいぶ序盤で止まってた…!時間もったいない〜ってことありますよね。
回答時に音を鳴らすと便利です。フックという、トラップカードみたいな仕組みを使います。
Macの標準SEから、好きなものを設定してみましょう。
{
"hooks": {
"Stop": [
{
"hooks": [
{
"type": "command",
"command": "afplay /System/Library/Sounds/Glass.aiff"
}
]
}
]
}
}
3. コンテキストウィンドウの使用率表示
LLMには一度に入力可能なトークン上限(コンテキストウィンドウ)があります。
同じスレッド内の会話履歴は、次の発言時にコンテキストとして追加されて次の推論が始まるため、会話が続きすぎると履歴の自動圧縮(auto-compact)が走ります。
その直後はアホになるため、圧縮前に「ここまで学んだことをマークダウンに吐き出して」などと頼むと効果的です。
Claude Codeには、チャットボックス直下のステータス表示(Statusline)機能があります。ここでコンテキストウィンドウの使用率を表示してみましょう。
{
"statusLine": {
"type": "command",
"command": "~/.claude/statusline.sh"
}
}
スクリプト自体は以下を作っておきます。
#!/bin/bash
input=$(cat)
CONTEXT_SIZE=$(echo "$input" | jq -r '.context_window.context_window_size')
USAGE=$(echo "$input" | jq '.context_window.current_usage')
if [ "$USAGE" != "null" ] && [ "$CONTEXT_SIZE" != "null" ] && [ "$CONTEXT_SIZE" != "0" ]; then
CURRENT=$(echo "$USAGE" | jq '.input_tokens + .cache_creation_input_tokens + .cache_read_input_tokens')
PERCENT=$((CURRENT * 100 / CONTEXT_SIZE))
echo "Context: ${PERCENT}%"
else
echo "Context: -"
fi
これもClaudeに頼むと、好きなステータスライン用のスクリプトを簡単に作ってくれます。
こんな風になります👇
4. 便利なMCPサーバー
私がよく使うものは以下です。
ドキュメント検索系
- AWSナレッジ(AWS全般の最新ドキュメント検索)
- AWS CDK
- Bedrock AgentCore
- Strands Agents
- Context7(人気の技術やライブラリ類の最新ドキュメント検索)
開発&デバッグ系
- GitHub(結局fetch不可なファイル参照に使うことが多い)
- Playwright(ブラウザ自動操作)
- Chrome DevTools(開発者ツールの参照)
MCPの設定だけは .claude 配下ではなく、ホームディレクトリ直下の .claude.json に記載します。長いので全量は以下を参照ください。
5. 便利なサブエージェント
Claude Code標準のWeb検索機能や各種MCPサーバーを使うと、参照結果として大量のドキュメントやログ情報がコンテキストを埋め尽くしてしまい、推論精度が落ちたり上限到達が早まったりします。
それを防ぐためには、コンテキストを食いやすいタスクを「サブエージェント」に分離して、厳選された結果の一部のみをClaude Codeのメインセッションに返してもらうのが効果的です。
.claude/agents 配下にマークダウンを置けば、それがサブエージェントになります。
技術調査サブエージェント
テスト&ログ調査サブエージェント
これも /agents コマンドを使うと、自然言語で簡単に好きなサブエージェントを作ってもらえます。
6. Web検索や参照系MCPサーバーの自動承認
私はClaude Codeのコード編集やコマンド実行などは全て自分がレビューしてから承認するのですが、流石に検索などの参照系操作は自動承認してほしいです。
以下のようにパーミッションを設定しましょう。
{
"permissions": {
"allow": [
"WebFetch",
"WebSearch",
"mcp__aws-knowledge__*",
"mcp__context7__*",
"mcp__strands__*",
"mcp__cdk-mcp-server__*",
"mcp__github__get_*",
"mcp__github__list_*",
"mcp__github__search_*",
"mcp__chrome-devtools__list_*",
"mcp__chrome-devtools__take_snapshot",
"mcp__playwright__browser_snapshot",
"mcp__playwright__browser_console_messages"
]
}
}
おわり。
もし間違っている設定などがあれば、コメントもらえると嬉しいです!
おまけ
これから入門する方は、こちらから!
AIエージェント、使うだけじゃなくて作るのはもっと楽しいよ!!
